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

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

• Library:
• Aerospace Blockset / GNC / Control

## Description

The 2D Controller [A(v),B(v),C(v),D(v)] block implements a gain-scheduled state-space controller, as described in Algorithms.

The output from this block is the actuator demand, which you can input to an actuator block.

## Limitations

If the scheduling parameter inputs to the block go out of range, they are clipped. The state-space matrices are not interpolated out of range.

## Ports

### Input

expand all

Aircraft measurements, specified as a vector.

Data Types: double

Scheduling variable, specified as a vector, that conforms to the dimensions of the state-space matrices.

Data Types: double

Scheduling variable, specified as a vector, that conforms to the dimensions of the state-space matrices.

Data Types: double

### Output

expand all

Actuator demands, specified as a vector.

Data Types: double

## Parameters

expand all

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. 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];.

#### Programmatic Use

 Block Parameter: A Type: character vector Values: vector Default: 'A'

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. 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];.

#### Programmatic Use

 Block Parameter: B Type: character vector Values: vector Default: 'B'

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. 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];.

#### Programmatic Use

 Block Parameter: C Type: character vector Values: vector Default: 'C'

D-matrix of the state-space implementation. In the case of 2-D scheduling, the D-matrix should have four dimensions, the last two corresponding to scheduling variables v1 and v2. For example, if the D-matrix corresponding to the first entry of v1 and first entry of v2 is the identity matrix, then D(:,:,1,1) = [1 0;0 1];.

#### Programmatic Use

 Block Parameter: D Type: character vector Values: vector Default: 'D'

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, and D.

#### Programmatic Use

 Block Parameter: AoA_vec Type: character vector Values: vector Default: 'v1_vec'

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, and D.

#### Programmatic Use

 Block Parameter: Mach_vec Type: character vector Values: vector Default: 'v2_vec'

Vector of initial states for the controller, that is, initial values for the state vector, x. It should have length equal to the size of the first dimension of A.

#### Programmatic Use

 Block Parameter: x_initial Type: character vector Values: vector Default: '0'

## Algorithms

The block implements a gain-scheduled state-space controller as defined by this equation:

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

where v is a vector of parameters over which A, B, C, and D are defined. This type of controller scheduling assumes that the matrices A, B, C, and D vary smoothly as a function of v, which is often the case in aerospace applications.

## Version History

Introduced before R2006a