Documentation |
Implement gain-scheduled state-space controller in observer form depending on two scheduling parameters
The 2D Observer Form [A(v),B(v),C(v),F(v),H(v)] block implements a gain-scheduled state-space controller defined in the following observer form:
$$\begin{array}{l}\dot{x}=(A(v)+H(v)C(v))x+B(v){u}_{meas}+H(v)\left(y-{y}_{dem}\right)\\ {u}_{dem}=F(v)x\end{array}$$
The main application of these blocks is to implement a controller designed using H-infinity loop-shaping, one of the design methods supported by Robust Control Toolbox.
A-matrix of the state-space implementation. In the case of 2-D scheduling, the A-matrix should have four dimensions, the last two corresponding to scheduling variables v1 and v2. Hence, for example, if the A-matrix corresponding to the first entry of v1 and first entry of v2 is the identity matrix, then A(:,:,1,1) = [1 0;0 1];.
B-matrix of the state-space implementation. In the case of 2-D scheduling, the B-matrix should have four dimensions, the last two corresponding to scheduling variables v1 and v2. Hence, for example, if the B-matrix corresponding to the first entry of v1 and first entry of v2 is the identity matrix, then B(:,:,1,1) = [1 0;0 1];.
C-matrix of the state-space implementation. In the case of 2-D scheduling, the C-matrix should have four dimensions, the last two corresponding to scheduling variables v1 and v2. Hence, for example, if the C-matrix corresponding to the first entry of v1 and first entry of v2 is the identity matrix, then C(:,:,1,1) = [1 0;0 1];.
State-feedback matrix. In the case of 2-D scheduling, the F-matrix should have four dimensions, the last two corresponding to scheduling variables v1 and v2. Hence, for example, if the F-matrix corresponding to the first entry of v1 and first entry of v2 is the identity matrix, then F(:,:,1,1) = [1 0;0 1];.
Observer (output injection) matrix. In the case of 2-D scheduling, the H-matrix should have four dimensions, the last two corresponding to scheduling variables v1 and v2. Hence, for example, if the H-matrix corresponding to the first entry of v1 and first entry of v2 is the identity matrix, then H(:,:,1,1) = [1 0;0 1];.
Vector of the breakpoints for the first scheduling variable. The length of v1 should be same as the size of the third dimension of A, B, C, F, and H.
Vector of the breakpoints for the second scheduling variable. The length of v2 should be same as the size of the fourth dimension of A, B, C, F, and H.
Vector of initial states for the controller, i.e., initial values for the state vector, x. It should have length equal to the size of the first dimension of A.
Input | Dimension Type | Description |
---|---|---|
First | Contains the set-point error. | |
Second | Contains the scheduling variable, conforming to the dimensions of the state-space matrices. | |
Third | Contains the scheduling variable, conforming to the dimensions of the state-space matrices. | |
Fourth | Contains the measured actuator position. |
Output | Dimension Type | Description |
---|---|---|
First | Contains the actuator demands. |
If the scheduling parameter inputs to the block go out of range, then they are clipped; i.e., the state-space matrices are not interpolated out of range.
See H-Infinity Controller (Two Dimensional Scheduling) in aeroblk_lib_HL20 aeroblk_lib_HL20 for an example of this block.