針對復雜工礦環(huán)境和高度自動化生產(chǎn)環(huán)境對無線流量計的需求,對超聲波測流量的原理及實現(xiàn)方法和藍牙低功耗技術(shù)進行了研究,設(shè)計了一種高精度的無線超聲流量計。系統(tǒng)以 TI 的 DSP 芯片 TSM320F28027 為核心,采用高精度時間數(shù)字轉(zhuǎn)換芯片 TDC - GP22 測量超聲波傳播的時差,采用 TI 的 CC2540 作為藍牙通信芯片。針對流量測量過程會出現(xiàn)錯誤的時差數(shù)據(jù),提出了一種基于拉依達準則的數(shù)據(jù)處理算法。實驗結(jié)果表明該流量計具有高精度流量計量,遠距離、低功耗無線傳輸及無線組網(wǎng)等功能。
0.引言
流量計量在工業(yè)生產(chǎn)、石油輸送、城市供水等領(lǐng)域有著重要作用,流量計量的精度對生產(chǎn)效率的提高以及節(jié)能起著至關(guān)重要的作用。超聲波流量計憑借非接觸、無腐蝕、精度高等特點得到廣泛的應用。隨著工業(yè)4. 0 及智慧城市的提出,智慧節(jié)點也成為儀器儀表發(fā)展的趨勢。傳統(tǒng)的流量計一般配備 RS - 232、RS - 485接口,無法融入智能控制網(wǎng)絡,具有無線傳輸能力的流量計已經(jīng)成為一種迫切的需求。本文設(shè)計了一種基于時間精確測量技術(shù)和低功耗藍牙技術(shù)的無線超聲波流量計。該流量計在應用高精度時間數(shù)字轉(zhuǎn)換芯片的基礎(chǔ)上增加了數(shù)據(jù)處理算法,可以有效地提高流量計量精度。流量計增加藍牙通信模塊可以減少數(shù)據(jù)統(tǒng)計工作量,避免危險環(huán)境造成的人身傷害; 還可以作為無線網(wǎng)絡的節(jié)點,方便流量監(jiān)控和管理。
1.超聲波流量計測量原理
超聲波流量計原理有時差法、多普勒法、波束偏移法等,其中時差法在超聲波流量計中的應用最為廣泛。時差法超聲波流量計是利用液體流動對超聲波傳輸?shù)挠绊憗碛嬎懔髁康?/span> 。超聲波流量計測量原理如圖 1 所示。
在 A、B 之間順流和逆流的飛行時間不同,隨著流速 v 變化,設(shè)順流飛行時間為 t1 ,逆流飛行時間為 t2 ,電路傳輸延遲為 t0 ,則由如下關(guān)系式可以換算出流體的流速 v。超聲波順流飛行時間 t1 為:
2.系統(tǒng)設(shè)計
2. 1 藍牙網(wǎng)絡結(jié)構(gòu)
無線超聲流量計系統(tǒng)采用最新的藍牙 4 . 0 技術(shù),每個藍牙設(shè)備可同時連接多個設(shè)備,網(wǎng)絡結(jié)構(gòu)如圖 2 所示。網(wǎng)絡分為流量計、藍牙基站、數(shù)據(jù)中轉(zhuǎn)、服務器四層。臺式計算機、筆記本電腦和支持低功耗藍牙的手持設(shè)備是數(shù)據(jù)中轉(zhuǎn)層,可以直接讀取超聲流量計數(shù)據(jù)并上傳至服務器,也可對流量計進行遠程操控。
2. 2 系統(tǒng)總體設(shè)計
無線超聲波流量計整體系統(tǒng)框圖如圖 3 所示,整個系統(tǒng)由主控制器、顯示模塊、存儲模塊、輸入模塊、藍牙模塊、時差測量模塊六部分組成。
2. 2. 1 主控制器
主控制器采用 TI 的 TMS320F28027,它具有 32 位 DSP 內(nèi)核,時鐘頻率高達 60 MHz。TMS320F28027 具有豐富的外設(shè)和豐富的外部總線接口,如 UART、SPI、I2 C外部通信接口。顯示模塊和時差測量模塊采用 SPI 通信方式,藍牙模塊采用 UART 通信方式,存儲模塊采用I2 C 通信方式。TMS320F28027 具有 IDLE、STANDBY、 HALT 等多種低功耗模式,適合流量計開發(fā)。
2. 2. 2 時差測量模塊
時差測量模塊的核心是德國 ACAM 公司的高精度時間數(shù)字轉(zhuǎn)換芯片 TDC - GP22。GP22 是以信號通過內(nèi)部門電路的時間延遲來進行高精度時間間隔測量 。GP22 測量時間間隔精度高達 22 ps。GP22 具有窗口延遲功能,可以設(shè)置從超聲波發(fā)射到接收超聲波回波之間的延遲時間,在這段時間內(nèi) STOP 引腳不接收外部信號。利用窗口延遲可以消除超聲波發(fā)射電路對接收電路的干擾及外部信號的干擾 。在 GP22 初始化過程中,要啟用窗口延遲功能,在時差測量過程中,應根據(jù)管徑的變化自適應地調(diào)整窗口延遲時間。
2. 2. 3 藍牙模塊
藍牙模塊采用最新的藍牙低功耗技術(shù) ( bluetooth low energy,BLE) 。藍牙低功耗技術(shù)是藍牙 4. 0 標準的一部分,與傳統(tǒng)的藍牙 2. 0、3. 0 以及藍牙 4. 0 中的傳統(tǒng)藍牙部分相比,BLE 技術(shù)具有傳輸距離遠、功耗低等特點。CC2540 是 TI 公司 BLE 芯片,它集成了工業(yè)級的 8051 內(nèi)核和 RF 收發(fā)電路,發(fā)射功耗為 24 mA,接收功耗為 19. 6 mA,最大傳輸距離可達 100 m。
2. 2. 4 顯示模塊
顯示模塊使用的是無背光 OLED 顯示屏,并采用了 SSD1306 控制器。和 LCD、TFT 顯示屏相比,OLED功耗更低、顯示效果更好,且無需考慮對比度問題。
3.硬件設(shè)計
硬件電路主要包括時差測量模塊和藍牙通信模塊。
時差模塊和藍牙模塊與主控制器連接如圖 4 所示。
時差測量模塊包括 TDC - GP22 最小系統(tǒng)、溫度傳感器、濾波電路和超聲波換能器四部分。GP22 內(nèi)部集成了超聲波驅(qū)動單元,可以直接將超聲波換能器接在脈沖輸出端和 STOP 信號接收端。為了抑制外部干擾,在電路中加入了高通濾波電路。當觸發(fā)上游換能器時,STOP1 接地,STOP2 接收回波; 同理,當觸發(fā)下游超聲波換能器時,STOP2 接地,STOP1 接收回波。系統(tǒng)需要兩個時鐘,一個是 4 MHz 的時鐘,另一個是32 kHz 的時鐘,32 kHz 的時鐘用來校準高速時鐘,4 MHz的時鐘用來提供時間測量時基。時差測量模塊和主控制器之間通過四線制 SPI 方式連接,主控制器通過該接口可以完成對 GP22 的初始化以及測量結(jié)果讀取。
藍牙模塊主要包括 CC2540 最小系統(tǒng)、巴倫匹配電路和天線三部分。藍牙模塊有兩個時鐘,一個是32 kHz的低速時鐘,一個是 32 MHz 的高速時鐘。當系統(tǒng)工作在低功耗模式時,使用 32 kHz 時鐘; 當系統(tǒng)工作在正常收發(fā)模式時,使用 32 MHz 時鐘。
4.軟件設(shè)計
軟件設(shè)計包括主控制器程序設(shè)計和藍牙模塊程序設(shè)計兩部分。主控制器程序主要完成流量的測量,藍牙模塊程序主要完成流量的傳輸。
4. 1 主控制器軟件設(shè)計
主控制器的軟件設(shè)計主要包括主程序、定時器中斷程序、UART 中斷程序、數(shù)據(jù)處理子程序。
4. 1. 1 主程序設(shè)計
主程序完成外設(shè)參數(shù)的配置以及 OLED、GP22 的初始化,并設(shè)定時間和日期。完成初始化后主控制器進入低功耗模式 。GP22 初始化主要包括打開模擬測量、自動校準、選擇時鐘工作方式、啟動窗口延遲等。
4. 1. 2 定時器中斷程序設(shè)計
兩次時差測量的時間間隔由定時器設(shè)定,設(shè)置為20 ms。每次獲取時差后更新當前時間,每完成 15 次時差測量,調(diào)用數(shù)據(jù)處理子程序。
4. 1. 3 UART 中斷程序設(shè)計
主控制器通過 UART 和 CC2540 進行通信,當有藍牙設(shè)備連接時,CC2540 充當數(shù)據(jù)中繼器的角色,將數(shù)據(jù)在流量計和外部藍牙設(shè)備之間傳遞。UART 中斷程序的工作是判斷 CC2540 發(fā)送的數(shù)據(jù)類型 。接收到的數(shù)據(jù)分為三類,第一類是請求主控制器發(fā)送當前流量數(shù)據(jù),第二類是請求修改當前流量參數(shù),第三類是誤操作。如果接收到發(fā)送流量數(shù)據(jù)請求,則主控制器通過 UART 將瞬時流量和累計流量數(shù)據(jù)發(fā)送給外部藍牙設(shè)備; 如果發(fā)送的是修正流量參數(shù)的請求,則主控制器修改接收到的值; 如果是誤操作,則立即退出。
4.1.4數(shù)據(jù)處理子程序設(shè)計
最終流量數(shù)據(jù)在時差測量的基礎(chǔ)上計算得到。時差測量過程中不可避免地會出現(xiàn)錯誤數(shù)據(jù),因此要采用軟件算法剔除錯誤的數(shù)據(jù)。流量變化是連續(xù)的,短時間內(nèi)時差數(shù)據(jù)不會產(chǎn)生大的變化,因此,在時差數(shù)據(jù)處理過程中可采用拉依達準則將錯誤數(shù)據(jù)剔除。
算法實現(xiàn)是將每 15 次的測量數(shù)據(jù)分為一組,如果存在粗大誤差,則將其濾出。隨機取出連續(xù)測得的 15 次時差數(shù)據(jù) t1 ~ t15 ,如表 1 所示。
如果 | ti | > 3,就認為 ti 為異常值,將其剔除。該組數(shù)據(jù)的標準差為 0. 000 92,則根據(jù)準則判斷數(shù)據(jù)中是否存在異常值。如 0. 045 1 對應的偏差 0. 003 2 > 3σ,故將其剔除。剔除異常值后,計算時差的平均值,作為該段時間內(nèi)的時差。
4. 2 藍牙模塊軟件設(shè)計
在流量計中,藍牙模塊工作在從模式下,不能主動和主設(shè)備進行連接,只能間歇性地廣播并等待主設(shè)備發(fā)出連接請求。與傳統(tǒng)的藍牙相比,CC2540 廣播只使用了三個通道,通道號是 37、38、39,比傳統(tǒng)的全通道廣播功耗更低 。按照藍牙的工作原理,將 CC2540
的程序分為兩個狀態(tài),第一個狀態(tài)是待連接狀態(tài),第二個狀態(tài)是連接狀態(tài)。待連接狀態(tài)主要工作包括廣播以及連接請求的確認。當收到主設(shè)備發(fā)出的連接請求時,從設(shè)備要進行身份驗證,主設(shè)備要輸入驗證密碼;如果驗證密碼正確,則兩個設(shè)備進行連接。連接狀態(tài)下,藍牙設(shè)備作為流量計與外部設(shè)備通信的接口,完成數(shù)據(jù)轉(zhuǎn)發(fā)。沒有數(shù)據(jù)收發(fā)時,CC2540 處于睡眠模式,當收到主設(shè)備通過藍牙發(fā)送的數(shù)據(jù)或主控制器通過UART 發(fā)送的數(shù)據(jù)時被喚醒,并對收到的數(shù)據(jù)進行處理。如果收到主控制器發(fā)來的數(shù)據(jù),藍牙模塊會將數(shù)據(jù)通過藍牙發(fā)送給藍牙主設(shè)備; 如果收到來自藍牙主設(shè)備的數(shù)據(jù),藍牙模塊會將接收到的數(shù)據(jù)通過 UART總線發(fā)送給主控制器。
5.試驗結(jié)果
試驗中超聲波頻率為 1 MHz,安裝傾角為 45°,管道直徑為 80 mm,當流量在 0 ~ 20 m3 / s 時,流量測量值與標準表對比結(jié)果如表 2 所示。經(jīng)計算其精度在± 2% 之內(nèi),可以滿足大部分應用場合的需求。通過手機客戶端可以修改流量計算公式中的修正因子。通過藍牙將修正因子發(fā)送給流量計,主控制器將對流量計算公式進行修正。
6.結(jié)束語
本文設(shè)計了一種基于高精度時間數(shù)字轉(zhuǎn)換芯片GP22 和超低功耗的藍牙 4. 0 芯片 CC2540 的無線超聲波流量計。無線超聲流量計采用硬件濾波和軟件數(shù)據(jù)處理算法提高計量精度,采用藍牙低功耗技術(shù)實現(xiàn)無線傳輸。該流量計不僅可以實現(xiàn)本地高精度流量計量,還可以實現(xiàn)流量網(wǎng)絡監(jiān)控,適用于多種流體介質(zhì)及條件惡劣的工礦環(huán)境。