Innehållsförteckning:

ROS Melodic på Raspberry Pi 4 [Debian Buster] + RPLIDAR A1M8: 6 steg
ROS Melodic på Raspberry Pi 4 [Debian Buster] + RPLIDAR A1M8: 6 steg

Video: ROS Melodic på Raspberry Pi 4 [Debian Buster] + RPLIDAR A1M8: 6 steg

Video: ROS Melodic på Raspberry Pi 4 [Debian Buster] + RPLIDAR A1M8: 6 steg
Video: Hose nähen für Anfänger – DIY Kinderhose "MATTI" 2024, Juli
Anonim
Image
Image
ROS Melodic på Raspberry Pi 4 [Debian Buster] + RPLIDAR A1M8
ROS Melodic på Raspberry Pi 4 [Debian Buster] + RPLIDAR A1M8

Denna artikel kommer att behandla processen att installera ROS Melodic Morenia på Raspberry Pi 4 som kör den senaste Debian Buster och hur du använder RPLIDAR A1M8 med vår installation.

Eftersom Debian Buster släpptes officiellt för bara några veckor sedan (från och med att denna artikel skrevs) finns det inga färdiga ROS-paket att installera med apt-get, vilket är en föredragen installationsmetod. Därför kommer vi att behöva bygga det från källan. Lita på mig, det är inte så läskigt som det låter. Processen beskrivs i denna officiella handledning, men för att bygga ROS Melodic på Raspberry Pi måste vi göra några ändringar.

Om du fortfarande är rädd, här är en rolig bild som * kan * hjälpa dig att slappna av. Ge feedback om avslappningsnivån var tillräcklig. Om inte, kommer det att ersättas med bild av en rolig katt.

EDIT i januari 2020: Eftersom det har gått ett halvt år sedan jag lade upp den här artikeln kan det ha skett vissa ändringar av ROS eller Buster. Jag har gjort en bild för Raspberry Pi 4 för ett tag sedan, efter att ha skrivit den här självstudien. En bidragsgivare har laddat upp den till Google Drive

EDIT i april 2020: Jag har nyligen hittat tid att göra om ROS Melodic -installationen på den senaste Raspbian -bilden från den officiella Raspberry Pi -webbplatsen. Jag har redigerat denna instruerbara i enlighet därmed. Jag skapade och delade också rena, komprimerade bilder:

Raspbian Buster Lite 2020-02-13 Release med ROS Melodic Bare-bone Behöver 8 GB SD-kort

Raspbian Buster med skrivbord 2020-02-13 Release med ROS Melodic Desktop Behöver 16 GB SD-kort

Det kan vara det snabbaste sättet att få ditt system igång. Om du vill kompilera ROS själv, fortsätt läsa artikeln.

Steg 1: Installera Bootstrap -beroenden och ladda ner paketen

Låt oss börja med att ställa in lagringsplatserna och installera nödvändiga beroenden

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

sudo apt-get uppdatering

sudo apt-get install -y python-rosdep python-rosinstall-generator python-wstool python-rosinstall build-essential cmake

Initiera sedan rosdep och uppdatera det

sudo rosdep init

rosdep uppdatering

När det är klart, låt oss skapa en dedikerad catkin -arbetsyta för att bygga ROS och flytta till den katalogen.

mkdir ~/ros_catkin_ws

cd ~/ros_catkin_ws

Nu har du två val:

ROS -Comm: (Bare Bones) installation - installera den här om du är bekant med ROS och vet vad du gör och vilka paket du behöver. Om du behöver paket som inte ingår i ROS-Comm måste du också kompilera från källan.

Skrivbordsinstallation: innehåller GUI-verktyg, till exempel rqt, rviz och robotgeneriska bibliotek. Kanske ett bättre val för nybörjare till ROS.

Jag går med att installera Desktop Install här.

rosinstall_generator desktop --rosdistro melodisk --deps-endast -wet --tar> melodic-desktop-wet.rosinstall

wstool init -j8 src melodic-desktop-wet.rosinstall

Kommandot tar några minuter att ladda ner alla kärn -ROS -paketen till src -mappen.

Om wstool init misslyckas eller avbryts kan du återuppta nedladdningen genom att köra:

wstool uppdatering -j4 -t src

Steg 2: Åtgärda problemen

Åtgärda problemen
Åtgärda problemen

EDIT i april 2020: Hoppa över det här steget, det verkar som om alla problem har åtgärdats nu

Låt oss installera den kompatibla versionen av Assimp (Open Asset Import Library) för att lösa collada_urdf -beroendeproblem.

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

packa upp assimp-3.1.1_no_test_models.zip

cd assimp-3.1.1

cmake.

göra

sudo gör installationen

Låt oss också installera OGRE för rviz

sudo apt-get install libogre-1.9-dev

UPPDATERING för januari 2020: Problemen med libbost har redan åtgärdats av ROS -utvecklare, du kan hoppa över den här delen

/// hoppa /// Slutligen måste vi åtgärda problemen med libboost. Jag använder lösningen från det här inlägget på stackoverflow:

Felen vid kompilering orsakas av funktionen 'boost:: posix_time:: millisekunder' som i nyare boost -versioner endast accepterar ett heltalsargument, men actionlib -paketet i ROS ger det ett flyt på flera ställen. Du kan lista alla filer använder den funktionen (! i mappen ros_catkin_ws!):

