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
Sélectionner un site web
Choisissez un site web pour accéder au contenu traduit dans votre langue (lorsqu'il est disponible) et voir les événements et les offres locales. D’après votre position, nous vous recommandons de sélectionner la région suivante : .
Vous pouvez également sélectionner un site web dans la liste suivante :
Comment optimiser les performances du site
Pour optimiser les performances du site, sélectionnez la région Chine (en chinois ou en anglais). Les sites de MathWorks pour les autres pays ne sont pas optimisés pour les visites provenant de votre région.
Amériques
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)
Asie-Pacifique
- Australia (English)
- India (English)
- New Zealand (English)
- 中国
- 日本Japanese (日本語)
- 한국Korean (한국어)