SHINERBOTS: A ROBOTIC SWARM NAVIGATION PLATFORM …

Post on 13-Jan-2022

4 views 0 download

Transcript of SHINERBOTS: A ROBOTIC SWARM NAVIGATION PLATFORM …

SHINERBOTS:AROBOTICSWARMNAVIGATIONPLATFORMINSPIREDBYTHEGOLDENSHINERFISH

BY

ENYULUO

THESIS

SubmittedinpartialfulfillmentoftherequirementsforthedegreeofMasterofScienceinElectricalandComputerEngineering

intheGraduateCollegeoftheUniversityofIllinoisatUrbana-Champaign,2017

Urbana,Illinois

Adviser:

AssistantProfessorGraceXingxinGao

ii

Abstract

Thisthesisdescribesaswarmrobotsnavigationalgorithminspiredbythegoldenshinerfish.Thegoalof

thisalgorithmistohavetheswarmofrobotsnavigatetotheirdestinationwithminimalrequirements

oneachrobot.Thereislittlesensingcomplexityrequired.Eachrobotonlyneedstosenseinformationat

itscurrentlocationwithouttheneedtounderstandthewholeenvironment.Inaddition,itonlyneedsto

senseitsneighborsinalimitedradius.Furthermore,eachrobotrequiresminimalcomputationasit

operatesonbasicrulesonwhatitsenses,insteadofperforminglocalizationandpathplanninglike

traditionalrobotics.

Thealgorithmproposedinthisthesisisbasedonsimplerulessuchasmodulatingspeedaccordingtothe

environment,aswellasstayingclosetoneighboringrobots.Simulationresultsshowthattheswarmof

robotsconvergetothedesiredregionwiththisalgorithm.

Aswarmroboticplatformwasdesignedandbuilttoexperimentwiththisalgorithm.Itisnamed

Shinerbotsduetotheinspirationtakenfromthegoldenshiners.Eachrobotis40.6mmindiameter,

actuatedbyvibration,sensesambientlightusingaphotodiode,andsensesneighborsusinginfrared.

Scalablewaysofchargingandcontroloftheswarmareachievedbyachargingplate,aswellasrelayed

systemmessages.

Atotalof85robotswerebuilt.Experimentsontheswarmbehaviorwereconductedona4ftby4ft

platform,usinganoverheaddigitalprojectortocreatethelightenvironmentthattheShinerbotsare

supposedtonavigatein.TheShinerbotswereabletoswarmtoatargetregionwithminimalsensingand

control.

iii

Acknowledgments

Iwouldliketoexpressgratitudetomyadvisor,AssistantProfessorGraceXingXinGao,forthesupportof

mystudyandresearchprojects.IwouldliketothankXinhuiFangandKwokBunChengforsolderingand

assemblingrobotsforthisproject,aswellasAlexandraBaculaandKatieCarollforcalibratingand

conductingexperimentswiththeShinerbots.

iv

Contents

1.Introduction.............................................................................................................................................1

1.1GoldenShinerFish..............................................................................................................................1

1.2SwarmAlgorithm................................................................................................................................1

1.3Shinerbots..........................................................................................................................................2

1.4SummaryofContributionsandThesisOutline...................................................................................2

2.ExistingSwarmRoboticPlatforms............................................................................................................4

3.ShinerbotSwarmNavigationAlgorithmandSimulation..........................................................................7

3.1ModelingoftheGoldenShiners.........................................................................................................7

3.2ModelingwithAddedRandomness...................................................................................................8

3.3SimulationoftheModel.....................................................................................................................9

4.DesignandImplementationoftheShinerbotPlatform.........................................................................10

4.1Mobility............................................................................................................................................10

4.2NeighborSensing..............................................................................................................................11

4.3Communications..............................................................................................................................15

4.4ScalableCharging.............................................................................................................................16

4.5OtherHardwareSubmodules...........................................................................................................17

4.6ThePhysicalPrintedCircuitBoard...................................................................................................17

4.7Firmware..........................................................................................................................................18

4.7.1I/ODriversLayer........................................................................................................................18

4.7.2ShinerbotSystemLayer.............................................................................................................19

4.7.3ApplicationLayer.......................................................................................................................19

4.8SystemMessages.............................................................................................................................20

4.9PowerStates.....................................................................................................................................21

5.ExperimentalResults..............................................................................................................................23

5.1IntermediateClusteringBehavioroftheShinerbots........................................................................23

5.2ExperimentwithCenteredDestinationRegion................................................................................24

5.3ExperimentwithOff-centeredDestinationRegion..........................................................................25

6.Conclusion..............................................................................................................................................27

6.1SummaryofAchievements..............................................................................................................27

v

6.2FutureWork.....................................................................................................................................27

References..................................................................................................................................................29

AppendixA:SchematicsofaShinerbot.....................................................................................................32

1

1.IntroductionTraditionalroboticplatformsrelyonasophisticatedself-containedsystemtoperformnavigation[24].

Therobotwouldhavetodetermineitscurrentlocationanddestination,andperformpathplanningto

traversetothedesireddestination.Thisrequiresawiderangeofsensorstoprovideawarenessofits

surroundings,whichleadstodependenceonsignificantprocessingpowertodigesttheinformationand

makedecisionsinacentralizedsystem.Thereisashiftinparadigminthepastdecadetowards

distributedsystems[20],[7].Insteadofasinglerobot,aswarmofrobotscooperatetoachievethesame

navigationgoal.Thisreducescostsofrobotsasthecomplexityofsensorsandprocessingisloweredon

eachrobot.Italsoincreasesfaulttolerancesastherobotswarmbasicallybecomesasystemofmany

redundantsensorsandwillnotbeaffectedbyasinglepointoffailureasasinglerobotmayexperience.

Differenttypesofdistributedswarmnavigationalgorithmshavebeenproposed.Therearealgorithms

thatmaintaindifferenttypesofformation,whileavoidingobstaclesandmovingtoagoal[2].Other

algorithmsutilizeartificialpotentialfunctions[14]andpanelmethods[17],aswellasincorporating

sliding-modecontroltopotentialfields[9].Streamfunctions[27],apotentialfield-basedmethod,were

alsoproposed.Someofthealgorithmsweredesignedforspecificpurposeslikecooperativesurveillance

usingmicro-aerialvehicles[22],aswellastransportingobjectsinacooperativemanner[1].Most

existingswarmrobotsystemsstillutilizecomplexsensingandcomputationresourcesoneachrobot.

Robotswereassumedtobeabletomeasureenvironmentalparameterslikegradients,andalsoto

communicatewithallotherrobots.Sections1.1and1.2describetheinspirationandmodelofan

algorithmthatreducesrequirementsofindividualrobotsofaswarmevenfurther.

1.1GoldenShinerFishThegoldenshinerisatypeoffishthatlikestobeindarkareas.Peopleoriginallythoughtthatthefishes

areabletosenselightgradients,whichtellsthemwheretoswimtowardsthedarkareas,butBerdahlet

al.[3]disprovedthis.Asinglefishaloneinthetankisnotabletoswimtowardsthedarkarea.Instead,it

swimsinarandommanner,modulatingitsspeedaccordingtothelightintensityofitscurrentlocation.

Itswimsfastinbrightareas,andslowindarkareas.Asmorefishesareaddedtothetank,theyareable

toschooltogetherandendupinthedarkregion.

1.2SwarmAlgorithmThisthesisproposesandimplementsaswarmnavigationalgorithminspiredbythebehaviorofthe

goldenshiner.ThisalgorithmisbasedontwoaspectswhichgovernthemovementofeachShinerbot.

2

Oneisanenvironmentalfactor.Ambientlightwasusedinthecaseofthisthesis.Eachrobotmodulates

itsownspeedaccordingtolightintensity.Thesecondaspectisthesocialfactor,whererobotswantto

staywithneighbors,mimickingschoolsoffishes.Thegeneralizedalgorithmisshownbelow.More

detailstothealgorithmwillbeexplainedinchapter3.

𝑥" 𝑡 = 𝑒𝑛𝑣 𝑥" 𝑡 ∙ 𝑠𝑜𝑐(𝑥" 𝑡 , 𝑥/ 𝑡 , 𝑗 ∈ 𝒩" 𝑡 )

