본 페이지에서는 CICS NMPC tutorial 중 MPC 설계를 위한 discretization method를 설명합니다.

본 페이지에서 사용한 파일은 다음과 같습니다.

run_discretization_CICS_2022.m

예제 1 : Linear system의 exact discretization

본 예제에서는 다음의 linear system을 생각합니다.

$$ \dot{x}_c=\begin{bmatrix} 0 & 1\\ -1 & -2 \end{bmatrix}x_c+\begin{bmatrix} 0\\ 1\end{bmatrix}u_c,\quad y_c = \begin{bmatrix} 1 & 0\end{bmatrix}x_c $$

위 시스템은 MATLAB 상에서 다음과 같이 표현할 수 있습니다.

A_c = [0 1; -1 -2];
B_c = [0; 1];
C_c = [1 0];
D_c = 0;
sys_c = ss(A_c,B_c,C_c,D_c);

위의 시스템에 대하여 sampler와 zero-order hold를 고려한 ZOH equivalent model은 다음의 코드에 의해 계산됩니다. (여기서 sampling period인 $\Delta>0$는 0.1초로 설정하였습니다.)

Delta = 0.1;
sys = c2d(sys_c, Delta, 'zoh');

예제 2 : Nonlinear system의 approximate discretization

[1]의 A.11.절에서 소개한 normalized inverted pendulum의 equations of motion을 고려합시다.

$$ \ddot{\theta}=\sin \theta + (\cos\theta)u $$

이 때 각 변수는 다음을 의미합니다.

Untitled