第八講MATLAB在信號處理中的應(yīng)用(一)_第1頁
第八講MATLAB在信號處理中的應(yīng)用(一)_第2頁
第八講MATLAB在信號處理中的應(yīng)用(一)_第3頁
第八講MATLAB在信號處理中的應(yīng)用(一)_第4頁
第八講MATLAB在信號處理中的應(yīng)用(一)_第5頁
已閱讀5頁,還剩42頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、第八講第八講 MATLAB在信號處理中的在信號處理中的應(yīng)用應(yīng)用1主要內(nèi)容n8.1 數(shù)字信號處理模塊庫n8.2 離散時間信號n8.3 離散傅里葉變換28.1數(shù)字信號處理模塊庫右鍵點(diǎn)擊Signal Processing Blockset選擇Open Signal Processing Blockset Library信號處理模塊庫n信號處理輸入模塊庫(Signal Processing Sources)n :輸出一個由Delay變量指定延時時間的離散單位脈沖信號。n :輸出在連續(xù)的采樣時間內(nèi)從MATLAB工作空間中獲取指定的信號樣本。n :輸出一個由變量Constant Value指定的相同維數(shù)的

2、常數(shù)信號。信號處理模塊庫n信號處理輸出模塊庫(Signal Processing Sinks)n :顯示一個時域或者頻域的矢量信號、矩陣信號、自定義的數(shù)據(jù)信號。n :把輸入的數(shù)據(jù)寫入MATLAB工作空間的指定陣列中,數(shù)據(jù)要直到仿真結(jié)束或暫停的時候才能獲得。n :用來顯示在仿真時產(chǎn)生的信號。信號處理模塊庫n變換模塊庫(Transforms)n :當(dāng)輸入信號是實(shí)信號或復(fù)數(shù)信號時,輸出是以2為基(序列點(diǎn)數(shù)N為2的整數(shù)冪,如果按時域抽選(Decimation-In-Time,DIT) (庫利-圖基算法)或按頻域抽選(Decimation-In-Frequency,DIF)(桑德-圖基算法)的快速傅里葉

3、變換(Fast Fourier Transform,FFT)的結(jié)果。n :輸出為輸入信號的快速離散傅里葉反變換。n管理模塊庫(Signal Management)nBuffers子模塊庫n :緩沖模塊,用于將輸入的標(biāo)量信號轉(zhuǎn)換成基于幀的信號,或者改變輸入幀信號的大小。n本章數(shù)字信號處理仿真與建模除了以上模塊要掌握外還要掌握P49離散系統(tǒng)模塊庫中的2.整數(shù)延遲模塊Integer Delay(整數(shù)延遲)模塊。信號處理模塊庫8.2離散時間信號n8.2.1常見的離散序列及其表示n1.單位樣本序列(類似于連續(xù)時間的沖激函數(shù))n其中箭頭指出在n=0的樣本。n算法思想:用函數(shù)zeros(1,N)產(chǎn)生N個零的

4、行向量利用它可以實(shí)現(xiàn)在一個有限區(qū)間上的 。n非零值我們可以利用邏輯關(guān)系n=0實(shí)現(xiàn)樣本序列n例如要實(shí)現(xiàn)在區(qū)間 上的樣本序列,可表示為1,0( ).,0,0,1,0,0.0,0nnn( )n0()nn102nnn0001,()0,nnnnnnn用函數(shù)文件描述樣本序列:nfunctionx,n=imseq(n0,n1,n2)nn=n1:n2;nx=n-n0=0;x,n=imseq(3,0,5)stem(n,x)n2.單位階躍序列(類似于連續(xù)時間的單位階躍函數(shù))n算法思想:用函數(shù)ones(1,N)產(chǎn)生N個1的行向量。利用它可以產(chǎn)生在一個有限區(qū)間上的 。零值部分可以利用邏輯關(guān)系n=0,實(shí)現(xiàn)在 區(qū)間上的

5、,其表達(dá)式為1,0( ).,0,0,1,1,1.0,0nu nn102nnn0001,()0,nnu nnnn( )u n0()u nnn利用MATLAB函數(shù)文件表示為:nfunction x,n=stepseq(n0,n1,n2)nn=n1:n2;nx=(n-n0)=0; x,n=stepseq(3,0,5)stem(n,x)n8.2.2 序列運(yùn)算 與連續(xù)信號不同的是,在MATLAB中,離散序列的時域運(yùn)算不能用符號運(yùn)算來實(shí)現(xiàn),而必須用向量表示的方法,即在MATLAB中離散序列的相加、相乘需表示成兩個向量的相加、相乘,因而參加運(yùn)算的兩序列向量必須具有相同的維數(shù)。131.信號相加、減在MATLA

6、B中可以用符號“+-”來實(shí)現(xiàn)離散信號加減。但是 和 的長度必須相同,如果序列長度不相等,或即使長度相等而樣值位置不同,也不能直接用運(yùn)算符+。所以首先必須對 和 擴(kuò)大或延長以使它們具有相同的位置向量,然后才能進(jìn)行加、減運(yùn)算。)(1kf2( )fk)(1kf2( )fk12( )( )( )y kf kfkn例8-1P121例3-1n法一:nn=0:10;nx=impseq(1,0,10)-impseq(3,0,10);nstem(n,x);nxlabel(n);nylabel(f(n)( )(1)(3)f nnn 方法二:自定義函數(shù)sigaddfunction y,k=sigadd(f1,k1,

7、f2,k2) k=min(min(k1),min(k2):max(max(k1),max(k2); y1=zeros(1,length(k);s2=s1y1(find(k=min(k1)&(k=min(k2)&(k=min(k1)&(k=min(k2)&(k=max(k2)=1)=f2;y=y1.*y2;nx1,n1=impseq(1,0,10)nx2,n2=impseq(3,0,10)ny,n=sigmult(x1,n1,-x2,n2);nstem(n,y)( )(1)* (3)f nnn( )(1)(3)f nnnn例8-2從MATLAB工作空間獲取信號1)

8、按下圖建立好模型2)修改相應(yīng)參數(shù),除了P123修改參數(shù)外,還需要更改的參數(shù)有:1.Buffer模塊的參數(shù)設(shè)置:將Setting to zero改為Cyclicrepetition。2.雙擊Vector Scope,將Line Properties中的Line makers改為stem 5( ) 10*sin(2* * )8x npinn3)保存好后,在命令窗口輸入nfor i=1:100nx(i)=10*sin(2*pi*5/8*i);nendn4)察看工作空間窗口是否包含信號x。若有則開始仿真。8.3離散傅里葉變換n離散傅里葉變換 在信號與系統(tǒng)和數(shù)字信號處理分析中的地位相當(dāng)重要。特點(diǎn):n建立

9、了時域與頻域之間的聯(lián)系是其他變換關(guān)系不能替代的。n時域抽樣定理:將連續(xù)時間信號通過抽樣轉(zhuǎn)換為離散時間信號。8.3.1離散傅里葉變換的原理n 設(shè)x(n)為有限長序列,長度為N(周期為N),即x(n)只在n=0N-1時有值,其他n時都為0,則有限長序列的離散傅里葉變換定義為:n正變換:n或者表示為:n其中, 是旋轉(zhuǎn)因子, 為矩形序列的符號,即10( ) ( )( ),01NnkNnX kDFT x nx nWkN 10( ) ( )( )( )( )( ),01NnkNNNnX kDFT x nx nW R kX k R kk N 1,01( )0,kNkNRk其他2jNNWe( )NRkn反變換

10、:n或者表示為:n其中 看成 以N為周期的周期延拓,即n另一種表示為 其中 表示為 (n模N 即n對N取余數(shù))例如N=16,n=25時n因?yàn)閚=25=1*16+9,故101( ) ( )( ),01NnkNkx nIDFT X kX k WnNN 101( ) ( )( )( )( )( )NnkNNNkx nIDFT X kX k WR nX n R nN( )x n( )x n( ),01( )0,x nnNx n其他n( )( )Nx nx n( )Nx n16(25)9x舉例n例8-3有限長序列x(n)=1,0=n youtnyout =n 5.0000 n 3.0137 - 3.01

11、37in -0.0000 - 2.4142in -0.2483 - 0.2483in 1.0000 n 0.8341 - 0.8341in 0.0000 - 0.4142in 0.4005 + 0.4005in 1.0000 n 0.4005 - 0.4005in 0.0000 + 0.4142in 0.8341 + 0.8341in 1.0000 n -0.2483 + 0.2483in -0.0000 + 2.4142in 3.0137 + 3.0137i8.3.2離散傅里葉變換的應(yīng)用n設(shè)兩序列為x(n)和h(n),則x(n)和h(n)卷積的定義為n其中,*表示為卷積和n對于線性移不變系統(tǒng)

12、來說,設(shè)系統(tǒng)的輸入系列為x(n),輸出系列為y(n),根據(jù)信號的分解理論,任一系列x(n)可寫成單位沖激信號的移位加權(quán)和,即n則系統(tǒng)的輸出為:( )( ) ()mx nx mnm( )( ) ()( )* ( )my nx mhn mx n hn( )* ( )( ) ()mx nh nx m h nm卷積和運(yùn)算n例例8-4(例(例3-4)已知線性移不變系統(tǒng)的輸入為)已知線性移不變系統(tǒng)的輸入為x(n)=R5(n),系統(tǒng)的單位抽樣響應(yīng)為系統(tǒng)的單位抽樣響應(yīng)為h(n)=0.5nR6(n),試求系統(tǒng)的輸出試求系統(tǒng)的輸出y(n).解:法一:利用卷積和定義求系統(tǒng)的輸出解:法一:利用卷積和定義求系統(tǒng)的輸出。

13、1)依題意有:P127性質(zhì):若x(n)的序列長度為N1,h(n)的序列長度為N2,則它們的線性卷積和,其長度為N1+N2-1=10。根據(jù)卷積和定義有:( )( ) ()( )* ( )my nx m h nmx nh n1,04( )0,nnx n其余0.5 ,05( )0,nnnh n 其余卷積和運(yùn)算步驟如下:步驟如下:1)變量置換:將所給序列的自變量置)變量置換:將所給序列的自變量置n換成為換成為m,得到得到x(m)和和h(m)2)時間反轉(zhuǎn))時間反轉(zhuǎn)(翻轉(zhuǎn)翻轉(zhuǎn)):將序列以縱坐標(biāo)為對稱軸翻轉(zhuǎn):將序列以縱坐標(biāo)為對稱軸翻轉(zhuǎn)3)時間移位:對某一)時間移位:對某一n,將系列,將系列h(-m)平移平移

14、n個單位個單位(n0時朝右移動時朝右移動),得,得h(n-m)。4)相乘:將)相乘:將x(m)和和h(n-m)各對應(yīng)點(diǎn)相乘各對應(yīng)點(diǎn)相乘5)求和:將相乘后的各點(diǎn)值相加,得序號)求和:將相乘后的各點(diǎn)值相加,得序號n出的出的y(n)。m=-y(0)=x(m )h(-m )111m=-13y(1)=x(m)h(1-m)11 122 卷積函數(shù)n假定兩個系列都從n=0開始,MATLAB提供的內(nèi)部函數(shù)conv(x,h)用于計(jì)算兩個有限長序列之間的卷積,例如:x=1 1 1 1 1,h=1 1/2 1/4 1/8 1/16 1/32y=conv(x,h)ny =n Columns 1 through 6n 1

15、.0000 1.5000 1.7500 1.8750 1.9375 0.9688n Columns 7 through 10n 0.4688 0.2188 0.0938 0.0313n如果任意系列是無限長的,那么不能直接用如果任意系列是無限長的,那么不能直接用conv函數(shù)來計(jì)算卷積,因此,需要將函數(shù)來計(jì)算卷積,因此,需要將conv函數(shù)進(jìn)行擴(kuò)函數(shù)進(jìn)行擴(kuò)展為自定義函數(shù)展為自定義函數(shù)dconv,它能實(shí)現(xiàn)任意位置序列,它能實(shí)現(xiàn)任意位置序列的卷積。的卷積。法二:利用自定義函數(shù)文件求系統(tǒng)輸出nfunction y,ny=dconv(x,nx,h,nh)n nyb=nx(1)+nh(1);n nye=nx(

16、length(x)+nh(length(h);n ny=nyb:nye;n y=conv(x,h);x=1 1 1 1 1;n nx=0:4;nnh=0:5;nh=0.5.nh;n y,ny=dconv(x,nx,h,nh)n stem(ny,y)n法三:利用建模方式求系統(tǒng)輸出n具體步驟如下:n1)建立好如下模型2)更改相應(yīng)參數(shù)并保存3)保存模型后,在命令窗口輸入: x=1 1 1 1 1;i=0:5;h=0.5.i(注意在MATLAB中不能有h(0)=0.50)4)點(diǎn)擊仿真按鈕,開始仿真。5)在命令窗口輸入youtn youtnyout =n 5.0000 n 3.0137 - 3.0137

17、in -0.0000 - 2.4142in -0.2483 - 0.2483in 1.0000 n 0.8341 - 0.8341in 0.0000 - 0.4142in 0.4005 + 0.4005in 1.0000 n 0.4005 - 0.4005in 0.0000 + 0.4142in 0.8341 + 0.8341in 1.0000 n -0.2483 + 0.2483in -0.0000 + 2.4142in 3.0137 + 3.0137i練習(xí):nP176習(xí)題1.利用信號處理模塊庫中的模塊,構(gòu)造并仿真信號:2.利用Signal From Workspace模塊,生成仿真信號:3

18、.設(shè)信號x(n)=1,2,3,4,試?yán)肧imulink建立N=8點(diǎn)的離散傅里葉變換,并計(jì)算X(0)和X(1)的值。即離散傅里葉變換在0和1點(diǎn)處的值。( )( )2 (1)(3)f nnu nn2( ),1,2,.,10nx nen習(xí)題3-2n法一:n1)建立模型如下:2)x,n=stepseq(1,0,20)(stepseq函數(shù)文件為自定義函數(shù))法二:建立模型如下(其中 為Simulink中的discrete離散模塊)4.已知下面兩個系列:已知下面兩個系列:求卷積求卷積解:根據(jù)卷積定義公式有解:根據(jù)卷積定義公式有:分別求出信號在每個離散上的值(加權(quán)和)分別求出信號在每個離散上的值(加權(quán)和)1)變量置換:將所給序列的自變量置換成為)變量置換:將所給序列的自變量置換成為m,得到得到x(m)和和h(m)2)時間反轉(zhuǎn)(翻轉(zhuǎn)):將序列以縱坐標(biāo)為對稱軸翻轉(zhuǎn))時間反轉(zhuǎn)(翻轉(zhuǎn)):將序列以縱坐標(biāo)為對稱軸翻轉(zhuǎn)3)時間移位:對某一)時間移位:對某一n,將系列,將系列h(-m)平移平移n

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論