Introduction: BUGS the Educational Robot

About: 3D printing and programming robots made easy

Over the last year I have pretty much spent all my free time designing and learning about Open source 3D printable robotics so when I saw that Instructables had put up a Robotics Contest there was no way I couldn't take part in it.

I wanted the design of this robot to be as educational as possible. So as that teachers form around the world with little design and programming skills and whom have access to a 3D printer can easily build and use the robots many different functions in the Classroom.

I had previously designed and posted BORIS the Biped (link here) a Robot that I had also designed for educational purposes and I have decided to use the same electronics in BORIS as in BUGS so as that any of you who decide to build BUGS at very little extra cost can also build BORIS

I've had this project on my mind for a long time now and it's finally time to share it.

It's taken me about 3 weeks of designing, prototyping and documenting to get this project done.

I hope you enjoy and find this instructable usefull

How much does BUGS's cost:

  • Overall BUGS will cost you about 90$ to build Batteries and charger included

What are BUGS's Features:

  • First of all I wanted BUGS to stand out so unlike many other wheeled Educational Robots BUGS walks on 8 legs using the Klann linkage this has the advantage of reducing the servos needed to one servo per side and thus reduces the cost.
  • BUGS is equipped with an articulating claw that is the perfect size to catch a Golf or Table tennis ball.
  • To really push BUGS's educational capabilities to the limit I decided to add a ton of extra sensors on him so as that he can truly forefill any Robotics task you ask of him these features include:

- Line following

- Digital compass heading

- Obstacle avoidance

- Buzzer

- Manual control with 3D printed Arduino controller (link here)

What is BUGS preprogrammed to do:

  • BUGS is programmed using Arduino there are 3 pre programmed arduino codes that can be uploaded to his brain:

- Autonomous line following mode where BUGS can pick up a Ball follow a line and drop a ball at the end of the line

- Autonoumous digital compass and obstacle avoidance mode where BUGS can stick to a fixed heading and dodge obstacles that are placed in front of him whilst keeping the same heading

- Manual mode where BUGS can be controlled manually and perform the 2 autonomous modes above at the press of a button

Supplies

For this instructable you will need:

TOOLS:

  • Small cross head screwdriver

SUPPLIES FOR THE ROBOT:

  • 3x Genuine Tower Pro MG90S analog 180 deg servo (link here)

You can go cheap from china on a lot of things but servos aint one of them! After testing many differenet types especially cheap counterfeit towerpro servos I found out that the cheap counterfeit ones are so unreliable and often break a day after using so I decided that genuine towerpro servos would be the best!