Thereareseveralbenefitstothisdistributedalgorithm.Minimalsensingisrequiredasarobotonly

needstosenseitscurrentlocationandnotthewholeenvironment.Robotsdonotneedtocommunicate

andexchangeintelligibleinformationabouttheenvironmentordirections.Itissimpleandplacesavery

smallcomputationalburdenoneachrobot.

1.3ShinerbotsAn85-robotswarmplatformisdesignedandbuilt.Theseareground-basedrobotsthatmovevia

vibration.Eachrobothasanambientlightsensingphotodiodeandneighborsensingcapabilityusing

infraredsignals.AnRGBLEDmeantasageneralpurposeindicatorisaddedaswell.Therobotisonly

40.6mmindiametersoastorequirelessworkspaceforthewhole85-robotswarm.Scalabilityissues

arealsoconsideredinthedesign,whichallowsformasssimultaneouschargingoftherobots,and

relayedsystemmessagestoremotelyturnonandofftherobots.

1.4SummaryofContributionsandThesisOutlineThefollowingarethecontributionsofthisthesis:

• Weproposeasimple,distributed,andcompellingalgorithminspiredbythegoldenshinerfish.

Thealgorithmrequiresonlyminimalsensing,nocommunicationsbetweenrobots,andlow

computationalcomplexity.

• Wedesignedandbuiltan85-robotswarmcalledShinerbots.EachrobotcostsUSD$20,withthe

sizeof40.6mm.Eachrobotisabletosensebothdistanceandorientationofitsneighborsinan

inexpensiveway.Scalabilityfeaturesareimplementedwithaswarmmessagingsystem,aswell

asachargingplateforsimultaneousmasscharging.

• WeconductedexperimentstoverifythattheShinerbotsareabletonavigatetoatargetregion

withminimalsensingandcontrolusingthealgorithmproposed.

Thisthesiswillprovideaquickoverviewoncurrentswarmrobotsinchapter2,andthenelaborateon

thegoldenshinerswarmalgorithminchapter3.ThehardwareandfirmwaredesignoftheShinerbots

3

willbedescribedinchapter4.Theexperimentalresultswillbepresentedinchapter5.Chapter6

concludesthethesisandoutlinesfuturework.

4

2.ExistingSwarmRoboticPlatformsThereareexistingswarmrobotplatformssuchasMarXbot,eSwarbot,Pi-swarm,e-Puck,Khepera,

Jasmine,Kilobot,andDroplet.TheirsizesandcostsaresummarizedinTable1andphotosareinfigures

1-8.

Table1SizeandCostofExistingSwarmRoboticPlatformsRobot Size Cost(USD$)

MarXbot[4] 17cmdiameter eSwarmbot[5] 12.6cmdiameter Pi-swarm[12] 9cmdiameter Partcostof$100e-Puck[1],[25] 7cmdiameter Khepera[18] 7cmdiameter Retailpriceof$272Jasmine[13] 2.7cmcube Partcostof$112Kilobot[21] 33mmdiameter Retailpriceof$113Droplet[8] Partcostof$50withoutshell

Figure1:MarXbot

Figure2:eSwarmbot

Figure3:Pi-Swarm

5

Figure4:e-Puck

Figure5:Khepera

Figure6:Jasmine

Figure7:Kilobot

Figure8:Droplet

TheMarXbot[4]isasophisticatedtrackandwheeledrobotconsistingof6DIMU,multipleinfrared

sensors,Lidar,2cameras,Bluetooth,Wifi,andanARMbasedprocessorrunningLinux.TheeSwarmbot

[5]isawheeledrobotwithquadratureencodersandultrasonicrangefinder,runningonanArduino

microcontroller.ThePi-swarm[12]isanotherwheeledrobotrunningonARMCortexM3based

microcontroller.IthasmultipleLEDs,multipleinfraredsensors,9DIMU,LCDdisplay,switches,anda

radiofrequency(RF)transceiver.E-puck[1],[25]has8infraredsensors,2steppermotorsforthe

wheels,acolorcamera,aspeakerand3microphones.Khepera[18]isawheeledrobotwith8infrared

sensors.BothKilobot[21]andDroplet[8]aresmallerrobotsthatmoveusingvibrationmotors,andcost

lesscomparedtotheotherlargerwheeledrobots.TheKilobothas1infraredtransmitterand1infrared

receivertoprovidedistancemeasurementtoneighborswithoutanybearing.TheDroplethas6pairsof

infraredreceiversandtransmittersspreadarounditsperimetertosensedistanceandbearingto

neighbors.

Thefirstfewrobotsdescribedarebig,basedonwheels,andmostofthemhavesophisticatedsensors

andprocessingpower,whichtendtobeexpensive.Whileworkingonswarmrobots,largerrobotsize

6

willleadtoneedinganevenlargerworkspacefortherobots.Asfortheswarmalgorithmthatwillbe

presentedinthenextchapter,sophisticatedsensorsandprocessorsarenotrequired.Thoseexpensive

robotswithadvancedfeatureswillonlydrivethetotalcostofthewholeswarmresearchhigh.The

Kilobotisaninnovativedesignwhichusesvibrationtomove,andisonly33mmindiameter.Thisallows

foramanageableworkspacesizetooperatethewholeswarm.TheKilobotcanonlysensethedistance

toneighbors,butnottheirorientation.Thismayworkwellforsomeotherswarmnavigationalgorithms,

butnotthegoldenshineralgorithmtobepresentedinthisthesis.Chapter4willdetailthedesignof

ShinerbotsbuiltontopoftheideaofKilobots,allowingbothdistanceandorientationofneighborstobe

sensed,plusotherminorimprovements.

7

3.ShinerbotSwarmNavigationAlgorithmandSimulationThischapterdescribesasimplemathematicalmodelwhichwasinspiredbythebehaviorofthegolden

shinerfishes,andproceedstodemonstrateitinsimulation.

3.1ModelingoftheGoldenShinersEachrobotismodeledasatwo-dimensionalmobileautonomousagent,wherex

i(t) ÎÂ2isthelocation

ofagentiinthetwo-dimensionalplaneattimet.Wemodelthemovementoftherobotbytwofactors.

Thefirstisanenvironmentfactorenv()whichgivesapositivescalarvalue.Thismodulatestherobot’s

speedinrelationtothetypeofenvironmentstimulusthatwewanttheswarmrobotstonavigateto.

Thesecondfactorisasocialfactorsoc().Thisfunctiongivesa2Dvectorofthedirectioninwhichthe

robotsgo.Inthismodel,wewanttherobotstogotowardstheirneighbors.Thus,thesocialfactor

dependsonthelocationofrobotsxj(t) Î N

i(t),whereN

i(t)definesthesetofrobotswithinthe

neighborhoodattimet.Inthiscase,robotswithintheneighborhoodcorrespondtorobotswhose

locationsarewithinthesensingrangeofroboti.Thegeneralizedmodelisasfollows:

𝑥" 𝑡 = 𝑒𝑛𝑣 𝑥" 𝑡 ∙ 𝑠𝑜𝑐(𝑥" 𝑡 , 𝑥/ 𝑡 , 𝑗 ∈ 𝒩" 𝑡 )

Fromthisequation,weseethatthedecision-makingofeachrobotisbrokenupintotwosimplerules

thatobtaininputsfromanenvironmentsensor,aswellasaneighborsensor.Theenvironmentfactor

enablesconvergencetoanoptimalpoint,whilethesocialfactorenablescollectiveintelligenceand

expeditingofconvergence.

Developingthemodelfurthertorepresentthegoldenshiners,wetaketheenvironmentstimulusas

lightintensity.Recallfromsection1.1thatthegoldenshinerfisheslovestobeinthedark.Theyswim

slowlyinthedark,andfasterinbrighterplaces.Letf(x)representthelightintensityoflocationx,and

letg()representthelightsensitivityoftherobot.Thus,theenvironmentfactorenv(xi(t))becomes

g(f(xi(t))).Thisfunctionmodulatestherobot’sspeedaccordingtolightintensity.Thiscorrespondsto

