Lane depature watching architecture is needed for safety
At this moment whole autoware system doesn't have lane departure watching system during running. The local planner doesn't provide guarantee not to depart from global path, it might cause dangerous situation in some cases. So we need final checking architecture.
Description
The proposed architecture is below.
First make the controller to output predicted_trajectory, then lane depature checking node will check it is feasible or not. So two main work is needed.
- Extend controllers to output predicted trajectory.
- Create depature checking node.
We currently using two controllers, pure_pursuit and mpc_follower. mpc_follower have predicted local path inside by its algorithm, so just small modify is enough to output that. Another pure_pursuit is more difficult because this planner doesn't have explicit path(Just following local goal in each step). So we must add node that provide pseudo local path working with pure_pursuit. We name it pure_pursuit_path_predictor.
Our proposed direction to implement pure_pursuit_path_predictor is below.
We are thinking to share logic between pure_pursuit, wf_simulator and twist_filter. First detach common function from these node and make common library. And then use them to predict local path using same method as control.
After that lane departure checking node will check the local path is feasible or not, combining information of wayarea. If the path is infeasible, the node will report emergency state through health checker library.