wu_xinjun
2022-06-20 6b37ae2b15eca92b3cacac0e113290eb28ccfa8b
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
syntax = "proto3";
 
enum SysCommand {
  UNKOWN_COMMAND     = 0;   // 未知命令
  SYS_COMMAND        = 1;   // 系统命令
  SENSOR_COMMAND     = 2;   // 传感器命令
  FIVE_G_COMMAND     = 3;   // 通讯5G模块命令
  CAMERA_COMMAND     = 4;   // 摄像头参数命令
  IO_COMMAND         = 5;   // 外设IO口操作命令
  SYS_PARAMS_COMMAND = 6;   // 系统参数获取
  WIFI_COMMAND       = 7;   // 设备WIFI参数设置
  KERNEL_COMMAND     = 8;   // 核心计算参数设
  DEVICE_COMMAND     = 9;   // 工作设备参数设置
  MICRO_WAVE_COMMAND = 10;  // 毫米波
}
 
enum SubCommand {
  option allow_alias = true;
   
  UNKOWN_SUB_COMMAND   = 0;                   // 未知子命令
 
  // 系统命令
  POWER_ON_SUB_COMMAND = 1;                   // 开机
  POWER_OFF_SUB_COMMAND = 2;                  // 关机
 
  // 传感器命令
  SENSOR_INIT_SUB_COMMAND = 1;                // 传感器初始化
  SENSOR_REQURE_SUB_COMMAND = 2;              // 传感器参数获取
  RTK_SETTING_SUB_COMMAND = 3;                // RTK外设参数设置
  RTK_REQURE_SUB_COMMAND = 4;                 // RTK外设数据获取
 
  // 通讯5G模块命令
  FIVE_G_INIT_SUB_COMMAND = 1;                // 5G模块参数初始化
  FIVE_G_SEND_IMAGE_SUB_COMMAND = 2;          // 5G通讯图像数据发送
  FIVE_G_REQURE_SUB_COMMAND = 3;              // 5G通讯接收
 
  // 摄像头参数命令
  CAMERA_NUMBER_SUB_COMMAND = 1;              // 设备摄像头个数  
  CAMERA_RESOLUTION_SUB_COMMAND = 2;          // 设备摄像头工作分辨率
  CAMERA_FRAME_RATE_SUB_COMMAND = 3;          // 摄像头工作帧率
  CAMERA_OTHER_PARAMS_SUB_COMMAND = 4;        // 摄像头工作其他参数
 
  // 外设IO口操作命令
  CAMERA_DUST_REMOVAL_START_SUB_COMMAND = 1;  // 摄像头除尘启动
  CAMERA_CONTROL_START_SUB_COMMAND = 2;       // 外设控制数据启动(18路控制)
 
  // 系统参数获取
  CPU_FREQUENCY_SUB_COMMAND = 1;              // CPU主频工作数据
  CPU_KERNAL_TEMP_SUB_COMMAND = 2;            // CPU核心温度数据
  CPU_BETTERY_DATA_SUB_COMMAND = 3;           // 电池供电电量数据
 
  // 设备WIFI参数设置
  WIFI_HOTSPOT_SETTING_SUB_COMMAND = 1;       // WIFI热点设置
  WIFI_HOTSPOT_START_STOP_SUB_COMMAND = 2;    // WIFI热点开启和关闭
 
  // 核心计算参数设置
  POINT_CLOUD_ACCURACY_SUB_COMMAND = 1;       // 点云计算精度
  SPLICING_PARAMS_SUB_COMMAND = 2;            // 拼接参数
  MAP_INTERFACE_PLATFORM_SUB_COMMAND = 3;     // 地图接口平台
  DATA_STORE_BACKUP_SUB_COMMAND = 4;          // 数据存储备份
 
  // 工作设备参数设置
  SYSTEM_TIMER_SUB_COMMAND = 1;               // 系统工作定时
  SYSTEM_COORD_HEIGHT_SUB_COMMAND = 2;        // 工作区域坐标与高度
  TRIGGER_CONDITION_SUB_COMMAND = 3;          // 工作触发条件
  GRAVITY_FAILURE_SUB_COMMAND = 4;            // 重力加速度失效参数
  NINE_AXIS_FAILURE_SUB_COMMAND = 5;          // 九轴加速度失效参数
 
  // 毫米波
  MICRO_WAVE_SUB_COMMAND = 1;                 // 毫米波
}
 
message DataField {
  int32 length = 1;                           // 数据长度
  bytes data = 2;                            // 数据内容
  int32 checksum = 3;                        // 校验码
}
 
