-
Notifications
You must be signed in to change notification settings - Fork 2
Interfaces and Dataflow
Old interface till 01.01.2022
Old interface till 20 March 2022
# ROS Subscriber and Publisher ## Global & Local Planner/ Vehicle Control InterfacesSubscribe:
- GPS Signal (Point, Orientation)
- Human Interface (Target Position)
- Driving Metadata (for Reinforcement learning)
- Recalculate new Route (send blocked Route)
Publish:
- Global route (Set of points, context)
Subscribe:
- Sensors (RGB, Depth, Semantic)
Publish:
- tld_info_publisher
- object_info_publisher
Subscribe:
- GPS Signal (Point, Orientation)
- Perception (traffic_lights, object)
- Global route
Publish:
- Driving Metadata (for Reinforcement learning) Not Implemented
- Recalculate new Route
- send blocked Route Not Implemented
- Local route (Set of points, context)
- Ackermann Signals
Old Idea
It's suggested that the global and local planner share the same output data format such that the routing messages can be directly interpreted by the vehicle controller. This decision is based on the fact that we're given map data of a sufficiently good quality, allowing for rudimentary driving based on the global routing information.
Even though providing the same output format, global and local planner follow very different goals. The global planner's responsibility is to process map data and transform this into some kind of live-navigation information. In case there's an incident like e.g. a blocked road, the navigation component needs to recalculate.
In contrast, the local planner tries to project the suggested route into the real world by processing various sensor data, making decisions based on its environment. The overall goal of the local planner is to enrich or alter the route suggested by the global planner to achieve an enhanced driving performance. E.g. driving rules such as "stop at a red traffic light" or "right before left" are enforced by the local planner. Moreover, the local planner will forward a localized subset of the route to the vehicle controller that's ready for driving.
The vehicle controller processes information such as route waypoints and target speed and transforms it into actual driving signals. It uses abstractions to model the physical behavior of the car. The message types are outlined in the following picture.
Subscribe:
- GPS Signal (Point, Orientation)
- Human Interface (Target Position)
- Driving Metadata (for Reinforcement learning)
- Recalculate new Route (send blocked Route)
Publish:
- Global route (Set of points, context)
Subscribe:
- GPS Signal (Point, Orientation)
- Perception
Publish:
- Driving Metadata (for Reinforcement learning)
- Recalculate new Route (send blocked Route)
- Local route (Set of points, context)
Subscribe:
- Local route (Set of points, context)
- GPS Signal (Point, Orientation)
Publish:
- Ackermann Signals