This project was designed for Dr. Bryony DuPont's Introduction to Design class (ME 382). This was by far the best class I ever took at Oregon State. The class was put into groups of four and tasked with making a robot to compete in a pentathlon, where robots would have to lift a weight, "kick" a ball, "throw" a ball, climb some stairs, and sprint back and forth 5 yards.
My duties on this robot included (but were not limited to) the design of the control system and circuit, sourcing all of the materials, parts, and components, and assisting with the design of the chassis. Our design was very successful and I'm very proud of what we did with the limited resources at our disposal.
My main task in building this robot was to design the entire control system, from the circuit to the software and everything in between. The heart of the entire system was an Arduino Mega knockoff. I wrote a library to easily and precisely control the DC motors, which all of the winning teams ended up using. You can find it on my GitHub page here.
To power the robot we used a big 12V SLA we found cheap on Amazon, which looking back was far more than we needed and added too much weight to the robot. If I could turn the clock back, I would have used an 11.3V LiPo.
For the drive motors I used some surplus car seat motors I found on the internet, driven with a pair of BTS7960 motor drivers. These silly little car seat motors stalled at 22 amps (!) and were an absolute blast to work with. The BTS7960 (known also as IBT_2s) drivers were capable of pushing 43 amps, which was absolutely essential for moving our 40 pound robot around the course with the level of agility we wanted.
There were 3 motors on the robot other than the car seat motors that drove it. These motors moved the "kicking" motor back and forth, spun the rods that "kicked" and "threw" the ball, and pulled the cord that moved the lifting platform up and down during the weight lifting portion of the competition.
We were limited to spending $200 on the robot, which didn't leave much cash to spend on motors. Since motors were expensive nearly everywhere I looked, I decided to salvage some equipment at the recycling center and see what I could get. Above you can see a plotter printer I ended up getting some DC motors from, 2 of which ended up on the robot. The third motor came from a VCR that I salvaged.
For these motors, I found L298N motor driver to be more than sufficient. Their low cost was also a big motivation in choosing the L298Ns.
Our chassis was constructed from 2x2 Pine furring and a plywood sheet we rescued from our school's wood shop recycling bin. We chose wood instead of aluminum extrusion or something similar for it's low cost and weight. Plus, it was very easy work with and gave us more room to experiment with layouts.
We decided to stain it with Minwax cherry Wood Finish. It's hard to tell from this shot, but the final product was absolutely beautiful.
Once the chassis was stained and the motors and wheels were mounted, it was time to get the electrical components on the robot. The circuit components were fixed to acrylic plates with mounting tape, which were then stacked atop one another on threaded rods. The battery was held in place with velcro. For the sake of stability, the bottom-most threaded rods ran through the chassis and were held in place with nuts and Loctite.
The vertical rods on the left side were used in the lift and were press-fit into the robot's wooden frame. The platform used in the lift were attached to the rods via the Pololu linear bearings mounted to the top.
To control the robot, we used a hobby transmitter that I modified to have both sticks sprung. The Y-axis of the sticks controlled everything on this robot. You can find the Arduino code for the robot here. For translation, this robot controlled tank-style, with the left stick moving the left drive motor and the right stick moving the right motor. You could switch modes of operation between drive, pull/kick/throw, and lift by using the switches at the top of the transmitter.
Here she is in all her glory, with the lid covering the circuitry. The accents on the lid were all purchased at the ReStore in Corvallis. I wanted the robot to look as much like an old piece of furniture as possible, but my professor and TAs all said it looked more steampunk than anything else.
This picture gives a great shot of all of the motors, too. The motor in the front moved the platform behind of it, on top of which the kicking motor rested. On the right side you can see the weight lifting platform, and the motor in the middle made that go up and down. On the advice of our professor, we did away with the drop tube above the kicking motor to improve aesthetics.