message CapturedData {
  int64 capture_time = 1;                     // 采集时间
  string capture_device =2;                   // 采集设备
  int32 capture_port = 3;                     // 采集设备序号
  DataField DataField = 4;
  string data_type = 5;                         // 数据类型 image udp
}
 
message DataMessage{
  int64 sending_time = 1;
  string sending_device = 2;
  string target_device = 3;
  CapturedData CapturedData = 5;
}
 
message StateData {
 int64 state_time = 1;
 string state_device = 2;
 DataField DataField = 4;
}
 
message StateMessage {
  int64 sending_time = 1;
  string sending_device = 2;
  string target_device = 3;
  CapturedData StatedData = 5;
}
 
message CommandData {
  SysCommand SysCommand = 1;
  SubCommand SubCommand = 2;
}
 
message CommandMessage {
  int64 sending_time = 1;
  string sending_device = 2;
  string target_device = 3;
  CommandData CommandData =4;
}
 
message LogsMessage{
  string source = 1;
  string timestamp = 2;
  string context = 3;
}
 
 
message ImagesMessage
{
  string source = 1;
  string timestamp = 2;
 
  message ImageItems
  {
    int32 length = 1;                           // 数据长度
    bytes data = 2;                            // 数据内容 
  }
 
  repeated ImageItems Image = 3;
}
 
 
 
message PlysMessage
{
  string source = 1;
  string timestamp = 2;
 
  message PointCloudItem
  {
    int32 length = 1;
    int32 rows = 2;
    int32 cols = 3;
    string order = 4;
    string dtype = 5;
    bytes data = 6;
    
  }
 
  repeated PointCloudItem Plydata = 3;
 
  // enum ref_system
  // {
  //   MICROWAVE_SYSTEM = 0;
  //   DEVICE_SYSTEM = 1;
  // }
 
  // ref_system reference = 4
}
 
 
 
 
 
 
 
// message MicroWaveMessage
// {
//   int32 length = 1;                           // 数据长度
//   bytes data = 2;                            // 数据内容
// }
 
// message CommandRequest{
 
// }
 
// message StateMessage{
//   string message_type = 1;
//   int64 generate_time = 2;
//   string generate_device = 3;
//   string target_device = 4;
//   string message_uuid = 5;
//   string str_body = 6;
// }
 
 
 
 
 
 
// message RequestCommand {
//   int32 sync_word = 1;              // 同步字
//   string device_id = 2;             // 设备ID
//   SysCommand sys_command = 3;       // 命令1
//   SubCommand sub_command = 4;       // 命令2
//   DataField data1 = 5;              // 数据1
//   DataField data2 = 6;              // 数据2
//   int32 checksum = 7;               // 校验码
// }
 
// enum ResponseState
// {
//   SUCCESS = 0;                  // 成功
//   FAILURE = 1;                  // 失败
//   ABNORMAL = 2;                 // 异常
//   INFICIENT_POWER = 3;          // 电量不足
//   OTHER = 4;                    // 其他
// }
 
// message ResponseCommand
// {
//     string device_id = 1;        // 设备ID
//     SysCommand sys_command = 2;  // 命令1
//     SubCommand sub_command = 3;  // 命令2
//     ResponseState state = 4;     // 响应状态
//     int32 data_length = 5;       // 数据长度
//     bytes data = 6;              // 数据
//     int32 checksum = 7;          // 校验码
// }
 
 
// // 服务端向采集端发送的主指令
// enum ControlSysCommand {
//   DUST_CLEANER_COMMAND = 0;
// }
 
// // 服务端向采集端发送的子命令
// enum ControlSubCommand {
//   // dust cleaner sub commands
//   DUST_CLEANER_ONETIME_CLEAN_SELF         = 0;
//   DUST_CLEANER_ONETIME_CLEAN_CAMERA       = 1;
//   DUST_CLEANER_CLOSE_PERIOD_CLEAN_SELF    = 2;
//   DUST_CLEANER_CLOSE_PERIOD_CLEAN_CAMERA  = 3;
//   DUST_CLEANER_PERIOD_CLEAN_SELF          = 4;
//   DUST_CLEANER_PERIOD_CLEAN_CAMERA        = 5;
// }
 
// // dust cleaner command message
// message DustCleanerMessage  {
//   uint32 period = 1;
// }
 
// // 控制上位机消息
// message ControllMessage {
//   int32 sync_word = 1;                // 同步字
//   ControlSysCommand sys_command = 3;  // 主命令
//   ControlSubCommand sub_command = 4;  // 子命令
//   DataField data = 5;                 // 数据
//   int32 checksum = 7;                 // 校验码
// }