ROBOWORKS-LOGO

ROBOWORKS Robofleet MULTI-AGENT ALGORITHMS

ROBOWORKS-Robofleet-MULTI-AGENT-ALGORITHMS-PRODUCT

fepetra arahana

  • Anaran'ny vokatra: ROBOWORKS
  • Dikan-teny: 20240501
  • Nomanin'i: Wayne Liu & Janette Lin
  • Daty: 1 Mey 2024

Product Information

ROBOWORKS dia rafitra multi-agent izay mamela ny fampiharana algorithms isan-karazany ho an'ny fandrindrana sy fifandraisana robot.

FAQs

F: Inona no tokony hataoko raha tsy afaka mifandray ho azy amin'ny Wifi ny robot?

A: Raha toa ka tsy afaka mifandray ho azy ny robot, andramo esorina sy avereno indray ny karatry ny tambajotra ary andramo mifandray indray.

FAMINTINANA

Ity antontan-taratasy ity dia manazava indrindra ny fampiasana ny fonosan'asa fananganana robot marobe antsoina hoe wheeltec_multi.

Mizara efatra ity antontan-taratasy ity:

  • Ny ampahany voalohany dia momba ny fampidirana ny fomba fananganana robot marobe;
  • ny ampahany faharoa dia manoritsoritra indrindra ny rafi-pifandraisana ROS marobe, anisan'izany ny fifandraisana amin'ny milina maro amin'ny fananganana ROS sy ny olana mety hitranga amin'ny fizotran'ny fifandraisana ROS;
  • ny ampahany fahatelo dia mamaritra indrindra ny dingana fiasan'ny multi-machine time synchronization;
  • ny ampahany fahefatra dia manazava ny fampiasana manokana ny fonosan'ny famoronana milina maro.

Ny tanjon'ity antontan-taratasy ity dia fampahafantarana ny rafitra robotika marobe ary ahafahan'ny mpampiasa manomboka haingana ny tetikasa fananganana robot marobe.

FAMPIDIRANA ALGORITHMA MULTI-AGENT

Algorithm fananganana multi-agent

Ity fonosana ROS ity dia manolotra olana mahazatra amin'ny mpiasa marobe amin'ny fanaraha-maso fiaraha-miasa mandritra ny fiara fitateram-bahoaka. Ity fampianarana ity dia mametraka fototra ho an'ny fampandrosoana ho avy amin'ity lohahevitra ity. Ny algorithm fanaraha-maso ny fananganana dia manondro algorithm iray izay mifehy ny mpiasa marobe mba hamoronana fananganana manokana hanatanterahana asa iray. Ny fiaraha-miasa dia manondro ny fiaraha-miasa eo amin'ny mpiasa maro mampiasa fifandraisana teritery iray mba hamitana asa iray. Raiso ho toy ny taloha ny drive formation multi-robotample, ny fiaraha-miasa dia midika fa ny robots maro dia mamorona fananganana tiana miaraka. Ny votoatiny dia fifandraisana matematika izay afa-po eo amin'ny toeran'ny robot tsirairay. Ny fomba fananganana dia mizara indrindra amin'ny fanaraha-maso ny fananganana afovoany sy ny fanaraha-maso ny fananganana fizarana. Ny fomba fanaraha-maso fananganana afovoany dia ahitana indrindra ny fomba firafitry ny virtoaly, ny fomba teorian'ny sary, ary ny fomba vinavina modely. Ny fomba fanaraha-maso ny fananganana zaraina dia ahitana fomba fanaraha-maso mpitarika, fomba mifototra amin'ny fitondran-tena ary fomba rafitra virtoaly.
Ity fonosana ROS ity dia mampihatra ny fomba mpanaraka mpitarika amin'ny fomba fanaraha-maso ny fananganana fizarana mba hanatanterahana ny fiarandalamby fananganana robot. Ny robot iray ao amin'ny fananganana dia voatondro ho mpitarika, ary ny robot hafa dia voatendry ho andevo hanaraka ny mpitarika. Ny algorithm dia mampiasa ny làlam-pihetsiketsehan'ny robot mitarika mba hametrahana ny koordinate ho arahin'ireto robot manaraka ireto miaraka amin'ny lalana sy hafainganam-pandeha. Amin'ny alàlan'ny fanitsiana ny fivilian-toerana avy amin'ny fandrindrana fanaraha-maso, ny mpanara-dia amin'ny farany dia hampihena ny fivilian-dàlana eo amin'ny mpanara-dia sy ny fandrindrana fanaraha-maso andrasana ho aotra mba hahatratrarana ny tanjon'ny fiara fitateram-bahoaka. Amin'izany fomba izany, ny algorithm dia somary sarotra kokoa.

