劉暢,劉建昌,李躍忠,2,羅先喜,2
(1.東華理工大學機械與電子工程學院,江西南昌,330013;2.江西新能源工藝與工程技術(shù)研究中心,江西南昌,330013)
關(guān)鍵字:超聲波流量計;Modbus協(xié)議;TDC-GP22;信號處理電路
超聲波流量計相比于傳統(tǒng)的流量計具有測量精度高、可靠性高、集成度高等特點,在水流量檢測領(lǐng)域應(yīng)用廣泛[1-2]。超聲波水流量計的遠程抄表傳輸數(shù)據(jù)方式較多,在通信協(xié)議上沒有統(tǒng)一的標準[3]。為了實現(xiàn)抄表方式的規(guī)范化,本文設(shè)計了一種基于Modbus協(xié)議的超聲波水流量計,可以實現(xiàn)對流量的測量以及數(shù)據(jù)遠距離傳輸。
當有流體在管道內(nèi)以一定的速度流動時,由于超聲波在順逆流方向的傳播速度不同,可知超聲波在順逆流方向的傳播時間存在差值,通過傳播時間反推可以計算出流體流速[4-5]。如圖1所示為時差法原理示意圖。

圖1 時差法原理示意圖
如圖1所示,超聲波在順流方向的傳播時間為tab:

逆流方向的傳播時間為tba:

式中c為被測介質(zhì)中超聲波的傳播速度。管道內(nèi)的線平均流速v如下式所示:

但是線平均流速只反映了聲道所在截面的流速,直接用于求取流體流量會使測量結(jié)果有較大誤差,所以需要將線平均流速轉(zhuǎn)換為面平均流速vs。v和vs的關(guān)系如下:

式中k為流速分布的修正系數(shù),由此得到瞬時流量Q的計算式:

式中D為管道直徑。
超聲波水流量計硬件主要由MSP430F5438A微處理器、高精度計時芯片TDC-GP22、信號處理電路、模擬切換開關(guān)電路、電源模塊、通訊模塊等幾部分組成,如圖2所示。MSP430F5438A具有高集成度、內(nèi)部資源豐富、低功耗等特點,并且通過其豐富的接口與TDC-GP22等其他模塊進行通訊。系統(tǒng)的工作流程簡述如下:微處理通過SPI接口控制TDC-GP22芯片產(chǎn)生1MHz脈沖激勵信號并將此信號首個脈沖的產(chǎn)生時間作為時間差計算的起點,通過模擬開關(guān)選擇換能器A發(fā)送超聲波信號;信號在管道流體中傳播并由換能器B接收,接收到的超聲波信號經(jīng)過信號處理電路的濾波、放大,產(chǎn)生測量結(jié)束信號,同時計時芯片測量出超聲波傳播的時間,由此完成順流測量。同理微處理器通過控制模擬開關(guān)切換測量方向完成逆流方向傳播時間的測量,并將測量的數(shù)據(jù)傳輸至微處理器;微處理器接收到數(shù)據(jù)后根據(jù)時差法原理的相關(guān)計算公式計算出流量等。

圖2 硬件系統(tǒng)框架
本設(shè)計中完成超聲波在流體中傳播時間差測量的核心功能模塊是TDC-GP22高精度計時芯片,該芯片具有高速脈沖發(fā)生器、接收信號使能、溫度測量和時鐘控制等功能,僅需要數(shù)量很少的電容電阻就能實現(xiàn)對超聲波傳播時間差測量,并可搭配PT1000溫度傳感器實現(xiàn)溫度的測量,TDC-GP22接口電路如圖3所示。

圖3 TDC-GP22接口電路
TDC-GP22模塊中START引腳在超聲波進行時間測量時用于接收開始信號并觸發(fā)開始時間計時,STOP引腳用于接收時間測量的結(jié)束信號,由內(nèi)部ALU計算開始信號和結(jié)束信號的時間差。在設(shè)計中采用通道一進行時間測量通道,即在FIRE_UP引腳發(fā)送激勵脈沖信號并觸發(fā)START引腳,回波信號經(jīng)過處理后進入STOP1引腳結(jié)束此次測量。
超聲波信號在流體中傳播,會受到各種噪聲的干擾、流速變化等因素影響,從而導致信號有較大的衰減,使換能器接收到的回波信號幅值較小,因此需要對其進行放大濾波處理。本設(shè)計的放大濾波電路為六階巴特沃茲電路,具體電路如下圖4所示。

圖4 信號放大濾波電路
設(shè)計中使用的運算放大器為AD8039芯片,該運放帶寬高達350MHz,寬供電電壓3V~12V,其低功耗電流僅為1mA。通過LTspice軟件對上圖的電路進行仿真如圖5所示,可知該電路的中心頻率在1MHz左右,帶寬在400KHz左右,回波信號的頻率在帶寬之內(nèi)且增益在9dB左右,符合設(shè)計要求。

