用ADuC812設(shè)計超聲波非接觸液位計
摘要:闡述了超聲波非接觸液位計測量的原理,給出了硬件電路和軟件編程的設(shè)計方法,對其應(yīng)用也作了簡單介紹。
本文引用地址:http://m.butianyuan.cn/article/255658.htm 關(guān)鍵詞:ADuC812芯片、超聲波、液位、非接觸
1.概述
隨著電子技術(shù)、計算機(jī)技術(shù)以及大規(guī)模集成電路芯片技術(shù)的飛速發(fā)展,超聲測距技術(shù)也日臻成熟。于九十年代初,國內(nèi)開始將超聲測距技術(shù)應(yīng)用于河流、湖泊、水、渠等水體的水位測量中及其油、漿等液體的液位測量之中,并開始發(fā)揮其重要作用。
ADuC812是ADI公司99年開發(fā)面市的新一代、帶有嵌入式閃速M(fèi)CU的多通道12位A/D轉(zhuǎn)換器,用ADuC812作為核心,加上超聲波發(fā)、收電路以及存儲、顯示等電路所組成的超聲波非接觸液位計,不僅減小了儀器的體積,更增加了儀器的可靠性、穩(wěn)定性和實用性。
2.ADuC812芯片特性
圖1是ADuC812內(nèi)部功能框圖,該芯片具有與8051兼容的內(nèi)核,額定工作頻率為12MHz(最大為16MHz),3個16位定時器/計數(shù)器,32條可編程的I/O口線,端口3具有高電流驅(qū)動能力,9個中斷源并有2個優(yōu)先級。芯片內(nèi)集成有8K字節(jié)閃速/電擦除程序存儲器,640字節(jié)閃速/電擦除數(shù)據(jù)存儲器,片內(nèi)充電泵(不需要外部Vpp );256字節(jié)片內(nèi)數(shù)據(jù)RAM,16M字節(jié)外部數(shù)據(jù)地址空間,64K字節(jié)外部程序地址空間。在摸擬輸入輸出方面:片內(nèi)集成有8通道、高精度的12位A/D,片內(nèi)40ppm/℃電壓基準(zhǔn),采樣速率達(dá)200kSPS,DMA控制的高速A/D至RAM捕獲,2個12位電壓輸出D/A,片內(nèi)溫度傳感器功能。在電源方面,芯片可用3V或5V供電,并有正常、空閑和掉電三種工作摸式。片上還集成有:UART輸入/輸出口,雙線(I2C兼容)和SPI串行I/O口,看門狗定時器和電源監(jiān)控電路。
3.測量原理
超聲波非接觸液位計的測量原理如圖2所示:由CPU控制超聲發(fā)射電路,通過超聲傳感器發(fā)射超聲脈沖波,該脈沖波遇到被測液面(水面)后,反射到超聲傳感器,CPU通過測計發(fā)射、接收之間超聲波往返的傳播時間t(秒),來計算測量距離h,圖2中:
h=1/2·vt (米)
v 為空氣中的聲速,其近似公式為:
v=331.45+0.61T (米/秒)
T為測量時的氣溫(℃),可以在測量距離的同時測量氣溫來進(jìn)行對聲速的修正。
圖2中設(shè)傳感器安裝高程為H0(可在安裝傳感器時測得),則液位H可用下式算得:
H=H0-h=H0-1/2·vt (米)
本液位計時間測量精度為微秒級,溫度測量精度為0.1℃,由此產(chǎn)生的液位測量誤差經(jīng)分析計算為1厘米。
4.硬件電路設(shè)計
根據(jù)液位測量原理及ADuC812的特性, 非接觸超聲波液位計的電路組成如圖3所示:主要有單片機(jī)控制系統(tǒng),時鐘值班電路,超聲波發(fā)射、接收電路,鍵盤顯示等部分組成。
單片機(jī)控制系統(tǒng) 以ADuC812為核心,控制液位計測量、運(yùn)算處理、顯示、打印、向外傳送數(shù)據(jù)等。設(shè)計6位LCD液晶顯示器用來顯示液位和參數(shù)值,用TPup-16微型打印機(jī)記錄測量時的時間、液位;設(shè)計有256KB×8字節(jié)的自帶電池保護(hù)的非易失數(shù)據(jù)存儲器SRAM,用來存儲時間及液位;超聲傳感器的安裝高程、時鐘及測量、打印、存儲液位的時間間隔等參數(shù)都是通過4個功能鍵置入的。為提高液位計的可靠性,設(shè)計有上電復(fù)位、手動復(fù)位及自復(fù)位(利用ADuC812內(nèi)部的看門狗定時器);為了能適時向外傳送測量結(jié)果,液位計設(shè)計有與無線數(shù)傳電臺及有線的RS-232接口,便于用戶配接。
時鐘值班電路 為滿足水文自動化測報的需要,液位計的電源值班電路由微功耗的電源變換器件及邏輯電路等組成,用來根據(jù)所設(shè)定的測量時間間隔,產(chǎn)生上電控制信號,使除打印機(jī)以外的整個液位計得電工作,打印機(jī)只有在到達(dá)設(shè)定的打印時間才由CPU控制上電打印,打印完畢即關(guān)閉打印機(jī)電源;當(dāng)液位計每次的測量工作完成后即由CPU送出掉電控制信號,使除值班電路正常供電外,其余電路全無電能消耗。
模擬電路 包括超聲波的發(fā)射、接收、信號轉(zhuǎn)換及溫度的測量等幾部分電路組成。
由ADuC812的P3.3、P3.4產(chǎn)生出一定頻率的經(jīng)調(diào)制好的矩形超聲波脈沖,送入超聲波發(fā)射電路,經(jīng)功放、轉(zhuǎn)換電路后由超聲傳感器發(fā)向被測液面,當(dāng)超聲波遇到液面后被反射回來,在通過超聲波傳感器接收至轉(zhuǎn)換電路并進(jìn)入接收電路。在接收電路中,回波信號經(jīng)放大、解調(diào)、檢波、整形等后送入ADuC812的P3.2 口,并產(chǎn)生中斷信號,由計時電路記錄下從發(fā)射超聲波至接收到回波的時間,即完成了一次的時間測量。
溫度的測量是采用ADI公司的集成溫度傳感器AD590來實現(xiàn)的,AD590為線性電流輸出:1μA/οK,正比于絕對溫度;測溫范圍為-55~+150℃;電源范圍為+4V~+30V。根據(jù)AD590的特性及ADuC812的A/D轉(zhuǎn)換精度計算、測試得出,本電路可測溫度的靈敏度為0.1℃。
5.軟件編程設(shè)計
軟件設(shè)計采用摸塊化結(jié)構(gòu),整機(jī)軟件由主程序、鍵處理子程序、計算子程序、顯示子程序、數(shù)據(jù)存儲子程序、打印子程序、數(shù)據(jù)傳送子程序等組成。
主程序 如圖4所示,液位計在第一次上電時要進(jìn)行系統(tǒng)初始化并自檢,正常后判是否調(diào)試狀態(tài),是則通過鍵盤顯示輸入有關(guān)參數(shù),然后依次完成測量、計算、顯示、存儲、打印、傳送數(shù)據(jù)等子程序,最后控制掉電。
子程序 在鍵處理子程序中,將依次對功能鍵、移位鍵、數(shù)字鍵進(jìn)行相應(yīng)的處理,并存入對應(yīng)單元。測量子程序中,首先由ADuC812控制產(chǎn)生一頻率、寬度、幅度一定的超聲脈沖波,發(fā)向液面,并開計時器,對接收到的液面反射回波還要進(jìn)行頻率、寬度、幅度判別,為消除液面波動及偶然因素的影響,采用一定時間內(nèi)多次測量,計算處理上采用數(shù)字濾波、程序限幅等技術(shù),以提高測量的正確和準(zhǔn)確性。在數(shù)據(jù)存儲子程序中,是將需要存入的時間、液位數(shù)據(jù)經(jīng)壓縮后存入256KB×8字節(jié)的SRAM中,按6分鐘測量并存儲一次,則可存儲一年的液位數(shù)據(jù)。其它子程序及各子程序框圖限于篇幅不再給出。
6.應(yīng)用
本液位計在測量過程中無任何部件觸及液面,實現(xiàn)了非接觸測量,所以無論液面是流動、波動或是有漂浮物以及有化學(xué)反應(yīng)等都可應(yīng)用。
該液位計的主要性能指標(biāo)為:測距1.0~12.0米,精度±2厘米,分辨率1厘米。測量、存儲、打印的間隔為1分鐘~12小時,可由鍵盤設(shè)定。測量數(shù)據(jù)可用有線、無線向外傳送,電源用12V蓄電池加太陽能(或交流電)浮充,整機(jī)功耗小于0.1瓦(6分鐘測一次)。
該液位計是非接觸測量的理想儀器,現(xiàn)已經(jīng)分別安裝在黃河的干支流及大中型水庫上多處,用于水位的自動測報,運(yùn)行工作正常,性能穩(wěn)定可靠,受到用戶好評。
超聲波液位計相關(guān)文章:超聲波液位計原理
液位計相關(guān)文章:磁翻板液位計原理
評論