基于Verilog-HDL的軸承振動(dòng)噪聲電壓峰值檢測
僅有圖5的邏輯功能框圖還不能方便地用Verilog-HDL來(lái)描述。為此將其進(jìn)一步細化為圖6所示的形式。圖6中虛線(xiàn)框內的功能由XC9572(Xilinx公司的產(chǎn)品)實(shí)現。圖6中,Vin為模擬電壓的輸入,VDOUT為數字峰值電壓的輸出,VDOUT、RB1、RB21均與接口電路相接,RB1、RB2受微機的控制。
本文引用地址:http://dyxdggzs.com/article/83375.htm2.2 時(shí)序圖
圖7為圖6所示邏輯電路的時(shí)序圖。按照軸承檢測的工藝,當系統復位RB2、啟動(dòng)脈沖RB1到來(lái)后,經(jīng)0.7s的延時(shí),便產(chǎn)生1個(gè)寬度為1s的門(mén)脈沖G_P。在此期間,A/D轉換器連續轉換的數據送入數據緩沖器GET_DATA,之后進(jìn)行數字信號的峰值檢測和保持。A/D轉換器在此采用MAX120。該轉換器的分辨率為12bit,轉換時(shí)間為1.6μs。2.3 邏輯仿真。
在硬件電路實(shí)現之前,用Verilog-HDL對圖6所示的邏輯電路進(jìn)行了仿真,圖8即為仿真結果。從仿真結果中可以看出,系統復位后,D_OUT(VDOUT)輸出為0,在1s門(mén)脈沖G_P有效期間,GET_DATA接收時(shí)鐘GET_DATA_CLK。此間來(lái)自A/D轉換器的數字電壓(分別為FROM_ADC=10、15、18、17、4、6、2)相繼輸入至GET_DATA。由于這期間的最大值為FROM_ADC=18,故有D_OUT=18。在門(mén)脈沖G_P無(wú)效期間,即使有數據FROM_ADC=11輸入,仍有D_OUT=0。
2.4 Verilog-HDL主模塊
限于篇幅,這里只將本系統所涉及到的Verilog-HDL的主模塊部分列出:
Module PK_SEL(BUSY,RB1,RB2,FROM_ADC,D_OUT,P_OUT);
input BUSY,RB1,RB2;
output P_OUT;
input [11:0]FROM_ADC;
output [11:0]D_OUT;
wire [11:0]TO_COM;
wire GET_DATA_CLK;
//產(chǎn)生秒脈沖
CNT100 F_4kHz (RB1,BUSY,F_4k); //分頻
CNT100 F_37Hz (RB1,F_4k,F_37); //分頻
DELAY_P1 START_DLY (RB2,RB1,F_7,DLY_05S); //延時(shí)0.7s
DELAY_P2 GENE_SPB (RB2,DLY_05S,F_7,SPB); //延時(shí)1s
GETE_GENE GENE_GP (G_P,DLY_05S&RB2,SPB); //1s的門(mén)脈沖
Assign P_OUT=G_P;
//ADC數據最大值的比較和檢測
assign GET_DATA_CLK=~BUSY & G_P;
DFF12 GET_DATA(GET_DATA_CLK,FROM_ADC,TO_COM, ~SPB & RB2); //獲取ADC數據
COMP_D DATA_COMP(TO_COM,D_OUT,D_S); //數據比較
DFF12 DATA_MEM(BUSY & D_S,TO_COM,D_OUT,RB1 & RB2); //數據存儲
endmodule
結束語(yǔ)
與模擬式的峰值電壓檢測方式相比,數字式的檢測方式有著(zhù)結構簡(jiǎn)單、系統開(kāi)發(fā)周期短等優(yōu)點(diǎn),而采用Verilog-HDL可以方便地實(shí)現欲有的功能。筆者設計開(kāi)發(fā)的該系統用在了大連科匯軸承儀器有限公司生產(chǎn)的S0910-3型軸承振動(dòng)測量?jì)x中,并于2001年6月在上海的國際軸承及裝備博覽會(huì )上引起了同行的關(guān)注。
評論