Apollo 10.0
自动驾驶开放平台
simulation_world.proto
浏览该文件的文档.
1syntax = "proto2";
2
3package apollo.dreamview;
4
13
14// Next-id: 4
15message PolygonPoint {
16 optional double x = 1;
17 optional double y = 2;
18 optional double z = 3 [default = 0.0];
19
20 // Gaussian probability information
21 optional apollo.common.GaussianInfo gaussian_info = 4;
22}
23
24// Next-id: 3
25message Prediction {
26 optional double probability = 1;
27 repeated PolygonPoint predicted_trajectory = 2;
28}
29
30// Next-id: 13
31message Decision {
32 enum Type {
33 IGNORE = 0; // Ignore the object
34 STOP = 1; // Stop at a distance from the object
35 NUDGE = 2; // Go around the object
36 YIELD = 3; // Go after the object
37 OVERTAKE = 4; // Go before the object
38 FOLLOW = 5; // Follow the object in the same lane
39 SIDEPASS = 6; // Pass the object in neighboring lane
40 }
41 optional Type type = 1 [default = IGNORE];
42
43 // Shape Info
44 // Can be used for corners of nudge region
45 repeated PolygonPoint polygon_point = 2;
46
47 // Position Info
48 // Can be used for stop fence
49 optional double heading = 3;
50 optional double latitude = 4;
51 optional double longitude = 5;
52 optional double position_x = 6;
53 optional double position_y = 7;
54 optional double length = 8 [default = 2.8];
55 optional double width = 9 [default = 1.4];
56 optional double height = 10 [default = 1.8];
57
59 STOP_REASON_HEAD_VEHICLE = 1;
60 STOP_REASON_DESTINATION = 2;
61 STOP_REASON_PEDESTRIAN = 3;
62 STOP_REASON_OBSTACLE = 4;
63 STOP_REASON_SIGNAL = 100;
64 STOP_REASON_STOP_SIGN = 101;
65 STOP_REASON_YIELD_SIGN = 102;
66 STOP_REASON_CLEAR_ZONE = 103;
67 STOP_REASON_CROSSWALK = 104;
68 STOP_REASON_EMERGENCY = 105;
69 STOP_REASON_NOT_READY = 106;
70 STOP_REASON_PULL_OVER = 107;
71 }
72 optional StopReasonCode stopReason = 11;
73 optional apollo.routing.ChangeLaneType change_lane_type = 12;
74}
75
76// Next-id: 41
77message Object {
78 // ID
79 optional string id = 1; // primary identifier for each object
80
81 // Shape Info
82 repeated PolygonPoint polygon_point = 2; // corners of an object
83
84 // Position Info
85 optional double heading = 3;
86 optional double latitude = 4;
87 optional double longitude = 5;
88 optional double position_x = 6;
89 optional double position_y = 7;
90 optional double length = 8 [default = 2.8];
91 optional double width = 9 [default = 1.4];
92 optional double height = 10 [default = 1.8];
93
94 // Motion Info
95 // For objects with motion info such as ADC.
96 optional double speed = 11; // in m/s, can be negative
97 optional double speed_acceleration = 12; // in m/s^2
98 optional double speed_jerk = 13;
99 optional double spin = 14;
100 optional double spin_acceleration = 15;
101 optional double spin_jerk = 16;
102 optional double speed_heading = 17;
103 optional double kappa = 18;
104 optional double dkappa = 35;
105
106 // Signal Info
107 // For objects with signals set and current signal such as Traffic Light,
108 // Stop Sign, and Vehicle Signal.
109 repeated string signal_set = 19;
110 optional string current_signal = 20;
111
112 // Time Info
113 optional double timestamp_sec = 21;
114
115 // Decision Info
116 repeated Decision decision = 22;
117 optional bool yielded_obstacle = 32 [default = false];
118
119 // Chassis Info
120 // For ADC
121 optional double throttle_percentage = 23;
122 optional double brake_percentage = 24;
123 optional double steering_percentage = 25;
124 optional double steering_angle = 26;
125 optional double steering_ratio = 27;
126 optional int32 battery_percentage = 38;
127 optional apollo.canbus.Chassis.GearPosition gear_location = 39;
129 DISENGAGE_NONE = 0;
130 DISENGAGE_UNKNOWN = 1;
131 DISENGAGE_MANUAL = 2;
132 DISENGAGE_EMERGENCY = 3;
133 DISENGAGE_AUTO_STEER_ONLY = 4;
134 DISENGAGE_AUTO_SPEED_ONLY = 5;
135 DISENGAGE_CHASSIS_ERROR = 6;
136 };
137
138 optional DisengageType disengage_type = 28;
139
140 enum Type {
142 UNKNOWN_MOVABLE = 1;
143 UNKNOWN_UNMOVABLE = 2;
144 PEDESTRIAN = 3; // pedestrian, usually determined by moving behavior.
145 BICYCLE = 4; // bike, motor bike.
146 VEHICLE = 5; // passenger car or truck.
147 VIRTUAL = 6; // virtual object created by decision module.
148 CIPV = 7; // closest in-path vehicle determined by perception module.
149 };
150
151 optional Type type = 29; // obstacle type
152 // obstacle sub-type
154 repeated Prediction prediction = 30;
155
156 // perception confidence level. Range: [0,1]
157 optional double confidence = 31 [default = 1];
158 optional apollo.prediction.ObstaclePriority obstacle_priority = 33;
159 optional apollo.prediction.ObstacleInteractiveTag interactive_tag = 40;
160
161 // v2x for perception obstacle
163 [default = HOST_VEHICLE]; // source type
164 // v2x use case info
165 optional apollo.perception.V2XInformation v2x_info = 37;
166}
168message DelaysInMs {
169 optional double chassis = 1;
170 optional double localization = 3;
171 optional double perception_obstacle = 4;
172 optional double planning = 5;
173 optional double prediction = 7;
174 optional double traffic_light = 8;
175 optional double control = 9;
176}
178message RoutePath {
179 repeated PolygonPoint point = 1;
180}
182message Latency {
183 optional double timestamp_sec = 1;
184 optional double total_time_ms = 2;
185}
188 repeated string lane = 1;
189 repeated string crosswalk = 2;
190 repeated string junction = 3;
191 repeated string signal = 4;
192 repeated string stop_sign = 5;
193 repeated string yield = 6;
194 repeated string overlap = 7;
195 repeated string road = 8;
196 repeated string clear_area = 9;
197 repeated string parking_space = 10;
198 repeated string speed_bump = 11;
199 repeated string pnc_junction = 12;
200 repeated string ad_area = 13;
201 repeated string barrier_gate = 14;
202}
204message ControlData {
205 optional double timestamp_sec = 1;
206 optional double station_error = 2;
207 optional double lateral_error = 3;
208 optional double heading_error = 4;
209 optional apollo.common.TrajectoryPoint current_target_point = 5;
210}
213 optional double timestamp_sec = 1;
214 optional apollo.common.monitor.MonitorMessageItem item = 2;
215}
218 repeated Object sensor_measurement = 1;
219}
220
221// Next-id: 31
222message SimulationWorld {
223 // Timestamp in milliseconds
224 optional double timestamp = 1;
225
226 // Sequence number
227 optional uint32 sequence_num = 2;
228
229 // Objects in the world and the associated predictions/decisions
230 repeated Object object = 3;
231
232 // Autonomous driving cars
233 optional Object auto_driving_car = 4;
234
235 // Planning signal
236 optional Object traffic_signal = 5;
237
238 // Routing paths
239 repeated RoutePath route_path = 6;
240 // Timestamp of latest routing
241 optional double routing_time = 7;
242
243 // Planned trajectory
244 repeated Object planning_trajectory = 8;
245
246 // Main decision
247 optional Object main_stop = 9 [deprecated = true];
248 optional Object main_decision = 10;
249
250 // Speed limit
251 optional double speed_limit = 11;
252
253 // Module delays
254 optional DelaysInMs delay = 12;
255
256 // Notification
257 optional apollo.common.monitor.MonitorMessage monitor = 13
258 [deprecated = true];
259 repeated Notification notification = 14;
261 // Engage advice from planning
262 optional string engage_advice = 15;
264 // Module latency
265 map<string, Latency> latency = 16;
267 optional MapElementIds map_element_ids = 17;
268 optional uint64 map_hash = 18;
269 optional double map_radius = 19;
271 // Planning data
272 optional apollo.planning_internal.PlanningData planning_data = 20;
274 // GPS
275 optional Object gps = 21;
277 // Lane Markers from perception
278 optional apollo.perception.LaneMarkers lane_marker = 22;
280 // Control data
281 optional ControlData control_data = 23;
283 // Relative Map
284 repeated apollo.common.Path navigation_path = 24;
286 // RSS info
287 optional bool is_rss_safe = 25 [default = true];
289 // Shadow localization
290 optional Object shadow_localization = 26;
292 // Perception detected signals
293 repeated Object perceived_signal = 27;
295 // A map from a story name to whether it is on
296 map<string, bool> stories = 28;
298 // A map from a sensor_id to a group of sensor_measurements
299 map<string, SensorMeasurements> sensor_measurements = 29;
300
301 optional bool is_siren_on = 30 [default = false];
303 // vehicle param
304 optional apollo.common.VehicleParam vehicle_param = 31;
305}
Planning module main class.
apollo::canbus
apollo::common::monitor
apollo::common
apollo::prediction
class register implement
Definition arena_queue.h:37