本發(fā)明涉及一種信號(hào)采集方法和系統(tǒng),尤其涉及一種交流電信號(hào)的高精度采集方法和采集系統(tǒng)。
背景技術(shù):
各類通用性儀表的設(shè)計(jì),尤其是高精度電學(xué)儀器設(shè)備的設(shè)計(jì)過程中,數(shù)據(jù)采集一直是不可或缺的一環(huán),數(shù)據(jù)采集系統(tǒng)的指標(biāo)直接影響了所設(shè)計(jì)的儀表、傳感器的技術(shù)指標(biāo)。目前在儀表的設(shè)計(jì)和通用信號(hào)的幅頻特性測試過程中,其信號(hào)采集及顯示一般采用示波器,而一般示波器的垂直分辨力為8位、內(nèi)置計(jì)數(shù)器分辨力為6位,這就難以滿足高精度儀表的設(shè)計(jì)需求,而垂直分辨力或頻率指標(biāo)較高的專用示波器的價(jià)格在普通示波器基礎(chǔ)上會(huì)成幾何量的增加,這就對(duì)低成本、高精度的信號(hào)采集方法提出了迫切的需求。
通常為了滿足高精度的要求,需要采用更為高級(jí)的芯片和處理電路,這樣就會(huì)使成本非常高昂。因此,如何采用低成本的硬件電路、配合高精度的采樣算法,降低采樣系統(tǒng)對(duì)硬件條件的需求、同時(shí)提高系統(tǒng)處理能力、加快處理速度是目前的一個(gè)急需的技術(shù)。
技術(shù)實(shí)現(xiàn)要素:
為了解決上述問題,本發(fā)明提供一種信號(hào)采集分析系統(tǒng),包括:主控制器、數(shù)據(jù)轉(zhuǎn)換器ADC,其特征在于:還包括測頻模塊,其中主控制器包括主控制單元、輔助控制單元、邏輯門陣列,邏輯門陣列負(fù)責(zé)驅(qū)動(dòng)ADC、測量并計(jì)算被測信號(hào)頻率,主控單元負(fù)責(zé)人機(jī)交互及與輔助控制單元、上位機(jī)通信其中:邏輯門陣列及前端電路能精確測量信號(hào)頻率,在信號(hào)頻率已知的情況下主控制單元能精確計(jì)算出信號(hào)幅值,輔助控制單元能擴(kuò)展主控制單元的其他低速需求,其中所述系統(tǒng)的工作過程包括:a)測頻模塊將被測信號(hào)進(jìn)行處理,調(diào)整為邏輯門陣列的輸入輸出單元(IO)輸入范圍能的晶體管-晶體管邏輯(TTL)電平;由邏輯門陣列內(nèi)部的等精度測頻模塊測量并計(jì)算出被測信號(hào)的精確頻率值,并上傳至主控制單元;作為快速傅里葉變換所得頻譜計(jì)算幅值的參考頻率;b)邏輯門陣列驅(qū)動(dòng)數(shù)據(jù)轉(zhuǎn)換器對(duì)測量數(shù)據(jù)進(jìn)行數(shù)據(jù)轉(zhuǎn)換,配合前端電路測量并計(jì)算出被測信號(hào)頻率值,并將數(shù)據(jù)發(fā)送給主控制單元;c)主控制單元對(duì)被測信號(hào)的進(jìn)行加窗、快速傅里葉變換計(jì)算進(jìn)而得到該信號(hào)的頻譜,計(jì)算出信號(hào)的幅度。
進(jìn)一步地,其特征在于:所述步驟c)的具體實(shí)現(xiàn)如下,將頻譜內(nèi)最大的幅值所對(duì)應(yīng)的頻率標(biāo)號(hào)乘以頻率分辨率,可得到與被測信號(hào)頻率差最小的分辨率頻率值。通過比較測頻模塊所得頻率值與FFT(快速傅里葉變換)計(jì)算得出的頻率,可確定頻譜上的被測信號(hào)頻率在該分辨率頻率的左旁瓣還是右旁瓣,同時(shí)與得到的次最大幅度值作為對(duì)比驗(yàn)證,在確定信號(hào)頻譜的分辨率頻率范圍內(nèi)后即可以通過內(nèi)差法得到該頻率點(diǎn)處的更精確的幅度值。
進(jìn)一步地,其特征在于:所述系統(tǒng)還包括通信模塊、外圍擴(kuò)展模塊、觸摸顯示屏,主控制單元Core1通過通信模塊可與遠(yuǎn)程終端連接,可與系統(tǒng)內(nèi) 的觸控顯示屏進(jìn)行交互;輔助控制單元Core2可通過外圍擴(kuò)展模塊與外圍其他電路連接。
進(jìn)一步地,其特征在于:邏輯門陣列內(nèi)部具有IP,在所述a)步驟中,通過調(diào)用IP核生成抗混疊數(shù)字濾波器,濾掉2倍采樣頻率以上及FFT(快速傅里葉變換)窗配置過程中的無效旁瓣頻率的無用信號(hào)。
進(jìn)一步地,其特征在于:測頻模塊內(nèi)的波形處理電路包括同向比例放大電路、限幅電路、濾波放大電路、施密特觸發(fā)器;被測信號(hào)先經(jīng)同向比例放大電路,隨后經(jīng)過限幅電路將1~12V的信號(hào)限制在0.7V以下,再經(jīng)過后級(jí)濾波放大后輸入遲滯比較器轉(zhuǎn)換成方波,此時(shí)信號(hào)幅值范圍滿足可編程邏輯門陣列(FPGA)的IO輸入范圍。
進(jìn)一步地,其特征在于:主控制單元在多線程的支持下可以將邏輯門陣列發(fā)送來的原始數(shù)據(jù)通過通信模塊轉(zhuǎn)發(fā)給遠(yuǎn)程終端,同時(shí)支持接收遠(yuǎn)程終端的控制命令;輔助控制單元接收到主控制單元的命令后,將頻譜圖輸出到觸摸顯示屏顯示,并可選擇當(dāng)前顯示的波形為原始信號(hào)的波形或者加窗后的波形或者頻譜圖。
進(jìn)一步地,其特征在于:所述C步驟中,采用Flat Top窗函數(shù)進(jìn)行分析,其中,函數(shù)的形式為
其中,
ωj=1-1.985844164102cos(z)+1.71176438506cos(2z)
-1.282075284005cos(3z)+0.667777530266cos(4z)
+0.240160796576cos(5z)+0.056656381764cos(6z)
-0.008134974479cos(7z)+0.000624544650cos(8z)
-0.000019808998cos(9z)+0.000000132974cos(10z)
其中ck為關(guān)于k的常數(shù),k為窗函數(shù)的階數(shù),N為FFT計(jì)算點(diǎn)數(shù),
進(jìn)一步地,其特征在于:原始信號(hào)為:
其中Adc為直流分量幅值,f1為被測信號(hào)頻率,P1為初始相位,fn為干擾信號(hào)頻率。
進(jìn)一步地,其特征在于:得到FFT結(jié)果后通過下面的公式可得到更精確的幅度值:
其中Aavr為最終計(jì)算恢復(fù)得到的幅度值,Aindex為幅度頻譜中幅度值最大點(diǎn)的值。
本發(fā)明還提供一種前面所述信號(hào)采集分析系統(tǒng)的分析方法,其特征在于:包括如下步驟:
測頻模塊將被測信號(hào)進(jìn)行處理,調(diào)整為邏輯門陣列的輸入輸出單元(IO)輸入范圍能的晶體管-晶體管邏輯(TTL)電平;由邏輯門陣列內(nèi)部的等精度測頻模塊測量并計(jì)算出被測信號(hào)的精確頻率值,并上傳至主控制單元;作為快速傅里葉變換計(jì)算的參考頻率;
邏輯門陣列驅(qū)動(dòng)數(shù)據(jù)轉(zhuǎn)換器對(duì)測量數(shù)據(jù)進(jìn)行數(shù)據(jù)轉(zhuǎn)換,配合前端電路測量并計(jì)算出被測信號(hào)頻率值,并將數(shù)據(jù)發(fā)送給主控制單元;
主控制單元對(duì)被測信號(hào)的進(jìn)行加窗、快速傅里葉變換計(jì)算進(jìn)而得到該信號(hào)的頻譜,計(jì)算出信號(hào)的幅度;
其中,所述C步驟中,采用Flat Top窗函數(shù)進(jìn)行分析,其中,函數(shù)的形式為
其中,
ωj=1-1.985844164102cos(z)+1.71176438506cos(2z)
-1.282075284005cos(3z)+0.667777530266cos(4z)
+0.240160796576cos(5z)+0.056656381764cos(6z)
-0.008134974479cos(7z)+0.000624544650cos(8z)
-0.000019808998cos(9z)+0.000000132974cos(10z)
其中ck為關(guān)于k的常數(shù),N為FFT計(jì)算點(diǎn)數(shù),
發(fā)明效果:
通過本發(fā)明的系統(tǒng),能實(shí)時(shí)采集被測信號(hào),分析出被測信號(hào)中的頻譜成分,給出信號(hào)頻率的精確測量結(jié)果、幅值測量精確結(jié)果、實(shí)時(shí)畫出被測信號(hào)波形、頻譜、還可以通過TCP與遠(yuǎn)程終端協(xié)同工作、控制外圍電路。而且本發(fā)明在硬件上采用了FPGA取代了傳統(tǒng)的高級(jí)芯片和處理電路,從而使系統(tǒng)處理能力提高、速度加快、成本降低。
基于本發(fā)明的數(shù)據(jù)采樣和分析方法所設(shè)計(jì)的數(shù)據(jù)采集系統(tǒng),可以實(shí)現(xiàn)交直流信號(hào)的高精度測量,仿真和試驗(yàn)結(jié)果表明,對(duì)頻率未知信號(hào)采樣,其幅值精度可達(dá)10-4,頻率精度可達(dá)10-6,而一般示波器的垂直分辨力為8位、內(nèi)置計(jì)數(shù)器分辨力為6位,因此與傳統(tǒng)的示波器相比,基于本發(fā)明所設(shè)計(jì)的數(shù)據(jù)采集系統(tǒng)結(jié)構(gòu)簡單、成本低、精度高。垂直分辨力最高可達(dá)14位,頻率測量精度可達(dá)12位,因此基于本發(fā)明設(shè)計(jì)的數(shù)據(jù)采集系統(tǒng)能夠切實(shí)提高準(zhǔn)確度,有良好的應(yīng)用前景。
本方案還有一個(gè)優(yōu)點(diǎn)在于整套系統(tǒng)都基于一個(gè)平臺(tái)設(shè)計(jì),設(shè)備接口簡單還可以根據(jù)實(shí)際需要進(jìn)行更換,且系統(tǒng)集成度高、可擴(kuò)展性強(qiáng),系統(tǒng)后續(xù)的優(yōu)化升級(jí)都較為方便,同時(shí),本方案設(shè)計(jì)的數(shù)據(jù)采集系統(tǒng)采樣數(shù)據(jù)和示波器的測試波形和結(jié)果進(jìn)行對(duì)比驗(yàn)證是一致的,證明了系統(tǒng)的可靠性和準(zhǔn)確度。
附圖說明
圖1是本發(fā)明數(shù)據(jù)采集分析系統(tǒng)框圖。
圖2是本發(fā)明分析方法時(shí)域及頻域圖。
圖3是原始時(shí)域波形。
圖4是加窗后時(shí)域波形。
圖5是經(jīng)過FFT變換后時(shí)域波形。
圖6是采用本發(fā)明分析方法的計(jì)算實(shí)例。
圖7是測頻模塊的波形調(diào)理電路。
具體實(shí)施方式
參見圖1,示出了本發(fā)明信號(hào)采集分析系統(tǒng),包括主控制器、數(shù)據(jù)轉(zhuǎn)換器ADC、測頻模塊、通信模塊、外圍擴(kuò)展模塊、電源模塊和觸摸顯示屏幕等。
其中,主控制器包括主控制單元Core1、輔助控制單元Core2、邏輯門陣列FPGA,主控制單元Core1可與輔助控制單元Core2和邏輯門陣列之間發(fā)送接收信號(hào)。并且主控制單元Core1通過通信模塊可與遠(yuǎn)程終端連接;輔助控制單元Core2可通過外圍擴(kuò)展模塊與外圍其他電路連接,并且可與觸摸顯示屏之間收發(fā)信號(hào)。邏輯門陣列FPGA分別通過數(shù)據(jù)轉(zhuǎn)換器ADC、測頻模塊接入 被測信號(hào)。
數(shù)據(jù)轉(zhuǎn)換器ADC用于將測量信號(hào)轉(zhuǎn)換為數(shù)字信號(hào),測頻模塊能將被測信號(hào)轉(zhuǎn)換為FPGA的IO輸入能力范圍內(nèi)的TTL電平;
通過通信模塊,計(jì)算的結(jié)果可以上傳至遠(yuǎn)程終端,遠(yuǎn)程終端也可以與主控制單元Core1、輔助控制單元Core2、邏輯門陣列FPGA進(jìn)行通信,調(diào)整各個(gè)參數(shù),顯示測量結(jié)果,保存實(shí)時(shí)采集的數(shù)據(jù)以便后期回調(diào)、分析數(shù)據(jù);
外圍擴(kuò)展模塊包括各種通信接口、連接方式等,優(yōu)選采用低功耗高性能的ATXMega128作為控制器,包括1路USB、16路AD采集(12bit/1MSPS)、4路SPI、4路IIC等,可以完外圍電路的控制、數(shù)據(jù)采集、通信等功能。
此外,數(shù)據(jù)采集電路優(yōu)選采用工業(yè)級(jí)ADC,擁有8通道同時(shí)輸入,位數(shù)高達(dá)16位,采樣速率510kHz,滿足絕大部分采集需求,同時(shí)通過COX-M口可選擇使用外部時(shí)鐘還是內(nèi)部時(shí)鐘,使用外部時(shí)鐘可以實(shí)現(xiàn)同步采樣傳輸。
測頻模塊內(nèi)的波形調(diào)理電路包括同向比例放大電路、限幅電路、濾波放大電路、施密特觸發(fā)器;被測信號(hào)先經(jīng)過同比例放大電路,隨后經(jīng)過限幅電路將1~12V的信號(hào)限制在0.7V以下,再經(jīng)過后級(jí)濾波放大后輸入遲滯比較器轉(zhuǎn)換成方波,此時(shí)信號(hào)幅值范圍滿足FPGA的IO輸入范圍。利用FPGA內(nèi)的等精度測量模塊可測量并計(jì)算出被測信號(hào)頻率值。測頻模塊和FGPA等實(shí)現(xiàn)了完整的測頻功能。
下面說明所述系統(tǒng)的工作過程:
(1)邏輯門陣列FPGA驅(qū)動(dòng)數(shù)據(jù)轉(zhuǎn)換器ADC對(duì)測量數(shù)據(jù)進(jìn)行數(shù)據(jù)轉(zhuǎn)換,同時(shí)調(diào)用內(nèi)部的IP核(Intellectual Property core)生成抗混疊數(shù)字濾波器(例如FIR濾波器),濾掉2fs(采樣頻率)以上及FFT窗配置過程中的無 效旁瓣頻率的無用信號(hào),將數(shù)據(jù)發(fā)送至主控制單元Core1(例如通過內(nèi)部的AHP總線),由主控制單元Core1進(jìn)行加窗運(yùn)算等操作。
(2)測頻模塊將被測信號(hào)進(jìn)行限幅、放大、波形轉(zhuǎn)換,調(diào)整為FPGA的IO輸入范圍能的TTL電平,由FPGA內(nèi)部的等精度測頻模塊測量并計(jì)算出被測信號(hào)的準(zhǔn)確頻率,該頻率精度能達(dá)到10-7級(jí)別。同時(shí)通過通信總線將該頻率值數(shù)據(jù)發(fā)送至主控制單元Core1,作為FFT(快速傅里葉變換)計(jì)算的參考頻率。
(3)主控制單元Core1進(jìn)行被測信號(hào)的加窗、FFT計(jì)算進(jìn)而得到該信號(hào)的頻譜。將頻譜內(nèi)最大的幅值處標(biāo)號(hào)(即坐標(biāo)軸橫軸序號(hào))乘以頻率分辨率,可以得到與被測信號(hào)頻率差最小的分辨率頻率值。通過比較測頻模塊所得頻率值與FFT計(jì)算得出的頻率,可以確定頻譜上的被測信號(hào)頻率在該分辨率頻率的左旁瓣還是右旁瓣(FFT計(jì)算得頻率小于測量頻率則在左旁瓣,F(xiàn)FT計(jì)算頻率大于測量頻率則在右旁瓣),同時(shí)與得到的次最大幅度值作為對(duì)比驗(yàn)證,在確定信號(hào)頻譜在哪兩個(gè)分辨率頻率范圍內(nèi)后即可以通過內(nèi)差法的公式得到該頻率點(diǎn)處的較精確的幅度值。
(4)主控制單元Core1在多線程的支持下可以將FPGA發(fā)送來的原始數(shù)據(jù)通過通信模塊轉(zhuǎn)發(fā)給遠(yuǎn)程終端,同時(shí)支持接收遠(yuǎn)程終端的控制命令。
(5)主控制單元Core1向輔助控制單元Core2發(fā)送命令后,Core2將頻譜圖輸出到觸摸顯示屏顯示,可以選擇當(dāng)前顯示的波形為原始信號(hào)的波形或者加窗后的波形或者頻譜圖。
(6)根據(jù)需要Core2通過外圍擴(kuò)展模塊向外圍電路發(fā)出命令。
其中,第3)步中,為了在被測信號(hào)頻率未知的情況下能夠快速分析出 信號(hào)的頻率及幅值,本發(fā)明提出了一種較新穎的信號(hào)分析方法,該方法以等精度測量得到的頻率值為輔助參考,通過改變FFT計(jì)算點(diǎn)數(shù),將被測信號(hào)頻率無限靠近FFT計(jì)算的頻率分辨率所在頻率,以得到更精確的幅值結(jié)果。,其幅值測量范圍為0~12V,準(zhǔn)確度達(dá)0.05%。
該方法采用了Flat Top窗函數(shù),F(xiàn)lat Top窗函數(shù)的基本函數(shù)形式為
其中,ωj為窗函數(shù),ck為關(guān)于k的常數(shù),k為窗函數(shù)的階數(shù),N為FFT計(jì)算點(diǎn)數(shù),j為計(jì)算參量(計(jì)算所需的點(diǎn)數(shù)、是一個(gè)整數(shù)值序號(hào))。
Flat Top窗的不同維度能得到不同的精度,經(jīng)過試驗(yàn)比較,本發(fā)明了采用了誤差較小的10維FlatTop算法公式,公式具體內(nèi)容如下:
ωj=1-1.985844164102cos(z)+1.71176438506cos(2z)
-1.282075284005cos(3z)+0.667777530266cos(4z)
+0.240160796576cos(5z)+0.056656381764cos(6z)
-0.008134974479cos(7z)+0.000624544650cos(8z)
-0.000019808998cos(9z)+0.000000132974cos(10z)
其中,
其時(shí)域、頻域的波形如圖2所示,左圖為FlatTop的時(shí)域波形,右圖為頻譜圖,F(xiàn)lat Top窗的主瓣稍胖,對(duì)于計(jì)算某頻率點(diǎn)幅值很重要。
假如原始信號(hào)為:
其中Adc為直流分量幅值,f1為被測信號(hào)頻率,P1為初始相位,fn為干擾信號(hào)頻率。
在Adc=1.5,A1=3.1,A2=1.5,f1=6274.25,f2=2000.5,P1=-30,P2=90時(shí),其時(shí)域波形如圖3所示,N點(diǎn)的Flat Top加窗操作即每個(gè)點(diǎn)對(duì)應(yīng)乘以Flat Top窗函數(shù),加窗后時(shí)域波形如圖4所示,F(xiàn)FT結(jié)果如圖5所示。原始信號(hào)的時(shí)域波形可與看出是4個(gè)信號(hào)的疊加,圖4加窗后減小了頻譜的泄露,該數(shù)據(jù)進(jìn)行FFT計(jì)算后就可得到各頻率分量的幅度譜,如圖5所示。
得到FFT結(jié)果后,通過所述內(nèi)差法可得到更精確的幅度值,優(yōu)選地,所述內(nèi)差法的公式為:
其中Aavr為最終計(jì)算恢復(fù)得到的幅度值,Aindex為FFT計(jì)算得幅度頻譜中幅度值最大點(diǎn)的值,Aindex±1為幅度值次大的點(diǎn)的幅度值,index為該點(diǎn)的標(biāo)號(hào),fres為頻率分辨率。此時(shí)根據(jù)Flat top的頻譜特性可知被測信號(hào)頻率在該點(diǎn)的0.5bin內(nèi)。
如圖6所示,計(jì)算得出被測信號(hào)附近的頻率分辨率點(diǎn)分別為6250Hz、6347.6Hz,由Flat top窗的頻譜分析可以將這兩點(diǎn)間的幅度近似成線性關(guān)系,所以在這區(qū)間內(nèi)的頻率點(diǎn)的幅度值可以用內(nèi)差法得出。通過仿真計(jì)算,該方法得到的幅值A(chǔ)avr=3.1008,且在整個(gè)分辨率范圍內(nèi)精確能達(dá)到0.05%。
在一優(yōu)選的方案中,測頻模塊的波形調(diào)理電路如圖7所示,包括同比例放大電路、限幅電路、濾波放大電路、遲滯比較器;被測信號(hào)經(jīng)過同比例放大電路,防止后級(jí)的限幅電路影響被測信號(hào)的幅值特性。隨后經(jīng)過限幅電路將0.1~12V的信號(hào)限制在0.7V以下,再經(jīng)過后級(jí)濾波放大后輸入遲滯比較器轉(zhuǎn)換成方波,此時(shí)信號(hào)幅值范圍滿足FPGA的IO輸入范圍,此時(shí)利用等精度測量模塊即可測量該信號(hào)的頻率值。