Algorithm fisorohana sakana

Ny algorithm amin'ny fisorohana ny sakana mahazatra dia ny fomba artifisialy mety. Ny fihetsiky ny robot amin'ny tontolo ara-batana dia raisina ho toy ny hetsika amin'ny sehatry ny hery artifisialy virtoaly. Ny sakana akaiky indrindra dia fantatry ny LiDAR. Ny sakana dia manome sahan-kery manetriketrika mba hamoahana fandroahana amin'ny robot ary ny teboka kendrena dia manome sahan'ny gravitational hamokatra hery misintona ny robot. Amin'izany fomba izany dia mifehy ny fihetsiky ny robot eo ambanin'ny hetsika mitambatra amin'ny fandroahana sy ny fisarihana.
Ity fonosana ROS ity dia fanatsarana mifototra amin'ny fomba mety amin'ny sehatra artifisialy. Voalohany, ny algorithm formation dia manisa ny hafainganam-pandehan'ny linear sy angular an'ny mpanaraka Slave. Avy eo dia mampitombo na mampihena ny hafainganam-pandeha linear sy angular araka ny fepetra fisorohana sakana. Rehefa akaiky kokoa ny elanelana misy eo amin'ny mpanara-dia ny Andevo sy ny sakana, dia lehibe kokoa ny hery fandroahana ny sakana amin'ny mpanara-dia Andevo. Mandritra izany fotoana izany, ny fiovan'ny velocity linear sy ny fiovaovan'ny velocity angular dia lehibe kokoa. Rehefa akaiky kokoa ny sakantsakana eo anoloan'ny mpanara-dia Andevo dia mihamitombo ny fandroahana ny sakana amin'ny mpanara-dia Andevo (ny fandroahana eo aloha no lehibe indrindra ary ny fandroahana an-daniny no kely indrindra). Vokatr'izany, ny fiovaovan'ny velocity linear sy ny velocity angular dia lehibe kokoa. Amin'ny alàlan'ny fomba artifisialy mety ho an'ny saha, dia manatsara ny vahaolana rehefa afaka mijanona eo anoloan'ny sakana ny robot iray. Izany dia manampy amin'ny fisorohana ny sakana tsara kokoa.

FAMPIANARANA FIKAMBANANA MULTI-AGENT

Ny fifandraisana multi-agent dia iray amin'ireo dingana lehibe amin'ny famitana ny fananganana robot marobe. Rehefa tsy fantatra ny toerana misy ny robots maro, dia mila mifampizara ny mombamomba ny tsirairay amin'ny alàlan'ny fifandraisana ireo robots mba hanamora ny fametrahana fifandraisana. Ny maritrano sy ny fifandraisana amin'ny tambajotra nozaraina ROS dia tena mahery. Tsy mety amin'ny fifandraisana interprocess ihany fa koa amin'ny fifandraisana eo amin'ny fitaovana samihafa. Amin'ny alàlan'ny fifandraisana amin'ny tambajotra, ny nodes rehetra dia afaka mandeha amin'ny solosaina rehetra. Ny asa lehibe toy ny fanodinana angon-drakitra dia vita amin'ny lafiny mpampiantrano. Ny milina andevo dia tompon'andraikitra amin'ny fandraisana ny angon-drakitra momba ny tontolo iainana nangonin'ny sensor isan-karazany. Ny mpampiantrano eto dia ny mpitantana izay mitantana ny node Master ao amin'ny ROS. Ny rafi-pifandraisana misy amin'izao fotoana izao dia amin'ny alàlan'ny mpitantana node sy mpitantana ny mari-pamantarana mba hikarakarana ny fifandraisana amin'ny robots marobe.ROBOWORKS-Robofleet-MULTI-AGENT-ALGORITHMS-FIG- (1)

Ny dingana amin'ny fametrahana ny fifandraisana multi-agent

  • Mametraha ROS Controls amin'ny tambajotra iray ihany
    • Misy fomba 2 hananganana Master/Slave ROS Controls eo ambanin'ny tambajotra iray ihany.

