1 minute read



5.1.1 이산 블록

Sine Wave 블록을 더블클릭하고 샘플 시간 파라미터를 0.25로 변경한다.

Discrete

아이콘이 바뀌고 이산 신호를 출력하는 이산 블록이 되었다.



5.1.2 Unit Delay 블록

라이브러리 브라우저 > Simulink > Discrete > Unit Delay

Unit Delay 블록은 입력 신호를 받아 지정된 샘플 시간동안 그 값을 유지한다. 다음 시간 step에서 이 블록은 이전 입력값을 출력한다. $z$-변환 영역에서, 이 블록은 시간 step 하나만큼의 지연을 나타내는 $\frac{1}{z}$로 표현된다.

Discrete2


신호 출력이 unit step만큼 지연된 것을 확인할 수 있다.

Discrete3


샘플 시간

Unit Delay 블록에는 자체 샘플 시간 파라미터가 있다. 이 파라미터는 기본저긍로 -1로 설정되어 있다. 이는 모델의 다른 위치(이 경우는 Sine Wave)에서 샘플 시간을 상속함을 의미. 만일 신호를 downsampling해야 할 경우, 독립적인 레이트를 지정할 수도 있다.

Unit Delay 블록을 더블클릭하고 샘플 시간을 0.5로 지정하면 다음 결과가 나타난다.

Discrete4

Discrete5



5.1.3 Difference Equation

마지막으로 파악된 위치, 속도 및 관측값 사이의 시간을 기반으로 자동차의 위치를 설명하는 다음 difference equation(차분 방정식)이 있다고 가정.

\[x[k] = x[k-1] + v \cdot T_{s}\]

이때, 관측값 사이의 시간 $T_{s} = 0.25$는 이 이산 시스템의 샘플 시간.

Discrete dynamic system modelling은 Unit Delay 블록으로 시작하는 것이 좋다.

Discrete6


신호에 레이블을 지정하면 모델에서 상태를 추적하기 용이하다.

Discrete7


$v=10 \textrm{m/s}$ 로 가정하고 우변을 모델링한다. Constant 블록을 추가해 그 값을 10*0.25로 설정하면 된다.

Discrete8


이렇게 모델링한 표현식 $x[k-1] + v \cdot T_{s}$는 $x[k]$와 같다. 따라서 신호 x_k를 Add 블록의 출력 포트에 연결하면 된다.

Discrete9


끝으로 Unit Delay 블록에서 초기 조건을 지정한다. 여기서는 $x[0] = 5 \textrm{m}$로 설정하였다.

Discrete10

Discrete11



5.1.4 Modeling for Discrete-Time System

연립 방정식에도 마찬가지로 같은 절차를 적용할 수 있다. 모델링의 절차를 정리하면,


(1) 최신 상태는 방정식의 좌변에, 나머지 항은 우변에 오도록 방정식을 정리한다.

\[\begin{align*} x[k] &= x[k-1]+u[k]-u[k-1] \\ u[k] &= \sin [k] \\ \end{align*}\]

(2) 필요한 Unit Delay 블록의 수를 결정한다. 이 경우 방정식에 2개의 지연이 있으므로 2개의 Unit Delay 블록이 필요하다.

\[\begin{align*} x[k] &\rightarrow x[k-1] \\ u[k] &\rightarrow u[k-1] \\ \end{align*}\]

(3) Unit Delay 블록을 추가하고 신호에 레이블을 지정한다.

Discrete12


(4) 방정식의 우변을 구성한다.

Discrete13


(5) 등식을 완성하기 위해 필요에 따라 나머지 신호를 연결한다.

Discrete14


(6) 모든 샘플 시간과 초기 조건을 설정한다.

Discrete15