EstimatorRegulator
EstimatorRegulator[sspec,{l,κ}]
gives the output feedback controller with estimator and regulator gains l and κ for the system specification sspec.
EstimatorRegulator[…,"prop"]
gives the value of the property "prop".
Details and Options
 EstimatorRegulator is also known as observer controller or estimator controller.
 EstimatorRegulator is used to assemble a control system consisting of an estimator and a regulating or tracking controller.
 A regulating controller aims to maintain the system at an equilibrium state despite disturbances pushing it away. Typical examples include maintaining an inverted pendulum in its upright position or maintaining an aircraft in level flight.
 The regulating controller is given by a control law of the form , where is the computed gain matrix.
 A tracking controller aims to track a reference signal despite disturbances interfering with it. Typical examples include a cruise control system for a car or path tracking for a robot.
 The tracking controller is given by a control law of the form , where is the computed gain matrix for the augmented system which includes the system sys as well as the dynamics for .
 The system specification sspec is the system sys together with the u_{f}, u_{e}, y_{t} and y_{ref} specifications.
 The system specification sspec can have the following forms:

StateSpaceModel[…] linear control input and linear state AffineStateSpaceModel[…] linear control input and nonlinear state NonlinearStateSpaceModel[…] nonlinear control input and nonlinear state SystemModel[…] general system model <… > detailed system specification given as an Association  The detailed system specification can have the following keys:

"InputModel" sys any one of the models "FeedbackInputs" All the feedback inputs u_{f} "ExogenousInputs" None the exogenous inputs u_{e} "MeasuredOutputs" All the measured outputs y_{m} "TrackedOutputs" None tracked outputs y_{t}  The inputs and outputs can have the following forms:

{num_{1},…,num_{n}} numbered inputs or outputs num_{i} used by StateSpaceModel, AffineStateSpaceModel and NonlinearStateSpaceModel {name_{1},…,name_{n}} named inputs or outputs name_{i} used by SystemModel All uses all inputs or outputs None uses none of the inputs or outputs  The estimator gains l can be computed using EstimatorGains, LQEstimatorGains or DiscreteLQEstimatorGains.
 The feedback gains κ can be computed using StateFeedbackGains, LQRegulatorGains, LQOutputRegulatorGains or DiscreteLQRegulatorGains.
 EstimatorRegulator[…,"Data"] returns a SystemsModelControllerData object cd that can be used to extract additional properties using the form cd["prop"].
 EstimatorRegulator[…,"prop"] can be used to directly get the value of cd["prop"].
 Possible values for properties "prop" include:

"ClosedLoopPoles" poles of "ClosedLoopSystem" "ClosedLoopSystem" system csys {"ClosedLoopSystem",cspec} detailed control over the form of the closedloop system "ControllerModel" model cm with , u_{e}, y_{m} as input and u_{f} as output "Design" type of controller design "DesignModel" model used for the design "EstimatorGains" gain matrix ℓ "EstimatorRegulatorModel" model erm "ExogenousInputs" deterministic and nonfeedback inputs u_{e} of sys "FeedbackGains" gain matrix κ or its equivalent "FeedbackGainsModel" model gm or {gm_{1},gm_{2}} "FeedbackInputs" inputs u_{f} of sys used for feedback "InputModel" input model sys "InputsCount" number of inputs u of sys "MeasuredOutputs" measured outputs y_{m} of sys "OpenLoopPoles" poles of the Taylor linearized sys "OutputsCount" number of outputs y of sys "SamplingPeriod" sampling period of sys "StateEstimatorModel" model sem "StateOutputEstimatorModel" model soem "StatesCount" number of states x of sys "TrackedOutputs" outputs y_{t} of sys that are tracked  Possible keys for cspec include:

"InputModel" input model in csys "Merge" whether to merge csys "ModelName" name of csys "NoisyOutputs" subset of y_{m} that are noisy  The diagram of the regulator layout.
 The diagram of the tracker layout.
Examples
open allclose allBasic Examples (8)
Construct an EstimatorRegulator:
An estimator regulator for a discretetime model:
An estimator regulator for a nonlinear system:
An estimator regulator with specified measurements and feedback inputs:
An estimator regulator with optimal gains:
A set of optimal regulator gains:
And a set of optimal estimator gains:
An estimator regulator for a tracking problem:
Scope (30)
Basic Uses (8)
A system with one feedback input and one measurement:
The feedback input and measurement are inputs to the estimatorregulator:
A system with one noisy input as well:
Noisy inputs are not inputs to the estimatorregulator:
A system with one feedback and one exogenous input:
The exogenous input is an input to the estimatorregulator:
A system where only some of the outputs are measured:
Only the feedback input and measured output are fed to the estimatorregulator:
Compute the gains using pole placement:
Assemble the estimatorregulator:
Assemble the estimatorregulator:
Compute only the feedback gains optimally:
Compute the estimator gains using pole placement:
Assemble the estimatorregulator:
Plant Models (5)
A continuoustime StateSpaceModel:
The controller for a set of gains:
The poles of the closedloop system:
A discretetime StateSpaceModel:
The controller for a set of gains:
A descriptor StateSpaceModel:
The controller has the same descriptor matrix:
An AffineStateSpaceModel with a set of gains:
Its poles are that of the Taylor linearized model:
A NonlinearStateSpaceModel with a set or gains:
Properties (9)
By default, EstimatorRegulator returns the controller comprising the estimator and regulator:
The controller can also be obtained as a property:
The estimatorregulator feedback model:
In this model, the feedback input is fed back directly:
Assemble the estimator and regulator with feedback to get the same result as before:
The closedloop system differs from the computed one only in the input matrix:
Properties related to the input model and gains:
Get the controller data object:
Tracking (5)
First design a state feedback controller and estimator:
Assemble the tracking controller:
The closedloop system tracks the reference signal :
Design a tracking controller for a discretetime system:
First design a state feedback controller and estimator:
Assemble the tracking controller:
The closedloop system tracks the reference signal :
Design an optimal state feedback controller:
And an estimator using pole placement:
Assemble the tracking controller:
The closedloop system tracks two different reference signals:
Compute the controller effort:
Design an optimal state feedback controller:
Assemble the tracking controller:
Track a desired reference signal:
The reference signal is of order 2:
Set the reference as as sum of sinusoids:
Design a controller to track one output of a first order system :
ClosedLoop System (3)
Compute the closedloop system based on a linear design:
The closedloop system based on the nonlinear model:
Compare the response of the two designs:
Assemble the merged closedloop system of a plant with an EstimatorRegulator:
The unmerged closedloop system:
When merged, it gives the same result as before:
Merge the closedloop system explicitly:
Create a closedloop system with a desired name:
The closedloop system has the specified name:
The name can be directly used to specify the closedloop model in other functions:
Applications (11)
Mechanical Systems (3)
Design a controller for a partially controllable double cartspring system:
The system is not controllable:
The response of the openloop system:
Compute a set of optimal feedback gains:
Assemble the estimatorregulator:
The horizontal positions of the masses are controlled:
While the vertical position of is not:
Dampen the oscillations of a three mass system:
The openloop response is highly oscillatory:
Compute a set of optimal regulator gains:
Assemble the estimatorregulator:
The oscillations are suppressed by the feedback controller:
Dampen the oscillations of a coupled pendulum:
The undamped openloop response:
Compute a set of estimator gains:
Compute a set of optimal gains:
Assemble the estimatorregulator:
source: https://fcichos.github.io/CompSoft21/notebooks/L6/2_coupled_pendula.html
Aerospace Systems (2)
Biological Systems (1)
Regulate the bloodglucose level in the human body:
The Bergman's model of the system:
The system is slow with poles close to the yaxis:
The glucose level in the openloop system takes a long time to settle down:
Compute a set of optimal gains:
Assemble an estimatorregulator:
Chemical Systems (2)
Regulate the biomass concentration in an isothermal constantvolume fermenter: »
The biomass concentration of the unregulated system:
Compute a set of estimator gains:
Compute a set of regulator gains:
The biomass concentration is regulated:
Improve the response of a mixing tank process:
The output response takes to stabilize:
The system’s fast and slow modes are controllable:
Compute a set of state feedback gains:
The response of the closedloop system only takes to stabilize:
Electrical Systems (2)
Regulate a DCmotor driven by a buck converter:
The system has poles close to the imaginary axis:
Therefore the response of the system to an initial perturbation is slow:
Compute a set of regulator gains:
Assemble the estimator regulator:
The closedloop system with the estimator regulator in the feedback path:
Dampen the response of the terminal voltage of a power system:
The system has two lightly damped poles:
The openloop response is therefore highly oscillatory:
Compute a set of regulator gains:
Assemble the estimatorregulator:
Obtain the closedloop system:
The closedloop response to a perturbation in the synchronous machine is damped and is faster:
Properties & Relations (7)
The closedloop poles are those of the estimator and statefeedback designs:
The poles of the estimator design:
The poles of the state feedback design:
An estimatorregulator assembled using gains from StateFeedbackGains and EstimatorGains:
The estimatorregulator can be assembled using the gains or the controller data object:
An estimatorregulator assembled using gains from LQRegulatorGains and EstimatorGains:
A set of optimal feedback gains:
The estimatorregulator can be assembled using the gains or the controller data object:
An estimatorregulator assembled using gains from DiscreteLQRegulatorGains and DiscreteLQEstimatorGains:
A set of optimal discretetime estimator gains:
A set of optimal discretetime feedback gains:
LQGRegulator is assembled using EstimatorRegulator:
The uncontrollable poles of a stabilizable system are not affected by an estimator regulator:
The stable pole 2 is uncontrollable:
The poles of the closedloop system:
The uncontrollable pole is unchanged:
Larger estimator gains results in a faster response but amplifies noise:
A set of state feedback gains:
A set of increasing estimator gains:
The responses of the closedloop systems:
As the estimator gains increase, the response is faster but the effects of the noise are more pronounced:
The plot of the norm of the estimator gains versus output response:
Text
Wolfram Research (2010), EstimatorRegulator, Wolfram Language function, https://reference.wolfram.com/language/ref/EstimatorRegulator.html (updated 2021).
CMS
Wolfram Language. 2010. "EstimatorRegulator." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2021. https://reference.wolfram.com/language/ref/EstimatorRegulator.html.
APA
Wolfram Language. (2010). EstimatorRegulator. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/EstimatorRegulator.html