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