12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 |
- syntax = "proto2";
- package message;
- //消息类型定义;每个在网络上传输的消息必须含有这个属性
- enum Message_type
- {
- eBase_msg=0x00;
- eCommand_msg=0x01; //指令消息
- eLocate_status_msg=0x11; //定位模块状态消息
- eLocate_request_msg=0x12; //定位请求消息
- eLocate_response_msg=0x13; //定位反馈消息
- eHarware_statu_msg=0x21; //调度模块硬件状态消息
- eExecute_request_msg=0x22; //请求调度消息
- eExecute_response_msg=0x23; //调度结果反馈消息
- }
- //通讯单元
- enum Communicator
- {
- eEmpty=0x0000;
- eMain=0x0001; //主流程
- eTerminor=0x0100;
- //数据表
- eTable=0x0200;
- //测量单元
- eMeasurer=0x0300;
- //调度机构
- eProcess=0x0400;
- //...
- }
- ////base message 用于解析未知类型的消息
- message Base_info
- {
- required Message_type msg_type=1;
- optional int32 timeout_ms=2;
- required Communicator sender=3; //发送者
- required Communicator receiver=4; //接收者
- }
- message Base_msg
- {
- required Base_info base_info=1;
- }
- //错误等级,用来做故障处理
- enum Error_level
- {
- NORMAL = 0; // 正常,没有错误,默认值0
- NEGLIGIBLE_ERROR = 1; // 轻微故障;可忽略的故障,NEGLIGIBLE_ERROR
- MINOR_ERROR = 2; // 一般故障,MINOR_ERROR
- MAJOR_ERROR = 3; // 严重故障,MAJOR_ERROR
- CRITICAL_ERROR = 4; // 致命故障,CRITICAL_ERROR
- }
- message Error_manager
- {
- required int32 error_code = 1;
- optional Error_level error_level = 2;
- optional string error_description = 3;
- }
- //测量结果结构体
- message Locate_information
- {
- optional float locate_x = 1; //整车的中心点x值; 四轮的中心
- optional float locate_y = 2; //整车的中心点y值; 四轮的中心
- optional float locate_angle = 3; //整车的旋转角; 四轮的旋转角
- optional float locate_length = 4; //整车的长度; 用于规避碰撞
- optional float locate_width = 5; //整车的宽度; 用于规避碰撞
- optional float locate_height = 6; //整车的高度; 用于规避碰撞
- optional float locate_wheel_base = 7; //整车的轮距; 前后轮的距离; 用于机器人或agv的抓车
- optional float locate_wheel_width = 8; //整车的轮距; 左右轮的距离; 用于机器人或agv的抓车
- optional bool locate_correct = 9; //整车的校准标记位
- }
|