Page History
This page describes the usage and function of the Central Routing Example.
Sources: https://git.rwth-aachen.de/CPM/Project/Lab/software/tree/d48cf9c589cd8375b7ea147d7931ed0f29650278/You find the source code for our examples in the software-folder:
C++
cd ~\dev\software\central_routing_example
Goal
A variable number of vehicles drive randomly on the map with no collisions:
Multimedia | ||||
---|---|---|---|---|
|
Usage
First make sure that the supporting software (LCC, IPS) is running and that the vehicles are online and placed on the map.
...
Map representation
The program is based on the routing graph for the map layout.
Sources:
C++
cd ~/\dev/\software/\central_routing_example
./run.bash 2,3,5,7,11
The list of integers in the run command must be the exact list of vehicle IDs for the active vehicles.
How it works
The program is based on the routing graph for the map layout.
Sources:
https://git.rwth-aachen.de/CPM/Project/Lab/software/blob/d48cf9c589cd8375b7ea147d7931ed0f29650278/matlab_scripts/map_print/map_print2/lane_graph.m
https://git.rwth-aachen.de/CPM/Project/Lab/software/blob/d48cf9c589cd8375b7ea147d7931ed0f29650278/central_routing_example/src/lane_graph.hpp
\src\lane_graph.hpp
MATLAB
cd ~\dev\software\matlab_scripts\map_print\map_print2\lane_graph.m
The graph edges correspond to center lines, along which a vehicle may drive. Parallel lanes are not modeled, instead extra edges are added for lane changes in discrete locations.
Waiting Mode
The program starts in a waiting mode. It will transition into the running mode, when the following conditions are met.
- Vehicle IPS observations were received for all expected vehicles.
- All vehicles could be matched to the graph. All vehicles must be close to a center-line and oriented correctly.
Running Mode
The route planning and collision avoidance runs independently of the vehicle's actual behaviour. It is assumed that the vehicles follow the reference trajectories with sufficient accuracy.
...
The function MultiVehicleTrajectoryPlanner::start
implements the trajectory buffer.
Apply
If you use the real lab application, make sure that the supporting software (LCC, IPS) is running and that the vehicles are online and placed on the map. Assure that you activated Lab mode.
In a new terminal, run:
cd ~/dev/software/central_routing_example
./run.bash 2,3,5,7,11
The list of integers in the run command must be the exact list of vehicle IDs for the active vehicles.