message.proto 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  1. syntax = "proto3";
  2. package NavMessage;
  3. message LidarOdomStatu {
  4. float x=1;
  5. float y=2;
  6. float theta=3;
  7. float v=4;
  8. float vth=5;
  9. }
  10. message AgvStatu{
  11. float v=1;
  12. float w=2;
  13. int32 clamp=3; //夹持状态 0,中间状态,1夹紧到位,2,打开到位,
  14. int32 clamp_other=4; //另外一节
  15. }
  16. message ToAgvCmd {
  17. int32 H=1; //心跳
  18. int32 M=2; //模式:2整车模式,1:单车
  19. int32 T=3; // 1:原地旋转,2:横移,3:MPC巡线/前进, 5,夹持,6,松夹持,其他/未接收到:停止
  20. float V=4; //角速度
  21. float W=5; //线速度
  22. float L=6; //轴距
  23. int32 end=7;
  24. }
  25. message SpeedLimit
  26. {
  27. float min=1;
  28. float max=2;
  29. }
  30. message Pose2d
  31. {
  32. float x=1;
  33. float y=2;
  34. float theta=3;
  35. }
  36. message PathNode //导航路径点及精度
  37. {
  38. Pose2d pose=1; //路径点
  39. Pose2d accuracy=2; //要求精度
  40. }
  41. message Trajectory
  42. {
  43. repeated Pose2d poses=1;
  44. }
  45. message Action
  46. {
  47. int32 type = 1; // 1:原地调整,2:巡线,3,夹持,4松夹持
  48. Pose2d begin = 2;
  49. Pose2d target = 3;
  50. Pose2d target_diff = 4;
  51. SpeedLimit velocity_limit=5;
  52. SpeedLimit angular_limit=6;
  53. SpeedLimit horize_limit=7;
  54. }
  55. message NewAction //进库,出库,轨迹导航,夹持,松夹持
  56. {
  57. int32 type =1; //1,进库,2,出库,3,马路最优动作导航,4,马路严格保证agv朝前导航,5,夹持,6,松夹持,7,切换模式
  58. PathNode begNode = 2; //进出库起点
  59. PathNode passNode=3; //进出库途径点
  60. PathNode targetNode = 4; //进出库终点
  61. repeated PathNode pathNodes=5;//导航路径点
  62. SpeedLimit InOutVLimit=6; //进出库速度
  63. SpeedLimit NodeVelocityLimit=7; //马路点MPC速度限制
  64. SpeedLimit NodeAngularLimit=8; //马路点原地旋转速度限制
  65. SpeedLimit adjustVelocitylimit=9; //马路点原地调整x速度
  66. SpeedLimit adjustHorizonLimit=10; //马路点原地横移速度限制
  67. float wheelbase=11; //切换模式,轴距信息
  68. }
  69. message NavCmd
  70. {
  71. int32 action=1; // 0 开始导航,1 pause, 2 continue ,3 cancel,4:切换到双车模式,5:切换到单车模式
  72. string key=2;
  73. float wheelbase=3; //轴距
  74. repeated Action actions=4;
  75. }
  76. message NavStatu
  77. {
  78. int32 statu = 1; //0:ready 1:原地旋转,2:Horizon,3:vrtical,4:MPC,5:夹持开,6:夹持关
  79. bool main_agv=2; //是否是两节控制plc
  80. int32 move_mode=3; //运动模式,1:single,2:双车
  81. string key = 4; // 任务唯一码
  82. repeated Action unfinished_actions = 5; //未完成的动作,第一个即为当前动作
  83. Trajectory selected_traj = 6;
  84. Trajectory predict_traj = 7;
  85. }
  86. message RobotStatu
  87. {
  88. float x=1;
  89. float y=2;
  90. float theta=3;
  91. AgvStatu agvStatu=4;
  92. }