Turinys:

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

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

Video: ROS Melodic Raspberry Pi 4 [Debian Buster] + RPLIDAR A1M8: 6 žingsniai
Video: Installing ROS on a Raspberry Pi 4/400 2024, Lapkritis
Anonim
Image
Image
ROS Melodic Raspberry Pi 4 [Debian Buster] + RPLIDAR A1M8
ROS Melodic Raspberry Pi 4 [Debian Buster] + RPLIDAR A1M8

Šis straipsnis apims „ROS Melodic Morenia“diegimo procesą „Raspberry Pi 4“, kuriame veikia naujausia „Debian Buster“, ir kaip naudoti RPLIDAR A1M8 su mūsų diegimu.

Kadangi „Debian Buster“buvo oficialiai išleistas vos prieš kelias savaites (šio straipsnio rašymo metu), nėra iš anksto sukurtų ROS paketų, kuriuos būtų galima įdiegti naudojant „apt-get“, kuris yra pageidaujamas diegimo būdas. Todėl turėsime jį sukurti iš šaltinio. Patikėkite, tai nėra taip baisu, kaip skamba. Procesas aprašytas šioje oficialioje pamokoje, tačiau norėdami sukurti „ROS Melodic“„Raspberry Pi“, turėsime atlikti keletą pakeitimų.

Jei vis dar bijote, čia yra juokingas paveikslėlis, kuris * gali * padėti atsipalaiduoti. Pateikite atsiliepimą, jei atsipalaidavimo lygis buvo pakankamas. Jei ne, jis bus pakeistas juokingos katės nuotrauka.

2020 m. Sausio REDAGAVIMAS: Kadangi praėjo pusė metų nuo to laiko, kai paskelbiau šį straipsnį, ROS arba „Buster“galėjo būti pakeisti. Prieš kurį laiką sukūriau „Raspberry Pi 4“vaizdą, parašęs šią pamoką. Bendraautoris įkėlė jį į „Google“diską

2020 m. Balandžio REDAGAVIMAS: Neseniai radau laiko perdaryti „ROS Melodic“diegimą naujausiame „Raspbian“vaizde iš oficialios „Raspberry Pi“svetainės. Atitinkamai redagavau šią instrukciją. Taip pat sukūriau ir bendrinu švarius, suspaustus vaizdus:

„Raspbian Buster Lite“2020-02-13 leidimas su „ROS Melodic Bare-bone“Reikia 8 GB SD kortelės

„Raspbian Buster“su darbalaukiu 2020-02-13 Leidimui su „ROS Melodic Desktop“reikia 16 GB SD kortelės

Tai gali būti greičiausias būdas paleisti sistemą. Jei norite patys sudaryti ROS, toliau skaitykite straipsnį.

1 žingsnis: Įdiekite „Bootstrap“priklausomybes ir atsisiųskite paketus

Pradėkime nuo saugyklų nustatymo ir būtinų priklausomybių įdiegimo

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 atnaujinimas

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

Tada inicijuokite „rosdep“ir atnaujinkite

sudo rosdep init

rosdep atnaujinimas

Kai tai bus padaryta, sukurkime specialią „catkin“darbo vietą ROS kūrimui ir pereikime prie to katalogo.

mkdir ~/ros_catkin_ws

cd ~/ros_catkin_ws

Dabar turite du pasirinkimus:

ROS -Comm: (Bare Bones) diegimas - įdiekite šį, jei esate susipažinęs su ROS ir žinote, ką darote ir kokių paketų jums reikės. Jei jums reikia paketų, neįtrauktų į ROS-Comm, turėsite kompiliuoti ir iš šaltinio.

Įdiegimas darbalaukyje: apima GUI įrankius, tokius kaip rqt, rviz ir bendrosios robotų bibliotekos. Tai gali būti geresnis pasirinkimas pradedantiesiems ROS.

Aš pradėsiu diegti darbalaukio diegimą čia.

rosinstall_generator darbalaukis --rosdistro melodic --deps-tik šlapias --tar> melodic-desktop-wet.rosinstall

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

Komanda užtruks kelias minutes, kol visi pagrindiniai ROS paketai bus atsisiųsti į src aplanką.

Jei „wstool init“nepavyksta arba jis nutrūksta, galite atnaujinti atsisiuntimą paleisdami:

wstool atnaujinimas -j4 -t src

2 veiksmas: išspręskite problemas

Išspręskite problemas
Išspręskite problemas

2020 m. Balandžio REDAGAVIMAS: Praleiskite šį žingsnį, atrodo, kad visos problemos jau išspręstos

Įdiekime suderinamą „Assimp“versiją („Open Asset Import Library“), kad išspręstume „collada_urdf“priklausomybės problemą.

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špakuokite assimp-3.1.1_no_test_models.zip

cd assimp-3.1.1

cmake.

padaryti

sudo make install

Taip pat įdiekime „OGRE for rviz“

sudo apt-get install libogre-1.9-dev

2020 m. Sausio mėn. ATNAUJINIMAS: ROS kūrėjai jau išsprendė problemas, susijusias su „libbost“, galite praleisti šią dalį

/// praleisti /// Galiausiai turėsime išspręsti libboost problemas. Aš naudoju šio įrašo sprendimą „stackoverflow“:

„Klaidas kompiliavimo metu sukelia„ boost:: posix_time:: milliseconds “funkcija, kuri naujesnėse„ boost “versijose priima tik sveiko skaičiaus argumentą, tačiau„ actionlib “paketas ROS suteikia jam kelias vietas. Galite išvardyti visus failus naudojant šią funkciją (! aplanke ros_catkin_ws!):

rasti tipo f -print0 | xargs -0 grep 'boost:: posix_time:: milisekundės' | supjaustyti -d: -f1 | rūšiuoti -u

