Overview

What is Controls?

Controls is the process of taking in information about the vehicle’s state, e.g. its position and velocity, in relation to the outside world, e.g. the track set out by the cones, and calculating the optimal control action to take, e.g. throttle and steering wheel angle.

How does it work?

Controls is our custom ROS2 package that contains the controller Node.

It subscribes to the following topics:

It publishes to the following topics:

  • control_action: The calculated optimal control action to be sent to the Actuators node.

  • controller_info: Information about the controller, for debugging purposes.

Setup

To build the controls package, run the following command from inside the driverless/driverless_ws directory:

./build-controls.py

To run the controller node, run:

ros2 run controls controller

Next Up

To learn more about the controller, visit here for a detailed overview.