利用MATLAB實現SA信號的抽樣與重構_第1頁
利用MATLAB實現SA信號的抽樣與重構_第2頁
利用MATLAB實現SA信號的抽樣與重構_第3頁
利用MATLAB實現SA信號的抽樣與重構_第4頁
利用MATLAB實現SA信號的抽樣與重構_第5頁
已閱讀5頁,還剩15頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、利用MATLAB實現Sa信號的抽樣與重構仿真目 錄中文摘要I1 概論21.1 MATLAB的介紹21.2 課程設計的目的和要求32 MATLAB實現連續信號采樣與重構的理論基礎42.1 連續時間信號42.2 信號的采樣4 2.3 信號的重構63 MATLAB實現Sa信號的抽樣與重構仿真程序分析83.1 Sa信號的臨界采樣及重構93.1.1 程序實現及運行結果圖93.1.2 程序分析113.2 Sa信號的過抽樣及重構113.2.1 程序實現及運行結果圖113.2.2 程序分析143.3 Sa信號的欠抽樣及重構143.3.1 程序實現及運行結果圖143.3.2 程序分析174 總結18參考文獻19

2、201 概論1.1 MATLAB的介紹 MATLAB是由美國mathworks公司發布的主要面對科學計算、可視化以及交互式程序設計的高科技計算環境。它將數值分析、矩陣計算、科學數據可視化以及非線性動態系統的建模和仿真等諸多強大功能集成在一個易于使用的視窗環境中,為科學研究、工程設計以及必須進行有效數值計算的眾多科學領域提供了一種全面的解決方案,并在很大程度上擺脫了傳統非交互式程序設計語言(如C、Fortran)的編輯模式,代表了當今國際科學計算軟件的先進水平。 MATLAB和Mathematica、Maple、MathCAD并稱為四大數學軟件。它在數學類科技應用軟件中在數值計算方面首屈一指。M

3、ATLAB可以進行矩陣運算、繪制函數和數據、實現算法、創建用戶界面、連接其他編程語言的程序等,主要應用于工程計算、控制設計、信號處理與通訊、圖像處理、信號檢測、金融建模設計與分析等領域。MATLAB的基本數據單位是矩陣,它的指令表達式與數學、工程中常用的形式十分相似,故用MATLAB來解算問題要比用C,FORTRAN等語言完成相同的事情簡捷得多,并且MATLAB也吸收了像Maple等軟件的優點,使MATLAB成為一個強大的數學軟件。在新的版本中也加入了對C,FORTRAN,C+,JAVA的支持。可以直接調用,用戶也可以將自己編寫的實用程序導入到MATLAB函數庫中方便自己以后調用,此外許多的M

4、ATLAB愛好者都編寫了一些經典的程序,用戶可以直接進行下載就可以用。MATLAB由一系列工具組成。這些工具方便用戶使用MATLAB的函數和文件,其中許多工具采用的是圖形用戶界面。包括MATLAB桌面和命令窗口、歷史命令窗口、編輯器和調試器、路徑搜索和用于用戶瀏覽幫助、工作空間、文件的瀏覽器。隨著MATLAB的商業化以及軟件本身的不斷升級,MATLAB的用戶界面也越來越精致,更加接近Windows的標準界面,人機交互性更強,操作更簡單。而且新版本的MATLAB提供了完整的聯機查詢、幫助系統,極大的方便了用戶的使用。簡單的編程環境提供了比較完備的調試系統,程序不必經過編譯就可以直接運行,而且能夠

5、及時地報告出現的錯誤及進行出錯原因分析。本文基于Matlab 強大功能來分析Sa 信號的抽樣與重構,由于Sa 信號易于生成,分析方便,故在許多實際應用與仿真中(如數字通信系統等)運用較為廣泛。對于連續時間信號的處理,往往將它轉換為相應的離散信號(或數字信號),并進行加工和處理,然后再將處理后的離散信號轉換為連續時間信號。而抽樣定理為連續信號與離散時間信號的相互轉換提供了理論依據。1.2 課程設計的目的和要求本次課程設計應用MATLAB實現連續信號的采樣與重構仿真。了解MATLAB軟件,學習應用MATLAB軟件的仿真技術。它主要側重于某些理論知識的靈活運用,以及一些關鍵命令的掌握,理解,分析等。

6、初步掌握線性系統的設計方法,培養獨立工作能力。加深理解采樣與重構的概念,掌握利用MATLAB分析系統頻率響應的方法和掌握利用MATLAB實現連續信號采用與重構的方法。計算在臨界采樣、過采樣、欠采樣三種不同條件下重構信號的誤差,并由此總結采樣頻率對信號重構誤差的影響。離散正弦序列的MATLAB表示與連續信號類似,只不過是用stem函數而不是用plot函數來畫出序列波形。命令窗口沒打開時,從“Desktop”菜單中選擇“Command Window”選項可以打開它。“>>”符號是輸入函數的提示符,在提示符后面輸入數據和運行函數。退出MATLAB時,工作空間中的內容隨之清除。可以將當前工

7、作中的部分或全部變量保存在一個MAT文件中,它是一種二進制文件,擴展名為.mat。然后可在以后使用它時載入它。用MATLAB的當前目錄瀏覽器搜索、查看、打開、查找和改變MATLAB路徑和文件。在MATLAB桌面上,從“Desktop”菜單中選擇“Current Directory”選項,或者在命令窗口鍵入“filebrowser”,打開當前目錄瀏覽器。使用當前目錄瀏覽器可以完成下面的主要任務:查看和改變路徑;創建、重命名、復制和刪除路徑和文件;打開、運行和查看文件的內容;由于函數不是嚴格的帶限信號,其帶寬可根據一定的精度要求做一近似。根據以下三種情況用MATLAB實現采樣信號及重構并求出兩者誤

8、差,分析三種情況下的結果。(1)的臨界采樣及重構:wm=1,wc=wm,Ts=Pi/wm;(2)的過采樣及重構:wm=1,wc=1.1*wm,Ts=0.7*Pi/wm。(3)的欠采樣及重構:,wm=1,wc=wm,Ts=1.5*Pi/wm。2 MATLAB實現連續信號采樣與重構的理論基礎2.1 連續時間信號 連續信號是指自變量的取值范圍是連續的,且對于一切自變量的取值,除了有若干個不連續點以外,信號都有確定的值與之對應。嚴格來說,MATLAB并不能處理連續信號,而是用等時間間隔點的樣值來近似表示連續信號。當取樣時間間隔足夠小時,這些離散的樣值就能較好地近似連續信號。 在一定條件下,一個連續時間

9、信號完全可以用該信號在等時間間隔上的瞬時值來表示,并且可以用這些樣本值把信號完全恢復過來。這樣,抽樣定理為連續時間信號與離散時間信號的相互轉換提供了理論依據。通過觀察采樣信號的頻譜,發現它只是原信號頻譜的線性重復搬移,只要給它乘以一個門函數,就可以在頻域恢復原信號的頻譜,在時域是否也能恢復原信號時,利用頻域時域的對稱關系,得到了信號。2.2 信號的采樣模擬信號經過 (A/D) 變換轉換為數字信號的過程稱為采樣,信號采樣后其頻譜產生了周期延拓,每隔一個采樣頻率 fs,重復出現一次。為保證采樣后信號的頻譜形狀不失真,采樣頻率必須大于信號中最高頻率成分的兩倍,這稱之為采樣定理。時域采樣定理從采樣信號

10、恢復原信號必需滿足兩個條件:(1) 必須是帶限信號,其頻譜函數在 各處為零;(對信號的要求,即只有帶限信號才能適用采樣定理。)(2) 取樣頻率不能過低,必須 (或 )。(對取樣頻率的要求,即取樣頻率要足夠大,采得的樣值要足夠多,才能恢復原信號。)如圖1所示,給出了信號采樣原理圖圖2-1 信號采樣原理圖由圖2-1可見,其中,沖激采樣信號的表達式為: 其傅立葉變換為,其中。設,分別為,的傅立葉變換,由傅立葉變換的頻域卷積定理,可得 若設是帶限信號,帶寬為, 經過采樣后的頻譜就是將在頻率軸上搬移至處(幅度為原頻譜的倍)。因此,當時,頻譜不發生混疊;而當時,頻譜發生混疊。一個理想采樣器可以看成是一個載

11、波為理想單位脈沖序列的幅值調制器,即理想采樣器的輸出信號,是連續輸入信號調制在載波上的結果,如圖2所示。圖2-2 信號的采樣 用數學表達式描述上述調制過程,則有 理想單位脈沖序列可以表示為 其中是出現在時刻,強度為1的單位脈沖。由于的數值僅在采樣瞬時才有意義,同時,假設 所以又可表示為 2.3 信號的重構設信號被采樣后形成的采樣信號為,信號的重構是指由經過內插處理后,恢復出原來信號的過程,又稱為信號恢復。若設是帶限信號,帶寬為,經采樣后的頻譜為。設采樣頻率,則由式(9)知是以為周期的譜線。現選取一個頻率特性(其中截止頻率滿足)的理想低通濾波器與相乘,得到的頻譜即為原信號的頻譜。與之對應的時域表

12、達式為 而 將及代入得 此式即為用求解的表達式,是利用MATLAB實現信號重構的基本關系式,抽樣函數在此起著內插函數的作用。例:設,其為:即的帶寬為,為了由的采樣信號不失真地重構,由時域采樣定理知采樣間隔,取(過采樣)。利用MATLAB的抽樣函數來表示,有。據此可知:通過以上分析,得到如下的時域采樣定理:一個帶寬為wm的帶限信號f(t),可唯一地由它的均勻取樣信號fs(nTs)確定,其中,取樣間隔Ts</wm, 該取樣間隔又稱為奈奎斯特間隔。 根據時域卷積定理,求出信號重構的數學表達式為: 式中的抽樣函數Sa(wct)起著內插函數的作用,信號的恢復可以視為將抽樣函數進行不同時刻移位后加權

13、求和的結果,其加權的權值為采樣信號在相應時刻的定義值。利用MATLAB中的抽樣函數來表示Sa(t),有,于是,信號重構的內插公式也可表示: 3 MATLAB實現Sa信號的抽樣與重構仿真程序分析 sa(t)=sinc(t/pi)原信號的程序與運行波形圖。1、程序代碼:wm=1;wc=wm; Ts=pi/wm;ws=2*pi/Ts;n=-100:100;nTs=n*Tsf=sinc(nTs/pi);Dt=0.005;t=-20:Dt:20;t1=-20:0.5:20;f1=sinc(t1/pi);subplot(211);plot(t1,f1)xlabel('kTs');ylabe

14、l('f(kTs)');title('sa(t)=sinc(t/pi)信號');grid;y=fft(f1);GF=abs(y);h=(0:length(y)-1)'*fs/length(y);subplot(212);plot(h,GF);xlabel('頻率(Hz)');ylabel('幅值'); grid;2、運行結果圖:圖3-1 Sa信號運行結果圖3.1 Sa信號的臨界采樣及重構3.1.1 程序實現及運行結果圖1、Sa信號的臨界采樣信號程序實現及運行圖:程序代碼:wm=1;wc=wm; Ts=pi/wm;ws=2*

