ROS基础
三、ROS通信编程——服务编程
例:实现加法listener发布两个数给talker,talker相加后给listener
1、自定义服务文件srv
a、在learning_communication下创建srv目录,在srv目录下创建AddTwoInts.srv文件
int64 a
int64 b
---
int64 sum
b、在package.xml中添加功能包依赖
<build_depend>message_generation</build_depend>
<exec_depend>message_runtime</exec_depend>
c、在CMakeLists.txt中添加编译选项
find_package(catkin REQUIRED COMPONENTS
roscpp
rospy
std_msgs
message_generation
)
catkin_package(
# INCLUDE_DIRS include
# LIBRARIES learning_communication
CATKIN_DEPENDS roscpp rospy std_msgs message_runtime
# DEPENDS system_lib
)
add_service_files(FILES AddTwoInts.srv)
generate_messages(DEPENDENCIES std_msgs)
d、编译
在yyj_ws 工作空间层级下生成可执行文件:
catkin_make

本文介绍了ROS中服务编程的基本步骤,包括创建自定义服务文件、编写服务器和客户端代码、添加编译选项并运行程序。通过一个简单的加法服务示例,展示了如何让客户端发送两个数给服务器,服务器进行加法运算后返回结果给客户端。
最低0.47元/天 解锁文章
2704

被折叠的 条评论
为什么被折叠?



