隨著脈沖量的采集在傳感器、雷達和遙測等系統(tǒng)中的應用越來越廣泛.對脈沖信號采集過程中的幅值、頻率和精度等參數(shù)的要求也不斷提高?。面對這些問題.所遇到的挑戰(zhàn)也越來越大。傳統(tǒng)的脈沖信號采集設(shè)計是采用分立元件搭建的單穩(wěn)態(tài)電路來實現(xiàn).這種電路結(jié)構(gòu)簡單易于實現(xiàn).但其輸出信號的精度和穩(wěn)定度低,易受環(huán)境因素影響。因此,有必要設(shè)計一種高精度、高穩(wěn)定性的采集模塊來適應技術(shù)發(fā)展的需求。
在硬件設(shè)計方案中主控芯片采用FPGA來完成所有的邏輯控制功能。這是因為FPGA具有以下特點:
1)易擴展。本系統(tǒng)功能模塊較多,利用大封裝FPGA并行輸入輸出管腳。很容易構(gòu)成各種規(guī)模的應用系統(tǒng)。
2)控制功能強。硬件描述語言VHDL的描述能力和抽象能力很強。用它來描述集成電路的功能和結(jié)構(gòu).并經(jīng)過不同級別的驗證來形成不同級別的IP內(nèi)核模塊,具有很強的控制功能。
3)集成化程度高。系統(tǒng)將主要邏輯功能通過自下而上的設(shè)計方法集成在FPGA芯片內(nèi)。然后在印制板上布局、布線構(gòu)成系統(tǒng)模塊,大大提高了系統(tǒng)的集成度,使總體設(shè)計達到了小型化的要求。為了提高高速采集過程的可靠性和適應市場發(fā)展微型化的要求.現(xiàn)提出了一種基于FPGA的脈沖+信號采集模塊。
總體設(shè)計
該模塊的作用是模擬數(shù)字量變換器的接口電路并采集數(shù)字量板卡輸出脈沖的個數(shù)、頻率、及幅值.方便用戶對數(shù)字量輸出板卡脈沖量功能模塊進行調(diào)試與檢測.被測板卡采集模塊程序包含64路采集進程,其主要功能有:
1)接收通用測試臺數(shù)字量板卡發(fā)出的64路脈沖量信號.并采集脈沖量個數(shù)、脈沖幅值、脈沖頻率等參數(shù)。
2)模擬數(shù)字量變換器向數(shù)字量板卡提供幀同步信號及移位脈沖信號.并采集數(shù)字量板卡發(fā)送的數(shù)據(jù)信息。
下面將詳細介紹脈沖量采集模塊的電路組成及程序設(shè)計思路.整體系統(tǒng)框圖如圖1所示。
2 脈沖量采集模塊電路設(shè)計
如圖2所示的各脈沖量接口電路圖可知,每路脈沖信號以正負2路信號輸入被測板卡,后經(jīng)過光電隔離器轉(zhuǎn)換成單端脈沖信號。本模塊的主要功能是采集脈沖信號的幅值、個數(shù)及頻率.此模塊的電路設(shè)計共分2個部分:采集脈沖信號幅值部分和采集脈沖頻率及個數(shù)的部分。
第一部分為采集脈沖信號幅值功能。脈沖信號由通用測試臺輸入被測板卡后首先經(jīng)過調(diào)壓后輸入運放AD824.經(jīng)過電壓跟隨后再輸人模擬開關(guān)ADG506。ADG506的最高輸入電壓為+15V,而箭機計算機字信號源高電平為+28V。因此,箭機計算機字數(shù)據(jù)源脈沖在進入模擬開關(guān)前必須進行調(diào)壓,詳細電路如圖3所示。
圖3為脈沖信號和箭機計算機字移位脈沖信號和數(shù)據(jù)源信號調(diào)壓電路。脈沖信號高電平為15V,經(jīng)過電阻 調(diào)壓后變?yōu)?0V。箭機計算機字數(shù)據(jù)源的移位脈沖與數(shù)據(jù)脈沖高電平調(diào)壓原理與此相同 ,調(diào)壓后脈沖信號高電平幅值為10V。
脈沖信號經(jīng)過調(diào)壓后輸入運放AD824.其目的是進行電壓跟隨。電壓跟隨即輸入電壓與輸出電壓相同.其放大倍數(shù)恒小于但接近于1.電壓跟隨器的輸入阻抗高.輸出阻抗低。在電路中可以起到阻抗匹配的作用.并可以起到增強電路驅(qū)動能力的作用。
本模塊需要采集64路脈沖信號的幅值.不可能采用每路脈沖信號配置一片AD轉(zhuǎn)換器的方案.因此本卡采用一片ADG506對應8路脈沖信號.分通道采集的方案。該模擬開關(guān)包含16路輸入通道,其通道間切換頻率高達2.5MHz.而脈沖信號最高頻率為500kHz。因此該器件滿足需求。
模擬開關(guān)輸出電壓與輸入相同.而本板卡采用的AD9057的最高輸入電壓(基準電壓)為2.5V。因此需將模擬開關(guān)輸出的脈沖信號再次調(diào)壓。其電路圖如圖4所示。
模擬開關(guān)輸出脈沖的幅值在O~IOV之間。在圖4中①點輸出最高電壓為+IOV,通過U69A電壓跟隨后②點電壓也為+10V,經(jīng)過電阻 ,分壓后③點電壓為+5V。經(jīng)過U69B電壓跟隨后④點電壓為+5V。AD9057的基準電壓為+2.5V,即⑤點、⑥點電壓為+2.5V,根據(jù)虛短虛斷的原理得:
由式(1)可以推出⑦點電壓為2.3V,滿足AD9057的電壓需求。脈沖信號經(jīng)過AD9057轉(zhuǎn)換后變?yōu)?位并行數(shù)據(jù)信號送于主控邏輯芯片F(xiàn)PGA.FPGA負責采集AD轉(zhuǎn)換后的數(shù)據(jù).并將數(shù)據(jù)打包后存于外部存儲器中。
第二部分為采集脈沖頻率及個數(shù)的電路.對于采集脈沖頻率及個數(shù)的電路與脈沖量接口電路相同,在此不做說明。脈沖量信號經(jīng)過光電隔離器件(HCPL一0631)后,變成單路脈沖,由FPGA采集此脈沖信號,并對脈沖高電平信號進行計數(shù)。在判斷到脈沖信號發(fā)送完成后將數(shù)據(jù)打包存于外部存儲器中。
3 脈沖量采集模塊程序設(shè)計
本模塊程序共包含2個進程:電壓采集進程和頻率、個數(shù)采集進程。該模塊程序邏輯框圖如圖5所示。
在采集電壓信號時.首先由FPGA使能模擬開關(guān),再選擇模擬開關(guān)8路中的一路。
模擬開關(guān)將脈沖信號送于AD9057.由其將脈沖信號轉(zhuǎn)化成8位數(shù)據(jù),此時FPGA連續(xù)采集5次。然后再選通模擬開關(guān)的下一路.以此類推完成所有脈沖信號數(shù)的幅值采集工作。FPGA將采集到的數(shù)據(jù)依據(jù)不同的脈沖類型分別打包并加上幀標識存于外部存儲器。
如圖6所示.d)【為脈沖信號輸入,cntl為頻率計數(shù)器,cnt為脈沖計數(shù)器,cnt2為延時計數(shù)器,在采集脈沖頻率及個數(shù)等參數(shù)時.主要采用計數(shù)器原理。當判斷到脈沖信號的高電平后.計數(shù)器cnt、cntl分別加1.然后再判斷脈沖信號的低電平,在未檢測到脈沖信號的低電平時計數(shù)器cntl持續(xù)自加.直到檢測到脈沖信號的低電平時,cntl停止自加,此時它的值為脈沖信號的半個周期長度,由此可推出脈沖信號的頻率。當脈沖信號為低電平時.開始檢測脈沖信號的下一高電平.在未檢測到脈沖信號的高電平時.計數(shù)器cnt2持續(xù)自加.若檢測到高電平后cnt2清零.cnt加l。反之,若cnt2自加至0X1388H后仍未檢測到脈沖信號的高電平則說明脈沖信號已經(jīng)發(fā)送完畢(該進程工作時鐘頻率為10MHz.而脈沖信號的最小頻率為1Hz.因此當計數(shù)器cnt2自加至OXl388H.說明在500ms內(nèi)沒有脈沖信號.脈沖信號已經(jīng)發(fā)送完成),則將計數(shù)器cnt、cntl所記錄的數(shù)據(jù)打包加上幀標識存儲至外部存儲器。
利用計算機字數(shù)據(jù)源需要采集的參數(shù)有數(shù)據(jù)源、移位脈沖的時延等。進程工作時首先判斷幀同步信號(該信號為此功能模塊另一進程產(chǎn)生),當判斷到幀同步信號的下降沿時計數(shù)器ent開始計數(shù).當檢測到移位脈沖的上升沿時.計數(shù)器停止計數(shù)。并采集數(shù)據(jù)位當前數(shù)據(jù).存人八位寄存器中的最高位。當八位寄存器存滿后存人FIFO.FIFO達到一定深度后加入幀標識存人外部數(shù)據(jù)存儲器。
4 結(jié)語
信號采集技術(shù)是系統(tǒng)速度和精度等性能提高的關(guān)鍵之一。該基于FPGA的脈沖量采集模塊技術(shù)提高了采集的速度和精度.具有較強的應用性。仿真和測試驗證了系統(tǒng)的穩(wěn)定性和可靠性.信號采集正常,沒有出現(xiàn)漏采集和誤采集現(xiàn)象.該設(shè)計已在某通用測試臺的研制中得到應用,取得了滿意的結(jié)果。同時.該設(shè)計的思想和方法可以應用到更加廣泛的信號采集技術(shù)領(lǐng)域。
該模塊主要采集脈沖信號和發(fā)送數(shù)據(jù)源.對工作時鐘要求較高。為了更好地實現(xiàn)通用性,如果對FPGA提供多路不同時鐘.在生成不同頻率脈沖時采用特定工作時鐘.可以大幅提高脈沖頻率的精度。
評論