4// Toby Schneider <toby@gobysoft.org>
7// This file is part of the JaiaBot Project Binaries
8// ("The Jaia Binaries").
10// The Jaia Binaries are free software: you can redistribute them and/or modify
11// them under the terms of the GNU General Public License as published by
12// the Free Software Foundation, either version 2 of the License, or
13// (at your option) any later version.
15// The Jaia Binaries are distributed in the hope that they will be useful,
16// but WITHOUT ANY WARRANTY; without even the implied warranty of
17// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18// GNU General Public License for more details.
20// You should have received a copy of the GNU General Public License
21// along with the Jaia Binaries. If not, see <http://www.gnu.org/licenses/>.
25import "dccl/option_extensions.proto";
27import "goby/middleware/protobuf/app_config.proto";
28import "goby/zeromq/protobuf/interprocess_config.proto";
29import "goby/moos/protobuf/moos_gateway_config.proto";
30import "goby/middleware/protobuf/udp_config.proto";
31import "jaiabot/messages/geographic_coordinate.proto";
33package jaiabot.config;
41 // required parameters for ApplicationBase3 class
42 optional goby.middleware.protobuf.AppConfig app = 1;
43 // required parameters for connecting to 'gobyd'
44 optional goby.zeromq.protobuf.InterProcessPortalConfig interprocess = 2;
46 optional goby.apps.moos.protobuf.GobyMOOSGatewayConfig.MOOSConfig moos = 10;
48 optional goby.middleware.protobuf.UDPPointToPointConfig gps_udp_config = 20;
50 optional goby.middleware.protobuf.UDPPointToPointConfig udp_gateway_config = 21;
52 // allow simulator without GPS by setting this false
53 optional bool enable_gps = 25 [default = true];
55 optional jaiabot.protobuf.GeographicCoordinate start_location = 26;
57 // Default is to use the hdop value so bot does not need to reacquire gps
58 optional double gps_hdop_rand_max = 27 [default = 1.3];
60 optional bool is_bot_sim = 28 [default = true];
62 // Default is to use the pdop value so bot does not need to reacquire gps
63 optional double gps_pdop_rand_max = 29 [default = 2.2];
65 optional double heading_rand_max = 30 [default = 0];
67 optional double vertical_dive_rate = 31
68 [(dccl.field) = { units { derived_dimensions: "velocity" } }];
69 optional double seafloor_depth = 32
70 [(dccl.field) = { units { derived_dimensions: "length" } }];
71 optional double seafloor_wavelength = 33 [
72 (dccl.field) = { units { derived_dimensions: "length" } },
75 optional double seafloor_amplitude = 34 [
76 (dccl.field) = { units { derived_dimensions: "length" } },
80 optional double gps_hdop_dropout = 35 [default = 20];
81 optional double gps_pdop_dropout = 36 [default = 20];
83 // minimum thrust value for forward motion (-100-100 scale)
84 optional double minimum_thrust = 37 [default = 5];
85 optional double pitch_at_rest = 38 [
87 (dccl.field).units = {
88 derived_dimensions: "plane_angle"
89 system: "angle::degree"
95 optional double depth = 1
96 [(dccl.field) = { units: { derived_dimensions: "length" } }];
98 optional double temperature = 2 [(dccl.field) = {
99 units { derived_dimensions: "temperature" system: "celsius" }
101 optional double salinity = 3;
104 repeated ScalarSample sample = 40;
105 optional double temperature_stdev = 41 [(dccl.field) = {
107 derived_dimensions: "temperature"
109 relative_temperature: true
112 optional double salinity_stdev = 42;
114 optional string hub_gpsd_device = 43;
116 optional ArduinoSimThread arduino_config = 60;
119message ArduinoSimThread
121 option (dccl.msg) = {
125 optional int32 voltage_period = 1 [default = 1];
126 optional double voltage_step_decrease = 2 [default = 0.1];
127 optional double voltage_start = 3 [default = 24.0];
128 optional double reset_voltage_level = 4 [default = 15.0];