Development of an Autonomous Multi-
Robot Sensor Swarm
University: University of Edinburgh
Team Member(s): Andrew Nicol
Faculty Advisors: Dr. H.M.Reekie
Email Address: firstname.lastname@example.org
Title: Development of an Autonomous Multi-Robot Sensor Swarm
This project aimed to develop a low-cost multi-robot autonomous sensor swarm capable of providing distributed area explosive detection for dismounted military patrols with minimal human interaction. Development of this system consisted of an initial proof-of-concept study carried out in simulation followed by implementation on a trial robot.
LabVIEW 2010, Real-Time & FPGA
The threat of concealed explosives represents the single greatest source of modern military fatalities and injuries. There is therefore a need to provide advanced warning and detection capabilities to military patrols to help minimise this threat.
This project aims to address this need by providing dismounted military patrols with a distributed explosive detection capability, based around a multi-robot autonomous swarm. The proposed system would be composed of around 70 individual robots, corresponding to a 35 man platoon carrying two units each. Each unit will be equipped with a means of determining its position, communicating wirelessly with the other units in the swarm and detecting explosives by chemical analysis or other means.
The main objective of this project was to examine the feasibility of using the principles of swarm control in conjunction with low-cost sensors and microcontrollers to develop a distributed, autonomous sensor network. Swarm control is currently being investigated as part of a number of high-tech, high-value systems, therefore this use of low-cost components represents the main difference between this and existing work. It also represents the primary driver for developing simple control algorithms that can achieve sufficient accuracy without incurring an excessive computational cost.
The main success of this project has been the proof-of-concept investigation carried out through a number of simulations implemented in the LabVIEW environment. These have allowed the development of both a simple yet robust position estimation algorithm and a swarm control algorithm capable of deploying an arbitrary number of robots into a sensor cordon around the swarm operator. Of particular note is that the latter algorithm is capable of quickly closing gaps in coverage, such as may occur if units are destroyed or damaged, by making use of a novel addition to the basic Virtual Force Algorithm used to achieve the swarm deployment. This feature is demonstrated in the following animation which show the “evolution” of the swarm’s deployment around the operator (robot positions shown by blue diamonds and operator position shown by the red square):
Swarm evolution from a linear starting deployment (click to play).
Images are shown at intervals of 500 iterations of the simulation, with 1 iteration equal to 0.1 seconds.
The graphical LabVIEW environment was invaluable in implementing these simulations as it allowed the simple combination of low-level motion and sensor models with the higher-level control algorithms. This allowed the development of the high-level functionality to be achieved much sooner than would otherwise have been possible and also provides a simple means of making modifications to optimise the solution.
Testing of these developed algorithms on hardware was to be done using a simple robot chassis with an sbRIO 9602 used for control and a number of position-determining sensors mounted on top (shown below). The ability to continue using the LabVIEW environment when moving to hardware again significantly accelerated the project, allowing prototyping to be carried out much more rapidly than would have been possible using the likes of a microcontroller programmed in C.
Robot chassis with control and sensing elements mounted on lid.
Unfortunately a number of technical difficulties were encountered in interfacing the various sensors with the sbRIO. The main source of difficulty came from establishing I2C communications with the digital compass as this device exhibited a number of errors, including pulling the communication lines to half-logic voltage levels. After an in-depth investigation, combined with my supervisor’s previous experience with the I2C protocol, it became apparent that the original IP Core used to handle the communications was violating the I2C specification by driving to the high logic level instead of releasing the line to charge up through the pull-up resistors.
Having identified the source of the problem, it was then possible to re-code the low-level switching action of the controller, thereby correcting the fault and allowing communications to be successfully established. This modified IP Core can be found in the attached files. While this problem was ultimately resolved, the delay resulted in it not being possible to complete the integration of the sensor suite within the timeframe of the project. It is hoped that this work will be continued by another student during the next academic year.
Hey A.N. Other,
Thank you so much for your project submission into the NI LabVIEW Student Design Competition. It's great to see your enthusiasm for NI LabVIEW! Make sure you share your project URL (https://decibel.ni.com/content/docs/DOC-16229) with your peers so you can collect votes via "likes" for your project and win. Collecting the most "likes" gives you the opportunity to win cash prizes for your project submission. I'm curious to know, what's your favorite part about using LabVIEW and how did you hear about the competition?
Good Luck, Liz in Austin, TX.
Hi Liz, I heard about the competition from my NI academic rep who suggested that I enter. I've been using LabVIEW for a few years now and I have to say, I love how easy it is to use. Probably the best thing is how simple it is to move from simulations to deployment on hardware, all within the one environment. For me, that really speeds up development meaning you can create high-level functionality much faster than otherwise possible.
p.s. I'm not sure why but the "Like" button on this page doesn't seem to be a button, it's just text. Any idea what's going on?
Thanks for the response. It's just text for you, but I can click it. This is done so folks can't "like" there own content. If you pass the URL for your project onto your peers, they will have ability to "like" your project submission.
but need more explaniation
Thanks, for the comment. I've now also added my dissertation as-submitted for marking by the university. Some parts will be more interesting than others but it should have any and all extra information you might like.