利用MATLAB仿真多普勒效應(yīng)_第1頁
利用MATLAB仿真多普勒效應(yīng)_第2頁
利用MATLAB仿真多普勒效應(yīng)_第3頁
利用MATLAB仿真多普勒效應(yīng)_第4頁
利用MATLAB仿真多普勒效應(yīng)_第5頁
已閱讀5頁,還剩2頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、利用MATLAB仿真多普勒效應(yīng) 某某某摘 要:分析多普勒效應(yīng)特性,建立數(shù)學(xué)模型,利用MATLAB軟件對其進行仿真試驗,進行定量分析,根據(jù)仿真試驗結(jié)果繪制出聽者接收到的信號的頻率變化曲線以及用信號處理工具箱函數(shù)spectrogram繪制的時間頻率圖,并生成相應(yīng)的聲音。關(guān)鍵詞:Doppler effect MATLAB/ Simulink0 研究背景多普勒效應(yīng)是由生在德國的奧地利物理學(xué)家多普勒(Johann Doppler 1802一1853)發(fā)現(xiàn)的。1845年,荷蘭氣象學(xué)家巴依斯巴洛(h.d.Buys Ballot)測得了聲音的多普勒效應(yīng)。一輛汽車在我們身旁急馳而過,車上喇叭的音調(diào)有一個從高到低

2、的突然變化;站在鐵路旁邊聽火車的汽笛聲也能夠發(fā)現(xiàn),火車迅速迎面而來時音調(diào)較靜止時為高,而火車迅速離去時則音調(diào)較靜止時為低。這是日常生活中的一個多普勒效應(yīng)的例子。在天文、通信等領(lǐng)域還有眾多的例子。當(dāng)波源或觀察者相對于媒質(zhì)運動時,或者說波源和觀察者有相對運動時,觀察者接受到的震動頻率與波源震動頻率不同的現(xiàn)象,稱為多普勒效應(yīng)。對于多普勒效應(yīng)的討論,一般僅限于聲源和聽者在同一直線上運動的情況。當(dāng)聲源和聽者不在同一直線上運動時,接收頻率變化比較復(fù)雜,聽者接收到的信號波形方程也難以用解析式表示。MATLA具有強大的數(shù)值計算和仿真功能以及圖形技術(shù)。本文試圖從MATLAB編程的角度出發(fā),應(yīng)用MATLAB的Si

3、mulink仿真試驗方法,建立仿真的試驗環(huán)境,對聲源和聽者不在同一直線上運動的情況下產(chǎn)生的多普勒效應(yīng)特性進行分析,產(chǎn)生極好的模擬,實現(xiàn)多普勒效應(yīng)的驗證,繪制出聽者接收到的信號的頻率變化曲線以及用信號處理工具箱函數(shù)spectrogram繪制的時間頻率圖,并生成相應(yīng)的聲音。1 基本原理以下公式描述了多普勒效應(yīng)現(xiàn)象的各個物理量之間的定量關(guān)系: (1-1)其中, f0是聲源發(fā)出的聲音的頻率; v是聽者與聲源的相對運動速度;為速度矢量與聲源和聽者的連線夾角;vs為聲音在空氣中傳播的速度,f是聽者聽到的聲音頻率。 2 理論模型多普勒效應(yīng)-設(shè)聲源距離聽者的水平距離為,以v的速度沿水平方向向聽者直線駛來,其軌

4、跡與聽者的最小距離為垂直距離y ,聲源的頻率為f0,試求聽者接受到的信號的頻率變化曲線以及用信號處理工具箱函數(shù)spectrogram繪制的時間頻率圖,并生成相應(yīng)的聲音。3 仿真試驗下面是一段用MATLAB的M文件依據(jù)公式(1-1)原理編寫的程序(1-1)。它會產(chǎn)生一個名為dopp.wav的表現(xiàn)多普勒效應(yīng)的聲音文件,描述火車向一個距離鐵路30米(垂直距離)、距火車150(水平距離)的聽者開來時他聽到的聲音。將u1送入圖3-1所示的Simulink仿真系統(tǒng),再一次聽到該聲音,并且看到用頻譜儀表現(xiàn)的聲音頻率隨時間的變化的情況。表3-1和表3-2給出了仿真系統(tǒng)中兩個模塊的主要參數(shù)設(shè)置。表3-1 Fro

5、m Multimedia File(波形文件)的主要參數(shù) 模塊名稱 From Multimedia File 位置 DSP System toolbox / Signal Processing Sources參 數(shù) 名 稱參 數(shù) 值File name(文件名)Dopp.wavSamples per output frame(輸出每幀中的樣值數(shù))1024表3-2 To Audio Device(揚聲器)的主要參數(shù) 模塊名稱 To Audio Device 位置DSP System toolbox / Signal Processing Sinks參 數(shù) 名 稱參 數(shù) 值 DeviceDefaul

6、tQueue duration(seconds)(隊列延遲時間)1Automatically determine Buffer size(自動確定緩沖區(qū)長度)選中圖3-1 顯示聲音信號(多普勒效應(yīng))的仿真系統(tǒng)模型 程序1-1% 多普勒效應(yīng)程序x0=150; %mv=50; %車速m/sy0=30; %mc=330; %聲音在空氣中的速度m/sf0=2000; %聲音的頻率Hzfs=8000; %采樣頻率t=0:1/fs:6; %規(guī)定t的范圍和步進x_t=-x0+v.*t; %火車與觀察者的水平距離y=y0; %火車與觀察者的垂直距離r=sqrt(x_t.2+y.2); %火車與觀察者間距離co

7、stheta=x_t./r; %聲速矢量與火車和聽者間連線夾角的余弦f=f0./(1+v.*costheta./c); %聽者接收到的頻率fmin=min(f); fmax=max(f);voltage=(f-fmin)./(fmax-fmin)*2-1; %歸一化調(diào)頻電壓在 -1 +1之間 1signal=0.5*vco(voltage,fmin fmax,fs); %壓控震蕩器,由輸入電壓控制輸出信號頻率u=sin(2*pi*f0*t); %聲源發(fā)出的信號sound(u,fs); %播放聲源發(fā)出的信號 2pause(5); %暫停 3sound(signal,fs); %播放聽者接收到的信

8、號 4wavwrite(signal,fs,dopp.wav); %音頻數(shù)據(jù)存盤 5figure(1);plot(t,f);xlabel(Time/s);ylabel(Freq/Hz); %做出聽者接收到的信號的頻率變化曲線figure(2);spectrogram(signal,kaiser(256,5),220,512,fs,yaxis); %做出時間頻率圖 6axis(0 6,1000,spectro3000) 程序難點分析1 在計算機中所能存儲的數(shù)字序列,也即模擬信號必須通過取樣和量化后,變成相應(yīng)的數(shù)字信號,才能被計算機存儲和處理。對音頻信號來說,實現(xiàn)模擬音頻信號與數(shù)字音頻信號之間的轉(zhuǎn)

9、化模塊就是聲卡,MATLAB可以方便地對聲卡進行諸如采樣頻率等輸入/輸出參數(shù)的配置。2 播放火車靜止時的汽笛聲。使用命令“sound”將數(shù)字序列以設(shè)定的采樣速率輸出到聲卡,通過聲卡轉(zhuǎn)化為模擬音頻信號。“sound”用法是: sound(y,Fs); 其中:y為取值范圍必須在-1,,1區(qū)間的n行1列的數(shù)字序列(單聲道輸出)。Fs為設(shè)定的采用速率,一般聲卡支持5000Hz到Hz。3 此處暫停必不可少,且時間要足夠,以便再打開聲音系統(tǒng),這個量與計算機硬件有關(guān)。4 播放靜止的聽者聽到運動的火車的汽笛聲。5 MATLAB可以記錄的音頻信號直接保存為“*.wav”格式。利用命令“wavwrite(y,Fs

10、,Filename);”就可以將向量y存儲為取樣頻率為Fs的wav音頻 文件。6 另一個函數(shù)發(fā)生器是壓控振蕩器(VCO),它由輸入向量來決定某個震蕩頻率的信號。此處,繪制生成信號的光譜圖。 頻域測量儀器(頻譜儀Spectrum Scope)計算機仿真中的頻譜儀應(yīng)用的是數(shù)字信號處理中的快速傅里葉變換(FFT)技術(shù),它能完成數(shù)據(jù)流從時域到頻域的變換。將時域的數(shù)據(jù)流取出一段,即FFT size(快速傅里葉變換的長度)確定為N,通常要求N是2的冪次方。同時需要設(shè)置相應(yīng)長度的Buffer Size(緩存器)。N的大小(即時窗的長短)決定了頻譜儀的分辨率,N越大,頻率的分辨率就越高,但相應(yīng)的計算時間也愈長

11、。希望所研究的譜線內(nèi)容出現(xiàn)在頻譜儀顯示窗的中間部分,能看到在頻率軸上譜線的低端和高端的情況,以便于觀察和分析。要做到這一點,將輸入信號的采樣頻率取為期望的頻率顯示窗最大值的兩倍即可。注意,頻譜儀的采樣頻率與被測信號的采樣頻率要一致。4 仿真結(jié)果及分析(1)仿真結(jié)果圖4-1所示:M文件程序運行結(jié)束時繪出的聽者接收到信號的頻率變化曲線。圖4-2所示:用信號處理工具箱函數(shù)spectrogram繪制的時間頻率圖。圖4-3所示:某個時刻仿真系統(tǒng)中的頻譜儀上顯示的功率譜。圖4-1 聽者接收到的信號的頻率變化曲線 圖4-2 時間頻率圖(Swept-Frequency Waveforms)T=0s T=3s

12、T=6s 圖4-3 頻譜儀顯示結(jié)果分析 傅里葉變換是把各種形式的信號用正弦信號表示,因此非正弦信號進行傅里葉變換,會得到與原信號頻率不同的成分都是原信號頻率的整數(shù)倍。這些高頻信號是用來修飾頻率與原信號相同的正弦信號,使之趨近于原信號的。所以說,頻譜上頻率最低的一個峰(往往是幅度上最高的),就是原信號頻率。由上可知,聽者接收到的信號的頻率先高于原來的汽笛聲,后低于原來的汽笛聲。5 結(jié)束語在MATLAB/Simulink下,從數(shù)學(xué)模型到計算機仿真模型的轉(zhuǎn)換非常容易。本文利用Simulink結(jié)合M文件編程的方法,使其同時具備圖形界面的直觀性和字符界面的強大功能。事實上,所有Simulink的模塊以及系統(tǒng)構(gòu)建、仿真參數(shù)等均可通過編程語句實現(xiàn)。針對聲源和聽者不在同一直線上運動情況,利用MATLAB/Simulink軟件對

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論