Do you need a giant robot claw at the end of your forearm? Of course you do - who doesn't? Ok, so this Halloween/cosplay inspired project may not be the most practical thing I've made but it was definitely fun.
The first thing I focused on was a way to strap this thing to my arm. I went with a simple aluminum tube to grasp and put 4 dual 45° angle brackets together to make an octagon. I used some pattern plates to run along the sides of the gauntlet and a 1 inch aluminum tube for the handle.
I of course designed a logo plate for the top.. you know.. because, why not?
I used an 8mm lead screw which has a 2mm pitch. Since it is a 4 start lead screw (there are four concurrent threads) the lead screw nut will have 8mm of linear travel for every 1 rotation of the shaft. I connected the 8mm lead screw to the motor's 6mm d-shaft via an 8mm clamping hub and a 6mm d-hub. Off-the-shelf both are tapped, simply drilling out the threads on one allowed me to bolt them together; the result of which is a very strong hold on both with no set screws to worry about.
I used a 612 RPM Heavy Duty Premium Planetary Gear Motor with Encoder. The encoder is a relative quadrature encoder which produces 672 countable events for every rotation of the output shaft. Given the lead screw specs I just mentioned this would yeild 84 coutable events for every 1mm of linear travel.
I wanted a dual lead screw nut assembly. Mostly this is because I love the look of the brass lead screw nut because I am partial to steam punk aesthetics and it has a strong hint of that. I also wanted to show how to use multiple lead screw nuts on a single assembly since it can be tricky to get the spacing just right. The key is to have the two sides of the assembly joined by a clamping hub, then you can loosen a pinch bolt, rotate one side until the spacing feels just right. Then stand up the lead screw and see if the travel assembly glides smoothly down with gravity alone.
The Push Arm:
I used an aluminum tube for the push arm to open and close one of the claw "fingers". I used dual ball bearing hubs to get a strong and smooth joint that only rotates about one plane while restricting the travel assembly from rotation around the lead screw.
I used some pattern brackets to for the fingers and fabricated some plastic claw tips to bolt on the end. One finger gets push/pulled open/closed by the linear actuator push arm. The other finger mirrors the movement thanks to the two large 128 tooth 32 pitch aluminum hub mount gears. I cut out some metallic paper to inlay the gears with because that is how I roll.
The fingers ultimately are mounted onto some x-rail because I wanted to use these large gears together. There are pros and cons to using extrusion like 80/20 or x-rail for mounting mating gears versus using channel to do so. Using channel is great because you know everything is going to line up and be spaced just right. And, because you can run a shaft through two walls that are spaces apart you gain great stability. However the math has to work out for gear you want to use. For example, with 32 pitch gears on Actobotics channel the total number of teeth between 2 mating gears has to be a multiple of 48. Which does not work for these 128 tooth gears (128+128)/48 = 5.1875 which is not an whole number. So of course the benefit of extrusion is that you can slide the gears until they mesh well together and tighten down your mounts. However you must make sure they are tight enough to not slide loose and that you get your spacing just right. For this project this method works out great since it is mostly for show and I will not be lifting anything incredibly heavy with it.
Using 90° pattern mounts with dual ball bearing hubs gave me a strong and smooth finger joint while being very compact so I could get a lot of rotation.
A SparkFun RedBoard is the brains of the operation.
A small aluminum beam is connected to a potentiometer (supported by a pillow block) for the trigger.
After mounting the trigger assembly I ran a simple sketch to show the highest and lowest reading from the pot while I pulled the trigger back and forth... this min and max reading gets used in my final sketch and is important to map the sweep of the trigger pull accurately.
The main sketch will read the pot to see where within the trigger's full realistic sweep it currently is (if you pull it half way it will read halfway between the min and max recorded earlier). Once it knows where it should be it needs to know where it is. It does with with the encoder on the motor. Since the encoder is relative and not absolute there is a calibration sequence that runs when the unit first powers up. There is a magnet on the linear actuator's travel assembly and there are two hall effect sensors to detect the magnet. It is hard to see, but there is a resistor wired at the base of each the sensors (which is shrouded in colorful heat shrink). The calibration sequence will drive the motor in one direction slowly until it reaches the first sensor, then it records the encoder value as the first endpoint. Next it reverses direction until it reaches the other sensor, and when it does it again records the encoder value as the next endpoint. After that it can easily map the trigger sweep to the actuator stroke. If the trigger is halfway between its min and max, and the two encoder enpoints are (for example) 1000 and 3000, then the motor will be driven until the encoder reads 2000.
Some key parts from this project include: