Swarm Robot build
April 1, 2013
It's been quite a long time that I haven't been here (mostly due to being in the second last year of school and other projects). Recentlly I got interested in robotics again and I came up with the idea of building swarm robots (just a little group of maybe 10 bots, not 40+ that the universities use).
Here I want to describe my thought process a little and then ask some questions.
So my first goal is to make it relatively small, something of the size like the robots seen in this excellent video by the University of Sheffield (see embedded video below).
For the basic case I have thought of the standard 50mm diameter PVC plumbing pipe that I can get cheaply from any hardware store around. The 50mm diameter would allow me to design round PCBs with a 50mm diameter that would just fit into the pipe, plus there are caps for the pipes available so I can fully enclose the electronics inside the pipe.
I plan on using motors like the Pololu 120:1 mini gearmotors in conjuction with their 32mm wheels (the ones that are used on the Pololu 3Pi robot). Here I don't know how to trade off torque vs. speed, because if I want to let the move things around I will probably need more torque that speed, don't know if speed will be too critical anyway.
The robot should be powered by a Lithium-Polymer rechargeable battery (charger ICs are available) and a LDO regulator (eg. LM1117, 3.3V output voltage).
I will use Microchip PIC 8-bit microcontrollers (more of a random side note here).
As you can see I have got the physical specs pretty much finished.
Problem 1: Communication
The problem I have is that I don't know which communication interface I should be using so that the robots can communicate with eachother.
There are two options:
Option 1: nRF24L01+ 2.4GHz wireless modules
Option 2: Infared comunication via serial data / Manchester encoding like in IR remotes (if Manchester encoding is good enough for 10Mbit Ethernet, it's definitely good enough for me)
Of course Option 2 will be cheaper as it only requires an IR LED and a TSOP31238 (or similar) + some software decoding (nothing that couldn't be done by the PIC18F45K22). My only question is how to handle the interference when multiple robots would be transmitting data at the same time, some sort of token-ring network might be needed.
Problem 2: Sensors
The next problem I see is the sensor equipment, especially the collission detection/avoidance sensors. Again there are multiple choices, the Sharp IR sensors, which are relatively cheap (altough I don't know if they would interfere with the commuication over IR or vice versa). Then there are ultra sonic distance sensors, the downside being that these are pretty expensive (20 bucks a pop).
Next up I though of some LDRs for relative light sensing and NTCs for temperature sensing (rough ballpark figures, no exact readings).
Is there any other sensing equipment that should be added for a general purpose bot?
Problem 3: Resources
Because I'm a student and I want to make 10 of these, I will crunch down on cost for an individual robot. Another question I have is what should I use as a front wheel so the bots don't trip over (I don't plan on building balancing bots after all).
So I am asking if you know of any good/reasonably priced sources for:
1. Small size LiPo / Li-Ion rechargeable batteries (here my question would be, what is a reasonable capacity?)
2. Small size motors with 3mm D-Shaft output that would provide a bit of torque (see above).
I know that there are a lot of people here capable of answering these questions, so please feel free to do so. If you have any additions, again please feel free to make suggestions!
Update April 2, 2013:
I've had a look around on eBay and have found some of the parts I need.
I've decided that I will use the Sharp GP2Y0A21YK as the main distance measurement sensor for obstacle avoidance because the SR04 US sensors can only be powered from 5V.
The motordriver is going to be a 3.3V compatible DRV8833 by Texas Instruments (it's even cheaper than the L293D).
The communication will be done via the nRF24L01+ modules that are cheaply available.
I have found no suitable replacement for the Polou wheels.