Share to: share facebook share twitter share wa share telegram print page

 

Robot Operating System

Robot Operating System
logo
Ilustracja
Symulacja w RVIZ
Autor Willow Garage oraz Stanford Artificial Intelligence Laboratory
Aktualna wersja stabilna Jazzy Jalisco / 23 maja 2024; ponad 8 miesięcy temu
Język programowania C++, Python
System operacyjny Linux
Licencja Licencja BSD
Strona internetowa

Robot Operating System (ROS) – otwartoźródłowa platforma programistyczna do tworzenia oprogramowania sterowania robotów. Jest zbiorem wielu bibliotek pozwalających na sterowanie i symulację pracy robota.

ROS choć nie jest systemem operacyjnym zapewnia komunikację między procesami i wsparcie dla nisko-poziomowej kontroli urządzeń. Opiera się na idei tworzenia (najczęściej w C++) współbieżnie działających węzłów reprezentujących pojedyncze procesy i będących w istocie programami o dużym stopniu autonomii. Wprowadza abstrakcję warstwy sprzętowej. Węzły komunikują się między sobą poprzez ciągłe asynchroniczne rozgłaszanie i nasłuchiwanie wiadomości o konkretnym typie i temacie. Umożliwia także rozgłaszanie serwisów, których wywołanie powoduje określenie przypisanych im czynności i zwrócenie odpowiedzi. Komunikację między procesami nadzoruje uruchamiany jako pierwszy węzeł nadrzędny będący częścią rosapi. Jego częścią jest także serwer parametrów umożliwiający przechowywanie wartości globalnie dostępnych dla pozostałych programów. Węzły rozgłaszające wiadomości nazywamy publisherami, a nasłuchujące subscribentami. Większość węzłów pełni obie te role jednocześnie. ROS powstał w laboratorium Willow Garage. Dostarcza w paczkach napisane przez nich lub społeczność implementacje algorytmów do zadań często używanych w robotyce jak obsługa sensorów, mapowanie czy planowanie ścieżki, a także symulatory (np. gazebo) i wizualizatory danych (np. rviz)[1][2].

ROS został wydany na licencji BSD. Może być wykorzystywany zarówno w celach naukowych, jak i komercyjnych za darmo.

Oficjalne wersje (nazywane dystrybucjami) ROS 1[3]:

  • 23 maja 2020 - Noetic Ninjemys (dedykowana Ubuntu 20)
  • 23 maja 2018 – Melodic Morenia (dedykowana Ubuntu 18)
  • 23 maja 2017 – Lunar Loggerhead
  • 23 maja 2016 – Kinetic Kame (dedykowana Ubuntu 16)
  • 23 maja 2015 – Jade Turtle
  • 22 lipca 2014 – Indigo Igloo (dedykowana Ubuntu 14)
  • 4 września 2013 – Hydro Medusa
  • 23 kwietnia 2012 – Fuerte
  • 30 sierpnia 2011 – Electric
  • 2 marca 2011 – Diamondback
  • 3 sierpnia 2010 – C Turtle
  • 1 marca 2010 – Box Turtle
  • 22 stycznia 2010 – ROS 1.0

Ponadto, powstał też ROS 2, mający na celu poprawienie niedoskonałości z ROS 1. Jego wersje (dystrybucje)[4]:

  • 23 maja 2024 - Jazzy Jalisco
  • 23 maja 2023 - Iron Irwini
  • 23 maja 2022 - Humble Hawksbill
  • 23 maja 2021 - Galactic Geochelone
  • 5 czerwca 2020 - Foxy Fitzroy
  • 22 października 2019 - Eloquent Elusor
  • 31 maja 2019 - Dashing Diademata
  • 14 grudnia 2018 - Crustal Clemmys
  • 2 lipca 2018 - Bouncy Bolson
  • 8 grudnia 2017 - Ardent Apalone

Przypisy

  1. M. Quigley i inni, ROS: an open-source Robot Operating System, 2009.
  2. Safdar Zaman, ROS-based mapping, localization and autonomous navigation using a Pioneer 3-DX robot and their relevant issues, Wolfgang Slany, Gerald Steinbauer, kwiecień 2011.
  3. Distributions – ROS Wiki [online], wiki.ros.org [dostęp 2024-09-15].
  4. Distributions - ROS 2 Documentation: Jazzy Documentation. [dostęp 2024-09-15].

Linki zewnętrzne

Prefix: a b c d e f g h i j k l m n o p q r s t u v w x y z 0 1 2 3 4 5 6 7 8 9

Portal di Ensiklopedia Dunia

Kembali kehalaman sebelumnya