Moja firma wkrótce rozpocznie zupełnie nowy projekt robotyki i wciąż staramy się zdecydować, czy powinniśmy zaprojektować i zakodować platformę oprogramowania robotyki od podstaw, czy też istnieją jakieś dobre, istniejące.
Byłoby bardzo przydatne, gdyby istniała platforma oprogramowania, która była powszechnie stosowana zarówno wśród naukowców, jak i przemysłu, aby nasz system robotów był ogólnie kompatybilny z innymi i aby ludzie już go znali.
Chcielibyśmy, aby platforma oprogramowania mogła:
- Łatwa integracja nowych robotycznych komponentów sprzętowych.
- Zawiera już szeroki wachlarz przydatnych narzędzi do przetwarzania danych i wizualizacji
- Efektywnie wykorzystuj sprzęt komputerowy
Odpowiedzi:
ROS szybko staje się nowym standardem dla robotyki przemysłowej i badawczej. Większość grup badawczych, o których wiem, przyjmuje ROS do swojej pracy, a następnie wypycha swoje wyniki z powrotem na jaw, aby każdy mógł je wykorzystać i poprawić. Willow Garage opracowuje pakiet platform sprzętowych i programowych, które skupiają się wokół ROS. ROS to dobre miejsce na rozpoczęcie wyszukiwania.
źródło
Zestaw konstrukcyjny robota jest alternatywą dla ROS. Koncentruje się na inżynierii modelowej i projektowaniu / zarządzaniu złożonymi systemami. Jest również nakłaniany do „nie bycia ściśle zależnym od Rocka”. Większość algorytmów / sterowników w Rock jest niezależna od warstwy składowej. Zobacz także tę stronę, aby szybko podsumować różnice między Rockiem a ROS.
Jak wskazuje poprzednia odpowiedź, ROS jest używany głównie jako cienka biblioteka komunikacyjna. Warstwa składowa skały jest grubsza, aby zapewnić narzędzia niezbędne do skalowania do złożonych systemów.
To, co musisz zrozumieć, to: w dzisiejszych czasach jedynym wartym uwagi oprogramowaniem robotycznym typu open source jest niezależne od frameworka (OpenCV, PCL, OpenRave, Gazebo, ...). Nawet Willow Garage w końcu to zrozumiał. Dlatego można go zintegrować z minimalną ilością pracy w dowolnym środowisku.
Teraz: Twój najlepszy wybór zależy również od Twojego celu. Jeśli chcesz sprzedać sprzęt, to możliwe, że posiadanie węzła ROS jest najlepszym wyborem (nawet jeśli dobra biblioteka sterowników, która jest następnie zintegrowana z węzłem ROS, jest jeszcze lepsza).
źródło
Orocos
Jak powiedział @BarretAmes, istnieją integracje, które pozwalają na wdrożenie systemów hybrydowych, w których Orocos i inne oprogramowanie Framework Framework współpracują ze sobą.
źródło
Moją preferowaną platformą jest ROS. Jest jednak inny silny rywal z ... odważę się to powiedzieć ... Microsoft. Nazywa się Robotics Developer Studio (RDS). Rozpocznij wyszukiwanie tutaj: http://www.microsoft.com/robotics/
Mają wiele filmów imponujących aplikacji. Dla mnie największą zaletą jest wbudowana obsługa Kinect za pośrednictwem Microsoft Kinect SDK. Technicznie ten, którego używa ROS z OpenNI, ma te same możliwości, ale wydaje się pocieszające wiedzieć, że SDK, którego używa RDS, jest napisany przez tę samą firmę, która wyprodukowała sprzęt.
źródło
Player / Stage jest nadal jednym z najpopularniejszych projektów robotyki typu open source. Jest już od dłuższego czasu, a niektórzy z jego programistów rozpoczęli ROS, ale to nie zmniejsza użyteczności Gracza. Rzeczywiście, wszystkie trzy główne komponenty, Player (framework), Stage (symulator 2D) i Gazebo (symulator 3D), zostały nieco kompatybilne z ROS .
źródło
MOOS jest analogiem ROS dla Oxfordu. http://www.robots.ox.ac.uk/~mobile/MOOS/wiki/pmwiki.php Wykorzystuje się go w wielu aplikacjach morskich, od zamiatania portów do niskiej mocy, UUV, których powierzchnia zgłaszana jest w liczonych odstępach czasu w ciągu miesięcy.
źródło
OpenRTM
OpenRTM-aist został opracowany przez japoński Narodowy Instytut Zaawansowanej Nauki i Technologii Przemysłowej, który również przyczynia się do zdefiniowania standardu oprogramowania pośredniego RT.
Jest to platforma oparta na komponentach typu open source, która zapewnia możliwości w czasie rzeczywistym. Oprócz frameworka dostępne są niektóre narzędzia:
źródło