Kazalo:
- 1. korak: Namestitev odvisnosti od zagona in prenos paketov
- 2. korak: Odpravite težave
- 3. korak: Zgradite in ustvarite vir namestitve
- 4. korak: Namestite paket RPLIDAR ROS
- 5. korak: Nastavite ROS za delovanje na več strojih
- 6. korak: Končano
Video: ROS Melodic na Raspberry Pi 4 [Debian Buster] + RPLIDAR A1M8: 6 korakov
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:03
Ta članek obravnava postopek namestitve ROS Melodic Morenia na Raspberry Pi 4 z najnovejšo različico Debian Buster in kako uporabljati RPLIDAR A1M8 z našo namestitvijo.
Ker je bil Debian Buster uradno izdan pred nekaj tedni (v času pisanja tega članka), ni vnaprej pripravljenih paketov ROS za namestitev z apt-get, kar je najprimernejši način namestitve. Zato ga bomo morali zgraditi iz vira. Verjemite mi, ni tako strašljivo, kot se sliši. Postopek je opisan v tej uradni vadnici, vendar bomo za izdelavo ROS Melodic na Raspberry Pi morali narediti nekaj sprememb.
V primeru, da ste še vedno prestrašeni, je tukaj smešna slika, ki vam * lahko * pomaga, da se sprostite. Prosimo, da posredujete povratne informacije, če je bila raven sproščenosti zadostna. V nasprotnem primeru bo zamenjana s sliko smešne mačke.
Januar 2020 EDIT: Ker je minilo pol leta od objave tega članka, je morda prišlo do nekaterih sprememb v ROS ali Busterju. Pred kratkim sem po pisanju te vadnice naredil sliko za Raspberry Pi 4. Sodelavec ga je naložil v Google Drive
Aprila 2020 EDIT: Pred kratkim sem našel čas za predelavo melodije ROS Melodic na najnovejšo sliko Raspbian z uradnega spletnega mesta Raspberry Pi. To navodilo sem ustrezno uredil. Ustvaril sem in delil čiste, stisnjene slike:
Raspbian Buster Lite 2020-02-13 izdaja z melodično golo kostjo ROS potrebuje 8 GB SD kartico
Raspbian Buster z namizjem 2020-02-13 Release z ROS Melodic Desktop Potrebujete 16 GB SD kartico
Morda je to najhitrejši način za zagon sistema. Če želite sami sestaviti ROS, preberite članek.
1. korak: Namestitev odvisnosti od zagona in prenos paketov
Začnimo z nastavitvijo skladišč in namestitvijo potrebnih odvisnosti
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 posodobitev
sudo apt-get install -y python-rosdep python-rosinstall-generator python-wstool python-rosinstall build-bistven cmake
Nato inicializirajte rosdep in ga posodobite
sudo rosdep init
posodobitev rosdep
Ko bo to končano, ustvarimo namenski delovni prostor za izdelavo ROS -a in se premaknimo v ta imenik.
mkdir ~/ros_catkin_ws
cd ~/ros_catkin_ws
Zdaj imate dve izbiri:
ROS -Comm: (Bare Bones) namestitev - namestite to, če poznate ROS in veste, kaj počnete in katere pakete boste potrebovali. Če potrebujete pakete, ki niso vključeni v ROS-Comm, boste morali prevesti tudi iz vira.
Namizna namestitev: vključuje orodja grafičnega vmesnika, kot so rqt, rviz in generične knjižnice robotov. Morda bi bila za začetnike ROS boljša izbira.
Tukaj bom namestil namizno namestitev.
namizje rosinstall_generator --rosdistro melodic --deps --wet-only --tar> melodic-desktop-wet.rosinstall
wstool init -j8 src melodic-desktop-wet.rosinstall
Ukaz bo trajal nekaj minut, da prenese vse osnovne pakete ROS v mapo src.
Če wstool init ne uspe ali je prekinjen, lahko prenos nadaljujete tako:
posodobitev wstool -j4 -t src
2. korak: Odpravite težave
April 2020 EDIT: Preskočite ta korak, zdi se, da so zdaj vse težave odpravljene
Namestimo združljivo različico programa Assimp (odprta knjižnica za uvoz sredstev) za odpravo težave z odvisnostjo 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
unzip assimp-3.1.1_no_test_models.zip
cd assimp-3.1.1
cmake.
narediti
sudo make install
Namestimo tudi OGRE za rviz
sudo apt-get install libogre-1.9-dev
Posodobitev januarja 2020: Težave z libbostom so razvijalci ROS že odpravili, ta del lahko preskočite
/// skip /// Nazadnje bomo morali odpraviti težave z libboostom. Uporabljam rešitev iz te objave na stackoverflow:
Napake med sestavljanjem povzročajo funkcije 'boost:: posix_time:: milliseconds', ki v novejših različicah za povečanje sprejema le celoštevilčni argument, vendar pa paket actionlib v ROS -u daje plavajočo vrednost na več mestih. Lahko navedete vse datoteke z uporabo te funkcije (! v mapi ros_catkin_ws!):
najdi -tip f -print0 | xargs -0 grep 'boost:: posix_time:: milliseconds' | cut -d: -f1 | razvrsti -u
Odprite jih v urejevalniku besedil in poiščite klic funkcije 'boost:: posix_time:: milliseconds'.
in zamenjajte klice tako:
boost:: posix_time:: milliseconds (loop_duration.toSec () * 1000.0f));
z:
boost:: posix_time:: milliseconds (int (loop_duration.toSec () * 1000.0f)));
in to:
boost:: posix_time:: milisekunde (1000.0f)
z:
boost:: posix_time:: milisekunde (1000)
Priporočam, da uporabite urejevalnik besedil nano, ki je enostavnejši od VIM;) Ctrl+O shranjuje, Ctrl+X zapušča in Ctrl+W išče.
/// continue_from_here ///
3. korak: Zgradite in ustvarite vir namestitve
Nato uporabimo orodje rosdep za namestitev vseh preostalih odvisnosti:
rosdep install --from-paths src --ignore-src --rosdistro melodično -y
Ko končate s prenosom paketov in odpravljanjem odvisnosti, ste pripravljeni na izdelavo paketov catkin. (Zaženite ta ukaz iz mape ros_catkin_ws)
sudo./src/catkin/bin/catkin_make_isolated --install -DCMAKE_BUILD_TYPE = Sprosti --install -space/opt/ros/melodično -j2
Če postopek kompilacije zamrzne (zelo verjetno, če namestite namizno različico), morate povečati razpoložljiv prostor za zamenjavo. Privzeto je 100 MB, poskusite ga povečati na 2048 MB.
Vso srečo! Celoten postopek zbiranja traja približno 1 uro (manj za različico Bare-bone), zato si skuhajte čaj.
Zdaj bi morali na vaš Raspberry Pi 4. namestiti ROS Melodic. Novo namestitev bomo pridobili z naslednjim ukazom:
odmev "vir /opt/ros/melodic/setup.bash" >> ~/.bashrc
Odprite novo lupino, da bodo spremembe začele veljati. Poskusite zagnati roscore, da preverite, ali je vse uspelo.
4. korak: Namestite paket RPLIDAR ROS
Ustvarimo ločen delovni prostor za druge pakete, ki niso del jedra ROS.
Iz domače mape naredite:
mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/
catkin_make
in ga vir v bashrc:
echo "vir $ HOME/catkin_ws/devel/setup.bash" >> ~/.bashrc
V redu, pripravljeni smo za začetek namestitve paketa RPLIDAR ROS.
cd src
klon sudo git
cd..
catkin_make
Počakajte, da se sestavljanje paketa konča. Poskusite zagnati paket, da preverite, ali je bila kompilacija uspešna:
roslaunch rplidar_ros rplidar.launch
Če ne prikaže nobenih napak, naredite hiter slavnostni ples (*neobvezno).
Manjka le še zadnji del - ker verjetno uporabljate Raspberry Pi 4 v načinu brez glave, ne moremo vizualizirati lidarjevih sporočil. Za to bomo morali nastaviti ROS za delovanje na več strojih.
5. korak: Nastavite ROS za delovanje na več strojih
Za ta del potrebujete računalnik Ubuntu 18.04 z nameščenim ROS Melodic. Ker je to Ubuntu ROS, ga lahko preprosto namestite s pomočjo apt-get, kot je opisano v tej vadnici.
Ko namestite ROS na Raspberry Pi in na namiznem računalniku, preverite naslove IP obeh strojev. Morajo biti v istem omrežju!
Zaženite roscore na namiznem računalniku in izvozite ROS_MASTER_URI
roscore
izvozi ROS_MASTER_URI = https:// [your-desktop-machine-ip]: 11311
Naprej na Raspberry PI izvedite
izvozi ROS_MASTER_URI = https:// [your-desktop-machine-ip]: 11311
izvozi ROS_IP = [your-raspberry-pi-ip]
in zaženite zagonsko datoteko RPILIDAR
roslaunch rplidar_ros rplidar.launch
Če se uspešno zažene, preverite teme, ki so na namiznem računalniku, z rostopičnim seznamom
Če lahko vidite / skenirate sporočila, vse deluje tako, kot bi moralo delovati. Nato zaženite RVIZ na namiznem računalniku, dodajte sporočila o laserskem skeniranju in izberite /skenirajte temo. Prav tako boste morali spremeniti fiksni okvir v /laser.
Voila!
6. korak: Končano
Ta priročnik je lahko prvi korak k izgradnji vašega ROS robota na vrhu nove Raspberry Pi 4. Namestili smo ROS Melodic in pripravili namestitev za zagon brez glave in povezavo z namiznim računalnikom prek brezžičnega omrežja za daljinski nadzor.
Naslednji koraki so odvisni od vrste robota, ki ga želite zgraditi. Dodate lahko motorje in kodirnike za odometrijo, stereo kamero za Visual SLAM in vse druge zanimive in uporabne stvari.
Strojno opremo za ta članek je priskrbel Seeed studio. Oglejte si Raspberry Pi 4, RPLIDAR A1M8 in drugo strojno opremo za izdelovalce v studiu Seeed studio!
Če imate kakršno koli vprašanje, me dodajte na LinkedIn in se naročite na moj YouTube kanal, da boste obveščeni o zanimivejših projektih, ki vključujejo strojno učenje in robotiko.
Priporočena:
Kako začeti z nizkocenovnim RPLIDAR-om z uporabo Jetson Nano: 5 korakov
Kako začeti z nizkocenovnim RPLIDAR-om Uporaba Jetson Nano: Kratek pregled Odkrivanje in merjenje svetlobe (LiDAR) deluje na enak način, kot se namesto zvočnih valov uporabljajo ultrazvočni daljinomeri z laserskim impulzom. Yandex, Uber, Waymo itd. Veliko vlagajo v tehnologijo LiDAR za svoje avtonomne avtomobile
Kako uporabljati laserski bralnik RPLIDAR 360 ° z Arduinom: 3 koraki (s slikami)
Kako uporabljati laserski optični bralnik RPLIDAR 360 ° z Arduinom: Sem velik oboževalec gradnje sumo robotov in vedno iščem nove zanimive senzorje in materiale, ki bi jih lahko uporabil za izdelavo boljšega, hitrejšega in pametnejšega robota. Za RPLIDAR A1 sem izvedel, ki ga dobite za 99 USD na DFROBOT.com. Rekel sem, da imam namen
Roomblock: platforma za učenje navigacije ROS z Roombo, Raspberry Pi in RPLIDAR: 9 korakov (s slikami)
Roomblock: platforma za učenje navigacije ROS z Roombo, Raspberry Pi in RPLIDAR: Kaj je to? &Quot; Roomblock " je robotska platforma, sestavljena iz Roombe, Raspberry Pi 2, laserskega senzorja (RPLIDAR) in mobilne baterije. Montažni okvir lahko izdelajo 3D tiskalniki. Navigacijski sistem ROS omogoča izdelavo zemljevida sob in uporabo i