2022-09-26|閱讀時間 ‧ 約 8 分鐘

【MATLAB】控制系統響應及穩態誤差

    系統響應是指系統針對其輸入而產生相對應的輸出結果
    針對系統不同的特性,可以進行以下分析:
    1.穩定度分析
    2.暫態與穩態分析
    3.時域與頻域分析
    當系統的響應無法達到目標時,此時才會再加上控制器進行設計,以讓系統能達
    到控制目標
    ============================================
    ■常用的三種控制訊號輸入系統,分別能得到:
    脈衝響應(A):可以使用impulse() 指令進行模擬
    步階響應(A/s):可以使用step() 指令進行模擬
    斜坡響應(A/s^2):使用上述之步階響應搭配積分器(1/s)處理
    拋物線響應(A/s^3)以此類推
    ■依照控制系統轉移函數之分母的階數,可以將常見的系統分為一階、二階及
    高階系統。
    一階與二階系統分別有其正規化的標準系統形式
    【Example】MATLAB 程式及響應圖
    ■阻尼比(Damping ratio)
    ζ1時,系統有兩個相異實數值解,此情況稱為過阻尼(overdamped)
    ζ=1時,系統有兩個相同的實數解,此情況稱為臨界阻尼(critally damped)
    0ζ1時,解為共軛複數,此情況稱為欠阻尼(underdamped)
    ζ=0 時,解為共軛虛根,此情況稱為無阻尼(undamped)
    ■二階系統S平面極點圖
    【Example】MATLAB 程式及響應圖
    =========================================
    控制系統的響應分暫態響應及穏態響應
    =========================================
    ■暫態響應圖定義:
    上升時間(rise time, tr ):系統由終值的10%上升至90%所需的時間
    延遲時間(delay time, td ):系統上升至終值的50%所需的時間
    安定時間(settling time, ts ):系統震盪小於終值特定百分比所需時間
    最大超越量(maximum percentage overshoot, Mo ):最大峰值百分比
    尖峰時間(peak time, tp ):最大峰值所在的時間點
    執行結果:
    在響應圖上--滑鼠右鍵單擊--Characteristics 也可顯示各點的數值
    ●穩態響應即其最終輸出,此終值又被稱為穩態值(Steady state value)
    ●在穩定狀態下,穩定輸出與控制輸入的差值定義為穩態誤差ess
    (Steady state error)
    【MATLAB 程式腳本 】
    %----TYPE ZERO SYSTEM-------------------------
    %CASE 1] TYPE ZERO SYSTEM WITH UNIT STEP INPUT
    num1=[10]; % Define numerator of G
    den1=conv([1 1],[1 10]); % Define denominator of G is(s+1)(s+10)
    disp('Type zero system is')
    G=tf(num1,den1)
    disp('Static position error constant kp is')
    kp=dcgain(G) %Find kp
    disp('Steady state error of kp, for 1 is')
    ess=1/(1+kp) %Find Steady State error
    %---------------------------------------------
    %CASE 2] TYPE ZERO SYSTEM WITH UNIT RAMP INPUT
    num2=conv([1 0],[10]); % Define numerator of s.G
    den2=den1; % Define denominator of s.G is(s+1)(s+10)
    sG=tf(num2,den2)
    disp('Static velocity error constant kv is')
    kv=dcgain(sG) %Find kp
    disp('Steady state error of kv, for 1 is')
    ess=1/(kv) %Find Steady State error
    %----------------------------------------------
    %CASE 3] TYPE ZERO SYSTEM WITH UNIT PARABOLIC INPUT
    num3=conv([1 0],num2); % Define numerator of s^2.G
    den3=den1; % Define denominator of s^2.G is(s+1)(s+10)
    s2G=tf(num3,den3)
    disp('Static Acceleration error constant ka')
    ka=dcgain(s2G) %Find ka
    disp('Steady state error of ka, for 1 is')
    ess=1/(ka) %Find Steady State error
    %-----------------END-------------------------
    【計算結果】
    Type zero system is
    Transfer function:
    10
    ---------------
    s^2 + 11 s + 10
    Static position error constant kp is
    kp =
    1
    Steady state error of kp, for 1 is
    ess =
    0.5000
    Transfer function:
    10 s
    ---------------
    s^2 + 11 s + 10
    Static velocity error constant kv is
    kv =
    0
    Steady state error of kv, for 1 is
    ess =
    Inf
    Transfer function:
    10 s^2
    ---------------
    s^2 + 11 s + 10
    Static Acceleration error constant ka
    ka =
    0
    Steady state error of ka, for 1 is
    ess =
    Inf
    使用MATLAB 腳本(script)計算如下
    =============================================
    【Example】控制系統方塊圖,若可接受的系統穩態誤差值為10%,
    請問 K值為何?
    【Example】控制系統方塊圖的穏態誤差屬於那一類型? 在該類型的誤差下,
    系統穩定誤差值為何?
    分享至
    成為作者繼續創作的動力吧!
    © 2024 vocus All rights reserved.