- Fully mobile wifi robot/cyborg.
- Roughly 15 hours of mobility per charge.
- 5-speed available through keyboard control (0 to instability - click here to see a video).
- Tablet-brand-agnostic mounting system.
- Two independent 3A motors for navigating even the toughest of office terrain.
- Optional wireless PS3 remote integration for fine-grained control (check source code repo below).
- Optional speakers for increased volume.
This type of telepresence technology has been explored quite a bit recently by hobbyists and commercial players. You can purchase something like this for anywhere between $2,000-$15,000 depending on the model you're looking for. Being active participants in the open source community we figure it's our duty to give back ideas and methods as often as possible, for as free as possible, so you can get the same results for a lot less. You can get something like this built for under $400 (which is what we spent), but with some creative scavenging and even substitution of certain components, you can knock it down even further. Tablet not included.
This project was fun, but the usual disclaimers apply if you want to go ahead and replicate. If you're not comfortable brandishing a soldering iron, reading documentation, or understanding what's happening when you look at a schematic, this project is not for you. However, if you're yearning to ultimately become a cyborg, read on!
A lot of these components can be substituted for others. For example, the cheaper Arduino Ethernet shield and a wifi router with a 12v input vs. the expensive Official Arduino Wifi shield, if you have those parts kicking around. You can also build your own motor driver circuit instead of purchasing one. The possibilities and cost savings are endless. The choices we made balanced expediency and cost. The project took about 96 man hours in total, working in the middle of the night, when we should've been sleeping. This includes code, debugging and everything else.
Warning: There are many issues to deal with along the way. Most notably the Official Arduino Wifi Shield is brand new and the wifi library is full of bugs and a lack of UDP client/server support, which would have been perfect for this application. We've been in contact with the community and some of these issues are being worked on slowly. I'm confident eventually it'll be stable, but in the meantime, be prepared and competent with C++ and Arduino programming if you chose to venture down this path. There are other wifi shields out there that may make your life easier.
Warning! At the time of this blog post release we had to completely replace the Arduino Wifi-Shield with an Arduino Ethernet Shield + in-house Hacked TP-Link Wifi Router. The Arduino Wifi Shield is a very young product and the firmware integration for it is still extremely unstable for this application. We suffered from frequent crashes when data was streaming in. Stay tuned for the next blog post that details the changes and hacks to get RUDEBOT 100% stable...Have any suggestions? Give us a shout by navigating to nibbler.io and click on About! We'd like to hear your feedback.
- Various Drill and Screwdriver Bits
- Scroll/Jig/Hand/Table Saw
- Vernier Caliper
- Wire Strippers
- Soldering Iron
- 12"x14"x1/2" plywood or other chassis material (metal/plexiglass)
- Arduino UNO (minimum for digital I/O pin requirements)
- 2x Pololu 67:1 37Dx54L gear motors - http://www.pololu.com/catalog/product/1105
- 2x Pololu 37D mounting brackets - http://www.pololu.com/catalog/product/1084
- Pololu dual MC33926 motor driver shield for Arduino - http://www.pololu.com/catalog/product/2503
- Arduino wifi shield - http://arduino.cc/en/Main/ArduinoWiFiShield
- 2x 6" lawnmower wheels (Home Depot)
- 2x Caster wheels of 2"-2.5" max height (Home depot)
- Assorted 22 gauge solid core wires
- 4mm standoffs
- 4mm screws for standoffs
- Toggle switch for power
- 12v SLA 7.2Ah battery - http://panasonic.com/industrial/includes/pdf/Panasonic_VRLA_LC-R127R2P.pdf
- 12V SLA MasterCraft battery charger (Candian Tire)
- Hole punched copper strapping
- Super glue
- 1" finishing nails
- #8-1/2" or #6-1/2" wood screws
Grab the server and client code from http://github.com/KOSTECKY/RUDEBOT. Create a keys.h file in the RUDEBOT project and put in the SSID and password of your wireless network, like so:
char ssid = "YOUR_WIFI_SSID";
char pass = "SSID_PASSWORD";
17. Compile the code and upload it to your Arduino. Connect via the serial monitor or terminal program to grab the IP that it acquired via DHCP. We recommend uncommenting the code that displays the MAC address, and using it to assign a static IP to your wifi shield via your DHCP server.
18. If you don't have a PS3 controller to utilize the client code, you can send commands to the rover by initiating a connection to the server via socat: 'socat -,raw,echo=0,escape=0x03 TCP:XXX.XXX.XXX.XXX:8888,keepalive,nodelay'. Refer to the README for the key bindings.