Distributed Autonomous Swarm of Maxelbots

The ability of robots to quickly and accurately localize their neighbors is extremely important for robotic teams. In this video you will see our trilateration approach to multi-robot localization, which is fully distributed, inexpensive, scalable, and robust. We are testing the ability of trilateration to work in real-world outdoor conditions, at a quite reasonable rate of speed.

With our approach there is no global controller what-so-ever. This means there are no hidden beacons, GPS units, over-head cameras, etc. There is no pre-programmed environmental knowledge. There is no central CPU. The system is fully distributed and all computations are done on a mere 24Kb of RAM per robot. We hope you will enjoy our "swarm death metal" music background.

Re: Distributed Autonomous Swarm of Maxelbots

I like the ultrasonic localization technique. How does a bot know which of its swarm-mates is sending out a pulse? Is identification data sent with the initial RF signal? Are they synchronized in any way to prevent the pulses from interfering with each other?

Re: Distributed Autonomous Swarm of Maxelbots

You are right, Dave. The RF signal also encodes the ID of the robot that generates it. The robots take turns emitting the RF/acoustic pulse using a protocol similar to the token ring protocol. The robot that has the token emits, the others perform the localization. Actually more information is sent along the ID, e.g. heading, various sensor readings.
However, in this video, we employ the leader-follower concept, where only the leader emits the RF/acoustic pulse, allowing the two followers to locate the leader and maintain a constant position relative to the leader.

Re: Distributed Autonomous Swarm of Maxelbots

This looks similar to Pololu's IR beacon (www.pololu.com) I haven't tried it yet, but the Pololu beacon does look to be fairly cheap, simple, and reliable. The only question is range. The Pololu system is not as sophisticated, but you know me, Simple is (usually) better! And the Pololu beacon doesn't require much computational power at all, leaving your 'brains' to do better things.
So this is a hybrid RF-ultrasonic system?

Re: Distributed Autonomous Swarm of Maxelbots

kdwyer,

Thank you for your interest in our project. The answer to your question is: Yes, we are making use of both RF and ultrasound to perform the localization.

From the documentation I read on the web address you posted, it looks like Pololu's IR beacon is yet another technique that allows robots to be aware of their nearby peers. Your concerns/comments are very interesting, so please allow me to do a little comparative analysis of the Pololu and our localization technique.

Pololu's IR beacon seems to be more suitable for pairs of robots and it would definitely be challenging to use it in swarm robotic applications, where you can have many robots in close proximity. Also, with only six IR receivers, the detected angle is doubtless fairly coarse. Our technique is suitable for any number of neighbors and the detected angle and distance are both accurate.

Regarding the range, Pololu's is currently better than ours, but it may very well vary. In particular, due to the nature of IR, the range can be affected by sun light, dust particles, water vapors, and so on. We successfully experimented with ranges up to 8 feet using our localization technique in various conditions and environments (e.g. static, dynamic, inside, outside, dark, sunlight, high winds, rough terrain). The range limitation is mostly due to the cheap, off-the-shelf (OTS) ultrasonic transducer.

As far as the computational power goes, our system is currently using a Freescale HCS12 microprocessor running at 25 MHz, with 12kb of RAM and 256kb of EEPROM. We are currently investigating to replace this microprocessor with a much smaller PIC 16F series, similar to the Pololu's microcontroller. Also, you can think of our system like an independent module, similar to Pololu (i.e. you will need a separate controller to make use of it).

Pricewise, it is difficult to give a price estimate of our system, but, with the exception of the parabolic cones, we built it with OTS parts and I do not believe that once mass-produced the price will be much higher than Pololu's.

Re: Distributed Autonomous Swarm of Maxelbots

The robots take turns emitting the RF/acoustic pulse using a protocol similar to the token ring protocol. The robot that has the token emits, the others perform the localization.

When using this technique, what happens if one of the bots stops communicating? If one of the units runs over a land mine or something, would the cycle get interruped, causing the whole swarm to loose locational abilities?

Re: Distributed Autonomous Swarm of Maxelbots

When using this technique, what happens if one of the bots stops communicating? If one of the units runs over a land mine or something, would the cycle get interruped, causing the whole swarm to loose locational abilities?

Usually the communication protocol will handle such situations. Here is how our protocol will handle it. If one robot fails to ping, then the robot with the next higher ID will assume the ID of the failed robot. This process will then propagate through all the swarm. Since ping frequency can be as high as 30 Hz (this is based on how long it takes the sound to dissipate), then 1 second of radio silence is more than enough to decide that a robot has failed.