在matlab裏對控制系統分析時,不論是LSI(適合用Z變換分析)系統還是LTI(linear
time invariant)(適合S變換分析)系統。都相差無幾,只是調用函數略有不同。下面的列表包括了實施變換的重要命令。
residue(n, d) 計算多項式之比n(s)/d(s)的部分分式展開
lsim(SYS,
u) 計算/繪製系統SYS對輸入向量u的響應
step(SYS) 計算/繪製系統SYS的階躍響應
impulse(SYS) 計算/繪製系統SYS的衝擊響應
pzmap(n, d) 計算/繪製系統SYS的零極點圖
residuez(n, d) 計算多項式之比n(z)/d(z)的部分分式展開,寫成z-1的函數
dlsim(n,
d, u) 計算系統函數爲n(z)/d(z)的系統對輸入向量u的時間響應
dstep(n, d) 計算系統函數爲n(z)/d(z)的系統的階躍響應
dimpulse(n, d) 計算系統函數爲n(z)/d(z)的系統的衝擊響應
zplane(z, p) 由極點零點向量p和z繪製零極點圖
這些命令中很多都是對LTI系統的一些說明有效的。其中一個說明是關於傳遞函數的,"SYS"由"TF(num, den)"代替,"num"和"den"分別是系統函數分子分母的係數向量。對於以多項式之比的方式給定的連續或離散時間系統的系統函數,計算和繪製頻率響應由幾種有用的命令。
bode(n, d) 繪製一個CT系統的波德圖,系統函數是多項式比n(s)/d(s)
freqs(n, d) 計算系統函數爲n(s)/d(s)的一個CT系統的頻率響應
freqz(n, d) 計算系統函數爲n(z)/d(z)的一個DT系統的頻率響應
應用舉例
假設要對一個LTI系統進行分析,系統的傳遞函數如下:
5s
H(s) = --------------- (在這裏如果把s改成z,就成了LSI系統了。分析方法一樣,調用函數參看前邊的介紹)
s2 + 2s +101
clc,clear;
num = [5 0]; %Define numerator polynomial
den = [1 2 101]; %Define denominator polynomial
t = linspace(0, 10, 401); %Define a time vector
u = cos(2*pi*t); %Compute the cosine input function
figure(1);
[y, x] = lsim(num,
den, u, t); %Compute the cosine input function
plot(t, y, 'r', t, u, 'b'); %Plot the output in red and the input in blue
xlabel('Time(s)');
ylabel('Amplitude');
figure(2);
dlsim(num,den,u);%Compute
the cosine input function as LSI
參考資料均來自百度引擎,希望各位版友遇到問題不要盲目發問。要多搜索,我對控制系統分析也只是略知門徑。裏邊一些理論知識也至今未搞明白,matlab只是一個分析工具,會使用並不代表你就弄懂了其中的原理。所以建議專門做這個方向的版友先打好基礎,有了基礎再使用分析工具纔會得心應手、以不變應萬變!
2 關於Z變換
Z變換(Z-transformation)
對離散序列進行的一種數學變換。常用以求線性時不變差分方程的解。它在離散時間系統中的地位,如同拉普拉斯變換在連續時間系統中的地位。這一方法
( 即離散時間信號的Z變換)已成爲分析線性時不變離散時間系統問題的重要工具。在數字信號處理、計算機控制系統等領域有廣泛的應用。
離散時間序列 x(n) 的Z變換定義爲X(z)=x(n)z-n ,式中z=e,σ爲實變數,ω爲實變量,j=,所以z是一個幅度爲eб,相位爲ω的復變量。x(n)和X(z)構成一個Z變換時 。Z變換有如下性質:線性、移位、時域卷積、求和、頻移、調製
、微分以及乘 an 。 這些性質對於解決實際問題非常有用 。 已知Z變換X(z)求對應的離散時間序列稱爲Z變換的逆變換 。