Бір бөлме қашықтықта пайдасын жоғалтатын роботтың VPN мәселесі әлдеқайда кейін туындайды, бұған дейін ол байланыс немесе жүктеме мәселесі болады. Шифрлау жолды қорғайды, бірақ радиожабылысты кеңейтпейді және қашықтағы есептеуді тезірек бітірмейді. Алдыңыздағы шешім — қай жұмыс шынымен желі арқылы өтуі керек екенін анықтау, және бұл жауап әдетте адамдар күткеннен көп трафикті алып тастайды. Мұны үш шарт шешеді, ал өткізу қабілеті солардың бірі емес.

Үш нұсқа, бір тәуелділік сұрағы

Кесте нұсқаларды диаграммада қандай бағдарлама көрінетініне қарай емес, байланысқа не тәуелді екеніне қарай ажыратады.

ArrangementWhat depends on the linkWhat stays onboard
Live remote processingThe exchange and any timely result the workstation returnsOnly what the remote step does not block
Onboard processing, remote observationThe declared telemetry or display streamThe processing loop itself
Local recording, later analysisTransfer of one selected datasetThe entire run, including raw sensors

Бұл кестедегі ешбір жол қауіпсіздік дәлелі емес. Басқару мен қауіпсіздік функциялары кешігу, пакет жоғалту және байланыстың үзілуі үшін білікті жауапты әлі де талап етеді, ал туннель индикаторы оны бермейді. Кесте тәуелділіктің қайда екенін көрсетеді, ал желі дизайны нақты өзгерте алатын дәл сол бөлік.

Бірінші шарт: жауап дер кезінде болуы керек пе?

Егер қашықтағы нәтиже контроллерге берілсе, желі басқару контурының ішінде тұрады, сондықтан оның кешігуі, дірілі және үзілістері басқару қасиетіне айналады. Егер сол нәтиже тек дисплейге, бақылау тақтасына немесе қарап отырған адамға берілсе, дәл сондай кешігу тек көрініс мәселесі.

Сымсыз байланыс арқылы тұйық контурлы жұмыс мүмкін, және "VPN баяу" деген шағымдардың көбі дәл осы жерден шығады, өйткені туннель көрінетін компонент, ал себеп радио мен маршруттауда. Туннельдің өз pingі емес, нақты хабарламаның айналым уақытын өлшеңіз, содан кейін бұл сан контур бюджетіне сыйа ма, соны сұраңыз. Сыймаса, бөлмедегі ешкім басқармайтын байланыс үшін қатаңырақ қызмет деңгейін келісу орнына қадамды бортқа көшіріңіз. Өлшенген санды қандай жағдайда алынғанымен бірге жазып қойыңыз, өйткені келесі есеп осы жағдайларсыз келеді.

Екінші шарт: қандай жылдамдықты, бағытты және үзілісті мәлімдей аласыз?

Деректерді, жылдамдықты, бағытты және қолданба көтеретін ең ұзақ үзілісті жазып қойыңыз. Жоғары бағытталған камера ағыны мен төмен бағытталған команда арнасы әртүрлі түрде істен шығады, ал қозғалмайтын тексеру көтеретін үзіліс қозғалыстағы тапсырманы тоқтатады.

Нұсқаларды салыстырғанда физикалық қосылымды туннельден бөлек қараңыз, өйткені күштірек радио мен кішірек жүктеме — екі бөлек жөндеу. Ақырында аяқталатын үлкен тасымалдау уақытқа сезімтал нәтиженің тұрақты келуін дәлелдемейді, ал сау туннель артындағы радионы дәлелдемейді.

Содан кейін сұранысты қорғаудың орнына азайтыңыз. Бақылау ағынын сиретіңіз, қорытындылар немесе дельталар жіберіңіз, ал шикі сенсор деректерін сақтау арзан, ал тасымалдау қымбат жерде бортта қалдырыңыз. Кішірек пайдалы жүк жылдамырақ байланыс қажеттігін әлсіретеді және көбіне оған деген қажеттілікті жояды.

Үшінші шарт: оны кім көруі керек және не жергілікті қалады

Бақылау әдетте өңдеуден әлдеқайда жеңіл талап. Егер адам камераны көруі және кейін журнал болуы керек болса, бұл телеметрия қосу сақтау; ал модель істеуі керек болса, алдымен ол бортта істеп, тек нәтижесін жіберу мүмкін бе, соны сұраңыз. Ауыр қадамды бортқа көшіру синхронды тәуелділікті жояды және қайталауға болатын тасымалдауды қалдырады.

Бір роботта екі ROS қатысушысының болуы туннельді өзінен-өзі ақтамайды. Түйіндердің қолжетімділігі, қолданбаның авторизациясы және жергілікті қалпына келтіру жоспары — бөлек мәселелер, ал VPN тек біріншісіне жауап береді және тек өзіне маршруттау сұралған трафик үшін.

Деректер жиынын жазу — өз командалары бар жеке дизайн

Нұсқаға байланған мысал үшін ROS 2 Jazzy жазу оқулығы таңдалған тақырыптарды жазуды, алынған bag-ті тексеруді және оны қайта ойнатуды қамтиды. Бекітілген бақылау тақырыптарын жазыңыз, жүгіріске ат қойыңыз және хабарлама анықтамалары мен конфигурацияны қасына қойыңыз.

ros2 bag record -o run42 /scan /camera/image_raw
ros2 bag info run42
ros2 bag play run42

Құрал жеңіл болғандықтан барлық тақырыпты жазбаңыз. Сақтау орны толады, камера мен орналасу деректері сезімтал, ал белгіленбеген тақырыптардан тұратын bag — оны кейін ашатын адам үшін талдау мәселесі. Орнатылған дистрибутив командаларды да анықтайды: ROS 1 bag-теріне арналған құралдар ROS 2 bag-теріне көшпейді, сондықтан құжаттаманы роботқа орнатылған нұсқаға сәйкестендіріңіз.

Оқшауланған талдау немесе симуляция ортасында қайта ойнатыңыз. Жазылған команда тақырыптарын тірі роботтың атқарушыларына қайта ойнату — апат, ал оның алдын алу — бөлек ROS домені немесе контурда ешқандай аппарат болмауы.

Тәуелділік қайда тиесілі екенін шешіп, оны жазып қойыңыз: VPN орындалуы тиіс айырбасты қорғайды, борттағы өңдеу синхронды болуы мүмкін емес айырбасты жояды, ал жазылған деректер жиыны тірі тұтынушыны кейінгі тұтынушымен алмастырады. Содан кейін ажыратылған жағдайды әдейі, жергілікті жұмыс әлі жүріп тұрғанда сынап көріңіз, дизайнды бітті деп айтудың алдында.

Қатысты мақалалар