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. 🚀