ROS小乌龟turtlesim详解
turtlesim 小烏龜模擬
小烏龜的啟動
在安裝完ROS之后,就可以啟動小烏龜了,打開一個終端。
1. 首先要打開ROS服務
roscore
2. 打開一個新終端,打開小烏龜
rosrun turtlesim turtlesim_node
3. 打開一個新終端,通過鍵盤控制小烏龜,這個終端窗口必須置頂才能鍵盤控制
rosrun turtlesim turtle_teleop_key
會出現如下結果,此時就可以通過鍵盤的前后左右來控制小烏龜的平面運動了。
Reading from keyboard
—————————
Use arrow keys to move the turtle.
給小烏龜的運動控制節點發布消息
首先通過ctrl+C 命令,關閉鍵盤控制終端的節點
輸入話題列表查看指令
rostopic list
可以看到當前有如下5個節點,其中/turtle1/cmd_vel 是控制小烏龜運動的節點
/rosout
/rosout_agg
/turtle1/cmd_vel
/turtle1/color_sensor
/turtle1/pose
通過rostopic pub命令,給指定的話題發布消息
rostopic pub /turtle1/cmd_vel geometry_msgs/Twist “linear:
x: 0.0
y: 0.0
z: 0.0
angular:
x: 0.0
y: 0.0
z: 0.0”
/turtle1/cmd_vel為話題,geometry_msgs/Twist 為數據類型。linear為線速度,angular為角速度,單位是m/s 和 rad/s.
線速度linear,x是前后,y是左右,z是上下。角速度angular,x是沿X軸逆時針轉動,y是沿y軸逆時針轉動,z是沿Z軸逆時針轉動。
例如:”linear: x: 1.0 y: 0.0 z: 0.0 angular: x: 0.0 y: 0.0 z: 0.0” 小烏龜沿X軸做直線運動。
例如:”linear: x: 0.0 y: 0.0 z: 0.0 angular: x: 0.0 y: 0.0 z: 0.0” 小烏龜沿Z軸原地轉動
例如:”linear: x: 1.0 y: 0.0 z: 0.0 angular: x: 0.0 y: 0.0 z: 1.0” 小烏龜邊向前,邊自傳,速度合成后,軌跡是一個圓。
通過rqt圖形化工具給話題發布消息
rqt
同時打開兩個小烏龜
如何打開第二個烏龜呢?首先我們列出所有當前的ros service
rosservice list
會出現以下內容
/clear
/kill
/reset
/rosout/get_loggers
/rosout/set_logger_level
/spawn
/turtle1/set_pen
/turtle1/teleport_absolute
/turtle1/teleport_relative
/turtlesim/get_loggers
/turtlesim/set_logger_level
用到spawn命令再生一個小烏龜,當出現/spawn 后一直按tab鍵會補全,然后回車,會自動生成一個按數字順序命名的小烏龜
rosservice call /spawn “x: 0.0
y: 0.0
theta: 0.0
name: ””
name: “turtle2”(回車后自動生成的名字)
總結
以上是生活随笔為你收集整理的ROS小乌龟turtlesim详解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: TP-LINK如何查看有几台设备连接
- 下一篇: sqlserver跟踪数据库_说说被遗忘