ROBOWORKS Robofleet Orin Nano x3 ROS робот
ХУЛОСА
Ин ҳуҷҷат асосан истифодаи бастаи функсияи ташаккули бисёр роботҳоро бо номи wheeltec_multi мефаҳмонад.
Ин ҳуҷҷат ба чор қисм тақсим мешавад:
- Кисми якум асосан дар бораи чорй намудани усули сохтани бисьёр роботхо;
- қисми дуюм асосан танзимоти алоқаи бисёрсоҳаи ROS, аз ҷумла сохтмони ROS алоқаи чандмошин ва мушкилоте, ки дар ҷараёни алоқаи ROS дучор мешаванд, тавсиф карда мешавад;
- қисми сеюм асосан қадамҳои амалиёти синхронизатсияи вақти бисёрсоҳавӣ тавсиф мекунад;
- қисми чорум истифодаи мушаххаси маҷмӯи функсияҳои ташаккули бисёрсоҳаро шарҳ медиҳад.
Мақсади ин ҳуҷҷат муқаддима ба системаи бисёр-агенти роботӣ мебошад ва ба корбар имкон медиҳад, ки лоиҳаи ташаккули бисёр роботҳоро зуд оғоз кунад.
МУҚАДДИМА БА АЛГОРИТМҲОИ БИСЁРАГЕНТ
Алгоритмҳои ташаккули бисёр агентҳо
Ин бастаи ROS як мушкилоти маъмулии бисёр агентҳоро дар назорати муштарак ҳангоми диски ташаккул пешниҳод мекунад. Ин дастур барои рушди ояндаи ин мавзӯъ замина мегузорад. Алгоритми назорати форматсия ба алгоритме дахл дорад, ки агентҳои сершуморро барои ташкили формаи мушаххас барои иҷрои вазифа назорат мекунад. Ҳамкорӣ ба ҳамкории байни агентҳои сершумор бо истифода аз муносибати маҳдуди муайян барои анҷом додани вазифа ишора мекунад. Диски ташаккули бисёр роботҳоро ҳамчун собиқ гиредample, ҳамкорӣ маънои онро дорад, ки роботҳои сершумор якҷоя ташаккули дилхоҳро ташкил медиҳанд. Моҳияти он муносибати математикии муайяни байни мавқеи ҳар як робот қонеъ карда мешавад. Усулҳои ташаккулёбӣ асосан ба назорати мутамаркази қабати ва назорати қабати тақсимшуда тақсим мешаванд. Усулҳои марказонидашудаи назорати ташаккул асосан аз усули сохтори виртуалӣ, усули назарияи графикӣ ва усули пешгӯии модел иборатанд. Усулҳои тақсимшудаи назорати ташаккул асосан усули пешво-пайрав, усули рафтор ва усули сохтори виртуалиро дар бар мегиранд.
Ин бастаи ROS усули пешво-пайравро дар усули идоракунии тақсимшудаи ташаккул барои иҷрои гардонандаи ташаккули бисёр роботҳо истифода мебарад. Як робот дар форма пешво таъин карда мешавад ва роботҳои дигар ҳамчун ғулом барои пайравӣ аз пешво таъин карда мешаванд. Алгоритм траекторияи ҳаракати роботи пешбарро барои муқаррар кардани координатаҳое, ки роботҳои зерин бо самт ва суръати муайян пайгирӣ мекунанд, истифода мебарад. Бо ислоҳи инҳирофҳои мавқеъ аз координатҳои пайгирӣ, пайравон дар ниҳоят инҳирофро байни пайрав ва координатҳои пайгирии интизориро ба сифр коҳиш медиҳанд, то ҳадафҳои гардонандаи ташаккулро ба даст оранд. Бо ин роҳ, алгоритм нисбатан камтар мураккаб аст.
Алгоритмҳои пешгирӣ аз монеаҳо
Як алгоритми маъмули канорагирӣ аз монеаҳо усули майдони потенсиалии сунъӣ мебошад. Ҳаракати робот дар муҳити ҷисмонӣ ҳамчун ҳаракат дар майдони қувваи сунъии виртуалӣ ҳисобида мешавад. Монеаи наздиктаринро LiDAR муайян мекунад. Монеа майдони қувваи такфиркунандаро барои тавлиди бозпас ба робот таъмин мекунад ва нуқтаи ҳадаф майдони ҷозибаро барои тавлиди қувваи ҷозибаи робот таъмин мекунад. Ба хамин тарик, вай харакати роботро дар зери таъсири якчояи бозгардонй ва чалбкунанда идора мекунад.
Ин бастаи ROS такмилест дар асоси усули потенсиалии сунъӣ. Аввалан, алгоритми ташаккул суръати хатӣ ва кунҷии пайрави ғуломро ҳисоб мекунад. Сипас он суръати хаттӣ ва кунҷиро мувофиқи талаботи канорагирӣ аз монеа зиёд ё кам мекунад. Вақте ки масофаи байни пайрави ғулом ва монеа наздиктар мешавад, қувваи бозгардонии монеа ба пайрави ғулом бештар аст. Дар ҳамин ҳол, тағирёбии суръати хатӣ ва тағирёбии суръати кунҷӣ бештар аст. Вақте ки монеа ба пеши пайрави ғуломон наздиктар мешавад, дафни монеа ба пайрави ғулом бештар мешавад (тафси пеш аз ҳама бузургтар ва канори он хурдтарин аст). Дар натиҷа, тафовути суръати хатӣ ва суръати кунҷӣ бештар аст. Тавассути усули майдони потенсиалии сунъӣ, он ҳалли онро беҳтар мекунад
вақте ки робот метавонад дар назди монеа ҷавоб диҳад. Ин ба мақсади пешгирӣ кардани монеаҳои беҳтар хизмат мекунад.
НАЗДИ КОММУНИКАСИИ БИСЁР-АГЕНТ
Муоширати бисёр агентӣ яке аз қадамҳои калидӣ барои анҷом додани ташаккули бисёр роботҳо мебошад. Вақте ки мавқеи нисбии роботҳои сершумор номаълум аст, роботҳо бояд иттилооти ҳамдигарро тавассути иртибот мубодила кунанд, то ба таъсиси пайвастҳо мусоидат кунанд. Меъмории тақсимшудаи ROS ва алоқаи шабакавӣ хеле пурқувватанд. Вай на танхо барои алокаи байни процессхо, балки барои алокаи байни дастгоххои гуногун хам кулай аст. Тавассути алоқаи шабакавӣ, ҳама гиреҳҳо метавонанд дар ҳама гуна компютер кор кунанд. Вазифаҳои асосӣ ба монанди коркарди маълумот дар тарафи мизбон анҷом дода мешаванд. Мошинҳои ғуломӣ барои қабули маълумоти муҳити зист, ки аз ҷониби сенсорҳои гуногун ҷамъоварӣ шудаанд, масъуланд. Хост дар ин ҷо менеҷерест, ки гиреҳи Мастерро дар ROS идора мекунад. Чаҳорчӯбаи муоширати бисёр-агенти кунунӣ тавассути мудири гиреҳ ва менеҷери параметрҳо барои идора кардани иртибот байни роботҳои сершумор аст.
Қадамҳо барои таъсиси алоқаи бисёр агентӣ
Назорати ROS-ро дар як шабака насб кунед
2 роҳи насб кардани Master/Slave ROS Controls дар як шабака вуҷуд дорад.
Варианти 1:
Мастер Хост тавассути иҷро кардани менеҷери гиреҳи Мастер WiFi-и маҳаллӣ эҷод мекунад. Умуман, яке аз роботҳое, ки ҳамчун устод таъин шудааст, ин шабакаи WiFi-ро эҷод мекунад. Дигар роботҳо ё мошинҳои виртуалӣ ба ин шабакаи WiFi ҳамчун ғулом ҳамроҳ мешаванд.
Интихоби 2:
Шабакаи WiFi-и маҳаллӣ аз ҷониби роутери тарафи сеюм ҳамчун маркази интиқоли иттилоот таъмин карда мешавад. Ҳама роботҳо ба як роутер пайваст карда шудаанд. Роутер инчунин метавонад бидуни пайвастшавӣ ба интернет истифода шавад. Яке аз роботҳоро ҳамчун устод интихоб кунед ва мудири гиреҳи Мастерро иҷро кунед. Роботҳои дигар ҳамчун ғулом таъин карда мешаванд ва мудири гиреҳро аз устод идора мекунанд.
Қарор дар бораи интихоби кадом вариант аз талаботи лоиҳаи шумо вобаста аст. Агар шумораи роботҳое, ки бояд муошират кунанд, зиёд набошад, Варианти 1 тавсия дода мешавад, зеро он хароҷотро сарфа мекунад ва насб кардан осон аст. Вақте ки шумораи роботҳо зиёд аст, Варианти 2 тавсия дода мешавад. Маҳдудият дар қудрати ҳисоббарории назорати устои ROS ва маҷрои маҳдуди Wi-Fi метавонад ба осонӣ боиси таъхир ва халалдор шудани шабака гардад. Роутер метавонад ба осонӣ ин мушкилотро ҳал кунад.
Лутфан таваҷҷӯҳ намоед, ки ҳангоми анҷом додани муоширати бисёр агентӣ, агар мошини маҷозӣ ҳамчун ғуломи ROS истифода шавад, режими шабакавии он бояд ба режими пул танзим карда шавад.
Тағирёбандаҳои муҳити Master/Slave-ро танзим кунед
Пас аз он ки ҳамаи устодони ROS ҳама дар як шабака ҳастанд, бояд тағирёбандаҳои муҳити зист барои муоширати бисёр агентӣ муқаррар карда шаванд. Ин тағирёбандаи муҳити зист дар .bashrc танзим шудааст file дар феҳристи асосӣ. Барои оғоз кардани он фармони gedit ~/.bashrc -ро иҷро кунед. Лутфан қайд кунед, ки ҳам .bashrc fileс-и устод ва ғуломро дар муоширати бисёр агентӣ танзим кардан лозим аст. Он чизе, ки бояд тағир дода шавад, суроғаҳои 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 барои истифодаи localhost тавсия дода намешавад. Тавсия дода мешавад, ки суроғаи мушаххаси IP-ро истифода баред.
- Дар ҳолате, ки суроғаи IP-и ғулом дуруст муқаррар карда нашудааст, дастгоҳи ғулом то ҳол метавонад ба устоди ROS дастрасӣ пайдо кунад, аммо иттилооти назоратиро ворид карда наметавонад.
- Агар мошини маҷозӣ дар иртиботи бисёрҷониба иштирок кунад, режими шабакавии он бояд ба режими купрук муқаррар карда шавад. Барои пайвастшавӣ ба шабака IP статикиро интихоб кардан мумкин нест.
- Муоширати бисёрсоҳавӣ наметавонад view ё ба мавзӯъҳои навъи додаҳои паём, ки дар маҳал вуҷуд надоранд, обуна шавед.
- Шумо метавонед намоиши симулятсияи сангпушти хурдро истифода баред, то боварӣ ҳосил кунед, ки оё муоширати байни роботҳо муваффақ аст:
a. Аз устод гурезед
roscore #launch хидматҳои ROS
rosrun turtlesim turtlesim_node #барои интерфейси turtlesim
b. Аз ғулом гурезед
rosrun turtlesim turtle_teleop_key #барои гиреҳи идоракунии клавиатура барои turtlesim
Агар шумо метавонед ҳаракатҳои сангпуштро аз клавиатураи ғулом идора кунед, ин маънои онро дорад, ки алоқаи усто/ғулом бомуваффақият барқарор шудааст.
Пайвасти худкори Wi-Fi дар ROS
Тартиботи дар поён овардашуда шарҳ медиҳанд, ки чӣ тавр роботро барои ба таври худкор пайваст шудан ба шабакаи ҳост ё шабакаи роутер танзим кардан мумкин аст.
Танзимоти худкори пайвасти Wi-Fi барои Jetson Nano
- Jetson Nano-ро тавассути асбоби дурдасти VNC ё мустақиман ба экрани компютер пайваст кунед. Тасвири WiFi дар кунҷи рости боло клик кунед ва пас "Таҳрири пайвастҳо.." -ро клик кунед.
- Тугмаи + -ро дар Пайвастҳои шабака пахш кунед:
- Дар зери равзанаи "Намуди пайвастшавӣ интихоб кунед" менюи афтандаро клик кунед ва тугмаи "Эҷод ..." -ро клик кунед:
- Дар панели идоракунӣ, имконоти Wifi -ро клик кунед. Номи Wifi-ро барои пайвастшавӣ дар майдонҳои "Номи пайвастшавӣ" ва SSID ворид кунед. Дар менюи афтанда "Мод" "Мизоҷ" -ро интихоб кунед ва дар менюи афтанда "Дастгоҳ" "wlan0" -ро интихоб кунед.
- Дар панели идоракунӣ, интихоби "Умумӣ" -ро клик кунед ва "Ба таври худкор ба ин шабака пайваст шавед ..." -ро санҷед. Дар опсияи "Авлавияти пайвастшавӣ барои худкор фаъолсозӣ" афзалияти пайвастшавиро ба 1 муқаррар кунед. Интихоби "Ҳамаи корбарон метавонанд ба ин шабака пайваст шаванд" -ро санҷед. Вақте ки интихоб дар "Авлавияти пайвастшавӣ барои худкор фаъолсозӣ" барои WiFi барои дигар ба 0 муқаррар карда шудааст, ин маънои онро дорад, ки ин шабакаи бартарии WiFi дар гузашта аст.
- Опсияи "Амнияти Wi-Fi" -ро дар панели идоракунӣ клик кунед. Дар майдони "Амният" "WPA & WPA2 Personal" -ро интихоб кунед. Пас пароли Wifi-ро ворид кунед
Шарҳ:
Агар робот пас аз боркунӣ ба таври худкор ба шабакаи WiFi пайваст нашавад, вақте ки афзалияти WiFi ба 0 муқаррар карда шудааст, он метавонад аз сабаби мушкилоти сигнали сусти wifi бошад. Барои пешгирӣ кардани ин мушкилот, шумо метавонед интихоб кунед, ки ҳамаи имконоти WiFi, ки дар гузашта пайваст шуда буданд, нест кунед. Танҳо шабакаи WiFi-ро, ки мизбон ё роутер сохтааст, нигоҳ доред.
Дар панели идоракунии танзимоти шабака имконоти "Танзимоти IPv4" -ро клик кунед. Дар майдони "Усул" имконоти "Дастӣ" -ро интихоб кунед. Пас "Илова кардан" -ро клик кунед, суроғаи IP-и мошини ғуломро дар майдони "Адрес" пур кунед. Дар майдони "Nmassk" "24" -ро пур кунед. Дар "Gateway" сегменти шабакаи 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 барои гулом1 ва № 2 барои гулом2 ва ғайра.
Мақсади гузоштани номҳои гуногун гурӯҳбандии гиреҳҳои иҷрошаванда ва фарқ кардани онҳо бо фазоҳои номҳои гуногун мебошад. Барои мисолample, мавзӯи радари ғулом 1 аст: / slave1 / скан, ва гиреҳи LiDAR ғуломи 1 аст: / slave1 / лазер.
Координатҳои ғуломро насб кунед
Бастаи wheeltec_multi метавонад шаклҳои фармоиширо амалӣ кунад. Вақте ки шаклҳои гуногун талаб карда мешаванд, танҳо координатҳои дилхоҳи роботҳои ғуломро тағир диҳед. Slave_x ва slave_y координатаҳои x ва y ғулом бо устод ҳамчун нуқтаи истинод аслӣ мебошанд. Пеши усто самти мусбати координата x ва тарафи чап самти мусбати координата y мебошад. Пас аз ба итмом расидани танзим, ғуломи координатаи TF1 ҳамчун координатаи интизории ғулом дода мешавад.
Агар як усто ва ду ғулом мавҷуд бошанд, ташаккули зеринро муқаррар кардан мумкин аст:
- Ташаккули уфуқӣ: Шумо метавонед координатҳои ғуломро дар тарафи чап ба: 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 месозад. Пас аз сохтан ва захира кардани харита, бастаи навигатсионии 2D-ро иҷро кунед ва алгоритми мутобиқсозии ҷойгиршавии Монте-Карло (мавқеъбандии amcl) дар бастаи навигатсионии 2D барои танзими ҷойгиршавии устодро истифода баред.
Азбаски усто ва ғуломон дар як шабака ҳастанд ва мудири гиреҳи якхеларо мубодила мекунанд, усто харитаро аз бастаи навигатсионии 2D оғоз кардааст, ҳама ғуломон метавонанд як харитаи якхеларо зери як мудири гиреҳ истифода баранд. Аз ин рӯ, ба банда лозим нест, ки харита эҷод кунад. Дар wheeltec_slave.launch ҷойгиркунии Монте-Карлоро иҷро кунед (мавқеъбандии amcl), ғуломон метавонанд бо истифода аз харитаи эҷодкардаи усто мавқеъҳои худро танзим кунанд.
Чӣ тавр ташаккул ва нигоҳ доштани ташаккул
Дар процесси харакати формационй харакати усторо бо Рвиз, клавиатура, пульти масофа ва дигар усулхо идора кардан мумкин аст. Ғулом суръати худро тавассути гиреҳи slave_tf_listener ҳисоб мекунад, то ҳаракати онро идора кунад ва ба ҳадафи ташаккулёбӣ ноил шавад.
Гиреҳи slave_tf_listener суръати ғуломро маҳдуд мекунад, то аз суръати аз ҳад зиёди ҳисобкунии гиреҳ канорагирӣ кунад, ки боиси як қатор таъсирҳо мегардад. Арзиши мушаххас метавонад дар wheeltec_slave.launch тағир дода шавад.
Параметрҳои дахлдори алгоритми ташаккул инҳоянд:
Пешгирӣ аз монеаҳо дар ташаккул
Дар ташаккули бисёр агентӣ, усто метавонад гиреҳи move_base-ро барои анҷом додани пешгирӣ аз монеаҳо истифода барад. Бо вуҷуди ин, оғозкунии ғулом гиреҳи move_base -ро истифода намебарад. Дар ин лаҳза гиреҳи multi_avoidance бояд дар барномаи ғулом даъват карда шавад. Гиреҳи канорагирӣ аз монеаҳо дар баста ба таври нобаёнӣ фаъол аст. Агар лозим бошад, канорагирӣ метавонад ба "дурӯғ" таъин карда шавад, то гиреҳи канорагирӣ аз монеаҳоро ғайрифаъол созад.
Баъзе параметрҳои дахлдори гиреҳи канорагирӣ аз монеаҳо дар расми зер нишон дода шудаанд, ки дар он бехатар_масофа маҳдудияти масофаи бехатари монеа ва хатари_масофа маҳдудияти масофаи хатарноки монеа мебошад. Ҳангоме ки монеа дар масофаи_амн ва хатарнок аст, ғулом мавқеи худро барои пешгирӣ кардани монеа танзим мекунад. Вақте ки монеа дар масофаи_хатар аст, ғулом аз монеа дур мешавад.
Тартиби амалиёт
Фармони иҷроро ворид кунед
Омодагӣ пеш аз оғози ташаккули мултиагент:
- Мастер ва ғулом ба як шабака пайваст мешаванд ва алоқаи бисёр агентиро дуруст танзим мекунанд
- Устод харитаи 2D-ро пешакӣ сохта, онро захира мекунад
- Мастер дар нуқтаи ибтидоии харита ҷойгир карда мешавад ва ғулом дар наздикии мавқеи оғозёбӣ ҷойгир карда мешавад (мавқеи ташаккули ғуломи пешфарз)
- Пас аз ворид шудан ба Jetson Nano/Raspberry Pi фосилавӣ, ҳамоҳангсозии вақтро иҷро кунед.
sudo санаи -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 робот, Robofleet Orin Nano x3, Orin Nano x3 ROS робот, Orin Nano x3 |