İçindekiler:

Raspberry Pi 4'te ROS Melodic[Debian Buster] + RPLIDAR A1M8: 6 Adım
Raspberry Pi 4'te ROS Melodic[Debian Buster] + RPLIDAR A1M8: 6 Adım

Video: Raspberry Pi 4'te ROS Melodic[Debian Buster] + RPLIDAR A1M8: 6 Adım

Video: Raspberry Pi 4'te ROS Melodic[Debian Buster] + RPLIDAR A1M8: 6 Adım
Video: Raspberry Pi'da Python Kodunu Otomatik Başlatmak 2024, Kasım
Anonim
Image
Image
Raspberry Pi 4'te ROS Melodic[Debian Buster] + RPLIDAR A1M8
Raspberry Pi 4'te ROS Melodic[Debian Buster] + RPLIDAR A1M8

Bu makale, en son Debian Buster'ı çalıştıran Raspberry Pi 4'te ROS Melodic Morenia'nın kurulum sürecini ve kurulumumuzla birlikte RPLIDAR A1M8'in nasıl kullanılacağını ele alacaktır.

Debian Buster sadece birkaç hafta önce resmi olarak piyasaya sürüldüğü için (bu makalenin yazıldığı an itibariyle), tercih edilen bir kurulum yöntemi olan apt-get ile kurulacak önceden oluşturulmuş ROS paketi yoktur. Dolayısıyla onu kaynaktan inşa etmemiz gerekecek. İnan bana, göründüğü kadar korkutucu değil. İşlem bu resmi öğreticide açıklanmıştır, ancak Raspberry Pi üzerinde ROS Melodic'i oluşturmak için birkaç değişiklik yapmamız gerekecek.

Hâlâ korkuyorsanız, rahatlamanıza *yardımcı olabilecek* komik bir resim var. Sağlanan gevşeme düzeyi yeterliyse lütfen geri bildirimde bulunun. Değilse, komik bir kedinin resmi ile değiştirilecektir.

Ocak 2020 DÜZENLEME: Bu makaleyi yayınladığımdan bu yana yarım yıl geçtiğinden, ROS veya Buster'da bazı değişiklikler olmuş olabilir. Bu öğreticiyi yazdıktan sonra bir süre önce Raspberry Pi 4 için bir resim yaptım. Bir katkıda bulunan kişi bunu Google Drive'a yükledi

Nisan 2020 DÜZENLEME: Son zamanlarda resmi Raspberry Pi sitesinden en yeni Raspbian görüntüsünde ROS Melodic kurulumunu yeniden yapmak için zaman buldum. Bu talimatı buna göre düzenledim. Ayrıca temiz, sıkıştırılmış görüntüler oluşturdum ve paylaştım:

Raspbian Buster Lite 2020-02-13 ROS Melodic Bare-bones ile Sürüm 8 GB SD kart gerekir

Raspbian Buster masaüstü ile 2020-02-13 ROS Melodic Desktop ile Sürüm 16 GB SD kart gerekiyor

Sisteminizi çalışır duruma getirmenin en hızlı yolu olabilir. ROS'u kendiniz derlemek istiyorsanız, makaleyi okumaya devam edin.

Adım 1: Bootstrap Bağımlılıklarını Kurma ve Paketleri İndirme

Depoları kurarak ve gerekli bağımlılıkları yükleyerek başlayalım.

sudo sh -c 'echo "deb https://packages.ros.org/ros/ubuntu $(lsb_release -sc) ana" > /etc/apt/sources.list.d/ros-latest.list'

sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654

sudo apt-get güncellemesi

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

Ardından rosdep'i başlatın ve güncelleyin

sudo rosdep başlatma

rosdep güncellemesi

Bu bittiğinde, ROS oluşturmak için özel bir catkin çalışma alanı oluşturalım ve bu dizine geçelim.

mkdir ~/ros_catkin_ws

cd ~/ros_catkin_ws

Şimdi iki seçeneğiniz var:

ROS-Comm: (Bare Bones) kurulumu - ROS'a aşina iseniz ve ne yaptığınızı ve hangi paketlere ihtiyacınız olacağını biliyorsanız bunu kurun. ROS-Comm'a dahil olmayan paketlere ihtiyacınız varsa, kaynaktan da derlemeniz gerekecektir.

Masaüstü Kurulumu: rqt, rviz ve robot genel kitaplıkları gibi GUI araçlarını içerir. ROS'a yeni başlayanlar için daha iyi bir seçim olabilir.

Burada Desktop Install'ı kuracağım.

rosinstall_generator masaüstü --rosdistro melodik --deps --wet-only --tar > melodic-desktop-wet.rosinstall

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

Komutun tüm çekirdek ROS paketlerini src klasörüne indirmesi birkaç dakika sürecektir.

wstool init başarısız olursa veya kesintiye uğrarsa, aşağıdakileri çalıştırarak indirmeye devam edebilirsiniz:

wstool güncellemesi -j4 -t kaynağı

2. Adım: Sorunları Düzeltin

Sorunları Düzeltin
Sorunları Düzeltin

Nisan 2020 DÜZENLEME: Bu adımı atlayın, şimdi tüm sorunlar çözülmüş görünüyor

Collada_urdf bağımlılık sorununu çözmek için Assimp'in (Open Asset Import Library) uyumlu sürümünü yükleyelim.

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 dosyasını açın

cd asimp-3.1.1

cmake.

Yapmak

sudo kurulum yap

rviz için OGRE'yi de yükleyelim

sudo apt-get install libogre-1.9-dev

Ocak 2020 GÜNCELLEME: Libbost ile ilgili sorunlar ROS geliştiricileri tarafından zaten düzeltildi, bu bölümü atlayabilirsiniz

/// atla /// Sonunda libboost ile ilgili sorunları düzeltmemiz gerekecek. Bu gönderideki çözümü stackoverflow'ta kullanıyorum:

Derleme sırasındaki hatalara, daha yeni yükseltme sürümlerinde yalnızca bir tamsayı argümanı kabul eden, ancak ROS'taki actionlib paketi, ona birkaç yerde bir kayan nokta veren 'boost::posix_time::milisaniye' işlevi neden oluyor. Tüm dosyaları listeleyebilirsiniz. bu işlevi kullanarak (!in ros_catkin_ws klasöründe!):

bul -type f -print0 | xargs -0 grep 'boost::posix_time::milisaniye' | kesme -d: -f1 | sıralama -u

Bunları metin düzenleyicinizde açın ve 'boost::posix_time::milisaniye' işlev çağrısını arayın.

ve aramaları şu şekilde değiştirin:

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

ile birlikte:

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

ve bunlar:

boost::posix_time::milisaniye(1000.0f)

ile birlikte:

boost::posix_time::milisaniye(1000)

VIM'den daha basit olan nano metin düzenleyiciyi kullanmanızı öneririm;) Ctrl+O kaydediyor, Ctrl+X çıkıyor ve Ctrl+W arıyor.

///continue_from_here///

3. Adım: Kurulumu Oluşturun ve Kaynak Yapın

Ardından, geri kalan tüm bağımlılıkları yüklemek için rosdep aracını kullanıyoruz:

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

Paketleri indirmeyi ve bağımlılıkları çözmeyi tamamladıktan sonra, catkin paketlerini oluşturmaya hazırsınız. (Bu komutu ros_catkin_ws klasöründen çalıştırın)

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

Derleme işlemi donarsa (masaüstü sürümünü yüklerseniz büyük olasılıkla), kullanılabilir takas alanını artırmanız gerekir. Varsayılan olarak 100 MB'dir, 2048 MB'a yükseltmeyi deneyin.

İyi şanlar! Tüm derleme işlemi yaklaşık 1 saat sürer (Bare-bones versiyonu için daha az), bu yüzden gidip biraz çay yapın.

Şimdi Raspberry Pi 4'ünüze ROS Melodic kurulu olmalıdır. Yeni kurulumu aşağıdaki komutla sağlayacağız:

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

Değişikliklerin etkili olması için yeni bir kabuk açın. Her şeyin başarılı olup olmadığını kontrol etmek için roscore'u başlatmayı deneyin.

Adım 4: RPLIDAR ROS Paketini Kurun

RPLIDAR ROS Paketini Kurun
RPLIDAR ROS Paketini Kurun

Çekirdek ROS'un parçası olmayan diğer paketler için ayrı bir çalışma alanı oluşturalım.

Ev klasörünüzden şunları yapın:

mkdir -p ~/catkin_ws/src

cd ~/catkin_ws/

kedicik_make

ve onu bashrc'ye kaynaklayın:

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

Tamam, RPLIDAR ROS paketini kurmaya başlamaya hazırız.

cd kaynağı

sudo git klonu

cd..

kedicik_make

Paket derlemesinin bitmesini bekleyin. Derlemenin başarılı olup olmadığını görmek için paketi başlatmayı deneyin:

roslaunch rplidar_ros rplidar.launch

Herhangi bir hata vermezse, hızlı bir kutlama dansı yapın (*isteğe bağlı).

Şimdi sadece son parça eksik - muhtemelen Raspberry Pi 4'ü başsız modda çalıştırdığınız için lidar mesajlarını görselleştiremiyoruz. Bunun için ROS'u birden fazla makinede çalışacak şekilde ayarlamamız gerekecek.

Adım 5: ROS'u Birden Çok Makinede Çalıştırmak için Ayarlayın

ROS'u Birden Çok Makinede Çalıştırmak için Ayarlayın
ROS'u Birden Çok Makinede Çalıştırmak için Ayarlayın

Bu kısım için ROS Melodic'in kurulu olduğu bir Ubuntu 18.04 bilgisayarına ihtiyacınız olacak. Ubuntu olduğu için ROS, bu eğitimde açıklandığı gibi apt-get kullanılarak kolayca kurulabilir.

Hem Raspberry Pi hem de masaüstü makinenize ROS kurulumu yaptıktan sonra her iki makinenin de IP adreslerini kontrol edin. Aynı ağda olmaları gerekiyor!

Roscore'u masaüstü bilgisayarınızda çalıştırın ve ROS_MASTER_URI'yi dışa aktarın

gül puanı

dışa aktar ROS_MASTER_URI=https://[masaüstü-makine-ip]:11311

Raspberry PI'de sonraki çalıştırma

dışa aktar ROS_MASTER_URI=https://[masaüstü-makine-ip]:11311

ROS_IP'yi dışa aktar=[ahududu-pi-ip'iniz]

ve RPILIDAR başlatma dosyasını başlatın

roslaunch rplidar_ros rplidar.launch

Başarılı bir şekilde başlatılırsa, masaüstü makinenizde bulunan konuları rostopik liste ile kontrol edin.

Mesajları görebilir / tarayabilirseniz, her şey olması gerektiği gibi çalışır. Ardından masaüstü makinenizde RVIZ'i başlatın, Lazer Tarama mesajları ekleyin ve /scan konusunu seçin. Ayrıca sabit çerçeveyi /lazer olarak değiştirmeniz gerekecektir.

İşte!

Adım 6: Bitti

Tamamlandı!
Tamamlandı!
Tamamlandı!
Tamamlandı!

Bu kılavuz, yeni Raspberry Pi 4'ün üzerine ROS robotunuzu oluşturmanın ilk adımı olabilir. ROS Melodic'i kurduk ve kurulumu, kablosuz ağ üzerinden uzaktan kumanda için kablosuz ağ üzerinden başsız çalışacak ve masaüstü makinemize bağlanacak şekilde hazırladık.

Sonraki adımlar, ne tür bir robot yapmak istediğinize bağlıdır. Odometri için motorlar ve kodlayıcılar, Visual SLAM için stereo kamera ve diğer her türlü heyecan verici ve faydalı şey ekleyebilirsiniz.

Bu makalenin donanımı lütfen Seeed stüdyosu tarafından sağlanmıştır. Seeed stüdyo mağazasında yapımcılar için Raspberry Pi 4, RPLIDAR A1M8 ve diğer donanımlara göz atın!

Herhangi bir sorunuz varsa beni LinkedIn'de ekleyin ve makine öğrenimi ve robotik içeren daha ilginç projelerden haberdar olmak için YouTube kanalıma abone olun.

Önerilen: