Spisu treści:
- Krok 1: Instalowanie zależności Bootstrap i pobieranie pakietów
- Krok 2: Napraw problemy
- Krok 3: Zbuduj i pobierz instalację
- Krok 4: Zainstaluj pakiet RPLIDAR ROS
- Krok 5: Skonfiguruj ROS, aby działał na wielu komputerach
- Krok 6: Gotowe
Wideo: ROS Melodic na Raspberry Pi 4[Debian Buster] + RPLIDAR A1M8: 6 kroków
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:27
W tym artykule omówimy proces instalacji ROS Melodic Morenia na Raspberry Pi 4 z najnowszym Debian Buster i jak używać RPLIDAR A1M8 w naszej instalacji.
Ponieważ Debian Buster został oficjalnie wydany zaledwie kilka tygodni temu (w momencie pisania tego artykułu), nie ma gotowych pakietów ROS do zainstalowania za pomocą apt-get, który jest preferowaną metodą instalacji. Dlatego będziemy musieli zbudować go ze źródła. Zaufaj mi, to nie jest takie straszne, jak się wydaje. Proces jest opisany w tym oficjalnym samouczku, ale aby zbudować ROS Melodic na Raspberry Pi, będziemy musieli wprowadzić kilka modyfikacji.
Jeśli nadal się boisz, oto zabawny obrazek, który *może* pomóc Ci się zrelaksować. Prosimy o przekazanie informacji zwrotnej, jeśli zapewniony poziom relaksu był wystarczający. Jeśli nie, zostanie zastąpiony zdjęciem zabawnego kota.
EDIT w styczniu 2020 r.: Ponieważ minęło pół roku od opublikowania tego artykułu, mogły nastąpić pewne zmiany w ROS lub Buster. Obrazek dla Raspberry Pi 4 zrobiłem jakiś czas temu, po napisaniu tego samouczka. Współtwórca przesłał go na Dysk Google
Kwiecień 2020 EDYCJA: Ostatnio znalazłem czas na ponowne wykonanie instalacji ROS Melodic na najnowszym obrazie Raspbian z oficjalnej strony Raspberry Pi. Odpowiednio zmodyfikowałem tę instrukcję. Stworzyłem również i udostępniłem czyste, skompresowane obrazy:
Raspbian Buster Lite 2020-02-13 Wydanie z ROS Melodic Bare-bones Potrzebujesz karty SD o pojemności 8 GB
Raspbian Buster z pulpitem 2020-02-13 Wydanie z ROS Melodic Desktop Potrzebujesz karty SD o pojemności 16 GB
Może to być najszybszy sposób na uruchomienie i uruchomienie systemu. Jeśli chcesz samodzielnie skompilować ROS, czytaj dalej ten artykuł.
Krok 1: Instalowanie zależności Bootstrap i pobieranie pakietów
Zacznijmy od skonfigurowania repozytoriów i zainstalowania niezbędnych zależności
sudo sh -c 'echo "deb https://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
aktualizacja sudo apt-get
sudo apt-get install -y python-rosdep python-rosinstall-generator python-wstool python-rosinstall build-essential cmake
Następnie zainicjuj rosdep i zaktualizuj go
sudo rosdep init
aktualizacja rosdep
Kiedy to zrobimy, stwórzmy dedykowany obszar roboczy catkin do budowania ROS i przejdźmy do tego katalogu.
mkdir ~/ros_catkin_ws
cd ~/ros_catkin_ws
Teraz masz dwie możliwości:
ROS-Comm: (Bare Bones) instalacja - zainstaluj tę, jeśli znasz ROS i wiesz, co robisz i jakich pakietów będziesz potrzebować. Jeśli potrzebujesz pakietów, które nie są zawarte w ROS-Comm, będziesz musiał skompilować również ze źródeł.
Instalacja na pulpicie: zawiera narzędzia GUI, takie jak rqt, rviz i biblioteki robot-generic. Może być lepszym wyborem dla początkujących do ROS.
Pójdę z instalacją Desktop Install tutaj.
rosinstall_generator pulpit --rosdistro melodic --deps --wet-only --tar > melodic-desktop-wet.rosinstall
wstool init -j8 src melodic-desktop-wet.rosinstall
Pobranie wszystkich podstawowych pakietów ROS do folderu src zajmie kilka minut.
Jeśli init wstool nie powiedzie się lub zostanie przerwany, możesz wznowić pobieranie, uruchamiając:
aktualizacja wstool -j4 -t src
Krok 2: Napraw problemy
Kwiecień 2020 EDIT: Pomiń ten krok, wydaje się, że wszystkie problemy zostały teraz naprawione
Zainstalujmy kompatybilną wersję Assimp (Open Asset Import Library), aby naprawić problem z zależnościami collada_urdf.
mkdir -p ~/ros_catkin_ws/external_src
cd ~/ros_catkin_ws/external_src
wget https://sourceforge.net/projects/assimp/files/assi… -O assimp-3.1.1_no_test_models.zip
rozpakuj assimp-3.1.1_no_test_models.zip
cd asimp-3.1.1
cmake.
robić
sudo dokonać instalacji
Zainstalujmy też OGRE dla rviz
sudo apt-get zainstaluj libogre-1.9-dev
AKTUALIZACJA ze stycznia 2020 r.: Problemy z libbost zostały już naprawione przez programistów ROS, możesz pominąć tę część
/// pomiń /// Na koniec musimy naprawić problemy z libboost. Używam rozwiązania z tego postu na stackoverflow:
Błędy podczas kompilacji są powodowane przez funkcję 'boost::posix_time::milliseconds', która w nowszych wersjach boost akceptuje tylko argument typu integer, ale pakiet actionlib w ROS daje jej pływalność w kilku miejscach. Możesz wyświetlić listę wszystkich plików używając tej funkcji (!w folderze ros_catkin_ws!):
znajdź -typ f -print0 | xargs -0 grep 'boost::posix_time::milisekundy' | wyciąć -d: -f1 | sortuj -u
Otwórz je w edytorze tekstu i wyszukaj wywołanie funkcji 'boost::posix_time::milisekundy'.
i zamień wywołania w ten sposób:
boost::posix_time::milisekundy(loop_duration.toSec() * 1000.0f));
z:
boost::posix_time::milisekundy(int(loop_duration.toSec() * 1000.0f)));
i tamte:
boost::posix_time::milisekundy(1000.0f)
z:
boost::posix_time::milisekundy(1000)
Polecam używać edytora tekstu nano, który jest prostszy niż VIM;) Ctrl+O zapisuje, Ctrl+X wychodzi, a Ctrl+W szuka.
///kontynuuj_tutaj///
Krok 3: Zbuduj i pobierz instalację
Następnie używamy narzędzia rosdep do instalacji wszystkich pozostałych zależności:
rosdep install --from-paths src --ignore-src --rosdistro melodyczny -y
Po zakończeniu pobierania pakietów i rozwiązywania zależności jesteś gotowy do zbudowania pakietów catkin. (Uruchom to polecenie z folderu ros_catkin_ws)
sudo./src/catkin/bin/catkin_make_isolated --install -DCMAKE_BUILD_TYPE=Wydanie --install-space /opt/ros/melodic -j2
Jeśli proces kompilacji zawiesza się (bardzo prawdopodobne, jeśli instalujesz wersję desktopową), musisz zwiększyć dostępną przestrzeń wymiany. Domyślnie jest to 100 MB, spróbuj zwiększyć do 2048 MB.
Powodzenia! Cały proces kompilacji zajmuje około 1 godziny (mniej w wersji Bare-bones), więc idź zrobić sobie herbatę.
Teraz ROS Melodic powinien być zainstalowany na twoim Raspberry Pi 4. Nową instalację pobierzemy za pomocą następującego polecenia:
echo "źródło /opt/ros/melodic/setup.bash" >> ~/.bashrc
Otwórz nową powłokę, aby zmiany zaczęły obowiązywać. Spróbuj uruchomić roscore, aby sprawdzić, czy wszystko się udało.
Krok 4: Zainstaluj pakiet RPLIDAR ROS
Stwórzmy osobny obszar roboczy dla innych pakietów, które nie są częścią rdzenia ROS.
Z twojego folderu domowego wykonaj:
mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/
catkin_make
i podaj go do bashrc:
echo "źródło $HOME/catkin_ws/devel/setup.bash" >> ~/.bashrc
OK, jesteśmy gotowi do rozpoczęcia instalacji pakietu RPLIDAR ROS.
cd src
klon sudo git
Płyta CD..
catkin_make
Poczekaj na zakończenie kompilacji pakietu. Spróbuj uruchomić pakiet, aby sprawdzić, czy kompilacja się powiodła:
roslaunch rplidar_ros rplidar.launch
Jeśli nie wyświetla żadnych błędów, wykonaj szybki taniec celebracyjny (*opcjonalnie).
Teraz brakuje tylko ostatniego elementu - ponieważ prawdopodobnie używasz Raspberry Pi 4 w trybie bezgłowym, nie możemy wizualizować wiadomości lidarowych. W tym celu musimy skonfigurować ROS, aby działał na wielu komputerach.
Krok 5: Skonfiguruj ROS, aby działał na wielu komputerach
Do tej części potrzebny będzie komputer z systemem Ubuntu 18.04 z zainstalowanym ROS Melodic. Ponieważ jest to Ubuntu ROS można po prostu zainstalować za pomocą apt-get, jak opisano w tym samouczku.
Po uruchomieniu instalacji ROS zarówno na Raspberry Pi, jak i komputerze stacjonarnym, sprawdź adresy IP obu komputerów. Muszą być w tej samej sieci!
Uruchom roscore na komputerze stacjonarnym i wyeksportuj ROS_MASTER_URI
roscore
eksportuj ROS_MASTER_URI=https://[your-desktop-machine-ip]:11311
Następnie w wykonaniu Raspberry PI
eksportuj ROS_MASTER_URI=https://[your-desktop-machine-ip]:11311
eksportuj ROS_IP=[twój-malinowy-pi-ip]
i uruchom plik uruchamiania RPILIDAR
roslaunch rplidar_ros rplidar.launch
Jeśli uruchomi się pomyślnie, sprawdź tematy obecne na komputerze stacjonarnym za pomocą listy rostopowej
Jeśli widzisz / skanujesz wiadomości, wszystko działa tak, jak powinno działać. Następnie uruchom RVIZ na komputerze stacjonarnym, dodaj wiadomości Laser Scan i wybierz temat /scan. Będziesz także musiał zmienić stałą ramkę na /laser.
Voila!
Krok 6: Gotowe
Ten przewodnik może być pierwszym krokiem do zbudowania robota ROS na nowym Raspberry Pi 4. Zainstalowaliśmy ROS Melodic i przygotowaliśmy instalację do uruchamiania bezgłowego i łączenia się z naszym komputerem stacjonarnym przez sieć bezprzewodową w celu zdalnego sterowania.
Kolejne kroki zależą od typu robota, którego chcesz zbudować. Możesz dodać silniki i enkodery do odometrii, kamerę stereo do Visual SLAM i wiele innych ekscytujących i przydatnych rzeczy.
Sprzęt do tego artykułu został dostarczony przez studio Seeed. Sprawdź Raspberry Pi 4, RPLIDAR A1M8 i inny sprzęt dla producentów w sklepie Seeed Studio!
Dodaj mnie na LinkedIn, jeśli masz jakieś pytanie i zasubskrybuj mój kanał na YouTube, aby otrzymywać powiadomienia o ciekawszych projektach związanych z uczeniem maszynowym i robotyką.
Zalecana:
Jak korzystać ze skanera laserowego RPLIDAR 360 ° z Arduino: 3 kroki (ze zdjęciami)
Jak korzystać ze skanera laserowego RPLIDAR 360° z Arduino: Jestem wielkim fanem budowania robotów sumo i zawsze szukam nowych, interesujących czujników i materiałów do budowy lepszego, szybszego i inteligentniejszego robota. Dowiedziałem się o RPLIDAR A1, który można dostać za 99 USD na DFROBOT.com. Powiedziałem, że jestem zainteresowany
Roomblock: platforma do nauki nawigacji ROS z Roomba, Raspberry Pi i RPLIDAR: 9 kroków (ze zdjęciami)
Roomblock: platforma do nauki nawigacji ROS z Roomba, Raspberry Pi i RPLIDAR: Co to jest? to platforma robota składająca się z Roomby, Raspberry Pi 2, czujnika laserowego (RPLIDAR) i mobilnej baterii. Ramkę montażową można wykonać na drukarkach 3D. System nawigacji ROS umożliwia wykonanie mapy pomieszczeń i korzystanie z