Introduction: Spiderbot V2 Robot Car

Spiderbot V2 is an upgrade version of my last project: https://www.instructables.com/id/3D-printed-Transformers-Robot-Spiderbot/

The Spiderbot is inspired by the "Transformers". It is a RC quadruped robot and has two modes of operation: spider and vehicle, just like the robots in "Transformers". It is Arduino-based and controlled by Android phone using Bluetooth.

In this version, the inverse kinematics was included for a better robot movement. The normal wheel in the last version was replaced by the omni wheel, it provides higher mobility in vehicle mode.

You should check out the Youtube video demonstration first!

Hope you like it!

Step 1: Materials and Skills Required

Electronic Parts

  • Arduino ProMini x1
  • EMAX ES08MA II 12g Mini Metal Gear Analog Servo x12
  • Adafruit 16-Channel 12-bit PWM/Servo Driver x1
  • Bluetooth HC-05 module x1
  • H-bridge motor driver IC L293D x2
  • 300RPM 6V N20 DC Geared Motor x4
  • Hobbywing UBEC-8A 2-6S Lipo Input 8A UBEC for RC Model x1
  • UniHobby 38mm Double Plastic Omni Wheel with 4mm mounting couplings x4
  • 50x23x25mm Steel Ball Omni Wheel x1
  • LION Power 7.4V 900MAH 25C LiPo Battery x1
  • JST-socket battery cable x1
  • 7cm x 5cm Perfboard x1
  • Some wires, pin headers and socket, switches

Mechanical Parts

  • M2 x 10mm Round Head screws and nuts x50
  • M1.2 x 6mm Countersunk Head Self-tapping screw x30
  • 3D printings

Skills Required

  • Soldering

Step 2: Prepare 3D Printed Body

3D Parts Needed

The zip file includes 11 files. To build the robot, you need to print:

  • Body.stl x1
  • Cover.stl x1
  • Connect.stl x8
  • Coxa.stl x2
  • Coxa_mirror.stl x2
  • Femur.stl x2
  • Femur_Connect.stl x4
  • Femur_Mirror.stl x2
  • Tibia.stl x4
  • Tibia_Connect.stl x4
  • Toe.stl x4

http://www.thingiverse.com/thing:2289392

Step 3: Solder the Main Board

Before assembling the body frame, we have to make the main board. It is because the servos need to be initialized to zero position before attaching to the servo arms.

To make the main board:

  1. Cut out 3 rows of the perfboard as shown in the above image.
  2. Place the Arduino Mini, HC-05, two L293D, 4 2-pin headers, 5-pin socket and switch on perfboard as shown above
  3. Solder and connect the components together according to the schematic using wires
  4. After soldered all connections, it would look like the image above.

https://drive.google.com/file/d/1JmwV66b29WVJqhUEg4nHHdO0cc1QmIgX/view?usp=drivesdk

Step 4: Assemble the Parts

Omni Wheel

Assemble the omni wheel, attach the toe on it. Solder two 30cm wires to the DC motors. Then connect the DC motor and wheel.

Tibia

Attach the servo into the tibia. Then, place omni wheel inside the hole of tibia and screw with the cover.

Femur

Attach the one side of servo into the femur, place the femur connect in between servo and femur.

Coxa

Attach the servo into the coxa.

Body

Attach the steel ball under the body


Step 5: Connect Servos to PWM Driver

On the PWM driver, there are 16 channels and we only use 12 of it.

Connect the servos according to the list below:

Leg 1:

  • Coxa -> Channel 0
  • Femur -> Channel 1
  • Tibia -> Channel 2

Leg 2:

  • Coxa -> Channel 4
  • Femur -> Channel 5
  • Tibia -> Channel 6

Leg 3:

  • Coxa -> Channel 8
  • Femur -> Channel 9
  • Tibia -> Channel 10

Leg 4:

  • Coxa -> Channel 12
  • Femur -> Channel 13
  • Tibia -> Channel 14

Then connect the PWM driver to the main board.

Solder the battery to the UBEC together with main power switch and connect it to the PWM driver.

Step 6: Initialize Servos

Download the attached code

Uncomment the initialize code and upload it to Arduino.

Turn off the bluetooth power switch before uploading code.

Turn the power on, and then assemble the parts together like the image shown above.

Tighten the screws of servo arms to fix the position.

The code is modified from https://github.com/anoochit/arduino-quadruped-robot

Step 7: Add the Cover

After initialized the servos, comment the initialize code and upload to Arduino again.

Place the cover on top of the robot and add connect to fix the position.

Step 8: Android App Control

Download the app from

https://github.com/anoochit/android-robot-bluetooth-joystick

Setup control command according to the Arduino code.

And all done~