鄧星月,王琪盛,呂慶梅
紹興文理學(xué)院元培學(xué)院,浙江紹興,312000
信號(hào)處理在通信中發(fā)揮著至關(guān)重要的作用,涵蓋了信號(hào)的產(chǎn)生、傳輸、接收以及處理等方面。傳統(tǒng)信號(hào)分離裝置主要采用主分量分析和最大似然估計(jì)方法對(duì)混合矩陣和噪聲協(xié)方差進(jìn)行估計(jì),設(shè)計(jì)模擬電路分離信號(hào)[1]。由于模擬電路存在信號(hào)質(zhì)量不穩(wěn)定、抗干擾能力弱等問題,本設(shè)計(jì)選擇數(shù)字濾波的方法處理信號(hào)。利用FPGA電路與STM32處理器對(duì)信號(hào)進(jìn)行處理,能提高運(yùn)行速度、增加抗干擾能力和數(shù)據(jù)準(zhǔn)確性[2]。本文的主要研究?jī)?nèi)容為:通過對(duì)兩路信號(hào)和進(jìn)行相加混合得到信號(hào),并對(duì)混合信號(hào)進(jìn)行數(shù)據(jù)采集、分析與處理,經(jīng)過STM32處理器和FPGA電路,分離出信號(hào)和[3]。本裝置的處理芯片采用STM32F407,其作用是調(diào)整數(shù)據(jù)采樣率并進(jìn)行快速傅里葉變換(FFT),得到最大頻率和次大頻率;FPGA電路采用EP4CE22E22A7芯片,其作用是使得信號(hào)經(jīng)過兩個(gè)帶通濾波器后分離信號(hào);另外,本裝置通過兩個(gè)數(shù)模轉(zhuǎn)換器實(shí)現(xiàn)對(duì)兩路信號(hào)的還原與顯示,當(dāng)混合信號(hào)波形和頻率可變時(shí),信號(hào)分離電路仍能正確分離信號(hào)。
本系統(tǒng)設(shè)計(jì)主要由硬件電路和軟件設(shè)計(jì)兩部分組成。硬件電路包括加法器、ADC08200模數(shù)轉(zhuǎn)換器、基于FPGA的數(shù)字濾波器和數(shù)模轉(zhuǎn)換電路,用于將、信號(hào)相加混合傳輸,經(jīng)過處理器分離信號(hào)后數(shù)模轉(zhuǎn)換輸出波形[4];軟件設(shè)計(jì)主要實(shí)現(xiàn)FFT變換、調(diào)整數(shù)據(jù)采樣頻率,計(jì)算、原始信號(hào)頻率,并根據(jù)三次諧波和基波分量的比值,判斷波形類型。最后通過液晶顯示設(shè)備顯示、頻率、波形類型和按鍵設(shè)置的相位差。整體方案框架如圖1所示。
圖1 系統(tǒng)整體方案框架圖
1.2.1 無直流偏置加法器
無直流偏置加法器電路如圖2所示。
圖2 無直流偏置加法器電路
偏置電路的作用是滿足各級(jí)所需電位,以提供合適的靜態(tài)工作點(diǎn)。本裝置以LMH6643比例放大器為基礎(chǔ),采用雙電源供電,輸入輸出偏置相同且都為交流電。由于LMH6643的偏置電流較大,所以電阻可適當(dāng)調(diào)整但不宜過大。接下來利用疊加原理,分析輸出信號(hào)與輸入信號(hào)之間的關(guān)系:
1.2.2 ADC08200采集電路
(1)信號(hào)偏置處理
圖3 信號(hào)偏置電路
(2)ADC08200轉(zhuǎn)換電路
ADC08200是一個(gè)高速模數(shù)轉(zhuǎn)換器,具有成本低、功耗低、體積小和易于使用等優(yōu)點(diǎn)。采樣頻率高達(dá)200Msps,即使信號(hào)頻率為100kHz的三角波,也同樣滿足采樣需求。為1.2V直流電壓,作為加在放大器同相端的輸入。當(dāng)輸入為0時(shí),電路為反相放大電路,即對(duì)端口的交流信號(hào)進(jìn)行放大,放大倍數(shù)為-1;另外,當(dāng)端口的交流信號(hào)為0時(shí),電路為同相放大電路,則有以下輸出公式:
圖4 ADC08200 轉(zhuǎn)換電路原理圖
1.2.3 信號(hào)分離處理器FPGA電路
為保證當(dāng)混合信號(hào)的波形和頻率可變時(shí),本系統(tǒng)仍能正確分離兩路信號(hào),故舍棄模擬濾波器而采用數(shù)字濾波器實(shí)現(xiàn)上述功能。本系統(tǒng)設(shè)計(jì)的數(shù)字濾波器既能實(shí)現(xiàn)線性相位和相位控制,又能靈活改變?yōu)V波器的類型和參數(shù),避免了模擬濾波器所無法克服的電壓漂移、溫度漂移和指標(biāo)計(jì)算復(fù)雜等問題[7]。
數(shù)字濾波器時(shí)域上輸入輸出的關(guān)系是:
本系統(tǒng)采用EP4CE22E22A7作為FPGA的處理芯片,對(duì)混合信號(hào)進(jìn)行數(shù)據(jù)處理和濾波,控制數(shù)字濾波器的工作范圍,分離兩路信號(hào)。同時(shí),ARM板上的STM32處理器對(duì)信號(hào)處理有著同樣重要的作用。首先,F(xiàn)PGA將AD采集的混合信號(hào)經(jīng)過采樣率為2048K的帶通濾波器,使得STM32對(duì)其進(jìn)行2048點(diǎn)數(shù)的FFT變換,點(diǎn)與點(diǎn)頻率間隔為1K[8]。FFT輸出的模的最大值為,次大值為。STM32負(fù)責(zé)計(jì)算信號(hào)頻率、波形類型和按鍵設(shè)置的相位差,最終通過串口發(fā)送給FPGA。FPGA已知、之后,將頻率信號(hào)分別經(jīng)過兩個(gè)帶寬小于5K,采樣率分別為、的帶通濾波器[9],得到正弦信號(hào),信號(hào)分離初步完成。為便于區(qū)分和理解FPGA和STM32兩者的工作范圍,制作了如圖5所示的分工區(qū)域圖。
圖5 FPGA 和STM32 的分工區(qū)域圖
1.2.4 數(shù)模轉(zhuǎn)換電路
由于本系統(tǒng)是將混合信號(hào)分為兩路信號(hào),故需要兩個(gè)數(shù)模轉(zhuǎn)換芯片分別對(duì)輸出信號(hào)進(jìn)行轉(zhuǎn)換,并在示波器上顯示無失真波形。考慮到轉(zhuǎn)換速率問題,本裝置選用AD9742(12位分辨率)和AD9708(8位分辨率)兩種芯片,其轉(zhuǎn)換速率都高達(dá)210Msps,完全滿足分離模擬信號(hào)的帶寬要求。系統(tǒng)中的兩路數(shù)模轉(zhuǎn)換電路,AD9742位于ARM核心板上;AD9708位于擴(kuò)展DA電路上,接下來以AD9742芯片為例分析數(shù)模轉(zhuǎn)換過程。
根據(jù)AD9742數(shù)據(jù)手冊(cè),本芯片可選擇片內(nèi)或片外參考電壓,本設(shè)計(jì)選用片內(nèi)1.2V參考源,且,。接下來開始計(jì)算各輸出電壓、電流值:
設(shè)計(jì)如圖6所示的DA轉(zhuǎn)換電路,其中VOUTA與VOUTB分別為差分放大電路的反相輸入端和同相輸入端,且放大電路采用1.2V直流偏置。利用疊加原理分析計(jì)算如下:
圖6 DA 轉(zhuǎn)換與差分放大電路
圖7 DA 輸出調(diào)理電路
軟件設(shè)計(jì)將硬件電路采樣和處理的數(shù)據(jù)信號(hào)進(jìn)行程序算法,計(jì)算相應(yīng)指標(biāo)以及數(shù)據(jù)分析。STM32主要完成的步驟是:①對(duì)采樣后的混合信號(hào)進(jìn)行2048點(diǎn)數(shù)的FFT變換;②分別計(jì)算正弦波、三角波的三次諧波和基波分量的比值,判斷波形類型;③對(duì)分離信號(hào)進(jìn)行8倍插值濾波,動(dòng)態(tài)控制相位差。其具體邏輯過程如圖8所示。
圖8 軟件設(shè)計(jì)流程圖
1.4.1 FFT變換與波形判斷
另外,函數(shù)FFT返回值的數(shù)據(jù)結(jié)構(gòu)具有對(duì)稱性,所以在實(shí)際計(jì)算時(shí),的取值范圍為。FFT輸出結(jié)果的模的最大值和次大值,即為初始信號(hào)、的頻率,其中最大值為信號(hào)的頻率,記為;次大值為信號(hào)的頻率,記為。
對(duì)于波形判斷來說,正弦波只有基波分量,而三角波具有快速衰減的奇數(shù)次波分量,主要為基波和三次諧波。通過計(jì)算兩個(gè)波形的三次諧波和基波分量的比值,即可快速分辨出波形類型。
1.4.2 設(shè)置與控制相位功能
信號(hào)精度提高后,對(duì)其進(jìn)行初相位差公式計(jì)算[10],計(jì)算公式如下:
2.1.1 固定頻點(diǎn)正弦波分離
結(jié)果如圖9、圖10所示。在研究雙路信號(hào)的分離過程時(shí),已通過多組實(shí)驗(yàn)結(jié)果驗(yàn)證本系統(tǒng)的可行性,這里列舉兩組數(shù)據(jù)詳細(xì)說明。當(dāng)A、B信號(hào)為固定頻點(diǎn)正弦波時(shí),第一組信號(hào)分別為50kHz、100kHz,峰峰值均為1V的正弦波,經(jīng)系統(tǒng)分離后,得到分離信號(hào)分別為50.136kHz、99.576kHz,誤差均在5%以內(nèi);再來看第二組數(shù)據(jù),當(dāng)原始信號(hào)分別為90kHz、100kHz,峰峰值為1V的正弦波時(shí),得到分離信號(hào)分別為89.968kHz、99.880kHz,誤差低于2%,分離結(jié)果更精確,完成還原信號(hào)的目的。
圖9 固定頻點(diǎn)正弦波信號(hào)參數(shù)設(shè)置
圖10 固定頻點(diǎn)下的正弦波信號(hào)分離顯示
2.1.2 可變頻點(diǎn)正弦波/三角波分離
結(jié)果如圖11、圖12所示。在研究不同波形、頻率的信號(hào)分離時(shí),需對(duì)雙路信號(hào)進(jìn)行相關(guān)參數(shù)設(shè)置。從上述兩組數(shù)據(jù)來看,第一組信號(hào)為60kHz、峰峰值為1V的正弦波,=90kHz,峰峰值為1V的三角波。分離出信號(hào)為60.210kHz、為89.972kHz,誤差均在5%以內(nèi);第二組信號(hào)為95kHz、峰峰值為1V的正弦波,=100kHz,峰峰值為1 V 的三角波。分離出信號(hào)為95.038kHz、為99.815kHz,誤差降至1%以內(nèi)。
圖11 可變頻點(diǎn)雙波形信號(hào)參數(shù)設(shè)置
圖12 可變頻點(diǎn)下的雙波形信號(hào)分離顯示
2.1.3A′與B′初相位差的設(shè)置
圖13 固定頻點(diǎn)下的雙波形信號(hào)參數(shù)設(shè)置
圖14 A′與B′初相位差的輸出波形顯示
2.2.1 雙路正弦波信號(hào)分離測(cè)量數(shù)據(jù)
通過多組雙路正弦波信號(hào)數(shù)據(jù)驗(yàn)證了本信號(hào)分離裝置的可行性,其中信號(hào)、的頻率范圍在20~100kHz,峰峰值為1V保持不變。從測(cè)量結(jié)果來看,分離出的信號(hào)與原始信號(hào)誤差均在5%以內(nèi),達(dá)到精度要求,如表1所示。
表1 雙路正弦波信號(hào)測(cè)量結(jié)果數(shù)據(jù)對(duì)比
2.2.2 正弦波/三角波信號(hào)分離測(cè)量數(shù)據(jù)
本組數(shù)據(jù)驗(yàn)證了不同波形、頻率對(duì)信號(hào)分離裝置的影響,其在20kHz和100kHz的臨界頻率時(shí),信號(hào)誤差均在1%以內(nèi),具有良好的信號(hào)分離能力。且從前文提到的輸出波形上來看,均可輸出連續(xù)穩(wěn)定的不失真波形,如表2所示。
表2 不同波形信號(hào)測(cè)量結(jié)果數(shù)據(jù)對(duì)比
2.2.3 設(shè)置A、B初相位差的測(cè)量數(shù)據(jù)
本組數(shù)據(jù)驗(yàn)證了在不同波形下,設(shè)置A、B初相位差對(duì)信號(hào)分離裝置的影響。從數(shù)據(jù)結(jié)果上來看,輸出信號(hào)A′與B′的初相位差誤差均在1%以內(nèi),滿足精度要求,實(shí)現(xiàn)了按鍵設(shè)置與控制初相位差的作用,如表3所示。
表3 不同波形的初相位差測(cè)量結(jié)果數(shù)據(jù)對(duì)比
本文設(shè)計(jì)了一款基于FPGA數(shù)字濾波器的雙路信號(hào)源分離裝置,通過加法器混合信號(hào)、AD采集、數(shù)字濾波、DA轉(zhuǎn)換,實(shí)現(xiàn)了波形、頻率可變,分離兩路信號(hào)的過程。相較于傳統(tǒng)電路,采用STM32與FPGA配合工作,極大地弱化了電路的復(fù)雜程度,提高了運(yùn)行效率,增加了數(shù)據(jù)準(zhǔn)確性,對(duì)日后深入研究信號(hào)分離系統(tǒng)具有一定指導(dǎo)和參考意義。