JaiaBot 2.0.0
JaiaBot micro-AUV software
 
Loading...
Searching...
No Matches
sensor_core.proto
Go to the documentation of this file.
1syntax = "proto2";
2
3import "dccl/option_extensions.proto";
4import "jaiabot/messages/sensor/metadata.proto";
5import "jaiabot/messages/sensor/configuration.proto";
6import "jaiabot/messages/sensor/atlas_scientific__oem_ec.proto";
7import "jaiabot/messages/sensor/atlas_scientific__oem_do.proto";
8import "jaiabot/messages/sensor/atlas_scientific__oem_ph.proto";
9import "jaiabot/messages/sensor/turner__c_fluor.proto";
10import "jaiabot/messages/sensor/blue_robotics__bar30.proto";
11import "jaiabot/messages/sensor/catalog.proto";
12
13package jaiabot.sensor.protobuf;
14
15enum MCUCommand
16{
17 ENTER_BOOTLOADER_MODE = 1;
18}
19
20enum CompensationType
21{
22 SET_EC_TEMPERATURE_COMPENSATION = 1;
23 SET_DO_SALINITY_COMPENSATION = 2;
24 SET_DO_PRESSURE_COMPENSATION = 3;
25 SET_DO_TEMPERATURE_COMPENSATION = 4;
26 SET_PH_TEMPERATURE_COMPENSATION = 5;
27}
28
29enum CalibrationType
30{
31 START_EC_CALIBRATION = 1;
32 CALIBRATE_EC_DRY = 2;
33 CALIBRATE_EC_LOW = 3;
34 CALIBRATE_EC_HIGH = 4;
35 CLEAR_EC_CALIBRATION = 5;
36 START_DO_CALIBRATION = 6;
37 CALIBRATE_DO_LOW = 7;
38 CALIBRATE_DO_HIGH = 8;
39 CLEAR_DO_CALIBRATION = 9;
40 START_PH_CALIBRATION = 10;
41 CALIBRATE_PH_LOW = 11;
42 CALIBRATE_PH_MID = 12;
43 CALIBRATE_PH_HIGH = 13;
44 CLEAR_PH_CALIBRATION = 14;
45 STOP_CALIBRATION = 15; // stop calibration and return to normal operation
46}
47
48message SensorRequest
49{
50 option (dccl.msg) = {
51 unit_system: "si"
52 };
53
54 required uint64 time = 1 [
55 (dccl.field) = { units { prefix: "micro" derived_dimensions: "time" } }
56 ];
57
58 oneof request_data
59 {
60 bool request_metadata = 11;
61 Configuration cfg = 12;
62
63 // change name to VendorSensor format
64 // EchoCommand echo_command = 13;
65 }
66
67 optional MCUCommand mcu_command = 20;
68 optional CalibrationType calibration_type = 21;
69 optional double calibration_value = 22;
70 optional CompensationType compensation_type = 23;
71 optional double compensation_value = 24;
72}
73
74message SensorData
75{
76 option (dccl.msg) = {
77 unit_system: "si"
78 };
79
80 required uint64 time = 1 [
81 (dccl.field) = { units { prefix: "micro" derived_dimensions: "time" } }
82 ];
83
84 oneof data
85 {
86 Metadata metadata = 11;
87 AtlasScientificOEMEC oem_ec = 12;
88 BlueRoboticsBar30 bar30 = 13;
89 AtlasScientificOEMpH oem_ph = 14;
90 AtlasScientificOEMDO oem_do = 15;
91 TurnerCFluor c_fluor = 16;
92
93 // change name to VendorSensor format
94 // EchoData echo_data = 17;
95 }
96}
97
98message SensorThreadConfig
99{
100 optional Metadata metadata = 1;
101 optional int32 sample_rate = 2;
102}