
W xBerry uważnie śledzimy, jak rozwija się świat wokół nas. Naszą odpowiedzią na te zmiany jest nieustanne poszukiwanie nowych rozwiązań, które mogłyby poprawić naszą rzeczywistość. To podejście pomogło nam odnieść sukces w projekcie Maddie – wspólnie z międzynarodowym zespołem stworzyliśmy prototyp konceptualnego robota, który zapewnia autonomiczną pomoc w obowiązkach domowych.

Wyzwanie
Prace nad prototypem Maddie wykonywaliśmy jako część większego, międzynarodowego zespołu o doskonałej wiedzy z zakresu robotyki.
Naszym zadaniem było stworzenie zaawansowanego oprogramowania, które pozwoli Maddie płynnie wykonywać złożone zadania i układać je w procesy. Wiedzieliśmy, że robot powinien być dostosowany do różnych potrzeb i sprostać wyzwaniom różnych branż usługowych – od opieki nad osobami starszymi, po ochronę i transport.
Maddie musiała być niezależna od operatorów ludzkich, wysublimowana i wystarczająco zaawansowana, aby planować i logicznie organizować swoje zadania. Aby to wszystko mogło się wydarzyć, nasz robot potrzebował przełomowego oprogramowania, które pozwoliłoby mu rozpoznawać obiekty, mapować przestrzeń, pamiętać wybory i preferencje użytkownika oraz rozwijać zdolność do organizacji swoich zadań.
Cele
Aby to wszystko było możliwe, musieliśmy stworzyć zaawansowane oprogramowanie dla robota Maddie.
Po pierwsze, naszym zadaniem było pomóc robotowi w nawigacji na podstawie analizy otoczenia. W tym celu stworzyliśmy algorytmy ekspansji, które pomagały Maddie tworzyć mapę układu przestrzennego – gdy poruszała się po danym obszarze wielokrotnie, analizowała przestrzeń w celu opracowania optymalnej trasy dla regularnego skanowania. Po naszej stronie leżała weryfikacja, czy Maddie potrafi obliczać odległość do określonego obiektu i dokładnie planować swoje ruchy.
Specjalnie dla Maddie opracowaliśmy i zaprogramowaliśmy algorytmy odkurzania, indywidualnie dostosowane do cech naszego robota. Następnie wprowadziliśmy zaawansowane oprogramowanie, które umożliwia robotowi logiczne planowanie i priorytetyzację zadań.
Zajęliśmy się również przetwarzaniem danych – na przykład w celu upewnienia się, że zbędny hałas zostanie rozpoznany i usunięty z nagrań audio wykonanych przez robota. Musieliśmy również zapewnić przetwarzanie rejestracji punktów chmur danych i upewnić się, że Maddie umożliwia komunikację przez sieć komórkową i zarządzanie z poziomu aplikacji mobilnej.
Rozwiązanie
-
Wykorzystaliśmy Docker jako środowisko deweloperskie, efektywne do testowania i monitorowania możliwych błędów.
-
Dzięki użyciu biblioteki OpenCV oraz przetwarzaniu obrazów w całym projekcie, zapewniliśmy szybką segmentację układu mieszkania na poszczególne pomieszczenia.
-
Dołączyliśmy do zespołu po rozpoczęciu projektu, kiedy niektóre z technologii zostały już wcześniej wybrane - jak C++. Zgadzamy się jednak, że był to najlepszy wybór aby zapewnić maksymalną wydajność w zgodzie z celem projektu.
-
Opieraliśmy się na ROS (Robot Operating System) do dostarczania usług kontroli urządzeń i sprzętu, implementacji podstawowej funkcjonalności oraz zarządzania pakietami.
Rezultat
Choć w pełni funkcjonalne roboty domowe są jeszcze daleko w przyszłości, sukces prototypu Maddie pokazuje, jak rozwiązania, które opracowujemy dziś, mogą wpływać na proces powstawania kolejnych wynalazków.
Aby umożliwić Maddie poruszanie się i wykonywanie czynności w rzeczywistej przestrzeni wypełnionej obiektami, konieczne było zastosowanie kilku zaawansowanych technik, od skomplikowanego przetwarzania obrazów i danych po algorytmy ekspansji, które pozwalały jej analizować zmapowaną przestrzeń i wybierać optymalne trasy ruchu.
Dzięki oprogramowaniu wspierającemu rozpoznawanie obiektów za pomocą kamer 2D i 3D, Maddie może planować i wykonywać zadania głównie na podstawie informacji wizualnych, poruszając się po pomieszczeniu i wykonując konkretne czynności domowe.
Prototyp jest również kompatybilny z zewnętrzną aplikacją mobilną, która umożliwia ręczne planowanie obowiązków. Prototyp Maddie został zaprezentowany na targach General Electronics w Stanach Zjednoczonych.
Rzeczywisty wygląd i nazwa robota są objęte klauzulą poufności.
