billede af robot

BMW anvender ROS i udviklingen af selvkørende biler. Input fra sensorer i bilen anvendes i ROS-systemet til at planlægge korrektioner af kørslen, der så sendes til en Dspace MicroAutobox, som korrigerer kørslen.

open source

ROS - det åbne styresystem for robotter

Robot Operating System er otte år gammelt og anvendes allerede i mange robotter. Vi ser nærmere på open source-styresystemet for robotter.

"ROS er ikke et styresystem i traditionel forstand ... det giver derimod et struktureret kommunikationslag oven på værtsstyresystemerne i en heterogen computerklynge."

Sådan lyder den oprindelige beskrivelse af Robot Operating System (ROS) i forskningspapiret ”ROS: an open-source Robot Operating System”.

Fra universitet til industri

Fremfor at være et styresystem for robotter kan ROS bedre beskrives som en samling software-libraries og værktøjer, som man kan anvende til at udvikle robotapplikationer. Data fra diverse sensorer opsamles af ROS, og baseret på de sensor-input vil robottens interne model af verden blive opdateret. Robotten kan på basis af den opdaterede verdensmodel beslutte at bevæge sig eller manipulere omgivende fysiske objekter ved at aktivere ROS-enablede manipulatorer som robot-arme, -ben og -hænder.

ROS var inspireret af udviklingen af Stanford Artificial Intelligence Robot (STAIR) i 2007. Robotforskere fra Stanford University gik derefter sammen med forskere fra University of Southern California og robotvirksomheden Willow Garage i 2008 for at udvikle et system til at kontrollere og styre robotter. I 2009 blev forskningspapiret publiceret, og i dag anvendes, videreudvikles og vedligeholdes ROS af en lang række selskaber med interesse i robotteknologi, deriblandt chipleverandører som Intel og Nvidia samt bilfabrikanter som BMW. I alt har mere end 2.000 personer bidraget med kode til ROS, der i dag består af mere end 10 millioner kodelinjer.

BSD-licens

ROS er open source under BSD-licensen, og for robotforskerne var valget af en open source-model nærmest uundgåeligt, da det giver mere frihed og mulighed for at eksperimentere ved udvikling af diverse robotteknologier.

– Den fulde kildekode for ROS er offentlig tilgængelig. Vi mener, det er nødvendigt for at gøre det muligt at debugge på alle niveauer af softwarestakken, begrundede robotforskerne deres valg af BSD-licensen.

Det er ikke kun universitetsforskere, der sætter pris på open source-softwares mulighed for at ændre i kildekoden. Det var blandt andet, fordi ROS er open source, at BMW blev interesseret i robotsoftwaren. I dag anvender BMW softwaren i semi-selvkørende biler; eksempelvis til autopilot og autoparkering.

– En stor brugerbase betyder stabilitet og pålidelighed, fordi der højst sandsynligt allerede er nogle, der har oplevet det problem, du sidder med, forklarede BMW's forskningsingeniør i automatisk kørsel, Michael Aeberhard, på den seneste konference om ROS. Han fremhævede også det store udvalg af ROS-baserede softwarepakker, ligesom muligheden for at samarbejde med universiteter og forskningsinstitutioner smidiggøres, når begge parter anvender ROS.

Version 2 af ROS

I den oprindelige version af ROS foregik kommunikationen mellem forskellige processser internt i robotten og eventuelle eksterne processer på en eller flere computere uden for robotten ved hjælp af XML-RPC. Men i den kommende version 2 af ROS, som forventes frigivet i løbet af dette efterår, vil industristandarden DDS (Data Distribution Service) blive den nye kernekommunikation i ROS.

DDS-standarden er defineret af Object Management Group, der også stod bag en anden middleware-standard, CORBA. CORBA fik ry for at være en standard udarbejdet af en komité: Standarden så pæn ud på papiret, men performede elendigt i virkeligheden.

Det har vakt en del bekymring i ROS-miljøet: Er DDS også en papirstandard med ringe performance i virkeligheden?

Kan komité-standard performe?

Det afviser William Woodall fra Open Source Robotics Foundations. I artiklen ”ROS on DDS” på design.ros2.org tager han fat på de eventuelle bekymringer om planerne om at anvende DDS som en central komponent i ROS:

"...selvom DDS-specifikationen er skrevet af en komité, er den udviklet til sin nuværende form ved at reagere på brugernes behov. Den type organisk udvikling af specifikationen, inden den blev ratificeret, synes at afbøde bekymringer om, at standarden er designet i et vakuum og ikke vil performe i virkeligheden. Der er eksempler på, at komitéer med de bedste hensigter udvikler velbeskrevne specifikationer, som ingen ønsker at bruge, eller som ikke imødekommer brugernes behov, men det synes ikke at være tilfældet med DDS."

Der peges også på, at DDS anvendes af NASA, den amerikanske flåde og en lang række andre virksomheder og organisationer med forretningskritiske applikationer. Vi får se, om ROS baseret på DDS også fungerer for robotter, og om ROS stadig vil være robotforskernes foretrukne software.

 

Peer-to-peer

ROS er baseret på en peer-to-peer-topology, hvor et antal processer udveksler beskeder via en publish-sub-scribe-mekanisme. Et kamera kan eksempelvis meddele ROS-systemet, at det vil publicere billeder ved at annon-cere et topic billeder. En billedbehandlingsalgoritme kan abonnere på det topic. Via en ROS Master registrerer en publisher (talker i diagram) sit topic (”bar” i diagram-met) og en adresse. En subscriber (listener i diagrammet) meddeler ROS Master, at den gerne vil lytte til alt ved-rørende bar-topic. ROS Master fortæller så, hvor sub-scriberen skal forbinde sig for at kunne modtage data om ”bar”. Herefter foregår dataudvekslingen direkte mellem de to processer uafhængigt af ROS Master.


Læs også...

Onsdag og torsdag faldt de store techgiganters markedsværdi med svimlende beløb. Måske er det konsekvensen af investeringskapløbet i AI. For få…

På grund af den nye lov om registrering af arbejdstid, har PROSAs juridiske team hen over sommeren fået mange henvendelser omkring tidsregistrering og…

Forestående ferietid betyder desværre også fyringstid og ”oprydning” i en del virksomheder. Det fortæller jurist Camilla Winter, som her giver et par…

Vi kan ligeså godt se det i øjnene - juli vejret er lunefuldt og rammer ofte sommerdrømmene som en våd karklud. Men fortvivl ikke! PROSAs egen film-…

Internettet og computerbranchen var engang det vilde vesten, et sted, hvor man kunne gøre, hvad man ville uden nogen form for ansvar for almindelige…

Hvad er op og ned i junglen af sundhedstrends? PROSAbladet har spurgt Martin Grønne Jensen, som er dataingeniør, holder foredrag om longevity og er…

Vil du gerne leve længere, så bør du måske give longevity escape velocity-teorien lidt opmærksomhed. Tilhængerne af teorien mener nemlig, at vi kan…

Ny image-analyse fra Computerworld rykker ikke ved, hvem de danske it-professionelle sætter ind på en førsteplads. Til gengæld må Apple se sig slået…

XZ Utils-angrebet havde potentialet til at blive det mest alvorlige supply chain attack til dato, men angrebet blev (heldigvis) spottet i tide, fordi…

JA, siger Isak, Amanda, Lea, Martha og Hannibal. De er mellem 16-26 år og bruger dagligt flere timer på at scrolle gennem de sociale medier for at…