本發(fā)明涉及一種信號相關(guān)參數(shù)的測量方法,具體為一種基于fpga的脈沖信號參數(shù)測量方法及系統(tǒng)。
背景技術(shù):
對于信號的測量,頻率和占空比是需要測量的最基本參數(shù)。在傳統(tǒng)的電子測量儀器中,示波器在對脈沖信號進(jìn)行頻率參數(shù)測量時,測量精度較低,誤差較大。頻譜儀可以準(zhǔn)確的測量脈沖信號的頻率并顯示被測脈沖信號的頻譜,但測量速度較慢,無法實時快速的跟蹤捕捉到被測脈沖信號頻率的變化。正是由于脈沖信號參數(shù)測量儀能夠快速準(zhǔn)確的捕捉到被測脈沖信號的頻率、占空比等參數(shù)的變化,具有測量精度高、速度快、操作簡便、數(shù)字顯示等特點,所以得到廣泛地應(yīng)用。許多物理量,例如溫度、壓力、流量、液位、ph值、振動、位移、速度等,都可以通過傳感器轉(zhuǎn)換成信號的頻率以及占空比等參數(shù),再用脈沖信號參數(shù)測量儀來測量。尤其是將脈沖信號參數(shù)測量儀與微處理器(fpga,dsp,單片機(jī))相結(jié)合,可實現(xiàn)測量儀器的多功能化、程控化和智能化。如果產(chǎn)品變得低功耗且可便攜,將會有很大的市場經(jīng)濟(jì)需求。
在傳統(tǒng)的生產(chǎn)制造企業(yè)中,脈沖信號參數(shù)測量儀被廣泛的應(yīng)用在對生產(chǎn)線的生產(chǎn)測試中其能夠快速的捕捉到晶體振蕩器輸出頻率的變化,用戶通過使用脈沖信號參數(shù)測量儀能夠迅速的發(fā)現(xiàn)有故障的晶振產(chǎn)品,確保產(chǎn)品質(zhì)量。在計量實驗室中,脈沖信號參數(shù)測量儀被用來對各種電子測量設(shè)備的本地振蕩器進(jìn)行校準(zhǔn)。在無線通訊測試中,脈沖信號參數(shù)測量儀既可以被用來對無線通訊基站的主時鐘進(jìn)行校準(zhǔn),還可以被用來對無線電臺的跳頻信號和頻率調(diào)制信號進(jìn)行分析。
然而,目前這種功能比較齊全,測量精度較高的測量儀器大多是臺式的,而在便攜式的測量儀器方面,不是功能沒有臺式的那么完善,就是測量的精度遠(yuǎn)沒有臺式的高。如何既滿足測量的便攜性要求,又能有較齊全的功能和較高的精度,需要比較完善的設(shè)計方案。
大部分現(xiàn)有技術(shù)都是基于單片機(jī)來設(shè)計脈沖信號參數(shù)測量儀,如:
吳云靖,董恩生,龐宇,等.基于單片機(jī)的便攜式脈沖信號參數(shù)測試儀[j].國外電子測量技術(shù),2009,28(12):47-50.;
劉竹琴,白澤生.一種基于單片機(jī)的數(shù)字頻率計的實現(xiàn)[j].現(xiàn)代電子技術(shù),2010,33(1):90-92.;
受制于單片機(jī)本身較低的主頻,測量結(jié)果的精度不足,且很難測量高達(dá)2mhz的脈沖信號,一般為幾十khz。而本作品采用的是單片機(jī)+fpga芯片,通過fpga芯片的計算來測量脈沖信號的參數(shù),單片機(jī)只是用來做顯示控制,這種方案雖然成本上稍微高些,但是測量精度較高,且可以測量mhz頻段的脈沖信號參數(shù)。
也有部分技術(shù)基于fpga設(shè)計脈沖信號參數(shù)測量儀,如:
胡文靜,張國云,劉翔,等.量程自整定高精度頻率測量的fpga實現(xiàn)[j].電子技術(shù)應(yīng)用,2012(1):73-76.
李莉,熊晶.基于cpld和單片機(jī)的等精度數(shù)字頻率計設(shè)計[j].現(xiàn)代電子技術(shù),2015(10):118-120.
屈寶鵬,張喜鳳,李想.基于vhdl的高精度數(shù)字頻率計的設(shè)計與實現(xiàn)[j].現(xiàn)代電子技術(shù),2013(18):144-147.
但是有些只是在開發(fā)板上進(jìn)行了測試,給出了系統(tǒng)后仿真波形;有些只是在軟件上做了仿真,如cpld部分的仿真使用max+plusⅱ軟件,單片機(jī)部分的仿真使用protues軟件,或者在quartusⅱ9.0軟件開發(fā)環(huán)境下進(jìn)行了仿真。他們都未做出最后的實物,可以將測量得到的脈沖信號參數(shù)顯示在液晶屏上。
技術(shù)實現(xiàn)要素:
本發(fā)明旨在克服現(xiàn)有技術(shù)的不足,本專利采用低功耗的fpga芯片作為主控芯片,可以測量脈沖信號的頻率、占空比等參數(shù),再通過51單片機(jī)控制的液晶顯示屏顯示出來,能夠在測量范圍和測量誤差方面都很好地滿足系統(tǒng)總體的設(shè)計要求,功耗低,體積小,方便攜帶;且成本較低。
本發(fā)明提供的基于fpga的脈沖信號參數(shù)測量方法,該方法采用fpga芯片作為主控芯片,利用頻率測量法或者周期測量法測量脈沖信號的基本參數(shù),最終通過顯示器將脈沖信號參數(shù)顯示出來。
該方法的具體過程為:
步驟一,對所述fpga芯片的自帶時鐘,選擇合適的時間基準(zhǔn)信號,即閘門時間;
步驟二,在閘門時間內(nèi)對被測信號進(jìn)行計數(shù),所述計數(shù)結(jié)果即為被測脈沖信號的頻率fo
步驟三,利用計數(shù)值、時鐘周期及信號周期的關(guān)系,得到被測脈沖信號的占空比d;
步驟四,再將所得的頻率和占空比數(shù)值傳出到由單片機(jī)控制的液晶顯示屏的數(shù)據(jù)端口顯示出來。
所述脈沖信號的基本參數(shù)包括頻率fo和占空比d。
所述步驟二具體為:
當(dāng)所述時間基準(zhǔn)信號為高電平時,閘門打開,頻率計開始對被測信號進(jìn)行計數(shù)。
所述計數(shù)值、時鐘周期及信號周期的關(guān)系具體為:
占空比=高電平計數(shù)*時鐘周期/信號周期*100%。
該方法通過對一函數(shù)信號發(fā)生器設(shè)置信號基本參數(shù)再與被測信號基本參數(shù)進(jìn)行對比,驗證所測得的信號基本參數(shù)是否準(zhǔn)確。
該方法還用于產(chǎn)生標(biāo)準(zhǔn)矩形脈沖信號,方法為:
根據(jù)基準(zhǔn)時鐘頻率,采用鎖相環(huán)pll進(jìn)行分頻得到標(biāo)準(zhǔn)矩形脈沖信號。
針對上述方法,本發(fā)明還提供基于fpga的脈沖信號參數(shù)測量系統(tǒng),該系統(tǒng)包括fpga芯片、函數(shù)信號發(fā)生器、顯示控制器其以及顯示設(shè)備;
對所述函數(shù)信號發(fā)生器設(shè)置脈沖信號的基本參數(shù),對所述fpga芯片的自帶時鐘,選擇合適的時間基準(zhǔn)信號,即閘門時間,在閘門時間內(nèi)對被測信號進(jìn)行計數(shù),所述計數(shù)結(jié)果即為被測脈沖信號的頻率fo;
利用計數(shù)值、時鐘周期及信號周期的關(guān)系,得到被測脈沖信號的占空比d;通過將fpga芯片測量得到的頻率和占空比數(shù)據(jù)與所述函數(shù)信號發(fā)生器中的設(shè)置參數(shù)進(jìn)行對比,驗證測得的參數(shù)是否準(zhǔn)確;再發(fā)送到所述顯示控制器,所述顯示控制器將所述數(shù)據(jù)在顯示設(shè)備上顯示出來。
該系統(tǒng)還包括示波器,所述示波器用于產(chǎn)生標(biāo)準(zhǔn)矩形脈沖信號。
所述fpga芯片選用altera公司cycloneiv系列的ep3c25q24c08芯片,外接50mhz有源晶振;
所述顯示設(shè)備采用12864液晶顯示模塊,所述顯示控制器為單片機(jī);
所述fpga芯片將im標(biāo)準(zhǔn)矩形脈沖信號發(fā)送至示波器上顯示出來。
本發(fā)明采用以上技術(shù)方案與現(xiàn)有技術(shù)相比,具有以下技術(shù)效果:
本發(fā)明在測量信號的頻率及占空比時,只需要fpga芯片、51單片機(jī)和12864液晶屏三個模塊即可,系統(tǒng)集成度高,重量輕,可以很容易地做成便攜式的信號參數(shù)測量儀。
指標(biāo)要求相對一般的信號參數(shù)測量儀,在測量頻率和占空比的性能指標(biāo)上較高,測量誤差小,并可以測量頻率最大2mhz的脈沖信號。
在測量脈沖信號的占空比時,采用高速時鐘計數(shù),即將fpga處理單元自帶的時鐘進(jìn)行倍頻后作為計數(shù)時鐘。該方案相對于不采用倍頻的方法要精度更高。另外,該方案對fpga芯片的要求較低,可以使用性能相對比較弱的fpga芯片,開發(fā)成本更低。
在標(biāo)準(zhǔn)矩形脈沖信號發(fā)生器設(shè)計方面,直接用fpga分頻,實現(xiàn)方法簡單,精度高,容易調(diào)試。且不需要外接諸如dds芯片這樣的信號發(fā)生電路,節(jié)約了硬件成本。
附圖說明
以下將結(jié)合附圖對本發(fā)明作進(jìn)一步說明:
圖1為本發(fā)明基于fpga的脈沖信號參數(shù)測量系統(tǒng)示意圖;
圖2為頻率測量法原理圖;
圖3為周期測量法原理圖。
具體實施方式
本發(fā)明的實施提供一種基于fpga的脈沖信號參數(shù)測量方法及系統(tǒng),為使本領(lǐng)域技術(shù)人員更好地理解本發(fā)明的技術(shù)方案,下面結(jié)合附圖和具體實施方式對本發(fā)明作進(jìn)一步詳細(xì)描述。通過參考附圖描述的實施方式是示例性的,僅用于解釋本發(fā)明,而不能解釋為對本發(fā)明的限制。
1、本實施例關(guān)于主控芯片方案的選擇
方案一:選擇fpga作為主控芯片,fpga(field-programmablegatearray),即現(xiàn)場可編程門陣列,它是在pal、gal、cpld等可編程器件的基礎(chǔ)上發(fā)展出來的產(chǎn)物。它是作為專用集成電路(asic)領(lǐng)域中的一種半定制電路而出現(xiàn)的,既解決了定制電路的不足,又克服了原有可編程器件門電路數(shù)有限的缺點。以硬件描述語言(verilog或vhdl語言)所完成的電路設(shè)計,可以經(jīng)過簡單的綜合與布局,快速地?zé)浿羏pga上進(jìn)行測試,是現(xiàn)代ic設(shè)計驗證的技術(shù)主流。這些可編輯元件可以被用來實現(xiàn)一些基本的邏輯門電路(比如and、or、xor、not)或者更復(fù)雜的組合功能,比如解碼器或數(shù)學(xué)方程式。在大多數(shù)的fpga里面,這些可編輯的元件里也包含記憶元件,例如觸發(fā)器(flip-flop)或者其他更加完整的記憶塊。
方案二:選擇arm公司的高性能stm32系列微處理器,stm32系列微處理器有一流的外設(shè),擁有12位的adc,4兆位/秒的uart,18兆位/秒的spi,18mhz的i/o翻轉(zhuǎn)速度,而且它的功耗比較低,在72mhz時會消耗36ma(所有外設(shè)處于工作狀態(tài)),待機(jī)時下降到2μa的功耗。另外stm32系列微處理器有優(yōu)異的安全時鐘模式和帶喚醒功能的低功耗模式??傊瑂tm32系列微處理器是一款性能優(yōu)異的微處理器,可是stm32系列微處理器的成本較高,開發(fā)程序復(fù)雜,不適合初學(xué)者使用。
綜上所述,該方案選用方案一的fpga芯片作為主控芯片。其與單片機(jī)以及顯示屏的接線情況如下表所示:
表1、fpga、單片機(jī)和顯示屏的接線示意表
2、頻率測量方案的選擇
方案一、如圖2所示的頻率測量法:在一定的時間間隔t內(nèi),對輸入的待測信號脈沖計數(shù)為n,則信號的頻率為f=n/t。這種方法適合于高頻測量,信號的頻率越高,則相對誤差越小。其原理如下圖所示。但在這種測量方法中由于閘門信號與被測信號不同步,會出現(xiàn)±1個被測信號脈沖個數(shù)的誤差。當(dāng)被測信號頻率較低時,這種測量誤差將導(dǎo)致測量精度大幅下降。
利用計數(shù)值、時鐘周期及信號周期的關(guān)系,得到被測脈沖信號的占空比d;所述脈沖信號的基本參數(shù)包括頻率fo和占空比d。
方案二、如圖3所示的周期測量法:該方法是通過計量在被測信號一個周期內(nèi)頻率為fo的標(biāo)準(zhǔn)信號的脈沖數(shù)n來測量被測信號的頻率,f=fo/n。若被測信號的周期越長(頻率越低),測得的標(biāo)準(zhǔn)信號的脈沖數(shù)n越大,則相對誤差越小。其原理如下圖所示。當(dāng)頻率增大時,由于被測信號的測量周期較短,根據(jù)周期測量法的測頻原理可知其測量精度將大幅下降。
利用計數(shù)值、時鐘周期及信號周期的關(guān)系,得到被測脈沖信號的占空比d;所述脈沖信號的基本參數(shù)包括頻率fo和占空比d。
綜上所述,本設(shè)計在低頻測量時選擇方案二,高頻測量時選擇方案一。
3單片機(jī)控制顯示模塊的選擇
方案一:選擇數(shù)碼管作為顯示,數(shù)碼管按段數(shù)分為七段數(shù)碼管和八段數(shù)碼管,八段數(shù)碼管比七段數(shù)碼管多一個發(fā)光二極管單元(多一個小數(shù)點顯示);按能顯示多少個“8”可分為1位、2位、4位等等數(shù)碼管;按發(fā)光二極管單元連接方式分為共陽極數(shù)碼管和共陰極數(shù)碼管。數(shù)碼管成本較低,電路簡單,顯示起來也非常方便。但是數(shù)碼管只能顯示數(shù)字,使用范圍有限。
方案二:選擇1602液晶作為顯示,1602液晶也叫1602字符型液晶,它是一種專門用來顯示字母、數(shù)字、符號等的點陣型液晶模塊。它由若干個5x7或者5x11等點陣字符位組成,每個點陣字符位都可以顯示一個字符,每位之間有一個點距的間隔,每行之間也有間隔,起到了字符間距和行間距的作用,正因為如此所以它不能很好地顯示圖形。1602液晶只能顯示兩行,且每行只有16個字符,使用范圍也是有限。
方案三:選擇12864液晶模塊作為顯示,12864液晶模塊是我們常用的液晶顯示模塊,它價格低廉,使用方便,我們只需對應(yīng)它的數(shù)據(jù)手冊找到相應(yīng)的引腳與單片機(jī)連接,輸入程序,就可以完美的進(jìn)行顯示。它有豐富的字庫,也可以完成圖形顯示,而且只需要在寫指令時寫入相對應(yīng)的地址即可。
綜上所述,該方案選用12864液晶模塊作為顯示模塊。
三、系統(tǒng)組成
如圖1所示,本專利采用低功耗的fpga芯片作為主控芯片,可以測量脈沖信號的頻率、占空比等參數(shù),再通過51單片機(jī)控制的液晶顯示屏顯示出來,能夠在測量范圍和測量誤差方面都很好地滿足系統(tǒng)總體的設(shè)計要求,并且同時外加了脈沖信號發(fā)生器的功能,最終制作成便攜式的信號參數(shù)測量儀。
系統(tǒng)結(jié)構(gòu)
關(guān)鍵技術(shù):測量脈沖信號頻率fo和脈沖信號占空比d
利用fpga芯片內(nèi)部自帶的時鐘,通過分頻時鐘、閘門控制電路和計數(shù)器的復(fù)合使用,選擇合適的時間基準(zhǔn)信號,即閘門時間,然后在閘門時間內(nèi)對被測量信號進(jìn)行計數(shù),時間基準(zhǔn)信號為高電平時,閘門打開,頻率計開始對被測信號進(jìn)行計數(shù)。計數(shù)結(jié)果即為被測脈沖信號的頻率fo。
利用高電平計數(shù)值、時鐘周期及信號周期的關(guān)系,得到被測脈沖信號的占空比d(占空比=高電平計數(shù)*時鐘周期/信號周期*100%)。
接著再將所得的頻率和占空比數(shù)值傳出到由51單片機(jī)控制的液晶顯示屏12864的數(shù)據(jù)端口,顯示出被測脈沖信號的頻率fo和占空比d。
本實施例還用于產(chǎn)生一個標(biāo)準(zhǔn)矩形脈沖信號
根據(jù)基準(zhǔn)時鐘頻率50mhz,采用鎖相環(huán)(pll)進(jìn)行了1/50分頻得到1mhz的標(biāo)準(zhǔn)矩形脈沖信號。
主要技術(shù)指標(biāo):
1.可測量脈沖信號頻率fo,頻率范圍為10hz~2mhz,測量誤差的絕對值不大于1%。
2.可測量脈沖信號占空比d,測量范圍為10%~90%,測量誤差的絕對值不大于2%。
3.可提供一個標(biāo)準(zhǔn)矩形脈沖信號發(fā)生器,要求:
a)頻率fo為1mhz,誤差的絕對值不大于0.1%;
b)脈寬tw為100ns,誤差的絕對值不大于1%;
1系統(tǒng)硬件:
fpga主芯片選用altera公司cycloneiv系列的ep3c25q24c08芯片,串行配置器件為epcs16,外接50mhz有源晶振。
單片機(jī)主芯片選用stc89c52單片機(jī)。
液晶顯示部分采用12864液晶顯示模塊。
2軟件部分
fpga部分參考代碼:
3.系統(tǒng)io接口配置及連接
*fpga主機(jī)模塊的接口定義如下:
clk_1m接pin219io,diffio_t10p,(data4),(dq5t)
clk_50m接pin209clk
rise接pin238io,diffio_t1p
sin接pin232io,diffio_t5n,(data7)
tx232接pin226
io,(data5),(dq5t)
*mcs51單片機(jī)模塊的接口定義如下:
p3.0接口接dym004-fpga主機(jī)的pin226(tx232)
*12864液晶顯示模塊與dym001-mcs51主機(jī)的接口定義如下:
其中:
fpga主機(jī)模塊的pin219口可產(chǎn)生頻率為1mhz的標(biāo)準(zhǔn)脈沖信號,可接示波器的ch1口來驗證其正確性。
fpga主機(jī)模塊的pin232口和gnd接函數(shù)信號發(fā)生器的ttl/cmos口。函數(shù)信號發(fā)生器輸出脈沖信號,其通過fpga主機(jī)模塊測量得到的頻率和占空比則可以在12864液晶顯示模塊上顯示出來。
函數(shù)信號發(fā)生器給脈沖信號參數(shù)測量系統(tǒng)提供被測脈沖信號,通過該測量系統(tǒng)可測量出該被測信號的頻率,占空比等參數(shù),然后與函數(shù)信號發(fā)生器設(shè)置的參數(shù)做對比,以此來驗證該脈沖信號測量系統(tǒng)測量脈沖信號參數(shù)方面的正確性,其中,可以測量最大頻率達(dá)2mhz的脈沖信號。
另外,測量系統(tǒng)設(shè)定端口產(chǎn)生的1mhz標(biāo)準(zhǔn)矩形脈沖信號可以通過示波器來驗證其信號波形是否為標(biāo)準(zhǔn)矩形,以此來驗證該脈沖信號測量系統(tǒng)產(chǎn)生標(biāo)準(zhǔn)矩形脈沖信號方面的正確性。1mhz標(biāo)準(zhǔn)矩形脈沖信號的。