protobuf3+共享内存替换ros通讯简单尝试

博主环境:

OS:Ubuntu 16.04     ROS: Kinetic


Protobuf 简介

ProtoBuf是一种灵活高效的独立于语言平台的结构化数据表示方法,可用于表示通信协议和数据存储等各方面,与XML相比,ProtoBuF更小更快更简单。你可以用定义自己ProtoBuf的数据结构,用ProtoBuf编译器生成特定语言的源代码,(如C++,Java,Python等,目前ProtoBuf对主流的编程语言都提供了支持)方便的进行序列化和反序列化。


前期准备

为了对比通讯的实时性,本文将ROS中的odom话题作为实时数据流输入。

ros::init(argc, argv, "odom");

ros::NodeHandle n;

ros::Subscriber sub = n.subscribe("odom", 1000, odomCallback);

并在回调函数中进行打印输出:

ROS_INFO_STREAM("--------------------------------");
std::cout << msg->pose.pose.position.x << std::endl;
std::cout << msg->pose.pose.position.y << std::endl;
std::c

你可能感兴趣的:(Protobuf学习,ROS学习,protobuf3,ros,kinetic)