Skip to content

Lateral Controller#

Overview#

For following target trajectory, control stack needs to output lateral control commands (steering angle, steering angle velocity), and longitudinal control commands (acceleration, velocity). Lateral controller module is responsible for calculation of lateral control commands.

Role#

Lateral controller module calculates suitable velocity and acceleration for following target trajectory.

Input#

The input to Lateral Controller module:

Input Data Type Explanation
Trajectory autoware_planning_msgs::Trajectory Target trajectory to follow (target position, orientation, twist, acceleration)
Pose /tf
(tf2_msgs::TFMessage)
Current pose of the vehicle
Twist geometry_msgs::TwistStamped Current twist of the vehicle
Steer autoware_vehicle_msgs::Steering Current steer of the vehicle

Output#

The output type from Lateral Controller module is autoware_control_msgs/ControlCommandStamped.

The main outputs included in autoware_control_msgs/ControlCommandStamped are as follows:

Output Data Type
Velocity std_msgs/Float64
Acceleration std_msgs/Float64
Steering angle std_msgs/Float64
Steering angle velocity std_msgs/Float64

Note that velocity and acceleration are always output as 0 from Lateral Controller module.