Taula de continguts:

ROS Melodic on Raspberry Pi 4 [Debian Buster] + RPLIDAR A1M8: 6 passos
ROS Melodic on Raspberry Pi 4 [Debian Buster] + RPLIDAR A1M8: 6 passos

Vídeo: ROS Melodic on Raspberry Pi 4 [Debian Buster] + RPLIDAR A1M8: 6 passos

Vídeo: ROS Melodic on Raspberry Pi 4 [Debian Buster] + RPLIDAR A1M8: 6 passos
Vídeo: How to Install ROS Melodic on the Raspberry Pi OS - Buster! 2024, De novembre
Anonim
Image
Image
ROS Melodic a Raspberry Pi 4 [Debian Buster] + RPLIDAR A1M8
ROS Melodic a Raspberry Pi 4 [Debian Buster] + RPLIDAR A1M8

Aquest article tractarà sobre el procés d’instal·lació de ROS Melodic Morenia al Raspberry Pi 4 que executa l’últim Debian Buster i sobre com utilitzar RPLIDAR A1M8 amb la nostra instal·lació.

Des que Debian Buster es va llançar oficialment fa poques setmanes (a partir del moment d’escriure aquest article), no hi ha cap paquet ROS preinstal·lat per instal·lar amb apt-get, que és un mètode d’instal·lació preferit. Per tant, haurem de construir-lo des de la font. Confia en mi, no és tan aterrador com sembla. El procés es descriu en aquest tutorial oficial, però per construir ROS Melodic a Raspberry Pi haurem de fer algunes modificacions.

Per si encara teniu por, aquí teniu una imatge divertida que * us pot * ajudar a relaxar-vos. Si us plau, proporcioneu comentaris si el nivell de relaxació proporcionat era suficient. Si no, es substituirà per la imatge d’un gat divertit.

EDICIÓ de gener de 2020: ja que ha passat mig any des que vaig publicar aquest article, és possible que hi hagués alguns canvis a ROS o Buster. Fa poc que he fet una imatge per a Raspberry Pi 4, després d’escriure aquest tutorial. Un col·laborador l'ha penjat a Google Drive

EDITAR d'abril de 2020: recentment he trobat temps per refer la instal·lació de Melodic ROS a la imatge Raspbian més recent del lloc oficial de Raspberry Pi. He editat aquesta informació instructiva en conseqüència. També he creat i compartit imatges comprimides i netes:

Llançament de Raspbian Buster Lite 2020-02-13 amb ROS Melodic Bare-bones Necessita targeta SD de 8 GB

Raspbian Buster amb escriptori 2020-02-13 Llançament amb ROS Melodic Desktop Necessita targeta SD de 16 GB

Pot ser la forma més ràpida de posar en marxa el vostre sistema. Si voleu compilar ROS vosaltres mateixos, continueu llegint l'article.

Pas 1: Instal·lació de les dependències de Bootstrap i descàrrega dels paquets

Comencem per configurar els dipòsits i instal·lar les dependències necessàries

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 --keyyserver 'hkp: //keyserver.ubuntu.com: 80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654

sudo apt-get update

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

A continuació, inicialitzeu rosdep i actualitzeu-lo

sudo rosdep init

actualització de rosdep

Quan ho hàgiu acabat, creem un espai de treball dedicat per a la construcció de ROS i anem a aquest directori.

mkdir ~ / ros_catkin_ws

cd ~ / ros_catkin_ws

Ara teniu dues opcions:

Instal·lació de ROS-Comm: (Bare Bones): instal·leu-la si esteu familiaritzat amb ROS i sabeu què feu i quins paquets necessitareu. Si necessiteu paquets no inclosos a ROS-Comm, també haureu de compilar des de la font.

Instal·lació d’escriptori: inclou eines GUI, com ara biblioteques rqt, rviz i robot-genèriques. Podria ser una millor opció per a principiants amb ROS.

Vaig a instal·lar Desktop Install aquí.

rosinstall_generator desktop --rosdistro melodic --deps --wet-only --tar> melodic-desktop-wet.rosinstall

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

L'ordre trigarà uns minuts a descarregar tots els paquets ROS bàsics a la carpeta src.

Si wstool init falla o s’interromp, podeu reprendre la descàrrega executant:

wstool update -j4 -t src

Pas 2: solucioneu els problemes

Solucioneu els problemes
Solucioneu els problemes

EDIT d'abril de 2020: Omet aquest pas, sembla que tots els problemes s'han solucionat ara

Instal·lem la versió compatible d'Assimp (Open Asset Import Library) per solucionar el problema de dependència 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

descomprimir assimp-3.1.1_no_test_models.zip

cd assimp-3.1.1

cmake.

fer

sudo make install

Instal·lem també OGRE per a rviz

sudo apt-get install libogre-1.9-dev

ACTUALITZACIÓ de gener de 2020: els desenvolupadors de ROS ja han solucionat els problemes amb libbost. Podeu ometre aquesta part

/// saltar /// Finalment haurem de solucionar els problemes amb libboost. Estic fent servir la solució d’aquest post a stackoverflow:

Els errors durant la compilació són causats per la funció 'boost:: posix_time:: millisegons', que a les versions de boost més recents només accepta un argument enter, però el paquet actionlib a ROS li dóna un flotador a diversos llocs. Podeu llistar tots els fitxers utilitzant aquesta funció (! a la carpeta ros_catkin_ws!):

