ROS Konularının (Topic) Tanıtımı ve Kullanım Örnekleri
Bu kısımda ‘rostopic’ ve ‘rqt_plot’ komut araçlarının kullanımları incelenmektedir.
- Öncelikle ROS’u başlatmak için yeni terminalde ‘roscore’ komutunu çalıştırın.
- Bu kısım içinde ‘turtlesim’ düğümü üzerinden araçlar inceleneceğinden aşağıdaki komutlarla bu düğüm çalıştırılır.
$ rosrun turtlesim turtlesim_node
turtle keyboard teleoperation
- Açılan ‘turtlesim’ düğümü ile ekrana gelen robotun klavye kontrolünü sağlamak için aşağıdaki kodlar kullanılır.
$ rosrun turtlesim turtle_teleop_key
Gelen terminal üzerindeyken klavyenin yön tuşları kullanılarak turtleSim robotu hareket ettirilebilir. Bu hareket örneği aşağıdaki şekilde gösterilmiştir.
- Öncelikle ROS’u başlatmak için yeni terminalde ‘roscore’ komutunu çalıştırın.
- Bu kısım içinde ‘turtlesim’ düğümü üzerinden araçlar inceleneceğinden aşağıdaki komutlarla bu düğüm çalıştırılır.
$ rosrun turtlesim turtlesim_node
turtle keyboard teleoperation
- Açılan ‘turtlesim’ düğümü ile ekrana gelen robotun klavye kontrolünü sağlamak için aşağıdaki kodlar kullanılır.
$ rosrun turtlesim turtle_teleop_key
Gelen terminal üzerindeyken klavyenin yön tuşları kullanılarak turtleSim robotu hareket ettirilebilir. Bu hareket örneği aşağıdaki şekilde gösterilmiştir.
ROS Konuları (ROS Topics)
Yukarıdaki işlemler sonucunda ‘turtlesim_node’ ile ‘turtle_teleop_key’ düğümleri ROS konuları üzerinden birbirleriyle haberleşmeye başlamışlardır. Açılan konu üzerinden ‘turtle_teleop_key’ düğümü klavye etkileşimlerini yayınlarken (publishing) , ‘turtlesim’ düğümü ise aynı konudaki bu tuş iletimlerini takip eder (subscribing). Bu etkileşim ‘rqt_graph’ düğümü üzerinden aşağıdaki aşamalar uygulanarak izlenebilir.
rqt_graph düğümünün kullanımı: rqt_graph sistemde o an olup biteni dinamik bir grafik ile gösterir. rqt_graph, ‘rqt’ paketinin bir aracıdır.Bu nedenle öncelikle aşağıdaki kodlar kullanılarak ‘rqt’ paketi kurulmalıdır.
$ sudo apt-get install ros-kinetic-rqt
$ sudo apt-get install ros-kinetic-rqt-common-plugins
Bu komutların akabinde yeni bir terminal açılarak aşağıdaki kodlarla ‘rqt_graph’ düğümü çalıştırılır.
$ rosrun rqt_graph rqt_graph
rostopic
‘rostopic’ aracı ,ROS konuları hakkında bilgi alınmasını sağlar.’rostopic –h’ komutu ile bu aracın alt-komutlarına ulaşılabilir, bu alt-komutların işlevleri hakkında bilgi alınabilir. Bu alt-komutlar aşağıda sıralanmıştır:
Rostopic bw: Konunun kullandığı band genişliğini (bandwidth) gösterir.
Rostopic echo: Ekrana mesajları yansıtır.
Rostopic hz : Konuların yayın yüzdesini (publishing rate) ekrana verir.
Rostopic list: Aktif konu hakkında bilgi verir.
Rostopic pub: Konuya veri yayınlar:
Rostopic type: Konu tipini verir.
rostopic echo
‘rostopic echo’ aracının kullanımı turtle_teleop_key düğümünün data alışverişi üzerinden aşağıdaki gibi gösterilmiştir.
- Turtle_teleop_key düğümünün ,turtlesim düğümüne gönderdiği hız bilgisi aşağıdaki kodlar kullanılarak görüntülenebilir.
$ rostopic echo /turtle1/cmd_vel
- Eğer bu komut sonrası ekranda hiçbir veri görüntülenemiyorsa ,teleop_key kullanılmamış demektir. Herhangi bir yön tuşuna basıldığı takdirde turtle_teleop_key hareket komutlarını gönderek, rostopic echo üzerinden hız verilerinin görüntülenmesi sağlanacaktır.
- Bu işlemden sonra ‘rqt_graph’ ile arayüz açılır ,sol üst köşedeki ‘refresh’ tuşuna basılırsa ,aşağıdaki şekildeki gibi yeni bir ‘rqt_graph’ elde edilmiş olacaktır.
- Şekilde görüldüğü üzere rostopic echo ,kırmızı renkli, ‘turtle1/command_velocity’ konusunu takip etmektedir.
![]() |
ROS Konularının (Topic) Tanıtımı ve Kullanım Örnekleri
Description: Bu kısımda ‘rostopic’ ve ‘rqt_plot’ komut araçlarının kullanımları incelenmektedir.Tutorial Level:
Contents