Note: This page has been translated by MathWorks. Please click here

To view all translated materals including this page, select Japan from the country navigator on the bottom of this page.

To view all translated materals including this page, select Japan from the country navigator on the bottom of this page.

Implement gain-scheduled state-space controller depending on three scheduling parameters

GNC/Control

The 3D Controller [A(v),B(v),C(v),D(v)] block implements a gain-scheduled state-space controller as defined by the equations

$$\begin{array}{l}\dot{x}=A(v)x+B(v)y\\ u=C(v)x+D(v)y\end{array}$$

where * v* is a vector of parameters over which

**A-matrix(v1,v2,v3)**-matrix of the state-space implementation. In the case of 3-D scheduling, the*A*-matrix should have five dimensions, the last three corresponding to scheduling variables*A*1,*v*2, and*v*3. Hence, for example, if the*v*-matrix corresponding to the first entry of*A*1, the first entry of*v*2, and the first entry of*v*3 is the identity matrix, then*v*`A(:,:,1,1,1) = [1 0;0 1];`

.**B-matrix(v1,v2,v3)**-matrix of the state-space implementation. In the case of 3-D scheduling, the*B*-matrix should have five dimensions, the last three corresponding to scheduling variables*B*1,*v*2, and*v*3. Hence, for example, if the*v*-matrix corresponding to the first entry of*B*1, the first entry of*v*2, and the first entry of*v*3 is the identity matrix, then*v*`B(:,:,1,1,1) = [1 0;0 1];`

.**C-matrix(v1,v2,v3)**-matrix of the state-space implementation. In the case of 3-D scheduling, the*C*-matrix should have five dimensions, the last three corresponding to scheduling variables*C*1,*v*2, and*v*3. Hence, for example, if the*v*-matrix corresponding to the first entry of*C*1, the first entry of*v*2, and the first entry of*v*3 is the identity matrix, then*v*`C(:,:,1,1,1) = [1 0;0 1];`

.**D-matrix(v1,v2,v3)**-matrix of the state-space implementation. In the case of 3-D scheduling, the*D*-matrix should have five dimensions, the last three corresponding to scheduling variables*D*1,*v*2, and*v*3. Hence, for example, if the*v*-matrix corresponding to the first entry of*D*1, the first entry of*v*2, and the first entry of*v*3 is the identity matrix, then*v*`D(:,:,1,1,1) = [1 0;0 1];`

.**First scheduling variable (v1) breakpoints**Vector of the breakpoints for the first scheduling variable. The length of

1 should be same as the size of the third dimension of*v*,*A*,*B*, and*C*.*D***Second scheduling variable (v2) breakpoints**Vector of the breakpoints for the second scheduling variable. The length of

2 should be same as the size of the fourth dimension of*v*,*A*,*B*, and*C*.*D***Third scheduling variable (v3) breakpoints**Vector of the breakpoints for the third scheduling variable. The length of

3 should be same as the size of the fifth dimension of*v*,*A*,*B*, and*C*.*D***Initial state, x_initial**Vector of initial states for the controller, i.e., initial values for the state vector,

. It should have length equal to the size of the first dimension of*x*.*A*

Input | Dimension Type | Description |
---|---|---|

First | Contains the measurements. | |

Second | Contains the scheduling variable, ordered conforming to the dimensions of the state-space matrices. | |

Third | Contains the scheduling variable, ordered conforming to the dimensions of the state-space matrices. | |

Fourth | Contains the scheduling variable, ordered conforming to the dimensions of the state-space matrices. |

Output | Dimension Type | Description |
---|---|---|

First | Contains the actuator demands. |

If the scheduling parameter input to the block go out of range, then they are clipped; i.e., the state-space matrices are not interpolated out of range.

1D Controller [A(v),B(v),C(v),D(v)]

2D Controller [A(v),B(v),C(v),D(v)]

Was this topic helpful?