Rock'em Sock'em Robots: Part 2
2023-10-25 | By Zach Hipps
License: See Original Project Arduino
This week I'm continuing work on building my life-size version of Rock'em Sock'em robots. I fully realize how ridiculous this project is, but when has that ever stopped me before? In part one of this project I focused on building and prototyping the punching arm mechanism. If you haven't read that article yet, I would suggest going back and starting there. Now that I have a working prototype, it's time to improve it. 3D printing is an excellent method of making so many things, but when you need parts that are very strong and durable, there's no substitute for metal. The first thing I need to do on the prototype is swap out the 3D-printed brackets for metal ones. These brackets connect the aluminum extrusion to the pillow block bearings. I used an online laser-cutting service to get really precise parts. Once I swapped those out, I immediately felt quite a bit more rigidity in the punching arm mechanism.
I'm using aluminum extrusion as a skeleton for each robot. In order to make these look like the original toy, I need to design and print some plastic pieces to attach to the skeleton. This project is quite large, and the pieces I need are larger than a typical 3D print bed can fit. So, I need to decide where to split my model strategically. I feel like there are natural breaks between the upper arm and forearm, as well as between the forearm and fist. The fists are arguably the part of this robot that will take the most beating. They need to be extra strong, so I used an additional outer wall and a dense infill setting on my 3D printer to achieve maximum strength. The forearm and upper arm pieces are not as critical, so I used a standard wall count setting, and decreased the infill setting to save time on these large prints. The reason I chose to use aluminum extrusion for the construction of the skeleton is because of how easy it is to attach things to it. I used M5 bolts and t-nuts that slid into the slots to attach the arm pieces. Should any of these pieces get destroyed in battle, they are simple enough to remove and replace with newly printed parts.
Now that I'm done with designing and assembling the arm pieces this is starting to look like the original toy! It's time to move on to the robot head. One of the reasons this robot toy is so iconic is because of its blocky design aesthetic. The thing looks like it was built out of steel I-beams assembled together with industrial scrap. It has hemispherical rivets all over the head and body pieces. I really like the look and design of this toy, so I wanted to get my 3D model right. I used a set of calipers to measure details like the eyebrows and nose and spent quite a bit of time modeling the head of the robot. The head will get attached to a pneumatic cylinder so I also modeled a square slot in the center of the head. A short length of 2020 aluminum extrusion slides into the slot. This is so that I have something solid to thread the pneumatic cylinder into. Now that the head is attached to the robot skeleton, this project is really starting to take shape!
Right now, the pneumatic cylinders are not connected to anything. I need to run some 6mm tubing to the two ports on each cylinder. I sort of got lucky with the diameter of the pneumatic tube because it fits perfectly within the slots of the aluminum extrusion. I designed some clever little clips that hold the tube tight in the slots. Once I had the tubes run to each cylinder, I cleaned things up using some cable ties. The other ends of the tubes need to be connected to the solenoid valves. This project will have six pneumatic cylinders total, which means I need six solenoid valves to actuate the cylinders. I decided to have a central air supply manifold to distribute air to each pneumatic solenoid valve. I was careful to use Teflon tape to ensure better seals on each threaded joint. I also used some quick connections between the solenoid valves and the manifold in case I need to do any maintenance or move things around. Even though I was diligent with the Teflon tape, some soapy water revealed several leaks in the system. I spent a bit of time trying to reduce and eliminate those leaks the best I could.
The final step for this portion of the project is to make a control circuit board for all the electronic components. The solenoid valves require a 12V supply, so I soldered a barrel jack connector onto a solderable perforated breadboard. Then I added some terminal blocks so that I could easily connect and disconnect the solenoids to the PCB. The positive terminal of each solenoid valve was connected directly to 12V, while the negative terminal was connected to ground in series with an arcade button. Eventually, this PCB will have a microcontroller, but for now, I'm controlling the valves directly with the arcade buttons. When the button connects the negative terminal to ground, the solenoid valve is actuated.
I connected everything up to the PCB and plugged it into the power supply. My face totally lit up as I pressed the arcade buttons and watched the giant robot arms spring to life! There was something that I added since completing part one of this project. I inserted some air flow control valves in series with each branch of the air supply. These valves let me fine-tune how fast the air is delivered to each pneumatic cylinder. If the arms are too forceful, I can dial back the air supply, making them slightly less terrifying. Safety is a legitimate concern here because if one of these arms were to hit me it would definitely leave a mark! I still have a lot to do on this project. I need to design and assemble the torso for the robot. It will have a 9 DOF IMU to detect punches. A microcontroller will keep track of how much damage the robot is sustaining and will display a life meter using an LED bar. As the robot sustains more hits from its opponent, the life meter will slowly drop to zero. When it hits zero the head will pop up indicating a knockout! Oh and of course I need two of these robots so I will have to build another complete setup. Stay tuned for more updates and let me know what you think of this project.
Have questions or comments? Continue the conversation on TechForum, DigiKey's online community and technical resource.
Visit TechForum