Try   HackMD

系動 Part 1 : 簡介 + 數學基礎

Chapter 1 - Intro 2 System Dynamics

"Dealing with the mathematical modeling of dynamics systems and response analysis of such system with view toward understanding the dynamics native of each system's permance."

簡單來說,系動這門課,就是透過觀察某個系統對某些輸入的反應,去了解系統的特性。了解之後再去做改良(像是控制等等以下省略萬字的東西)。

Def : A system is called dynamic if its present output depends on past input. Otherwise is called static.

「動態」表示系統當下的輸入,會受到過去狀態的影響; 反之,如果當下的輸入不受到過去的影響,那就叫做「靜態」。

靜態系統只要當下輸入固定,輸出也就固定了。但動態系統未必(因為會被過去影響)。所以也可以換種說法:輸入不變,但是輸出會變的系統,一定是動態系統。

舉例:理想彈簧受力:

F=kx

因為這個系統受力只與當下的位移有關,因此是個靜態系統。但若為真實狀況的彈簧,彈簧受力後的形變需要時間,以及需要考慮彈簧質量等等。在這種考量下,彈簧是個動態系統。

上面這個例子可以知道,在建立系統模型的時候,系統模型的精確程度,與數學的複雜程度往往是難以兩全的。

Equations

系統的統御方程式可能分成下面幾種:

  1. Linear time invariant system(LTI):e.g.

    x+5x+10x=f

  2. Linear time variant :

    x+(1cos2t)x=0

  3. Nonlinear

    2

下面會介紹一些處理系統時常常做的事情(不過還滿介紹性的)。

Modeling

幫系統找出適當的數學模型。通常步驟如下:

  1. Draw s schematic diagram and define variables
  2. Using physcal laws, write equations.
  3. Model validation

這其實比較介紹性。

Analysis

System analysis means the integration under specific conditions of the performance of a system whose mathematical model is known

Synthesis

the use of an explicit procdure to find a system that will perform in a specific way.

Objective of the course

  1. To build mathematical models that closely represent behaviors of physical systems.
  2. T odevelop system responses to various inputs so that one can effectively analyze, design, and control dynamics systems.

Chpter 2 The Laplace Transform

Complex numbers, variables, and functions.

前面左轉工數或是 一2 三34 ㄏㄏ。

Laplace Transform

L[f]=0f(t)estdt

L1[f]=12πj0jω0+jωF(s)estds

其中一個好處是可以把微分變成代數運算。注意 Laplcace Transform 積分要收斂,轉換才存在,才可以使用。阿要怎樣才會收斂?只要:

  1. f(t) 在 t > 0 是 piecewise continuous

  2. f(t) 的 Order 比指數小:

    f(t)=O(et)

另外, Laplace Transform 未必全域均收斂,因此

σc : abscissca of convergence

eσt|f(t)|0σ>σc
eσt|f(t)|σ<σc

e.g. :

不存在的狀況:

f(t)=et2

存在的狀況:

f(t)={et2x[0,T]0, otherwise

一些函數的 Laplace Transform

顆顆懶得寫自己去查。

L[eαt]=1s+α

L[1(t)]=1s

L[sinωt]=ωs2+ω2

L[cosωt]=ss2+ω2

Translate Function

主要是小心平移的時候注意前面值的行為,不要平移錯。另外 Laplace 平移的性質是:

L[f(ta)1(ta)]=easF(s)

主要是注意注意平常寫 Laplace 時因為都是從 0 開始,就像是前面黏一個 step function。所以當平移的時候,那個 step 也要跟著平移。

Pulse function

考慮函數:

f(t)={At0  ,t[0,t0]0, otherwise

做出 Laplace Tranform 會是:

L[f]=At0s(1est0)

可注意在 time domain 多一個平移,在 s domain 會多一個 decay 的項。

Impulse

上面那個東西讓

t0。因此:

L[limt00f(t)]=limt00(At0s(1est0))=A

證明是用羅必達上下微分,不過泰勒取第一項展開更快:

At0s(1est0)=At0s(1(1+st01!+(st0)22!+...))A as t00

A=1,這東西就是 Delta Function。

Delta Function 的微分

f(t)=1a21(t)2a21(ta)

Laplace Transform 為:

1a2s(12eas+e2as)

當 a 趨近 0 時,可發現:

lima0F(s)=s

這裡其實用泰勒展開做極限比較順。注意這個東西會比剛剛 impulse 的 Laplace Transform 多出一個 s。不過這也很合理, s 有微分的意義。

三角波

湊出這個函數的方法是:

  1. 先湊一個方波脈衝
    1(t)1(ta)
  2. 再湊一個 ramp:
    bat1(t)
  3. 乘起來把那一段 ramp 過濾出來:
    bat1(t)bat1(ta)

對這東西做 Laplace Transform

f(t)=bat1(t)bat1(ta)=bat1(t)ba(ta)1(ta)b1(ta)F(s)=1s2eass2beass

Lower Limit of Laplace transform

零正或零負有沒有影響?

L[f]=0f(t)estdt
L[f]=0+f(t)estdt

關鍵在於差一個 impulse。這在討論 impulse 的時候會有出入,如果下限是選取零正的話,那麼 impulse 就不會被包到。

更多性質:ㄏㄏ自己去查。

  • 微分/積分:

    L[f(n)(t)]=snF(s)(sn1f(0)+sn1f(1)(0)+...fn1(0))

    L[f(t)]=F(s)s+f(t)dt|t=0s

    Observation:

    觀察:

    any(n)+an1y(n1)+...+a1y

    只有最高次項:

    any(n)

    會噴出:

    sn1

    係數是:

    anf(0)sn1

    只有前兩個最高的項:

    any(n)+an1y(n1)

    會噴出:

    sn2

    係數是:

    anf(1)(0)+an1f(0)

    所以就發現,係數有點像是:

    {ini[n1]=[f(n1)(0),f(n2)(0),...f(1)(0), f(0)]coef[n]=[an,an1...a2,a1]

    做一個有點像 Convolution 的計算。

  • 終值定理
    如果

    f(t)
    t
    收斂的話,則:

    limtf(t)=lims0sF(s)
    如果不收斂的話就會死。工數自控都有這個教訓。

  • 初值定理

    limt0f(t)=limssF(s)

  • 週期函數:

    L[f(t)]=0nT(n+1)Tf(t)estdt=nenTs0Tf(τ+nT)esτdτ=0Tf(τ+nT)esτdτnenTs=(0Tf(τ+nT)esτdτ)nenTs=enTs1eTs

Inverse Laplace Transform

考慮一個二階系統:

mx+cx+kx=F(s)

在初始提件:

{x(0)=x0x(0)=x0

其響應為:

X(s)=(ms+c)x0+mx0ms2+cs+k+F(s)ms2+cs+k

接下來帶點數字作觀察:

觀察 1 : 系統輸出的分類

假定系統現在長這樣:

{[m,c,k]=[1,4,3][x0,x0]=[1,0]F(s)=2s

因此,響應變成:

X(s)=s+4s2+4s+3+2(s2+4s+3)s

將這兩項各自做分解:

X(s)=(12s+3+32s+11.)+(13s+3+1s+12.+23s3.)

可以觀察到:

  1. 初始條件會對系統暫態造成影響(1. 的部分),但是對穩態(3. )並沒有影響。
  2. 輸入送進系統之後,輸出除了有 DC 的穩態輸出(3. )之外,還多了一些跟系統本身被激發出的反應(2. ),但這些反應只會對暫態有貢獻,對穩態沒有影響。

所以簡單來說,就是:

{{

觀察 2 : Heaviside's Formula

現在把系統變成:

{[m,c,k]=[1,4,4][x0,x0]=[1,0]F(s)=2s

帶入剛剛那坨柿子,得到:

X(s)=s+4(s+2)2+2s(s+2)2

看到 double pole 要做分解,可能會想土炮的用:

a(s+2)2+b(s+a)

不過,也可以考慮用 Heaviside's Formula

{P0(s)n=1nPk(s+a)kPni=1i!didsi[(s+a)nP0(s)(s+a)n]

其實等價於 Residue Theorem 版本的 Inverse Laplace Transform。

觀察 3 : 初始條件 = 輸入

由剛剛的討可以發現:初始調件可以當一個輸入。這對系統的詮釋很有幫助。比如說有一個系統長這樣:

X(s)=s(5s2s+5)(s2+1)(2s2+s+1)=5s3+5sss2+12s2+s+1=5s12s2+s+1+1s2+12s2+s+1

對比剛剛二階系統的響應形式:

(ms+c)x0+mx0ms2+cs+k+F(s)ms2+cs+k

可知該系統能夠視為:

{x0=5x0=74f=sin(t)m=2c=1k=1

的二階系統。

所以,本來以為是一個四階系統,現在可以看成一個有某個輸入 & 初始條件的二階系統。是一件方便的事。

觀察 4 : 已知的輸出湊出未知的輸出

舉例來說已知一個二階系統:

ωn2s2+2ζs+ωn2

的 step response 是:

y1(t)=1eζωntsin(ωt+θ)sinθ

假設現在想求 impulse response ,可以直接對 transfer function 做垃氏轉換。不過這裡可以發現兩個只差一個 s,所以直接把:

dy1dt=ωnβsin(ωθ)

就可以得到 impulse response。

有更快的方法嗎?有的。直接配方

G(s)

ωn2s2+2ζs+ωn2=ωn2(s+ζωn)2+1ζ22ωn2=ωnβ1ζ2ωn(s+ζωn)2+1ζ22ωn2

然後就可以瞬間看出右邊那坨東西是 sin 的長相,直接做拉式轉換即得。

Numerator Dynamic

加一個 zero 進去會有什麼效果。先講結論:影響暫態行為。因為直覺上來說,加 zero 就是加一個原先響應 + 原來響應的微分嘛。

例子:二階系統加 Zero

舉例來說,把一個二階系統加上一個 zero

ωn2s2+αζs+ωn2s+ζωnαζωn


s¯=sωn

得到:

1s¯2+2ζs¯+1+1αζs¯1s¯2+2ζs¯+1

這剛剛印證了剛剛的推測。另外,也可以發現 zero 越近實軸,微分項影響越大。

另外一個例子:

G1(s)=6s2+10s+16=1s+2+1s+8

G1(s)=6s+6s2+10s+16=1s+2+7s+8

可以發現系統的 mode 都不變,只有各個 mode 的係數改變了。

例子:Damper Location

差別是 Damper 是浮動的或是接地的。

系統 1 的轉移函數為:

cs+kms2+cs+k

系統 2 的為:

kms2+cs+k

把題畫完之後可以發現有 zero 的系統會讓響應噴一波,也驗證剛剛的推測。