This is an old revision of the document!
Turtlesim on on kahe dimensiooniline liikuva roboti simulatsioon.
Esmalt käivitame roscore:
$ roscore
Käivitame sõlme nimega turtlesim_node teegist turtlesim:
$ rosrun turtlesim turtlesim_node
Kui sõlm käivitada avaneb simulatsioon graafilise kasutajaliisedega.
Käivitame roboti kaugjuhtimise sõlme:
$ rosrun turtlesim turtle_teleop_key
Kui nüüd terminals nooleklahve vajutada, saame robotit simulatsioonis liigutada:
Vaatame kuidas see töötab kasutades tööriista rqt_graph, mis visualiseerib sõlmede ja teemade suhteid:
$ rqt_graph
Käsu käivitades avaneb graafiline kasutajaliides. Näeme, et sõlm /teleop_turtle loeb noolteklahvide vajutusi ja teeb nendest roboti kiiruse geometry_msgs/Twist. See saadetakse teemasse /turtle1/command_velocity, mida kuulab roboti simulatsioon. Sellist konfiguratsiooni kasutatakse ka tihti päris robotites, kus ROS töötab robotis ja kaugjuhtimiseks mõeldud arvuti peal.
Roboti juhtimiseks kasutatakse sõnumi tüüpi geometry_msgs/Twist, mis koosneb lineaarsest ja nurgelisest kiirusest. Proovime ka ise käsurea pealt kiiruse avaldada. Kasutame tööriistal rostopic pub argumenti -r 1, mis saadab ette antud sõnumit 1 Hz sagedusega:
$ rostopic pub /turtle1/cmd_vel geometry_msgs/Twist -r 1 -- '[2.0, 0.0, 0.0]' '[0.0, 0.0, -1.8]'
Näeme, et robot liigub simulatsioonis ringjoonelisest.
Kasutame teemas olevate andmete visualiseerimise tööriista rqt_plot, et visualiseerida teemadesse saadetud sõnumeid:
$ rqt_plot
Kui lisada graafikule teemad /turtle1/pose/x ja /turtle1/pose/y näeme reaalajas roboti asukohta x ja y teljel: