超聲波液位計(jì)及流量計(jì)在測量中時(shí)差法的探討二十二
4.1.2求取正切值電路
利用正/余弦積分電路分別獲得分子、分母的積分結(jié)果后,兩數(shù)值要進(jìn)行除法運(yùn)算。由于在利用數(shù)字方法進(jìn)行除法運(yùn)算時(shí),只能是正整數(shù)之間的除法運(yùn)算,所以在進(jìn)行除法運(yùn)算前先將積分結(jié)果取絕對值。根據(jù)所要求達(dá)到的相位精度(在這里取相位分辨率為0.1度,tan(O.1)---o.001745),為了使得進(jìn)行除法運(yùn)算后所獲得的商可以同正切表中存放的正切值相比較,所以先將除數(shù)放大1000倍,再進(jìn)行除數(shù)和被除數(shù)之間的除法運(yùn)算,這樣使得相除后的商放大1000倍。由于進(jìn)行除法運(yùn)算時(shí),位數(shù)較長,每進(jìn)行一次除法運(yùn)算都需要較長時(shí)間,所以為了減少不必要的除法運(yùn)算,在這里用一個(gè)異步脈沖控制除法運(yùn)算只在積分求和完成之后進(jìn)行一次。為了保證除法器輸入穩(wěn)定,在將數(shù)據(jù)送給除法器之前,先利用鎖存器將積分結(jié)果鎖存起來,使其固定不變,由異步脈沖信號控制鎖存器時(shí)鐘使其將積分結(jié)果輸出。在原理圖中,
coNTRoLc0M模塊為鎖存器提供了進(jìn)行一次除法運(yùn)算的時(shí)鐘信號,另外該模塊還為逐次比較電路的計(jì)數(shù)器提供復(fù)位信號。
4.1.3逐次比較取得相位差電路
在利用除法器求得正切值后,CONTROLCOM模塊為逐次比較定時(shí)計(jì)數(shù)器提供啟動(dòng)信號,使COUNTERl0模塊開始計(jì)數(shù),該計(jì)數(shù)器的計(jì)數(shù)值控制正切表的地址線,使得存放正切值的程序存儲(chǔ)器根據(jù)時(shí)鐘信號頻率不斷地將正切值向外移,與同一時(shí)鐘信號控制的鎖存器中存放的除法器求得的商相比較,當(dāng)該商值大于上一個(gè)正切值,而小于下一個(gè)正切值時(shí),由角度輸出模塊的輸入端ageb產(chǎn)生一個(gè)下降沿,在模塊內(nèi)部將控制將計(jì)數(shù)器COUNTERl0的計(jì)數(shù)值輸出,該計(jì)數(shù)值即為相位差角放大10倍后的結(jié)果。使用VHDL語言編寫的控制模塊COUNTERl0和角度輸出模塊ANGLE的程序文檔見附錄B。
電磁流量計(jì)