当前位置:   article > 正文

ros通信小海龟教程(一)Topic_基于 topic 通讯控制乌龟的矩形运动

基于 topic 通讯控制乌龟的矩形运动

参考链接:https://wiki.ros.org/cn/ROS/Tutorials/UnderstandingTopics

1.开始

1.1 roscore

首先确保roscore正在运行, 打开一个新终端:

$ roscore
  • 1

2.turtlesim

打开一个新终端:

$ rosrun turtlesim turtlesim_node
  • 1

3.通过键盘遥控turtle

我们还需要通过键盘来控制turtle,打开一个新终端:

$ rosrun turtlesim turtle_teleop_key
  • 1

现在你可以使用键盘上的方向键来控制turtle运动了。如果不能控制,请选中turtle_teleop_key的终端窗口以确保按键输入能够被捕获。
在这里插入图片描述

2.ROS话题

turtlesim_node节点和turtle_teleop_key节点之间是通过一个ROS话题来相互通信的。turtle_teleop_key在话题上发布键盘按下的消息,turtlesim则订阅该话题以接收消息。使用rqt_graph来显示当前运行的节点和话题。

2.1 使用rqt_graph

rqt_graph用动态的图显示了系统中正在发生的事情。rqt_graph是rqt程序包中的一部分。如果你发现没有安装,请:

$ sudo apt-get install ros-<distro>-rqt
$ sudo apt-get install ros-<distro>-rqt-common-plugins
  • 1
  • 2

将替换成你安装的ROS发行版简称(比如kinetic或melodic等)。
打开一个新终端:

$ rosrun rqt_graph rqt_graph
  • 1

你会看到一个窗口:
在这里插入图片描述如果把鼠标放在/turtle1/command_velocity上方,相应的ROS节点(这里是蓝色和绿色)和话题(这里是红色)就会高亮显示。可以看到,turtlesim_node和turtle_teleop_key节点正通过一个名为/turtle1/command_velocity的话题来相互通信。
在这里插入图片描述

2.2 介绍rostopic

rostopic命令工具能让你获取ROS话题的信息。
你可以使用帮助选项查看

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/788616
推荐阅读
相关标签
  

闽ICP备14008679号