Mundarija:

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

Video: ROS Melodic Raspberry Pi 4 [Debian Buster] + RPLIDAR A1M8: 6 qadamda

Video: ROS Melodic Raspberry Pi 4 [Debian Buster] + RPLIDAR A1M8: 6 qadamda
Video: How to Install ROS Melodic on the Raspberry Pi OS - Buster! 2024, Dekabr
Anonim
Image
Image
Rasp Melodic Raspberry Pi 4 [Debian Buster] + RPLIDAR A1M8
Rasp Melodic Raspberry Pi 4 [Debian Buster] + RPLIDAR A1M8

Ushbu maqola ROS Melodic Morenia -ni Raspberry Pi 4 -ga, Debian Buster -ning eng yangi versiyasini o'rnatish jarayonini va RPLIDAR A1M8 -ni bizning o'rnatishda qanday ishlatishni ko'rib chiqadi.

Debian Buster bir necha hafta oldin rasman chiqarilgandan buyon (ushbu maqola yozilgunga qadar), apt-get bilan o'rnatish uchun oldindan o'rnatilgan ROS-paketlar yo'q, bu o'rnatishning afzal qilingan usuli. Shuning uchun biz uni manbadan yaratishimiz kerak bo'ladi. Ishoning, bu ko'rinadigan darajada qo'rqinchli emas. Jarayon ushbu rasmiy qo'llanmada tasvirlangan, ammo Raspberry Pi -da ROS Melodic -ni yaratish uchun biz bir nechta o'zgartirishlarni kiritishimiz kerak bo'ladi.

Agar siz hali ham qo'rqsangiz, bu sizga dam olishga yordam beradigan kulgili rasm. Iltimos, dam olish darajasi etarli bo'lsa, fikringizni bildiring. Aks holda, uning o'rniga kulgili mushuk tasviri qo'yiladi.

2020 yil yanvar tahrir: Ushbu maqolani joylashtirganimga yarim yil bo'lgani uchun ROS yoki Buster -da ba'zi o'zgarishlar bo'lishi mumkin edi. Men bu qo'llanmani yozgandan so'ng, Raspberry Pi 4 uchun rasm yaratdim. Qatnashuvchi uni Google Diskka yukladi

2020 yil aprel tahrir: Men yaqinda Rasp Melodi rasmiy Raspberry Pi saytidan Rasp Melodic -ning eng yangi tasviriga qayta o'rnatishga vaqt topdim, men shunga mos ravishda tahrir qildim. Men ham toza, siqilgan tasvirlarni yaratdim va baham ko'rdim:

Raspbian Buster Lite 2020-02-13 ROS melodik yalang'och suyaklari bilan chiqarilishi 8 Gb SD-kartaga muhtoj

Ish stoli bilan Raspbian Buster 2020-02-13 ROS Melodic Desktop bilan chiqarilishi 16 Gb SD-kartaga muhtoj

Bu tizimni ishga tushirishning eng tezkor usuli bo'lishi mumkin. Agar siz ROS -ni o'zingiz tuzmoqchi bo'lsangiz, maqolani o'qishni davom eting.

1 -qadam: Bootstrap bog'liqligini o'rnatish va paketlarni yuklab olish

Ma'lumot omborlarini o'rnatish va kerakli bog'liqliklarni o'rnatishdan boshlaylik

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 yangilanishi

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

Keyin rosdep -ni ishga tushiring va uni yangilang

sudo rosdep init

rosdep yangilanishi

Bu tugagach, ROSni yaratish uchun maxsus catkin ish maydonini yaratib, shu katalogga o'tamiz.

mkdir ~/ros_catkin_ws

cd ~/ros_catkin_ws

Endi sizda ikkita tanlov bor:

ROS -Comm: (Yalang'och suyaklar) o'rnatish - agar siz ROS bilan tanish bo'lsangiz va nima qilayotganingizni va sizga qanday paketlar kerakligini bilsangiz, uni o'rnating. Agar sizga ROS-Comm-ga kirmagan paketlar kerak bo'lsa, siz ham manbadan kompilyatsiya qilishingiz kerak bo'ladi.

Ish stolini o'rnatish: rqt, rviz va umumiy robot kutubxonalari kabi GUI vositalarini o'z ichiga oladi. Yangi boshlanuvchilar uchun ROS uchun yaxshiroq tanlov bo'lishi mumkin.

Men bu erda "Desktop Install" ni o'rnataman.

rosinstall_generator ish stoli --rosdistro melodik --deps-faqat nam --tar> melodik-ish stoli-wet.rosinstall

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

Barcha asosiy ROS paketlarini src papkasiga yuklash uchun bir necha daqiqa vaqt ketadi.

Agar wstool init ishlamasa yoki uzilib qolsa, yuklashni davom ettirish orqali davom ettirishingiz mumkin:

wstool yangilanishi -j4 -t src

2 -qadam: Muammolarni tuzatish

Muammolarni tuzatish
Muammolarni tuzatish

2020 yil aprel tahrir: Bu qadamni o'tkazib yuboring, endi hamma muammolar hal qilinganga o'xshaydi

Colada_urdf qaramlik muammosini hal qilish uchun Assimp (Open Asset Import Library) ning mos versiyasini o'rnatamiz.

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

assimp-3.1.1_no_test_models.zip-ni ochish

CD assimp-3.1.1

smake.

qilmoq

sudo make install

Keling, rviz uchun OGRE ni o'rnatamiz

sudo apt-get install libogre-1.9-dev

Yanvar 2020 YANGILASh: libbost bilan bog'liq muammolar ROS ishlab chiquvchilari tomonidan hal qilingan, siz bu qismni o'tkazib yuborishingiz mumkin.

/// o'tish /// Nihoyat, biz libboost bilan muammolarni hal qilishimiz kerak bo'ladi. Men ushbu postdagi echimni stackoverflow -da ishlataman:

"Kompilyatsiya paytida xatolar" boost:: posix_time:: milliseconds "funktsiyasidan kelib chiqadi, u yangi takomillashtirilgan versiyalarda faqat tamsayı argumentini qabul qiladi, lekin ROSdagi actionlib paketi unga bir necha joylarga suzishni beradi. Siz barcha fayllarni ro'yxatga olishingiz mumkin. bu funktsiyadan foydalanib (! ros_catkin_ws papkasida!):

topish -tip f -print0 | xargs -0 grep 'boost:: posix_time:: milliseconds' | kesish -d: -f1 | sort -u

Ularni matn tahrirlovchisida oching va 'boost:: posix_time:: millisekundlar' qo'ng'irog'ini qidiring.

va quyidagi qo'ng'iroqlarni almashtiring:

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

bilan:

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

va bular:

boost:: posix_time:: millisekundlar (1000.0f)

bilan:

boost:: posix_time:: millisekundlar (1000)

Men sizga nano matn muharriridan foydalanishni maslahat beraman, bu VIMdan ko'ra sodda;) Ctrl+O saqlanmoqda, Ctrl+X o'chmoqda va Ctrl+W qidirmoqda.

/// bu yerdan davom eting ///

3 -qadam: O'rnatishni yaratish va manba

Keyin qolgan barcha bog'liqliklarni o'rnatish uchun rosdep vositasidan foydalanamiz:

rosdep install --from-paths src --ignore-src --rosdistro melodik -y

U paketlarni yuklab olishni va bog'liqliklarni hal qilishni tugatgandan so'ng siz catkin paketlarini tuzishga tayyormiz. (Bu buyruqni ros_catkin_ws papkasidan ishga tushiring)

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

Agar kompilyatsiya jarayoni muzlab qolsa (ehtimol, agar siz ish stoli versiyasini o'rnatgan bo'lsangiz), siz almashinuv maydonini ko'paytirishingiz kerak. Odatiy bo'lib, bu 100 MB, uni 2048 MB ga oshirishga harakat qiling.

Omad! Butun kompilyatsiya jarayoni taxminan 1 soat davom etadi (yalang'och suyaklar uchun kamroq), shuning uchun choy tayyorlang.

Endi ROS Melodic Raspberry Pi 4 -ga o'rnatilishi kerak. Biz yangi o'rnatishni quyidagi buyruq bilan olamiz:

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

O'zgarishlar kuchga kirishi uchun yangi qobiq oching. Hamma narsa muvaffaqiyatli bo'lganligini tekshirish uchun roskorni ishga tushiring.

4 -qadam: RPLIDAR ROS paketini o'rnating

RPLIDAR ROS paketini o'rnating
RPLIDAR ROS paketini o'rnating

Keling, asosiy ROS tarkibiga kirmaydigan boshqa paketlar uchun alohida ish joyini yarataylik.

Uy papkasidan quyidagilarni bajaring:

mkdir -p ~/catkin_ws/src

cd ~/catkin_ws/

mushuk_make

va uni bashrc ga manba qiling:

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

Yaxshi, biz RPLIDAR ROS paketini o'rnatishga tayyormiz.

CD src

sudo git clone

CD..

mushuk_make

Paket kompilyatsiyasi tugashini kuting. Kompilyatsiya muvaffaqiyatli bo'lganligini bilish uchun paketni ishga tushirishga harakat qiling:

roslaunch rplidar_ros rplidar.launch

Agar u xato qilmasa, tez bayram raqsini bajaring (*ixtiyoriy).

Endi faqat oxirgi qism etishmayapti - ehtimol siz Raspberry Pi 4 -ni boshsiz rejimda ishlayotgan bo'lsangiz, biz lidar xabarlarini tasavvur qila olmaymiz. Buning uchun biz bir nechta mashinalarda ishlash uchun ROS-ni sozlashimiz kerak bo'ladi.

5 -qadam: ROS -ni bir nechta mashinalarda ishlashga sozlang

ROS -ni bir nechta mashinalarda ishga tushirish uchun sozlang
ROS -ni bir nechta mashinalarda ishga tushirish uchun sozlang

Bu qism uchun sizga ROS Melodic o'rnatilgan Ubuntu 18.04 kompyuteri kerak bo'ladi. Ubuntu ROS-ni ushbu qo'llanmada tasvirlanganidek apt-get yordamida o'rnatish mumkin.

Raspberry Pi -da ham, ish stoli kompyuteringizda ham ROS -ni o'rnatganingizdan so'ng, ikkala mashinaning IP -manzillarini tekshiring. Ular bitta tarmoqda bo'lishi kerak!

Kompyuteringizda roscore -ni ishga tushiring va ROS_MASTER_URI -ni eksport qiling

rozkor

eksport qilish ROS_MASTER_URI = https:// [your-desktop-machine-ip]: 11311

Keyingi Raspberry PI -ni bajaring

eksport qilish ROS_MASTER_URI = https:// [your-desktop-machine-ip]: 11311

eksport qilish ROS_IP = [malinangiz-pi-ip]

va RPILIDAR ishga tushirish faylini ishga tushiring

roslaunch rplidar_ros rplidar.launch

Agar u muvaffaqiyatli ishga tushsa, rostopik ro'yxat bilan ish stolidagi mavzularni tekshiring

Agar siz xabarlarni ko'rsangiz / skanerlasangiz, hamma narsa kerak bo'lganidek ishlaydi. Keyin RVIZ -ni ish stoli kompyuterida ishga tushiring, lazerli skanerlash xabarlarini qo'shing va mavzuni tanlang /skanerlang. Ruxsat etilgan ramkani /lazerga o'zgartirish kerak bo'ladi.

Voila!

6 -qadam: Bajarildi

Bajarildi!
Bajarildi!
Bajarildi!
Bajarildi!

Bu qo'llanma sizning ROS robotingizni yangi Raspberry Pi 4 ustida qurish yo'lida birinchi qadam bo'lishi mumkin. Biz ROS Melodic -ni o'rnatdik va boshsiz ishlashga va masofadan boshqarish uchun simsiz tarmoq orqali ish stoli kompyuterimizga ulanishga tayyorladik.

Keyingi qadamlar siz yaratmoqchi bo'lgan robot turiga bog'liq. Siz odometriya uchun dvigatellar va enkoderlarni, Visual SLAM uchun stereo kamerani va boshqa qiziqarli va foydali narsalarni qo'shishingiz mumkin.

Maqola uchun uskunalar xushmuomalalik bilan Seeed studiyasi tomonidan taqdim etilgan. Seeed studiyasi do'konida ishlab chiqaruvchilar uchun Raspberry Pi 4, RPLIDAR A1M8 va boshqa uskunalarni ko'ring!

Agar sizda biron bir savol bo'lsa, meni LinkedIn -ga qo'shing va YouTube kanalimga obuna bo'ling, mashinasozlik va robototexnika bilan bog'liq qiziqarli loyihalar haqida xabardor bo'ling.

Tavsiya: