王宇 馮進(jìn)良 段靖遠(yuǎn)
【摘要】 此文章的研究基于cotex-m4內(nèi)核的stm32f407芯片,利用快速傅里葉變換算法,對可見光通信信號進(jìn)行時域和頻域分析,并利用Matlab軟件進(jìn)行仿真對比。實驗結(jié)果表明,該算法對硬件要求不高,易于實現(xiàn),有利于在小型集成設(shè)備上實現(xiàn)可見光信號的時頻域分析和顯示。
【關(guān)鍵詞】 快速傅里葉變換 Matlab 時頻域分析
一、引言
與普通光源相比,可見光LED有能量損耗低、高亮度、高可靠性和壽命長等許多優(yōu)點,可見光LED還因其高速調(diào)制特性已被應(yīng)用在可見光通信中(visible light communication,VLC),相比于射頻無線通信技術(shù),VLC技術(shù)有無需申請頻帶、無電磁干擾、發(fā)射功率高、安全性好和造價低等優(yōu)點。
目前VLC技術(shù)已成為國內(nèi)外研究的熱點,研究過程中,對可見光通信信號的研究與分析是必不可少的。信號的分析分為時域分析和頻域分析兩個方面。時域分析是以時間為自變量描述物理量的變化的過程,是信號最基本、最直觀的表達(dá)形式,也是真實世界惟一實際存在的域,因而在時域上對信號進(jìn)行分析必不可少。頻域分析的目的是把復(fù)雜的時間歷程波形,經(jīng)過傅里葉變換分解為若干單一的諧波分量來研究,得到動態(tài)信號中的各個頻率成分和頻率分布范圍,求出各個頻率成分的幅值分布和能量分布,從而給出主要幅度和能量分布的頻率值,進(jìn)而可以對信號的信息作定量解釋。本文主要研究可見光通信信號的時域和頻域分析算法及硬件實現(xiàn),并對所設(shè)計的信號分析儀進(jìn)行實驗和仿真對比。
二、信號分析儀的設(shè)計
LED是單色光源,不能產(chǎn)生包含所有可見光譜的白色光。現(xiàn)在普遍使用的白色LED利用藍(lán)光LED激發(fā)熒光粉形成白光。
分析儀采用脈沖形式的波形作為傳輸信號,用脈沖重復(fù)周期為250ns,脈沖寬度為20ns的信號進(jìn)行時域脈沖響應(yīng)分析時,接收端的的脈沖寬度為77ns。經(jīng)過VLC信道后,脈沖被展寬非常明顯。
考慮到經(jīng)過VLC信道后脈沖被展寬,會在信號速率很高時產(chǎn)生碼間干擾等因素,對可見光通信信號分析儀設(shè)定了參數(shù)指標(biāo)要求:支持測試波段:380nm~780nm,支持VLC信號頻率:0Hz~200KHz,數(shù)據(jù)分析刷新速度≥1次/s.
三、快速傅里葉變換
設(shè)定被采樣信號的頻率為10KHz、占空比為50%的方波信號,為了不失真地恢復(fù)模擬信號,由香農(nóng)采樣定理可知,采樣頻率需大于信號頻率的兩倍,設(shè)定信號分析儀的采樣率為45KHz。
信號頻率和采樣頻率關(guān)系式為:Fn=(n-1)*Fs/N
其中Fn為某點n的頻率,F(xiàn)s為采樣頻率,N為采樣點數(shù)。為了保證精度并使得計算方便,設(shè)定每次采樣的采樣點數(shù)為1024。
在進(jìn)行時域分析時,采樣1024個點,采樣值存到數(shù)據(jù)類型為int型、長度為1024的AD_Buffer[]數(shù)組中,計算1024個點的平均值作為時域顯示的觸發(fā)電平(AD_Level)。同時滿足下面三個條件的點i作為觸發(fā)點:
板載液晶屏為800*480的分辨率,進(jìn)行橫屏顯示時,由于像素點個數(shù)的限制,在液晶屏上顯示從點i開始的連續(xù)635個像素點組成的波形圖。
進(jìn)行頻域分析時,首先對1024個采樣點進(jìn)行快速傅里葉變換,然后把各頻率點所對應(yīng)的模值存儲到數(shù)組中。用635個像素點對1024個采樣點進(jìn)行頻域顯示,為了更為直觀的顯示信號的頻譜特性,采用柱形圖的方式進(jìn)行顯示。這里設(shè)S為每個數(shù)據(jù)顯示占用的像素個數(shù),L為可用像素點數(shù),為635個,需要顯示的頻譜個數(shù)D=S/L,那么:Output[j]=
其中Output[j]為得到的要顯示的幅值,j,P為需要求平均的個數(shù),P=H/D??焖俑盗⑷~變換結(jié)果具有對稱性,只需使用前半部分的變換結(jié)果,也就是小于采樣頻率一半的結(jié)果,取H=512。Output值的柱狀顯示即為信號的頻域顯示。
四、仿真和實驗
被采樣信號是頻率為10KHz、占空比為50%的方波信號。通過可見光通信信號分析儀對信號進(jìn)行采樣,并通過串口調(diào)試助手傳輸采樣數(shù)據(jù)到matlab,順序取1024個數(shù)據(jù)中的300個繪制成時域波形圖,如圖1所示。
圖1中信號時域顯示的數(shù)據(jù)來自于可見光通信信號分析儀,在可見光通信信號分析儀上的時域圖形和matlab所繪制的是一致的。
調(diào)用matlab中的快速傅里葉變換函數(shù)對串口調(diào)試助手傳輸?shù)?024個數(shù)據(jù)做FFT變換,變換結(jié)果如圖2所示。理論上10KHz方波的FFT變換的頻率分布應(yīng)該只有10KHz、30KHz、50KHz等譜線,由于頻譜混疊現(xiàn)象的存在,圖2中出現(xiàn)頻率為5KHz、15KHz、25KHz等譜線。實驗的采樣率為45KHz,10KHz方波信號的3次諧波頻率為30KHz,5次諧波頻率為50KHz,由奈奎斯特定理可知,采樣頻率必須為信號最高頻率的兩倍以上,否則會出現(xiàn)頻譜混疊現(xiàn)象,而理論上,方波的諧波次數(shù)是無限的,這里考慮到該實驗只是作為驗證性實驗,目的是和可見光通信信號分析儀的頻譜顯示做對比,所以暫不考慮諧波的影響。
利用串口調(diào)試助手,直接將通過可見光通信信號分析儀進(jìn)行FFT變換后的1024個數(shù)據(jù)在matlab上進(jìn)行繪圖顯示,考慮到液晶屏的像素點有限,為了清晰顯示FFT變化的結(jié)果,在可見光通信信號分析儀上對采樣信號經(jīng)過FFT變化后的幅值做了*處理,如圖3所示。與圖2比較可以看到,可見光通信信號分析儀的頻域信號顯示和matlab仿真結(jié)果基本一致,略有差異是由于stm32f407的數(shù)據(jù)處理精度和matlab的處理精度不一致造成。
五、結(jié)論
通過上述分析,可以看出采用本文提出的算法能夠?qū)崿F(xiàn)可見光信號的時域和頻域分析,在對可見光信號進(jìn)行直觀顯示的同時還可以做信息的定量分析,而且該算法對硬件要求不高,易于實現(xiàn),有利于在小型集成設(shè)備上實現(xiàn)可見光信號的時頻域分析和顯示,方便可見光通信的研究。
參 考 文 獻(xiàn)
[1]NAKAMURA S Present performance of InGaN based blue/green/yellow LEDs 1997(04)
[2]顧玉娟.無線光通信技術(shù)研究[期刊論文]《山東通信技術(shù)》2006年4期
[3]TANAKA Y,HARUYAM S,NAKAGAWA M.Wireless optical transmissions with white colored LED for wireless home links[c].PIMRC2000 Proceedings,2000,2:1325-9