[고등자동제어] Solution matrix via Inverse Laplace & Z-transform

2020. 12. 31. 22:27·연구 Research/제어 Control

 

LTI system의 transfer function을 state space로 구성하는 것을 배웠고,

Laplace transform과 Z transform,

LTI system에서 solution을 이미 알고 있습니다.

이번에는 system의 solution을 inverse laplace transform을 통해서도 구하고자 합니다.

 


1. Solution of Continuous time nth order system

 

 

$\frac{d}{dt}x(t)=Ax(t)+Bu(t)$

$x(t)=e^{At}x(0)+\int_{0}^{t}e^{A(t-\tau)}Bu(\tau)d\tau$

 

우리가 이미 알고 있는 solution은 다음과 같습니다.

위의 equation에 Laplace transform을 취하면

 

$sX(s)-x(0)=AX(s)+BU(s)$$(sI-A)X(s)=x(0)+BU(s)$

$X(s)=(sI-A)^{-1}x(0)+(sI-A)^{-1}BU(s)$

 

우변에서 첫번째 항은 free response를 의미하고, 두번째 항은 forced response를 의미합니다.

 

위에서 이미 알고 있는 time domain의 solution과 s domain의 solution을 비교해보면,

$x(t)=e^{A(t-t_{0})}x(0)+\int_{0}^{t}e^{A(t-\tau)}Bu(\tau)d\tau$

$X(s)=(sI-A)^{-1}x(0)+(sI-A)^{-1}BU(s)$

 

따라서 다음과 같은 결과를 얻을 수 있습니다.

$\mathcal{L}\{e^{At}\}=(sI-A)^{-1}$

$\mathcal{L}\{\int_{0}^{t}e^{A(t-\tau)}Bu(\tau)d\tau\}=(sI-A)^{-1}BU(s)$

 

 

Continuous time forced response의 경우, time domain에 대해서 구할 때는 impulse response function과 input을 convolution함으로써 구할 수 있었습니다. (normal-engineer.tistory.com/25?category=930921, 목차 0번만 보면 됩니다.)

 

$ \frac{dx(t)}{dt} = Ax(t) + Bu(t)$

$ y(t) = Cx(t) + Du(t)$

다음과 같은 system에서 x(t)는 위에서 구했으므로 y(t) 식에 있는 x(t)에 대입합니다.

 

$x(t)=\int_{0}^{t}e^{A(t-\tau)}Bu(\tau)d\tau\text{, where initial condition is zero}$

$y(t)=\int_{0}^{t}Ce^{A(t-\tau)}Bu(\tau)d\tau+Du(t)$

 

다음과 같이 y(t)가 나옵니다. 이 때 input u(t)를 변형하겠습니다.

$u(t)=\int_{0}^{t}\delta(t-\tau)u(\tau)d\tau=\delta(t)*u(t)$

이는 impulse와 u(t)를 convolution 한 것 뿐입니다. 어차피 impulse와 특정 signal을 convolution을 하면 동일한 signal가 나옵니다. 이 형태를 위 식에 대입하겠습니다.

 

$y(t)=\int_{0}^{t}\{Ce^{A(t-\tau)}Bu(\tau)+D\delta(t-\tau)\}u(\tau)d\tau=g(t)*u(t)$

y(t)는 원래 u(t)와 g(t)(impulse response)의 convolution임을 알고 있었습니다. 따라서 우리는

$g(t-\tau)=Ce^{A(t-\tau)}Bu(\tau)+D\delta(t-\tau)$

다음과 같이 g(t)를 C,B,D에 대한 식으로 표현할 수 있습니다.

 

$g(t)=Ce^{At}B+D\delta(t)$

$\mathcal{L}\{e^{At}\}=(sI-A)^{-1}$

 

$\mathcal{L}\{g(t)\}=G(s)=C(sI-A)^{-1}B+D \Rightarrow$ 이 식은 state space model 자체를 laplace transform으로 transfer function을 구했을 때와 동일합니다.

 

G(s) : system의 transfer function

 

 


2. Solution of Discrete time nth order system

(생각해보니까 Discrete LTI system의 solution은 따로 구한 적이 없어서 나중에 쓰고 여기에 링크를 달도록 하겠습니다.)

 

$x(k+1)=Ax(k)+Bu(k)\text{, where} x\in R^{n}, A\in R^{n\times n}$

$x(k)=A^{k}x(0)+\sum_{j=0}^{k-1}A^{k-1-j}Bu(j)$

 

 

이미 위의 difference equation에 대한 solution은 알고 있습니다.

 

위의 equation에 z-transform을 적용하면,

$zX(z)-zx(0)=AX(z)+BU(z)$

$X(z)=(zI-A)^{-1}zx(0)+(zI-A)^{-1}BU(z)$

 

continuous time에서 했던 것과 마찬가지로

위의 integer domain에서의 solution과 z domain에서의 solution을 비교합니다.

 

$\mathcal{Z}\{A^{k}\}=z(zI-A)^{-1}$

$\mathcal{Z}\{\sum_{j=0}^{k-1}A^{(k-1-j)}Bu(j)\}=(zI-A)^{-1}BU(z)$

 

그리고 위에서 했던 것과 비슷한 forced response에 대해서 다뤄보려고 합니다.

 

$x(k+1)=Ax(k)+Bu(k)$

$y(k)=Cx(k)+Du(k)$

 

y(k)에 위에서 구한 $x(k)=\sum_{j=0}^{k-1}A^{k-1-j}Bu(j)$(초기조건 0)을 대입합니다.

$y(k)=C\sum_{j=0}^{k-1}A^{k-1-j}Bu(j)+Du(k)$

 

이제 (위에서 했던 것처럼) u(k)를 변형하도록 하겠습니다. $u(k)=\sum_{j=0}^{k}\delta(k-j)u(j)$

 

$\text{pulse : }\delta(k)=\begin{cases} 1,&\text{if k=0}\\ 0,&\text{otherwise}\end{cases}$

$\text{step : }1(k)=\begin{cases} 1,&\text{if }k\geq 0\\ 0,&\text{if }k<0\end{cases}$

 

$y(k)=C\sum_{j=0}^{k-1}A^{k-1-j}Bu(j)+\sum_{j=0}^{k}D\delta(k-j)u(j)$

$=\sum_{j=0}^{k}[CA^{(k-1-j)}B1(k-1-j)+D\delta(k-j)]u(j)$

 

y(k)는 원래 g(k)와 u(k)의 convolution($y(k)=\sum_{j=0}^{k}g(k-j)u(j)=(g*u)(k)$)인 것을 알고 있기 때문에 위 식에서 g(k)를 뽑아낼 수 있습니다.

 

$g(k)=CA^{(k-1)}B1(k-1)+D\delta(k)$

 

g(k)를 z-transform하면,

$\mathcal{Z}\{g(k)\}=G(z)=C(zI-A)^{-1}B+D$

 

(아래는 왜 위와 같은 결과가 나왔는지에 대한 참고 식입니다.)

$\mathcal{Z}\{A^{k}\}=z(zI-A)^{-1}=\sum_{k=0}^{\infty}A^{k}z^{-k}$ (이 때 사용한 z-transform은 unilateral z transform임을 유의해주세요.)

$\mathcal{Z}\{A^{k-1}1(k-1)\}=\sum_{k=1}^{\infty}A^{k-1}z^{-k}=z^{-1}+Az^{-2}+A^{2}z^{-1}+\cdots$

$=z^{-1}(I+Az^{-1}+A^{2}z^{-2}+\cdots=z^{-1}\sum_{k=0}^{\infty}=(zI-A)^{-1}$

 


state space model을 laplace transform으로 푼 것과 LTI system의 equation의 solution은 사실상 동일하다는 것을 이용해

solution의 laplace 형태, 또 laplace 식의 역변환 값을 모두 알 수 있었습니다.

'연구 Research > 제어 Control' 카테고리의 다른 글

[고등자동제어] Stability in the sense of Lyapunov (1)  (0) 2021.01.07
[고등자동제어] Discrete time from continuous time  (0) 2021.01.05
[고등자동제어] Similarity Transformation for matrix exponential (2)  (0) 2020.12.29
[고등자동제어] Similarity Transformation for matrix exponential (1)  (0) 2020.12.29
[고등자동제어] LTI 시스템의 state equation 풀기 (2)  (0) 2020.12.16
'연구 Research/제어 Control' 카테고리의 다른 글
  • [고등자동제어] Stability in the sense of Lyapunov (1)
  • [고등자동제어] Discrete time from continuous time
  • [고등자동제어] Similarity Transformation for matrix exponential (2)
  • [고등자동제어] Similarity Transformation for matrix exponential (1)
보통의공대생
보통의공대생
수학,프로그래밍,기계항공우주 등 공부하는 기록들을 남깁니다.
  • 보통의공대생
    뛰는 놈 위에 나는 공대생
    보통의공대생
  • 전체
    오늘
    어제
    • 분류 전체보기 (460)
      • 공지 (1)
      • 영어 공부 English Study (40)
        • 텝스 TEPS (7)
        • 글 Article (21)
        • 영상 Video (10)
      • 연구 Research (99)
        • 최적화 Optimization (3)
        • 데이터과학 Data Science (7)
        • 인공지능 Artificial Intelligent (40)
        • 제어 Control (45)
      • 프로그래밍 Programming (103)
        • 매트랩 MATLAB (25)
        • 파이썬 Python (33)
        • 줄리아 Julia (2)
        • C++ (3)
        • 리눅스 우분투 Ubuntu (6)
      • 항공우주 Aeronautical engineeri.. (21)
        • 항법 Navigation (0)
        • 유도 Guidance (0)
      • 기계공학 Mechanical engineering (13)
        • 열역학 Thermodynamics (0)
        • 고체역학 Statics & Solid mechan.. (10)
        • 동역학 Dynamics (1)
        • 유체역학 Fluid Dynamics (0)
      • 수학 Mathematics (34)
        • 선형대수학 Linear Algebra (18)
        • 미분방정식 Differential Equation (3)
        • 확률및통계 Probability &amp; Sta.. (2)
        • 미적분학 Calculus (1)
        • 복소해석학 Complex Analysis (5)
        • 실해석학 Real Analysis (0)
      • 수치해석 Numerical Analysis (21)
      • 확률 및 랜덤프로세스 Random process (2)
      • 추론 & 추정 이론 Estimation (3)
      • 기타 (26)
        • 설계 프로젝트 System Design (8)
        • 논문작성 Writing (55)
        • 세미나 Seminar (2)
        • 생산성 Productivity (3)
      • 유학 생활 Daily (7)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    Zotero
    JAX
    딥러닝
    IEEE
    WOX
    Python
    Julia
    obsidian
    Numerical Analysis
    옵시디언
    텝스공부
    Linear algebra
    pytorch
    Statics
    에러기록
    서버
    우분투
    텝스
    matplotlib
    teps
    ChatGPT
    논문작성법
    고체역학
    수치해석
    MATLAB
    생산성
    LaTeX
    Dear abby
    인공지능
    논문작성
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
보통의공대생
[고등자동제어] Solution matrix via Inverse Laplace & Z-transform
상단으로

티스토리툴바