鄧星月,王琪盛,呂慶梅
紹興文理學院元培學院,浙江紹興,312000
信號處理在通信中發揮著至關重要的作用,涵蓋了信號的產生、傳輸、接收以及處理等方面。傳統信號分離裝置主要采用主分量分析和最大似然估計方法對混合矩陣和噪聲協方差進行估計,設計模擬電路分離信號[1]。由于模擬電路存在信號質量不穩定、抗干擾能力弱等問題,本設計選擇數字濾波的方法處理信號。利用FPGA電路與STM32處理器對信號進行處理,能提高運行速度、增加抗干擾能力和數據準確性[2]。本文的主要研究內容為:通過對兩路信號和進行相加混合得到信號,并對混合信號進行數據采集、分析與處理,經過STM32處理器和FPGA電路,分離出信號和[3]。本裝置的處理芯片采用STM32F407,其作用是調整數據采樣率并進行快速傅里葉變換(FFT),得到最大頻率和次大頻率;FPGA電路采用EP4CE22E22A7芯片,其作用是使得信號經過兩個帶通濾波器后分離信號;另外,本裝置通過兩個數模轉換器實現對兩路信號的還原與顯示,當混合信號波形和頻率可變時,信號分離電路仍能正確分離信號。
本系統設計主要由硬件電路和軟件設計兩部分組成。硬件電路包括加法器、ADC08200模數轉換器、基于FPGA的數字濾波器和數模轉換電路,用于將、信號相加混合傳輸,經過處理器分離信號后數模轉換輸出波形[4];軟件設計主要實現FFT變換、調整數據采樣頻率,計算、原始信號頻率,并根據三次諧波和基波分量的比值,判斷波形類型。最后通過液晶顯示設備顯示、頻率、波形類型和按鍵設置的相位差。整體方案框架如圖1所示。

圖1 系統整體方案框架圖
1.2.1 無直流偏置加法器
無直流偏置加法器電路如圖2所示。

圖2 無直流偏置加法器電路
偏置電路的作用是滿足各級所需電位,以提供合適的靜態工作點。本裝置以LMH6643比例放大器為基礎,采用雙電源供電,輸入輸出偏置相同且都為交流電。由于LMH6643的偏置電流較大,所以電阻可適當調整但不宜過大。接下來利用疊加原理,分析輸出信號與輸入信號之間的關系:
1.2.2 ADC08200采集電路
(1)信號偏置處理

圖3 信號偏置電路
(2)ADC08200轉換電路
ADC08200是一個高速模數轉換器,具有成本低、功耗低、體積小和易于使用等優點。采樣頻率高達200Msps,即使信號頻率為100kHz的三角波,也同樣滿足采樣需求。為1.2V直流電壓,作為加在放大器同相端的輸入。當輸入為0時,電路為反相放大電路,即對端口的交流信號進行放大,放大倍數為-1;另外,當端口的交流信號為0時,電路為同相放大電路,則有以下輸出公式:

圖4 ADC08200 轉換電路原理圖
1.2.3 信號分離處理器FPGA電路
為保證當混合信號的波形和頻率可變時,本系統仍能正確分離兩路信號,故舍棄模擬濾波器而采用數字濾波器實現上述功能。本系統設計的數字濾波器既能實現線性相位和相位控制,又能靈活改變濾波器的類型和參數,避免了模擬濾波器所無法克服的電壓漂移、溫度漂移和指標計算復雜等問題[7]。
數字濾波器時域上輸入輸出的關系是:
本系統采用EP4CE22E22A7作為FPGA的處理芯片,對混合信號進行數據處理和濾波,控制數字濾波器的工作范圍,分離兩路信號。同時,ARM板上的STM32處理器對信號處理有著同樣重要的作用。首先,FPGA將AD采集的混合信號經過采樣率為2048K的帶通濾波器,使得STM32對其進行2048點數的FFT變換,點與點頻率間隔為1K[8]。FFT輸出的模的最大值為,次大值為。STM32負責計算信號頻率、波形類型和按鍵設置的相位差,最終通過串口發送給FPGA。FPGA已知、之后,將頻率信號分別經過兩個帶寬小于5K,采樣率分別為、的帶通濾波器[9],得到正弦信號,信號分離初步完成。為便于區分和理解FPGA和STM32兩者的工作范圍,制作了如圖5所示的分工區域圖。

圖5 FPGA 和STM32 的分工區域圖
1.2.4 數模轉換電路
由于本系統是將混合信號分為兩路信號,故需要兩個數模轉換芯片分別對輸出信號進行轉換,并在示波器上顯示無失真波形??紤]到轉換速率問題,本裝置選用AD9742(12位分辨率)和AD9708(8位分辨率)兩種芯片,其轉換速率都高達210Msps,完全滿足分離模擬信號的帶寬要求。系統中的兩路數模轉換電路,AD9742位于ARM核心板上;AD9708位于擴展DA電路上,接下來以AD9742芯片為例分析數模轉換過程。
根據AD9742數據手冊,本芯片可選擇片內或片外參考電壓,本設計選用片內1.2V參考源,且,。接下來開始計算各輸出電壓、電流值:
設計如圖6所示的DA轉換電路,其中VOUTA與VOUTB分別為差分放大電路的反相輸入端和同相輸入端,且放大電路采用1.2V直流偏置。利用疊加原理分析計算如下:

圖6 DA 轉換與差分放大電路

圖7 DA 輸出調理電路
軟件設計將硬件電路采樣和處理的數據信號進行程序算法,計算相應指標以及數據分析。STM32主要完成的步驟是:①對采樣后的混合信號進行2048點數的FFT變換;②分別計算正弦波、三角波的三次諧波和基波分量的比值,判斷波形類型;③對分離信號進行8倍插值濾波,動態控制相位差。其具體邏輯過程如圖8所示。

圖8 軟件設計流程圖
1.4.1 FFT變換與波形判斷
另外,函數FFT返回值的數據結構具有對稱性,所以在實際計算時,的取值范圍為。FFT輸出結果的模的最大值和次大值,即為初始信號、的頻率,其中最大值為信號的頻率,記為;次大值為信號的頻率,記為。
對于波形判斷來說,正弦波只有基波分量,而三角波具有快速衰減的奇數次波分量,主要為基波和三次諧波。通過計算兩個波形的三次諧波和基波分量的比值,即可快速分辨出波形類型。
1.4.2 設置與控制相位功能
信號精度提高后,對其進行初相位差公式計算[10],計算公式如下:
2.1.1 固定頻點正弦波分離
結果如圖9、圖10所示。在研究雙路信號的分離過程時,已通過多組實驗結果驗證本系統的可行性,這里列舉兩組數據詳細說明。當A、B信號為固定頻點正弦波時,第一組信號分別為50kHz、100kHz,峰峰值均為1V的正弦波,經系統分離后,得到分離信號分別為50.136kHz、99.576kHz,誤差均在5%以內;再來看第二組數據,當原始信號分別為90kHz、100kHz,峰峰值為1V的正弦波時,得到分離信號分別為89.968kHz、99.880kHz,誤差低于2%,分離結果更精確,完成還原信號的目的。

圖9 固定頻點正弦波信號參數設置

圖10 固定頻點下的正弦波信號分離顯示
2.1.2 可變頻點正弦波/三角波分離
結果如圖11、圖12所示。在研究不同波形、頻率的信號分離時,需對雙路信號進行相關參數設置。從上述兩組數據來看,第一組信號為60kHz、峰峰值為1V的正弦波,=90kHz,峰峰值為1V的三角波。分離出信號為60.210kHz、為89.972kHz,誤差均在5%以內;第二組信號為95kHz、峰峰值為1V的正弦波,=100kHz,峰峰值為1 V 的三角波。分離出信號為95.038kHz、為99.815kHz,誤差降至1%以內。

圖11 可變頻點雙波形信號參數設置

圖12 可變頻點下的雙波形信號分離顯示
2.1.3A′與B′初相位差的設置

圖13 固定頻點下的雙波形信號參數設置

圖14 A′與B′初相位差的輸出波形顯示
2.2.1 雙路正弦波信號分離測量數據
通過多組雙路正弦波信號數據驗證了本信號分離裝置的可行性,其中信號、的頻率范圍在20~100kHz,峰峰值為1V保持不變。從測量結果來看,分離出的信號與原始信號誤差均在5%以內,達到精度要求,如表1所示。

表1 雙路正弦波信號測量結果數據對比
2.2.2 正弦波/三角波信號分離測量數據
本組數據驗證了不同波形、頻率對信號分離裝置的影響,其在20kHz和100kHz的臨界頻率時,信號誤差均在1%以內,具有良好的信號分離能力。且從前文提到的輸出波形上來看,均可輸出連續穩定的不失真波形,如表2所示。

表2 不同波形信號測量結果數據對比
2.2.3 設置A、B初相位差的測量數據
本組數據驗證了在不同波形下,設置A、B初相位差對信號分離裝置的影響。從數據結果上來看,輸出信號A′與B′的初相位差誤差均在1%以內,滿足精度要求,實現了按鍵設置與控制初相位差的作用,如表3所示。

表3 不同波形的初相位差測量結果數據對比
本文設計了一款基于FPGA數字濾波器的雙路信號源分離裝置,通過加法器混合信號、AD采集、數字濾波、DA轉換,實現了波形、頻率可變,分離兩路信號的過程。相較于傳統電路,采用STM32與FPGA配合工作,極大地弱化了電路的復雜程度,提高了運行效率,增加了數據準確性,對日后深入研究信號分離系統具有一定指導和參考意義。