Video length is 23:05

LQR Control of an Autonomous Underwater Vehicle

From the series: Modeling, Simulation, and Control

Juan Rojas, University of Alberta
Nathan Liebrecht, University of Alberta

To simplify the control of their autonomous underwater vehicle, Juan Rojas and Nathan Liebrecht of the Autonomous Robotic Vehicle Project at the University of Alberta join Connell D'Souza of MathWorks® to talk about using MATLAB® to design, simulate, and implement a Linear-Quadratic Regulator (LQR) controller for their vehicle.

Juan and Nathan start by explaining, at a high level, the theory behind an LQR Controller. LQR Controllers are based on optimal control theory which allows the submarine to perform complex maneuvers. This allows them to supply a target state, which the controller, using the state estimator, converts to percent-of-effort motor commands. They also discuss the benefits of an LQR over a PID controller for their vehicle.

Juan and Nathan then demonstrate their workflow for designing this system. They use MATLAB and the Symbolic Math Toolbox™ to symbolically solve the system equations and linearize them. The ccode function is then used to convert these symbolic expressions to C code, which is then pasted into a Python script that runs on their vehicle. Juan also demonstrates using MATLAB to simulate the behavior of this controller in an ROS-enabled simulation platform.

Additional Resources:

Published: 3 Dec 2018