服务器和客户端 (C++)
上一个博客总结了
ROS消息发布和订阅
,本博客将继续总结ROS如何用 C++ 编写服务器节点和客户端节点。请确保已经按照
ROS消息和ROS服务
creating the AddTwoInts.srv的步骤创建了本节博客所需要的srv。
1. 编写ROS服务器节点
在这里,将创建一个简单的service节点(“add_two_ints_server”),该节点将接收到两个整形数字,并返回它们的和。进入先前在
catkin workspace教程
中所创建的
beginner_tutorials包
所在的目录:
$ cd ~/catkin_ws/src/beginner_tutorials
1.1 src/add_two_ints_server.cpp代码
#include "ros/ros.h"
#include "beginner_tutorials/AddTwoInts.h"
bool add(beginner_tutorials::AddTwoInts::Request &req, beginner_tutorials::AddTwoInts::Response &res)
{
res.sum = req.a + req.b;
ROS_INFO("request: x=%ld, y=%ld", (long int)req.a, (long int)req.b);
ROS_INFO("sending back response: [%ld]", (long int)res.sum);
return true;
}
int main(int argc, char **argv)
{
ros::init(argc, argv, "add_two_ints_server");
ros
版权声明:本文为u010510350原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。