Safidy 1:

Ny Master Host dia mamorona wifi eo an-toerana amin'ny alàlan'ny fampandehanana ny mpitantana node Master. Amin'ny ankapobeny, ny iray amin'ireo robot izay voatondro ho tompon'andraikitra no mamorona ity tambazotra wifi ity. Misy robots na milina virtoaly hafa miditra amin'ity tambajotra wifi ity ho andevo.

Safidy 2:

Ny tambajotra wifi eo an-toerana dia omen'ny router an'ny antoko fahatelo ho foibe fampitana vaovao. Ny robots rehetra dia mifandray amin'ny router iray ihany. Ny router dia azo ampiasaina tsy misy fifandraisana Internet. Misafidiana iray amin'ireo robots ho tompon'andraikitra ary tanteraho ny mpitantana node Master. Ny robots hafa dia voatondro ho andevo ary mitantana ny mpitantana node master avy amin'ny tompony.
Miankina amin'ny fepetra takian'ny tetikasanao ny fanapahan-kevitra amin'ny safidy hofidiana. Raha toa ka tsy be dia be ny isan'ny robots mila mifandray, dia soso-kevitra ny Option 1 satria mitsitsy vola ary mora apetraka. Rehefa be dia be ny isan'ny robots dia soso-kevitra ny safidy 2. Mety hiteraka fahatarana sy fahatapahan'ny tamba-jotra mora foana ny teritery amin'ny herin'ny informatika an'ny ROS master control sy voafetra ny bandwidth onboard wifi. Ny router dia afaka mamaha mora foana ireo olana ireo. Mariho fa rehefa manao fifandraisana multi-agent, raha ampiasaina ho andevo ROS ny milina virtoaly, dia mila apetraka amin'ny mode bridge ny fomba fiasany.

Ampifanaraho ny fari-piainan'ny Master/Slave

Rehefa ao amin'ny tambajotra iray ihany ny tompon'ny ROS rehetra, dia mila apetraka ny fari-piainan'ny tontolo iainana ho an'ny serasera maro. Ity fari-piainan'ny tontolo iainana ity dia amboarina ao amin'ny rakitra .bashrc ao amin'ny lahatahiry lehibe. Alefaso ny baiko gedit ~/.bashrc hanombohana azy. Mariho fa na ny .bashrc fisie an'ny tompony sy ny andevo ao amin'ny fifandraisana multi-agent dia mila amboarina. Ny tokony hovana dia ny adiresy IP amin'ny faran'ny rakitra. Ny andalana roa dia ROS_MASTER_URI sy ROS_HOSTNAME, araka ny aseho amin'ny sary 2-1-4. Ny ROS_MASTER_URI sy ROS_HOSTNAME an'ny mpampiantrano ROS dia samy IP eo an-toerana. Ny ROS_MASTER_URI ao amin'ny rakitra ROS slave .bashrc dia mila ovaina amin'ny adiresy IP an'ny mpampiantrano raha mijanona ho adiresy IP eo an-toerana ny ROS_HOSTNAME.ROBOWORKS-Robofleet-MULTI-AGENT-ALGORITHMS-FIG- (2)

Ny fifandraisana amin'ny milina marobe ROS dia tsy voafehin'ny famoahana ROS. Amin'ny dingan'ny fifandraisana amin'ny milina maro dia tokony ho fantatry ny olona ireto manaraka ireto:

  1. Ny fampandehanana ny programa andevo ROS dia miankina amin'ny programa master ROS amin'ny fitaovana master ROS. Ny programa master ROS dia tsy maintsy manomboka voalohany amin'ny fitaovana master alohan'ny hanatanterahana ny programa andevo amin'ny fitaovana andevo.
  2. Ny adiresy IP an'ny milina tompo sy andevo amin'ny fifandraisana amin'ny milina maro dia mila ao anaty tambajotra iray ihany. Midika izany fa eo ambanin'ny tambajotra iray ihany ny adiresy IP sy ny saron-tava subnet.
  3. ROS_HOSTNAME ao amin'ny fisie fanamafisana ny tontolo iainana .bashrc dia tsy soso-kevitra hampiasa localhost. Aroso ny mampiasa adiresy IP manokana.
  4. Raha toa ka tsy voapetraka tsara ny adiresy IP andevo, dia mbola afaka miditra amin'ny tompon'ny ROS ny fitaovana andevo nefa tsy afaka mampiditra fampahalalana momba ny fanaraha-maso.
  5. Raha ny milina virtoaly dia mandray anjara amin'ny fifandraisana multi-agent, ny fomba tambajotra dia mila apetraka amin'ny fomba tetezana. Ny IP static dia tsy azo voafantina ho an'ny fifandraisana amin'ny tambajotra.
  6. Tsy afaka mifandray amin'ny milina maro view na misoratra anarana amin'ny lohahevitra momba ny karazana angona hafatra izay tsy misy eo an-toerana.
  7. Azonao atao ny mampiasa ny demo simulation Little Turtle hanamarina raha mahomby ny fifandraisana eo amin'ny robots:
    • a. Mialà amin'ny tompony
      • rescore #manomboka serivisy ROS
      • sokatra rostrum turtlesim_node #manomboka interface tsara sokatra
    • b. Mialà amin'ny andevo
      • avereno averina ny sokatra turtle_teleop_key #manomboka ny node fanaraha-maso kitendry ho an'ny sokatra

