Innholdsfortegnelse:

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

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

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

Denne artikkelen vil dekke prosessen med å installere ROS Melodic Morenia på Raspberry Pi 4 som kjører den siste Debian Buster og hvordan du bruker RPLIDAR A1M8 med vår installasjon.

Siden Debian Buster ble offisielt utgitt for bare noen få uker siden (for øyeblikket da denne artikkelen ble skrevet), er det ingen forhåndsbygde ROS-pakker å installere med apt-get, som er en foretrukket installasjonsmetode. Derfor må vi bygge det fra kilden. Tro meg, det er ikke så skummelt som det høres ut. Prosessen er beskrevet i denne offisielle opplæringen, men for å bygge ROS Melodic på Raspberry Pi må vi gjøre noen endringer.

Hvis du fortsatt er redd, her er et morsomt bilde som * kan * hjelpe deg med å slappe av. Gi tilbakemelding hvis nivået på avslapning var tilstrekkelig. Hvis ikke, vil det bli erstattet med et bilde av en morsom katt.

EDIT i januar 2020: Siden det har gått et halvt år siden jeg la ut denne artikkelen, kan det ha vært noen endringer i ROS eller Buster. Jeg har laget et bilde for Raspberry Pi 4 for en stund siden, etter å ha skrevet denne opplæringen. En bidragsyter har lastet den opp til Google Disk

April 2020 EDIT: Jeg har nylig funnet tid til å gjøre om ROS Melodic -installasjonen på det nyeste Raspbian -bildet fra det offisielle Raspberry Pi -nettstedet. Jeg har redigert dette instruerbart tilsvarende. Jeg har også laget og delt rene, komprimerte bilder:

Raspbian Buster Lite 2020-02-13 Utgivelse med ROS Melodic Bare-bone Trenger 8 GB SD-kort

Raspbian Buster med skrivebord 2020-02-13 Utgivelse med ROS Melodic Desktop Trenger 16 GB SD-kort

Det kan være den raskeste måten å starte systemet på. Hvis du ønsker å kompilere ROS selv, fortsett å lese artikkelen.

Trinn 1: Installere Bootstrap -avhengigheter og last ned pakkene

La oss starte med å sette opp depotene og installere de nødvendige avhengighetene

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 oppdatering

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

Initialiser deretter rosdep og oppdater den

sudo rosdep init

rosdep oppdatering

Når det er gjort, la oss lage et dedikert catkin -arbeidsområde for å bygge ROS og flytte til den katalogen.

mkdir ~/ros_catkin_ws

cd ~/ros_catkin_ws

Nå har du to valg:

ROS -Comm: (Bare Bones) installasjon - installer denne hvis du er kjent med ROS og vet hva du gjør og hvilke pakker du trenger. Hvis du trenger pakker som ikke er inkludert i ROS-Comm, må du også kompilere fra kilde.

Desktop Install: inkluderer GUI-verktøy, for eksempel rqt, rviz og robotgeneriske biblioteker. Kan være et bedre valg for nybegynnere til ROS.

Jeg vil gå med å installere Desktop Install her.

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

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

Kommandoen vil ta noen minutter å laste ned alle kjerne -ROS -pakkene til src -mappen.

Hvis wstool init mislykkes eller blir avbrutt, kan du fortsette nedlastingen ved å kjøre:

wstool oppdatering -j4 -t src

Trinn 2: Løs problemene

Løs problemene
Løs problemene

EDIT i april 2020: Hopp over dette trinnet, det ser ut til at alle problemene er løst nå

La oss installere den kompatible versjonen av Assimp (Open Asset Import Library) for å fikse collada_urdf avhengighetsproblem.

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

pakke ut assimp-3.1.1_no_test_models.zip

cd assimp-3.1.1

cmake.

gjøre

sudo gjør install

La oss også installere OGRE for rviz

sudo apt-get install libogre-1.9-dev

OPPDATERING for januar 2020: Problemene med libbost er allerede løst av ROS -utviklere, du kan hoppe over denne delen

/// hopp /// Til slutt må vi fikse problemene med libboost. Jeg bruker løsningen fra dette innlegget på stackoverflow:

Feilene under kompilering er forårsaket av funksjonen 'boost:: posix_time:: millisekunder', som i nyere boost -versjoner bare godtar et heltallargument, men actionlib -pakken i ROS gir den en flyt på flere steder. Du kan liste alle filer bruker den funksjonen (! i mappen ros_catkin_ws!):

finn -type f -print0 | xargs -0 grep 'boost:: posix_time:: milliseconds' | kutt -d: -f1 | sorter -u

Åpne dem i tekstredigereren, og søk etter funksjonskallet 'boost:: posix_time:: milliseconds'.

og erstatt samtaler slik:

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

med:

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

og disse:

boost:: posix_time:: millisekunder (1000.0f)

med:

boost:: posix_time:: millisekunder (1000)

Jeg anbefaler at du bruker nano tekstredigerer, som er enklere enn VIM;) Ctrl+O lagrer, Ctrl+X går ut og Ctrl+W søker.

/// continue_from_here ///

Trinn 3: Bygg og kild installasjonen

Deretter bruker vi rosdep -verktøyet for å installere alle de andre avhengighetene:

rosdep installere-fra-stier src --ignore-src --rosdistro melodisk -y

Når den er ferdig med å laste ned pakkene og løse avhengighetene, er du klar til å bygge catkin -pakkene. (Kjør denne kommandoen fra mappen ros_catkin_ws)

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

Hvis kompileringsprosessen fryser (veldig sannsynlig, hvis du installerer skrivebordsversjonen), må du øke tilgjengelig bytteplass. Som standard er det 100 MB, prøv å øke det til 2048 MB.

Lykke til! Hele samlingsprosessen tar omtrent 1 time (mindre for Bare-bone-versjonen), så ta en te.

Nå skal ROS Melodic installeres på Raspberry Pi 4. Vi kilder den nye installasjonen med følgende kommando:

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

Åpne et nytt skall for at endringene skal tre i kraft. Prøv å starte roscore for å sjekke om alt var vellykket.

Trinn 4: Installer RPLIDAR ROS -pakken

Installer RPLIDAR ROS -pakken
Installer RPLIDAR ROS -pakken

La oss lage et eget arbeidsområde for andre pakker, som ikke er en del av kjerne -ROS.

Gjør fra din hjemmemappe:

mkdir -p ~/catkin_ws/src

cd ~/catkin_ws/

catkin_make

og kild det til bashrc:

ekko "kilde $ HOME/catkin_ws/devel/setup.bash" >> ~/.bashrc

Ok, vi er klare til å begynne å installere RPLIDAR ROS -pakken.

cd src

sudo git klon

cd..

catkin_make

Vent til pakkesamlingen er ferdig. Prøv å starte pakken for å se om samlingen var vellykket:

roslaunch rplidar_ros rplidar.lunch

Hvis det ikke gir noen feil, gjør en rask feiringsdans (*valgfritt).

Nå mangler bare det siste stykket - siden du sannsynligvis kjører Raspberry Pi 4 i hodeløs modus, kan vi ikke visualisere lidar -meldinger. For det må vi sette opp ROS for å kjøre på flere maskiner.

Trinn 5: Sett opp ROS for å kjøre på flere maskiner

Sett opp ROS for å kjøre på flere maskiner
Sett opp ROS for å kjøre på flere maskiner

For denne delen trenger du en Ubuntu 18.04 datamaskin med ROS Melodic installert. Siden det er Ubuntu ROS enkelt kan installeres ved hjelp av apt-get som beskrevet i denne opplæringen.

Etter at du har jobbet med ROS -installasjonen både på Raspberry Pi og den stasjonære maskinen, må du kontrollere IP -adressene til begge maskinene. De må være på samme nettverk!

Kjør roscore på din stasjonære datamaskin og eksporter ROS_MASTER_URI

roscore

eksporter ROS_MASTER_URI = https:// [din-desktop-maskin-ip]: 11311

Utfør deretter på Raspberry PI

eksporter ROS_MASTER_URI = https:// [din-desktop-maskin-ip]: 11311

eksport ROS_IP = [din-bringebær-pi-ip]

og start RPILIDAR -lanseringsfil

roslaunch rplidar_ros rplidar.lunch

Hvis den starter vellykket, sjekk emnene som finnes på din stasjonære maskin med rostopisk liste

Hvis du kan se / skanne meldinger, fungerer alt som det skal fungere. Start deretter RVIZ på din stasjonære maskin, legg til laserskanningsmeldinger og velg /skann emne. Du må også endre fast ramme til /laser.

Voila!

Trinn 6: Ferdig

Ferdig!
Ferdig!
Ferdig!
Ferdig!

Denne guiden kan være et første skritt mot å bygge din ROS -robot på toppen av nye Raspberry Pi 4. Vi har installert ROS Melodic og forberedt installasjonen for å kjøre hodeløs og koble til vår stasjonære maskin over trådløst nettverk for fjernkontroll.

Neste trinn er avhengig av hvilken type robot du vil bygge. Du kan legge til motorer og kodere for kilometerteller, stereokamera for Visual SLAM og alle slags andre spennende og nyttige ting.

Maskinvaren for denne artikkelen ble levert av Seeed studio. Ta en titt på Raspberry Pi 4, RPLIDAR A1M8 og annen maskinvare for produsenter i Seeed studio store!

Legg meg til på LinkedIn hvis du har spørsmål, og abonner på YouTube -kanalen min for å bli varslet om flere interessante prosjekter som involverer maskinlæring og robotikk.

Anbefalt: