MEMAHAMI PRINSIP KERJA TOPIC ANTAR NODE

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 
Langkah #3 : Melihat kembali node yang sedang berjalan
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