theobservationsmadebyBerdahletal.[3].Here,weassumethateachrobothasthesamesensitivityto

lightg(),whereg()isastrictlyincreasing,boundedfunctionsuchthatg(0)=0.

Next,welookatthesocialfactor.Thegoldenshinersalwaysschooltogether.Thus,wemodelthesocial

factorasadesiretomovetowardsitsneighbors.Mathematically,werepresentthevectoroftherobot’s

motiontopointtowardsthecentroidofitsneighbors(meanlocation)withintherobot’ssensingrange.

8

Inthisapplication,thereisnolocalizationsystem.Norobotknowswhereitisinaglobalcoordinate

system,norcanitcommunicateitslocationtoneighbors.Thevectorthatrepresentsthedirection

towardsthecentroidissolelybasedontherelativepositionofeachneighbortotherobotitself,where

therelativepositionisdefinedasxj(t) - x

i(t).

Puttingittogether,thegoldenshinerswarmalgorithmisasfollows:

𝑥" 𝑡 = 𝑔 𝑓 𝑥" 𝑡 (𝑥/ 𝑡 −/∈𝒩7 8

𝑥" 𝑡 ), 𝑖 ∈ [𝑛] (3.1)

where[n]denotestheset{1, 2, …, n}ofallrobots.

3.2ModelingwithAddedRandomnessInourexperimentswiththeShinerbots,therearetwoscenarioswheretherobotsdonotallconvergeto

thedarkregion.ThefirstscenarioiswheresomeShinerbotsareisolated.Thisisthecasewhenasingle

Shinerbotdoesnothaveanyneighborswithinitssensingrange.Accordingtothesocialfactorasdefined

inequation3.1,theisolatedrobotdoesnotmoveuntilanotherrobotcomesintoitsneighborhood.

Therearealgorithmspresentedin[19]and[15]thatprecludetheisolatedagentsproblemby

maintainingconnectivitytoneighbors;however,thesealgorithmsincreasecomputationalcomplexity.

Thesecondscenarioiswhereasub-groupofrobotsremainstuckinaregionforalongtime.This

happenswhenthenetgradientoflightintensityinthelocalneighborhoodiszero.Inthiscase,allrobots

willwanttomovetowardsthesamecentroidoverandoveragain,resultinginazero-netmovementin

thatwholesub-group.

Toovercomethesetwoscenarios,astochastictermisaddedtoequation3.1asfollows:

𝑥" 𝑡 = 𝑔 𝑓 𝑥" 𝑡 ( (𝑥/ 𝑡 −/∈𝒩7 8

𝑥" 𝑡 ) + 𝑍"(𝑡)), 𝑖 ∈ [𝑛]

whereZi(t)isanadditivetwo-dimensionalwhiteGaussiannoise.Thisaddedrandomnoiseremovesthe

undesiredequilibria.Itpreventsisolatedrobotsfromstayingstill,increasingitschancesofjoiningasub-

groupofrobots.Theaddedrandommovementalsopreventssub-groupsfromgettingstuckina

neighborhoodwithzeronetgradient.

9

3.3SimulationoftheModelAsimulationwasdonetoillustratethebehaviorofthewholeswarmaccordingtothealgorithmas

describedabove.Infigure9,theredcirclerepresentsthepointofzerolightintensity,whichdenotesthe

desireddestinationfortherobots.Therobotsarerandomlyplacedtotherightofthedestination

initially(timet=0).Thegreencirclerepresentshowfarthewholeswarmofrobotsistoitsdestination.

Thecenterofthegreencircleisthelocationoftheredcircle,withtheradiuscorrespondingtothe

distancefromthecentroidofthewholeswarmtothedestination.Att=15s,therobotsareobservedto

havesplitintosub-groups.Thismakessenseasrobotswillonlytrytomovetothecentroidoftheirlocal

neighborhood,withoutknowledgeoftheglobalcentroid.Att=80s,thesub-groupshavemovedcloser

towardsthedestination,joiningothersub-groupsintoonebiggroup.Finally,evenisolatedrobots

managedtojointhegroupatt=180s.Thebehavioratt>30sismadepossibleduetotheadded

randomness.Att=296s,thegreencirclefinallyclosedandallrobotshavearrivedatthedestination.

Figure9:SimulationResults

10

4.DesignandImplementationoftheShinerbotPlatformAroboticswarmsystemisdesignedtoperformtheswarmalgorithmasdescribedintheabovesection.

Eachrobotneedstofulfillsimplerequirementsforthisalgorithm,namelymobility,neighborsensing,

andlightsensing.Neighborsensingrequiresthedistancetoandorientationofeachneighborina

limitedsensingradius.Norobotneedsenseotherrobotsfaraway.Lightsensingonlyrequiresthe

measurementoflightintensityofitscurrentlocation,andnotlightgradientsofitssurroundings.

Eighty-fiverobotsarebuilttoexperimentwiththisswarmalgorithm.Ontopoftheswarmalgorithm

requirements,additionalscalabilityrequirementswillbeneededtohelpmanagethe85-robotswarm.

Costperrobotisafactortobereducedasitwillimpacttotalcostofthesystemwhenitisscaledupto

100robots.Sizeofasinglerobotmattersaswell,sinceitimpactsthespaceneededtorunexperiments

onan85-robotswarm.Otherfactorsincludemanagementprocedureslikecharging,andcommandingof

therobots.Theserequirementswillbeaddressedlaterinthechapter.

Figure10isablockdiagramofthevarioussub-modulesinasingleShinerbot.Themicrocontrollerthat

controlstherobotisaMSP430G2553fromTexasInstruments.Eachoftheothersub-moduleswillbe

explainedinthefollowingsectionsofthischapter.

Figure10:HardwareBlockDiagramofaSingleShinerbot

4.1MobilityAcommonmeansofmobilityistousemotorsandwheels.Whileitispossibletomakecustomminiature

motorsandwheels,theyareprohibitiveincostwhenmakingonly100robots.Off-the-shelfmotorsand

11

wheelstendtobebig(>3cmdiameter)andcostatleast$5.Thatforcesthesizeoftherobottobeat

least10cmindiameter.Tobringthesizeandcostdown,Shinerbotsweredesignedusinglegs,and

movebyvibration[26].Therearethreelegs,whicharebasicallyrigidlongpins.Vibrationisgenerated

bytwoeccentricrotatingmass(ERM)motorsplacedoneachsideoftherobot.Thesemotorsare

commoninmanyelectronicdeviceslikecellphones,makingthemcheaplyavailableinbulk.

AnH-bridgecircuitisusedasanoutputdrivertoeachmotor.Pulsewidthmodulation(PWM)isusedto

varythepowersuppliedtothemotor.Forwardsandbackwardsmovementaremadebydrivingboth

motorsinthesamedirection.Therobotrotatestotheleftorrightwhenbothmotorsaredrivenin

opposingdirections.

Themotionoftherobotcanonlybecontrolledconsistentlywithaspecificamountofpowersuppliedto

themotors.Thisisbecausetherotationoftheeccentricmassinthemotorhastobematchedtothe

frequencyatwhichtherobotvibratesverticallytoallowforthecorrectinteractionofforcesbythe

eccentricmass,andfrictionbetweenthelegsandthefloor.Asaresult,thespeedoftherobot’s

movementisfixed.Dutycyclingisdonetovarythespeedsoftherobottoperformtheswarmalgorithm.

4.2NeighborSensingTheShinerbotsusesinfrared(IR)tosenseitsneighbors.Eachrobottransmitsinfraredsignalfromthe

bottom-middledownintothegroundasshowninfigure11.Theinfraredthenbouncesofftheground

towardsanyneighboringrobotsinalldirections.ThisisduetothebeampatternoftheIRtransmitter.A

neighboringrobot,withreceiversplacedunderneath,receivestheIRsignalandisabletoestimate

distancebasedonareceivedsignalstrengthindicator(RSSI).Toestimatetheorientationofthe

neighbor,eachrobothasthreereceiversplaced120degreesapart,onitsperimeterasshowninfigure

12.Thisallowsthreedistancestobeobtained,whicharethenusedtocomputetheorientation.

Figure11:GeometryoftheIRSignalBetweenTwoNeighboringShinerbots

12

Figure12:Placementof3Infrared(IR)Receiversand1IRTranmitterontheUndersideoftheShinerbot

Figure13:IRBeamPattern(Semiconductors,2011)[23]

Afactorof1/risusedtoestimatethesignalstrengthatdistancerbetweenneighborsduetothespread

ofthesignalinthe2Dplane.Afactorduetotheverticaldimensionisconsideredaswell.Bothreceivers

andtransmittershavethesamebeampatternasshowninfigure13.Acosinefunctionisusedtomodel

thesignalstrengthexitingthetransmitter,aswellasenteringthereceiver.Thus,cosinesquared

becomesthefactorduetotheverticaldimension.Anadditionfactorklumpsvariousfactorssuchasthe

13

transmitpower,receivergain,andanalog-to-digitalconverter(ADC)quantizationrange.TheRSSIisthen

modeledwiththefollowingequation:

𝑅𝑆𝑆𝐼 =𝑘𝑟 ∙ cos 𝜃 I =

𝑘𝑟 ∙

4ℎI

4ℎI + 𝑟I

whereqistheanglebetweenthesignalpathandthevertical,andhistheheightoftheShinerbot.The

theoreticalRSSIiscomparedagainstthemeasuredRSSIacrossdistances(figure14)andisfoundtobe

inaccurateduetomanufacturingvariances,aswellasmultipatheffectswhenrobotsareveryclose

together,whichwasnotmodeled.

Figure14:MeasuredandTheoreticalRSSIagainstDistance

Tosolvethisproblem,acalibration-basedmethodisusedinsteadtoestimateamoreaccuratedistance

fromRSSI.Acalibrationsequenceisrunafterarobothasfinishedassembly.Thisconsistsofmovingthe

robotfromatransmittingrobotinstepsof5mmforallthreeoftheIRreceivers.Linearinterpolationis

thenusedtocomputethedistanceforRSSIvaluesinstepsof64ADCunits.Thedistancevaluesarethen

storedasalookuptableinflashmemory.Figure15showsthemeasuredRSSIvaluesduringthe

calibrationsequence,comparedtotheinterpolatedRSSIvaluesofestimateddistances.Thereasonfor

storingdistancesin64ADCunitsisforefficientlookupateachinstanceofestimatingneighbordistance.

14

Bitshiftingof6bitsandmaskingisdonetoobtainthetwonearestdistancesinthetable,andalinear

interpolationisusedtoestimatetheactualdistanceusingthelowest6bitsoftheADCvalue.

Figure15:DistanceEstimationfromRSSIMeasurementsUsingInterpolation

Oncethreedistancesareobtainedfromthethreereceivers,trilaterationisperformedtocomputethe

relativepositionoftheneighboringtransmittingrobot.Thisisgivenbytheequationsbelow:

𝑥 = 𝑟MI − 𝑟NI

2𝑙Q

𝑦 = 𝑟SI − 𝑟TI

2(𝑙U + 𝑙I)+ 𝑙U − 𝑙I2

𝑟TI = 𝑟MI + 𝑟NI −

𝑙QI2

2

wherevariablesaredefinedasinfigure16.

15

Figure16:CoordinatesofNeighboringRobotUsing3Distances

Forthismethodofneighborpositionestimationtoworkwell,onlyonerobotcantransmitatatimeso

asnottointerferewiththeRSSImeasurements.Thus,asimplecommunicationprotocolbasedon

carriersensemultipleaccesswithcollisionavoidance(CSMA-CA)isimplementedtoensurethat.

4.3CommunicationsAlthoughthegoldenshinerfishswarmalgorithmdoesnotrequirerobotstocommunicate,asimple

communicationssystemisimplementedtoprovideagenericswarmroboticsresearchplatformfor

futurealgorithms.Inaddition,thecommunicationssystemallowsforsystemmessagestocontrolthe

entireswarm,andsolvestheproblemofhavingmultiplerobotstransmittingatthesametime,

interferingwiththeneighbordistanceestimations.

Thephysicallayerofthiscommunicationsystemusestheinfrareddataassociation(IrDA)standard[10].

Eachrobottransmitsafixedlengthpacketatregularintervals.ThepacketconsistsofthedestinationID,

RSSIbyte,sourceID,5databytes,andaCRC.AsimplifiedCSMA-CAalgorithmisusedtoenablemultiple

robotstotransmitinthesamearea.ThissimplifiedversionofCSMA-CAisadaptedfromwirelessLANs

16

[10].Cleartosend(CTS)andreadytosend(RTS)arenotimplementedsinceallmessagesactlikea

regularbroadcastforrobotstoestimatedistance.

Eachrobottransmitsapacketatregularintervalsofabout200ms.Thisallowsallitsneighborsinthe

regiontodetectitspresenceandcomputeitsrelativeposition.TheRSSIbyteinthepacketstructureis

basicallyafixedvalueof0x55.Thisensuresanalternatingsequenceof1sand0stobereceived.RSSIis

thencomputedbytakingthedifferenceofADCvaluesfromthepositiveandnegativepeaksofthe

pulses.TheCRCbytedetectsifthepacketreceivedisvalid.Ifthepacketwasinvalid,thedistance

calculationofthatpacketwouldbeignored.

Althoughagenericcommunicationsprotocolisimplemented,thedatabytesofthepacketareunusedin

theimplementationofthegoldenshinerfishalgorithm.Thisalgorithmdoesnotneedintelligible

informationtobecommunicatedamongrobots.Itbasicallyactsonlyasapingtoenabledistance

estimationsinthiscase.

4.4ScalableChargingChargingeveryrobotwithapowercablepluggedintoeachrobotistediousandtimeconsuming.Thisis

notscalableastheswarmgetslarger.Achargingpadisdesignedsuchthatrobotscanbecharged

simultaneouslybyplacingupto49robotsonthepad.Eachrobotchargesitselfviathelegs.Thelegsare

connectedtothechargemanagementICviaafullbridgerectifier.Aslongas6Visappliedacrossanyof

thetwolegs,therobotwillbeabletocharge.ThechargingpadisacoppercladFR4withalternating

stripsofcopperasshowninfigure17.Thewidthandgapofthestripsaresuchthatarobotplacedat

randomwillalwaysbeguaranteedtohavetwolegsonanalternatingstrip.6voltsisthenappliedtothe

alternatingstripsofcopper.Thecopperistincoatedtopreventoxidization.Uponplacingtherobotto

charge,thechargemanagementICstatuswouldsignalthemicrocontrollertobringtherobottosleep.

Thispreventstherobotfromunwantedvibrations,whichwillcauseunreliablecharging.Asmallred

light-emittingdiode(LED)turnsonwhenitischarging.

17

Figure17:ShinerbotsChargingSystem

4.5OtherHardwareSubmodulesAgeneralpurposeRGBLEDisincludedinthedesign.ItisdrivenbyPWMsignalstoeachcolorchannel.

Thisismeanttobeageneral-purposeindicator,andcanbeprogrammedtodisplayanycoloror

intensityaccordingtotheapplication,orexperimentbeingrun.Lightsensingwasmentionedasabasic

requirementforthegoldenshinerfishalgorithm.Thisisachievedusingaphotodiodeforambientlight.

4.6ThePhysicalPrintedCircuitBoardThemechanicalbodyoftherobotisbasicallytheprintedcircuitboard(PCB)itself.Itisacircularboard,

with40.6mmdiameter,designedinKiCad.ThisPCBisafour-layerdesignwiththetoplayerfordigital

signals(figure18),layer2fordigitalground,layer3foranalogground,andthebottomlayerforanalog

signals(figure19).Theanaloganddigitalsignalswereseparatedinsuchawaybecausetheanalogtraces

havetospantheentireboard.ThisisduetotheIRreceiversneedingtobe120degreesapart,nearthe

perimeteroftheboard.Thegroundplanesinthemiddlelayersimprovesignalintegritybyshielding

signalsfromcrosstalkbetweenthedigitalandanalogsignals.Theanaloganddigitalgroundsare

connectedatonepointnearthegroundofthemicrocontrollerADC.

18

Figure18:ShinerbotPCBTop

Figure19:ShinerbotPCBBottom

4.7FirmwareThefirmwareiswritteninalayeredmannerasshowninfigure20.MSP430atthelowestlevelis

basicallyaheaderfileprovidinglow-levelaccesstoregistersinthemicrocontroller.TheI/ODriverslayer

providesanabstractiontolowleveltasks.TheShinerbotSystemlayerhandlesthemainoperationsof

therobot.TheApplicationlayerconsistsofcodethatgovernsthehigh-levelbehavioroftherobot.

Figure20:ShinerbotFirmwareBlockDiagram

4.7.1I/ODriversLayerThislayerprovideslow-levelinterfacestothehardwareoftherobot.ADCdriverprovidesfunctionsto

controltheADCperipheralonthemicrocontroller.Theseincludeinitialization,triggeringofsingleor

multi-channelconversions,andcall-backsforcompletion.Flashprovidesfunctionstoeraseandwriteto

specificbanksofflashmemory.Commprovidesfunctionstostartapackettransmission,andtoread

packetsthathavebeenreceived.Commimplementsabuffertostoreincomingpacketstoberead.

MotorprovidesanabstractiontothePWMperipheralsandcontrolsoutputpowertoeachmotor.It

19

providesfunctionstomoveforward,backward,left,andright.RGBLeddrivestheRGBLEDaccordingto

thevaluesfedtoit,inrangesof0–255foreachcolorchannel.Timerprovidesa1mstickfortheentire

system.

4.7.2ShinerbotSystemLayerThecodeinthislayerdoesmostoftheoperationsrelatedtomakingtheShinerbotwork.Theyprovidea

setofAPIsfortheApplicationlayertocommandtheShinerbot’shigh-levelbehavior.TheLightmoduleis

basicallyanabstractiontotheADCdrivertoreadvaluesfromthephotodiodeADCchannel.TheRSSI

moduleisinchargeofestimatinganeighbor’srelativeposition.IttakesADCvaluesfromthethreeIR

channels,computestheRSSI,estimatesdistances,andcomputestheposition.SysMsgisamodulethat

interpretsincomingsystemmessages,relaysthemessage,andperformsthesystemcommand.Thiswill

beelaboratedinsection4.8.Schedulerisasimplepriority-basedCPUscheduler.IntheShinerbot,the

RSSImodulerunsasahighprioritytask,theapplicationlayerrunsasalowerprioritytask,andanother

idletaskthatbringstheCPUtosleep.ThePowermoduleisinchargeofbringingtherobottosleepand

wakingitup.Moredetailsonpowerstageswillbeelaboratedinsection4.9.Mathisalightweightmath

librarywhichincludesarandomnumbergenerator,andafastintegersquareroot,optimizedforthe

rangeofvaluesthatarebeingusedinShinerbot.

Insomecases,differentlibrariesintheSystemandDriverlayersworktogetherbehindthescenesto

maketheShinerbotwork,withouttheprogramintheApplicationlayerneedingtodoanything.For

example,uponreceptionoftheDestinationByteoftheincomingpacket,theCommsmoduletriggers

theRSSImoduletostartADCreadsoftheIRchannels.TheschedulerthenstartstheRSSImoduleona

highprioritythreadtocomputethepositionofthetransmittingneighbor.Bythetimethewholepacket

isreceived,thepositioninformationisready.WhentheCRCcheckisgood,boththepacketdataandthe

positioninformationarepushedintothereceivemessagequeue,readyfortheuserprogramtoretrieve.

Allthishappensbehindthescenesoftheuserprogram,allowingcodeintheuserprogramtofocusonly

onthenavigationalgorithm.

4.7.3ApplicationLayerThislayeriswherethehigh-levelbehavioroftherobotisprogrammed.TheUserProgramiswherethe

navigationalgorithmisimplemented.ItonlyhastocallAPIsfromtheSystemlayertoreadinputs,make

adecision,andcommandtherobottomoveinthedesireddirection.Testisaroutinethatisrunafter

therobotissolderedandassembled.ItcallstheSystemlayerAPIsinaspecificsequence,testingall

aspectsoftherobotsuchasmovement,RGBLED,ambientlightsensing,IRtransmissionandreception.

20

Aftertestingisdone,theprogramRSSIcalibrationisrun.ThisprogrambasicallyrunsasequenceofIR

receptionswiththerobotmovedoveradistance.ItthenstoresRSSItodistancecalibrationdatatoflash

storage.TherobotIDisflashedinatthisstagetoo.Duetomemoryconstraints,onlyoneofthethree

programsintheApplicationlayerisflashedintothemicrocontrolleratanyonetime.Thisisokayasthe

testandthecalibrationroutineonlyneedstoberunonceaftertherobotisfirstassembled.

4.8SystemMessagesSystemmessagesareameanstocontroltheswarminascalablemanner.Havinganon-offswitchon

eachrobotwouldbeimpracticalwhenoperatingahundred-robotswarm.Systemmessagesarepackets

thatcontainasystemcommand.Whenarobotreceivesacommand,itrelaysthesystemmessage3

times,beforetakingactiontothatspecificcommand.Duetotherelayingofmessages,astrong

overheadIRtransmitterisnotrequiredtobroadcastthecommandtoallrobots.Specialrobotsare

programmedwiththesolepurposeoftransmittingsystemmessages.Theswarmoperatorwillonlyneed

tobringacommandrobotneartheswarm,andallrobotsintheswarmwillreceivethesamemessagein

asplitsecond.Thisisillustratedinfigure21.Thereare4systemmessages,namelyReset,Sleep,Wake,

andRun.Resetbringsthemicrocontrollertoafullsoftwarereset.Sleepbringstherobotintodeep

sleep,practicallyturningofftherobot.Wakewakestherobotintoalightsleepstagewhereitsreadyto

resumetheuserprogram.Runresumestheuserprogram.

Figure21:RelayingofSystemMessage

21

4.9PowerStatesTherearefourpowerstatesinthesystem.State0iswhereeverypartoftheShinerbotisrunning,

includingtheuserprogramontheCPU.State1iswheretheCPUsleeps,whilealltheperipheralsare

running.Thishappenswhentheuserprogramcallsthedelayfunction.Itputstheuserthreadtosleep,

runningtheidlethread,whichthenbringstheCPUtosleep.Atthespecifiednumberofmilliseconds,the

interrupthandlerwakestheuserthreadup,whichbringstheCPUbackuptorun.

Powerstate2isinasemi-sleepstate.InadditiontotheCPUsleepinstate1,peripheralslikethemotors

andLEDsareturnedoff.Onlytheanalogcircuitsareleftontoenablereceptionofmessages.Power

state3bringstherobotintodeepsleep.Inadditiontoturningoffthecomponentsinstates1and2,it

turnsofftheanalogcircuits,mainclocks,andphaselockloops(PLLs).Thetimerperipheralnowrunson

alowfrequencyauxiliaryclock.

Systemmessagestelltherobottotransitionbetweenpowerstates.TheSleepcommandbringsthe

robottostate2,relaysthemessagethreetimes,thengoestostate3.Therobotwillthengobackto

state2every30secondsfor400msbeforegoingbacktostate3.Thisistoallowtimetolistentoany

possibleWakesystemmessages.ToWaketherobotsup,theWakesystemmessagehastobe

broadcastedcontinuouslyformorethan30secondstoensurethattherobotshavereceivedthat

message.Uponreception,therobotstaysinstate2.

Therobotsdonotinstantlywaketofullpowerinstate0sincetheyarenotsyncedinthatdeepsleep

cycle.Wakingtofullpowerinstantlywouldnotcausethewholeswarmtowakeupatthesametime.

Thus,theWakecommandonlybringstherobottostate2,inwhichtheystandbyfortheRuncommand,

astheyarenowcontinuouslywaitingformessages.TheRuncommandthenbringsthemoutofstate2

backtostate0.Theblockdiagraminfigure22illustratesthestatetransitions.

22

Figure22:PowerStateTransitionsinResponsetoSystemMessages

23

5.ExperimentalResultsTheexperimentsareconductedonaworkspacemadeofawhitewooden4ftx4ftsquare.Theboard

wasplacedalmostneartheground,andalevelwasusedtoensuretheboardwashorizontal.Sincethe

robotsmovebyvibration,aslighttilttotheworkspacecanbiastherobot’smotion.Adigitalprojectoris

placedabout6feetabovetheworkspacetoprojectthelightpatterntosimulatethedarkandbright

regions.Weuseacirculargradientlightpatterntoindicatethedesiredregionwherewewantthe

Shinerbotstoendupin.

Inpreviouschapters,wedescribedthegoldenshinersaswantingtogotowardsthedarkarea.Inour

experiments,thiscreatedascenariowheretheswarmhastwodestinations:thedarkcircularspotthat

weareprojecting,aswellastheborderoftheprojectionwhichhappenstobeinterpretedasadarkarea

bytheShinerbots.Theresultsenduphavingasub-groupofrobotsatthedesiredcircularregion,and

anothersub-groupofrobotsstayingattheedgeoftheprojection.Forthepurposesofthisthesis,we

wantedtoshowthatthealgorithmconvergestothesameregion.Thus,toremovetheconfusiononthe

Shinerbots,thefollowingexperimentalresultsarebasedonhavingabrightregionasthedesired

location,usingabrightcenteredcirculargradientlightpattern.Therobotswillnolongertreatthe

projectionborderasanunintendeddesireddestination

5.1IntermediateClusteringBehavioroftheShinerbotsAnintermediateclusteringbehaviorisobservedinourexperiments.Inourexperiments,allrobot

locationsareinitializedrandomly,andevenlyspreadacrosstheworkspace.Therobotssometimes

clusterintosub-groupsuponthestartoftheexperiments.Astheclustersslowlymovetowardsthe

desiredregion,theybegintoconvergeintoabiggergrouplateron,andfinallytoonewholeswarmatits

destination.Figure23illustratessuchascenario.Inthisparticularexperiment,theswarmisobservedto

splitintotwobigsub-groups,afewpairsofrobots,andsomeindividualrobotsat9.5minutesafter

initialization.Theycontinuetoevolveintothreesub-groupsattimet=36minutes.Finally,thewhole

swarmconvergesattimet=48minutes.

24

Figure23:ClusteringBehaviorofShinerbotsfromInitializationtoConvergence

5.2ExperimentwithCenteredDestinationRegionThisnextexperimentshowninfigure24showstheworkspacehavingitsdesiredbrightregionatthe

middleoftheworkspace.Thisexperimentmainlydemonstratesthesocialfactorofthegoldenshiners

algorithmatwork,wheretherobotscollectivelygathertogethertomimictheschoolingbehaviorofthe

fishes.Thereisstillsomeclusteringbehavioroftheswarminthefirst12minutes.Theswarmeventually

convergedinthemiddletothedesiredregionafter25minutes.

25

Figure24:ExperimentwithLightSourceIntheMiddle

5.3ExperimentwithOff-centeredDestinationRegionThenextexperimentinfigure25demonstratestheswarmmovingintothedesiredregion.Thebright

areaisplacedtotherightoftheworkspacethistime,whiletherobotsweredistributedtowardstheleft

oftheworkspace.Thisdemonstratestheenvironmentalfactorofthealgorithmatwork.Att=3

minutes,clusteringbehaviorcanbeobservedagain.Fromt=4.5minutesto14minutes,theclusters

thatareclosetothebrightlightsourceremainintheregionandmovealittleclosertothecenterofthe

lightpattern.Theclustersthatareinthedarkstillmovingaboutrandomly,whilestayingasasub-group.

Fromt=20minutesonwards,wecanseethatthesub-groupsbegintomergetoformabiggergroup

andfinallyconvergetothedesiredregionatt=42minutes.

26

Figure25:ExperiementwithLightSourceOff-Centered

27

6.Conclusion

6.1SummaryofAchievementsThisthesispresentedaswarmnavigationalgorithmthatmimicsthebehaviorofthegoldenshinerfish.

Thealgorithmisbasedonsimplerulesandrequiresminimalsensorsandprocessingpowerofeach

individualrobot.Agroundbasedswarmroboticsystemwasdesignedandbuiltin-housetoexperiment

withalgorithm.Eighty-fiverobotswerebuilt,costingUSD$20each,withasizeof40.6mmdiameter.The

robotshavebasicsensing,processing,andmobilityrequirementsfortheGoldenShinersalgorithm.In

addition,amessagingsystemisdesignedintothesystemtobeagenericswarmroboticsplatformfor

futurealgorithms.Inaddition,scalabilityfeatureswereaddedtohelpmanageandchargeaswarmof

robots.Theseareimplementedasachargingplateaswellassystemcommandmessages.Our

experimentsdemonstratedthattheShinerbotscollectivelynavigatetoadesiredregionwiththe

proposedalgorithm.Theworkinthisthesiswaspartiallypresentedin[11],and[16].

6.2FutureWorkBoththeswarmalgorithmandtherobotshavepossibleimprovementsforfuturework.Thecurrent

mathematicalmodelofthealgorithmmodelsasinglerobotasapointmasswhichcanmovefreelyina

two-dimensionalplane.Morecomplexmodelssuchasanonholonomic[6]cartcanbeconsideredin

futurework.Thecurrentalgorithmignorescollisions.Therobotswillstilltrytomoveintothecentroid

oftheneighborhoodeventhoughthereisnolongeranyspace.Thisisnotadestructivebehaviortothe

Shinerbotsplatform,butcollisionavoidancecanbeincorporatedintothealgorithmtoenable

applicationinbiggerroboticsystemsandevenunmannedaerialvehicles(UAVs).

ThereareopportunitiesforfurtherworkontheShinerbotsswarmplatformaswell.First,amore

automatedwayofcalibratingtheinfraredsensorscanbedesignedinsteadofthemanualdraggingof

individualrobotsoveradistancethatisbeingdonenow.Second,motioncontroloftheShinerbotscan

beimproved.Acalibrationstepcanbeaddedtoensureeachrobotmovesaccuratelyinthedesired

direction.Linearresonanceactuators(LRA)vibrationmotorscanbeusedinsteadofeccentricrotation

mass(ERM)toimproveefficiency.Amassprogramminginterfacewithbootloaderoneachrobotshould

bedesignedtoimprovescalabilityintryingoutdifferentexperimentsandre-flashingfirmware.

Neighborsensinghardwarehasroomforimprovementaswell.Increasingthesensingradiusofthe

robotswouldhelpspeeduptheconvergenceofthealgorithm.

28

Thereasonsforgoingwiththevibrationmethodofmobilityaresizeandcost,whichareimportantto

scalabilityinalargeswarm.Thedisadvantageofthismodeofmobilityisthatitisrelativelyslow.

Experimentsoftenhavetobeconductedoveratleastanhour.Ifminiatureandcheapcommercial-off-

the-shelf(COTS)wheeledpartsareavailable,thatwouldhelpinspeedingupexperiments.

29

References

[1] Alkilabi,M.H.M.,Narayan,A.,andTuci,E.(2017).Cooperativeobjecttransportwithaswarmofe-puckrobots:robustnessandscalabilityofevolvedcollectivestrategies.SwarmIntelligence.https://doi.org/10.1007/s11721-017-0135-8.

[2] Balch,T.,andArkin,R.C.(1998).Behavior-basedformationcontrolformulti-robotteams.IEEETrans.Robot.Autom.,14(6):926–939.

[3] Berdahl,A.,Torney,C.J.,Ioannou,C.C.,Faria,J.J.,andCouzin,I.D.(2013).Emergentsensingofcomplexenvironmentsbymobileanimalgroups.Science,339(6119):574–576.

[4] Bonani,M.,Longchamp,V.,Magnenat,S.,Retornaz,P.,Burnier,D.,Roulet,G.,Vaussard,F.,Bleuler,H.,andMondada,F.(2010).TheMarXbot,aminiaturemobilerobotopeningnewperspectivesforthecollective-roboticresearch.InProceedingsof2010IEEE/RSJInternationalConferenceonIntelligentRobotsandSystems(IROS-2010),pages4187–4193.IEEE.

[5] Couceiro,M.S.,Figueiredo,C.M.,Luz,J.M.A.,Ferreira,N.M.,andRocha,R.P.(2011).Alow-costeducationalplatformforswarmrobotics.InternationalJournalofRobots,EducationandArt,2(1):1–15.

[6] Desai,J.P.,Ostrowski,J.,andKumar,V.(2001).Modelingandcontrolofformationsofnonholo-nomicmobilerobots.IEEETrans.Robot.Autom.,17(6):905–908.

[7] Dimakis,A.G.,Kar,S.,Moura,J.M.F.,Rabbat,M.G.,andScaglione,A.(2010).Gossipalgorithmsfordistributedsignalprocessing.ProceedingsoftheIEEE,98(11):1847–1864.

[8] Farrow,N.,Klingner,J.,Reishus,D.,andCorrell,N.(2014).Miniaturesix-channelrangeandbearingsystem:algorithm,analysisandexperimentalvalidation.InProceedingsof2014IEEEInternationalConferenceonRoboticsandAutomation(ICRA2014),pages6180–6185.IEEE.

[9] Gazi,V.(2005b).Swarmaggregationsusingartificialpotentialsandslidingmodecontrol.IEEETrans.Robot.Autom.,21(6):1208–1214.

[10] IEEEComputerSocietyLANMANStandardsCommittee(1997).WirelessLANmediumaccesscontrol(MAC)andphysicallayer(PHY)specifications.IEEE.

[11]Heng,L.,andGao,G.X.(2014).NavigatingrobotswarmsusingcollectiveintelligencelearnedfromGoldenShinerfish.InProc.CollectiveIntelligenceConference(CI2014).

[12]Hilder,J.,Naylor,R.,Rizihs,A.,Franks,D.,andTimmis,J.(2014).Thepiswarm:Alow-costplatformforswarmroboticsresearchandeducation,pages151–162.Springer.

30

[13]Kernbach,S.,Häbe,D.,Kernbach,O.,Thenius,R.,Radspieler,G.,Kimura,T.,andSchmickl,T.(2013).Adaptivecollectivedecision-makinginlimitedrobotswarmswithoutcommunication.TheInternationalJournalofRoboticsResearch,32(1):35–55.

[14]Koren,Y.andBorenstein,J.(1991).Potentialfieldmethodsandtheirinherentlimitationsformobilerobotnavigation.InProc.IEEEInternationalConf.RoboticsAutomation,pages1398–1404.

[15] Lin,J.,Morse,A.S.,andAnderson,B.D.O.(2007).Themulti-agentrendezvousproblem.Part1:thesynchronouscase.SIAMJ.ControlOptim.,46(6):2096–2119.

[16] Luo,E.,Fang,X.H.,Ng,Y.,andGao,G.X.(2016).Shinerbot:Bio-inspiredcollectiverobotswarmnavigationplatform.InProc.InstituteofNavigationGNSS+conference(IONGNSS+2016).

[17]Merheb,A.-R.,Gazi,V.,andSezer-Uzol,N.(2016).Implementationstudiesofrobotswarmnavigationusingpotentialfunctionsandpanelmethods.IEEETrans.Mechatronics,21(5):2556–2567.

[18]Mondada,F.,Franzi,E.,andGuignard,A.(1999).TheDevelopmentofKhepera.InExperimentswiththeMini-RobotKhepera,ProceedingsoftheFirstInternationalKheperaWorkshop,HNI-Verlagsschriftenreihe,HeinzNixdorfInstitut,pages7–14.

[19]Olfati-Saber,R.(2006).Flockingformulti-agentdynamicsystems:algorithmsandtheory.IEEETrans.Autom.Control,51(3):401–420.

[20]Olfati-Saber,R.,Fax,J.A.,andMurray,R.M.(2007).Consensusandcooperationinnetworkedmulti-agentsystems.ProceedingsoftheIEEE,95(1):215–233.

[21]Rubenstein,M.,Ahler,C.,andNagpal,R.(2012).Kilobot:Alowcostscalablerobotsystemforcollectivebehaviors.InProceedingsof2012IEEEInternationalConferenceonRoboticsandAutomation(ICRA-2012),pages3293–3298.IEEE.

[22]Saska,M.,Vonasek,V.,Chudoba,J.,Thomas,J.,Loianno,G.,andKumar,V.(2016).Swarmdistri-butionanddeploymentforcooperativesurveillancebymicro-aerialvehicles.J.IntelligentRoboticSys-tems,84(1):469–492.

[23]VishaySemiconductors(2011).TEMD7100X01siliconPINphotodiodespecsheet.

[24]Sturza,M.A.(1988).NavigationSystemIntegrityMonitoringUsingRedundantMeasurements.Wi-leyOnlineLibrary.

[25]TorrellasSocastro,S.(2013).Cognitivestimulationthroughtask-orientedtelerobotics.Master’sThesis,UniversidadObertadeCatalunya.

[26]Vartholomeos,P.,andPapadopoulos,E.(2006).Analysis,designandcontrolofaplanarmicro-robotdrivenbytwocentripetal-forceactuators.InProceedingsof2006IEEEInternationalConferenceonRoboticsandAutomation(ICRA-2006),pages649–654.IEEE.

31

[27]Waydo,S.,andMurray,M.(2003).Vehiclemotionplanningusingstreamfunctions.InProc.IEEEInt.Conf.Robot.Autom.,pages2484–2491.

32

AppendixA:SchematicsofaShinerbotFigures26–29showtheschematicsofasingleShinerbot.

Figure26:ContentsofShinerbotSchematic

12

34

56

12

34

56

A B C D

A B C D

Dat

e: 1

9 Au

g 20

16Ki

Cad

E.D

.A.

kica

d 4.

0.7

Rev

: Si

ze: A

4Id

: 1/4

Title

: Shi

ner B

otFi

le: S

hine

rBot

.sch

Shee

t: /

Uni

vers

ity o

f Illi

nois

at U

rban

a-C

ham

paig

nAu

thor

: Eny

u Lu

o

pwr_

mot

or_l

ight

s

pwr_

mot

or_l

ight

s.sc

h

infra

red

infra

red.

sch

mic

roco

ntro

ller

mic

roco

ntro

ller.s

ch

Shin

erB

ot S

chem

atic

Batte

ry C

harg

ing

Circ

uit

Pow

er M

anag

emen

tH

-Brid

ge M

otor

Driv

ers

Ambi

ent L

ight

Sen

sor

RG

B LE

D

Infra

red

Com

mun

icat

ions

bet

wee

n ro

bots

Dis

tanc

e Se

nsin

g us

ing

rece

ived

sig

nal s

treng

th1

TX a

nd 3

RX(

for b

earin

g se

nsin

g

Mic

roco

ntro

ller f

or th

e ro

bot -

usi

ng M

SP43

0G25

53

33

Figure27:ShinerbotSchematic-Power,LightSensor,H-Bridge,LED

12

34

56

12

34

56

A B C D

A B C D

Date

: 19

Aug

2016

KiCa

d E.

D.A.

kica

d 4.

0.7

Rev

: Si

ze: A

4Id

: 2/4

Title

: Bat

t Cha

rgin

g / P

ower

Man

agem

ent /

Mot

or D

river

s / R

GB

LED

/ A

mbi

ent L

ight

Sen

sor

File

: pwr

_mot

or_l

ight

s.sc

hSh

eet:

/pwr

_mot

or_l

ight

s/U

nive

rsity

of I

llino

is a

t Urb

ana-

Cha

mpa

ign

Auth

or: E

nyu

Luo

Leg1

Leg2 Le

g3

Leg4

En1

Iset

2

Batt

3AD

P4

Stat

5G

nd6

Gnd

7

Gnd

8

U1

AAT3

681A

8-tfs

oj

+BAT

T

12

D3 LED

0603

R1150

0603

R210

.7k

1%06

03

Vin

1

Gnd

2/S

hdn

3

Bypa

ss4

Vout

5U2 TC

1185

Vin

1

Gnd

2/S

hdn

3

Bypa

ss4

Vout

5U3 TC

1185

+1

-2

BT1

BATTERY

Batte

ry C

harg

ing

and

Powe

r Man

agem

ent

C1 22uF

10V

0805

C2 22uF

6.3

V08

05

C3 2.2u

F 6.

3V06

03

C5 2.2u

F 6.

3V06

03

C6 2.2u

F 6.

3V06

03

C8 2.2u

F 6.

3V06

03

VDD

VAA

3.0V

dig

ital

3.0V

ana

log

+BAT

T

C4 470p

F 50

V06

03

C7 470p

F 50

V06

03

R33M

1%

0603

R41M

1%

0603

+BAT

T

C9

0.1uF 16V 10%0603

Mot

or H

-Brid

ge D

river

s+B

ATT

+BAT

T

C10

10uF

6.3

V08

05

C12

10uF

6.3

V08

05

C11 0.1u

F 16

V 10

%06

03

C13 0.1u

F 16

V 10

%06

03

BGR 1 2

34D4

RGB_

LED

Indi

cato

r RG

B LE

D

R5150

0603 R6300603 R7300603

VDD

Ambi

ent L

ight

Sen

sor

VAA

R82.4k 1% .1W

0603

C14 0.1u

F 16

V 10

%06

03

C15 0.1u

F 16

V 10

%06

03

1 2

M1CONN_2

1 2

M2CONN_2

AGND

LED_

G

LED_

B

LED_

R

AGND

VLig

ht

VBat

t

VAA_

EN

M_P

WM

_LM

_DIR

_LM

_PW

M_R

M_D

IR_R

C16 0.1u

F 16

V 10

%06

03

R90

ohm

0603

Conn

ect G

ND a

nd A

GND

at

the

micr

ocon

trolle

r GND

pin

for 1

50m

A Ch

arge

Rat

e

GND

A

R36

0 oh

m06

03

GND

ACo

nnec

t GND

nea

r Bat

t

VDD

Char

geSt

at

12D9

PHOTO_DIODE

-1

2 3

+4

D1BA

S400

2A

-1

2 3

+4

D2BA

S400

2A

IN_A

11

OUT

_Y3

2In

_A2

3

GND 4

OUT

_Y2

5

IN_A

36

OUT

_Y1

7

VCC8

U6

NL37

WZ0

7

ENA/

DIR

1Vs

2

ENB/

PWM

3N/

C4

GND

5O

UTB

6

OUT

A7

N/C

8

U4 ATT4

901-

1

ENA/

DIR

1Vs

2

ENB/

PWM

3N/

C4

GND

5O

UTB

6

OUT

A7

N/C

8

U5 ATT4

901-

1

34

Figure28:ShinerbotSchematic-InfraredTransmitterandReceivers

12

34

56

12

34

56

A B C D

A B C D

Date

: 19

Aug

2016

KiCa

d E.

D.A.

kica

d 4.

0.7

Rev

: Si

ze: A

4Id

: 3/4

Title

: Shi

nerB

ot: I

R C

omm

unic

atio

nsFi

le: i

nfra

red.

sch

Shee

t: /in

frare

d/U

nive

rsity

of I

llino

is a

t Urb

ana-

Cha

mpa

ign

Auth

or: E

nyu

Luo

12D5

IR_RX R1075k 1% .1W

0603VAA

V+4 V- 11

1

-2

+3

U7A TS

V914

R14

82k

1%06

03

R121K 1%

0603

C20

0.1uF0603

AGND

12D8

IR_RX R2375k0603VA

A

V+4 V- 11

8

-9

+10

U7C TS

V914

R25

82k

1%06

03

R241K 1%

0603

C24

0.1uF0603

AGND

12D6

IR_RX R1175k 1% .1W

0603VAA

V+4 V- 11

+5

-6

7

U7B TS

V914

R15

82k

1%06

03

R131K 1%

0603

C21

0.1uF0603

AGND

V+4 V- 11

+12

-13

14

U7D TS

V914

AGND

VAA

R26

100k

1%

0603

R27

100k

1%

R28

100k

1%

R305.1k 1%

0603

R33

100k

1%

0603

Infra

red

Rece

ivers

Infra

red

Tran

smitt

er

C22

0.1uF 16V0603 AG

ND

VDD C1

9

0.1u

F 16

V06

03

R18

300603

12

D7

IR_T

X

D

G

S

Q4

MO

S_N

IR_T

X_Si

g

IR_R

X_Si

g

RSSI

_0RS

SI_1

RSSI

_2

D10

DIODEsod523f

C29

0.1u

F 16

V0603

C28

0.1u

F 16

V0603

R19750k0603

35

Figure29:ShinerbotSchematic-Microcontroller

12

34

56

12

34

56

A B C D

A B C D

Date

: 19

Aug

2016

KiCa

d E.

D.A.

kica

d 4.

0.7

Rev

: Si

ze: A

4Id

: 4/4

Title

: Shi

nerB

ot -

Mic

roco

ntro

ller

File

: micr

ocon

trolle

r.sch

Shee

t: /m

icroc

ontro

ller/

Uni

vers

ity o

f Illi

nois

at U

rban

a-C

ham

paig

nAu

thor

: Eny

u Lu

o

DVCC

1

P1.0

/TA0

CLK/

ACLK

/A0/

CA0

2

P1.1

/TA0

.0/U

CA0R

XD/U

CA0S

OM

I/A1/

CA1

3

P1.2

/TA0

.1/U

CA0T

XD/U

CA0S

IMO

/A2/

CA2

4

P1.3

/ADC

10CL

K/A3

/VRE

F-/V

EREF

-/CA3

/CAO

UT5

P1.4

/SM

CLK/

UCB0

STE/

UCA0

CLK/

A4/V

REF+

/VER

EF+/

CA4/

TCK

6

P1.5

/TA0

.0/U

CB0C

LK/U

CA0S

TE/A

5/CA

5/TM

S7

P3.1

/TA1

.08

P3.0

/TA0

.29

P2.0

/TA1

.010

P3.6

/TA0

.220

P2.1

/TA1

.111

P3.7

/TA1

CLK/

CAO

UT21

P2.2

/TA1

.112

P1.6

/TA0

.1/A

6/CA

6/UC

B0SO

MI/U

CB0S

CL/T

DI/T

CLK

22

P3.2

/TA1

.113

P1.7

/A7/

CA7/

CAO

UT/U

CB0S

IMO

/UCB

0SDA

/TDO

/TDI

23

P3.3

/TA1

.214

RST/

NMI/S

BWTD

IO24

P3.4

/TA0

.015

TEST

/SBW

TCK

25

P2.3

/TA1

.016

XOUT

/P2.

726

P2.4

/TA1

.217

XIN/

P2.6

/TA0

.127

P2.5

/TA1

.218

DVSS

28

P3.5

/TA0

.119

U9

MSP

430G

2553

IPW

28

TSSO

P-28

C27

0.1u

F 16

V06

03

VDD

IR_R

X_Si

gIR

_TX_

Sig

C26

1nF

0603

R35

47k

0603

VBat

t

RSSI

_0

RSSI

_1RS

SI_2

VLig

ht

M_P

WM

_RM

_PW

M_L

M_D

IR_R

M_D

IR_L

LED_

G

LED_

R

LED_

B

VAA_

EN

VDD

1 2 3 4

P1CONN_4

Prog

ADC

inpu

ts:

V

Batt

- Bat

tery

Vol

tage

from

resis

tor d

ivide

r

RSS

I_0,

RSS

I_1,

RSS

I_2,

- in

stan

tane

ous

volta

ge o

f IR

RX s

igna

ls

VLi

ght -

vol

tage

from

am

bien

t Lig

ht s

enso

r

IrDA

Sign

als

- IR_

RX_S

ig, I

R_TX

_Sig

IR_R

S_Si

g tri

gers

inte

rrupt

for A

DC s

ampl

ing

of R

SSI

VAA_

EN -

Enab

le c

ontro

l of V

AA re

gula

tor f

or p

ower

man

agem

ent

LED_

R/G

/B -

PWM

out

put t

o RG

B LE

D

U

ses

timer

TA1

Mot

or o

utpu

ts to

H-B

ridge

Driv

ers

U

ses

timer

TA0

Char

geSt

at -

Indi

cate

s if

batt

is ch

argi

ng

Char

geSt

at