1. 程式人生 > >【ROS】ros訊息檔案msg和srv

【ROS】ros訊息檔案msg和srv

ros訊息檔案msg和srv

1簡介

1.1 msg

訊息檔案,示例

Header header
string child_frame_id
geometry_msgs/PoseWithCovariance pose
geometry_msgs/TwistWithCovariance twist

1.2 srv

服務檔案(組成:request+response),示例

int64 A
int64 B
---
int64 Sum

成對使用 符號“---”是request和response的分界符

2 建立srv檔案

2.1 拷貝/編輯檔案

$ roscd beginner_tutorials
$ mkdir srv
$ roscp rospy_tutorials AddTwoInts.srv srv/AddTwoInts.srv
# $ roscp [package_name] [file_to_copy_path] [copy_path]

此處為拷貝檔案直接使用,可根據自己需要編輯檔案

2.2 修改配置

2.2.1 修改包配置檔案(package.xml)

<build_depend>message_generation</build_depend>
<exec_depend>message_runtime</exec_depend>

2.2.2 修改編譯配置檔案(CMakeLists.txt)

  • 增加訊息生成包(元件):message_generation(對msg、srv同時生效)
find_package(catkin REQUIRED COMPONENTS
  roscpp
  rospy
  std_msgs
  message_generation
)
  • 新增srv檔案(AddTwoInts.srv)
add_service_files(
  FILES
  AddTwoInts.srv
)