ROS学习3:创建ROS消息与ROS服务

一.新建工作包

$ cd ~/catkin_ws/src
$ catkin_create_pkg learning_communication std_msgs roscpp rospy

编译
$ cd ..
$ catkin_make

二.创建ROS消息与ROS服务

1. 创建一个自定义消息 msg

(1)在 catkin_ws/src/learning_communication 文件中,创建一个文件夹,命名为 msg,在这个msg文件夹里面,创建一个 .msg 文件,命名为msg.msg

(2)打开msg.msg,输入如下内容,当然,你可以仿造上面的形式多增加几行以得到更为复杂的消息

int64 num

string first_name

string last_name

uint8 age

uint32 score

(3)编辑 package.xml 

目的是确保msg文件被转换成为C++,Python和其他语言的源代码:

打开 catkin_ws/src/learning_communication 下的 package.xml

取消message_generation,message_runtime的外层注释<!-- -->,如图:

(4)编辑CMakeLists.txt

对find_message()等函数做出如下修改:

(5)编译

$ cd ~/catkin_ws
$ catkin_make

(6)使用 rosmsg

 

2. 创建一个服务 srv

(1)在 catkin_ws/src/learning_communication 文件中,创建一个文件夹,命名为 srv,在这个srv文件夹里面,创建一个 .srv 文件,命名为 AddTwoInts.srv

(2)打开 AddTwoInts.srv,编辑如下:

注:srv文件分为请求和响应两部分,由'---'分隔,其中 a 和 b 是请求, 而sum 是响应。

int64 a

int64 b

---

int64 sum

(3)编辑 package.xml : 同msg

(4)编辑CMakeLists.txt

 

        Find_package(),同msg;

        添加依赖,同msg;

        修改add_service_files(),generate_messages();

        修改如下:

        

 

(5)编译

(6)使用 rossrv

rossrv show learning_communication/AddTwoInts

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值