ROS: operativsystemet for robotikk

ROS, Robotikk

La robotikk er et felt i vekst. Stadig mer kunstig intelligens og roboter erstatter arbeidet til flere mennesker. De er nåtiden og fremtiden, så det er viktig å trene på denne typen felt for å vite hvordan de fungerer og hvilke verktøy og systemer du har til rådighet for robotprosjektene dine. Og i denne artikkelen vil du se hva er ROS og alt du trenger å vite om det.

Hva er ROS?

robotteknikk

ROS står for Robot Operating System, eller robotoperativsystem. Det er en mellomvare for robotikk, det vil si en samling rammeverk beregnet på å lette utviklingen av programvare for roboter. For tiden er det mye brukt i kjente roboter, og er et av de beste verktøyene som er tilgjengelige i dag, helt gratis, skrevet i C og Python, og under en BSD åpen kildekode-lisens.

ROS ble opprinnelig utviklet i 2007, innenfor Stanford Artificial Intelligence Laboratory, og under kodenavnet Switchyard. I utgangspunktet ville det være for STAIR2-robotprosjektet. Etter dette ble det besluttet å åpne.

Et spørsmål som mange ofte får er, hvis det ikke er et operativsystem, hvorfor heter det det? Vel, selv om det er en pakke med biblioteker for utvikling, er sannheten at den gir noen av de viktige funksjoner til et OS, slik som et abstraksjonslag av maskinvaren slik at utviklerne kun bekymrer seg for programvaren, kontroll av de forskjellige komponentene i roboten på lavt nivå, kapasitet for styring og kommunikasjon av prosesser, vedlikehold av pakker osv.

Biblioteket er rettet mot UNIX-systemer, som Linux (i flere distroer, selv om den beste støtten er for Ubuntu) og macOS, selv om det også fungerer i andre operativsystemer som Microsoft Windows.

Det er også viktig å skille mellom deler fra ROS:

  • Steg: er delen som fungerer som operativsystemet, basen. Dette er den BSD-lisensierte programvaredelen. Dette inkluderer hovedkoordinasjonsnoden, datastrømmer (bilder, stereo, laser, kontroll, aktuatorer, kontakt, ...), informasjonsmultipleksing, opprettelse og ødeleggelse av noder, pålogging, etc.
  • ros-pk: er pakken med pakker laget av brukere og som implementerer funksjoner som planlegging, persepsjon, simulering, kartlegging, plassering, etc. Disse andre komponentene er lisensiert i en rekke lisenser.

Las verktøy inkludert i ROS er de:

  • rviz: for simulering og 3D-visualisering.
  • rosbag: for å ta opp og spille av kommunikasjonsmeldinger.
  • catkin- Byggeverktøy, basert på CMake.
  • rosbash- Pakke med verktøy for å utvide funksjonaliteten til bash-skallet.
  • roslaunch: for å kjøre ROS-noder lokalt eller eksternt.

Prosjektdokumentasjon her

ROS-applikasjoner

roboter, ROS-studenter

ROS er et prosjekt i stadig utvikling, og hver gang kan det brukes til flere applikasjoner innen AI og robotikk, og hver gang gjør jobben sin bedre:

  • Kunstige persepsjonssystemer.
  • Identifikasjon av gjenstander og kunstig syn.
  • Ansiktsgjenkjenning, gestgjenkjenning osv.
  • Objektsporing.
  • Visuell odometri.
  • Forståelse av bevegelser.
  • Stereosyn.
  • Robotmobilitet.
  • Kontroll.
  • Planlegger.
  • Gripende gjenstander.
  • Koordinasjon.
  • Testing.
  • Etc.

Eksempler på roboter som bruker ROS

Det er mange, og det vil være vanskelig å liste dem alle, siden ROS har blitt nærmest en "standard" for mange av dem. Men noen av den best kjente er:

  • PR1: personlig robot utviklet av Ken Salisbury-laboratoriet på Stanford.
  • PR2: personlig robot som utvikles av Willow Garage.
  • Baxter:  robot fra Rethink Robotics, Inc.
  • Shadow's Robot: en robothånd fra Shadow Robot-selskapet, i samarbeid med Pierre og Marie Curie-universitetet i Paris og Carlos III-universitetet i Madrid. Utviklet innenfor en europeisk ramme.
  • HERB: opprettet i CMU innenfor det personlige robotikkprogrammet til Intel-selskapet.
  • Aldebaran Nao- En humanoid robot laget av Humanoid Robots Labs og University of Freiburg.
  • Husky UGV: et bakkekjøretøy og åpen kildekode.

Hvorfor bør du lære med ROS?

robotteknikk, industrirobotarm

Roboter er komplekse systemer og robotikk er vanskelig å forstå. Men å ha verktøy som f.eks ROS gjør det mye enklere å utvikle fra bunnen av, fremskynde etableringen av dine egne prosjekter på mye kortere tid og uten så mye kunnskap som om du ikke hadde det.

Med andre ord, fordelene med ROS er å lette veien for utviklere, med en mengde gratis og åpen kildekode-tillegg, slik at du har alt du trenger. I tillegg vil du lære mer enn robotikk, også elektronikk, mekanikk og programmering:

  • Bruk språk som C ++ og Python for å utvikle apper.
  • Administrasjon av nettverk og systemer for å installere og vedlikeholde ROS.
  • Grunnleggende robotikkkonsepter som kartlegging, AI, lokalisering, invers kinematikk, etc., å kunne sette sensorer, aktuatorer, kontrollere osv. i kontakt.

Uansett robotens kompleksitet, med ROS er alt mye enklere. Den er heller ikke begrenset til én type robot, den kan tjene fra kjæledyrroboter, til humanoide roboter, gjennom robotarmer for industri ...

Mer informasjon om ROS - Offisiell nettside


Bli den første til å kommentere

Legg igjen kommentaren

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *

*

*

  1. Ansvarlig for dataene: Miguel Ángel Gatón
  2. Formålet med dataene: Kontroller SPAM, kommentaradministrasjon.
  3. Legitimering: Ditt samtykke
  4. Kommunikasjon av dataene: Dataene vil ikke bli kommunisert til tredjeparter bortsett fra ved juridisk forpliktelse.
  5. Datalagring: Database vert for Occentus Networks (EU)
  6. Rettigheter: Når som helst kan du begrense, gjenopprette og slette informasjonen din.