RPLIDAR Kurulumu ve Kullanımı | ROS2 Humble

RPLIDAR, robotik çalışmaları için Slamtech şirketi tarafından geliştirilmiş düşük maliyetli bir LIDAR (Light Detection and Ranging) sensörüdür. Piyasada bu sensörün farklı modelleri bulunmaktadır. Bizler bu yazıda RPLIDAR A1M8 modelini kullanacağız. Bu model güncel olarak piyasadaki en düşük maliyetli 2D LIDAR sensörlerinden biridir. Robotiğe yeni giriş yapanlar için LIDAR sensörünü anlama ve sensör tarafından üretilen verileri işleme konusunda tecrübe kazanma açısından oldukça güzel bir başlangıç noktasıdır.

Bu yazıda ürünün teknik özelliklerine detaylı olarak değinmek yerine, sensörün ROS2 Humble ile kullanımına odaklanacağız. Ürünü herhangi bir site üzerinden sipariş edebilirsiniz. Referans olması açısından sizlere güvenilir bir şekilde ürünü edinebileceğiniz bir satış bağlantısı paylaşmak istiyorum. Ürüne buraya tıklayarak ulaşabilirsiniz.

1. Kurulum

Kuruluma başlamadan önce tüm bileşenlerin hazır olduğundan emin olalım:

  • RPLIDAR A1M8
  • Micro USB Kablo
  • RPLIDAR UART Bridge

Eğer blog yazımın başında paylaştığım bağlantı üzerinden ürünü edindiyseniz, UART Bridge size gönderilen LIDAR ile birlikte gelecektir. Sadece Micro USB kablasunu kendiniz ayrı olarak edinmeniz gerekiyor. Yaygın bir kablo türü olduğu için evinizde veya çevrenizdeki kişilerde bulunuyor olabilir. Eğer yoksa hemen en yakın elektronikçiden bir tane Micro USB kablosu edinebilirsiniz.

Şimdi kuruluma geçebiliriz. Terminali açıp aşağıdaki komutu çalıştırmanızı istiyorum:

sudo apt-get install ros-humble-rplidar-ros

Eğer yukarıdaki gibi bir çıktı aldıysanız, herşey sağlıklı bir şekilde kuruludu demektir. Şimdi sıradaki adıma geçebiliriz.

2. Kullanım

Şimdi LIDAR’ı bilgisayara bağlayarak sensörümüzü çalıştıracağız ve çıktıları inceleyeceğiz. İlk olarak UART Bridge’i LIDAR’dan çıkan kabloya takalım. Ardından Micro USB kablosunun 1 tarafını UART Bridge’e, diğer tarafını ise bilgisayarımızın USB çıkışına takalım.

LIDAR’ı bilgisayara takıp güç verdiğimiz anda, LIDAR’a entegre olarak bulunan step motorlar dönmeye başlayacak ve LIDAR’ımız aktif hale gelecek.

Artık RPLIDAR için indirdiğimiz ROS2 paketini kullanarak verileri incelemeye başlayabiliriz. Öncelikle LIDAR’ın bağlı bulunduğu portu aşağıdaki komut ile tespit edelim:

ls /dev | grep ttyUSB

Benim LIDAR’ın ttyUSB0 portuna bağlı bulunuyor, sizinki farklı bir porta bağlı olabilir. Aşağıdaki komut LIDAR’den gelen verileri bir konu(topic) üzerinden yayınlamaktadır. LIDAR’ınız hangi porta bağlıysa seial_port argümanına o değeri giriniz.

ros2 launch rplidar_ros rplidar_a1_launch.py serial_port:=/dev/ttyUSB0

Gelin bu launch dosyasının LIDAR’dan gelen verileri hangi konu üzerinden yayınladığına göz atalım:

Yukarıdaki görselde görüldüğü üzere LIDAr verileri /scan isimli konuda (topic) yayınlanmaktadır. Bu durumda aşağıdaki echo komutu ile gelen mesajları dinleyebiliriz:

ros2 topic echo /scan

Şimdi /scan konusunu dinleyerek terminal üzerinden gelecek mesajlara bir göz atalım. ros2 topic echo /scan komutunu terminalde çalıştırdığımızda, alacağımız çıktı muhtemelen aşağıdaki gibi olacak:

Bu veriler LIDAR’ın sağlıklı bir biçimde çalıştığını gösteriyor. Fakat bizim bu verileri daha anlamlı hale getirmemiz gerekiyor. Bunu Rviz üzerinden gerçekleştireceğiz. Aşağıdaki komutu çalıştırarak Rviz’i başlatalım:

rviz2

Rviz açıldıktan sonra Fixed Frame’i laser olarak ayarlayalım. Ayrıca LaserScan’i ekleyip Topic’i scan olarak değiştirelim. Bunun ardından aşağıdaki gibi LIDAR verilerimizi görmeye başlayacağız:

3. LIDAR ile Haritalama

Bu blog yazısı, RPLIDAR A1M8 modelinin kurulumunun nasıl yapıldığını sizlere anlatmak amacıyla oluşturulmuştur. LIDAR verilerini kullanarak haritalama ve navigasyon algoritmalarını çalıştırmak için sabırsızlandığınızı biliyorum. İlerleyen yazılarımızda bu konulara da değinmeye çalışacağız. Aklınıza takılan noktaları aşağıdaki bölümden yorum olarak bizlere iletmeyi unutmayın.

Son olarak, Youtube kanalımızdan bu yazının videolu anlatımına ulaşabilirsiniz. 🚀

Oğuzhan Gürbüz

Oğuzhan Gürbüz

Merhabalar,
Görsel Analiz'in kurucusuyum.
İnsansız kara araçları üzerine çalışıyorum. Görüntü işleme, derin öğrenme ve ROS gibi alanlarda danışmanlıklar ve eğitimler veriyorum. Şirketlere ve araştırmacılara bu tip sistemleri geliştirmelerinde yardımcı oluyorum.

13 Comments

  1. Merhaba hocam videonuzu izledim teşekkürler video için lidark bağladım rvizde sizin aldığınız verileri bende aldım hocam ama haritlama kısmını nasıl yapacağımı anlayamadım yapay zeka uygulamalarını kullanmama rağmen hala bir sonuç alamadım nasıl yapcağıma dair önerilerini bekliyorum teşekkürler

    • Merhabalar Berkan, LIDAR ile haritalama yapmak için kullanılan slam_toolbox veya cartographer gibi bazı paketler var. LIDAR’ını videodaki gibi başarılı bir şekilde bağladıktan sonra bu paketler ile haritalama yapabilirsin.

      Eğer istersen kendi haritalama düğümünü de yazabilirsin fakat yukarıda bahsettiğim paketler hali hazırda başarılı bir şekilde çalışmaktadır. Aklına takılan farklı bir konu olursa fikir alışverişine devam edebiliriz, yardımcı olmaktan mutluluk duyarım. 👍

  2. Tekrardan merhaba hocam bahsettiğiiz paketleri indirip defalarca denemem rağmen hala aynı şekilde rviz de görüntü veriyor haritlama nodesi oluşturup denedik ama kendi oluşturduğumuz nodede lidarı algılamıyor maalesef başka önerileriniz varmıdır acaba

    • Merhaba, anladığım kadarıyla sadece lidar ile haritalama yapmak istiyorsunuz. Bunun için paket kurulumlarının ardından konfigürasyon dosyalarının, launch dosyalarının ve slam_toolbox parametrelerinin doğru ayarlanması gerekir aksi halde haritalama başlamayabilir. Bu proses belki bir miktar yorucu gözükebilir ama henüz birkaç otomatik işlemle haritalama gerçekleştirmek mümkün değil.

  3. Ben udemy den geldim Hocam lidarı bağlıyorum rplidar_s2_launch.py ile lidari başlatıyorum ve rviz de gorsellestiriyorum slam toolbox i başlattığım da ise kuyruk dolu olarak hata veriyor ve map topiğinden hiçbir veri alamıyorum

  4. Merhaba, slam_toolbox dosyasını aynı terminalden ardı ardına başlatmayı denediyseniz bundan dolayı kuyruk dolu hatası alıyor olabilirsiniz. ROS’daki iletişim hizmetini durdurup tekrar başlatarak veya makinenize reset atarak bu sorunun üstesinden gelebilirsiniz.

  5. Hocam tekrardan merhabalar yukarıda söylemiş olduğunuz yöntemleri denedim fakat hala aynı hata ile karşılaşıyorum. Cartographer üzerinde yoğunlaşmayı planlıyorum. Fakat onda da şimdiye kadar yaptıklarımdan bir sonuç alamadım. Cartographer için bir yol haritası gösterebilir misiniz rica etsem.

    • Merhaba, Cartographer paketinin kurulumlarını yaptıktan sonra kullanımı için şu 3 dosyayı hazırlayın: launch, .lua, URDF
      Bunun ardından launch dosyasını başlatarak haritalamayı başlatabilirsiniz.

  6. hocam tekrardan merhabalar dediklerini bende denedim hem slam_toolbox hemde Cartographer ile denedim hocam ama gridde hiçbir şey görünmüyor fixed namede hata veriyordu orayı düzelttim ama map message kısmında no map received hatası aldım sürekli birkaç yol denememe rağmen çözemedim başka önerileriniz varmıdır peki yardımınız için çok teşekkürler bu arada:)

    • Merhaba, bunun birkaç nedeni olabilir. Aklıma gelen ilk neden ise; parametre ayarlarının doğru yapılmamış olması. Eğer Cartographer kullanıyorsanız ve sadece lidar ile haritalama yapacaksanız, bu durumda odometri verisi olarak “laser_link“i kullanacağınızı bildirmeniz gerekiyor.

  7. hocam bilgi için teşekür ederim ama odometri verisi olarak laser_link i denememe rağmen olmadı yanlış denemiş te olabilirim bizlere uygulamalı anlatımı olan bir kaynak önerebilirmisiniz veya sizin öyle bir dersiniz varmıdır ACABA

Leave a Reply

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Ücretsiz Bilgisayarlı Görü eğitimlerini kaçırmamak için hemen abone ol !