En robot, der holder op med at være nyttig én rum væk, har et linkproblem eller et arbejdsbelastningsproblem længe før, den har et VPN-problem. Kryptering beskytter en vej; den udvider ikke radiooddækningen og får ikke en fjernberegning til at blive færdig hurtigere. Beslutningen foran dig er, hvilket arbejde der virkelig skal krydse netværket, og det svar fjerner normalt mere trafik, end folk forventer. Tre betingelser afgør det, og gennemstrømning er ikke en af dem.

Tre arrangementer, ét spørgsmål om afhængighed

Tabellen adskiller arrangementerne efter, hvad der afhænger af linket, ikke efter hvilken software der optræder i diagrammet.

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

Ingen række i den tabel er et sikkerhedsargument. Styrings- og sikkerhedsfunktioner har stadig brug for et kvalificeret svar på forsinkelse, pakketab og en afbrudt forbindelse, og ingen tunnelindikator leverer det. Tabellen fortæller, hvor afhængigheden bor, og det er den del, et netværksdesign faktisk kan ændre.

Betingelse et: skal svaret være rettidigt?

Hvis et fjernresultat føder en controller, sidder netværket inde i styreløkken, og dets forsinkelse, jitter og udfald bliver styringsegenskaber. Hvis det samme resultat kun føder en skærm, et dashboard eller en person, der kigger med, er den identiske forsinkelse kosmetisk.

Lukket-sløjfe-arbejde over et trådløst link er muligt, og det er også der, de fleste «VPN'en er langsom»-rapporter opstår, fordi tunnelen er den synlige komponent, mens radioen og routing er årsagen. Mål rundturen for den faktiske besked i stedet for tunnelens egen ping, og spørg så, om tallet passer i sløjfens budget. Når det ikke gør, flyt trinnet ombord i stedet for at forhandle et strengere serviceniveau for et link, som ingen i lokalet styrer. Skriv det målte tal ned sammen med de forhold, det blev målt under, for den næste rapport kommer uden dem.

Betingelse to: hvilken rate, retning og afbrydelse kan du erklære?

Skriv dataene, raten, retningen og den længste afbrydelse ned, som applikationen tåler. En opstrøms kamerastrøm og en nedstrøms kommandokanal fejler på forskellige måder, og en afbrydelse, som en stationær inspektion tåler, vil afslutte en bevægende opgave.

Hold den fysiske forbindelse og tunnelen adskilt, når du sammenligner muligheder, fordi en stærkere radio og en mindre arbejdsbyrde er forskellige reparationer. En stor overførsel, der til sidst fuldføres, beviser intet om et tidsfølsomt resultat, der ankommer konsekvent, og en sund tunnel beviser intet om radioen bag den.

Reducer så efterspørgslen i stedet for at forsvare den. Nedprøv overvågningsstrømmen, send resuméer eller deltaer, og lad rå sensordata blive ombord, hvor lagring er billig, og transmission ikke er. En mindre nyttelast svækker argumentet for et hurtigere link og fjerner ofte behovet for det.

Betingelse tre: hvem skal se det, og hvad bliver lokalt

Overvågning er normalt et meget mindre krav end behandling. Hvis en person skal se kameraet, og der bagefter skal findes en log, er det telemetri plus lagring; hvis en model skal køre, så spørg først, om den kan køre ombord med kun sit resultat videresendt. At flytte det tunge trin ombord fjerner den synkrone afhængighed og efterlader en overførsel, der kan gentages.

To ROS-deltagere på samme robot retfærdiggør ikke en tunnel i sig selv. Knudepunktets tilgængelighed, applikationsgodkendelse og en lokal genopretningsplan er separate problemer, og en VPN besvarer kun det første, og kun for den trafik, den bliver bedt om at route.

Optagelse af et datasæt er sit eget design med sine egne kommandoer

For et versionsbestemt eksempel dækker ROS 2 Jazzy-optagelsesvejledningen optagelse af udvalgte emner, inspektion af den resulterende bag og afspilning af den. Optag de godkendte overvågningstemner, giv kørslen et navn, og hold beskeddefinitionerne og konfigurationen ved siden af.

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

Optag ikke hvert emne, fordi værktøjet gør det nemt. Lageret fyldes, kamera- og placeringsdata er følsomme, og en bag med umærkede emner er et analyseproblem for den, der åbner den næste gang. Den udrullede distribution bestemmer også kommandoerne: værktøj skrevet til ROS 1-bags overføres ikke til ROS 2-bags, så tilpas dokumentationen til den version, der er installeret på robotten.

Afspil i et isoleret analyse- eller simuleringsmiljø. Optagne kommandotemner, der afspilles ind i en levende robots aktuatorer, er en ulykke, og forebyggelsen er et separat ROS-domæne eller slet ingen hardware i sløjfen.

Afgør, hvor afhængigheden hører til, og skriv det ned: en VPN beskytter en udveksling, der skal ske, behandling ombord fjerner en udveksling, der aldrig behøvede at være synkron, og et optaget datasæt erstatter en levende forbruger med en senere. Test derefter den afbrudte situation med vilje, mens det lokale job stadig kører, før nogen kalder designet færdigt.

Relaterede artikler