functiondesignInverseDoublePendulumControllerWithObserver

Design pole assignment for an inverse double pedulum

Information

This example demonstrates how to design pole placement controller to balance an inverted double pendulum. For controller design a linearized model of a (simple) physical system model is used. The controller is applied to the physical model in Moldelica_Controller library.

It is also shown how to linearize a modelica model. The linear model is used as a base for control design

Inputs

TypeNameDefaultDescription
StringmodelName"Modelica_LinearSystems2.Controllers.Examples.Components.InverseDoublePendulum"name of the model to linearize
Complex[6]pa{Complex(-1, 0), Complex(-1, 0), Complex(-12, -0.2), Complex(-12, 0.2), Complex(-15, -0), Complex(-15, 0)}assigned poles
Complex[6]pobcat(1, fill(-15 + 0*j, 4), fill(-20 + 0*j, 2))assigned observer poles
StringfileNameDataDir + "inverseDoublePendulumControllerO.mat"file name for results
BooleanmakeAnalysisfalse

Outputs

TypeNameDefaultDescription
Real[:,:]K_pafeedback matrix pole assignment controller
Real[:,:]M_papre filter LQ controller
Real[:,:]K_obfeedback matrix pole assignment controller