1. 启动守护进程:
roscore : ros + core
这条命令会启动ros的核心模块,我感觉这个是一个守护进程,会在11311端口(可能会有不同的配置)启动一个socket监听,并且也启动了一个相关的“节点管理器”(Master)
roscore = Master + ros的标准输入和标准错误 + 参数服务器。
2.列出当前在运行的节点:
rosnode : ros + node
这条命令会跟Master交互,得到现在正在运行的节点(一个可执行文件)
3.运行一个节点:
rosrun package_name node_name : ros + run
这条命令会运行在package_name下面的node_name这个节点。
4.两个节点之间的通信(话题):
两个节点应该同时订阅同一个话题,然后发送方可以在该话题上面发布消息,接收方在话题上面接收消息。
rostopic : ros + topic
这个命令会有很多的参数,会得到关于当前话题的所有信息。具体如下:
4.1.查看话题的类型:
两个节点之间的通讯是通过话题来实现的,话题上面有着消息,消息才是通讯内容的实体。订阅了同一个话题的两个节点,他们发送和接收的消息类型必须是相同的,那么这就意味着消息的类型就是话题的类型,我们可以使用
rostopic type [topic]
这条命令来获得topic话题上面的消息类型。
4.2.查看话题类型的参数:
rostopic show
这条命令用来查看话题类型的参数。
4.3.发布消息
rostopic pub [topic][msg_type][args]
这条命令会向topic发送类型为msg_type,参数为args的消息。所有订阅这个话题的节点都会收到这个消息。
4.4.获得在话题上面接收到的消息
rostopic echo [topic]
这条命令会显示在当前话题上面接收到的消息。
4.5.查看数据发布的频率
rostopic hz [topic]
这条命令会查看topic这个话题上面的消息传递速率。