Talaan ng mga Nilalaman:

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

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

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

Saklaw ng artikulong ito ang proseso ng pag-install ng ROS Melodic Morenia sa Raspberry Pi 4 na nagpapatakbo ng pinakabagong Debian Buster at kung paano gamitin ang RPLIDAR A1M8 sa aming pag-install.

Dahil ang Debian Buster ay opisyal na inilabas ilang linggo lamang ang nakakaraan (tulad ng sandali ng pagsulat ng artikulong ito), walang paunang built na mga pakete ng ROS upang mai-install gamit ang apt-get, na isang ginustong pamamaraan ng pag-install. Samakatuwid kakailanganin nating itayo ito mula sa mapagkukunan. Tiwala sa akin, hindi ito nakakatakot sa tunog nito. Inilalarawan ang proseso sa opisyal na tutorial na ito, ngunit upang mabuo ang ROS Melodic sa Raspberry Pi kakailanganin naming gumawa ng ilang mga pagbabago.

Kung sakaling natatakot ka pa rin, narito ang isang nakakatawang larawan na * maaaring * tulungan kang makapagpahinga. Mangyaring magbigay ng puna kung ang antas ng ibinigay na pagpapahinga ay sapat. Kung hindi, papalitan ito ng larawan ng isang nakakatawang pusa.

Enero 2020 EDIT: Dahil kalahating taon na mula nang mai-post ang artikulong ito maaaring mayroong ilang mga pagbabago sa ROS o Buster. Gumawa ako ng isang imahe para sa Raspberry Pi 4 kanina, pagkatapos isulat ang tutorial na ito. Ang isang kontribyutor ay na-upload ito sa Google Drive

Abril 2020 EDIT: Natagpuan ko ang oras kamakailan upang gawing muli ang pag-install ng ROS Melodic sa pinakabagong imahe ng Raspbian mula sa opisyal na site ng Raspberry Pi. Na-edit ko ito ayon sa naaayon. Lumikha din ako at nagbahagi ng malinis at naka-compress na mga imahe:

Raspbian Buster Lite 2020-02-13 Bitawan kasama ang ROS Melodic Bare-bone Kailangan ng 8 GB SD card

Raspbian Buster na may desktop 2020-02-13 Bitawan gamit ang ROS Melodic Desktop Kailangan ng 16 GB SD card

Maaaring ito ang pinakamabilis na paraan upang maiayos ang iyong system. Kung nais mong isulat ang iyong sarili sa ROS, patuloy na basahin ang artikulo.

Hakbang 1: Pag-install ng Mga Depende sa Bootstrap at I-download ang Mga Pakete

Magsimula tayo sa pamamagitan ng pagse-set up ng mga repository at i-install ang mga kinakailangang dependency

sudo sh -c 'echo "deb https://packages.ros.org/ros/ubuntu $ (lsb_release -sc) pangunahing"> /etc/apt/source.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

Pagkatapos ay simulan ang rosdep at i-update ito

sudo rosdep init

update ng rosdep

Kapag tapos na iyon, lumikha tayo ng isang nakalaang workspace ng catkin para sa pagbuo ng ROS at lumipat sa direktoryo na iyon.

mkdir ~ / ros_catkin_ws

cd ~ / ros_catkin_ws

Ngayon mayroon kang dalawang pagpipilian:

Pag-install ng ROS-Comm: (Bare Bones) - i-install ang isang ito kung pamilyar ka sa ROS at alam kung ano ang iyong ginagawa at kung anong mga pakete ang kakailanganin mo. Kung kailangan mo ng mga package na hindi kasama sa ROS-Comm, kakailanganin mong mag-ipon din mula sa mapagkukunan.

Pag-install ng Desktop: may kasamang mga tool sa GUI, tulad ng rqt, rviz, at mga library ng robot-generic. Maaaring maging mas mahusay na pagpipilian para sa mga nagsisimula sa ROS.

Pupunta ako sa pag-install ng Desktop Install dito.

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

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

Ang utos ay tatagal ng ilang minuto upang mai-download ang lahat ng mga pangunahing pakete ng ROS sa folder ng src.

