基于FPGA的機(jī)械振動臺自動定中系統(tǒng)
0 引言
在力學(xué)環(huán)境試驗(yàn)中,振動試驗(yàn)應(yīng)用最為廣泛,尤其是國防科技應(yīng)用中的火藥裝填,即通過一定的振級和時(shí)間將火藥填實(shí),其工作過程為將火藥罐體固定于機(jī)械振動臺上,然后設(shè)定相應(yīng)的振動頻率及振動幅度,當(dāng)?shù)竭_(dá)設(shè)定的振動條件后,火藥便通過導(dǎo)向槽向罐體內(nèi)充填。此后,隨著時(shí)間的增加,振動上火藥加罐體的重量隨之增加,而機(jī)械臺臺面安裝于空氣彈簧上,它隨著臺面上的重量的增加會下降,如果下降超過機(jī)械臺所能要求的能力,就可能出現(xiàn)事故,因此要求有一套自動定中系統(tǒng),在機(jī)械臺靜態(tài)和振動狀態(tài)均能自動保持中間位置。
1 總體方案
要滿足機(jī)械臺臺面靜態(tài)和振動狀態(tài)均能自動保持中間位置,用分立器件判斷臺面極限位置的方法往往難以適應(yīng)。解決此問題的方案有兩種:一是采用單片機(jī)系統(tǒng),二是采用嵌入式系統(tǒng)。單片機(jī)系統(tǒng)雖然價(jià)格低廉,使用方便,但是程序容易跑飛,且編程及修改較為麻煩;而嵌入式系統(tǒng)中,基于CPU的嵌入系統(tǒng)價(jià)格較貴。為此,本文選用了可編程邏輯器件(FPGA),由于FPGA具有豐富的可編程性與豐富的I/O引腳,因而其在數(shù)字系統(tǒng)中的應(yīng)用越來越廣泛。如同自行設(shè)計(jì)集成電路一樣,利用FPGA可節(jié)省電路開發(fā)的費(fèi)用與時(shí)間,因此,本文提出了一套基于FPGA的嵌入系統(tǒng)來實(shí)現(xiàn)自動定中,其系統(tǒng)方案如圖1所示。
圖中,光纖一和光纖二將振動的位置信號傳遞給系統(tǒng),然后由系統(tǒng)判定臺面是處于靜態(tài)還是動態(tài),再判定臺面偏高還是偏低,分別處理,最后通過兩個(gè)電磁閥來對機(jī)械臺進(jìn)行充氣或放氣。
2 電路組成
系統(tǒng)運(yùn)行時(shí),會有以下幾種情況:一是在系統(tǒng)正常振動時(shí),光纖一和光纖二輸出的波形為占空比為50%且方向相反的一對方波信號;二是當(dāng)臺面位置發(fā)生變化后,振動時(shí)兩個(gè)光纖輸出的脈沖占空比會發(fā)生變化。當(dāng)臺面靜止或臺面受到其他因素而低于4 Hz振動時(shí),兩個(gè)光纖輸出的脈沖幾乎為一個(gè)恒定的電平。因此,需要系統(tǒng)根據(jù)脈沖情況自動分辨,本文在FPGA內(nèi)設(shè)計(jì)了三個(gè)模塊,即分頻模塊,信號觸發(fā)模塊,信號比較及輸出模塊。
2.1 分頻模塊
分頻模塊共輸出四種分頻信號:參考時(shí)鐘、預(yù)讀信號、鎖存信號、觸發(fā)信號。其中參考時(shí)鐘用于信號觸發(fā)模塊中信號占空比的測量計(jì)數(shù),考慮到計(jì)數(shù)器的容量,我們?nèi)⒖紩r(shí)鐘為100 kHz。預(yù)讀信號read用于啟動比較模塊中靜態(tài)還是動態(tài)信號的判定。鎖存信號lock用于對比較模塊輸出的繼電器控制狀態(tài)信號的鎖存,并將其保持到下一次比較,以使模塊輸出不同的繼電器控制狀態(tài)信號。觸發(fā)信號trig用于啟動觸發(fā)模塊及對信號比較模塊中的計(jì)數(shù)器清零,以判定一定間隔時(shí)間后的臺面狀態(tài)變化情況。其時(shí)序如圖2所示。
2.2 信號觸發(fā)模塊
臺面位置發(fā)生變化后,在振動時(shí),兩個(gè)光纖輸出的脈沖占空比就會發(fā)生變化。因此需要測量兩路信號在一個(gè)振動周期內(nèi)的高電平寬度,其測量電路如圖3所示,其中上半部分用于脈沖串一的高電平測量,下半部分用于脈沖串二的高電平測量。
評論