Ros ve Fake Turtlebot 3 Node kullanılarak Uygulama Örneği

Bu dokümanda ROS Kinetic sürümü ve Fake Turtlebot 3 kullanılarak harita üzerinde işaretlenen yerlere göre turtlebot 3 robotunun en yakın olduğu nesnenin ismini ve uzaklığını ekrana mesaj yazdıran bir uygulama geliştirilecektir. Önceden Gazebo ile hazırlanmış bir haritadaki nesnelerin konumlarının kayıt altına alınması gerekmektedir. Turtlebot 3 robotu Şekil 1’deki gibi nesnelere yaklaştığında önceden tanımlanmış nesne ismi ekrana yazdırılacaktır. 

Şekil 1 Gazebo ile hazırlanmış bir haritada nesnelerin konumları

 

Bu dokümandaki adımları uygulamadan önce Ros Kinetic Kurulumu ve Turtlebot 3 Fake Node Uygulaması adımlarını tamamlamış olmanız gerekmektedir. 

Aşağıdaki komutu Linux terminal ekranında çalıştırarak bilgisayarınıza Ros Kinetic ve Turtlebot 3 Fake node uygulamalarının eksiksiz yüklendiğinden emin olabilirsiniz. Gerçek bir turtlebot 3 robotuna gerek kalmadan daha önce tanınmlanmış bir dünya üzerinde çalışmalarımız gerçekleştirilecektir. 

Eğer yukarıdaki komut çalıştırıldığında “environment variable ‘TURTLEBOT3_MODEL’ is not set” hatası alıyorsanız

Linux terminal penceresinde aşağıdaki komutu çalıştırmanız gerekmektedir. Fakat her yeni pencere açıldığında bu işlemin yapılması gerektiğinden eb kısayolu ile veya gedit .bashrc komutu ile .bashrc dosyasına aşağıdaki satırı eklemeniz tavsiye edilir. source .bashrc ile tekrar .bashrc komutlarını aktif hale getirebilirsiniz.

Geliştirilecek uygulamanın çalışabilmesi için yukarıdaki komutun çalışır durumda kalması gerekmektedir.

 

Odometri Nedir ?

Odometri, zaman içindeki pozisyonu değiştirmek için hareket sensörlerinden gelen verilerin kullanılmasıdır. Bir başlangıç noktasına göre pozisyonlarını tahmin etmek için robotikte bazı bacaklı veya tekerlekli robotlar tarafından kullanılır. Bu yöntem, hız ölçümlerinin zamana göre konumlandırılması için zamana bağlı entegrasyona bağlı olarak hatalara duyarlıdır. Hızlı ve doğru veri toplama, cihaz kalibrasyonu ve işleme, çoğu durumda etkin bir şekilde kullanılması için gereklidir.

Ros Master çalıştığından emin olduktan sonra aşağıdaki komutlar Linux Terminal ekranından yazılarak topic listesi alınarak, odom topic ile ilgili bilgi alınabilir. 

 

Odom Topic nav_msgs/Odometry nav_msgs paketi içinde Odometry tipinde mesaj yayınladığı bilgisi görülmektedir. http://docs.ros.org/api/nav_msgs/html/msg/Odometry.html adresinde bu mesaj tipi ile ilgili bilgi bulunmaktadır. 

Ros mesajları ile Linux Terminal ekranından da yardım alınabilmektedir. Bunun için rosmsg komutu kullanılmalıdır.

 

 

Devamını Oku

Turtlebot 3 Fake Node Uygulaması

Turtlebot 3 Fake Node Uygulaması

Bu dokümandaki işlemleri uygulamaya başlamadan önce ROS Kinetic, Turtlebot3 ve catkin kurulum işlemlerinin sorunsuz bir şekilde tamamlanmış olması gerekmektedir.

Gerekli kurumları yapabilmek adına yardım alabileceğiniz doküman → http://yapbenzet.kocaeli.edu.tr/ros-kurulumu-ve-catkin/ adresinde bulunmaktadır.

İlk aşamada yukarıdaki komutları terminalde sırasıyla girilerek 1. Resimde de görüldüğü gibi catkin klasörüne gidilerek, gerekli olan Turtlebot3 simulasyon paketi yüklendi ve derleme işlemi gerçekleşti.

1.png

 

Devamını Oku

ROS Catkin paketi oluşturma

ROS Catkin paketi oluşturma

Aşağıdaki kodu terminal ekranına girerek, daha önce oluşturulan catkin_ws/src lokasyonuna gidilir.

catkin_create_pkg komutuyla istediğimiz isimde (bizim örneğimizde beginner_tutorials) ve std_msgs, (mesajlaşma uygulamalarında gerekli kütüphane) rospy (rospython) ve roscpp (rosc++) bağımlılıklarını da ekleyerek bir catkin paketi oluşturulur.

 

Devamını Oku

ROS Kinetic Kurulumu

Önemli Not: Ros Kinetic sürümü için bilgisayarınızda Ubuntu 16.04 LTS yüklü olması gerekmektedir. Ubuntu 18 LTS yüklemeniz durumunda Ros Kinetic kurulumu yapmanız tavsiye edilmemektedir.

 

Bu dokümanda ROS Kinetic kurulumu, bağımlı paketlerin yüklenmesi, catkin çalışma ortamının oluşturulması Turtlebot3 kurulumu ve catkin paketi oluşturma işlemleri anlatılacaktır. Turtlebot 3 robot programlanması için ROS Kinetic dağıtımı yüklenmesi gerekmektedir.

ROS Kinetic Kurulumu

Öncelikle aşağıdaki komutlar terminalde çalıştırılır ve ROS Kinetic kurulumunu tamamlanır.

install_ros_kinetic.sh içerisinde ROS kurmak için çalıştırmamız gereken tüm komutlar bulunmaktadır. Aşağıdaki linkten install_ros_kinetic.sh çalıştırıldığında terminalde arka planda çalıştırılan komutlara ulaşılabilir. https://raw.githubusercontent.com/ROBOTIS-GIT/robotis_tools/master/install_ros_kinetic.sh
 
Bazı durumlarda hata mesajı olarak wget komutunun –no-check-certificate parametresi ile kullanmak gerekebilir. Ekrana  –no-check-certificate ile kullanmanız gerektiğine dair bir mesaj yazdırılırsa bu durumda aşağıdaki komutu çalıştırmanız gerekir.

 

VirtualBox ve Ubuntu Kurulumu

Bu dokümanda Virtualbox indirme, kurulum, network yapılandırması ve Ubuntu 16.04 indirilmesi, VirtualBox üzerine Ubuntu 16.04 kurulumu adımlarından bahsedilecektir.

SANALLAŞTIRMA UYGULAMASININ İNDİRİLMESİ

Yukarıdaki linkten resmi siteye gidilir ve resim 1’de çerçeve içine alınmış bölüme tıklanarak kullanılan işletim sistemine uygun VirtualBox sürümü indirilir, daha sonra aynı sayfada bulunan VirtualBox Extension Pack indirilir.

Resim1
Resim2

Devamını Oku