Kung ang wstool init ay nabigo o nagambala, maaari mong ipagpatuloy ang pag-download sa pamamagitan ng pagpapatakbo:

wstool update -j4 -t src

Hakbang 2: Ayusin ang Mga Isyu

Ayusin ang Mga Isyu
Ayusin ang Mga Isyu

Abril 2020 EDIT: Laktawan ang hakbang na ito, tila lahat ng mga isyu ay naayos na ngayon

I-install natin ang katugmang bersyon ng Assimp (Buksan ang Asset Import Library) upang ayusin ang problema sa dependency ng 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

i-unzip ang assimp-3.1.1_no_test_models.zip

cd assimp-3.1.1

cmake.

gumawa

sudo gumawa ng pag-install

I-install din natin ang OGRE para sa rviz

sudo apt-get install libogre-1.9-dev

Enero 2020 UPDATE: Ang mga isyu sa libbost ay naayos na ng mga developer ng ROS, maaari mong laktawan ang bahaging ito

/// skip /// Sa wakas kakailanganin nating ayusin ang mga isyu sa pamamagitan ng libboost. Ginagamit ko ang solusyon mula sa post na ito sa stackoverflow:

Ang mga pagkakamali sa panahon ng pagtitipon ay sanhi ng pagpapaandar ng 'boost:: posix_time:: milliseconds' na sa mga mas bagong bersyon ng boost ay tumatanggap lamang ng isang integer argument, ngunit ang package ng actionlib sa ROS, binibigyan ito ng isang float sa maraming mga lugar. Maaari mong ilista ang lahat ng mga file gamit ang pagpapaandar na iyon (! sa folder na ros_catkin_ws!):

hanapin -type f -print0 | xargs -0 grep 'boost:: posix_time:: milliseconds' | gupitin -d: -f1 | pag-uuri -u

Buksan ang mga ito sa iyong text editor at hanapin ang tawag na 'boost:: posix_time:: milliseconds'.

at palitan ang mga tawag tulad nito:

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

kasama ang:

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

At ang mga ito:

boost:: posix_time:: milliseconds (1000.0f)

kasama ang:

boost:: posix_time:: milliseconds (1000)

Inirerekumenda kong gumamit ka ng nano text editor, na mas simple kaysa sa VIM;) Ang Ctrl + O ay nakakatipid, ang Ctrl + X ay lumalabas at naghahanap ang Ctrl + W.

/// continue_from_here ///

Hakbang 3: Buuin at Pinagmulan ang Pag-install

Susunod na ginagamit namin ang tool na rosdep para sa pag-install ng lahat ng natitirang mga dependency:

pag-install ng rosdep --mula sa mga landas src --ignore-src --rosdistro melodic -y

Kapag natapos na ang pag-download ng mga pakete at paglutas ng mga dependency handa ka nang itayo ang mga package ng catkin. (Patakbuhin ang utos na ito mula sa folder na ros_catkin_ws)

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

Kung nag-freeze ang proseso ng pagtitipon (malamang, kung na-install mo ang bersyon ng desktop), kailangan mong dagdagan ang magagamit na puwang ng swap. Bilang default 100 MB ito, subukang dagdagan ito sa 2048 MB.

Good luck! Ang buong proseso ng pagtitipon ay tumatagal ng halos 1 oras (mas mababa para sa Bare-bone na bersyon), kaya't gumawa ka ng tsaa.

Ngayon ang ROS Melodic ay dapat na mai-install sa iyong Raspberry Pi 4. Susubukan namin ang bagong pag-install sa sumusunod na utos:

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

Magbukas ng bagong shell para magkabisa ang mga pagbabago. Subukang ilunsad ang roscore upang suriin kung ang lahat ay matagumpay.

Hakbang 4: I-install ang RPLIDAR ROS Package

I-install ang RPLIDAR ROS Package
I-install ang RPLIDAR ROS Package

Lumikha tayo ng isang hiwalay na workspace para sa iba pang mga pakete, na hindi bahagi ng pangunahing ROS.

Mula sa iyong home folder gawin:

mkdir -p ~ / catkin_ws / src

cd ~ / catkin_ws /

catkin_make

at mapagkukunan ito sa bashrc:

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

Okay, handa na kaming magsimulang mag-install ng package na RPLIDAR ROS.

cd src

sudo git clone

cd..

catkin_make

Hintaying matapos ang package compilation. Subukang ilunsad ang pakete upang makita kung matagumpay ang pagsasama:

roslaunch rplidar_ros rplidar.launch

Kung hindi ito naglalabas ng anumang mga error, gumawa ng mabilis na pagsayaw sa pagdiriwang (* opsyonal).

Ngayon lamang ang huling piraso ay nawawala - dahil marahil ay nagpapatakbo ka ng Raspberry Pi 4 sa mode na walang ulo, hindi namin ma-visualize ang mga mensahe ng lidar. Para doon kailangan naming i-set-up ang ROS upang tumakbo sa maraming mga machine.

Hakbang 5: I-set up ang ROS upang tumakbo sa Maramihang Mga Machine

I-set up ang ROS upang Patakbuhin sa Maramihang Mga Makina
I-set up ang ROS upang Patakbuhin sa Maramihang Mga Makina

Para sa bahaging ito kakailanganin mo ang isang computer na Ubuntu 18.04 na naka-install ang ROS Melodic. Dahil ito ang Ubuntu ROS ay maaaring mai-install nang simple gamit ang apt-get tulad ng inilarawan sa tutorial na ito.

Matapos mong magawa ang pag-install ng ROS pareho sa Raspberry Pi at iyong desktop machine, suriin ang mga IP address ng parehong mga machine. Kailangan nilang nasa parehong network!

Patakbuhin ang roscore sa iyong desktop computer at i-export ang ROS_MASTER_URI

roscore

i-export ang ROS_MASTER_URI = https:// [your-desktop-machine-ip]: 11311

Susunod sa pagpapatupad ng Raspberry PI

i-export ang ROS_MASTER_URI = https:// [your-desktop-machine-ip]: 11311

i-export ang ROS_IP = [your-raspberry-pi-ip]

at ilunsad ang file ng paglunsad ng RPILIDAR

roslaunch rplidar_ros rplidar.launch

Kung matagumpay itong naglulunsad, suriin ang mga paksang naroroon sa iyong desktop machine na may listahan ng rostopic

Kung maaari mong makita / i-scan ang mga mesage, ang lahat ay gumagana tulad ng dapat itong gumana. Pagkatapos ay ilunsad ang RVIZ sa iyong desktop machine, magdagdag ng mga mensahe sa Laser Scan at piliin / i-scan ang paksa. Kakailanganin mo ring baguhin ang nakapirming frame sa / laser.

Voila!

Hakbang 6: Tapos Na

Tapos na!
Tapos na!
Tapos na!
Tapos na!

Ang gabay na ito ay maaaring maging isang unang hakbang patungo sa pagbuo ng iyong ROS robot sa tuktok ng bagong Raspberry Pi 4. Na-install namin ang ROS Melodic at inihanda ang pag-install para sa pagpapatakbo ng walang ulo at pagkonekta sa aming desktop machine sa pamamagitan ng wireless network para sa remote control.

Ang mga susunod na hakbang ay nakasalalay sa kung anong uri ng robot ang nais mong buuin. Maaari kang magdagdag ng mga motor at encoder para sa odometry, stereo camera para sa Visual SLAM at lahat ng iba pang mga kapanapanabik at kapaki-pakinabang na bagay.

Ang hardware para sa artikulong ito ay mabait na ibinigay ng Seeed studio. Suriin ang Raspberry Pi 4, RPLIDAR A1M8 at iba pang hardware para sa mga gumagawa sa Seeed studio store!

Idagdag ako sa LinkedIn kung mayroon kang anumang katanungan at mag-subscribe sa aking channel sa YouTube upang maabisuhan tungkol sa higit pang mga kagiliw-giliw na proyekto na kinasasangkutan ng pag-aaral ng machine at robotics.

Inirerekumendang: