Introduction: Enhanced Spider Robot
I’m always looking for a new project to do at my robotics workshop for kids. While spider robots are intriguing, almost all of them are either too complex involving 10+ servos or way over-budget for my workshop. In search for cheaper alternatives, I found this project: http://letsmakerobots.com/node/38744. Since this project appears to fit my budget range of $40-$60 and not too difficult (I think) for kids to work on, I decided to build a prototype. My version will have two operating modes:
- Remote control using bluetooth module (HC-06) and an Android phone app. This is the default start-up mode.
- Autonomous line-following. This mode is selected through an Android phone app.
Let’s start building.
Step 1: Parts and Tools
- 2 x Spider robot kit. (Buy two kits from robotshop.com (http://www.robotshop.com/en/dfrobot-spider-robot-frame-kit.html), Amazon, Ebay, or Aliexpress)
- 4 x Ni-MH battery/charger combo and AA battery holder
- On-Off Switch
- Mini breadboard
- Arduino Nano (cheaper compatible works fine)
- Motor driver (Using TB6612FNG breakout but L298x based driver should work just as well)
- Bluetooth HC-06 module (mine is model fc-114)
- 2 x IR line tracker sensor module
- 9v step-up booster (4 x Ni-MH is only 4.8v. While motors will use 4.8v, I need to boost voltage to 9V to power Nano through Vin)
- Dupont cables (male to male)
- Approx 4” x 4” cardboard used as a platform. (This is just a prototype. Who cares how it looks.)
- Wireties
Usual tools such as a wire cutter, soldering iron, and glue gun were used in this project.
Step 2: Chassis
See http://letsmakerobots.com/node/38744 for building the base chassis. While 8 leg linkages are obtained from a single kit, you’ll need to use following parts from another kit to complete the chassis:
- Motor and body
- Axle
- Leg linkage case without gears (This is used for joining two independent leg linkages)
- Cross beam
Since the built-in battery housing on the body pieces are not needed in my design, cut off about 3mm from the height and glue the platform cardboard on top. Use leftover plastic pieces to build a truss to support the platform above motors and build mounting beams for IR line tracking sensors between two motors.
As for the on-off switch location, I put that on next to the battery pack. This required cutting the plastic underneath the platform. I think the better location would be between the cardboard and the plastic body underneath the cardboard and use a glue gun to secure it.
Step 3: Electronics
Wire all the components according to the diagram. You’ll notice that I use 9v step-up boost converter to power Nano through Vin pin. This eliminates having another 9V battery for the logic. Motors are still powered by 6V or 4.8V if using Ni-MH rechargeable batteries.
Step 4: Android Mobile App
While I could have built my own app using MIT App Inventor, why reinvent the wheel when there are numerous already written apps that fit for this purpose? I downloaded few from Google Play to evaluate them and eventually decided to use Arduino Bluetooth Controller. In Controller Mode, I customized following buttons to send specific characters that are recognized by the code.
- Left = “l” (turn left)
- Right = “r” (turn right)
- Up = “u” (go forward)
- Down = “d” (go reverse)
- X = “s” (stop)
- Select = “t” (toggle between RC and Line Following Mode)
See the video on the Intro page to see how the app works.
Step 5: Code
Download the attached Arduino IDE code. Comments in the code should explain what’s going on in the code. It was written for Nano but it should work on other Arduino boards with no or little mods.
Step 6: Future Improvements
The kit comes with a motor that is designed for low voltage/high current environment. When using an H bridge driver such as TB6612FNG, it’s better to use high voltage/low current motors. This may explain why, with heavier alkaline batteries, it couldn’t lift the body up to take a step. If you run into this problem, perhaps get a different set of motors such as this: https://www.pololu.com/product/1117. On my other tank project, I eventually had to switch out the motors that came with Tamiya twin-motor gearbox with this one to increase torque.