Multivariable Centralized Control and MPC

In class activities

Author
Published

October 2, 2023

Modified

September 30, 2024

Activities

  1. Explain the advantages and limitations of Model Predictive Control compared to the conventional decentralized PID control system.

  2. Consider the process given by

\[ G(s)=\left[\begin{array}{ll} \frac{2 \exp (-7 s)}{10 s+1} & \frac{0.5 \exp (-4 s)}{19 s+1} \\ \frac{\exp (-3 s)}{20 s+1} & \frac{1.5 \exp (-2 s)}{15 s+1} \end{array}\right] \tag{1}\]

Design the decouplers \(D_{12}\) and \(D_{21}\) and comment whether the systems are physically realizable or not.

The code for calculating decoupler transfer function is given in Matlab file/ mlx file.

  1. The discrete-time step response model of a process is given in Table 1.
Table 1: Discrete-time step response model
t i \(\Delta u\) y(t) ai
0 0 1 0 0
1 1 0 0.3 0.3
2 2 0 0.6 0.6
3 3 0 0.7 0.7
4 4 0 0.8 0.8
5 5 0 0.86 0.86
6 6 0 0.88 0.88
7 7 0 0.89 0.89

Suppose that the process is subjected to a consecutive step changes in the input: \(\Delta u=1\) at t=0, \(\Delta u=1\) at t=2 and \(\Delta u=-1\) at t=4, determine the values of y5 and y9.

The code for calculating decoupler transfer function is given in Matlab file/ mlx file. The data in Table 1 can be downloaded from discrete_time_response.csv.

  1. Develop a DTSRM for the following transfer function

\[ G_p(s) = \frac{ 2 e^{-2s} } { 5s + 1 } \tag{2}\]

For the given transfer cunction, - \(K\) = 2 - \(\tau\) = 5 - \(\theta\) = 2 seconds

Apply a Unit Step Input

To develop the step response model, apply a unit step change in the input \(u(t)\): \[ \Delta u(t) = 1, \text{ for } t \geq 0 \]

Let’s use \(T_s\) = 1 second.

Calculate the Step Response Coefficients \(a_i\)

The step response coefficients \(a_i\) represent the fraction of the process response that occurs in each discrete time interval. The response of the system is delayed by \(\theta\) seconds, so no change is observed in the output until after \(\theta\).

The response \(y(t)\) to the step input for a FOPDT system is: \[ y(t) = K \left(1 - e^{-\frac{t - \theta}{\tau}}\right), \quad t \geq \theta \]

The discrete response coefficients \(a_i\) are then calculated as:

\[ a_i = y(i) - y(0) \]

first few coefficients:

\(i\) Time (s) \(y(i T_s)\) \(a_i\)
0 0 0 0
1 1 0 0
2 2 0 0
3 3 \(2 \left(1 - e^{-\frac{1}{5}}\right)\) 0.3625
4 4 \(2 \left(1 - e^{-\frac{2}{5}}\right)\) 0.6594
5 5 \(2 \left(1 - e^{-\frac{3}{5}}\right)\) 0.9024
6 6 \(2 \left(1 - e^{-\frac{4}{5}}\right)\) 1.1013

Construct the DTSRM

The DTSRM uses the coefficients \(a_i\) to predict future outputs based on past input changes:

\[ y_n = y_0 + \sum_{i=1}^{n} a_i \Delta u(t_{n-i}) \]

For example, \[ y(3) = y_0 + a_3 \Delta u(0) + a_2 \Delta u(1) + a_1 \Delta u(3) \]

The code for calculating \(a_i\) is given in Matlab file/ mlx file.

  1. Second-Order Plus Dead-Time (SOPDT) Model to DTSRM

For the following transfer function

\[ G_p(s) = \frac{K}{\tau_1 s + 1} \cdot \frac{1}{\tau_2 s + 1} e^{-\theta s} \]

develop DTSRM.

The code for calculating \(a_i\) is given in Matlab file/ mlx file.

Citation

BibTeX citation:
@online{utikar2023,
  author = {Utikar, Ranjeet},
  title = {Multivariable {Centralized} {Control} and {MPC}},
  date = {2023-10-02},
  url = {https://amc.smilelab.dev//content/notes/09-Multivariable_Centralized_Control_and_MPC/in-class-activities.html},
  langid = {en}
}
For attribution, please cite this work as:
Utikar, Ranjeet. 2023. “Multivariable Centralized Control and MPC.” October 2, 2023. https://amc.smilelab.dev//content/notes/09-Multivariable_Centralized_Control_and_MPC/in-class-activities.html.