基于TDC-GP2的時(shí)差式超聲流量計(jì)的設(shè)計(jì)
該系統(tǒng)使用AVR單片機(jī)ATmega32作為系統(tǒng)控制器。其中En_Start,En_Stop1,En_Stop2分別為TDC-GP2的start,stop1,stop2的使能控制端,連接至ATmega32控制芯片的I/O口。INTN為TDC-GP2的中斷信號(hào)輸出端,RSTN為TDC-GP2復(fù)位信號(hào)輸入端。TDC-GP2的SPI口(圖3中SSN,SCK,MOSI,MISO端)與ATmega32的SPI口直接相連,進(jìn)行數(shù)據(jù)通信。TDC測(cè)量單元中,所有工作模式的選擇、數(shù)據(jù)傳輸以及最終數(shù)據(jù)的分析與計(jì)算都是由單片機(jī)來(lái)完成的。TDC-GP2提供的SPI接口的數(shù)據(jù)位為8 b,方便與單片機(jī)通信,由單片機(jī)對(duì)其進(jìn)行寄存器的配置、工作狀態(tài)的設(shè)定和數(shù)據(jù)傳輸。
TDC-GP2主要由TDC測(cè)量模塊,16位算術(shù)邏輯模塊(ALU),溫度測(cè)量模塊以及4線SPI串行數(shù)據(jù)接口組成。通過(guò)4線SPI與控制器相連,具有最高1 MHz的連續(xù)數(shù)據(jù)輸出。通過(guò)配置內(nèi)部寄存器,設(shè)置TDC-GP2的測(cè)量范圍、信號(hào)觸發(fā)方式等,使得用戶能夠?qū)υ撔酒M(jìn)行靈活應(yīng)用。
時(shí)間測(cè)量單元使用的是TDC-GP2的測(cè)量范圍2,其時(shí)間計(jì)算圖如圖4所示。此時(shí),只有一個(gè)stop通道對(duì)應(yīng)start通道;典型的分辨率為50 ps RMS;間隔脈沖對(duì)的分辨率為2Tref;有3次采樣能力;測(cè)量范圍為2Tref~4 ms;可選上升/下降沿觸發(fā);每個(gè)單獨(dú)stop信號(hào)都有一個(gè)精度為10 ns的可調(diào)窗口,可提供準(zhǔn)確的stop使能。TDC的核心測(cè)量單元并不時(shí)刻都在工作,僅測(cè)量從start和stop到相鄰的基準(zhǔn)時(shí)鐘上升沿之間的間隔時(shí)間,如圖4所示。測(cè)量時(shí)間為:
time=Tref×[Coasecount+(Finecount2-Finecount1)]/(cal2-cal1)本文引用地址:http://www.j9360.com/article/193981.htm
在本系統(tǒng)中,start信號(hào)由I/O口產(chǎn)生,用來(lái)觸發(fā)TDC啟動(dòng)測(cè)量。當(dāng)激勵(lì)端使得一換能器發(fā)出超聲信號(hào)后,另一超聲波換能器在接收到聲信號(hào)后,將其轉(zhuǎn)換成電信號(hào),此時(shí)的電信號(hào)幅值很小,僅為毫伏級(jí),而且會(huì)帶有較多的干擾和噪聲,模擬電路部分需要經(jīng)過(guò)隔直選頻和放大(信號(hào)幅值為3 V左右),得到幅值較大、波形規(guī)整的近似變幅正弦波,該波的幅值由零遞增,在達(dá)到最大值后再緩慢衰減。最后進(jìn)行過(guò)零檢測(cè),確定stop信號(hào)到來(lái)時(shí)刻。
2.2 系統(tǒng)的軟件設(shè)計(jì)
系統(tǒng)上電后,首先進(jìn)行系統(tǒng)初始化并從存儲(chǔ)芯片讀取必要的參數(shù),然后程序就會(huì)進(jìn)入測(cè)量功能的大循環(huán)。人們關(guān)注的是累積流量的數(shù)值,實(shí)際應(yīng)用中.一般認(rèn)為在短時(shí)間內(nèi)的瞬時(shí)流量是不變的,因此只需每隔一段時(shí)間測(cè)量一次瞬時(shí)流量值,此瞬時(shí)流量值與時(shí)間的乘積就作為這段時(shí)間內(nèi)的累積流量。為了降低系統(tǒng)功耗,只有在系統(tǒng)到達(dá)定時(shí)時(shí)間或者有按鍵觸發(fā)中斷時(shí),系統(tǒng)由休眠狀態(tài)被喚醒,進(jìn)入工作狀態(tài)。
系統(tǒng)總流程圖如圖5所示。
評(píng)論