You can't find a better prototyping board than this one for wireless servo control. This board has a bulit in 5V 3A power converter and 12 servo input pins and pins for a wireless nrf24L01 transceiver module and Arduino NANO all in a condensed neat package so don't worry about messy cables all over the place anymore!

  • 1x Arduino NANO (link here)
  • 1x NRF24L01 Transceiver Module (link here) (You don't need this if your not using the controller)
  • 1x Magnometer (digital compass) QMC5883L GY-273 (link here)
  • 1x Ultrasonic sensor HC-SR04 (link here)
  • 2x IR Infrared Obstacle Avoidance Sensor Module (link here)
  • 1x Passive Buzzer (link here)
  • 2x 18650 3.7V Li ion batteries (link here)
  • 1x 18650 Battery holder (link here) (these batteries give you about 30 mins run time better ones will give you about 2h of run time)
  • 1x LI ion Battery charger (link here)
  • 1x jumper cables 120 pcs 10 cm long (link here)
  • 1x Screws 2mm x 8mm pack of 100 (link here)

All the electronics can also be found on Amazon if you can't afford to wait for delivery but they will be a bit more expensive.

CONTROLLER:

To control this Robot manually you will need the 3D printed Arduino Controller (link here) The Robot can also be purely autonoumous so the controller is not mandatory.

PLASTICS:

The parts can be printed in PLA or PETG or ABS. !! Please note a 500g spool is more than enough to print 1 Robot !!

3D PRINTER:

Minimum build platform required: L150mm x W150mm x H100mm

Any 3d printer will do.

I personally printed the parts on the Creality Ender 3 which is a low cost 3D printer under 200$ The prints turned out perfectly.

Step 1: 3D Printing the Parts

So now it's time for Printing...Yeay

I Meticulously designed all of BUGS's parts to be 3D printed without any support materials or rafts required while printing.

All the parts are available to download on Pinshape (link here)

All the parts have been test printed on the Creality Ender 3

Material: PETG

Layer Height: 0.3mm

Infill: 15%

Nozzle diameter: 0.4mm

The parts list for BUGS is as follows:

  • 1x MAIN BODY
  • 1x TOP BODY
  • 2x SIDE BODY
  • 1x ARM
  • 1x FOREARM
  • 1x HAND
  • 2x ARM PINS
  • 1x HAND PIN
  • 2x COGS
  • 4x LINKAGE COG
  • 4x SQUARE PIN LINKAGE
  • 4x LINKAGE DRIVE
  • 8x LINKAGE OUTER
  • 8x LINKAGE LEG
  • 8x LINKAGE TOP SMALL
  • 8x LINKAGE BOTTOM SMALL
  • 8x CIRCULR PIN L1
  • 4x CIRCULAR PIN L2
  • 16x CIRCULAR PIN L3
  • 8x CIRCULAR PIN L4
  • 4x CIRCULAR PIN L5
  • 4x BIG CIRCULAR CLIP
  • 36x CIRCULAR CLIPS
  • 12x RECTANGULAR CLIPS

Each part can either be printed as a group or individually.

For Group printing follow the following steps:

  • Start by printing the GROUP ARM FOREARM.stl these parts are the hardest to print and may require a brim to avoid warping
  • Proceed printing the rest of the parts.To print all the parts all you have to do is print every single GROUP.stl file and you will have the complete set of parts make sure you print the GROUP LEG LINKAGES AND PINS.stl file 4 times

And there we have it about a day and a half of printing later you should have all of BUGS's Plastic parts.

Step 1 complete!!!

Step 2: Installing Arduino

BUGS uses C++ programming in order to function. In order to upload programs to BUGS we will be using Arduino IDE along with a few other libraries that need to be installed in the Arduino IDE.

  1. Install Arduino IDE on to your computer

In order to install the libraries in to Arduino IDE you must do the following with all the libraries in the links below

  1. Click on the links below (this will take you to the libraries GitHub page)
  2. Click Clone or Download
  3. Click download ZIP (the download should start in your web browser)
  4. Open the downloaded library folder
  5. Unzip the downloaded library folder
  6. Copy the unzipped library folder
  7. Paste the unzipped library folder in to the Arduino library folder (C:\Documents\Arduino\libraries)

Libraries:

And there we have it you should be all ready to go In order to make sure you have correctly set up Arduino IDE follow the following steps

  1. Download the desired Arduino Code below (Robot Controller & Autonomous.ino or Robot Autonomous Compass.ino or Robot Autonomous Line follower.ino) (for some reason I wasn't able to upload the code to Instructables please PM me at seb.coddington@gmail.com for code until I resolve the problem)
  2. Open it in Arduino IDE
  3. Select Tools:
  4. Select Board:
  5. Select Arduino Nano
  6. Select Tools:
  7. Select Processor:
  8. Select ATmega328p (old bootloader)
  9. Click the Verify button (Tick button) in the left upper corner of Arduino IDE

If all goes well you should get a message at the bottom that says Done compiling.

And thats it you have now completed Step 2 !!!

Step 3: Programing BUGS

Now it's time to upload the code to BUGS's brain the Arduino Nano.

  1. Plug the Arduino Nano in to your computer via USB cable
  2. Click the upload button (Right arrow button)

If all goes well you should get a message at the bottom that says Done Uploading.

And that's it for Step 3.

Step 4: Assembling BUGS's Legs

All the following Steps are depicted in the Assembley Video above.

Assembling the Left side body cogs

Electronic Parts needed:

  • 1x Fitech FS90R continuous rotation servo

Plastic Parts needed:

  • 1x Side body
  • 1x Cog
  • 2x Linkage cog
  • 2x Square pin linkage
  • 2x Linkage Drive
  • 2x Square Clips
  • 4x Circular pin L4

Screws and Servo Horns needed:

  • 2x long self tapering screws
  • 1x short screws for Servo Horn
  • 1x dual arm Servo Horn

Assembly instructions:

  1. Insert the FS90R Servo into the side body
  2. Secure in place with 2 long self tapering screws
  3. Insert the servo horn into the Cog
  4. Insert the Cog on to the Servo
  5. Secure in place with 1 short servo horn screw
  6. Slide the Circular pins L4 in to the Linkage Cogs and and Linkage drives
  7. Slide the square linkage pins into the Linkage cogs (make sure to Slide them in the right way around)
  8. Slide the Linkage cogs into the side body make sure to position the cogs in mirror images of each other as shown in the assembly video above
  9. Slide the linkage drive over the opposite side of the square linkage pin make sure the Circular pins L4 are in opposite directions of each other
  10. Secure the Square linkage pin in place with 2 square clips


Assembling the Right side body cogs

Proceed the same as with left side body cogs

Assembling the Legs

Plastic Parts needed:

  • 2x Linkage outer
  • 2x Linkage Top small
  • 2x Linkage Bottom small
  • 2x Linkage Leg
  • 2x Circular Pin L1
  • 1x Circular pin L2
  • 4x Circular pin L3
  • 1x Circular pin L5
  • 1x Big Clip
  • 9x Clip Circular

Assembly instructions:

  1. Slide Circular pin L5 in to Side body
  2. Secure Circular pin L5 in place with Big Clip
  3. Slide one of the Linkage top small pieces over Circular pin L2
  4. Slide Circular pin L2 through the side body
  5. Slide the other Linkage top small piece over Circular pin L2
  6. Secure with Clip Circular
  7. Slide both Circular pin L1 pieces through both Linkage Bottom small pieces
  8. Slide both Linkage Bottom small pieces over Circular pin L5
  9. Slide both Linkage outer pieces over the Circular pin L4 and Circular pin L1 as shown in assembly video above
  10. Secure Both Linkage outer pieces with 2 circular Clips each
  11. Slide 2 Circular pin L3's through both Linkage top small pieces
  12. Slide both Leg linkages over the other side of the Circular pin L3
  13. Secure both Leg linkages in place with 2 Circular clips
  14. Slide the last 2 Circular pin L3's through the 2 Leg linkages
  15. Slide the other end of the Circular pin L3's through the outer Linkage
  16. Secure with 2 Circular Clips

Proceed the same process with the remaining three corners of the Robot.

Step 5: Assembling BUGS's Claw

All the following Steps are depicted in the Assembley Video above.

Electronic Parts needed:

  • 3x Genuine Towerpro MG90S servo

Plastic Parts needed:

  • 1x Top Body
  • 1x Arm
  • 1x Forearm
  • 1x Hand
  • 2x Arm pins
  • 1x Hand pin

Screws needed:

  • 2x long self tapering screws

Assembly Instructions:

  1. Insert one of the arm pins into the Top body hole
  2. Insert one of the servos into the Top Body
  3. Secure the servo with 2 long self tapering screws
  4. Insert the the other arm pin into the bottom forearm hole
  5. Insert the Hand pin into the top (hand side) forearm hole
  6. Insert the 2 remaining Servos into the forearm
  7. Insert the Arm over the Top body Servo and Pin (widest side) make sure to get it the right way around
  8. Insert the Arm over the Forearm Servo and Pin (thinnest side) make sure to get it the right way around
  9. Insert the Hand over the other Forearm Servo and Pin

Step 6: Assembling BUGS's Electronics

All the following Steps are depicted in the Assembley Video above.

Electronic Parts needed:

  • 1x Arduino NANO
  • 1x NRF24L01 Transceiver (optional)
  • 1x Servo shield
  • 1x Buzzer
  • 1x Ultrasonic sensor
  • 1x Magnometer (digital compass)
  • 2x IR sensors
  • 1x Battery Holder
  • 2x 18650 Batteries

Plastic Parts needed:

  • 1x Main Body

Screws needed:

  • 9x long self tappering screws

Assembly instructions:

  1. Clip the Arduino NANO and NRF24L01 transceiver on to the servo shield
  2. Screw the Battery Holder wires to the servo shield (check polarity)
  3. Screw the Battery holder to the Main body with 2 screws diagonally
  4. Screw the Buzzer to the Main body with 1 screw
  5. Screw the Servo shield to the Main body with 2 screws diagonally
  6. Screw the Magnometer (digital Compass) to the Main body with 2 screws
  7. Clip the Ultrasonic sensor in Place on the Main body
  8. Screw both IR sensors to the Main body with 1 screw each
  9. Insert Batteries into battery holder

Step 7: Assembling BUGS's Legs and Claw to the Body

All the following Steps are depicted in the Assembley Video above.

Plastic Parts needed:

  • 2x Assembled Legs
  • 1x Assembled Claw
  • 1x Assembled Main Body
  • 8x Square Clips

Assembly instructions:

  1. Slide the side of the Assembled Claw into the upper square holes of one of the Assembled Legs
  2. Slide the side of the Assembled Main Body into the lower square holes of the same Assembled Leg
  3. Secure in place with 4 square clips
  4. Slide the remaining Assembled Leg over the other side of the Assembled Claw and Assembled Body
  5. Secure in place with 4 square clips

Step 8: Wiring Up BUGS's Electronics

Use the Wiring diagram above to determine the wiring connections

Prepare the female to female jumper cables needed

  • 5x Red or Orange for positive 5V
  • 5x Brown or Black for negative Ground
  • 1x Blue for Buzzer I/O pin
  • 2x Green for the two IR sensors OUT pins
  • 2x Yellow for Ultrasonic Trig and Echo pins
  • 2x Purple for the Magnometers (digital compass) SDA and SCL pins

Wiring instructuctions:

  1. Plug the Hand servo into pin number 1 on the Servo control Board (make sure to get the connections the right way around)
  2. Plug the Forearm servo into pin number 2 on the Servo control Board (make sure to get the connections the right way around)
  3. Plug the Arm servo into pin number 3 on the Servo control Board (make sure to get the connections the right way around)
  4. Plug the Left Legs servo into pin number 4 on the Servo control Board (make sure to get the connections the right way around)
  5. Plug the Right Legs servo into pin number 5 on the Servo control Board (make sure to get the connections the right way around)
  6. Plug the Blue female to female jumper cable to Signal pin number 6 on the Servo control Board
  7. Plug a Red or Orange female to female jumper cable to VCC pin number 6 on the Servo control Board
  8. Plug a Brown or Black female to female jumper cable to GND pin number 6 on the Servo control Board
  9. Plug 2 Green female to female jumper cables to Signal pins number 7 and 8 on the Servo control Board
  10. Plug 2 Red or Orange female to female jumper cables to VCC pins number 7 and 8 on the Servo control Board
  11. Plug 2 Brown or Black female to female jumper cables to GND pins number 7 and 8 on the Servo control Board
  12. Plug 2 Yellow female to female jumper cables to Signal pins number 9 and 10 on the Servo control Board
  13. Plug 1 Red or Orange female to female jumper cable to VCC pin number 9 on the Servo control Board
  14. Plug 1 Brown or Black female to female jumper cable to GND pin number 9 on the Servo control Board
  15. Plug 2 Purple female to female jumper cables to Signal pins number 11 and 12 on the Servo control Board
  16. Plug 1 Red or Orange female to female jumper cable to VCC pin number 10 on the Servo control Board
  17. Plug 1 Brown or Black female to female jumper cable to GND pin number 10 on the Servo control Board
  18. Plug the Blue female to female jumper cable on pin 6 to the I/O pin on the Buzzer
  19. Plug the Red or Orange female to female jumper cable on pin 6 to the VCC pin on the Buzzer
  20. Plug the Brown or Black female to female jumper cable on pin 6 to the GND pin on the Buzzer
  21. Plug the Green female to female jumper cable on pin 7 to the OUT pin on the Left IR sensor
  22. Plug the Red or Orange female to female jumper cable on pin 7 to the VCC pin on the Left IR sensor
  23. Plug the Brown or Black female to female jumper cable on pin 7 to the GND pin on the Left IR sensor
  24. Plug the Green female to female jumper cable on pin 8 to the OUT pin on the Right IR sensor
  25. Plug the Red or Orange female to female jumper cable on pin 8 to the VCC pin on the Right IR sensor
  26. Plug the Brown or Black female to female jumper cable on pin 8 to the GND pin on the Right IR sensor
  27. Plug the Yellow female to female jumper cable on pin 9 to the Trig pin on the Ultrasonic sensor
  28. Plug the Yellow female to female jumper cable on pin 10 to the Echo pin on the Ultrasonic sensor
  29. Plug the Red or Orange female to female jumper cable on pin 9 to the VCC pin on the Ultrasonic sensor
  30. Plug the Brown or Black female to female jumper cable on pin 9 to the GND pin on the Ultrasonic sensor
  31. Plug the Purple female to female jumper cable on pin 11 to the SDA pin on the Magnometer
  32. Plug the Purple female to female jumper cable on pin 12 to the SCL pin on the Magnometer
  33. Plug the Red or Orange female to female jumper cable on pin 10 to the VCC pin on the Magnometer
  34. Plug the Brown or Black female to female jumper cable on pin 10 to the GND pin on the Magnometer

Step 9: Calibrating BUGS's Claw Servos

All the following Steps are depicted in the Assembley Video above.

Screws and Servo horns needed:

  • 3x Single arm servo horns
  • 3x short screws for servo horns

Assembly Instructions:

  1. Switch the Robot on for 5 seconds until the servos reach their home position then turn the Robot off
  2. Position the Arm at a 90 degree angle to the body
  3. Insert the Arm/body servo horn
  4. Secure in place with a short servo horn screw
  5. Position the Forearm at a 90 degree angle to the Arm
  6. Insert the Forearm/Arm servo horn
  7. Secure in place with a short servo horn screw
  8. Position the Hand in the Closed position
  9. Insert the Hand/Forearm servo horn
  10. Secure in place with a short servo horn screw

Step 10: Calibrating the IR Sensors for Line Following

In order for the IR sensors to detect a Black line you must adjust the potentiomenter screw on each IR sensor so as that the 2 red LED's are on when the sensor is near a white surface and that only one red LED is on when the sensor is near a black surface.

Step 11: Using BUGS

Using BUGS in Line following Mode:

  • Place the Robot on the floor at the beggining of the line
  • Place a Golf ball 3cm in front of the Robot
  • Switch the Robot on and watch him go!!!

Using BUGS in Compass and Obstacle avoiding mode:

  • Position the Robot in the direction you want him to head
  • Switch the Robot on and watch him go

Using BUGS with a Controller:

  • Use the Joystick to move the Robot
  • Use the Up button to open and close the Claw
  • Use the Down Button to lift the arm up and down
  • Use the Left button to activate Compass and obstacle avoidance mode
  • Hold the Left button to deactivate Compass obstacle avoidance mode
  • Use the right button to activate Line following mode
  • Hold the right button to deactivate Line following mode
Robotics Contest

Second Prize in the
Robotics Contest