Daftar Isi:

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

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

Video: ROS Melodic di Raspberry Pi 4[Debian Buster] + RPLIDAR A1M8: 6 Langkah
Video: [F1десятая (F1/10) лекция 3]: Файловая система ROS и Catkin Make 2024, Desember
Anonim
Image
Image
ROS Melodic di Raspberry Pi 4[Debian Buster] + RPLIDAR A1M8
ROS Melodic di Raspberry Pi 4[Debian Buster] + RPLIDAR A1M8

Artikel ini akan membahas proses instalasi ROS Melodic Morenia pada Raspberry Pi 4 yang menjalankan Debian Buster terbaru dan cara menggunakan RPLIDAR A1M8 dengan instalasi kami.

Sejak Debian Buster dirilis secara resmi hanya beberapa minggu yang lalu (saat artikel ini ditulis), tidak ada paket ROS yang dibuat sebelumnya untuk diinstal dengan apt-get, yang merupakan metode instalasi yang disukai. Oleh karena itu kita perlu membangunnya dari sumber. Percayalah, itu tidak menakutkan seperti kedengarannya. Prosesnya dijelaskan dalam tutorial resmi ini, tetapi untuk membangun ROS Melodic di Raspberry Pi kita perlu melakukan beberapa modifikasi.

Jika Anda masih takut, berikut adalah gambar lucu yang *mungkin* membantu Anda rileks. Harap berikan umpan balik jika tingkat relaksasi yang diberikan sudah cukup. Jika tidak, akan diganti dengan gambar kucing lucu.

EDIT Januari 2020: Karena sudah setengah tahun sejak saya memposting artikel ini mungkin ada beberapa perubahan pada ROS atau Buster. Saya telah membuat gambar untuk Raspberry Pi 4 beberapa waktu yang lalu, setelah menulis tutorial ini. Seorang kontributor telah mengunggahnya ke Google Drive

EDIT April 2020: Saya baru-baru ini menemukan waktu untuk mengulang instalasi ROS Melodic pada gambar Raspbian terbaru dari situs resmi Raspberry Pi. Saya telah mengedit instruksi ini dengan tepat. Saya juga membuat dan membagikan gambar yang bersih dan terkompresi:

Raspbian Buster Lite 2020-02-13 Rilis dengan ROS Melodic Bare-bones Membutuhkan kartu SD 8 GB

Raspbian Buster dengan desktop 13-02-2020 Rilis dengan ROS Melodic Desktop Membutuhkan kartu SD 16 GB

Ini mungkin cara tercepat untuk mengaktifkan dan menjalankan sistem Anda. Jika Anda ingin mengkompilasi ROS sendiri, baca terus artikelnya.

Langkah 1: Menginstal Ketergantungan Bootstrap dan Unduh Paket

Mari kita mulai dengan menyiapkan repositori dan menginstal dependensi yang diperlukan

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 build-essential cmake

Kemudian inisialisasi rosdep dan perbarui

sudo rosdep init

pembaruan rosdep

Setelah selesai, mari buat ruang kerja catkin khusus untuk membangun ROS dan pindah ke direktori itu.

mkdir ~/ros_catkin_ws

cd ~/ros_catkin_ws

Sekarang Anda memiliki dua pilihan:

ROS-Comm: Instalasi (Bare Bones) - instal yang ini jika Anda sudah familiar dengan ROS dan tahu apa yang Anda lakukan dan paket apa yang Anda perlukan. Jika Anda membutuhkan paket yang tidak termasuk dalam ROS-Comm, Anda juga perlu mengkompilasi dari sumber.

Desktop Install: termasuk alat GUI, seperti rqt, rviz, dan perpustakaan robot-generic. Mungkin pilihan yang lebih baik bagi pemula untuk ROS.

Saya akan pergi dengan menginstal Desktop Instal di sini.

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

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

Perintah akan memakan waktu beberapa menit untuk mengunduh semua paket inti ROS ke dalam folder src.

Jika wstool init gagal atau terganggu, Anda dapat melanjutkan unduhan dengan menjalankan:

pembaruan wstool -j4 -t src

Langkah 2: Perbaiki Masalah

Perbaiki Masalah
Perbaiki Masalah

EDIT April 2020: Lewati langkah ini, sepertinya semua masalah telah diperbaiki sekarang

Mari instal versi Assimp (Open Asset Import Library) yang kompatibel untuk memperbaiki masalah ketergantungan colada_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

membuat.

membuat

sudo make install

Mari kita juga menginstal OGRE untuk rviz

sudo apt-get install libogre-1.9-dev

PEMBARUAN Januari 2020: Masalah dengan libbost telah diperbaiki oleh pengembang ROS, Anda dapat melewati bagian ini

/// lewati /// Akhirnya kita harus memperbaiki masalah dengan libboost. Saya menggunakan solusi dari posting ini di stackoverflow:

Kesalahan selama kompilasi disebabkan oleh fungsi 'boost::posix_time::milliseconds' yang dalam versi boost yang lebih baru hanya menerima argumen integer, tetapi paket actionlib di ROS, memberikannya float di beberapa tempat. Anda dapat membuat daftar semua file menggunakan fungsi itu (! di folder ros_catkin_ws!):

temukan -tipe f -print0 | xargs -0 grep 'boost::posix_time::milidetik' | potong -d: -f1 | urutkan -u

