執行新的命令操作時,均需要啟動一個新的終端然后輸入命令。
基礎操作:
- 啟動 ROS Master:
roscore - 啟動小海龜仿真器:
rosrun turtlesim turtlesim_node - 啟動小海龜鍵盤控制節點:
rosrun turtlesim turtle_teleop_key - 此時按鍵盤上的方向鍵即可操控小海龜運行
其他操作:
提前說明:有小伙伴曾反饋指令有問題,輸入后會報錯。經查實,是因為不同行的問題,如果指令都在同一行,則會出現問題。所以不要把不同行的代碼在同一行輸入!
新生一只小海龜:
rosservice call /spawn "x: 5.0
y: 5.0
theta: 0.0
name: 'turtle2'"
讓第一只小海龜繞圈跑:
代碼中的 x,y,z 為坐標及角度信息,按照意願自行修改即可。
-r 10表示讓命令以 10Hz 的頻率控制小海龜運行,可以自行修改或者刪除該指令。
rostopic pub -r 10 /turtle1/cmd_vel geometry_msgs/Twist "linear:
x: 1.0
y: 0.0
z: 0.0
angular:
x: 0.0
y: 0.0
z: 1.0"
不喜歡換行輸入的小伙伴,可以輸入如下簡化指令:rostopic pub -r 10 /turtle1/cmd_vel geometry_msgs/Twist -- '[1.0, 0.0, 0.0]' '[0.0, 0.0, 1.0]'
同理,讓第二只小海龜繞圈跑:
rostopic pub -r 10 /turtle2/cmd_vel geometry_msgs/Twist "linear:
x: 1.0
y: 0.0
z: 0.0
angular:
x: 0.0
y: 0.0
z: 1.0"
一只小海龜追趕另外一只小海龜實例:
- 安裝小海龜坐標變換功能包:
sudo apt install ros-melodic-turtle-tf - 運行功能包:
roslaunch turtle_tf turtle_tf_demo.launch - 啟動小海龜鍵盤控制節點:
rosrun turtlesim turtle_teleop_key - 此時按鍵盤上的方向鍵即可操控第一只小海龜運行,第二只小海龜會自動跟蹤第一只小海龜
