ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

ROS节点中创建msg和srv文件(kinetic/melodic)

2020-01-17 17:05:22  阅读:457  来源: 互联网

标签:melodic ... 文件 srv pkg msg ros


1.msg文件创建

#创建msg文件夹

roscd ros_pkg

mkdir msg

cd msg

#创建msg文件

touch a_msg.msg

gedit a_msg.msg

在a_msg.msg文件中写入msg内容,举个栗子

#数据类型 数据名称
int8 A
int8 B

修改package.xml,添加如下内容

<build_depend>message_generation</build_depend>

<run_depend>message_runtime</run_depend>

修改CMakeList.txt,添加如下内容

find_package(catkin REQUIRED COMPONENTS
   ...
   ...
   std_msgs
   message_generation
   ...
)
catkin_package(
  ...
  CATKIN_DEPENDS message_runtime ...
  ...)
add_message_files(
  FILES
  a_msg.msg
)
generate_messages(
  DEPENDENCIES
  std_msgs
)

 

 

2.srv文件创建

#创建srv文件夹

cd ros_pkg

mkdir srv

cd srv

#创建srv文件

touch b_srv.srv

gedit b_srv.srv

在b_srv.srv文件中写入srv内容,举个栗子,注意三个减号(---)

int64 A
int64 B
---
int64 Sum

同上,修改package.xml和CMakeList.txt文件,注意Files文件添加行改为如下内容

add_service_files(
  FILES
  b_srv.srv
)

3.验证是否成功

cd workspace

catkin_make

source devel/setup.bash

rosmsg show ros_pkg/a_msg

rossrv show ros_pkg/b_srv

如果show得到的内容跟a.msg和b.srv中写的内容一致,则编译正确!

 

4.msg和srv文件的使用,在cpp文件中添加如下头文件

//使用msg文件
#include "ros_pkg/a_msg.h"


//使用srv文件
#include "ros_pkg/b_srv.h"

 

RealMadrid1920 发布了28 篇原创文章 · 获赞 28 · 访问量 26万+ 私信 关注

标签:melodic,...,文件,srv,pkg,msg,ros
来源: https://blog.csdn.net/u013164707/article/details/104021430

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有