Atidarykite juos teksto rengyklėje ir ieškokite funkcijos „boost:: posix_time:: millisekundės“.

ir pakeiskite skambučius taip:

boost:: posix_time:: milisekundės (loop_duration.toSec () * 1000.0f));

su:

boost:: posix_time:: milisekundės (int (loop_duration.toSec () * 1000.0f)));

ir šie:

boost:: posix_time:: milisekundės (1000.0f)

su:

boost:: posix_time:: milisekundės (1000)

Rekomenduoju naudoti nano teksto redaktorių, kuris yra paprastesnis nei VIM;) Ctrl+O taupo, Ctrl+X išeina ir Ctrl+W ieško.

/// tęsinys_iš čia ///

3 veiksmas: sukurkite ir šaltinį diegimą

Toliau mes naudojame „Rosdep“įrankį, kad įdiegtume visas likusias priklausomybes:

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

Baigę atsisiųsti paketus ir išspręsti priklausomybes, esate pasirengę sukurti „catkin“paketus. (Vykdykite šią komandą iš aplanko ros_catkin_ws)

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

Jei kompiliavimo procesas užstringa (labai tikėtina, jei įdiegsite darbalaukio versiją), turite padidinti turimą apsikeitimo vietą. Pagal numatytuosius nustatymus jis yra 100 MB, pabandykite jį padidinti iki 2048 MB.

Sėkmės! Visas kompiliacijos procesas užtrunka apie 1 valandą („Bare-bone“versijai-mažiau), todėl eikite išgerti arbatos.

Dabar „Raspberry Pi 4“turėtų būti įdiegta „ROS Melodic“. Naują diegimą įsigysime naudodami šią komandą:

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

Atidarykite naują apvalkalą, kad pakeitimai įsigaliotų. Pabandykite paleisti „Roscore“, kad patikrintumėte, ar viskas pavyko.

4 veiksmas: įdiekite RPLIDAR ROS paketą

Įdiekite RPLIDAR ROS paketą
Įdiekite RPLIDAR ROS paketą

Sukurkime atskirą darbo vietą kitiems paketams, kurie nėra pagrindinės ROS dalis.

Iš namų aplanko atlikite šiuos veiksmus:

mkdir -p ~/catkin_ws/src

cd ~/catkin_ws/

catkin_make

ir šaltinį į bashrc:

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

Gerai, mes pasiruošę pradėti diegti RPLIDAR ROS paketą.

cd src

sudo git klonas

cd..

catkin_make

Palaukite, kol baigsis paketo sudarymas. Pabandykite paleisti paketą, kad sužinotumėte, ar kompiliacija buvo sėkminga:

roslaunch rplidar_ros rplidar.launch

Jei jame nėra klaidų, atlikite greitą šventinį šokį (*neprivaloma).

Dabar trūksta tik paskutinio kūrinio - kadangi tikriausiai naudojate „Raspberry Pi 4“režimu be galvos, negalime vizualizuoti „lidar“pranešimų. Tam turėsime nustatyti ROS, kad ji veiktų keliose mašinose.

5 veiksmas: nustatykite ROS, kad jis veiktų keliose mašinose

Nustatykite ROS veikti keliose mašinose
Nustatykite ROS veikti keliose mašinose

Šiai daliai jums reikės „Ubuntu 18.04“kompiuterio su įdiegta „ROS Melodic“. Kadangi tai yra „Ubuntu ROS“, ją galima tiesiog įdiegti naudojant apt-get, kaip aprašyta šioje pamokoje.

Įdiegę ROS tiek „Raspberry Pi“, tiek staliniame kompiuteryje, patikrinkite abiejų mašinų IP adresus. Jie turi būti tame pačiame tinkle!

Staliniame kompiuteryje paleiskite „roscore“ir eksportuokite ROS_MASTER_URI

rožinis

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

Kitas „Raspberry PI“vykdymas

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

eksportuoti ROS_IP = [tavo-aviečių-pi-ip]

ir paleiskite RPILIDAR paleidimo failą

roslaunch rplidar_ros rplidar.launch

Jei jis paleidžiamas sėkmingai, patikrinkite temas, esančias jūsų staliniame kompiuteryje su rostopiniu sąrašu

Jei galite matyti / nuskaityti pranešimus, viskas veikia taip, kaip turėtų veikti. Tada paleiskite RVIZ savo staliniame kompiuteryje, pridėkite lazerinio nuskaitymo pranešimus ir pasirinkite /nuskaitykite temą. Taip pat turėsite pakeisti fiksuotą rėmelį į /lazerį.

Voila!

6 žingsnis: padaryta

Padaryta!
Padaryta!
Padaryta!
Padaryta!

Šis vadovas gali būti pirmasis žingsnis kuriant ROS robotą ant naujojo „Raspberry Pi 4“. Įdiegėme „ROS Melodic“ir paruošėme diegimą, kad jis veiktų be galvos ir prisijungtų prie stalinio kompiuterio belaidžiu tinklu nuotolinio valdymo tikslais.

Tolesni veiksmai priklauso nuo to, kokio tipo robotą norite sukurti. Galite pridėti variklių ir kodavimo prietaisų odometrijai, stereo kamerą „Visual SLAM“ir visų kitų įdomių ir naudingų dalykų.

Šio straipsnio techninę įrangą maloniai parūpino „Seeed studio“. Patikrinkite „Raspberry Pi 4“, „RPLIDAR A1M8“ir kitą aparatūrą gamintojams „Seeed“studijos parduotuvėje!

Jei turite klausimų, pridėkite mane „LinkedIn“ir užsiprenumeruokite mano „YouTube“kanalą, kad gautumėte pranešimą apie įdomesnius projektus, susijusius su mašininiu mokymusi ir robotika.

Rekomenduojamas: