시스템모델링제어 : 상태공간모델과 선형화

JB·2022년 5월 22일
0
post-custom-banner
시스템모델링제어 Chapter2. State-Space Models & Linearization

State-Space Model

  • State Variables : Dynamic System 에서 상태변수는 최대한 적은 변수로 상태를 정의하는 것이다.
  • State Space Model : 1차 미분방정식들의 모임으로 표현되는 n차 linear ODE

State Space Model 예시


y[3]+8y¨+9y˙+7y=uy^{[3]} + 8\ddot{y} + 9\dot{y} + 7y = u

Define

x1=yx2=y˙x3=y¨x_1 = y\\x_2 = \dot{y} \\ x_3 = \ddot{y}

Initial Condition

y(0)=y0y˙(0)=y0˙y¨(0)=y0¨y(0) = y_0\\ \dot{y}(0) = \dot{y_0} \\ \ddot{y}(0) = \ddot{y_0}

x1˙=x2x2˙=x3x3˙=8x39x27x1+u\dot{x_1} = x_2 \\ \dot{x_2} = x_3 \\ \dot{x_3} = -8x_3 - 9x_2 - 7x_1 + u

행렬로 변환

[x1˙x2˙x3˙]=[010001798][x1x2x3]+[001]u\begin{bmatrix}\dot{x_1}\\ \dot{x_2} \\ \dot{x_3} \end{bmatrix} = \begin{bmatrix} 0 & 1 & 0\\ 0 & 0 & 1 \\ -7 & -9 & -8 \end{bmatrix} \begin{bmatrix}x_1\\ x_2 \\ x_3 \end{bmatrix} + \begin{bmatrix}0\\ 0 \\ 1 \end{bmatrix} u

x 앞의 상수 행렬은 A행렬, u앞의 상수 행렬은 B행렬

y=[101][x1x2x3]y = \begin{bmatrix} 1 & 0 & 1\end{bmatrix}\begin{bmatrix}x_1\\ x_2 \\ x_3 \end{bmatrix}

x앞에 붙은 행렬은 C행렬

따라서 First-Order Differential Equation 은 다음과 같이 표현할 수 있다.

x˙=Ax+Buy=Cx\dot{x} = Ax + Bu\\y = Cx

x(0)는 벡터 혹은 single valued 일 수 있다.

Generic nth-order ODE 는 다음과 같은 형태로 표현할 수 있다.

x˙(t)=Ax(t)+Bu(t)y(t)=Cx(t)+Du(t)IC:x(0)=x0\dot{x}(t) = Ax(t) + Bu(t)\\y(t) = Cx(t) + Du(t) \\ IC : x(0) = x_0

  1. y(t) : 미래 output을 예상한 것 : 추정값
  2. x(t) : time = t 에서의 상태. input이 걸리는 동안의 모든 정보를 포함

→ State-Space Model 은 n차 미분방정식으로 표현 가능. n개의 서로 연결된 1차 미분방정식 집합체가 벡터로 표현 가능함.

State Space Model for RLC Circuit 예시

LCd2Vcdt2+RCdVcdt+Vc=ViLC\frac{d^2V_c}{dt^2} + RC\frac{dV_c}{dt} + V_c = V_i

d2Vcdt2+RLdVcdt+1LCVc=1LCVi\frac{d^2V_c}{dt^2} + \frac{R}{L}\frac{dV_c}{dt} + \frac{1}{LC}V_c = \frac{1}{LC}V_i

