为一个包创建消息(.msg)和服务(.srv)

一、创建消息:
1、cd到包目录、mkdir msg文件夹;
2、echo "int64 num" > msg/Num.msg 新建Num.msg文件并向文件中写入自定义的消息类型;
3、打开package.xml文件添加编译依赖和运行依赖
      message_generation
     message_runtime
4、打开CMakeLists.txt文件,在find_package()函数中添加message_generation依赖项使编译包时把自定义的消息生成             c++或python代码;
5、在CMakeLists.txt文件中找到add_message_files()函数,去掉注释,在形参列表中添加自定义的消息Num.msg;
6、在CMakeLists.txt文件中找到generation_messages()函数,去掉注释。
7、用rosmsg show Num查看新定义的消息类型。


二、创建服务:
1、cd到包目录、mkdir srv文件夹;
2、echo "int64 num" > srv/Add.srv 新建Add.srv文件并向文件中写入自定义的服务;或者roscp [package] [service]                     srv/Add.srv从别的包复制一个服务到当前包下; 
3、与创建消息一样;
4、与创建消息一样,message_generation依赖项对srv文件的传化也起作用;
5、在CMakeLists.txt文件中找到add_service_files()函数,去掉注释,在形参列表中添加自定义的服务Add.srv;
6、与创建消息一样;
7、用rossrv show Add查看新定义的消息类型。

推荐博文:

二叉树相关练习题(C++)
经典排序算法的C++实现
与字符串有关的一些典型问题的C++解法
一些可以用动态规划(DP)算法解决的问题(C++)
排列组合相关笔试面试题(C++)
与概率相关的算法题C++解法(附证明过程)
二分查找的巧妙运用(C++)
位运算在算法题中的使用(C++)
链表相关练习题(C++)
用实例讲解栈和队列(C++)
一些智力题的C++解法


你可能感兴趣的:(ROS)