按照官方教程(ROS/Tutorials/UnderstandingTopics),跑了一遍案例,在学习ros topic发布话题这条命令时,偶然在大神古月居的博客中发现了另一种语法形式(ROS探索总结(四)——简单的机器人仿真),有异曲同工之妙,对比如下:
1.官方教程命令句式:
rostopic pub /turtle1/cmd_vel geometry_msgs/Twist -r 10 -- '[2.0, 0.0, 0.0]' '[0.0, 0.0, 1.8]'
2.古月居博客的命令句式:
rostopic pub -r 10 /cmd_vel geometry_msgs/Twist '{linear: {x: 2.0, y: 0.0, z: 0.0}, angular: {x: 0.0, y: 0.0, z: 1.8}}'
两者的区别在于:
- 消息持久性: < -r 10 > 位置不同,似乎影响不大
- 话题名称:古月居的博客中较官方教程省略了 “/turtle1”,看结果时可以的
- 消息数据内容:此次涉及到YAML语法,从结果看都正确,应该是语法的多样性导致的