Raha azonao atao ny manodinkodina ny hetsiky ny sokatra avy amin'ny klavier eo amin'ny andevo, midika izany fa ny fifandraisana amin'ny tompony/andevo dia tafaorina tsara.

Fifandraisana Wi-Fi mandeha ho azy ao amin'ny ROS

Ny fomba fiasa etsy ambany dia manazava ny fomba amboary ny robot mba hifandray ho azy amin'ny tambajotra mpampiantrano na tamba-jotra router.

Fametrahana fifandraisana Wi-Fi mandeha ho azy ho an'ny Jetson Nano

  1. Ampifandraiso amin'ny fitaovana lavitra VNC na mivantana amin'ny efijery solosaina ny Jetson Nano. Kitiho ny kisary wifi eo amin'ny zoro havanana ambony ary tsindrio ny "Edit Connections.."ROBOWORKS-Robofleet-MULTI-AGENT-ALGORITHMS-FIG- (3)
  2. Tsindrio ny + bokotra ao amin'ny Network Connections:ROBOWORKS-Robofleet-MULTI-AGENT-ALGORITHMS-FIG- (4)
  3. Eo ambanin'ny varavarankely "Choose a Connection Type", tsindrio ny menio midina ary tsindrio ny bokotra "Create ...":ROBOWORKS-Robofleet-MULTI-AGENT-ALGORITHMS-FIG- (5)
  4. Ao amin'ny Control Panel, tsindrio Wifi safidy. Ampidiro ny anarana Wifi hifandraisana ao amin'ny saha "Connection Name" sy SSID. Safidio ny "Client" ao amin'ny menu dropdown "Mode" ary safidio ny "wlan0" ao amin'ny menio midina "Device".ROBOWORKS-Robofleet-MULTI-AGENT-ALGORITHMS-FIG- (6)
  5. Ao amin'ny Control Panel, tsindrio ny safidy "General" ary jereo ny "Mampifandray ho azy amin'ity tambajotra ity ...". Apetraho amin'ny 1 ny laharam-pahamehana amin'ny fifandraisana amin'ny safidy "Ny laharam-pahamehana ho an'ny fampahavitrihana mandeha ho azy". Jereo ny safidy "Afaka mifandray amin'ity tambajotra ity ny mpampiasa rehetra". Rehefa apetraka amin'ny 0 ny safidy ao amin'ny “Loharano fifandraisana ho an'ny fampahavitrihana mandeha ho azy” ho an'ny wifi hafa dia midika izany fa ity no tamba-jotra wifi tiana taloha.ROBOWORKS-Robofleet-MULTI-AGENT-ALGORITHMS-FIG- (7)
  6. Tsindrio ny safidy "Wi-Fi Security" ao amin'ny Control Panel. Safidio ny "WPA & WPA2 Personal" ao amin'ny sehatra "Security". Avy eo ampidiro ny tenimiafina Wifi ao amin'ny saha "Password".ROBOWORKS-Robofleet-MULTI-AGENT-ALGORITHMS-FIG- (8)

