This robot is meant to be cheap (less than 50$), simple to build (3D printing most part), easy to assemble (just screwing things together), easy to program (using Arduino for start), easy to improve (fixation points are all over the chassis to add stuff), easy to modify (everything is open source, all schematics are available, and provided in open formats used by free open source software that are available on linux, windows and mac).
The base of the robot is an Arduino nano controlling two continuous rotation servos motors for movement, and a few contact switches, a third servo and an infrared rangefinder. This renders the robot capable of simple obstacle avoidance programs.
This is the cheapest version of the robot. However, a second stage can be added, with a Raspberry pi zero, and a wifi usb key. The pi and the Arduino are interconnected via serial with logic level conversion.
In this configuration, the Arduino is programmed to answer to serial commands. It can be asked to do a few things (moving, turning the sensor, etc) or to return informations (sensors values, battery level, etc).
Then the Raspberry pi zero sends commands over serial via a small library, and the robot can be programmed over the air, via wifi.
If the robot is alone, it creates a hotspot used to program it. If another robot hotspot is detected, other robots will try to connect to it, allowing collaborative work.
I plan on making a small base station generating the first hotspot, and containing the wiki, docs, source codes, etc.
With the Raspi and the wifi key, we're still under 50$ :
- 35-40$ for the base robot;
- 5$ pi zero;
- 2$ usb key;
- 1$ micro usb-usb converter;
- 3$ micro sd card.