Google+

sobota, 14 grudnia 2013

1100001 (Co to jest ROS i z czym to się je)

   ROS (Robotic Operating System) jest magiczną istotą, która pojawia się na blogu od czasu do czasu, robi jakieś cuda i nigdy nie została dobrze opisana. Pora to naprawić, bo ten system powoli wyrasta na jedno z popularniejszych narzędzi w robotyce.

Logo konferencji ROSCon 2013. Poznajcie wszystkie roboty?
   ROS, jak sama nazwa wskazuje, jest frameworkiem do tworzenia oprogramowania na roboty. W dużym skrócie dzięki niemu nie musimy wymyślać koła od nowa przy tworzeniu każdego robota, co pozwala skupić się na tym co jest dla niego wyjątkowe. Podłączenie czujników? Żaden problem. Obsługa kamery? Jeśli tylko Linuks wam pozwoli. Chcecie, żeby robot dotarł do celu? Nie musicie wcale pisać algorytmu od zera. Powstały w 2007 roku i rozwijany przez Willow Garage i środowiska z nim związane zyskuje coraz więcej możliwości i użytkowników. O popularności świadczą liczby (dane z grudnia 2012, czyli czasu świętowania pięciolecia): strona internetowa projektu wymienia około 100 w większości znacznych i dużych projektów opierających się na ROS, system doczekał się 7 dystrybucji i 3699 publicznych paczek z oprogramowaniem (stan na czerwiec 2012).

Przegląd robotów wykorzystujących ROS stworzony rok temu.

    Jedną z dużych zalet ROS jest jego uniwersalność. Strona internetowa projektu mówi o około 100 robotach działających w oparciu o ten system. Wśród nich warto wymienić mobilne manipulatory na przykład PR2 Willow Garage, Human Support Robot Toyoty, czy YouBot KUKI i małe roboty mobilne takie jak Qbo, Rovio firmy WowWee i zhakowana Roomba.


    Dzięki ROS Industrial możliwe jest wykorzystanie możliwości bibliotek na robotach przemysłowych firm ABB, Universal Robots, Adept, Fanuc i Motoman. W tym przypadku ROS jest wyłącznie sterowaniem wysokopoziomowym poprzez komputer podłączony do kontrolera robota (ROS nie jest systemem czasu rzeczywistego, czyli chociażby ze względów bezpieczeństwa wykluczone jest użycie tylko jego).



    Oprócz tego warto wspomnieć o manipulatorach nie do końca przemysłowe: Barret WAM, Baxter, czy Shadow Dexterous Hand.


     Dalej należy wymienić przynajmniej cztery humanoidy: Nao i Romeo od Aldebaran Robotics, Robonaut 2 stworzony przez NASA i REEM-C od Pal Robotics.

Niedawno pokazany światu REEM-C.
    Chciałbym napisać, że używanie tego systemu jest łatwe i przyjemne i w 10 minut możemy od zera zbudować system robota. Oczywiście tak nie jest. Wszystkie opisane wspomniane przyjemności czekają na nas niestety dopiero po instalacji i zrozumieniu działania całego systemu, co jak przystało na otwarte oprogramowanie, nie jest łatwe i może być całkiem skutecznym sposobem odstraszenia nowych użytkowników.

    Podsumowując: jeśli ktoś chce się zająć robotyką na poważnie to znajomość ROS znacznie ułatwi mu znalezienie pracy. Tak samo, jeśli chce zbudować robota, muszącego wykonywać wiele zaawansowanych funkcji, albo wypróbować jakiś pomysł na którejś z wielu istniejących konstrukcji (modele wielu z nich są dostępne w symulatorze).  Jeśli jednak celem jest zbudowanie prostego systemu jak na przykład robot, który zamyka oczy i mówi mamo... dajcie sobie spokój z ROS i zainwestujcie w Arduino.

1 komentarz:

  1. nie daj Boziu podpinać ROSa pod roboty ABB, one sobie nie radzą ze swoim własnym systemem! :O

    OdpowiedzUsuń