概述node
首先咱们从新温习一下ROS术语。3d
命令 | 详细说明 |
rostopic list | 显示活动的话题目录 |
rostopic echo [话题名称] | 实时显示指定话题的消息内容 |
rostopic find [类型名称] | 显示使用指定类型的消息的话题 |
rostopic type [话题名称] | 显示指定话题的消息类型 |
rostopic bw [话题名称] | 显示指定话题的消息带宽(bandwidth) |
rostopic hz [话题名称] | 显示指定话题的消息数据发布周期 |
rostopic info [话题名称] | 显示指定话题的信息 |
rostopic pub [话题名称] [消息类型] [参数] | 用指定的话题名称发布消息 |
在运行ROS话题示例以前,请先关闭全部节点。经过在不一样的终端窗口中分别运行如下命令来运行turtlesim_node和turtle_teleop_key。code
roscore rosrun turtlesim turtlesim_node rosrun turtlesim turtle_teleop_key
rostopic list:列出活动话题blog
rostopic list命令显示当前正在发送和接收的全部话题的列表。ci
rostopic list
经过将“-v”选项添加到rostopic list命令,能够分开发布话题和订阅话题,并将每一个话题的消息类型一块儿显示。开发
rostopic list -v
rostopic echo [话题名称]:实时显示指定话题的消息内容cmd
如下示例实时显示组成/turtle1/pose话题的x、y、theta、linear_velocity和angular_velocity的数据。it
rostopic echo /turtle1/pose
rostopic find [类型名称]:显示使用指定类型的消息的话题table
rostopic find turtlesim/Pose
rostopic type [话题名称]:显示指定话题的消息类型class
rostopic type /turtle1/pose
rostopic bw [话题名称]:显示指定话题的消息数据带宽(bandwidth)
在如下示例中,用于/turtle1/pose话题的数据带宽平均为每秒1.25 KB。
rostopic bw /turtle1/pose
rostopic hz [话题名称]:显示指定话题的消息数据发布周期
在如下示例中,用户能够检查/turtle1/pose数据的发布周期。从结果能够看出,该消息以大约62.5Hz(0.016秒= 16毫秒)的频率被发布。
rostopic hz /turtle1/pose
rostopic info [话题名称]:显示指定话题的信息
在如下示例中,用户能够看到/turtle1/pose话题使用turtlesim/Pose消息类型,发布到/turtlesim节点,而且没有实际订阅的话题。
rostopic info /turtle1/pose
rostopic pub [话题名称] [消息类型] [参数]:使用指定的话题名称发布消息
如下是使用/turtle1/cmd_vel话题名称发布类型为geometry_msgs/Twist的消息的示例。
rostopic pub -1 /turtle1/cmd_vel geometry_msgs/Twist -- ‘[2.0, 0.0, 0.0]’ ‘[0.0, 0.0, 1.8]’
每一个选项的描述以下。
- -1只发布一次消息(实际上只运行一次,但会像之前的结果同样运行3秒)。
- /turtle1/cmd_vel 指定的话题名称
- geometry_msgs/Twist 要发布的消息类型名称
- -- ‘[2.0, 0.0, 0.0]’ ‘[0.0, 0.0, 1.8]’ 在x轴坐标上以每秒2.0 m的速度移动,以z轴为中心,每秒旋转1.8rad
反映了发布的消息的画面(忽略横线那条)