hitta -typ f -print0 | xargs -0 grep 'boost:: posix_time:: millisekunder' | klipp -d: -f1 | sortera -u

Öppna dem i din textredigerare och sök efter funktionen 'boost:: posix_time:: millisekunder'.

och ersätt samtal så här:

boost:: posix_time:: millisekunder (loop_duration.toSec () * 1000.0f));

med:

boost:: posix_time:: millisekunder (int (loop_duration.toSec () * 1000.0f)));

och dessa:

boost:: posix_time:: millisekunder (1000.0f)

med:

boost:: posix_time:: millisekunder (1000)

Jag rekommenderar att du använder nano textredigerare, vilket är enklare än VIM;) Ctrl+O sparar, Ctrl+X stänger och Ctrl+W söker.

/// continue_from_here ///

Steg 3: Bygg och käll installationen

Därefter använder vi rosdep -verktyget för att installera alla andra beroenden:

rosdep installera-från-sökvägar src --ignore-src --rosdistro melodisk -y

När den har laddat ner paketen och löst beroenden är du redo att bygga catkin -paketen. (Kör det här kommandot från mappen ros_catkin_ws)

sudo./src/catkin/bin/catkin_make_isolated --install -DCMAKE_BUILD_TYPE = Release --install -space/opt/ros/melodic -j2

Om kompileringsprocessen fryser (mycket troligt om du installerar skrivbordsversionen) måste du öka tillgängligt bytesutrymme. Som standard är det 100 MB, försök öka det till 2048 MB.

Lycka till! Hela kompileringsprocessen tar cirka 1 timme (mindre för Bare-bone-versionen), så gör lite te.

Nu bör ROS Melodic installeras på din Raspberry Pi 4. Vi kommer att källa till den nya installationen med följande kommando:

echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc

Öppna ett nytt skal för att ändringar ska träda i kraft. Prova att starta roscore för att kontrollera om allt var lyckat.

Steg 4: Installera RPLIDAR ROS -paketet

Installera RPLIDAR ROS -paketet
Installera RPLIDAR ROS -paketet

Låt oss skapa en separat arbetsyta för andra paket som inte ingår i kärn -ROS.

Gör från din hemmapp:

mkdir -p ~/catkin_ws/src

cd ~/catkin_ws/

catkin_make

och käll det till bashrc:

echo "source $ HOME/catkin_ws/devel/setup.bash" >> ~/.bashrc

Okej, vi är redo att börja installera RPLIDAR ROS -paketet.

cd src

sudo git -klon

CD..

catkin_make

Vänta tills paketkompilationen är klar. Testa att starta paketet för att se om sammanställningen lyckades:

roslaunch rplidar_ros rplidar.launch

Om det inte ger några fel, gör en snabb festdans (*valfritt).

Nu saknas bara den sista biten - eftersom du förmodligen kör Raspberry Pi 4 i huvudlöst läge kan vi inte visualisera lidar -meddelanden. För det måste vi konfigurera ROS för att köra på flera maskiner.

Steg 5: Ställ in ROS för att köra på flera maskiner

Ställ in ROS för att köra på flera maskiner
Ställ in ROS för att köra på flera maskiner

För denna del behöver du en Ubuntu 18.04 -dator med ROS Melodic installerat. Eftersom det är Ubuntu ROS enkelt kan installeras med apt-get enligt beskrivningen i denna handledning.

När du har arbetat ROS -installation både på Raspberry Pi och din stationära dator, kontrollera IP -adresserna för båda maskinerna. De måste vara på samma nätverk!

Kör roscore på din stationära dator och exportera ROS_MASTER_URI

roscore

exportera ROS_MASTER_URI = https:// [din-skrivbords-maskin-ip]: 11311

Kör sedan på Raspberry PI

exportera ROS_MASTER_URI = https:// [din-skrivbords-maskin-ip]: 11311

exportera ROS_IP = [din-hallon-pi-ip]

och starta RPILIDAR -startfil

roslaunch rplidar_ros rplidar.launch

Om det startar framgångsrikt, kontrollera ämnen som finns på din stationära dator med rostopisk lista

Om du kan se / skanna meddelanden fungerar allt som det ska fungera. Starta sedan RVIZ på din stationära dator, lägg till laserskanningsmeddelanden och välj /skanna ämne. Du måste också byta fast ram till /laser.

Voila!

Steg 6: Klar

Gjort!
Gjort!
Gjort!
Gjort!

Den här guiden kan vara ett första steg mot att bygga din ROS -robot ovanpå nya Raspberry Pi 4. Vi har installerat ROS Melodic och förberett installationen för att köra utan huvud och ansluta till vår stationära maskin via trådlöst nätverk för fjärrkontroll.

Nästa steg är beroende av vilken typ av robot du vill bygga. Du kan lägga till motorer och givare för vägmätning, stereokamera för Visual SLAM och alla möjliga andra spännande och användbara saker.

Hårdvaran för den här artikeln tillhandahålls vänligen av Seeed studio. Kolla in Raspberry Pi 4, RPLIDAR A1M8 och annan hårdvara för tillverkare i Seeed studio store!

Lägg till mig på LinkedIn om du har några frågor och prenumerera på min YouTube -kanal för att få besked om mer intressanta projekt som involverar maskininlärning och robotik.

Rekommenderad: