版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上數(shù)字控制器的模擬化設(shè)計目錄 專心-專注-專業(yè)第一章 模擬化設(shè)計基礎(chǔ) 數(shù)字控制系統(tǒng)的設(shè)計有兩條道路,一是模擬化設(shè)計,一是直接數(shù)字設(shè)計。如果已經(jīng)有成熟的模擬控制器,可以節(jié)省很多時間和部分試驗費用,只要將模擬控制器離散化即可投入應(yīng)用。如果模擬控制器還不存在,可以利用已有的模擬系統(tǒng)的設(shè)計經(jīng)驗,先設(shè)計出模擬控制器,再進行離散化。 將模擬控制器離散化,如果用手工進行,計算量比較大。借助數(shù)學(xué)軟件MATLAB控制工具箱,可以輕松地完成所需要的全部計算步驟。如果需要的話,還可以使用MATLAB的SIMULINK工具箱,進行模擬仿真。第一節(jié) 步驟步驟1 模擬控制器的處理 在數(shù)字控制系統(tǒng)中
2、,總是有傳輸特性為零階保持器的數(shù)模轉(zhuǎn)換器(DAC),因此,如果模擬控制器尚未設(shè)計,則應(yīng)以下圖的方式設(shè)計模擬控制器,即在對象前面加上一個零階保持器,形成一個新對象,然后針對這個新對象求模擬控制器D(s)。事實上,模擬控制器一般是已經(jīng)設(shè)計好的,無法或不方便更改了,離散化后的系統(tǒng)只好作為近似設(shè)計了。 然而,按照上述思路,可否將已有的控制器除以一個零階保持器再離散化呢?還沒有這方面的實際經(jīng)驗。以下假設(shè)選定的G(s),D(s)如下圖,而且不對G(s)作添加保持器的預(yù)處理。步驟2 離散化模擬控制器 離散化模擬控制器之前,先要確定離散化算法和采樣時間。離散化算法有好幾種,第二章中有詳細的論述,現(xiàn)假定采用雙線
3、性變換法。確定采樣時間,需要考慮被控對象的特性,計算機的性能,以及干擾信號的影響等,初步可按采樣時間T<0.1Tp,Tp為被控對象時間常數(shù),或T=(0.1250.25),為被控對象的純滯后,初步確定后再綜合平衡其它因素,當(dāng)然這需要一定的經(jīng)驗,現(xiàn)在假定取0.05秒。 假設(shè)模擬控制器為,在MATLAB中,用c2d函數(shù)進行離散化,過程為:ds=zpk(-2,-15,8) %建立模擬控制器的s傳遞函數(shù)dz=c2d(ds,0.05,'tustin') %將模擬控制器按tustin方法轉(zhuǎn)換為z傳遞函數(shù)的數(shù)字控制器dz=c2d(ds,0.05,'tustin') %將模
4、擬控制器按tustin方法轉(zhuǎn)換為z傳遞函數(shù)的數(shù)字控制器 轉(zhuǎn)換結(jié)果為:步驟3 檢驗數(shù)字控制器的性能 數(shù)字控制器的性能項目比較多,我們僅以直流增益,頻率特性,零極點分布說明。 直流增益 dcgain(dz)返回直流增益1.0667 頻率特性 bode(ds,'r',dz,'g')伯德圖,見下頁左圖 零極點分布 pzmap(dz)零極點分布圖,見下頁右圖步驟4 離散化控制對象 為了進行模擬仿真,需要對控制對象進行離散化,由于步驟1所說的原因,應(yīng)把被控對象視為零階保持器與原對象的串連,即應(yīng)對進行離散化,這時可在c2d函數(shù)中使用零階保持器(zoh)方法,如果認為不需要添加
5、零階保持器,即直接對G(s)離散化,則應(yīng)在c2d函數(shù)中使用沖擊響應(yīng)不變法(imp)。 借用零階保持器(zoh)方法,將對象帶一階保持器離散化的過程如下: . %模擬控制器D(s)轉(zhuǎn)換為D(z)的過程見前gs=zpk( ,0,-2,20) %建立對象的s傳遞函數(shù)g1z=c2d(gs,0.05,'zoh') %借用c2d函數(shù)進行帶零階保持器的對象的離散化 轉(zhuǎn)換結(jié)果為:步驟5 模擬仿真 求離散系統(tǒng)的閉環(huán)傳遞函數(shù)和連續(xù)系統(tǒng)的閉環(huán)傳遞函數(shù)。 離散系統(tǒng)的閉環(huán)傳遞函數(shù)為: 連續(xù)系統(tǒng)的閉環(huán)傳遞函數(shù)為: 用MATLAB算TRCZ與TRCS: trcz=dz*g1z/(1+dz*g1z)trcs=
6、ds*gs/(1+ds*gs) 結(jié)果為: 用MATLAB函數(shù)STEP畫階躍響應(yīng)圖形:hold on %圖形保持step(trcs,'r',2) %畫連續(xù)系統(tǒng)的階躍響應(yīng)圖,紅色,終止時間為2秒step(trcz,'b',2) %畫離散系統(tǒng)的階躍響應(yīng)圖,蘭色,終止時間為2秒 響應(yīng)圖形為:步驟6 求數(shù)字控制器的時域表達式 上面已經(jīng)求出, 連續(xù)傳遞函數(shù)的tustin離散式為 ,或 。 對上式取z反變換,得時域表達式,根據(jù)此式就可以寫出計算的程序代碼來了。 除上述步驟之外,在編寫程序代碼時,還需要考慮幾個問題: ADC位數(shù) ADC位數(shù)是一個硬件問題,在系統(tǒng)設(shè)計時,就應(yīng)該結(jié)
7、合控制算法,仔細分析ADC位數(shù)對控制精度的影響。 數(shù)據(jù)類型 在控制算法中有3種數(shù)據(jù)類型可以采用:無符號整數(shù),定點數(shù),浮點數(shù)。我們知道,無符號整數(shù)運算既是最簡單和速度最快的運算,又是定點數(shù)運算和浮點數(shù)運算的基礎(chǔ)。在數(shù)據(jù)動態(tài)范圍比較小的情況下,應(yīng)盡可能用無符號整數(shù)運算代替定點數(shù)運算和浮點數(shù)運算。 浮點數(shù)運算是一整套運算,包括加,減,乘,除,對階,規(guī)格化,溢出處理等一系列子程序,使用浮點數(shù)的程序,將占用比較多的代碼空間和比較長的運行時間。不論使用匯編語言還是c語言,對于是否使用浮點數(shù)運算,都應(yīng)進行比較仔細的酌斟。 數(shù)值計算誤差 數(shù)值計算引入的誤差有3個方面,一是定點數(shù)字長不夠或者浮點數(shù)有效數(shù)字過少,
8、一是兩個相近的數(shù)相減,一是加減乘除次數(shù)過多。在程序設(shè)計中,應(yīng)優(yōu)化算法以避免計算誤差的引入。第二節(jié) 在MATLAB中離散化 1. 建立s降冪傳遞函數(shù) 建立多項式型s降冪傳遞函數(shù) 方法1. sys = tf(num,den) 方法2. s = tf('s'),再令sys = f(s) 例: 已知,用tf函數(shù)建立多項式型s降冪傳遞函數(shù),若G0以零極點形式給出,即已知,仍可用tf函數(shù)建立多項式型s降冪傳遞函數(shù),但需用多項式乘法函數(shù)conv配合,G0=tf(conv(3,0.5 1),conv(conv(1 0,1 1),0.25 1) 建立零極點型s傳遞函數(shù) 方法1. sys = zp
9、k(z,p,k) 方法2. s = zpk('s'),再令sys = f(s)。 2. 傳遞函數(shù)的轉(zhuǎn)換 將任意形式的s傳遞函數(shù)轉(zhuǎn)換為s降冪傳遞函數(shù)sys = tf(sys) 將任意形式的s傳遞函數(shù)轉(zhuǎn)換為s零極點傳遞函數(shù)sys = zpk(sys) 3. 建立z傳遞函數(shù) 將連續(xù)傳遞函數(shù)轉(zhuǎn)換為離散傳遞函數(shù) sysd = c2d(sysc,t,method) 建立多項式形式的z傳遞函數(shù) 方法1. sys = tf(num,den,Dt) 方法2. z = tf('z',Dt),再令sys = f(z) 建立零極點z傳遞函數(shù) 方法1. sys = zpk(z,p,k,D
10、t) 方法2. z = zpk('z',Dt),再令sys = f(z) 4. 建立z-1格式的傳遞函數(shù) 直接根據(jù)分子和分母建立z-1格式的傳遞函數(shù)sys_z = filt(num,den,Dt) 當(dāng)已有多項式形式的z降冪傳遞函數(shù)時,按以下步驟: 取z降冪傳遞函數(shù)a的分子多項式系數(shù)num,den = tfdata(sys_s,'v') 建立z-1格式的傳遞函數(shù)sys_z = filt(num,den,Dt) 5. 將多項式形式的高階z-1降冪傳遞函數(shù)轉(zhuǎn)換為并聯(lián)傳遞函數(shù),按以下步驟: “手工”將z-1降冪傳遞函數(shù)a改寫成多項式形式的z降冪傳遞函數(shù)b。 取z降冪傳遞
11、函數(shù)b的分子多項式系數(shù)num和分母多項式系數(shù)den。 利用residue函數(shù)取z降冪傳遞函數(shù)b的分項分式,an ad ak=residue(num,den)。 分項結(jié)果可能出現(xiàn)共軛復(fù)數(shù),在這種情況下應(yīng)將含有共軛復(fù)數(shù)的分式合并成二次有理質(zhì)分式。 根據(jù)分項結(jié)果手工寫出z降冪多項式形式的并聯(lián)表達式。 “手工”將z降冪多項式形式的并聯(lián)表達式改寫成z-1降冪多項式形式的并聯(lián)表達式。 “手工”對z-1降冪多項式形式的并聯(lián)表達式中的每一個分式項降階,即將每一個分式項變形,使得分式項的分子的階次比分母的階次低1階,變形完畢再將全部常數(shù)項合并。 舉例 設(shè)有z-1降冪傳遞函數(shù) 改寫成z降冪傳遞函數(shù) , 取分項矢量
12、 an ad ak=residue(nz,dz) 得 an=0.5101 -0.1971 ad=1.0000 0.2700 ak=0.1 手工寫分項分式 , 令 , 令 又令 故 驗證 實際上,大多數(shù)數(shù)字控制器的傳遞函數(shù)都是一階或者二階的,所以需要分解的并不是很多。 6. 將高階z-1降冪傳遞函數(shù)生成串聯(lián)傳遞函數(shù)使用zpk函數(shù) sys_zpk= zpk(sys_pl)零極點的概念是相對于z而不是相對于z-1說的,但對于以z-1為變量的降冪傳遞函數(shù)sys_pl來說,仍然可以用zpk(sys_pl)生成以z-1為變量的因式積形式傳遞函數(shù),權(quán)且也稱為零極點形式。zpk函數(shù)對于z降冪傳遞函和z-1降冪
13、傳都能得到合理的結(jié)果,原因是zpk函數(shù)的作用就是把分子多項式和分母多項式分別進行因式分解。第三節(jié) 延時環(huán)節(jié)e-Ts的處理 在建立s傳遞函數(shù)的LTI模型時,對于延時環(huán)節(jié)e-T s,可按如下方法處理: 1. 在tf函數(shù)中使用屬性inputdely或者iodely ,例如:>> tf(1 -1,1 3 5,'inputdelay',0.35)將返回以下形式的傳遞函數(shù) s 1exp(-0.35*s) * - s2 + 3 s + 5使用這個方法不能建立形如的傳遞函數(shù),因為帶延時的傳遞函數(shù)不能與不帶延時的傳遞函數(shù)相加,但可以使用c2d進行離散化,但要求延時時間t必須是采樣時間
14、Dt的整數(shù)倍,若不是整數(shù)倍,則在轉(zhuǎn)換時不理會延時環(huán)節(jié),例如:用tf函數(shù)建立2個傳遞函數(shù),主體部分相同,但一個無輸入延時,一個有輸入延時0.35s, >> a=tf(1 -1,1 4 5) s - 1 - s2 + 4 s + 5 >> a1=tf(1 -1,1 4 5,'iodelay',0.35) s - 1 exp(-0.35*s) * - s2 + 4 s + 5 若采樣時間為0.05,因為延時時間是采樣時間的整數(shù)倍,轉(zhuǎn)換結(jié)果的主體部分完全一樣: >> c2d(a,0.05,'imp') z2 - 1.039 z + 9
15、.146e-018 - sampling time: 0.05 z2 - 1.807 z + 0.8187 >> c2d(a1,0.05,'imp') z2 - 1.039 z + 9.146e-018 z(-7) * - sampling time: 0.05 z2 - 1.807 z + 0.8187 若采樣時間為0.1,因為延時時間不是采樣時間的整數(shù)倍,結(jié)果的主體部分不一樣: >> c2d(a,0.1,'imp') z2 - 1.06 z + 4.349e-018 - sampling time: 0.1 z2 - 1.629 z
16、+ 0.6703 >> c2d(a1,0.1,'imp') 0.768 z - 0.851 z(-3) * - sampling time: 0.1 z2 - 1.629 z + 0.6703 2. 將e-Ts有理化 設(shè),因e-Ts的一階有理表達式是 ,故 。 為了對ts進行離散化,首先使用tf函數(shù)建立lti模型的ts。若,則。 3. 在離散化時使用恒等式 設(shè),因,采樣時間為t,若T=mt,則,因為離散化時總是認為,故取。 根據(jù)以上假設(shè),用MATLAB的c2d函數(shù)對g(s)進行離散化,則,進而。則。第四節(jié) 控制函數(shù)分類以下函數(shù)在control toolbox中,這里
17、所述僅限于siso模型1 創(chuàng)建多項式形式的傳遞函數(shù) sys = tf(num,den) 創(chuàng)建一個s降冪多項式連續(xù)傳遞函數(shù)sys,分子多項式系數(shù)和分母多項式系數(shù)分別為num和den。 sys = tf(num,den,Dt) 創(chuàng)建一個z降冪離散傳遞函數(shù)sys,Dt是采樣時間,行矢量num和den同上。 sys = tf(sys) 把一個任意的lti模型sys轉(zhuǎn)換成多項式傳遞函數(shù),例如把零極點模型轉(zhuǎn)換成多項式傳遞函數(shù)。 sys = tf 創(chuàng)建一個空的tf對象。 sys = tf(m) 指定靜態(tài)增益m。2 創(chuàng)建零極點形式的傳遞函數(shù) sys = zpk(z,p,k) 創(chuàng)建一個零極點模型的連續(xù)傳遞函數(shù)s
18、ys,零極點矢量分別是z和p,增益是k。 sys = zpk(z,p,k,Dt) 創(chuàng)建一個零極點模型的離散傳遞函數(shù)sys,零極點矢量分別是z和p,增益是k,采樣時間是Dt。在零極點對象中,如果沒有零點,則z=。 sys = zpk 創(chuàng)建一個空的零極點對象。 sys = zpk(d) 指定靜態(tài)增益d。3 創(chuàng)建任意形式的傳遞函數(shù) s = tf('s') 指定多項式傳遞函數(shù)變量為s變量 z = tf('z',Dt) 指定多項式傳遞函數(shù)變量為z變量,Dt為采樣時間 形如的傳遞函數(shù),既不能直接用tf函數(shù)建立,也不能直接用zpk函數(shù)建立。 定義了s=tf('s
19、9;)后,寫出賦值式f=10/(s*(0.25*s+1)*(0.05*s+1),回車后即可得到多項式型傳遞函數(shù),再令f1=zpk(f),可得。 s = zpk('s') 指定零極點傳遞函數(shù)變量為s變量 z = zpk('z', Dt) 指定零極點傳遞函數(shù)變量為z變量,Dt為采樣時間 定義了s = zpk('s'),寫出賦值式f=10/(s*(0.25*s+1)*(0.05*s+1),回車后即可得到零極點型傳遞函數(shù)。4 建立z-1降冪離散傳遞函數(shù) sys = filt(num,den,Dt) 返回z-1降冪離散傳遞函數(shù),num和den分別是分子和分
20、母多項式系數(shù),Dt是采樣時間。 sys = filt(m) 返回增益離散傳遞函數(shù)。5 連續(xù)函數(shù)離散化 sysd = c2d(sysc,t,method)把連續(xù)傳遞函數(shù)sysc轉(zhuǎn)換成采樣時間為Dt的離散傳遞函數(shù),字符串method為離散化方法: 'zoh'(零階保持,即階躍響應(yīng)不變),'foh'(一階保持),'imp'(沖擊響應(yīng)不變,v6以上版本),'tustin' (雙線性近似),'prewarp'(帶預(yù)畸變的雙線性近似),'matched'(零極點匹配)。 注: 缺省的方法是'zoh
21、9; 'foh'的算法是而不是,這一點可以通過驗證證實,驗證方法是,令,但此結(jié)果中,的分子和分母將含有公因式,所以應(yīng)進一步用zpk函數(shù)把表示成零極點形式,然后用“手工”的方法寫出不含公因式的來,可以看到,最后的結(jié)果與用foh方法得到的結(jié)果完全一致。 當(dāng)使用'prewarp'方法時,臨界頻率wc(in rad/sec)作為第四個輸入來指定,如sysd = c2d(sysc,t,'prewarp',wc) 。另有1種形式是,opt = c2dOptions('Method','tustin','PrewarpF
22、requency',.5), c2d(ds,.05,opt)。6 取多項式模型傳遞函數(shù)的分子和分母的系數(shù)矢量 num,den = tfdata(sys,'v') 對于siso模型sys返回作為分子和分母系數(shù)的單行矩陣num和den。 num,den,t = tfdata(sys,'v') 同上,同時返回采樣時間Dt。7 取零極點模型傳遞函數(shù)的零點和極點的單行矩陣 z,p,k = zpkdata(sys,'v') 返回lti模型sys的零極點矢量z和p,增益k。8 取e-T s近似式 num,den = pade(t,n) 返回e-T
23、83;s的n階pade近似式,行矢量num和den是s的降冪多項式系數(shù)。 e-Ts的一階有理表達式是 。 e-T·s的高階有理表達式是 9 畫階躍響應(yīng)圖 step(sys) 畫出由tf,zpk,or ss等函數(shù)創(chuàng)建的lti模型sys的階躍響應(yīng)圖。 step(sys,tfinal) 畫出lti模型sys從t=0到t=tfinal的階躍響應(yīng)圖。對于未指定采樣時間的離散模型,tfinal被解釋為采樣的數(shù)目。 step(sys,t) 使用用戶提供的矢量t畫階躍響應(yīng)圖。對于離散時間模型,t的形式應(yīng)該是ti: Dt:tf,在這里,Dt是采樣時間。對于連續(xù)時間模型,t的形式應(yīng)該是ti:dt:tf,
24、在這里,dt變成對于連續(xù)系統(tǒng)的近似離散化的采樣時間。Ti是開始時間,tf是終止時間。因為階躍輸入總是假定在t=0開始,所以通常不考慮ti和tf,即只使用一個終止時間t。 step(sys1,sys2,.,t) 在一個單個的圖上畫出多個lti模型sys1,sys2,. 的階躍響應(yīng)圖,時間矢量t是可選擇,還可以以step(sys1,¢r¢,sys2,¢y¢,sys3,¢gx¢)的方式對每一個系統(tǒng)指定顏色,線型和標(biāo)記。 y,t = step(sys) 返回用于仿真的時間t的輸出響應(yīng)y,但并沒有圖形畫在屏幕上,如果sys有ny輸出和nu輸入和
25、lt = length(t),y就是一個尺寸為lt ny nu的陣列,而y(:,:,j)給出第j個輸入通道的階躍響應(yīng)。10 畫脈沖響應(yīng)圖 impulse 脈沖響應(yīng)函數(shù),用法與step相同11 畫頻率響應(yīng)圖-伯德圖(連續(xù)或離散) bode(sys) 畫伯德圖 bode(sys,wmin,wmax) 在頻率wmin,wmax(in radians/second)之間畫伯德圖 bode(sys,w) 按指定的頻率矢量w(in radians/second)畫伯德圖 bode(sys1,sys2,.) 畫多個lti模型sys1,sys2,.的伯德圖 bode(sys1,sys2,.,w) 按指定的頻率
26、矢量w(in radians/second)畫多個lti模型sys1,sys2,.的伯德圖以下函數(shù)在符號工具箱symbolick中,需注意,在使用這些函數(shù)前,要對所使用的變量進行符號說明,例如:syms a t %是用空格分隔而不是用逗號分隔a=sin(t)L=laplace(a)12 福里哀變換fourier 反福里哀變換ifourier13 拉普拉斯變換laplace 反拉普拉斯變換ilaplace14 z變換ztrans 反z變換iztrans注:以上3 種變換必須是符號表達式,例如: syms t laplace(sin(t)15 改善公式的可讀性pretty16 多項式轉(zhuǎn)換為符號表達
27、式poly2sym17 化簡符號表達式simplify18 取符號表達式的分子和分母numden以下函數(shù)在符號工具箱polyfun中,在公式變換中可能會用到19 部分分式展開an ad ak = residue(n,d) n和d分別為原分式的分子和分母矢量,an和ad分別為分項式的分子和分母矢量,ak為整式部分。這是一個數(shù)學(xué)公式,在數(shù)字控制器程序設(shè)計中,利用部分分式展開的方法,把高于2階的分式變換為不高于2階的分式之和,從而把高階傳遞函數(shù)算法變?yōu)榈碗A傳遞函數(shù)并聯(lián)的算法。在使用這個方法時,不論在分子矢量中還是在分母矢量中,如果有共軛復(fù)數(shù)出現(xiàn),則應(yīng)將其整合為2階質(zhì)因式。20 多項式乘法c = co
28、nv(a,b) a×b=c21 多項式除法q,r = deconv(b,a) b÷a=q.r,即b = conv(a,q) + r第二章 離散化算法 連續(xù)傳遞函數(shù)離散化的核心環(huán)節(jié),就是將控制器的s傳遞函數(shù)轉(zhuǎn)換為z傳遞函數(shù)。離散化后,系統(tǒng)應(yīng)該仍有好的穩(wěn)定性,好的控制精度,而不是要求轉(zhuǎn)換前后,兩個數(shù)學(xué)公式等值。因此,離散化方法有多種。本章對這些方法的轉(zhuǎn)換原理和由來進行了演繹。 離散化后得到的離散傳遞函數(shù)的穩(wěn)定性,沒有進行討論,僅列了一張表進行比較。離散的結(jié)果,雖然可能會控制精度降低,應(yīng)該認為,這不是主要問題。真正影響控制精度的因素,主要還是采樣周期的長短。 一般情況下,由連續(xù)到
29、離散的設(shè)計最好多實驗幾種方法(通過仿真,得出滿意的結(jié)果)。因為匹配零、極點映射法、雙線性變換法都能得出比較滿意的結(jié)果,初步設(shè)計時,可以試用這些方法。 而其實,后向差分近似法也是合理的選擇。但MATLAB的c2d函數(shù)中沒有這一方法,在該方法的介紹之后,給出了一個可由MATLAB引用的m文件函數(shù)。摘要 3種保持器法 保持器法即將s函數(shù)串聯(lián)上一個保持器后取z變換,也可以從“對輸入信號的響應(yīng)不變”的角度導(dǎo)出。無保持器法(階躍響應(yīng)不變)imp 零階保持器法(階躍響應(yīng)不變)zoh 一階保持器法(斜坡輸入不變)foh(一階保持器)MATLAB中無此方法 4種近似法 近似法將s與z的無理關(guān)系近似地化為有理關(guān)系
30、,主要應(yīng)用于傳遞函數(shù)從連續(xù)到離散的變換。 后向差分近似法MATLAB的C2D函數(shù)中沒有這個方法 前向差分近似法MATLAB的C2D函數(shù)中沒有這個方法 雙線性近似法tustin 預(yù)畸雙線性近似法 ,w1為進行預(yù)畸變的頻率prevarp 增益匹配: 或 1種匹配法 匹配法完全從控制學(xué)的角度看問題,也是應(yīng)用于傳遞函數(shù)從連續(xù)到離散的變換。 零極點匹配法 若,matched 則, 或者, 確定增益kz: a 令, b 若D(s)分子有s因子,例如, 可以令 ,也可以令 比較離散化方法變換公式映射關(guān)系特點沖擊響應(yīng)不變法Z變換法 imp脈沖響應(yīng)采樣值相同;容易產(chǎn)生頻率混迭現(xiàn)象,為采樣角頻率。階躍響應(yīng)不變法零
31、階保持器法 zoh階躍響應(yīng)采樣值相同;穩(wěn)定增益不變。斜坡響應(yīng)不變法一階保持器法 foh向前差分法D(s)穩(wěn)定,D(z)可能不穩(wěn)定;等效精度差。向后差分法變換計算簡單;如果D(s)穩(wěn)定,D(z)穩(wěn)定;離散濾波器的過程特性及頻率特性有一定的失真,需要較小的采樣周期T。雙線性變換法 tustinD(s)穩(wěn)定,D(z)也穩(wěn)定;低頻特失真,但無頻率混迭現(xiàn)象。穩(wěn)定增益不變;具有串聯(lián)特性。預(yù)修正雙線性變換法 prevarp有前一種變換的特點;還能保證在關(guān)鍵頻率1處,幅頻特性不變。零極點匹配法 matchedZ域與s域零極點位置一一對應(yīng);當(dāng)沒有零點時,補充z=1的零點可避免頻率混迭現(xiàn)象。第一節(jié) 沖擊響應(yīng)不變法
32、(imp,無保持器直接z變換法) 公式推導(dǎo)1 無保持器,直接轉(zhuǎn)換:公式推導(dǎo)2 按沖擊響應(yīng)不變的原則: (沖擊響應(yīng)不變,中的1表示)第二節(jié) 階躍響應(yīng)不變法(zoh,零階保持器z變換法) ,式中T為采樣周期,所以 公式推導(dǎo)1 按串聯(lián)零階保持器的原則: 因為零階保持器的s傳遞函數(shù)為,故公式推導(dǎo)2 按階躍響應(yīng)不變的原則: 設(shè)階躍信號,則,按照下一節(jié)對斜坡響應(yīng)不變法的推導(dǎo),立即可以寫出第三節(jié) 斜坡響應(yīng)不變法(foh,一階保持器z變換法) ,按斜坡響應(yīng)不變原則導(dǎo)出,也可按一階保持器原則配合e-Ts的臺勞近似式得出,foh方法使用此式 ,從一階保持器的思路推出 以上2個公式中T為采樣周期,兩式差異請參看“附
33、錄 兩種一階離散化方法的結(jié)果的比較”。公式推導(dǎo)1 按斜坡響應(yīng)不變的原則: 設(shè)連續(xù)濾波器為D(s),輸入為斜坡函數(shù)e(t)=t,則,采樣輸出為us(kT)。按z變換的定義,us(kT)的變換就是的z變換,故。 又設(shè)離散濾波器的傳遞函數(shù)為D(z),它的輸出為uz(KT),按斜坡響應(yīng)不變的要求,應(yīng)有uz(kT)=us(kT),故,但離散濾波器的輸出為U(z)=E(z)D(z),而斜坡函數(shù)e(t)=t的z變換為,求Uz(z) 與E(z)的比值,得斜坡響應(yīng)不變法離散公式 。公式推導(dǎo)2 按串聯(lián)一階保持器的原則: 一階保持器的傳遞函數(shù)為,則一階保持器法離散公式為,故 。 根據(jù)臺勞近似式,用取代中的Ts+1,
34、則得到。 顯然,反過來也可以將近似為。 由此可以認為,“斜坡響應(yīng)不變公式”和“串聯(lián)一階保持器公式”互為近似式。經(jīng)驗證,MATLAB的C2D函數(shù)中foh方法使用的就是“斜坡響應(yīng)不變法公式”。 使用臺勞近似式的條件是,T很小,時間單位也很小。第四節(jié) 后向差分代換法(backward difference) 公式推導(dǎo)1 近似微分: 設(shè)連續(xù)傳遞函數(shù),則,取反變換得, 將中的微分用后向差分代替,得, 對上式取z變換,得 , 整理后得離散傳遞函數(shù) , 比較和,知 。公式推導(dǎo)2 近似積分: 設(shè)連續(xù)傳遞函數(shù),則,反變換得 ,進行近似積分,而且把輸出看作由兩部分組成,一部分是前一個時刻面積的累加值,一部分是本次
35、的面積值。如果認為本次的面積是本次采樣值與采樣周期的乘積,則 式(B) 取z變換,得 合并同類項,得離散傳遞函數(shù) 比較和,知 。 所以,后向差分法就是積分法,并且以當(dāng)前采樣值為計算依據(jù),所以可以稱為本次采樣積分,式(B)的圖形見下頁。公式推導(dǎo)3有理化z與s的關(guān)系: ,由此式求得。% 差分近似法 function y=c2d1(ds,t0,str)% 函數(shù) c2d1 補充MATLAB控制類函數(shù) c2d 之不足,可以將連續(xù)傳遞函數(shù)以向前差分法和向后差分法變換為離散傳遞函數(shù)% 因為雙線性變換法與向前差分法和向后差分法同屬近似法,所以 c2d1 函數(shù)也包括了雙線性變換法% 輸出參數(shù) y : LTI模型
36、,離散傳遞函數(shù)% 輸入?yún)?shù) ds : LTI模型,連續(xù)傳遞函數(shù)% t0 : 數(shù)值,采樣時間% str : 字符串,變換方法 backdiff=向后差分 fordiff=向前差分 tustin=雙線性syms z;% -檢查采樣時間Ts是否大于0if t0<=0 error('Ts<0 or Ts=0 unallowed');end% -根據(jù)輸入的"方法",確定代入公式if strcmp(str,'backdiff') s=(z-1)/(t0*z); string='coefficient of result of back
37、ward difference:' string1='zero-pole of result of backward difference:'elseif strcmp(str,'fordiff') s=(z-1)/t0; string='coefficient of result of forward difference:' string1='zero-pole of result of forward difference:'elseif strcmp(str,'tustin') s=(2/t0)*(
38、z-1)/(z+1); string='coefficient of result of double linear:' string1='zero-pole of result of double linear:'else disp(' '); error('please chek method parameter');end% -%以下將模型的傳遞函數(shù)轉(zhuǎn)換為符號表達式,以便s=f(z)代入到ds中num,den=tfdata(ds,'v'); %取模型連續(xù)傳遞函數(shù)的分子和分母(多項式)nums=poly2sym
39、(num,'s');%將多項式轉(zhuǎn)換為符號dens=poly2sym(den,'s');tran=nums/dens; %生成一個符號分式m=compose(tran,s); %代入m=simplify(m); %化簡n d=numden(m); %取符號表達式的分子和分母n=sym2poly(n); %取符號表達式的分子多項式系數(shù),按降冪排列d=sym2poly(d); %取符號表達式的分母多項式系數(shù),按降冪排列% -%以下顯示分子和分母的系數(shù),是輔助性的disp(string)n=n/d(1); %使分母的最高項的系數(shù)為1d=d/d(1);n_str=num2
40、str(n);d_str=num2str(d);n_disp=strcat('fn = ',n_str);d_disp=strcat('fd = ',d_str);disp(n_disp);disp(d_disp);% -%以下生成離散傳遞函數(shù)y=tf(n,d,t0);% -%以下求出離散傳遞函數(shù)的零點和極點disp(string1);z p k=zpkdata(y,'v')% -%以下畫出連續(xù)傳遞函數(shù)和離散傳遞函數(shù)的伯德圖bode(ds,'r',y,'g');zpk(z,p,k,t0)% 程序結(jié)束第五節(jié) 前向差分
41、代換法(forward difference) 公式推導(dǎo)1 近似微分: 設(shè)連續(xù)傳遞函數(shù),則,反變換得 , 將中的微分用前向差分代替,得 。 將所有的采樣值提前一個周期,得 , 。 取z變換,得 , 故 。 整理后得離散傳遞函數(shù) 。 比較和,知 。 也可以不進行時間位移,直接從 進行z變換,同樣可得 , 。 。公式推導(dǎo)2 近似積分: 設(shè)連續(xù)傳遞函數(shù),則,它的積分表達式是,進行近似積分,而且把輸出看作由兩部分組成,一部分是前一個時刻面積的累加值,一部分是本次的面積值。如果認為本次的面積是前次采樣值與與采樣周期的乘積,則 (式B), 取z變換,得 , 合并同類項,得離散傳遞函數(shù) 。 比較和,得 所以
42、,前向差分法就是積分法,并且以前一次采樣值為計算依據(jù),所以可以稱為前次采樣積分,式(B)的圖形是公式推導(dǎo)3 有理化z與s的關(guān)系: ,由此式求得。第六節(jié) 雙線性近似法(tustin) 公式推導(dǎo)1 近似微分: 設(shè)連續(xù)傳遞函數(shù),則,它的微分表達式是。 將用后向差分代替,用前采樣值與本次采樣值的平均值代替,得, 對上式取z變換 , 即 , 故 , 比較和,得 。公式推導(dǎo)2 近似積分: 設(shè)連續(xù)傳遞函數(shù),它的積分表達式是,進行近似積分,而且把輸出看作由兩部分組成,一部分是前一個時刻面積的累加值,一部分是本次的面積值。如果認為本次面積是前次采樣值與本次采樣值,兩次采樣值的平均值平均值與采樣周期的乘積,則 (
43、式B), 取z變換,得 , 合并同類項,得 。 比較和,得 。 所以,雙線性近似法也是積分法,與差分法不同的是它是梯形積分,式(B)的圖形是:公式推導(dǎo)3 有理化z與s的關(guān)系: ,由此式求得。公式推導(dǎo)4 使用的臺勞級數(shù): 由,得 故。公式推導(dǎo)5 使用th s壓縮s平面: 脈沖響應(yīng)不變法的主要缺點是頻譜交疊產(chǎn)生的混淆,這是從S平面到Z平面的標(biāo)準(zhǔn)變換的多值對應(yīng)關(guān)系導(dǎo)致的。為了克服這一缺點,設(shè)想通過兩個步驟建立S平面與Z平面一一對應(yīng)的單值關(guān)系。雙線性變換的映射關(guān)系 第一步 將整個S平面壓縮到S1平面的一條橫帶里 考察雙曲正切變換,當(dāng)由時,w由,也就是說將s平面的w軸壓縮到平面軸上的一段上。將這一關(guān)系推
44、廣到整個s平面,則得到s平面到平面的映射關(guān)系,系數(shù)的來源是,當(dāng)時,可得。 第二步 通過標(biāo)準(zhǔn)變換關(guān)系將此橫帶變換到整個Z平面上去 令,得S平面與Z平面的單值映射關(guān)系, 或者 驗證: 變換的單值性:當(dāng)時,代入,即S的虛軸映射到Z平面正好是單位圓。 S平面 Z平面 S1平面 變換的穩(wěn)定性: 代入z表達式,得 和。當(dāng)時,|z|<1即s左半平面映射在單位圓內(nèi),s右半平面映射在單位圓外,因此,穩(wěn)定的模擬濾波器通過雙線性變換后,所得到的數(shù)字濾波器也是穩(wěn)定的。第七節(jié) 預(yù)畸雙線性法(prevarp) 第一步:求預(yù)修正頻率 ,w1為預(yù)防畸變的頻率, 為修正后的頻率。 第二步:預(yù)畸變 。 第三步:變換 。 綜
45、合以上3步: ,w1為預(yù)防畸變的頻率 。 變換后,穩(wěn)態(tài)增益將變化,需以或的原則進行增益匹配。 舉例: 若 , 則 若 , 則第八節(jié) 零極點匹配法(matched) D(S) è D(Z) 若 , 則 。 分子上因子(Z+1)n-m的作用是:把處的零點投射到來單位園上,使D(Z)的分母和分子的階數(shù)就相同。(如果不加這個因子,D(Z)脈沖響應(yīng)會產(chǎn)生n-m個采樣時間的延遲,對系統(tǒng)造成不利影響?)。 或者 。 后一個公式比前一個公式少一個零點,MATLAB函數(shù)c2d的matched方法是按后一個公式進行變換的(但脈沖響應(yīng)具有一個采樣時間的延遲?)。 確定D(z)的增益kz的方法: a 令與的
46、穩(wěn)態(tài)增益相等求得,即令, b 若D(s)分子有s因子,例如,可依高頻段增益相等原則確定增益,即,也可選擇某關(guān)鍵頻率處的幅頻相等,即。 對零極點匹配法做的描述,可以使用符號數(shù)學(xué)編寫m文件程序,“手工式”地進行驗證。下面的程序以連續(xù)傳遞函數(shù)為例,運行此程序后,可以看到,文中描述的方法與c2d函數(shù)的mtched方法是一致的,也說明文本中沒有排版錯誤,這樣應(yīng)該更有于助理解和使用零極點匹配法。%程序開始syms s z kz t %預(yù)置采樣周期tt=0.7 %預(yù)置采樣周期s1=1 %建立ds的分子s2=vpa(s3+1.8*s2+1.8*s+1) %建立ds的分母s2r=solve(s2) %求ds的極點z1=(z+1)2 %建立dz分子的零點表達式,不包含增益z1=vpa(expand(z1),5) %展開dz分子的零點表達式為多項式表達式,不包含增益z2=(z-exp(t*s2r(1)*(z-exp(t*s2r(2)*(z-exp(t*s2r(3) %建立dz分母的極點表達式z2=vpa(subs(z2,'t',tt),5) %將dz分母中周期t用預(yù)置的值tt代替,不改變極點表達式形式z2=vpa(expand(z2),5)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年度辦公室裝修與家具采購一體化合同范本3篇
- 初中音樂教學(xué)論文六篇
- 小班清明節(jié)語言課程設(shè)計
- 自控課程設(shè)計校正概論
- 網(wǎng)絡(luò)工程課程設(shè)計項目
- 電子鐘課程設(shè)計微機原理
- 智能榨汁機課程設(shè)計
- 2024綜合安全生產(chǎn)年終個人工作總結(jié)(30篇)
- 《高科技武器》課件
- 2024年職業(yè)技能鑒定中級題庫
- 土建定額培訓(xùn)課件
- ISO 56001-2024《創(chuàng)新管理體系-要求》專業(yè)解讀與應(yīng)用實踐指導(dǎo)材料之13:“6策劃-6.2創(chuàng)新目標(biāo)及其實現(xiàn)的策劃”(雷澤佳編制-2025B0)
- 二年級上冊《語文園地八》日積月累
- ICD-10疾病編碼完整版
- 畢業(yè)設(shè)計(論文)安徽汽車產(chǎn)業(yè)的現(xiàn)狀分析及發(fā)展戰(zhàn)略研究
- 帆軟BIFineBI技術(shù)白皮書
- 絞車斜巷提升能力計算及絞車選型核算方法
- 6_背景調(diào)查表
- 畢業(yè)設(shè)計(論文)礦泉水瓶吹塑模設(shè)計
- 在離退休老干部迎新春座談會上的講話(通用)
- 圍擋計算書版
評論
0/150
提交評論