Cuprins:
- Pasul 1: Instalarea dependențelor Bootstrap și descărcarea pachetelor
- Pasul 2: Remediați problemele
- Pasul 3: Construiți și sursați instalarea
- Pasul 4: Instalați pachetul RPLIDAR ROS
- Pasul 5: Configurați ROS pentru a rula pe mai multe mașini
- Pasul 6: Gata
Video: ROS Melodic pe Raspberry Pi 4 [Debian Buster] + RPLIDAR A1M8: 6 pași
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:41
Acest articol va acoperi procesul de instalare ROS Melodic Morenia pe Raspberry Pi 4 care rulează cel mai recent Debian Buster și cum să utilizați RPLIDAR A1M8 cu instalarea noastră.
Întrucât Debian Buster a fost lansat oficial în urmă cu doar câteva săptămâni (din momentul scrierii acestui articol), nu există pachete ROS pre-construite de instalat cu apt-get, care este o metodă preferată de instalare. Prin urmare, va trebui să-l construim din sursă. Crede-mă, nu este atât de înfricoșător pe cât pare. Procesul este descris în acest tutorial oficial, dar pentru a construi ROS Melodic pe Raspberry Pi va trebui să facem câteva modificări.
În cazul în care încă vă este frică, iată o imagine amuzantă care * ar putea * să vă ajute să vă relaxați. Vă rugăm să oferiți feedback dacă nivelul de relaxare furnizat a fost suficient. Dacă nu, va fi înlocuit cu imaginea unei pisici amuzante.
EDITARE Ianuarie 2020: De când a trecut jumătate de an de când am postat acest articol, s-ar putea să fi existat unele modificări la ROS sau Buster. Am făcut o imagine pentru Raspberry Pi 4 acum ceva timp, după ce am scris acest tutorial. Un colaborator a încărcat-o pe Google Drive
EDITARE aprilie 2020: Am găsit timp recent pentru a reface instalarea ROS Melodic pe cea mai nouă imagine Raspbian de pe site-ul oficial Raspberry Pi. Am editat acest instructable în consecință. De asemenea, am creat și distribuit imagini curate și comprimate:
Raspbian Buster Lite 2020-02-13 Lansare cu ROS Melodic Bare-bones Aveți nevoie de card SD de 8 GB
Raspbian Buster cu desktop 2020-02-13 Lansare cu ROS Melodic Desktop Aveți nevoie de card SD de 16 GB
Ar putea fi cel mai rapid mod de a vă pune sistemul în funcțiune. Dacă doriți să compilați singur ROS, citiți în continuare articolul.
Pasul 1: Instalarea dependențelor Bootstrap și descărcarea pachetelor
Să începem prin configurarea depozitelor și instalarea dependențelor necesare
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 update
sudo apt-get install -y python-rosdep python-rosinstall-generator python-wstool python-rosinstall build-essential cmake
Apoi inițializați rosdep și actualizați-l
sudo rosdep init
actualizare rosdep
Când ați terminat, să creăm un spațiu de lucru dedicat pentru construirea ROS și să ne mutăm în acel director.
mkdir ~ / ros_catkin_ws
cd ~ / ros_catkin_ws
Acum aveți două opțiuni:
ROS-Comm: instalare (Bare Bones) - instalați-l dacă sunteți familiarizat cu ROS și știți ce faceți și ce pachete veți avea nevoie. Dacă aveți nevoie de pachete care nu sunt incluse în ROS-Comm, va trebui să compilați și din sursă.
Instalare desktop: include instrumente GUI, cum ar fi bibliotecile rqt, rviz și robot-generice. Ar putea fi o alegere mai bună pentru începători la ROS.
Voi continua cu instalarea Desktop Install aici.
rosinstall_generator desktop --rosdistro melodic --deps --wet-only --tar> melodic-desktop-wet.rosinstall
wstool init -j8 src melodic-desktop-wet.rosinstall
Comanda va dura câteva minute pentru a descărca toate pachetele de bază ROS în folderul src.
Dacă wstool init eșuează sau este întrerupt, puteți relua descărcarea executând:
wstool update -j4 -t src
Pasul 2: Remediați problemele
EDITARE aprilie 2020: Treceți peste acest pas, se pare că toate problemele au fost rezolvate acum
Să instalăm versiunea compatibilă a Assimp (Open Asset Import Library) pentru a remedia problema de dependență 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
dezarhivați assimp-3.1.1_no_test_models.zip
cd assimp-3.1.1
cmake.
face
sudo make install
Să instalăm și OGRE pentru rviz
sudo apt-get install libogre-1.9-dev
UPDATE Ianuarie 2020: Problemele cu libbost au fost deja rezolvate de dezvoltatorii ROS, puteți sări peste această parte
/// săriți /// În cele din urmă va trebui să remediem problemele cu libboost. Folosesc soluția din această postare pe stackoverflow:
„Erorile din timpul compilării sunt cauzate de funcția„ boost:: posix_time:: milliseconds”, care în versiunile boost mai noi acceptă doar un argument întreg, dar pachetul actionlib din ROS îi oferă un float în mai multe locuri. Puteți lista toate fișierele folosind acea funcție (! în folderul ros_catkin_ws!):
găsi -tip f -print0 | xargs -0 grep 'boost:: posix_time:: miliseconds' | tăiat -d: -f1 | sortează -u
Deschideți-le în editorul de text și căutați apelul funcției „boost:: posix_time:: milliseconds”.
și înlocuiți apelurile astfel:
boost:: posix_time:: milisecunde (loop_duration.toSec () * 1000.0f));
cu:
boost:: posix_time:: milisecunde (int (loop_duration.toSec () * 1000.0f)));
si aceste:
boost:: posix_time:: milisecunde (1000.0f)
cu:
boost:: posix_time:: milisecunde (1000)
Vă recomand să utilizați editor de text nano, care este mai simplu decât VIM;) Ctrl + O salvează, Ctrl + X iese și Ctrl + W caută.
/// continue_from_here ///
Pasul 3: Construiți și sursați instalarea
Apoi folosim instrumentul rosdep pentru instalarea tuturor celorlalte dependențe:
rosdep instalează --de-căi src --ignore-src --rosdistro melodic -y
Odată ce a finalizat descărcarea pachetelor și rezolvarea dependențelor, sunteți gata să construiți pachetele Catkin. (Rulați această comandă din folderul ros_catkin_ws)
sudo./src/catkin/bin/catkin_make_isolated --install -DCMAKE_BUILD_TYPE = Release --install-space / opt / ros / melodic -j2
Dacă procesul de compilare se blochează (foarte probabil, dacă instalați versiunea desktop), trebuie să măriți spațiul de swap disponibil. În mod implicit, este de 100 MB, încercați să îl măriți la 2048 MB.
Noroc! Întregul proces de compilare durează aproximativ 1 oră (mai puțin pentru versiunea Bare-bones), așa că mergeți să preparați ceai.
Acum ROS Melodic ar trebui instalat pe Raspberry Pi 4. Vom obține noua instalare cu următoarea comandă:
ecou "sursă /opt/ros/melodic/setup.bash" >> ~ /.bashrc
Deschideți un shell nou pentru ca modificările să aibă efect. Încercați să lansați roscore pentru a verifica dacă totul a avut succes.
Pasul 4: Instalați pachetul RPLIDAR ROS
Să creăm un spațiu de lucru separat pentru alte pachete, care nu fac parte din nucleul ROS.
Din folderul de acasă faceți:
mkdir -p ~ / catkin_ws / src
cd ~ / catkin_ws /
catkin_make
și sursa la bashrc:
echo "sursa $ HOME / catkin_ws / devel / setup.bash" >> ~ /.bashrc
Bine, suntem gata să începem să instalăm pachetul RPLIDAR ROS.
cd src
clona sudo git
cd..
catkin_make
Așteptați finalizarea compilării pachetului. Încercați să lansați pachetul pentru a vedea dacă compilarea a avut succes:
roslaunch rplidar_ros rplidar.launch
Dacă nu afișează erori, faceți un dans de sărbătoare rapidă (* opțional).
Acum lipsește doar ultima piesă - deoarece probabil rulați Raspberry Pi 4 în modul fără cap, nu putem vizualiza mesajele lidar. Pentru aceasta, va trebui să configurăm ROS pentru a rula pe mai multe mașini.
Pasul 5: Configurați ROS pentru a rula pe mai multe mașini
Pentru această parte, veți avea nevoie de un computer Ubuntu 18.04 cu ROS Melodic instalat. Deoarece este Ubuntu ROS, poate fi instalat pur și simplu folosind apt-get, așa cum este descris în acest tutorial.
După ce ați lucrat la instalarea ROS atât pe Raspberry Pi cât și pe computerul dvs. desktop, verificați adresele IP ale ambelor aparate. Trebuie să fie în aceeași rețea!
Rulați roscore pe computerul desktop și exportați ROS_MASTER_URI
roscore
export ROS_MASTER_URI = https:// [desktop-machine-ip-ip]: 11311
Urmează executarea Raspberry PI
export ROS_MASTER_URI = https:// [desktop-machine-ip-ip]: 11311
export ROS_IP = [raspberry-pi-ip]
și lansați fișierul de lansare RPILIDAR
roslaunch rplidar_ros rplidar.launch
Dacă se lansează cu succes, verificați subiectele prezente pe computerul dvs. cu listă rostopic
Dacă puteți vedea / scana mesaje, totul funcționează așa cum ar trebui să funcționeze. Apoi lansați RVIZ pe computer, adăugați mesaje Scanare laser și alegeți / scanați subiectul. De asemenea, va trebui să schimbați cadrul fix în / laser.
Voila!
Pasul 6: Gata
Acest ghid poate fi un prim pas spre construirea robotului ROS deasupra noului Raspberry Pi 4. Am instalat ROS Melodic și am pregătit instalarea pentru a rula fără cap și pentru a ne conecta la computerul nostru prin rețea fără fir pentru control de la distanță.
Pașii următori depind de tipul de robot pe care doriți să îl construiți. Puteți adăuga motoare și codificatoare pentru odometrie, cameră stereo pentru Visual SLAM și tot felul de alte lucruri interesante și utile.
Hardware-ul pentru acest articol a fost furnizat cu amabilitate de studioul Seeed. Verificați Raspberry Pi 4, RPLIDAR A1M8 și alte componente hardware pentru producătorii de la magazinul de studio Seeed!
Adăugați-mă pe LinkedIn dacă aveți întrebări și abonați-vă la canalul meu YouTube pentru a primi notificări despre proiecte mai interesante care implică învățarea automată și robotică.
Recomandat:
Noțiuni introductive despre RPLIDAR low-cost folosind Jetson Nano: 5 pași
Noțiuni introductive cu RPLIDAR low-cost Utilizarea Jetson Nano: Prezentare succintă Detectarea și Ranging-ul luminii (LiDAR) funcționează în același mod în care sunt utilizate telemetre ultrasonice cu impuls laser în locul undelor sonore. Yandex, Uber, Waymo ș.a
Cum se utilizează scanerul laser 360 ° RPLIDAR cu Arduino: 3 pași (cu imagini)
Cum se folosește scanerul laser 360 ° RPLIDAR cu Arduino: sunt un mare fan al construcției de roboți sumo și sunt mereu în căutarea unor senzori și materiale interesante de utilizat pentru a construi un robot mai bun, mai rapid și mai inteligent. Am aflat despre RPLIDAR A1 pe care îl puteți obține cu 99 USD la DFROBOT.com. Am spus că sunt inte
Roomblock: o platformă pentru învățarea navigării ROS cu Roomba, Raspberry Pi și RPLIDAR: 9 pași (cu imagini)
Roomblock: o platformă pentru învățarea navigației ROS cu Roomba, Raspberry Pi și RPLIDAR: Ce este aceasta? &Quot; Roomblock " este o platformă robotică formată dintr-un Roomba, un Raspberry Pi 2, un senzor laser (RPLIDAR) și o baterie mobilă. Cadrul de montare poate fi realizat de imprimante 3D. Sistemul de navigare ROS permite realizarea unei hărți a camerelor și utilizarea