I.C={Vc(0)=Vc,0Vc˙(0)=i0cI.C = \begin{cases}V_c(0) =V_{c,0}\\\dot{V_c}(0) =\frac{i_0}{c}\end{cases}

Define

x1=Vcx2=Vc˙x_1 = V_c \\ x_2 = \dot{V_c}

x1˙=x2x2˙=Vc¨=RLx21LCx1+1LCVi\dot{x_1} = x_2 \\ \dot{x_2} = \ddot{V_c} = -\frac{R}{L}x_2 - \frac{1}{LC}x_1 + \frac{1}{LC}V_i

x˙=[x1˙x2˙]=[011LCRL][x1x2]+[01LC]Viy=[10][x1x2]\therefore \dot{x} = \begin{bmatrix}\dot{x_1}\\ \dot{x_2}\end{bmatrix} = \begin{bmatrix}0 & 1\\ -\frac{1}{LC} & -\frac{R}{L}\end{bmatrix}\begin{bmatrix}x_1\\ x_2\end{bmatrix} + \begin{bmatrix}0\\ \frac{1}{LC}\end{bmatrix}V_i\\y = \begin{bmatrix}1 & 0\end{bmatrix}\begin{bmatrix}x_1\\ x_2\end{bmatrix}

Nonlinear Mathematical Models

선형 ODE 모델로 만들 수 있는 비선형 모델을 배움. 대부분의 모델은 비선형 term을 가지고 있고, linearizing 또는 trimming 하여 단순화함.

single input을 가지는 n차 미분방정식의 state-space 모델을 다음과 같이 표현한다.

x˙=f(x,u)y=h(x,u)(i.c)    x(0)=x0\dot{x} = f(x, u)\\y = h(x, u) \\ (i.c) \ \ \ \ x(0) = x_0

Equilibrium Points

모든 상태 변수에 대하여 변화량이 없는 평형상태를 “Equilibrium Point”라고 한다.

f(xˉ,uˉ)=0f(\bar{x}, \bar{u}) = 0

  1. x(0)=xˉx(0) = \bar{x} : system initialization
  2. u(t)=uˉ       t0u(t) = \bar{u} \ \ \ \ \ \ \ \forall t≥0

이때 solution x(t)는 다음을 만족하며 xˉ\bar{x}상태를 유지한다.

x(t)=xˉ       t0x(t) = \bar{x}\ \ \ \ \ \ \ \forall t≥0

Linearization

Non-linear System이 Equilibrium Point에 근접하게 작동한다면 선형 미분 방정식으로 예측이 가능하다! 이 과정에서 Jacobian Linearization 이 필요함.

Taylor Series Expansion

함수 f가 R→R 일 때, xˉ\bar{x}에 대하여 다음과 같이 표현할 수 있다.

f(x)f(xˉ)+dfdx(xˉ)(xxˉ)+HigherOrderTemsf(x) \approx f(\bar{x}) + \frac{df}{dx}(\bar{x})\cdot(x-\bar{x}) + Higher Order Tems

상태변수가 1개인 비선형 시스템은 다음과 같이 표현할 수 있다.

x˙=f(x,u)\dot{x} = f(x, u) (*1)

Assumption (xˉ,uˉ)(\bar{x}, \bar{u}) 는 equilibrium point 이다 : f(xˉ,uˉ)=0f(\bar{x}, \bar{u}) = 0

  • 이 시스템이 x(0)=xˉx(0) = \bar{x} 에서 시작하고
  • input u(t)=uˉ      u(t) = \bar{u} \ \ \ \ \ \ \forall t0t≥0 \cdots (input이 바뀌지 X)
  • (*1)의 솔루션은 x(t)=xˉ     t0x(t) = \bar{x} \ \ \ \ \ \forall t≥0 이다 \cdots (초기조건에 머묾)

Question 만약 x(0)x(0)xˉ\bar{x} 에 근접하게 접근하고, 입력 u(t)u(t)uˉ\bar{u}에 근접하게 접근한다면?

sol1) (*1)을 그냥 풂 → 비선형 시스템이라 복잡함ㅠㅠ

sol2) 선형미분방정식을 유도한다! → 비선형 미분방정식 (*1)의 근사치를 제공함!!!

Conclusion

(xˉ,uˉ)(\bar{x}, \bar{u}) 에 근접한 어떤 점에서 다변수(multi-variabl) 테일러급수를 통해 비선형함수의 근사치를 계산할 수 있다.

f(x,u)f(xˉ,uˉ)+dfdx(xˉ)(xxˉ)+dfdu(uˉ)(uuˉ)f(x, u) \approx f(\bar{x}, \bar{u}) + \frac{df}{dx}(\bar{x})\cdot(x-\bar{x})+\frac{df}{du}(\bar{u})\cdot(u-\bar{u})

(뒤의 Higher Order Terms들은 복잡하므로 다 날림. 그럼에도 불구하고 근사치를 계산할 수 있다)

이 때, (xˉ,uˉ)(\bar{x}, \bar{u}) 는 Equilibrium point 이므로 f(xˉ,uˉ)f(\bar{x}, \bar{u})=0이다.

f(x,u)=dfdx(xˉ)(xxˉ)+dfdu(uˉ)(uuˉ)\therefore f(x, u) = \frac{df}{dx}(\bar{x})\cdot(x-\bar{x})+\frac{df}{du}(\bar{u})\cdot(u-\bar{u})

x˙=[dfdx(xˉ,uˉ)](xxˉ)+[dfdu(xˉ,uˉ)](uuˉ)\therefore \dot{x} = [\frac{df}{dx}(\bar{x}, \bar{u})]\cdot(x-\bar{x})+[\frac{df}{du}(\bar{x}, \bar{u})]\cdot(u-\bar{u}) (*2)

따라서 (*)식을 다음과 같이 단순화시킬 수 있다.

A=dfdx(xˉ,uˉ)B=dfdu(xˉ,uˉ)A = \frac{df}{dx}(\bar{x}, \bar{u}) \\ B = \frac{df}{du}(\bar{x}, \bar{u})

δx(t)=x(t)xˉδu(t)=u(t)uˉ\delta_{x}(t) = x(t) - \bar{x} \\ \delta_{u}(t) = u(t) - \bar{u}

ddt(δx(t))=δ˙x(t)=ddt(x(t)xˉ)=x˙(t)    \frac{d}{dt}(\delta_{x}(t)) = \dot{\delta}_{x}(t) = \frac{d}{dt}(x(t)-\bar{x})= \dot{x}(t) \ \ \ \ \cdots (*2) 에서 확장!

δ˙x(t)=x˙(t)=Aδx(t)+Bδu(t)\dot{\delta}_{x}(t) = \dot{x}(t) = A\delta_x(t) + B\delta_u(t) (*3)

→ Linear State-Space Model : 선형 상태공간 모델

3은 비선형 방정식 (1)을 근사 예측할 수 있게 한다. 단, (xˉ,uˉ)(\bar{x}, \bar{u})에 근접해야한다는 조건이 있음

x(t)는 x(0)에서 시작되고 input(u)를 가지는 비선형모델 (*1)의 솔루션이다.

δx(t)\delta_{x}(t)δx(0)=x(0)xˉ\delta_{x}(0) = x(0) - \bar{x}에서 시작하고 input δu(t)=u(t)uˉ\delta_{u}(t) = u(t)-\bar{u}를 가지는 선형모델인 (*3)의 솔루션이다.

Linear Solution은 Non-Linear Solution을 근사화해준다. 단, Equilibrium point 의 작은 오차범위에서 유효하다.
x(t)xˉ+δx(t)x(t) \approx \bar{x} + \delta_x(t)

Generalization

n-state System일 때 Linear State Model을 얻기 위해 일반화함!

output equation을 다음과 같이 쓸 때 output 또한 linearization 가능함.

x˙=f(x,u)y=h(x,u)\dot{x} = f(x, u) \\ y = h(x, u)

yˉ=h(xˉ,uˉ)\bar{y} = h(\bar{x}, \bar{u}) 일때 δy(t)=y(t)yˉ\delta_y(t) = y(t)-\bar{y} 이라고 하면, equilibrium output은 다음과 같이 근사화된다.

δy(t)[xh(xˉ,uˉ)]δx(t)+[uh(xˉ,uˉ)]δu(t)\delta_y(t) \approx [\bigtriangledown_xh(\bar{x}, \bar{u})]\delta_x(t) + [\bigtriangledown_uh(\bar{x}, \bar{u})]\delta_u(t)

C=[xh(xˉ,uˉ)]D=[uh(xˉ,uˉ)]C = [\bigtriangledown_xh(\bar{x}, \bar{u})] \\ D = [\bigtriangledown_uh(\bar{x}, \bar{u})]

δ˙x(t)=Aδx(t)+Bδu(t)    δy(t)=Cδx(t)+Dδu(t\therefore \dot{\delta}_{x}(t) = A\delta_x(t) + B\delta_u(t) \\ \ \ \ \ \delta_{y}(t) = C\delta_x(t) + D\delta_u(t)

Transfer Function

n차 선형미분방정식을 Laplace Transform 을 이용하여 표현할 수 있다.

전달함수 G(s)는 선형미분방정식과 관련된 전달함수이며 미분방정식을 다르게 표현한 것이다.

예시) 6y¨+9y˙+2y=4u˙+8u6\ddot{y} + 9\dot{y} + 2y = 4\dot{u} + 8u

G(s)=4s+86s2+9s+2G(s) = \frac{4s + 8}{6s^2 + 9s + 2}

Summary

Nonlinear ODE —(Jacobian : Linearization) —> Linear ODE —(Laplace Transform) —> Transfer Function

  • Nonlinear ODE 는 Equilibrium Point 에 근접할 때 선형미분방정식으로 근사치를 예상할 수 있다.
profile
자율주행 이동체를 배우고 있는 JB입니다.
post-custom-banner

0개의 댓글