find -type f -print0 | xargs -0 grep 'boost:: posix_time:: milisegons' | tall -d: -f1 | ordenar -u

Obriu-los a l'editor de text i cerqueu la trucada a la funció "boost:: posix_time:: milliseconds".

i substituïu trucades així:

boost:: time_posix:: milisegons (loop_duration.toSec () * 1000.0f));

amb:

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

i aquests:

boost:: posix_time:: milisegons (1000.0f)

amb:

boost:: posix_time:: milisegons (1000)

Us recomano que utilitzeu un editor de text nano, que és més senzill que VIM;) Ctrl + O s’està desant, Ctrl + X surt i Ctrl + W busca.

/// continuar_de_aquí ///

Pas 3: Creeu i origen la instal·lació

A continuació, fem servir l'eina rosdep per instal·lar la resta de dependències:

rosdep install --from-routes src --ignore-src --rosdistro melodic -y

Un cop hagueu completat la descàrrega dels paquets i la resolució de les dependències, esteu preparats per crear els paquets catkin. (Executeu aquesta ordre des de la carpeta ros_catkin_ws)

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

Si el procés de compilació es bloqueja (molt probablement, si instal·leu la versió d'escriptori), haureu d'augmentar l'espai d'intercanvi disponible. Per defecte són 100 MB, intenteu augmentar-los a 2048 MB.

Bona sort! Tot el procés de compilació triga aproximadament 1 hora (menys per a la versió de Bare-bones), així que aneu a fer una mica de te.

Ara ROS Melodic s’hauria d’instal·lar al vostre Raspberry Pi 4. Procedirem a la nova instal·lació amb l’ordre següent:

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

Obriu un intèrpret d’ordres nou perquè els canvis entrin en vigor. Proveu d'iniciar roscore per comprovar si tot ha funcionat correctament.

Pas 4: Instal·leu el paquet RPLIDAR ROS

Instal·leu el paquet RPLIDAR ROS
Instal·leu el paquet RPLIDAR ROS

Creem un espai de treball separat per a altres paquets, que no formen part del nucli ROS.

Des de la vostra carpeta inicial feu:

mkdir -p ~ / catkin_ws / src

cd ~ / catkin_ws /

fer_aurina

i envieu-lo a bashrc:

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

D’acord, estem preparats per començar a instal·lar el paquet RPLIDAR ROS.

cd src

clon sudo git

cd..

fer_aurina

Espereu que acabi la compilació del paquet. Proveu d'iniciar el paquet per veure si la compilació ha estat correcta:

rplidar_ros rplidar.launch

Si no produeix cap error, feu un ball de celebració ràpid (* opcional).

Ara només falta l’última peça: ja que probablement esteu executant Raspberry Pi 4 en mode sense cap, no podem visualitzar els missatges lidar. Per a això, haurem de configurar ROS per executar-se en diverses màquines.

Pas 5: configureu ROS perquè s'executi en diverses màquines

Configureu ROS perquè s'executi en diverses màquines
Configureu ROS perquè s'executi en diverses màquines

Per a aquesta part necessitareu un equip Ubuntu 18.04 amb ROS Melodic instal·lat. Com que és Ubuntu, ROS es pot instal·lar simplement utilitzant apt-get tal com es descriu en aquest tutorial.

Un cop hàgiu treballat la instal·lació de ROS tant a Raspberry Pi com a la vostra màquina d'escriptori, comproveu les adreces IP d'ambdues màquines. Han d’estar a la mateixa xarxa.

Executeu roscore a l'ordinador d'escriptori i exporteu ROS_MASTER_URI

roscore

exportació ROS_MASTER_URI = https:// [your-desktop-machine-ip]: 11311

A continuació, executeu Raspberry PI

exportació ROS_MASTER_URI = https:// [your-desktop-machine-ip]: 11311

exportació ROS_IP = [vostre-raspberry-pi-ip]

i inicieu el fitxer d'inici RPILIDAR

rplidar_ros rplidar.launch

Si es llança correctament, comproveu els temes presents a la vostra màquina d'escriptori amb una llista rostòpica

Si podeu veure / escanejar missatges, tot funciona com hauria de funcionar. A continuació, inicieu RVIZ a la màquina d'escriptori, afegiu missatges d'escaneig làser i trieu / escanegeu el tema. També haureu de canviar el marc fix a / làser.

Voila!

Pas 6: Fet

Fet!
Fet!
Fet!
Fet!

Aquesta guia pot ser un primer pas per construir el vostre robot ROS a sobre del nou Raspberry Pi 4. Hem instal·lat ROS Melodic i hem preparat la instal·lació per funcionar sense cap i connectar-nos a la nostra màquina d'escriptori a través de la xarxa sense fils per al control remot.

Els passos següents depenen del tipus de robot que vulgueu construir. Podeu afegir motors i codificadors per a odometria, càmera estèreo per a Visual SLAM i tota mena d’altres coses interessants i útils.

El maquinari d’aquest article va ser proporcionat amablement per Seeed studio. Mireu Raspberry Pi 4, RPLIDAR A1M8 i altres elements de maquinari per a fabricants a la botiga d’estudi Seeed.

Afegiu-me a LinkedIn si teniu alguna pregunta i subscriviu-vos al meu canal de YouTube per rebre notificacions sobre projectes més interessants que impliquen aprenentatge automàtic i robòtica.

Recomanat: