40
SHINERBOTS: A ROBOTIC SWARM NAVIGATION PLATFORM INSPIRED BY THE GOLDEN SHINER FISH BY ENYU LUO THESIS Submitted in partial fulfillment of the requirements for the degree of Master of Science in Electrical and Computer Engineering in the Graduate College of the University of Illinois at Urbana-Champaign, 2017 Urbana, Illinois Adviser: Assistant Professor Grace Xingxin Gao

SHINERBOTS: A ROBOTIC SWARM NAVIGATION PLATFORM …

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: SHINERBOTS: A ROBOTIC SWARM NAVIGATION PLATFORM …

SHINERBOTS:AROBOTICSWARMNAVIGATIONPLATFORMINSPIREDBYTHEGOLDENSHINERFISH

BY

ENYULUO

THESIS

SubmittedinpartialfulfillmentoftherequirementsforthedegreeofMasterofScienceinElectricalandComputerEngineering

intheGraduateCollegeoftheUniversityofIllinoisatUrbana-Champaign,2017

Urbana,Illinois

Adviser:

AssistantProfessorGraceXingxinGao

Page 2: SHINERBOTS: A ROBOTIC SWARM NAVIGATION PLATFORM …

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.

Page 3: SHINERBOTS: A ROBOTIC SWARM NAVIGATION PLATFORM …

iii

Acknowledgments

Iwouldliketoexpressgratitudetomyadvisor,AssistantProfessorGraceXingXinGao,forthesupportof

mystudyandresearchprojects.IwouldliketothankXinhuiFangandKwokBunChengforsolderingand

assemblingrobotsforthisproject,aswellasAlexandraBaculaandKatieCarollforcalibratingand

conductingexperimentswiththeShinerbots.

Page 4: SHINERBOTS: A ROBOTIC SWARM NAVIGATION PLATFORM …

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

Page 5: SHINERBOTS: A ROBOTIC SWARM NAVIGATION PLATFORM …

v

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

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

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

Page 6: SHINERBOTS: A ROBOTIC SWARM NAVIGATION PLATFORM …

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.

Page 7: SHINERBOTS: A ROBOTIC SWARM NAVIGATION PLATFORM …

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

Page 8: SHINERBOTS: A ROBOTIC SWARM NAVIGATION PLATFORM …

3

willbedescribedinchapter4.Theexperimentalresultswillbepresentedinchapter5.Chapter6

concludesthethesisandoutlinesfuturework.

Page 9: SHINERBOTS: A ROBOTIC SWARM NAVIGATION PLATFORM …

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

Page 10: SHINERBOTS: A ROBOTIC SWARM NAVIGATION PLATFORM …

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

Page 11: SHINERBOTS: A ROBOTIC SWARM NAVIGATION PLATFORM …

6

willleadtoneedinganevenlargerworkspacefortherobots.Asfortheswarmalgorithmthatwillbe

presentedinthenextchapter,sophisticatedsensorsandprocessorsarenotrequired.Thoseexpensive

robotswithadvancedfeatureswillonlydrivethetotalcostofthewholeswarmresearchhigh.The

Kilobotisaninnovativedesignwhichusesvibrationtomove,andisonly33mmindiameter.Thisallows

foramanageableworkspacesizetooperatethewholeswarm.TheKilobotcanonlysensethedistance

toneighbors,butnottheirorientation.Thismayworkwellforsomeotherswarmnavigationalgorithms,

butnotthegoldenshineralgorithmtobepresentedinthisthesis.Chapter4willdetailthedesignof

ShinerbotsbuiltontopoftheideaofKilobots,allowingbothdistanceandorientationofneighborstobe

sensed,plusotherminorimprovements.

Page 12: SHINERBOTS: A ROBOTIC SWARM NAVIGATION PLATFORM …

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.

Page 13: SHINERBOTS: A ROBOTIC SWARM NAVIGATION PLATFORM …

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.

Page 14: SHINERBOTS: A ROBOTIC SWARM NAVIGATION PLATFORM …

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

Page 15: SHINERBOTS: A ROBOTIC SWARM NAVIGATION PLATFORM …

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

Page 16: SHINERBOTS: A ROBOTIC SWARM NAVIGATION PLATFORM …

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

Page 17: SHINERBOTS: A ROBOTIC SWARM NAVIGATION PLATFORM …

12

Figure12:Placementof3Infrared(IR)Receiversand1IRTranmitterontheUndersideoftheShinerbot

Figure13:IRBeamPattern(Semiconductors,2011)[23]

Afactorof1/risusedtoestimatethesignalstrengthatdistancerbetweenneighborsduetothespread

ofthesignalinthe2Dplane.Afactorduetotheverticaldimensionisconsideredaswell.Bothreceivers

andtransmittershavethesamebeampatternasshowninfigure13.Acosinefunctionisusedtomodel

thesignalstrengthexitingthetransmitter,aswellasenteringthereceiver.Thus,cosinesquared

becomesthefactorduetotheverticaldimension.Anadditionfactorklumpsvariousfactorssuchasthe

Page 18: SHINERBOTS: A ROBOTIC SWARM NAVIGATION PLATFORM …

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.

Page 19: SHINERBOTS: A ROBOTIC SWARM NAVIGATION PLATFORM …

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.

Page 20: SHINERBOTS: A ROBOTIC SWARM NAVIGATION PLATFORM …

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

Page 21: SHINERBOTS: A ROBOTIC SWARM NAVIGATION PLATFORM …

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.

Page 22: SHINERBOTS: A ROBOTIC SWARM NAVIGATION PLATFORM …

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.

Page 23: SHINERBOTS: A ROBOTIC SWARM NAVIGATION PLATFORM …

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

Page 24: SHINERBOTS: A ROBOTIC SWARM NAVIGATION PLATFORM …

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.

Page 25: SHINERBOTS: A ROBOTIC SWARM NAVIGATION PLATFORM …

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

Page 26: SHINERBOTS: A ROBOTIC SWARM NAVIGATION PLATFORM …

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.

Page 27: SHINERBOTS: A ROBOTIC SWARM NAVIGATION PLATFORM …

22

Figure22:PowerStateTransitionsinResponsetoSystemMessages

Page 28: SHINERBOTS: A ROBOTIC SWARM NAVIGATION PLATFORM …

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.

Page 29: SHINERBOTS: A ROBOTIC SWARM NAVIGATION PLATFORM …

24

Figure23:ClusteringBehaviorofShinerbotsfromInitializationtoConvergence

5.2ExperimentwithCenteredDestinationRegionThisnextexperimentshowninfigure24showstheworkspacehavingitsdesiredbrightregionatthe

middleoftheworkspace.Thisexperimentmainlydemonstratesthesocialfactorofthegoldenshiners

algorithmatwork,wheretherobotscollectivelygathertogethertomimictheschoolingbehaviorofthe

fishes.Thereisstillsomeclusteringbehavioroftheswarminthefirst12minutes.Theswarmeventually

convergedinthemiddletothedesiredregionafter25minutes.

Page 30: SHINERBOTS: A ROBOTIC SWARM NAVIGATION PLATFORM …

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.

Page 31: SHINERBOTS: A ROBOTIC SWARM NAVIGATION PLATFORM …

26

Figure25:ExperiementwithLightSourceOff-Centered

Page 32: SHINERBOTS: A ROBOTIC SWARM NAVIGATION PLATFORM …

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.

Page 33: SHINERBOTS: A ROBOTIC SWARM NAVIGATION PLATFORM …

28

Thereasonsforgoingwiththevibrationmethodofmobilityaresizeandcost,whichareimportantto

scalabilityinalargeswarm.Thedisadvantageofthismodeofmobilityisthatitisrelativelyslow.

Experimentsoftenhavetobeconductedoveratleastanhour.Ifminiatureandcheapcommercial-off-

the-shelf(COTS)wheeledpartsareavailable,thatwouldhelpinspeedingupexperiments.

Page 34: SHINERBOTS: A ROBOTIC SWARM NAVIGATION PLATFORM …

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.

Page 35: SHINERBOTS: A ROBOTIC SWARM NAVIGATION PLATFORM …

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.

Page 36: SHINERBOTS: A ROBOTIC SWARM NAVIGATION PLATFORM …

31

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

Page 37: SHINERBOTS: A ROBOTIC SWARM NAVIGATION PLATFORM …

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

Page 38: SHINERBOTS: A ROBOTIC SWARM NAVIGATION PLATFORM …

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

Page 39: SHINERBOTS: A ROBOTIC SWARM NAVIGATION PLATFORM …

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

Page 40: SHINERBOTS: A ROBOTIC SWARM NAVIGATION PLATFORM …

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