圖5 信號處理電路仿真圖
通過示波器觀察回波信號以及信號經(jīng)過信號處理電路的波形如圖6所示,圖左為未經(jīng)過信號處理的回波信號波形,可以看出其幅值在330mV左右;圖右是經(jīng)過信號處理電路的回波信號,其信號幅值在860mV。通過仿真及實際測試得出設(shè)計的信號處理電路滿足設(shè)計要求。

圖6 回波信號對比圖
通訊模塊為RS485通信接口模塊,采用的SP485芯片,由外部供電來提高傳輸距離,電路設(shè)計如圖7所示。微處理器將串行數(shù)據(jù)通過RS485_TXD傳輸給SP485,經(jīng)該芯片轉(zhuǎn)換為差分電平信號由A、B引腳輸出到上位機接收;接收信號時,上位機發(fā)送的數(shù)據(jù)由A、B引腳經(jīng)芯片將差分信號轉(zhuǎn)換為TTL電平信號發(fā)送給微處理器。

圖7 通訊模塊電路
軟件設(shè)計是整個系統(tǒng)的核心部分,軟件程序設(shè)計的好壞直接影響到整個系統(tǒng)能否正常工作。整個系統(tǒng)程序如圖8所示大致劃分六個部分:流量計主程序、TDC-GP22程序、數(shù)據(jù)傳輸程序、LCD顯示程序、數(shù)據(jù)處理程序、數(shù)據(jù)存儲程序。

圖8 系統(tǒng)軟件框架
Modbus是一種串行通信協(xié)議,是1979年Modicon公司為使用可編程邏輯控制器通信而發(fā)明。如今Modbus通信協(xié)議已經(jīng)成為工業(yè)領(lǐng)域通信協(xié)議的業(yè)界標準,并且是工業(yè)電子設(shè)備之間常用的連接方式之一。Modbus通信協(xié)議分為兩種串行通信模式,ASCII和RTU通信模式。本設(shè)計中采用RTU通信模式。基于Modbus實現(xiàn)讀取命令的數(shù)據(jù)幀如表1所示,其優(yōu)點是在相同的波特率下比ASCII方式傳輸更多的數(shù)據(jù)。

表1 發(fā)送的數(shù)據(jù)幀
數(shù)據(jù)幀的格式包含設(shè)備地址、功能碼、起始地址、寄存器個數(shù)和CRC校驗碼。功能碼03代表該數(shù)據(jù)幀的含義是用來讀取顯示數(shù)據(jù)。微處理器接收到指令后將響應(yīng)數(shù)據(jù)幀發(fā)送到上位機。響應(yīng)幀的數(shù)據(jù)格式如表2所示,返回的數(shù)據(jù)是16進制的瞬時流量,對應(yīng)為6立方米/小時。利用該方法只需要改變起始地址,就可以得到不同的返回數(shù)據(jù),比如累計流量、壓力、溫度等。

表2 響應(yīng)的數(shù)據(jù)幀
如圖9所示的流程圖,微處理器在系統(tǒng)初始化后,調(diào)用串口接收上位機查詢指令的數(shù)據(jù)幀;確定查詢地址正確后,再確定CRC校驗是否正確;若校驗碼正確,則將對應(yīng)的數(shù)值保存在Modbus的響應(yīng)幀的數(shù)據(jù)位中返回;否則上位機收不到響應(yīng)數(shù)據(jù)。

圖9 Modbus指令流程
超聲波水流量計軟硬件設(shè)計完成之后,在南昌工貿(mào)有限公司進行相關(guān)的實驗,圖10為流量計實驗裝置及管段。

圖10 流量計實驗裝置及管段圖
本次超聲波水流量計的實驗條件:超聲波換能器工作頻率1Mhz,兩對超聲波換能器均以45度安裝在管道內(nèi),管徑為DN200mm。將超聲波水流量計安裝到實驗裝置的管段上,打開水泵使管段內(nèi)充滿水,保證管段內(nèi)的水處于滿管狀態(tài)。通過擰動裝置的閥門調(diào)節(jié)管段內(nèi)水流速的大小,并通過數(shù)據(jù)讀取軟件實時讀取基于Modbus協(xié)議傳輸?shù)乃矔r流速等參數(shù),如圖11所示。

圖11 軟件讀取數(shù)據(jù)圖
如上圖所示,發(fā)送指令為01 03 00 65 00 02 D4 14,則獲取當前溫度;返回01 03 04 41 9B 33 33 CB 05,表示當前溫度為19.4攝氏度。同樣的發(fā)送當前流速指令 01 03 00 00 00 02 C4 0B,返回01 03 04 40 BA 8F 5C AA 1F表示當前流速5.83立方米/小時。
本文給出了基于Modbus協(xié)議的超聲波水流量計的設(shè)計方法,介紹了整體硬件框架及具體的模塊電路設(shè)計,以及Modbus協(xié)議數(shù)據(jù)傳輸?shù)能浖O(shè)計。并且進行了相關(guān)的實驗驗證了設(shè)計的可行性,滿足了設(shè)計要求。