Buka di editor teks Anda dan cari panggilan fungsi 'boost::posix_time::milliseconds'.

dan ganti panggilan seperti ini:

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

dengan:

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

dan ini:

boost::posix_time::milidetik(1000.0f)

dengan:

boost::posix_time::milidetik(1000)

Saya sarankan Anda menggunakan editor teks nano, yang lebih sederhana daripada VIM;) Ctrl+O menyimpan, Ctrl+X keluar dan Ctrl+W sedang mencari.

///lanjutkan_dari_sini///

Langkah 3: Bangun dan Sumber Instalasi

Selanjutnya kita menggunakan alat rosdep untuk menginstal semua dependensi lainnya:

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

Setelah selesai mengunduh paket dan menyelesaikan dependensi, Anda siap untuk membangun paket catkin. (Jalankan perintah ini dari folder ros_catkin_ws)

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

Jika proses kompilasi macet (sangat mungkin, jika Anda menginstal versi desktop), Anda perlu menambah ruang swap yang tersedia. Secara default 100 MB, coba naikkan menjadi 2048 MB.

Semoga beruntung! Seluruh proses kompilasi memakan waktu sekitar 1 jam (kurang untuk versi Bare-bones), jadi buatlah teh.

Sekarang ROS Melodic harus diinstal pada Raspberry Pi 4 Anda. Kami akan mencari sumber instalasi baru dengan perintah berikut:

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

Buka shell baru agar perubahan diterapkan. Coba luncurkan roscore untuk memeriksa apakah semuanya berhasil.

Langkah 4: Instal Paket RPLIDAR ROS

Instal Paket RPLIDAR ROS
Instal Paket RPLIDAR ROS

Mari buat ruang kerja terpisah untuk paket lain, yang bukan bagian dari ROS inti.

Dari folder rumah Anda lakukan:

mkdir -p ~/catkin_ws/src

cd ~/catkin_ws/

catkin_make

dan sumber ke bashrc:

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

Oke, kita siap untuk mulai menginstal paket RPLIDAR ROS.

cd src

sudo git clone

cd..

catkin_make

Tunggu kompilasi paket selesai. Coba luncurkan paket untuk melihat apakah kompilasi berhasil:

roslaunch rplidar_ros rplidar.launch

Jika tidak menghasilkan kesalahan, lakukan tarian perayaan cepat (*opsional).

Sekarang hanya bagian terakhir yang hilang - karena Anda mungkin menjalankan Raspberry Pi 4 dalam mode tanpa kepala, kami tidak dapat memvisualisasikan pesan lidar. Untuk itu kita perlu mengatur ROS untuk berjalan di beberapa mesin.

Langkah 5: Atur ROS untuk Dijalankan di Beberapa Mesin

Atur ROS untuk Dijalankan di Beberapa Mesin
Atur ROS untuk Dijalankan di Beberapa Mesin

Untuk bagian ini Anda memerlukan komputer Ubuntu 18.04 dengan ROS Melodic terinstal. Karena itu Ubuntu ROS dapat dengan mudah diinstal menggunakan apt-get seperti yang dijelaskan dalam tutorial ini.

Setelah Anda melakukan instalasi ROS baik pada Raspberry Pi dan mesin desktop Anda, periksa alamat IP dari kedua mesin tersebut. Mereka harus berada di jaringan yang sama!

Jalankan roscore di komputer desktop Anda dan ekspor ROS_MASTER_URI

roscore

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

Selanjutnya pada Raspberry PI jalankan

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

ekspor ROS_IP=[your-raspberry-pi-ip]

dan luncurkan file peluncuran RPILIDAR

roslaunch rplidar_ros rplidar.launch

Jika berhasil diluncurkan, periksa topik yang ada di mesin desktop Anda dengan daftar rostopic

Jika Anda dapat melihat / memindai pesan, semuanya berfungsi sebagaimana mestinya. Kemudian luncurkan RVIZ pada mesin desktop Anda, tambahkan pesan Laser Scan dan pilih topik /scan. Anda juga perlu mengubah bingkai tetap ke /laser.

Voila!

Langkah 6: Selesai

Selesai!
Selesai!
Selesai!
Selesai!

Panduan ini dapat menjadi langkah pertama untuk membangun robot ROS Anda di atas Raspberry Pi 4. Kami telah menginstal ROS Melodic dan menyiapkan instalasi untuk menjalankan tanpa kepala dan menghubungkan ke mesin desktop kami melalui jaringan nirkabel untuk kendali jarak jauh.

Langkah selanjutnya tergantung pada jenis robot yang ingin Anda buat. Anda dapat menambahkan motor dan encoder untuk odometri, kamera stereo untuk Visual SLAM dan segala macam hal menarik dan berguna lainnya.

Perangkat keras untuk artikel ini disediakan oleh studio Seeed. Lihat Raspberry Pi 4, RPLIDAR A1M8 dan perangkat keras lainnya untuk pembuat di toko Seeed studio!

Tambahkan saya di LinkedIn jika Anda memiliki pertanyaan dan berlangganan saluran YouTube saya untuk mendapatkan pemberitahuan tentang lebih banyak proyek menarik yang melibatkan pembelajaran mesin dan robotika.

Direkomendasikan: