介绍一下ROS常用的命令<rosmsg和rossrv实操>(二)

环境:Ubuntu18.04,ROSmelodic版本


前言

这篇文章接着介绍ROS中常用的命令,主要是rosmsg和rossrv命令。上篇介绍了rosnode和rostopic命令,有需要的小伙伴看这里–>介绍一下ROS常用的命令(一)


一、rosmsg命令

下面将使用前面的话题发布与订阅功能包进行命令的测试,还没有发布和订阅过话题的小伙伴欢迎回顾这篇文章–>话题发布与订阅

1.1打开终端,运行roscore

在这里插入图片描述

1.2再打开两个新终端,发布和订阅话题

发布话题

cd sor_ws
source ./devel/setup.bash
rosrun learning_topic person_publisher

在这里插入图片描述
订阅话题

cd sor_ws
source ./devel/setup.bash
rosrun learning_topic person_subscriber

在这里插入图片描述

1.3 rosmsg list:列出ROS中的所有msg消息

打开一个终端,输入rosmsg list,回车,会显示ROS中所有的msg
在这里插入图片描述
如果想查看当前运行的话题节点可以打开一个新终端,cd sor_ws,source ./devel/setup.bash, 输入rosmsg list | grep -i 消息类型,例如发布订阅功能包中的消息类型为person,则输入rosmsg list | grep -i person
在这里插入图片描述

1.4 rosmsg show:显示msg的数据格式

如果想查看learning_topic/Person包含哪些类型的数据格式可以输入rosmsg show learning_topic/person,回车,显示定义了6个变量
在这里插入图片描述

1.5 rosmsg info:显示msg的数据格式

和rosmsg show的功能一样
在这里插入图片描述

1.6 rosmsg package:列出某个功能包的所有msg消息

输入 rosmsg package 功能包,可以列出包里的所有msg,例如rosmsg package learning_topic,显示learning_topic功能包下只存在一种消息,看起来和rosmsg list | grep -i person显示的内容一样,其实不是的,比如rosmsg package turtlesim,列出小海龟功能包的消息,里面包含了两种msg消息
在这里插入图片描述

二、rossrv命令

运行服务端功能包,使用这篇文章中创建的功能包–>服务数据的定义与使用
1.打开终端,运行roscore
2.再打开一个终端,输入命令启动客户端

source ~/sor_ws/devel/setup.bash
rosrun learning_service person_client

在这里插入图片描述

2.1 rossrv list:列出ROS中的所有srv消息

打开一个终端,输入rossrv list,回车,会显示ROS中所有的srv
在这里插入图片描述
如果想查看当前运行的话题节点可以打开一个新终端,cd sor_ws,source ./devel/setup.bash, 输入rossrv list | grep -i 消息类型,例如发布订阅功能包中的消息类型为person,则输入rossrv list | grep -i person
在这里插入图片描述

2.2 rossrv show:显示srv消息的格式

如果想查看learning_topic/Person包含哪些类型的数据格式可以输入rossrv show learning_service/Person,回车,显示定义了6个变量
在这里插入图片描述

2.3 rossrv info:显示srv消息的格式

和rossrv show的功能一样
在这里插入图片描述

2.4 rossrv package:列出某个功能包的所有srv消息

输入rossrv package 功能包,可以列出包里的所有srv信息,例如rossrv package turtlesim,列出小海龟功能包的消息,里面就包含了五种消息
在这里插入图片描述

总结

msg和srv这两种消息有何不同呢?区别在于msg只是信息单向的发送和接受,srv则包含请求和响应两部分,在话题数据中使用msg,服务数据中使用srv
在这里插入图片描述


希望文章对你有帮助,别忘了点赞收藏~
在这里插入图片描述

  • 30
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 30
    评论
评论 30
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值