ControlDesign[StateObserver] - MapleSim Help

Online Help

All Products    Maple    MapleSim


Home : Support : Online Help : MapleSim Toolboxes : MapleSim Control Design Toolbox : ControlDesign Package : State Estimation : ControlDesign/StateObserver/Observer

ControlDesign[StateObserver]

  

Observer

  

construct the static gain (Luenberger) observer for a given system and observer gain

 

Calling Sequence

Parameters

Options

Description

Examples

Calling Sequence

Observer(sys, L, opts)

Parameters

sys

-

System; system object;

L

-

Matrix or Vector; observer gain

opts

-

(optional) equation(s) of the form option = value; specify options for the Observer command

Options

• 

parameters = {list, set}(name = complexcons)

  

Specifies numeric values for the parameters of sys. These values override any parameters previously specified for sys. The numeric value on the right-hand side of each equation is substituted for the name on the left-hand side in the sys equations. The default is the value of sys given by DynamicSystems:-SystemOptions(parameters).

Description

• 

The Observer command constructs the static gain (Luenberger) observer for the given system sys and observer gain L.

• 

The system sys is a continuous or discrete-time linear system object created using the DynamicSystems package. The system object must be in state-space (SS) form.

• 

All sys inputs are assumed known (deterministic), and all sys outputs are assumed to be measured.

• 

The Observer command returns the observer object in the state-space form. The observer system object gets the input(s) and output(s) of sys as inputs and generates the estimates of the state(s) and output(s) of sys as its outputs.

• 

Suppose the sys state-space realization is given as

x=Ax+Buy=Cx+Du

The observer equations are given by

xˆ=ALCx^+BLDLuy

x^y^=ICx^+00D0uy

• 

In the discrete-time domain, the Observer command uses the same state-space matrices as in the continuous-time case to generate estimates for state(s) xn and output(s) yn as x^n|n1 and y^n|n1, respectively, based on the past measurements up to yn-1. The sampling time of the generated observer object is the same as the sampling time of the system sys.

Examples

withControlDesign:

withDynamicSystems:

State-space system in continuous time (5 states, 3 inputs and 2 outputs)

AmatMatrix1,2,3,5,12,0,4,1,2,3,2,5,7,4,3,2,4,3,8,7,19,14,1,4,7:

BmatMatrix3,6,3,9,7,5,5,2,1,4,1,7,6,8,2:

CmatMatrix3,9,5,4,6,1,0,4,5,7:

DmatMatrix1,2,0,3,0,1:

sysStateSpaceAmat,Bmat,Cmat,Dmat:

PrintSystemsys

State Spacecontinuous2 output(s); 3 input(s); 5 state(s)inputvariable=u1t,u2t,u3toutputvariable=y1t,y2tstatevariable=x1t,x2t,x3t,x4t,x5ta=1−23−51204−12−3257−43−2438719141−47b=3639755214−176−82c=3954610−457d=1−2030−1

(1)

Desired observer poles

p3,4,5+3I,53I,7:

Get the observer gain Matrix L for the desired poles

LStateObserver:-PolePlacementsys,p

L:=5.613879995032074.252888651567423.338518762086562.638950666309182.084444931839470.8573782145234360.7438101676114360.2976171958150035.062902321183623.86362016334714

(2)

Construct the observer object for sys with gain L

ObsvStateObserver:-Observersys,L:

PrintSystemObsv

State Spacecontinuous7 output(s); 5 input(s); 5 state(s)inputvariable=u1t,u2t,u3t,y1t,y2toutputvariable=x1_obs_outt,x2_obs_outt,x3_obs_outt,x4_obs_outt,x5_obs_outt,y1t,y2tstatevariable=x1_obst,x2_obst,x3_obst,x4_obst,x5_obsta=20.0945286366636452.5249199552886458.05784536889066448.719963237965451.45350053116439412.6545069525688534.046668858779015.13679114519605828.5488283798921335.50376723668365.11071301004185413.7600043865552520.00728819889637932816.6246707999750715.5083170927008850.529047698649310210.6942915085029215.52858205479716812.46332664952075613.5461813763736330.0523271268980138931.5661208906526138.8600309525295543.5697101014702150.422755070531736b=15.37254594973434217.2277599900641437.2528886515674245.6138799950320724.25288865156742420.25537076101410.322962475826887642.3610493336908193.3385187620865562.6389506663091810.343420424590219936.1688898636789451.85737821452343572.08444493183947270.85737821452343585.6366617550564442.48762033522287146.7023828041849980.74381016761143580.297617195815002710.653762811225052.1258046423672485.8636201633471435.0629023211836243.8636201633471425c=10000010000010000010000013954610−457d=00000000000000000000000001−200030−100

(3)

See Also

ControlDesign

ControlDesign[StateFeedback][PolePlacement]

ControlDesign[StateObserver][Ackermann]

ControlDesign[StateObserver][PolePlacement]

 


Download Help Document

Was this information helpful?



Please add your Comment (Optional)
E-mail Address (Optional)
What is ? This question helps us to combat spam