劉小群
(寶雞文理學院物理與光電技術學院,陜西寶雞 721016)
相關性研究主要解決信號內部的關聯問題、信號與信號之間的相干問題[1]。通信系統中常見的信號是正弦波信號,信道中的噪聲是白噪聲信號。這兩種信號自相關函數的研究對于通信系統十分重要,研究白噪聲的自相關函數對于信號編碼很有意義。信號的自相關分析對于分析信號的特點及頻域特性也十分重要。LabVIEW 是一種圖形化編程軟件,圖形化編程是它與其他編程方法最大的區別,它的程序更加直觀,方便理解與修改[2-3]。用戶能夠按照自己的需求設計系統功能,采用模塊化的設計思路,操作方便,節省成本。文中設計了基于LabVIEW的通信信號自相關研究系統,首先產生正弦波、白噪聲及正弦波疊加白噪聲3 種信號,然后分別分析3 種波形的自相關函數及其功率譜。
文中設計的信號自相關分析系統的功能如下:
1)能夠產生正弦波、白噪聲及疊加白噪聲的正弦波3 種信號,且波形的頻率、幅值能夠由用戶進行設置;
2)將所產生的波形通過自相關函數輸出其自相關波形;
3)將自相關波形通過FFT 函數進行功率譜分析,并輸出功率譜波形圖;
4)前面板上顯示所產生的波形、自相關波形及其功率譜的波形。通過前面板可以調節正弦波及白噪聲的幅值、頻率。
信號相關性分析系統首先利用LabVIEW 中的波形生成函數產生正弦波、白噪聲及疊加白噪聲的正弦波3 種信號;通過自相關函數分析3 種信號的自相關波形,將自相關波形通過FFT 函數進行功率譜分析并輸出功率譜波形圖。根據波形圖顯示的結果研究信號的相關性及其頻域特征。系統總體結構如圖1 所示。

圖1 系統總體結構
LabVIEW 程序由前面板和程序框圖形成,用戶可以通過前面板完成數據的輸入輸出顯示。類似于儀器的操作面板。系統的前面板如圖2 所示。前面板上有信號幅值、頻率及所產生的波形、自相關函數波形及其功率譜的波形等[4-7]。用戶可以通過前面板輸入正弦波及白噪聲的幅值、頻率等信息。波形圖顯示控件能夠顯示所產生的波形、自相關函數的波形及功率譜波形。

圖2 系統的前面板
程序框圖是實現系統功能的核心,實現用戶需要的功能,用戶根據自己的需要選擇函數、結構等進行連接并調試運行,程序框圖中包含了前面板上控件、函數、結構等[8-11]。LabVIEW 中包括數值、數組、布爾、字符串等操作函數,有循環結構、條件結構、順序結構、公式節點等,方便用戶設計程序框圖,且設計的程序框圖十分直觀[12-14]。該系統的程序框圖如圖3所示。

圖3 系統的程序框圖
信號相關性分析系統主要由程序框圖實現3 種波形信號的產生、信號相關性分析及FFT 變換等功能。利用正弦波發生器及均勻白噪聲發生器可以產生正弦波及白噪聲。兩種波形相加形成疊加白噪聲的正弦波。每一個波形周期內的點數可以通過采樣點數來設置,信號的幅值、頻率、相位等都可以通過前面板進行設置。產生的3 種信號分別通過自相關函數得到它們的自相關波形,并顯示在前面板上的波形圖顯示控件中。自相關波形通過FFT 得到功率譜波形并輸出顯示。波形的頻率、幅值能夠由前面板上的控件進行設置。
信號相關性系統仿真首先通過波形圖控件觀察產生的正弦波、白噪聲及正弦波疊加白噪聲3 種信號,并調節波形頻率、幅值。將所產生的波形通過自相關函數輸出其自相關波形;通過波形圖控件觀察比較自相關波形。然后將自相關波形通過FFT 函數進行功率譜分析并輸出功率譜波形圖。前面板上顯示所產生的波形、自相關波形及其功率譜的波形。通過前面板可以調節正弦波及白噪聲的幅值、頻率。分別設置正弦波的幅值、頻率、白噪聲的幅值進行仿真,結果如圖4~6 所示。

圖4 10 Hz、5 V正弦波輸出顯示
經仿真,通過選擇設置正弦波的幅值、頻率產生相應的正弦波、白噪聲及疊加白噪聲的正弦波,并經過自相關函數輸出3 路信號的自相關波形,在3 個波形圖控件中分別顯示結果。然后通過FFT 函數剖析3 路信號的功率譜波形。從自相關波形圖可以發現,正弦波的自相關函數是周期的,疊加白噪聲的正弦波的自相關函數也是周期信號。白噪聲的自相干函數為一個沖激函數,說明只有在t=0 時刻白噪聲是相關的,其余時刻互不相干。因此,白噪聲能夠用于通信中。

圖5 50 Hz、5 V正弦波輸出顯示

圖6 100 Hz、1 V正弦波輸出顯示
利用LabVIEW 設計了信號相關性研究系統,文中所設計的系統可以產生幅值、頻率可調的正弦波、白噪聲及疊加白噪聲的正弦波,通過LabVIEW 中的自相關函數對3 種波形的自相關波形進行仿真,同時利用FFT 函數對頻譜特性進行仿真。便于研究通信系統中的信號、噪聲的自相關特性及頻譜特性。該系統具備設計簡潔,靈活性強的優點。運用LabVIEW 設計虛擬儀器系統,設計容易且非常直觀,界面可以根據用戶的需求設計,可以實現數據的保存、處理分析、網絡傳輸等。也能夠用于一些數據的收集監測、安全防范等。用戶能夠根據需要來擴展功能,能夠有效地提升開發效率[15-18]。