Introduction: Arduino Sumorobot

This is a tutorial to build your own Sumorobot using Arduino. It can be either programmed over USB or Bluetooth. There is a report and poster about the project on sharelatex. The gallery is publicly available in google+. The workshop slides can be found on google drive. All the source code, schematics files and documentation for the workshop are publicly available on github.

Step 1: Things to Buy (BOM)

  1. Printed circuit board for the chassis or plywood for laser cutting
  2. 1 x Bluetooth HC-05 without baseboard (breakout) http://www.ebay.com/sch/i.html?_nkw=hc-05
  3. 2 x 5V photoelectric distance sensor
  4. 3 x line sensor TCRT5000 http://www.ebay.com/sch/i.html?_odkw=line+sensor&_...
  5. 2 x PCB push button
  6. 2.54 mm pin headers, Arduino shield headers
  7. 1k and 2k resistors
  8. 2 x 5mm LED
  9. 1uF, 220uF, 1000uF electroytic capacitors
  10. 0.1uF, 0.33uF ceramic capacitors
  11. 5V 2A LDO

Step 2: Circuit Development

The circuit can be built according to the schematics here

Step 3: Mechanical Design

The frame can be milled using a CNC or cut by hand according to the schematics here
The servo motors must be modified to be continuous rotating according to guide here

Step 4: Laser Cutting Chassis

The laser cutter design for the chassis can be found here. The idea of the laser cutter design is that the chassis can be easily assembled and disassembled.


Lasercutter mostly accept the SVG or/and DXF format(s). The difference between a laser cutter and CNC is that the laser cuts on the line, where the CNC cuts inside of the borders or outside. Which means the laser cutter design needs an extra margin, which is specific to the laser, mostly correlates with the power of the laser. The only good way to find out is to test :)

The cube here is designed for the margin testing purpose

Step 5: Programming

Connect the bluetooth module to a 3.3V USB to serial 38400 baud and configure with the following:

  • AT
  • AT+RESET
  • AT+ORGL
  • AT+ROLE=0
  • AT+POLAR=1,0
  • AT+UART=57600,0,0
  • AT+INIT
  • AT+INQ

When using a linux machine the bluetooth can be configured with the following:

# arduino bluetooth device address and your bluetooth

  • $ hcitool scan # to get arduino bluetooth address
  • $ hciconfig -a | grep "BD Address" # to get your bluetooth address
  • $ echo " 1234" > /var/lib/bluetooth//pincodes
  • $ rfcomm bind 0

Step 6: Testing

Happy constructing xD

Comments

author
ken.barisoff (author)2017-02-16

The links don't seem to work.

author
tsunx (author)ken.barisoff2017-02-16

thx for the tip, I updated the links

author
osGFXman (author)2016-01-04

this is A W E S O M E! :D .. thanks for sharing !

author
tsunx (author)osGFXman2016-01-05

thx, I am still working on the project ^_^