untuk melihat bagaimana prinsip kerja dari node publisher dan subscriber, kita dapat
menjalan dari node yang sudah ada dengan cara sebagai berikut :
Langkah #1 : Melihat node yang sedang berjalan
pertama sekali kita akan melihat node yang sedang berjalan dengan menggunakan koding berikut :
rosnode list
Keluaran dari coding diatas berupa node yang sedang berjalan seperti pada gambar dibawah.
/rosout merupakan node yang sudah berjalan secara otomotis saat kita menjalankan ROS dengan perintah roscore.
Langkah #2 : Jalankan turtlesim_node
rosrun turtlesim turtlesim_node
Output dari koding diatas adalah mengeluarkan tampilan dengan gambar kura-kura, jika gambar kura-kura yang berbeda tidak masalah karena kura-kura yang muncul akan selalu berbeda setiap node turtlesim_node dijalankan
Oouput turtlesim_node |
setelah menjalankan turtlesim_node kita akan kembali melihat node yang sedang berjalan dengan menggunakan perintah
rosnode list
sehingga keluaran akan terlihat seperti berikut :
yang awalnya tadi hanya /rosout sekarang akan muncul satu node lagi yaitu /turtlesim, /turtlesim merupakan nama node dari file turtlesim_node.
Langkah #4 : Melihat info dari node /turtlesim
setiap node yang sedang berjalan kita dapat melihat informasi penting dari node tersebut, sepertihalnya topic yang dipublish, topic yang di subscriber, message dan servis. penjelasan mengenai topic,message dan servis akan dijelaskan dilain waktu, sekarang kita hanya berfokus pada topic yang dipublish. jalankan perintah seperti berikut :
rosnode info /turtlesim
output :
Dari gambar diatas kita dapat mengetahui topic yang di-publish dan di-subscribe
oleh node /turtlsim, Anda dapat melihat pada bagian Publication dan Subscriptions. Abaikan
keterangan lain, kita akan membahasanya dilain waktu.
Perhatikan bahwa node /turtlesim meng-publish 2 topic dan meng-subscriber 1 topic, yaitu :
- Topic yang di-publish
- /turtle1/color_sensor
- /turtle1/pose
- Topic yang di-subscribe
- /turtle1/cmd_vel
Langkah #5 : Jalankan node lainnya
setelah kita menjalankan node /turtlesim dengan menggunakan perintah rosrun turtlesim turtlesim_node, kita akan menjalan node lainnya dalam terminal yang berbeda, anda bisa menekan shift + ctrl + t pada teriminal sehingga akan muncul tab baru, atau ctrl+alt+t sehingga akan muncul layar terminal baru. Setelah itu jalankan perintah sebagai berikut :
rosrun turtlesim turtle_teleop_key
dengan menjalankan node diatas maka kita dapat menggerakan kura-kura dengan menggunakan panah keyboard.
Pertanyaanya bagaimana hal ini terjadi?. node /turtlesim dan node /teleop turtle akan saling bertukar informasi melalui topic yang mereka kirim (publish) dan topic yang mereka terima(subscribe). ikuti langkah selanjutnya untuk melihat penjalan lebih jauh.
Langkah #6 : Jalankan rosnode list
jalankan rosnode list kembali, kemudia liat hasilnya. Kita akan melihat satu node dengan nama /teleop_turtle
Langkah #7: Jalankan rosnode info turtle_teleop_key
kita akan melihat topic yang terdpat pada /teleop_turtle, sehingga kita akan memahami bagaiamana node /turtlesim dan node /teleop_turtle saling berinteraksi . Jalankan perintah seperti berikut :
rosnode info/teleop_turtle
output :
Perhatikan bahwa node /teleop_turtle meng-publish topic /turtle1/cmd_vel. ingat kembali bahwa node /turtlesim meng-subscribe topic /turtle1/cmd_vel, topic /turtle1/cmd_vel disini merupakan topic yang dapat membuat kura-kura bergerak dengan menggunkan panah dari keyboard anda.
Node /teleop_turtle akan mengirimkan informasi berdasarkan keyboard yang anda tekan melalui topic yang bernama /turtle1/cmd_vel, kemudian node /turtlesim akan menerima informasi ini karena node /turtlesim meng-subscribe (menerima) topic dengan nama/turtle1/cmd_vel, baru kemudia data dari topic yang akan diproses sehingga kura-kura dapat bergerak
0 Komentar