Съдържание:

ROS Melodic на Raspberry Pi 4 [Debian Buster] + RPLIDAR A1M8: 6 стъпки
ROS Melodic на Raspberry Pi 4 [Debian Buster] + RPLIDAR A1M8: 6 стъпки

Видео: ROS Melodic на Raspberry Pi 4 [Debian Buster] + RPLIDAR A1M8: 6 стъпки

Видео: ROS Melodic на Raspberry Pi 4 [Debian Buster] + RPLIDAR A1M8: 6 стъпки
Видео: How to Install ROS Melodic on the Raspberry Pi OS - Buster! 2024, Юни
Anonim
Image
Image
ROS Melodic на Raspberry Pi 4 [Debian Buster] + RPLIDAR A1M8
ROS Melodic на Raspberry Pi 4 [Debian Buster] + RPLIDAR A1M8

Тази статия ще обхваща процеса на инсталиране на ROS Melodic Morenia на Raspberry Pi 4 с най -новия Debian Buster и как да използвате RPLIDAR A1M8 с нашата инсталация.

Тъй като Debian Buster беше официално пуснат само преди няколко седмици (към момента на писане на тази статия), няма предварително изградени ROS пакети за инсталиране с apt-get, което е предпочитан метод за инсталиране. Следователно ще трябва да го изградим от източника. Повярвайте ми, не е толкова страшно, колкото звучи. Процесът е описан в този официален урок, но за да изградим ROS Melodic на Raspberry Pi, ще трябва да направим няколко модификации.

В случай, че все още се страхувате, ето една смешна картина, която * може * да ви помогне да се отпуснете. Моля, предоставете обратна връзка, ако нивото на релаксация е достатъчно. Ако не, ще бъде заменен със снимка на забавна котка.

ЯНВАРЯ 2020 РЕДАКТИРАНЕ: Тъй като изминаха половин година, откакто публикувах тази статия, може да има някои промени в ROS или Buster. Направих изображение за Raspberry Pi 4 преди известно време, след като написах този урок. Сътрудник го е качил в Google Диск

Април 2020 EDIT: Наскоро намерих време да преработя ROS Melodic инсталацията на най -новото изображение на Raspbian от официалния сайт на Raspberry Pi. Редактирах съответно тази инструкция. Също така създадох и споделих чисти, компресирани изображения:

Raspbian Buster Lite 2020-02-13 Издание с ROS Melodic Bare-bone Need 8 GB SD карта

Raspbian Buster с настолен компютър 2020-02-13 Издание с ROS Melodic Desktop Нуждаете се от 16 GB SD карта

Това може да е най -бързият начин да стартирате системата си. Ако искате сами да компилирате ROS, продължете да четете статията.

Стъпка 1: Инсталиране на зависимости от Bootstrap и изтегляне на пакетите

Нека започнем с настройването на хранилищата и инсталирането на необходимите зависимости

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 изграждане-основен cmake

След това инициализирайте rosdep и го актуализирайте

sudo rosdep init

rosdep актуализация

Когато това стане, нека да създадем специално работно пространство за създаване на ROS и да преминем към тази директория.

mkdir ~/ros_catkin_ws

cd ~/ros_catkin_ws

Сега имате два избора:

ROS -Comm: (Bare Bones) инсталация - инсталирайте тази, ако сте запознати с ROS и знаете какво правите и какви пакети ще ви трябват. Ако имате нужда от пакети, които не са включени в ROS-Comm, ще трябва да компилирате и от източника.

Desktop Install: включва инструменти за графичен потребителски интерфейс, като rqt, rviz и роботизирани библиотеки. Може би е по -добър избор за начинаещи в ROS.

Ще продължа с инсталирането на Desktop Install тук.

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

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

Командата ще отнеме няколко минути, за да изтегли всички основни ROS пакети в папката src.

Ако wstool init се провали или е прекъснат, можете да възобновите изтеглянето, като изпълните:

wstool актуализация -j4 -t src

Стъпка 2: Поправете проблемите

Поправете проблемите
Поправете проблемите

АПРЕЛ 2020 РЕДАКТИРАНЕ: Пропуснете тази стъпка, изглежда, че всички проблеми са отстранени сега

Нека инсталираме съвместимата версия на Assimp (Open Asset Import Library), за да поправим проблема с зависимостта 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

разархивирайте assimp-3.1.1_no_test_models.zip

cd assimp-3.1.1

cmake.

направете

sudo make install

Нека инсталираме и OGRE за rviz

sudo apt-get install libogre-1.9-dev

Актуализация на януари 2020 г.: Проблемите с libbost вече са отстранени от разработчиците на ROS, можете да пропуснете тази част

/// skip /// Накрая ще трябва да отстраним проблемите с libboost. Използвам решението от тази публикация на stackoverflow:

Грешките по време на компилацията са причинени от функцията 'boost:: posix_time:: milliseconds', която в по -новите версии на boost приема само целочислен аргумент, но пакетът actionlib в ROS му дава плаващ вид на няколко места. Можете да изброите всички файлове използвайки тази функция (! в папката ros_catkin_ws!):

find -type f -print0 | xargs -0 grep 'boost:: posix_time:: milliseconds' | изрязване -d: -f1 | сортиране -u

Отворете ги в текстовия си редактор и потърсете извикването на функцията 'boost:: posix_time:: milliseconds'.

и заменете обажданията по следния начин:

boost:: posix_time:: милисекунди (loop_duration.toSec () * 1000.0f));

с:

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

и тези:

boost:: posix_time:: милисекунди (1000.0f)

с:

boost:: posix_time:: милисекунди (1000)

Препоръчвам ви да използвате нано текстов редактор, който е по -прост от VIM;) Ctrl+O спестява, Ctrl+X излиза и Ctrl+W търси.

/// continue_from_here ///

Стъпка 3: Изградете и източник на инсталацията

След това използваме инструмента rosdep за инсталиране на всички останали зависимости:

rosdep install --from-paths src --ignore-src --rosdistro мелодичен -y

След като приключи изтеглянето на пакетите и разрешаването на зависимостите, вие сте готови да изградите пакетите catkin. (Изпълнете тази команда от папката ros_catkin_ws)

sudo./src/catkin/bin/catkin_make_isolated --install -DCMAKE_BUILD_TYPE = Освобождаване --install -space/opt/ros/melodic -j2

Ако процесът на компилиране замръзне (много вероятно, ако инсталирате настолната версия), трябва да увеличите наличното пространство за суап. По подразбиране е 100 MB, опитайте да го увеличите до 2048 MB.

Късмет! Целият процес на компилиране отнема около 1 час (по-малко за версията Bare-кісти), така че отидете да направите чай.

Сега ROS Melodic трябва да бъде инсталиран на вашия Raspberry Pi 4. Ние ще доставим новата инсталация със следната команда:

ехо "източник /opt/ros/melodic/setup.bash" >> ~/.bashrc

Отворете нова обвивка, за да влязат в сила промените. Опитайте да стартирате roscore, за да проверите дали всичко е било успешно.

Стъпка 4: Инсталирайте RPLIDAR ROS пакет

Инсталирайте RPLIDAR ROS пакет
Инсталирайте RPLIDAR ROS пакет

Нека създадем отделно работно пространство за други пакети, които не са част от основната ROS.

От домашната папка направете:

mkdir -p ~/catkin_ws/src

cd ~/catkin_ws/

catkin_make

и го източник на bashrc:

ехо "източник $ HOME/catkin_ws/devel/setup.bash" >> ~/.bashrc

Добре, готови сме да започнем да инсталираме RPLIDAR ROS пакет.

cd src

клонинг на sudo git

cd..

catkin_make

Изчакайте компилацията на пакета да приключи. Опитайте да стартирате пакета, за да видите дали компилацията е успешна:

roslaunch rplidar_ros rplidar.launch

Ако не изведе грешки, направете бърз празненствен танц (*по избор).

Сега липсва само последното парче - тъй като вероятно използвате Raspberry Pi 4 в режим без глава, не можем да визуализираме лидарни съобщения. За това ще трябва да настроим ROS, за да работи на множество машини.

Стъпка 5: Настройте ROS да работи на множество машини

Настройте ROS да работи на множество машини
Настройте ROS да работи на множество машини

За тази част ще ви е необходим компютър Ubuntu 18.04 с инсталиран ROS Melodic. Тъй като това е Ubuntu ROS, може просто да се инсталира с помощта на apt-get, както е описано в този урок.

След като работите с ROS инсталация както на Raspberry Pi, така и на настолната си машина, проверете IP адресите на двете машини. Те трябва да са в една и съща мрежа!

Стартирайте roscore на вашия настолен компютър и експортирайте ROS_MASTER_URI

roscore

експортирайте ROS_MASTER_URI = https:// [your-desktop-machine-ip]: 11311

Следва изпълнението на Raspberry PI

експортирайте ROS_MASTER_URI = https:// [your-desktop-machine-ip]: 11311

експортиране ROS_IP = [your-raspberry-pi-ip]

и стартирайте стартиращ файл RPILIDAR

roslaunch rplidar_ros rplidar.launch

Ако стартира успешно, проверете темите, присъстващи на вашата настолна машина, с ростопичен списък

Ако можете да видите / сканирате съобщения, всичко работи както трябва да работи. След това стартирайте RVIZ на настолната си машина, добавете съобщения за лазерно сканиране и изберете /сканиране на тема. Също така ще трябва да промените фиксираната рамка на /лазерна.

Вола!

Стъпка 6: Готово

Свършен!
Свършен!
Свършен!
Свършен!

Това ръководство може да бъде първата стъпка към изграждането на вашия ROS робот върху новия Raspberry Pi 4. Инсталирахме ROS Melodic и подготвихме инсталацията за работа без глава и свързване с нашата настолна машина през безжична мрежа за дистанционно управление.

Следващите стъпки зависят от типа робот, който искате да изградите. Можете да добавите двигатели и енкодери за одометрия, стерео камера за Visual SLAM и всякакви други вълнуващи и полезни неща.

Хардуерът за тази статия беше любезно предоставен от студио Seeed. Вижте Raspberry Pi 4, RPLIDAR A1M8 и друг хардуер за производители в студиен магазин Seeed!

Добавете ме в LinkedIn, ако имате въпроси и се абонирайте за канала ми в YouTube, за да получавате известия за по -интересни проекти, включващи машинно обучение и роботика.

Препоръчано: