ros定义srv服务

在beginner_tutorials,新建srv服务目录,新建AddTwoInts.srv文件

$ roscd beginner_tutorials
$ mkdir srv
$ cd srv
$ touch AddTwoInts.srv
$ rosed beginner_tutorials AddTwoInts.srv

srv文件分为请求和响应两部分,由’- - -‘分隔。手工输入代码:

int64 A
int64 B
---
int64 Sum

打开文件rosed beginner_tutorials package.xml,增加依赖,

<build_depend>message_generationbuild_depend>
<run_depend>message_runtimerun_depend>

打开文件rosed beginner_tutorials CMakeLists.txt,增加依赖,

find_package(catkin REQUIRED COMPONENTS
  roscpp
  rospy
  std_msgs
 message_generation
)

在CMakeLists.txt文件,增加服务文件,取消#,并修改为

add_service_files(
   FILES
   AddTwoInts.srv
 )

在CMakeLists.txt文件,增加消息生成包,取消#,并修改为

generate_messages(
  DEPENDENCIES
  std_msgs
)

编译代码

$ cd ~/catkin_ws
$ catkin_make

检查服务命令:

$ rossrv show beginner_tutorials/AddTwoInts

效果:

int64 a
int64 b
---
int64 sum

你可能感兴趣的:(ROS学习)