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

2022/09/26閱讀時間約 7 分鐘
系統響應是指系統針對其輸入而產生相對應的輸出結果
針對系統不同的特性,可以進行以下分析:
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】控制系統方塊圖的穏態誤差屬於那一類型? 在該類型的誤差下,
系統穩定誤差值為何?
為什麼會看到廣告
    52會員
    114內容數
    1.占星軟體及運用 2.各種推運法(Transit / 次限 / 主限 / Solar Arc / 法達星限 / 中點占星等)
    留言0
    查看全部
    發表第一個留言支持創作者!