Робат ROBOWORKS Robofleet Orin Nano x3 ROS
РЭЗЮМЭ
У гэтым дакуменце галоўным чынам тлумачыцца выкарыстанне пакета функцый фармавання некалькіх робатаў пад назвай wheeltec_multi.
Гэты дакумент падзелены на чатыры часткі:
- Першая частка ў асноўным датычыцца ўвядзення метаду фарміравання некалькіх робатаў;
- другая частка ў асноўным апісвае налады шматмашыннай сувязі ROS, уключаючы пабудову ROS шматмашыннай сувязі і праблемы, якія могуць узнікнуць у працэсе сувязі ROS;
- трэцяя частка ў асноўным апісвае этапы працы шматмашыннай сінхранізацыі часу;
- чацвёртая частка выкладае канкрэтнае выкарыстанне пакета функцый шматмашыннага фарміравання.
Мэтай гэтага дакумента з'яўляецца азнаямленне з мультыагентнай рабатызаванай сістэмай і дазваляе карыстальніку хутка запусціць праект фарміравання некалькіх робатаў.
УВОДЗІНЫ Ў МУЛЬТЫ-АГЕНТНЫЯ АЛГАРЫТМЫ
Мультыагентныя алгарытмы фарміравання
Гэты пакет ROS прадстаўляе тыповую праблему мультыагентаў у сумесным кіраванні падчас фарміравання. Гэты падручнік закладвае аснову для будучага развіцця гэтай тэмы. Алгарытм кіравання фармаваннем адносіцца да алгарытму, які кіруе некалькімі агентамі для фарміравання пэўнага фармавання для выканання задачы. Супрацоўніцтва адносіцца да супрацоўніцтва паміж некалькімі агентамі з выкарыстаннем пэўных абмежавальных адносін для выканання задачы. Вазьміце ў якасці прыкладу прывад фарміравання некалькіх робатаўample, супрацоўніцтва азначае, што некалькі робатаў разам утвараюць жаданую фармацыю. Яе сутнасць у тым, што паміж пазіцыямі кожнага робата выконваецца пэўная матэматычная залежнасць. Метады фарміравання ў асноўным дзеляцца на цэнтралізаванае кіраванне фарміраваннем і размеркаванае кіраванне фарміраваннем. Цэнтралізаваныя метады кантролю фарміравання ў асноўным ўключаюць метад віртуальнай структуры, метад графічнай тэорыі і метад прагназавання мадэлі. Метады кіравання размеркаванымі фарміраваннямі ў асноўным ўключаюць метад лідэра-паслядоўніка, метад, заснаваны на паводзінах і метад віртуальнай структуры.
Гэты пакет ROS прымяняе метад лідэра-паслядоўніка ў размеркаваным метадзе кіравання фармаваннем для выканання прывада фармавання з некалькімі робатамі. Адзін робат у страі прызначаны лідэрам, а іншыя робаты прызначаны рабамі, каб ісці за лідэрам. Алгарытм выкарыстоўвае траекторыю руху вядучага робата, каб задаць каардынаты, якія будуць адсочвацца наступнымі робатамі з пэўным напрамкам і хуткасцю. Шляхам карэкціроўкі адхіленняў пазіцыі ад каардынат сачэння, якія кіруюцца, у канчатковым выніку зменшыць адхіленне паміж каардынатамі сачэння і чаканымі каардынатамі сачэння да нуля, каб дасягнуць мэтаў фармавання. Такім чынам, алгарытм адносна менш складаны.
Алгарытмы абыходу перашкод
Распаўсюджаным алгарытмам абыходу перашкод з'яўляецца метад штучнага патэнцыяльнага поля. Рух робата ў фізічным асяроддзі разглядаецца як рух у віртуальным штучным сілавым полі. Бліжэйшую перашкоду вызначае LiDAR. Перашкода стварае поле сілы адштурхвання для стварэння сілы адштурхвання робата, а мэтавая кропка забяспечвае гравітацыйнае поле для стварэння сілы прыцягнення да робата. Такім чынам, ён кіруе рухам робата пад сумесным дзеяннем адштурхвання і прыцягнення.
Гэты пакет ROS з'яўляецца паляпшэннем, заснаваным на метадзе штучнага патэнцыяльнага поля. Па-першае, алгарытм фарміравання разлічвае лінейную і вуглавую хуткасць падпарадкаванага рычага. Затым ён павялічвае або памяншае лінейную і вуглавую хуткасць у адпаведнасці з патрабаваннямі да пазбягання перашкод. Калі адлегласць паміж падпарадкаваным пераследчыкам і перашкодай бліжэй, сіла адштурхвання перашкоды да падпарадкаванага пераследніка большая. У той жа час змяненне лінейнай хуткасці і варыяцыі вуглавой хуткасці больш. Калі перашкода набліжаецца да пярэдняй часткі падпарадкаванага, адштурхванне перашкоды ад падпарадкаванага становіцца большым (пярэдняе адштурхванне найбольшае, а бакавое адштурхванне найменшае). У выніку варыяцыі лінейнай хуткасці і вуглавой хуткасці больш. З дапамогай метаду штучнага патэнцыяльнага поля ён паляпшае рашэнне
калі робат мог перастаць рэагаваць перад перашкодай. Гэта дапамагае лепш пазбягаць перашкод.
НАЛАДКА МУЛЬТЫ-АГЕНТНАЙ СУВЯЗІ
Мультыагентная камунікацыя - адзін з ключавых крокаў для завяршэння фарміравання некалькіх робатаў. Калі адноснае размяшчэнне некалькіх робатаў невядомае, робатам неабходна абменьвацца інфармацыяй адзін пра аднаго праз сувязь, каб палегчыць усталяванне злучэнняў. Размеркаваная архітэктура ROS і сеткавая сувязь вельмі магутныя. Гэта зручна не толькі для сувязі паміж працэсамі, але і для сувязі паміж рознымі прыладамі. Праз сеткавую сувязь усе вузлы могуць працаваць на любым кампутары. Асноўныя задачы, такія як апрацоўка даных, выконваюцца на баку гаспадара. Падпарадкаваныя машыны адказваюць за атрыманне дадзеных аб навакольным асяроддзі, сабраных рознымі датчыкамі. Хост тут - гэта менеджэр, які кіруе галоўным вузлом у ROS. Цяперашняя мультыагентная структура сувязі ажыццяўляецца праз дыспетчар вузлоў і менеджэр параметраў для апрацоўкі сувязі паміж некалькімі робатамі.
Крокі для наладжвання мультыагентнай сувязі
Наладзьце ROS Controls у той жа сетцы
Ёсць 2 спосабы наладжвання галоўных/падпарадкаваных элементаў кіравання ROS у адной сетцы.
Варыянт 1:
Галоўны хост стварае лакальны Wi-Fi, запускаючы менеджэр галоўнага вузла. Як правіла, адзін з робатаў, прызначаны майстрам, стварае гэтую сетку Wi-Fi. Іншыя робаты або віртуальныя машыны далучаюцца да гэтай сеткі Wi-Fi у якасці падпарадкаваных.
Варыянты 2:
Лакальная сетка Wi-Fi забяспечваецца маршрутызатарам трэцяга боку ў якасці цэнтра перадачы інфармацыі. Усе робаты падлучаныя да аднаго маршрутызатара. Маршрутызатар таксама можна выкарыстоўваць без падлучэння да інтэрнэту. Выберыце аднаго з робатаў у якасці галоўнага і запусціце дыспетчар галоўных вузлоў. Астатнія робаты прызначаюцца як падпарадкаваныя і запускаюць менеджэр галоўнага вузла ад галоўнага.
Рашэнне аб тым, які варыянт выбраць, залежыць ад патрабаванняў вашага праекта. Калі колькасць робатаў, якія павінны мець зносіны, невялікая, рэкамендуецца Варыянт 1, паколькі ён эканоміць выдаткі і яго лёгка наладзіць. Калі колькасць робатаў вялікая, рэкамендуецца варыянт 2. Абмежаванне вылічальнай магутнасці галоўнага элемента кіравання ROS і абмежаваная прапускная здольнасць Wi-Fi на борце могуць лёгка выклікаць затрымкі і збоі ў сетцы. Маршрутызатар можа лёгка вырашыць гэтыя праблемы.
Калі ласка, звярніце ўвагу, што пры выкананні мультыагентнай сувязі, калі віртуальная машына выкарыстоўваецца ў якасці падпарадкаванай ROS, яе сеткавы рэжым павінен быць усталяваны ў рэжым моста.
Наладзьце зменныя асяроддзя Master/Slave
Пасля таго, як усе майстры ROS знаходзяцца ў адной сетцы, трэба ўсталяваць зменныя асяроддзя для мультыагентнай сувязі. Гэтая зменная асяроддзя настроена ў файле .bashrc file у галоўным каталогу. Выканайце каманду gedit ~/.bashrc, каб запусціць яго. Звярніце ўвагу, што абодва .bashrc fileНеабходна наладзіць s галоўнага і падпарадкаванага ў мультыагентнай сувязі. Што трэба змяніць, так гэта IP-адрасы ў канцы file. Два радкі ROS_MASTER_URI і ROS_HOSTNAME, як паказана на малюнку 2-1-4. ROS_MASTER_URI і ROS_HOSTNAME хаста ROS з'яўляюцца лакальнымі IP-адрасамі. ROS_MASTER_URI у падпарадкаваным ROS .bashrc file неабходна змяніць на IP-адрас хаста, а ROS_HOSTNAME застаецца лакальным IP-адрасам.
Шматмашынная сувязь ROS не абмежавана версіяй выпуску ROS. У працэсе шматмашыннай сувязі варта ўлічваць наступнае:
- Праца падпарадкаванай праграмы ROS залежыць ад галоўнай праграмы ROS галоўнай прылады ROS.
Галоўная праграма ROS павінна быць запушчана спачатку на галоўнай прыладзе, перш чым выконваць падпарадкаваную праграму на падпарадкаванай прыладзе. - IP-адрасы галоўнай і падпарадкаванай машын у шматмашыннай сувязі павінны знаходзіцца ў адной сетцы. Гэта азначае, што IP-адрас і маска падсеткі знаходзяцца ў адной сетцы.
- ROS_HOSTNAME у канфігурацыі асяроддзя file .bashrc не рэкамендуецца выкарыстоўваць лакальны хост. Рэкамендуецца выкарыстоўваць пэўны IP-адрас.
- У выпадку, калі падпарадкаваны IP-адрас усталяваны няправільна, падпарадкаванае прылада ўсё яшчэ можа атрымаць доступ да галоўнага ROS, але не можа ўводзіць інфармацыю кіравання.
- Калі віртуальная машына ўдзельнічае ў мультыагентнай сувязі, яе сеткавы рэжым павінен быць усталяваны ў рэжым моста. Для сеткавага злучэння нельга выбраць статычны IP.
- Шматмашынная сувязь не можа view або падпісацца на тэмы тыпу дадзеных паведамлення, якія не існуюць лакальна.
- Вы можаце выкарыстоўваць дэма-версію сімуляцыі Little Turtle, каб праверыць, ці паспяховая сувязь паміж робатамі:
a. Уцячы ад пана
roscore #запуск паслуг ROS
rosrun turtlesim turtlesim_node #запуск інтэрфейсу turtlesim
b. Уцячы ад раба
rosrun turtlesim turtle_teleop_key #запуск вузла кіравання з клавіятуры для turtlesim
Калі вы можаце кіраваць рухамі чарапахі з клавіятуры падпарадкаванага прылады, гэта азначае, што сувязь паміж галоўным і падпарадкаваным устаноўлена паспяхова.
Аўтаматычнае падключэнне Wi-Fi у ROS
Прыведзеныя ніжэй працэдуры тлумачаць, як наладзіць робат для аўтаматычнага падлучэння да хост-сеткі або сеткі маршрутызатара.
Аўтаматычная налада злучэння Wi-Fi для Jetson Nano
- Падключыце Jetson Nano праз аддалены інструмент VNC або непасрэдна да экрана кампутара. Націсніце на значок Wi-Fi у правым верхнім куце, а затым націсніце «Рэдагаваць злучэнні.»
- Націсніце кнопку + у сеткавых падключэннях:
- У акне «Выберыце тып злучэння» пстрыкніце выпадальнае меню і націсніце кнопку «Стварыць…»:
- На панэлі кіравання націсніце Wi-Fi. Увядзіце назву Wi-Fi для падлучэння ў палі «Імя злучэння» і SSID. Выберыце «Кліент» у выпадальным меню «Рэжым» і абярыце «wlan0» у выпадальным меню «Прылада».
- На панэлі кіравання націсніце опцыю «Агульныя» і адзначце «Аўтаматычна падключацца да гэтай сеткі…». Усталюйце прыярытэт злучэння на 1 у опцыі «Прыярытэт злучэння для аўтаматычнай актывацыі». Адзначце опцыю «Усе карыстальнікі могуць падключацца да гэтай сеткі». Калі параметр усталяваны ў 0 у «Прыярытэце злучэння для аўтаматычнай актывацыі» для іншага Wi-Fi, гэта азначае, што гэта пераважная сетка Wi-Fi у мінулым.
- Націсніце опцыю «Бяспека Wi-Fi» на панэлі кіравання. Выберыце «WPA & WPA2 Personal» у полі «Бяспека». Затым увядзіце пароль Wi-Fi
Заўвага:
Калі робат не можа аўтаматычна падключыцца да сеткі Wi-Fi пасля загрузкі, калі прыярытэт Wi-Fi усталяваны на 0, гэта можа быць выклікана слабым сігналам Wi-Fi. Каб пазбегнуць гэтай праблемы, вы можаце выдаліць усе параметры Wi-Fi, якія былі падключаны ў мінулым. Захоўвайце толькі сетку Wi-Fi, створаную хостам або маршрутызатарам.
Націсніце опцыю «Настройкі IPv4» на панэлі кіравання наладамі сеткі. У полі «Метад» абярыце опцыю «Уручную». Затым націсніце «Дадаць», увядзіце IP-адрас падпарадкаванай машыны ў поле «Адрас». Запоўніце «24» у полі «Маска сеткі». Запоўніце сегмент IP сеткі ў «Шлюзе». Зменіце апошнія тры лічбы сегмента IP-сеткі на «1». Асноўная мэта гэтага кроку - выправіць IP-адрас. Пасля таго, як гэта будзе зроблена ў першы раз, IP-адрас застанецца нязменным пры наступным падключэнні да таго ж WIFI.
Пасля таго, як усе налады настроены, націсніце «Захаваць», каб захаваць налады. Пасля паспяховага захавання робат аўтаматычна падключыцца да сеткі хаста або маршрутызатара пры ўключэнні.
Заўвага:
- Усталяваны тут IP-адрас павінен супадаць з IP-адрасам у .bashrc file у раздзеле 2.1.
- IP-адрас галоўнага і кожнага падпарадкаванага павінен быць унікальным.
- Галоўны і падпарадкаваны IP-адрасы павінны знаходзіцца ў адным сегменце сеткі.
- Вы павінны пачакаць, пакуль хост або маршрутызатар адправіць сігнал WiFi, перш чым падпарадкаваны робат зможа ўключыцца і аўтаматычна падключыцца да сеткі WiFi.
- Пасля таго, як налада настроена, калі робат не можа аўтаматычна падключыцца да WiFi, калі ён уключаны, падключыце і адключыце сеткавую карту і паспрабуйце падключыцца яшчэ раз.
Аўтаматычная налада злучэння Wi-Fi для Raspberry Pi
Працэдура для Raspberry Pi такая ж, як і для Jetson Nano.
Аўтаматычная налада злучэння Wi-Fi для Jetson TX1
Налада ў Jetson TX1 амаль такая ж, як і ў Jetson Nano, за адным выключэннем, што Jetson TX1 павінен выбраць прыладу «wlan1» у «Прыладзе» на панэлі кіравання сеткавымі наладамі.
НАЛАДКА МУЛЬТЫ-АГЕНТНАЙ СІНХРАНІЗАЦЫІ
У мультыагентным праекце фарміравання налада сінхранізацыі часу для некалькіх агентаў з'яўляецца вырашальным крокам. У працэсе фарміравання шмат праблем будзе выклікана з-за асінхроннага сістэмнага часу кожнага робата. Мультыагентная сінхранізацыя часу падзяляецца на дзве сітуацыі, а менавіта: сітуацыю, калі і галоўны, і падпарадкаваны робаты падключаны да сеткі, і сітуацыю, калі абодва адключаны ад сеткі.
Паспяховае падключэнне да сеткі "галоўны/падпарадкаваны".
Пасля наладжвання мультыагентнай сувязі, калі галоўная і падпарадкаваная машыны могуць паспяхова падключыцца да сеткі, яны будуць аўтаматычна сінхранізаваць сеткавы час. У гэтым выпадку ніякіх дадатковых дзеянняў для дасягнення сінхранізацыі часу не патрабуецца.
Вырашэнне праблем з адключэннем сеткі
Пасля наладжвання мультыагентнай сувязі, калі галоўная і падпарадкаваная прылады не могуць паспяхова падключыцца да сеткі, неабходна ўручную сінхранізаваць час. Мы будзем выкарыстоўваць каманду даты, каб завяршыць наладу часу.
Спачатку ўсталюйце інструмент тэрмінатара. З інструмента тэрмінатара выкарыстоўвайце інструмент падзелу вокнаў, каб размясціць тэрміналы кіравання галоўнага і падпарадкаванага ў адным акне тэрмінала (пстрыкніце правай кнопкай мышы, каб усталяваць раздзяленне акна, і ўвайдзіце ў галоўны і падпарадкаваны кампутары праз ssh у розных вокнах) .
sudo apt-get install terminator # Спампуйце тэрмінатар, каб падзяліць акно тэрмінала
Націсніце кнопку ўверсе злева, абярыце опцыю [Трансляцыя ўсім]/[Трансляцыя ўсім], увядзіце наступную каманду. Затым выкарыстоўвайце інструмент тэрмінатара, каб усталяваць аднолькавы час для галоўнага і падпарадкаванага.
sudo date -s “2022-01-30 15:15:00” # Налада часу ўручную
МУЛЬТЫ-АГЕНТНЫ ПАКЕТ ROS
Увядзенне ў пакет ROS
Наладзьце імя падпарадкаванага
У пакете функцый wheeltec_multi неабходна ўсталяваць унікальнае імя для кожнага падпарадкаванага робата, каб пазбегнуць памылак. Напрыкладample, № 1 для slave1 і № 2 для slave2 і г.д.
Мэта ўсталявання розных імёнаў - згрупаваць запушчаныя вузлы і адрозніць іх рознымі прасторамі імёнаў. Напрыкладample, тэма радара падпарадкаванага 1: /slave1/scan, а вузел LiDAR падпарадкаванага 1: / slave1/laser.
Усталюйце каардынаты падпарадкаваных
Пакет wheeltec_multi можа рэалізаваць карыстацкія фармацыі. Калі патрабуюцца розныя фармацыі, проста змяніце патрэбныя каардынаты падпарадкаваных робатаў. Slave_x і slave_y - гэта каардынаты x і y падпарадкаванага з галоўным у якасці першапачатковай кропкі адліку. Пярэдняя частка майстра - гэта станоўчы кірунак каардынаты x, а левы бок - станоўчы кірунак каардынаты y. Пасля завяршэння наладкі каардыната TF slave1 будзе выдадзена ў якасці чаканай каардынаты ведомага.
Калі ёсць адзін галоўны і два падпарадкаваныя, можна ўсталяваць наступную фармацыю:
- Гарызантальная фармацыя: Вы можаце задаць каардынаты падпарадкаванага злева: slave_x:0, slave_y: 0.8, а каардынаты падпарадкаванага справа: slave_x:0, slave_y:-0.8.
- Фарміраванне слупка: каардынаты аднаго падпарадкаванага могуць быць усталяваны ў: slave_x:-0.8, slave_y:0, а каардынаты іншага падпарадкаванага - у: slave_x:-1.8, slave_y:0.
- Трохвугольная фармацыя: каардынаты аднаго падпарадкаванага можна задаць: slave_x:-0.8, slave_y: 0.8, а каардынаты іншага падпарадкаванага: slave_x:-0.8, slave_y:-0.8.
Іншыя фармацыі можна наладзіць па меры неабходнасці.
Заўвага
Рэкамендуемае адлегласць паміж двума робатамі складае 0.8, і не рэкамендуецца быць ніжэй за 0.6. Адлегласць паміж падпарадкаванымі і галоўным рэкамендуецца ўсталёўваць ніжэй за 2.0. Чым далей ён знаходзіцца ад галоўнага, тым большая лінейная хуткасць падпарадкаванага, калі вядучы паварочваецца. З-за абмежавання максімальнай хуткасці хуткасць падпарадкаванага будзе адхіляцца, калі яна не адпавядае патрабаванням. Строй робатаў стане хаатычным.
Ініцыялізацыя падпарадкаванай пазіцыі
Пачатковая пазіцыя падпарадкаванага па змаўчанні знаходзіцца ў чаканых каардынатах. Перад запускам праграмы проста размесціце падпарадкаванага робата блізка да чаканых каардынат, каб завяршыць ініцыялізацыю.
Гэтая функцыя рэалізавана вузлом pose_setter у file пад назвай turn_on_wheeltec_robot.launch у пакеце wheeltec_multi, як паказана на малюнку 4-1-3.
Калі карыстальнік хоча наладзіць пачатковую пазіцыю падпарадкаванага, яму або ёй трэба толькі ўсталяваць значэнні slave_x і slave_y, як паказана на малюнку 4-1-4 у wheeltec_slave.launch. Значэнні slave_x і slave_y будуць перададзены ў turn_on_wheeltec_robot.launch і прызначаны вузлу pose_setter. Проста пастаўце робата ў карыстацкае становішча перад запускам праграмы.
Канфігурацыя пазіцыі
У мультыагентнай фармацыі першай праблемай, якую трэба вырашыць, з'яўляецца пазіцыянаванне галоўнага і падпарадкаванага. Майстар спачатку пабудуе двухмерную карту. Пасля стварэння і захавання карты запусціце пакет 2D-навігацыі і выкарыстоўвайце адаптыўны алгарытм пазіцыянавання Монтэ-Карла (пазіцыянаванне amcl) у пакеце 2D-навігацыі, каб наладзіць пазіцыянаванне майстра.
Паколькі галоўны і падпарадкаваныя прылады знаходзяцца ў адной сетцы і маюць адзін і той жа менеджэр вузлоў, галоўны запусціў карту з 2D-навігацыйнага пакета, усе падпарадкаваныя прылады могуць выкарыстоўваць адну і тую ж карту пад адным кіраўніком вузлоў. Такім чынам, рабу не трэба ствараць карту. У wheeltec_slave.launch запусціце пазіцыянаванне Монтэ-Карла (пазіцыянаванне amcl), падпарадкаваныя прылады могуць канфігураваць свае пазіцыі, выкарыстоўваючы карту, створаную галоўным.
Як стварыць фармацыю і падтрымліваць фармацыю
У працэсе фарміравання руху, галоўным рухам можна кіраваць з дапамогай Rviz, клавіятуры, дыстанцыйнага кіравання і іншымі метадамі. Падпарадкаваны разлічвае сваю хуткасць праз вузел slave_tf_listener, каб кантраляваць свой рух і дасягнуць мэты фарміравання.
Вузел slave_tf_listener абмяжоўвае падпарадкаваную хуткасць, каб пазбегнуць празмернай хуткасці з дапамогай разліку вузла, што выкліча шэраг уздзеянняў. Канкрэтнае значэнне можна змяніць у wheeltec_slave.launch.
Адпаведныя параметры алгарытму фарміравання наступныя:
Пазбяганне перашкод у страі
У мультыагентнай фармацыі майстар можа выкарыстоўваць вузел move_base для завяршэння абыходу перашкод. Аднак ініцыялізацыя падпарадкаванага не выкарыстоўвае вузел move_base. У гэты момант вузел multi_avoidance павінен быць выкліканы ў падпарадкаванай праграме. Вузел пазбягання перашкод уключаны ў пакеце па змаўчанні. Пры неабходнасці пазбяганне можа быць усталявана ў «false», каб адключыць вузел пазбягання перашкод.
Некаторыя адпаведныя параметры вузла пазбягання перашкод паказаны на малюнку ніжэй, дзе safe_distance - гэта мяжа бяспечнай адлегласці да перашкоды, а danger_distance - гэта мяжа небяспечнай адлегласці да перашкоды. Калі перашкода знаходзіцца ў межах safe_distance і danger_distance, падпарадкаваны настройвае сваё становішча, каб пазбегнуць перашкоды. Калі перашкода знаходзіцца ў межах danger_distance, падпарадкаваны ад'едзе ад перашкоды.
Парадак аперацыі
Увядзіце каманду выканання
Падрыхтоўка перад пачаткам мультыагентнага фарміравання:
- Вядучы і падпарадкаваны падключаюцца да адной сеткі і правільна наладжваюць мультыагентную сувязь
- Майстар загадзя будуе 2D карту і захоўвае яе
- Вядучы размяшчаецца ў пачатковай кропцы карты, а падпарадкаваны - побач з месцам ініцыялізацыі (пазіцыя фарміравання падпарадкаванага па змаўчанні)
- Пасля аддаленага ўваходу ў Jetson Nano/Raspberry Pi выканайце сінхранізацыю часу.
sudo date -s «2022-04-01 15:15:00»
Крок 1: Адкрыйце 2D-карту з майстра.
roslaunch turn_on_wheeltec_robot navigation.launch
крок 2: Запусціце праграму фарміравання з усіх рабоў.
roslaunch wheeltec_multi wheeltec_slave.launch
крок 3: Адкрыйце вузел кіравання з клавіятуры ад майстра або выкарыстоўвайце джойсцік для дыстанцыйнага кіравання рухам майстра.
roslaunch wheeltec_robot_rc keyboard_teleop.launch
крок 4: (Неабавязкова) Назірайце за рухамі робата з Rviz.
rviz
Заўвага
- Не забудзьцеся выканаць аперацыю сінхранізацыі часу перад выкананнем праграмы.
- Пры кіраванні майстрам шматагентнай фармацыі вуглавая хуткасць не павінна быць занадта высокай. Рэкамендуемая лінейная хуткасць складае 0.2 м/с, вуглавая хуткасць ніжэй за 0.3 рад/с. Калі вядучы робіць паварот, чым далей падпарадкаваны ад галоўнага, тым большая лінейная хуткасць патрабуецца. З-за абмежавання лінейнай хуткасці і вуглавой хуткасці ў пакеце, калі падпарадкаваны аўтамабіль не можа дасягнуць неабходнай хуткасці, фарміраванне будзе хаатычным. У цэлым празмерная лінейная хуткасць можа лёгка пашкодзіць робата.
- Калі колькасць падпарадкаваных больш за адзін, з-за абмежаванай прапускной здольнасці Wi-Fi на борце хаста ROS лёгка выклікаць значныя затрымкі і разрыў сувязі з некалькімі агентамі. Выкарыстанне маршрутызатара можа добра вырашыць гэтую праблему.
- Дрэва TF фармацыі з некалькімі робатамі (2 падпарадкаваныя) такое: rqt_tf_tree
- Дыяграма ўзаемасувязі вузлоў фармацыі з некалькімі робатамі (2 падпарадкаваныя) такая: rqt_graph
Дакументы / Рэсурсы
![]() |
Робат ROBOWORKS Robofleet Orin Nano x3 ROS [pdfКіраўніцтва карыстальніка Orin Nano x3, Robofleet ROS Robot, Robofleet ROS, Робат, Robofleet Orin Nano x3 ROS Robot, Robofleet Orin Nano x3, Orin Nano x3 ROS Robot, Orin Nano x3 |