Skip to content

Stop line design

Stop Line#

Role#

This module plans velocity so that the vehicle can stop right before stop lines and restart driving after stopped.

stop line

Activation Timing#

This module is activated when there is a stop line in a target lane.

Inner-workings / Algorithms#

  • Gets a stop line from map information.
  • insert a stop point on the path from the stop line defined in the map and the ego vehicle length.
  • Sets velocities of the path after the stop point to 0[m/s].
  • Release the inserted stop velocity when the vehicle stops within a radius of 2[m] from the stop point.

Module Parameters#

Parameter Type Description
stop_margin double a margin that the vehicle tries to stop before stop_line
stop_check_dist double when the vehicle is within stop_check_dist from stop_line and stopped, move to STOPPED state

Flowchart#

uml diagram

This algorithm is based on segment. segment consists of two node points. It's useful for removing boundary conditions because if segment(i) exists we can assume node(i) and node(i+1) exist.

node_and_segment

First, this algorithm finds a collision between reference path and stop line. Then, we can get collision segment and collision point.

find_collision_segment

Next, based on collision point, it finds offset segment by iterating backward points up to a specific offset length. The offset length is stop_margin(parameter) + base_link to front(to adjust head pose to stop line). Then, we can get offset segment and offset from segment start.

find_offset_segment

After that, we can calculate a offset point from offset segment and offset. This will be stop_pose.

calculate_stop_pose

Back to top