standardized批处理for
批处理for 时间:2021-04-18 阅读:(
)
ModularDevelopmentofMobileRobotswithOpenSourceHardwareandSoftwareComponentsMartinoMigliavacca,AndreaBonarini,andMatteoMatteucciPolitecnicodiMilano,DipartimentodiElettronica,InformazioneeBioingegneria,PiazzaLeonardoDaVinci32,20133,Milano,Italy{migliavacca,bonarini,matteucci}@polimi.
itAbstract.
Prototypingandengineeringrobothardwareandlow-levelcontroloftenrequiretimeandeortsthussubtractedtocoreresearchac-tivities,suchasSLAMorplanningalgorithmsdevelopment,whichneedaworking,reliable,platformtobeevaluatedinarealworldscenario.
Inthispaper,wepresentRapidRobotPrototyping(R2P),anopensource,hardwareandsoftwarearchitecturefortherapidprototypingofroboticapplications,whereo-the-shelfembeddedmodules(e.
g.
,sensors,actu-ators,andcontrollers)arecombinedtogetherinaplug-and-playfashion,enablingtheimplementationofacomplexsysteminasimpleandmod-ularway.
R2Pmakespeopleinvolvedinrobotics,fromresearchersanddesignerstostudentsandhobbyists,dramaticallyreducethetimeandeortsrequiredtobuildarobotprototype.
1IntroductionInrecentyears,severaldevelopmentframeworks[6,4,11,8]havebeenpro-posedtoassistresearchersinthedesignofroboticapplications.
Whiletheseprojectsreallyboostedthedevelopmentofhigh-levelsoftware,hardwarede-signandlow-levelrmwaredevelopmentarestillcriticaltasks.
Todevelopanewmobilerobot,designersalwaysfacetheproblemofselectinghardwarede-vices,controllingthem,andinterfacingthemwiththehigh-levelsoftware.
Thisslowsdowntheprogressofroboticresearch,asprototypingandengineeringof-tenrequiresmoretimeandresourcesthantasksstrictlyrelatedtothetargetapplication.
Tosimplifythedevelopmentofnewroboticapplications,wedevelopedRapidRobotPrototyping(R2P)[2,1],anopensourcehardwareandsoftwareframe-workfocusedonspeedinguptheprototypingofroboticsystems.
R2Ppro-videshardwaremodulesthatimplementbasicfunctionalitiesneededbycommonroboticapplications,andalightweight,real-time,middlewaretoeasilywritelow-levelcontrolsoftware.
R2Ptargetsspanfrommobileautonomousrobotsusedforresearchpurposestoentertainmentandserviceapplications,suchasgames,telepresence,andrescue.
ThelimitsofR2P,attheactualstageofdevelopment,areonlyimposedbythemodulesalreadyavailable;moreover,asR2PisanopenS.
Behnkeetal.
(Eds.
):RoboCup2013,LNAI8371,pp.
576–583,2014.
cSpringer-VerlagBerlinHeidelberg2014RapidRobotPrototyping577source,modular,framework,itcanbeextendedbyuserswithadditionalmodulestocoverotherapplicationelds.
2ModularHardwareandSoftwareDevelopmentWhenanewroboticapplicationisinvestigated,therststepsinvolveselect-ingthehardwaredevices,e.
g.
,sensorandactuators,andbuildingtheplatformneededtovalidatetheoverallidea.
Lookingattoday'spossibilities,wecanpickdeviceseitherfromtheautomationmarketorfromthehobbymarket.
Com-ponentsfromautomationmarketareoftenexpensiveandoeroverkillingper-formancewithrespecttotherequirementsofaroboticapplicationprototype.
Moreover,automationdevicesoftenrequirepowersuppliesnotsuitableforbat-terypoweredsystemslikemobilerobots.
Ontheotherhand,devicesfromhobbymarketareusuallycheap,buttheyshowpoorperformance,lowreliability,andnoreal-timecapabilitiesmakingimpossibleanydistributedcontrolloop.
Havingselectedhardwaredevices,hereitcomestheproblemofinterfacingthemwitheachother,andwiththehigh-levelcontrolsoftware.
Dierentmanufacturersgenerallyusedierentdatalinksandprotocols,increasingwiringcomplexityandrequiringspecializeddevicedrivers.
Asaconsequence,resultingplatformsarecommonlybasedoncustomsetups,whicharehardlyreusableindierentprojects.
Althoughmobilerobotshavebeenbuiltfordecadesbyintegratinghet-erogeneousdevices,orimplementingcustomsolutions,wermlybelievethatamodularapproachbasedono-the-shelfcomponentswouldstronglyhelprobotdesignersindevelopingnewapplications.
Tothebestofourknowledge,theonlyavailablemodularroboticplatforms,suchastheE-puckeducationalrobot[10],theKepherarobot[7],andafewothers,areaimedatdevelopingsmallmobilerobotsforapplicationslikeswarmroboticsandtheirusageisrestrictedtocontroltheplatformtheyaredesignedfor.
WithR2P,weaimatfulllingthelackofhardwarecomponentsfocusedonrobotprototyping,pushingdesignstrategiescommonlyexploitedinsoftwarede-velopment–suchasmodular,component-based,softwareengineering–downtothehardwarelevel.
R2Preliesontheprinciplethattherequirementsofagenericrobotapplicationcanbeimplementedbymodulesnotonlyatsoftwarelevel,asitiscommoninmostframeworks,butalsoathardwarelevel.
Basicfunctionalitiessuchasmotorcontrol,distancemeasurement,inertialnaviga-tionareimplementedbyspecic,standardizedhardwaremodules,withcorre-spondingrmware,thatcanbepluggedonacommonbusandcaninteractinreal-time.
Firmwaredevelopmenttools,andamiddlewaretofosterdistributed,reusable,softwaredevelopment,areprovided,supportingusersinwritingcodeonresource-constraineddevices.
UsingR2P,robotdesignerscanbuildgenericplatformsbychoosingthemodulestheyneed,conguringthem,andeasilyde-velopingthecontrolsoftware,implementingcomplexsystemsinaplug-and-playfashion.
Integrationwithhigh-levelroboticsframeworks,suchasROS[11],isprovidedbyagatewaymodule.
578M.
Migliavacca,A.
Bonarini,andM.
Matteucci3R2P:TheRapidRobotPrototypingFrameworkInthissection,weintroduceR2Pdesignchoicesandarchitecture.
Then,areviewofsomeofthealreadyavailablehardwaremodulesarepresented.
3.
1PowerandDataLinkR2Pusesasingleconnectortotransportbothpoweranddata.
Powerconsump-tionislimitedto5V,200mA,foreachmodule,whichsuitestherequirementsofmostelectronicdevices,whilemodulesneedinghigherpower,suchasmo-tordrivers,mustrelyonauxiliaryconnections.
ModulesexchangedatausingtheCAN-Bus,whichhasbeendesignedtoworkinharshenvironmentsandisavailableonmanymicrocontrollers.
Itsmaximumdatarateof1Mbpsisgen-erallyenoughforadistributedsystemofsmartdevices,whereonlyhighlevelinformationneedstobesentoverthenetwork(i.
e.
,norawsensordataisex-changed),thusneedingarelativelysmallbandwidth[3].
AspartofR2P,wedevelopedRTCAN[9],aCAN-Busprotocoltargetedatroboticapplicationsthatsupportsbothsporadic,event-triggered,andperiodic,time-triggeredcom-munication,withsoftandhardreal-timeconstraints.
Toreducewires,adaisychainwiringschemaisadopted:eachmodulehastwoportstoconnecttothepreviousandthenextcomponent,asshowninFigure2(a).
Thisalsosupportseasyconnectionofnewmodulestoanexistingsystem.
3.
2EmbeddedFirmwareDevelopmentWritingcodeforresource-constraineddevices,suchasmicrocontrollersusedtointerfacewithsensorsandactuators,requiresspecicknowledgeandcompe-tence.
Mostrobotdesignersareusedtowritesoftwareondesktop-levelcom-putersystems,andtheyhavetospendtimeandeortstostartdevelopingcodetargetedtoembeddeddevices.
Toreducethiseort,theuseofanoperatingsystemcansignicantlysupportsoftwaredevelopmentevenforsmallembeddedsystemsasitfeaturesthreads,memorymanagement,messagepassingprimi-tives,andotherservicesprogrammersarecommonlyusedtodealwith.
More-over,anoperatingsystemwithreal-timecapabilitiesisimportanttomanagecritical,high-prioritytasks,whichareofteninvolvedinroboticsystems,e.
g.
,forclosed-loopcontrol.
Forthementionedreasons,R2PreliesonChibiOS/RT[12],areal-timeoperatingsystemdesignedfordeeplyembeddedrealtimeapplications.
ChibiOS/RThasbeenpreferredtootheralternativesforitsportability,easeofuse,richfeaturesset,andextremelyhigheciency;anyway,areviewofavailableembeddedoperatingsystemsisoutofthescopeofthispaper.
ChibiOS/RTalsoincludesaHardwareAbstractionLayer(HAL),whichabstractsthehardwareimplementationofdierentlowlevelperipherals,relievingthedeveloperfromacquiringspeciccompetenceoneachspecicplatformandmakingeasiertheportofexistingcodetodierenttargets.
RapidRobotPrototyping579!
"#$"#%"#&'!
$%&Fig.
1.
ThedistributedarchitectureoftheembeddedsoftwarecontrollingTriskar23.
3Publish/SubscribeMiddlewareTosupportthedevelopmentofmodularsoftwarecomponentsonembeddedtar-get,R2Pfeaturesalightweightcommunicationmiddleware.
R2Pmiddlewaremaingoalsaresoftwarereuse,real-timecommunication,ecientimplementa-tion,andeaseofuse.
Itfollowsthepublish/subscribeparadigm[5]:datapro-ducerspublishmessagesonatopic,i.
e.
,acommunicationchannel,whiledataconsumerssubscribetothecorrespondingtopictoreceivemessages.
Identifyingdatabyitscontent,i.
e.
,thetopicitispublishedon,insteadofbyitsproducer,alsopromotesloosely-coupledsoftwaredesignand,thus,codereuse.
Themiddle-wareprovidesconceptscommontomostroboticsframeworksusedoncomputersystems,suchassoftwarenodes,topics,publishers,subscribers,andmessagequeues.
R2PmiddlewareiswritteninasubsetofC++,totakeadvantageofsomeobject-orientedprogrammingfeatureswithoutcompromisingperformanceonembeddedtargets.
Itsimplementationisfocusedoncodeeciencyandmes-sagingperformance.
Softwarenodescansubscribetobothlocalandremotepublishers,withnodierencefromtheuserpointofview.
Themiddlewaresup-portsbothperiodicandsporadicpublishers,whichcanspecifyreal-timecom-municationconstraints:updateperiodfortime-triggeredmessages,anddeliverydeadlineforevent-triggeredones.
Finally,asimpleAPI,whichremindstheROSsyntax,enablesdeveloperstowriteembedded,distributedcodeastheyareusedtodooncomputersystems,fosteringcodereusethroughdierentprojects.
3.
4IntegrationwithROSWhileR2Psupportsrapiddevelopmentofroboticsystemsusingo-the-shelfhardwareandsoftwarecomponents,applicationsinvolvingcomputation-intensivetaskssuchascomputervision,localization,andcomplexplanning,mustalsorelyonacomputersystemand,eventually,asoftwareframework.
Amongthemanyavailabledevelopmentframeworksforroboticssoftware,ROS[11]iscurrentlythemostwidelyadoptedinacademiaandresearchlaboratories,and,recently,ithasbeenconsideredalsobyindustrialdevelopers.
Tonativelyintegrateresource-constraineddeviceswithinROS,wedevelopedμROSnode,alightweight,open580M.
Migliavacca,A.
Bonarini,andM.
Matteucci(a)Daisy-chainwiringofhardwaremodules(b)R2PIMU(c)R2PDCmotorcontrollerFig.
2.
R2Phardwaremodulessource,ANSICROSclientlibrary.
R2Pprovidesagatewaymodule(seeSec-tion3.
5),whichactsasaproxybetweentheR2PmiddlewareandROSsystems.
TopicspublishedontheR2PnetworkcanbeaccessedfromROSnodes,and,atthesameway,R2PmodulescansubscribedatapublishedbyROSsoftware.
3.
5O-the-ShelfHardwareComponentsWehavedesignedandbuilt,aspartoftheR2Pframework,asetofplug-and-playhardwaremodulesthatimplementbasicfunctionalitiesrequiredbycommonroboticsapplications.
ModulesarebasedonSTM32Cortex-M3microcontrollerswith20KbofRAMand128KbofFlashmemory,runningtheChibiOS/RTandtheR2Pmiddleware.
EachmodulehastwoRJ45portsfordaisy-chainconnectiontothebus,aserialporttodownloadnewrmwareandfordebuggingpurposes,andaJTAGheaderforadvanceduserswhowanttodirectlyaccessthemicro-controller.
Anoverviewofthecurrentlyavailablemodulesfollows.
PSUModule.
Thisisthepowersupplyunit,whichpowersallthemodulesconnectedtothebus.
Inputvoltagerangeisfrom5.
5Vto36VDC.
ADC-DCconverterproducesa5Vregulatedoutputwithmaximumcurrentsupplyof4Aandshortcircuitprotection.
Bothbatteryvoltageandcurrentdraincanbepublishedoverthenetworktomonitorpowerconsumptionandtoestimatetheresidualbatterylife.
DCMotorModule.
Thishigh-powermotorcontrollerboardcandriveDCmotorsupto36V,deliveringacontinuous20Acurrent.
Itfeaturesclosedloopcontrol,withpositionfeedbackfromaquadratureencoderandcurrentmea-surementfromtheon-boardHall-eectsensor.
TheDCmotormoduleacceptsposition,speed,andtorquesetpoints,andcanpublishpositionandspeedmes-sages,exploitingdatafromtheencoder,andthemeasuredcurrentdrawn.
IMUModule.
A10-DoFInertialMeasurementUnitfeaturingMEMSac-celerometer,gyroscope,magnetometerandpressuresensor.
AnadditionalserialporttoacquireGPScoordinatesfromanexternalGPSreceiverisalsoprovidedonthismodule.
Theon-boardsensorfusionalgorithmproducesheading,atti-tude,andpositionmessages.
RapidRobotPrototyping581ProximityModule.
AmoduletointerfacewithproximitysensorssuchastheSharpIRrangersorMaxBotixultrasonicsensors.
Eachmoduleconnectstoupto4sensors.
Calibrationanddatalteringalgorithmsrunonthemicrocon-troller,whichproducesdistancemeasurements.
GatewayModule.
ThisisthegatewaymodulementionedinSection3.
4.
ItfeaturesanEthernetportandamorepowerful,Ethernet-enabled,microcon-trollertohandletheTCP/IPstack.
R2PmessagescanbeforwardedfromtheCAN-BustotheIPnetwork,andtheotherwayaround.
ThegatewaymodulerunsROSnode,whichenablesadirectintegrationofR2PmoduleswithROSsystems.
3.
6OpenSourceDevelopmentR2Pisfullyopensource,bothhardwareandsoftware,toencourageitsadoptionandtotakeadvantageofcommunity-drivenimprovementstobecameamatureandwidespreadproject.
Thedesignoftheboards,thecodetheyrunandthemiddlewareareavailableontheR2Prepository:http://github.
com/openrobots-dev.
Atthemomentofwriting,R2Phasreacheditsmaturity(see,e.
g.
,theusecaseinthenextsection),butitsdevelopmentisstillactivelyprogressing,thus,therepositoryisfrequentlyupdated.
4UseCase:AnOmnidirectionalRobotWeusedR2PtodeveloptheomnidirectionalwheeledrobotTriskar2,showninFigure3(a).
Therobotsports3R2PDCmodules,aPSUmodule,aProximitymodule,andtheGatewaymoduletointerfacewithacomputerrunningROS.
Thelow-levelcontrolsoftwareembeddedonthemodules,whichexploitstheR2Ppublish/subscribermiddleware,isreportedinFigure3.
SoftwarecomponentsareenclosedinR2Pnodes,whichimplementbasicfunctionalities,performingaspe-cictask.
Then,nodesarecomposedasadistributedarchitecture,implementingacomplexsystemfrombasic,reusable,components.
Thisdesignstrategyisnotinnovative,beingcommonlyusedinsoftwaredevelopment;themaincontribu-tionofR2Pmiddlewareistobringthesameapproach,and,thus,thesameadvantages,toembeddedrmwaredevelopment,withthesameprogramminginterfacesknowntomostrobotdevelopers.
SoftwarenodeshavebeendeployedonthemodulesasshowninFigure3(b).
Somenodeshavetorunonspecicboards(e.
g.
,thosethataredirectlycon-nectedtothehardwarelikemotorcontrollernodes),whileotherscanrunonanyconnectedmodule.
Forexample,inourtests,theinversekinematicsmodeltocomputewheelspeedswasrunontheMotor1module,whiletheodometrynodewasdeployedonMotor2.
Inthisway,wecanbalanceprocessorloadandreducelatency,easilymovingnodesfromanhardwaremoduletoanother.
ThankstotheR2Pgateway,Triskar2canbecontrolledbyanyROSappli-cationpublishingnativeROStopics.
WerstlyteleoperatedtherobotbyusingstandardROSteleopmessages,thenwedevelopedaroboticgame,involvingtheTriskar2robotandaquadricopter,bothcontrolledbyROSsoftware.
582M.
Migliavacca,A.
Bonarini,andM.
MatteucciFig.
3.
TheTriskar2omnidirectionalplatform(a)andtheR2Phardwaremodulescontrollingtherobot(b)5ConclusionsInthispaper,wepresentedR2P,anopensourcehardwareandsoftwareframe-workfortherapidprototypingofrobots.
Bringingdesignstrategiessuchasmodulardevelopment,andcomponentsreuse,downtohardwarelevel,R2Pen-ablesrobotdesignerstobuildandcontrolaroboticplatformusingo-the-shelfmodules.
ExploitingtheR2Pframework,genericmobilerobotscanbebuiltbottom-upinadistributedplug-and-playfashionbysimplyselectingthehard-waremodulestosatisfytheneededfunctionalrequirementsandeasilyprogram-mingtheirinteraction.
Integrationwithhigh-levelsoftwareframeworks,e.
g.
,ROS,allowstodevelopcomplexapplication,whilelow-levelcontrolisimple-mentedbymeansofamodulardistributedarchitecture,withreal-timeper-formance,withouttheneedforadvanceddomain-specicknowledge.
WeareexploitingR2Ptodesignnewrobotsinourlaboratory,asshownbytheusecasepresentedinSection4,andtoupgradeourpreviousplatforms,therstbeingabalancingwheeledrobot,adierentialdriveheavy-dutyrobot,andanautonomouswheelchair.
TheopensourcelicenseencouragesrobotdesignerstoadoptexistingR2Pmodulestocontroltheirplatforms,andtodevelopnewhard-waremodulesandsoftwarecomponentsthatimplementnewfunctionalities.
Acknowledgements.
Thisworkhasbeenpartiallysupportedbytheresearchgrant"RoboticsfortheMasses"fromSTMicroelectronicsandRegioneLom-bardia,andbytheItalianMinistryofUniversityandResearch(MIUR)throughthePRIN2009grant"ROAMFREE:RobustOdometryApplyingMulti-sensorFusiontoReduceEstimationErrors".
References[1]Bonarini,A.
,Matteucci,M.
,Migliavacca,M.
,Rizzi,D.
:R2P:Anopensourcehardwareandsoftwaremodularapproachtorobotprototyping.
RoboticsandAutonomousSystemsRapidRobotPrototyping583[2]Bonarini,A.
,Matteucci,M.
,Migliavacca,M.
,Rizzi,D.
:R2P:anopensourcemod-ulararchitectureforrapidprototypingofroboticsapplications.
In:Proceedingsof1stIFACConferenceonEmbeddedSystems,ComputationalIntelligenceandTelematicsinControl,CESCIT2012(2012)[3]Bonarini,A.
,Matteucci,M.
,Migliavacca,M.
,Sannino,R.
,Caltabiano,D.
:Mod-ularlow-costrobotics:WhatcommunicationinfrastructureIn.
In:Proceedingsof18thWorldCongressoftheInternationalFederationofAutomaticControl(IFAC),pp.
917–922(2011)[4]Bruyninckx,H.
:Openrobotcontrolsoftware:theOROCOSproject.
In:Proceed-ings2001ICRA,IEEEInternationalConferenceonRoboticsandAutomation,pp.
2523–2528(2001)[5]Eugster,P.
T.
,Felber,P.
A.
,Guerraoui,R.
,Kermarrec,A.
-M.
:Themanyfacesofpublish/subscribe.
ACMComputingSurveys35(2),114–131(2003)[6]Gerkey,B.
P.
,Vaughan,R.
T.
,Howard,A.
:Theplayer/stageproject:Toolsformulti-robotanddistributedsensorsystems.
In:Proceedingsofthe11thInterna-tionalConferenceonAdvancedRobotics,pp.
317–323(2003)[7]Harlan,R.
M.
,Levine,D.
B.
,McClarigan,S.
:Thekheperarobotandthekrobotclass:aplatformforintroducingroboticsintheundergraduatecurriculum.
ACMSIGCSEBulletin33,105–109(2001)[8]Huang,A.
,Olson,E.
,Moore,D.
:LCM:Lightweightcommunicationsandmar-shalling.
In:IEEE/RSJInternationalConferenceonIntelligentRobotsandSys-tems(IROS),pp.
4057–4062(2010)[9]Migliavacca,M.
,Bonarini,A.
,Matteucci,M.
:RTCAN:areal-timeCAN-Buspro-tocolforroboticapplications.
In:2013InternationalConferenceonInformaticsinControl,AutomationandRobotics,ICINCO(2013)[10]Mondada,F.
,Bonani,M.
,Raemy,X.
,Pugh,J.
,Cianci,C.
,Klaptocz,A.
,Magne-nat,S.
,Zuerey,J.
-C.
,Floreano,D.
,Martinoli,A.
:Thee-puck,arobotdesignedforeducationinengineering.
In:Proceedingsofthe9thConferenceonAutonomousRobotSystemsandCompetitions,vol.
1,pp.
59–65(2009)[11]Quigley,M.
,Conley,K.
,Gerkey,B.
P.
,Faust,J.
,Foote,T.
,Leibs,J.
,Wheeler,R.
,Ng,A.
Y.
:ROS:anopen-sourcerobotoperatingsystem.
In:ICRAWorkshoponOpenSourceSoftware(2009)[12]Sirio,G.
D.
:ChibiOS/RTrealtimeoperatingsystem,http://www.
chibios.
org
Sharktech荷兰10G带宽的独立服务器月付319美元起,10Gbps共享带宽,不限制流量,自带5个IPv4,免费60Gbps的 DDoS防御,可加到100G防御。CPU内存HDD价格购买地址E3-1270v216G2T$319/月链接E3-1270v516G2T$329/月链接2*E5-2670v232G2T$389/月链接2*E5-2678v364G2T$409/月链接这里我们需要注意,默...
Megalayer 商家在开始看到有提供香港服务器、香港站群服务器的时候有介绍过,后来就一直没有怎么关注。但是前几天有看到网友使用到他们家的美国独立服务器问其如何的,但是我没有使用过就不好评论,这不前几天也有介绍到Megalayer美国独立服务器。以及我们也有看到商家有提供美国站群服务器和美国大带宽服务器产品,可选30M不限制流量CN2优化线路,以及100M不限制流量国际带宽线路。新年元旦后,Me...
GigsGigsCloud商家在之前介绍的还是比较多的,因为之前我一直有几台机器在使用,只是最近几年网站都陆续转型删除掉不少的网站和闲置域名,包括今年也都减少网站开始转型自媒体方向。GigsGigsCloud 商家产品还是比较有特色的,有提供香港、新加坡等亚洲机房的云服务器、VPS和独立服务器等。第一、新春优惠活动优惠码:CNY2022-15OFF截止到正月初二,我们可以使用上述优惠码在购买指定G...
批处理for为你推荐
proceduresns社交snsiprouteEigrp 的管理距离是多少啊企业信息查询系统官网怎么查企业信息是否在网上公示过sqlserver数据库SQL SERVER数据库是可以做什么用的?波音737起飞爆胎一般的客机的起飞速度是多少?支持http河南省全民健康信息平台建设指引(试行)客服电话赶集网客服电话是多少2828商机网千元能办厂?28商机网是真的吗?
域名主机管理系统 如何注销域名备案 免费域名跳转 cybermonday godaddy主机 webhosting 光棍节日志 好看的桌面背景图片 linux空间 卡巴斯基官方免费版 129邮箱 paypal注册教程 万网空间购买 789电视剧 新世界服务器 超级服务器 上海电信测速网站 秒杀品 中国linux 带宽测试 更多