15、pi/Ts;n=-100:100;nTs=n*Tsf=sinc(nTs/pi);Dt=0.005;t=-20:Dt:20;t1=-20:0.5:20;f1=sinc(t1/pi);stem(t1,f1);xlabel('kTs');ylabel('f(kTs)');title('sa(t)=sinc(t/pi)的臨界采樣信號');Grid運行圖:圖3-1-1 臨界采樣信號2、臨界采樣信號的重構程序實現及運行圖:程序代碼:wm=1;wc=wm; Ts=pi/wm;ws=2*pi/Ts;n=-100:100;nTs=n*Tsf=sinc(nTs/pi

16、);Dt=0.005;t=-20:Dt:20;fa=f*Ts*wc/pi*sinc(wc/pi)*(ones(length(nTs),1)*t-nTs'*ones(1,length(t);t1=-20:0.5:20;f1=sinc(t1/pi);stem(t1,f1);plot(t,fa)xlabel('t');ylabel('fa(t)');title('由sa(t)=sinc(t/pi)的臨界采樣信號重構sa(t)');grid運行圖:圖3-1-2 臨界采樣信號重構3.1.2 程序分析Sa(t)=sinc(t/pi) %利用sinc函

17、數生成函數Sa(t)Pi %圓周率n=-100:100; %時域采樣點t=-20:Dt:20 %產生一個時間采樣序列fa=f*Ts*wc/pi*sinc(wc/pi)*(ones(length(nTs),1)*t-nTs'*ones(1,length(t) %信號重構sinc(t1/pi) %繪制f1的非的非零樣值向量plot(t,fa) %繪制fa的圖形stem(t1,f1) %繪制一個二維桿圖圖3-1-2所表示的是臨界采樣信號的重構,其中,其重構信號可以近乎完整的恢復為原信號,其誤差可忽略不計。3.2 Sa信號的過抽樣及重構3.2.1 程序實現及運行結果圖1、過采樣信號及重構程序實

18、現和運行圖程序代碼:wm=1;wc=1.1*wm; Ts=0.7*pi/wm;ws=2*pi/Ts;n=-100:100;nTs=n*Tsf=sinc(nTs/pi);Dt=0.005;t=-10:Dt:10;fa=f*Ts*wc/pi*sinc(wc/pi)*(ones(length(nTs),1)*t-nTs'*ones(1,length(t);t1=-10:0.5:10;f1=sinc(t1/pi);subplot(311);stem(t1,f1);xlabel('kTs');ylabel('f(kTs)');title('sa(t)=si

19、nc(t/pi)的采樣信號');y=fft(f);GF=abs(y);h=(0:length(y)-1)'*fs/length(y);subplot(312);plot(h,GF);xlabel('頻率(Hz)');ylabel('幅值'); grid; subplot(313);plot(t,fa)xlabel('t');ylabel('fa(t)');title('由sa(t)=sinc(t/pi)的過采樣信號重構sa(t)');grid;運行圖:圖3-2-1 過采樣信號及重構2、誤差分析程序實

20、現及運行圖:程序代碼:wm=1;wc=1.1*wm; Ts=0.7*pi/wm;ws=2*pi/Ts;n=-100:100;nTs=n*Tsf=sinc(nTs/pi);Dt=0.005;t=-20:Dt:20;fa=f*Ts*wc/pi*sinc(wc/pi)*(ones(length(nTs),1)*t-nTs'*ones(1,length(t);error=abs(fa-sinc(t/pi);t1=-20:0.5:20;f1=sinc(t1/pi);stem(t1,f1);plot(t,error);xlabel('t');ylabel('error(t)

21、');title('過采樣信號與原信號的誤差error(t)');運行圖:圖3-2-2 誤差分析圖3.2.2 程序分析Sa(t)=sinc(t/pi) %利用sinc函數生成函數Sa(t)error=abs(fa-sinc(t/pi); %求重構信號與原信號誤差f1=sinc(t1/pi); %f1的非零樣值向量xlabel('t') %橫坐標軸ylabel('fa(t)') %縱坐標軸title('由sa(t)=sinc(t/pi)的欠采樣信號重構sa(t)') %書寫圖名圖3-2-1中,時,此時為對原信號的過采樣與重構

22、,由圖3-2-2中可以看出,兩信號的絕對誤差error已在10-6 數量級,說明重構信號的精度已經很高。3.3 Sa信號的欠抽樣及重構3.3.1 程序實現及運行結果圖1、欠采樣信號及重構程序實現和運行圖程序代碼:wm=1;wc=wm; Ts=1.5*pi/wm;ws=2*pi/Ts;n=-100:100;nTs=n*Tsf=sinc(nTs/pi);Dt=0.005;t=-10:Dt:10;fa=f*Ts*wc/pi*sinc(wc/pi)*(ones(length(nTs),1)*t-nTs'*ones(1,length(t);t1=-10:0.5:10;f1=sinc(t1/pi)

23、;subplot(311);stem(t1,f1);xlabel('kTs');ylabel('f(kTs)');title('sa(t)=sinc(t/pi)的采樣信號');y=fft(f);GF=abs(y);h=(0:length(y)-1)'*fs/length(y);subplot(312);plot(h,GF);xlabel('頻率(Hz)');ylabel('幅值'); grid;subplot(313);plot(t,fa)xlabel('t');ylabel('fa

24、(t)');title('由sa(t)=sinc(t/pi)的欠采樣信號重構sa(t)');grid;運行圖:圖3-3-1 欠采樣信號及重構2、誤差分析程序實現及運行圖:程序代碼:wm=1;wc=wm; Ts=1.5*pi/wm;ws=2*pi/Ts;n=-100:100;nTs=n*Tsf=sinc(nTs/pi);Dt=0.005;t=-20:Dt:20;fa=f*Ts*wc/pi*sinc(wc/pi)*(ones(length(nTs),1)*t-nTs'*ones(1,length(t);error=abs(fa-sinc(t/pi);t1=-20:0

25、.5:20;f1=sinc(t1/pi);stem(t1,f1);plot(t,error);xlabel('t');ylabel('error(t)');title('欠采樣信號與原信號的誤差error(t)');運行圖:圖3-3-2 誤差分析圖3.3.2 程序分析Sa(t)=sinc(t/pi) %利用sinc函數生成函數Sa(t)error=abs(fa-sinc(t/pi); %求重構信號與原信號誤差f1=sinc(t1/pi); %f1的非零樣值向量圖3-3-1中,為原信號的欠采樣信號,因為它的取樣頻率不符合奈奎斯特頻率,那么頻移后的各相臨頻譜會發生相互重疊,這樣就無法將他們分開,因而也不能再恢復原信號。頻譜重疊的現象被稱為混疊現象。4 總結通過此次的課程設計使我對MATLAB有了更深的理解,同時對信號的抽樣與重構仿真的掌握。在設計過程中,老師給我們提供了一些參考資料,但這遠遠不夠,重要的還是我們自己要查閱更多的資料和

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論