ROS编程示例---加法客户端

来源:互联网 发布:刻图章软件 编辑:程序博客网 时间:2024/06/04 19:15

先运行服务端

#include <ros/ros.h>#include <zhang/Bigint_Sum.h>//自己创建的srv文件#include <cstdlib>int main(int argc,char** argv){  //初始化节点  ros::init(argc,argv,"add_two_bigint_client");  //传入的参数必须是两个,加上程序位置本身也是一个参数,所以是3  if(argc!=3)  {    ROS_INFO("usage: add_two_bigint_client X Y");    return 1;  }  //创建节点句柄  ros::NodeHandle n;  //客户端  ros::ServiceClient client=n.serviceClient<zhang::Bigint_Sum>("add_two_bigint");  //填充服务  zhang::Bigint_Sum srv;  srv.request.a = atoll(argv[1]);//这里的参数不能转换成string?  srv.request.b = atoll(argv[2]);  //两个作用,1.检验是否调用srv成功 2.调用服务  if(client.call(srv))  {    ROS_INFO_STREAM(srv.response.sum.c_str());  }  else  {    ROS_ERROR("Failed to call service add_two_bigint");    return 1;  }  //退出  return 0;}