自定义msg消息
1、在src文件夹下创建消息功能包如:Test_msg
2、在Test_msg功能包下创建名为msg的文件夹,此msg文件夹名称不可用其他名称代替
3、在msg文件夹下创建消息文件如test.msg
4、编辑test.msg自定义消息类型,如:
Header header
float32 angle_min
float32 angle_max
float32 scan_time
float32 time_increment
float32 range_min
float32 range_max
float32[] ranges
float32[] angles
float32[] intensities
5、修改package.xml文件添加编译依赖项和运行依赖项
<build_depend>message_generation</build_depend>
<exec_depend>message_runtime</exec_depend>
6、修改CmakeList.txt文件
find_package(catkin REQUIRED COMPONENTS
message_generation
nav_msgs #修改为需要的消息类型
)
add_message_files(FILES
test.msg #修改为msg文件夹下消息文件名称
)
generate_messages(DEPENDENCIES
nav_msgs #修改为需要的消息类型
)
catkin_package(
CATKIN_DEPENDS
message_runtime #一般不需要修改
)
7、自定义消息基本完成,但这里一定要注意的是:要使用自定义的消息类型必须source
自定义消息所在的工作空间,否则rosmsg show
和rostopic echo
命令都会报错,因为没有source的情况下自定义消息类型是不可见的,被认为是未定义类型。
也就是说应在catkin_make之前,在工作空间输入source devel/setup.bash命令。