一、概念
服务Service是节点之间同步通信的一种方式;允许客户端Client节点发布请求Request;由服务端Server节点处理后反馈应答Response。
二、创建Client的过程概览
1、创建Client程序
2、编译
3、配置环境变量
4、执行Client程序
三、具体过程如下:
3.1 创建client.cpp文件
在相应的工作空间的功能包中创建client.cpp文件,其中文件要包含一下四部分
1. 初始化ROS节点
2. 创建一个Client实例
3. 发布服务请求数据
4.等待Server处理之后的应答结果
例:创建一个turtle_spawn.cpp
/** * 该例程将请求/spawn服务,服务数据类型turtlesim::Spawn */ #include <ros/ros.h> #include <turtlesim/Spawn.h> int main(int argc, char** argv) { // 初始化ROS节点 ros::init(argc, argv, "turtle_spawn"); // 创建节点句柄 ros::NodeHandle node; // 发现/spawn服务后,创建一个服务客户端,连接名为/spawn的service ros::service::waitForService("/spawn");//这是