ROS: operacijski sistem za robotiko

ROS, robotika

La robotika je področje, ki se širi. Vedno več umetne inteligence in robotov nadomešča delo več ljudi. So sedanjost in prihodnost, zato je pomembno, da se usposabljate na tovrstnih področjih, da boste vedeli, kako delujejo ter katera orodja in sisteme imate na voljo za svoje projekte robotike. In v tem članku boste videli kaj je ROS in vse, kar morate vedeti o tem.

Kaj je ROS?

robotsko inženirstvo

ROS je kratica za Robot Operating Systemali operacijski sistem robota. Gre za vmesno programsko opremo za robotiko, torej zbirko okvirjev, namenjenih olajšanju razvoja programske opreme za robote. Trenutno se široko uporablja v dobro znanih robotih, saj je eno najboljših orodij, ki so danes na voljo, popolnoma brezplačno, napisano v C in Python ter pod odprtokodno licenco BSD.

ROS je bil prvotno razvit leta 2007 v okviru Laboratorij za umetno inteligenco Stanford, in pod kodnim imenom Switchyard. Sprva bi bil za projekt robota STAIR2. Po tem je bilo odločeno, da se odpre.

Vprašanje, ki si ga mnogi pogosto zastavljajo, je, zakaj se tako imenuje, če ni operacijski sistem? No, čeprav je zbirka knjižnic za razvoj, je resnica, da ponuja nekaj od tega bistvene funkcije operacijskega sistema, kot je abstrakcijski sloj strojne opreme, tako da razvijalci skrbijo le za programsko opremo, nadzor različnih komponent robota na nizki ravni, zmogljivost za upravljanje in komunikacijo procesov, vzdrževanje paketov itd.

Knjižnica je usmerjena k sistemi UNIX, kot je Linux (v več distribucijah, čeprav je najboljša podpora za Ubuntu) in macOS, čeprav deluje tudi v drugih operacijskih sistemih, kot je Microsoft Windows.

Prav tako je pomembno razlikovati med delov iz ROS:

  • Rose: je del, ki deluje kot operacijski sistem, osnova. To je del programske opreme z licenco BSD. To vključuje glavno koordinacijsko vozlišče, tokove podatkov (slike, stereo, laser, krmiljenje, aktuatorji, kontakt, ...), multipleksiranje informacij, ustvarjanje in uničenje vozlišč, prijavo itd.
  • ros-pkg: je zbirka paketov, ki jih ustvarijo uporabniki in ki izvajajo funkcionalnosti, kot so načrtovanje, zaznavanje, simulacija, kartiranje, lokacija itd. Te druge komponente so licencirane v najrazličnejših licencah.

The priložena orodja v ROS so:

  • rviz: za simulacijo in 3D vizualizacijo.
  • rosbag: za snemanje in predvajanje komunikacijskih sporočil.
  • Catkin- Orodje za gradnjo, ki temelji na CMake.
  • rosbash- Paket z orodji za razširitev funkcionalnosti lupine bash.
  • roslaunch: za zagon vozlišč ROS lokalno ali na daljavo.

Projektna dokumentacija tukaj

ROS aplikacije

roboti, študenti ROS

ROS je projekt v nenehnem razvoju in ga je mogoče vsakič uporabiti več aplikacij na področju AI in robotike in vsakič bolje opravi svoje delo:

  • Sistemi umetnega zaznavanja.
  • Identifikacija predmetov in umetni vid.
  • Prepoznavanje obraza, prepoznavanje kretenj itd.
  • Sledenje predmetom.
  • Vizualna odometrija.
  • Razumevanje gibov.
  • Stereo vid.
  • Mobilnost robotov.
  • Nadzor.
  • Načrtovanje.
  • Prijem predmetov.
  • Usklajevanje.
  • Testiranje.
  • Itd

Primeri robotov, ki uporabljajo ROS

Veliko jih je in težko bi vse našteli, saj je ROS za mnoge postal skoraj "standard". Toda nekatere od najbolj znan Zvok:

  • PR1: osebni robot, ki ga je razvil laboratorij Ken Salisbury na Stanfordu.
  • PR2: osebni robot, ki ga razvija Willow Garage.
  • Baxter:  robot podjetja Rethink Robotics, Inc.
  • Shadow's Robot: robotska roka podjetja Shadow Robot v sodelovanju z Univerzo Pierre in Marie Curie v Parizu ter Univerzo Carlos III v Madridu. Razvito v evropskem okviru.
  • Herb: ustvarjeno v CMU v okviru programa osebne robotike korporacije Intel.
  • Aldebaran Nao- Humanoidni robot, ki sta ga ustvarila Humanoid Robots Labs in Univerza v Freiburgu.
  • Husky UGV: kopensko vozilo in odprtokodno.

Zakaj bi se morali učiti z ROS?

robotski inženiring, roka industrijskega robota

Roboti so zapleteni sistemi in robotiko je težko razumeti. Vendar pa imajo orodja, kot je npr ROS olajša razvoj iz nič, pospeševanje ustvarjanja lastnih projektov v veliko krajšem času in brez toliko znanja, kot da ga ne bi imeli.

Z drugimi besedami, prednosti ROS so, da olajša pot razvijalcem z množico brezplačnih in odprtokodnih dodatkov, tako da boste imeli vse, kar potrebujete. Poleg tega se boste naučili več kot robotika, tudi elektronika, mehanika in programiranje:

  • Za razvoj aplikacij uporabite jezike, kot sta C++ in Python.
  • Administracija omrežij in sistemov za namestitev in vzdrževanje ROS.
  • Osnovni koncepti robotike, kot so preslikava, umetna inteligenca, lokalizacija, inverzna kinematika itd., da lahko povežete senzorje, aktuatorje, krmilnike itd.

Ne glede na to kompleksnost robota, z ROS je vse veliko bolj preprosto. Prav tako ni omejen na eno vrsto robotov, lahko služi od robotov za hišne ljubljenčke, do humanoidnih robotov, prek robotskih rok za industrijo ...

Več informacij o ROS - Uradna spletna stran


Bodite prvi komentar

Pustite svoj komentar

Vaš e-naslov ne bo objavljen. Obvezna polja so označena z *

*

*

  1. Za podatke odgovoren: Miguel Ángel Gatón
  2. Namen podatkov: Nadzor neželene pošte, upravljanje komentarjev.
  3. Legitimacija: Vaše soglasje
  4. Sporočanje podatkov: Podatki se ne bodo posredovali tretjim osebam, razen po zakonski obveznosti.
  5. Shranjevanje podatkov: Zbirka podatkov, ki jo gosti Occentus Networks (EU)
  6. Pravice: Kadar koli lahko omejite, obnovite in izbrišete svoje podatke.