Fanamarihana: Raha toa ka tsy afaka mifandray ho azy amin'ny tamba-jotra wifi ilay robot aorian'ny fanombohana rehefa apetraka amin'ny 0 ny laharam-pahamehana wifi, dia mety ho olana amin'ny famantaran'ny Wifi malemy no mahatonga izany. Mba hialana amin'io olana io dia azonao atao ny misafidy ny hamafa ny safidy wifi rehetra efa nifandray taloha. Tazony ihany ny tamba-jotra wifi noforonin'ny mpampiantrano na ny router. Kitiho ny safidy "Settings IPv4" ao amin'ny tontolon'ny fanaraha-maso ny tambajotra. Safidio ny safidy "Manual" ao amin'ny saha "Method". Avy eo tsindrio "Add", fenoy ny adiresy IP an'ny milina andevo ao amin'ny saha "Address". Fenoy ny "24" ao amin'ny saha "Netmask". Fenoy ny fizarana tambajotra IP ao amin'ny "Gateway". Hanova ny isa telo farany amin'ny fizarana tambajotra IP ho "1". Ny tanjona lehibe amin'ity dingana ity dia ny manamboatra ny adiresy IP. Rehefa vita sambany izany dia tsy hiova ny adiresy IP rehefa mifandray amin'ny WIFI iray ihany.ROBOWORKS-Robofleet-MULTI-AGENT-ALGORITHMS-FIG- (9)

Rehefa vita ny fanovana rehetra dia tsindrio ny "save" mba hitahiry ireo fanovana. Rehefa vita ny fitahirizana, dia hifandray ho azy amin'ny tambajotran'ny mpampiantrano na ny router ny robot rehefa mandeha.

Fanamarihana:

  1. Ny adiresy IP napetraka eto dia tokony hitovy amin'ny adiresy IP napetraka ao amin'ny rakitra .bashrc ao amin'ny fizarana 2.1.
  2. Ny adiresy IP an'ny tompony sy ny andevo tsirairay dia tsy maintsy miavaka.
  3. Ny adiresy IP master sy slave dia tokony ho ao amin'ny sehatra tambajotra iray ihany.
  4. Tsy maintsy miandry ny mpampiantrano na ny router handefa famantarana WiFi ianao alohan'ny ahafahan'ny robot andevo alefa sy mifandray ho azy amin'ny tambajotra WiFi.
  5. Rehefa vita ny fandrindrana, raha toa ka tsy afaka mifandray ho azy amin'ny WiFi ny robot rehefa alefa izy dia apetaho sy esory ny carte de network ary andramo mampifandray indray.

Fametrahana fifandraisana Wi-Fi mandeha ho azy ho an'ny Raspberry Pi

Ny fomba fiasa ho an'ny Raspberry Pi dia mitovy amin'ny Jetson Nano.

Fametrahana fifandraisana Wi-Fi mandeha ho azy ho an'ny Jetson TX1

Ny fametrahana ao amin'ny Jetson TX1 dia saika mitovy amin'ny ao amin'ny Jetson Nano afa-tsy ny Jetson TX1 dia tokony hisafidy ny fitaovana "wlan1" ao amin'ny "Device" ao amin'ny tontonana fanaraha-maso ny tambajotra.ROBOWORKS-Robofleet-MULTI-AGENT-ALGORITHMS-FIG- (10)

SETUP SYNCHRONIZATION MULTI-AGENT

Ao amin'ny tetik'asa fananganana multi-agent, dingana iray manan-danja ny fandrindrana ny fotoana synchronization multi-agent. Amin'ny dingan'ny fananganana dia maro ny olana hitranga noho ny fotoanan'ny rafitra asynchronous an'ny robot tsirairay. Mizara ho toe-javatra roa ny fampifanarahana ny fotoana maromaro, izany hoe ny toe-javatra iarahan'ny robot master sy andevo amin'ny tambajotra ary ny toe-javatra izay tsy ahafahan'izy roa misaraka amin'ny tambajotra.

Fampifandraisana tambajotra master/slave mahomby

Aorian'ny fametrahana ny fifandraisana multi-agent, raha toa ka afaka mifandray tsara amin'ny tambajotra ny milina tompo sy andevo, dia hampifanaraka ho azy ny fotoanan'ny tambajotra izy ireo. Amin'ity tranga ity, tsy misy hetsika fanampiny ilaina mba hahazoana ny fampifanarahana ny fotoana.

Famahana olana ny fahatapahan'ny tambajotra

Aorian'ny fametrahana ny fifandraisana multi-agent, raha tsy afaka mifandray tsara amin'ny tambajotra ny fitaovana master sy slave, dia ilaina ny mampifanaraka ny fotoana. Hampiasa ny baiko daty isika mba hamitana ny fandrindrana ny ora.

Voalohany, apetraho ny fitaovana terminator. Avy amin'ny fitaovana terminator, ampiasao ny fitaovana manasaraka ny varavarankely mba hametrahana ny terminal fanaraha-maso ny tompony sy ny andevo ao amin'ny varavarankelin'ny terminal mitovy (tsindrio havanana mba hametrahana varavarankely fisarahana, ary midira ao amin'ny milina master sy slave amin'ny ssh amin'ny varavarankely samihafa) .

  • sudo apt-get install terminator # Download terminator hanasaraka ny varavarankelin'ny terminal

Tsindrio ny bokotra eo ankavia ambony, safidio ny safidy [Broadcast to all]/[Broadcast all], ary ampidiro ity baiko manaraka ity. Avy eo dia ampiasao ny fitaovana terminator mba hametrahana fotoana mitovy amin'ny tompony sy ny andevo.ROBOWORKS-Robofleet-MULTI-AGENT-ALGORITHMS-FIG- (11)

  • sudo date -s "2022-01-30 15:15:00" # Fanomanana fotoana amin'ny tanana

MULTI-AGENT ROS PACKAGE

ROS Package Introduction

Mametraha anarana andevo

Ao amin'ny fonosana fampiasa wheeltec_multi dia ilaina ny mametraka anarana tokana ho an'ny robot andevo tsirairay mba hisorohana ny fahadisoana. Ho an'ny example, No. 1 ho an'ny andevo1 sy ny No. 2 ho an'ny andevo2, sns. Ny tanjona amin'ny fametrahana anarana samihafa dia ny fanakambanana ireo nodes mandeha ary manavaka azy ireo amin'ny anaran'ny toerana samihafa. Ho an'ny example, ny lohahevitry ny radara amin'ny andevo 1 dia/slave1/scan, ary ny node LiDAR an'ny andevo 1 dia/slave1/laser.

Mametraha koordinate andevo

Ny fonosana wheeltec_multi dia afaka manatanteraka fananganana manokana. Rehefa ilaina ny fananganana samihafa, ovao fotsiny ny koordinate tiana ho an'ny robots andevo. Slave_x sy slave_y dia ny x sy y koordinate amin'ny andevo miaraka amin'ny tompony ho teboka fanondroana tany am-boalohany. Ny eo anoloan'ny tompony dia ny lafy tsaran'ny x mandrindra, ary ny ilany havia dia ny lafy tsaran'ny y mandrindra. Rehefa vita ny fametrahana dia avoaka ny TF coordinate slave1 ho mpandrindra andrasana amin'ny andevo. Raha misy tompo iray sy andevo roa, dia azo apetraka ireto formation manaraka ireto:

  1. Famoronana mitsivalana: Azonao atao ny mametraka ny koordinate amin'ny andevo eo ankavia amin'ny slave_x:0, slave_y: 0.8, ary ny koordinate amin'ny andevo eo ankavanana amin'ny slave_x:0, slave_y:-0.8.
  2. Famoronana tsanganana: Ny kôrdinalin'ny andevo iray dia azo apetraka amin'ny: slave_x:-0.8, slave_y:0, ary ny coordinate an'ny andevo hafa dia azo apetraka amin'ny: slave_x:-1.8, slave_y:0.
  3. Fiforonan'ny telozoro: Ny koordinate amin'ny andevo iray dia azo apetraka amin'ny: slave_x:-0.8, slave_y: 0.8, ary ny coordinate an'ny andevo hafa dia azo apetraka amin'ny: slave_x:-0.8, slave_y:-0.8.

Ny fananganana hafa dia azo amboarina araka izay ilaina.

Fanamarihana:

  • Ny elanelana atolotra eo amin'ireo robots roa dia napetraka amin'ny 0.8, ary tsy tokony ho ambany noho ny 0.6. Ny elanelana misy eo amin'ny andevo sy ny tompony dia asaina apetraka eo ambanin'ny 2.0. Arakaraka ny halaviran'ny tompony no lehibe kokoa ny hafainganam-pandehan'ny andevo rehefa mihodina ny tompony. Noho ny famerana ny hafainganam-pandeha ambony indrindra dia hivily ny hafainganan'ny andevo raha tsy mahafeno ny fepetra takiana. Ny fananganana robot dia ho lasa korontana.

Initialization ny toerana andevo

  1. Ny toerana voalohany amin'ny andevo dia eo amin'ny koordinate andrasana amin'ny alàlan'ny default. Alohan'ny hampandehanana ny programa dia apetraho eo akaikin'ny fandrindrana andrasana hamita ny fanombohana ny robot andevo. Ity fiasa ity dia ampiharina amin'ny alàlan'ny node pose_setter ao amin'ny rakitra antsoina hoe turn_on_wheeltec_robot.manomboka ao amin'ny fonosana wheeltec_multi, araka ny aseho amin'ny sary 4-1-3.ROBOWORKS-Robofleet-MULTI-AGENT-ALGORITHMS-FIG- (12)

Raha te-hanamboatra ny toerana voalohany amin'ny andevo ny mpampiasa dia mila mametraka ny sanda slave_x sy slave_y fotsiny izy araka ny aseho amin'ny sary 4-1-4 ao amin'ny wheeltec_slave.launch. Ny soatoavina slave_x sy slave_y dia halefa amin'ny turn_on_wheeltec_robot.launch ary omena amin'ny node pose_setter. Apetraho amin'ny toerana mahazatra fotsiny ilay robot alohan'ny hampandehanana ny programa.ROBOWORKS-Robofleet-MULTI-AGENT-ALGORITHMS-FIG- (13)

Fametrahana toerana

Amin'ny fananganana multi-agent, ny olana voalohany tokony hovahana dia ny fametrahana ny tompony sy ny andevo. Hanamboatra sari-tany 2D aloha ny tompony. Aorian'ny famoronana sy fitehirizana ny sarintany, tanteraho ny fonosana fitetezana 2D ary ampiasao ny algorithm fametrahan'ny Monte Carlo adaptive (fametrahana amcl) ao amin'ny fonosana navigateur 2D mba hamboarina ny toeran'ny tompony. Koa satria ny tompony sy ny andevo dia ao amin'ny tambajotra iray ary mizara ny mpitantana node iray ihany, ny tompony dia namoaka ny sarintany avy amin'ny fonosana navigateur 2D, ny andevo rehetra dia afaka mampiasa sarintany iray ihany eo ambanin'ny mpitantana node iray ihany. Noho izany, ny andevo dia tsy mila mamorona sarintany. Ao amin'ny wheeltec_slave.launch, mandehana Monte Carlo positioning (amcl positioning), ny andevo dia afaka manamboatra ny toerana misy azy amin'ny fampiasana ny sarintany noforonin'ny tompony.ROBOWORKS-Robofleet-MULTI-AGENT-ALGORITHMS-FIG- (14)

Ny fomba hamoronana formation sy fitazonana formation

Ao amin'ny dingan'ny fananganana hetsika, ny hetsika master dia azo fehezin'ny Rviz, klavier, fanaraha-maso lavitra ary fomba hafa. Ny andevo dia manao kajy ny hafainganam-pandehany amin'ny alàlan'ny node slave_tf_listener mba hifehezana ny hetsika sy hanatratrarana ny tanjon'ny fananganana. Ny node slave_tf_listener dia mametra ny hafainganam-pandehan'ny andevo mba hisorohana ny hafainganam-pandeha tafahoatra amin'ny alàlan'ny kajy node, izay hiteraka fiatraikany maromaro. Ny sanda manokana dia azo ovaina ao amin'ny wheeltec_slave.launch.ROBOWORKS-Robofleet-MULTI-AGENT-ALGORITHMS-FIG- (15)

Ny paramètre mifandraika amin'ny algorithm formation dia toy izao manaraka izao: ROBOWORKS-Robofleet-MULTI-AGENT-ALGORITHMS-FIG- (16)

Fampahalalana momba ny fisorohana ny sakana

Amin'ny fananganana multi-agent, ny tompony dia afaka mampiasa ny node move_base hamita ny fisorohana ny sakana. Na izany aza, ny fanombohana ny andevo dia tsy mampiasa ny node move_base. Amin'izao fotoana izao, ny node multi_avoidance dia mila antsoina amin'ny programa andevo. Ny node fisorohana sakana dia alefa amin'ny alàlan'ny default ao amin'ny fonosana. Raha ilaina, ny fisorohana dia azo apetraka amin'ny "diso" mba hanesorana ny node fisorohana sakana. ROBOWORKS-Robofleet-MULTI-AGENT-ALGORITHMS-FIG- (17)

Ny mari-pamantarana manan-danja sasany amin'ny node fisorohana sakana dia aseho amin'ny sary etsy ambany, izay ny halavirana_safe dia ny fetran'ny halaviran-dalana azo antoka, ary ny halavirana_doza dia ny fetran'ny halavirana mampidi-doza. Rehefa ao anatin'ny halavirana azo antoka sy halaviran-doza ilay sakana, dia manitsy ny toerany ny andevo mba hialana amin'ilay sakana. Rehefa atahorana ny sakana, dia handroaka ilay sakana ilay andevo.ROBOWORKS-Robofleet-MULTI-AGENT-ALGORITHMS-FIG- (18)

Fomba fiasa

Ampidiro ny baiko famonoana

Fiomanana alohan'ny hanombohana fananganana multi-agent:

  • Mifandray amin'ny tambajotra iray ihany ny tompony sy ny andevo ary manangana fifandraisana amin'ny multi-agent tsara
  • Manangana sarintany 2D mialoha ny tompony ary mamonjy azy
  • Apetraka eo amin'ny toerana fiaingan'ny sarintany ny tompony, ary ny andevo dia apetraka eo akaikin'ny toerana fanombohana (ny toerana fananganana andevo default)
  • Aorian'ny fidirana amin'ny Jetson Nano/Raspberry Pi avy lavitra dia manaova fampifanarahana ny fotoana.

sudo date -s "2022-04-01 15:15:00"

  • Dingana 1: Sokafy sarintany 2D avy amin'ny tompony.

roslaunch turn_on_wheeltec_robot navigation.launch

  • Dingana 2: Mandehana ny programa fananganana avy amin'ny andevo rehetra.

roslaunch wheeltec_multi wheeltec_slave.launch

  • Dingana 3: Sokafy ny node fanaraha-maso fitendry avy amin'ny master na ampiasao ny joystick mba hifehezana lavitra ny hetsika master.

avereno ny wheeltec_robot_rc keyboard_teleop.launch

  • Dingana 4: (Tsy voatery) Jereo ny fihetsiky ny robot avy amin'i Rviz.

rviz

Fanamarihana: 

  1. Ataovy azo antoka fa vita ny asa fampifanarahana ny fotoana alohan'ny hanatanterahana ny programa.
  2. Rehefa mifehy ny tompon'ny fananganana multi-agent dia tsy tokony ho haingana loatra ny hafainganam-pandehan'ny angular. Ny hafainganam-pandehan'ny linear soso-kevitra dia 0.2m / s, ny haavon'ny hafainganam-pandeha ambony ambany 0.3rad / s. Rehefa mihodikodina ny tompony, arakaraky ny halaviran'ny andevo amin'ny tompony no ilaina ny hafainganam-pandehan'ny tsipika. Noho ny fetran'ny hafainganam-pandehan'ny linear sy ny hafainganam-pandehan'ny angular ao amin'ny fonosana, rehefa tsy afaka mahatratra ny hafainganam-pandeha ilaina ny fiara andevo, dia hikorontana ny fananganana. Amin'ny ankapobeny, ny hafainganam-pandehan'ny linear tafahoatra dia mety hanimba mora foana ny robot.
  3. Rehefa mihoatra ny iray ny isan'ny andevo, noho ny fetran'ny bandwidth an'ny mpampiantrano ROS ao anaty sambo, dia mora ny miteraka fahatarana lehibe sy fahatapahan'ny fifandraisana amin'ny masoivoho maro. Ny fampiasana ny router dia afaka mamaha tsara ity olana ity.
  4. Ny hazo TF amin'ny fananganana robot maro (andevo 2) dia: rqt_tf_tree
  5. Ny kisary fifandraisana node amin'ny fananganana robot-robot (andevo 2) dia: rqt_graph

Documents / Loharano

ROBOWORKS Robofleet MULTI-AGENT ALGORITHMS [pdf] Boky Torolàlana
Robofleet Multi Agent Algorithm, Robofleet, Multi Agent Algorithm, Agent Algorithm, Algoritma

References

Mametraha hevitra

Tsy havoaka ny adiresy mailakao. Voamarika ireo saha ilaina *