崔永俊,張彬彬,楊 兵
(1.中北大學電子測試技術國家重點實驗室,太原 030051;2.中北大學儀器科學與動態(tài)測試教育部重點實驗室,太原 030051)
基于時差法和TDC-GP2的超聲波熱量表設計
崔永俊1,2*,張彬彬1,2,楊 兵1,2
(1.中北大學電子測試技術國家重點實驗室,太原 030051;2.中北大學儀器科學與動態(tài)測試教育部重點實驗室,太原 030051)
為了實現(xiàn)高精度的熱量值測量,設計了基于TDC-GP2的時差法超聲波熱量測量系統(tǒng)。系統(tǒng)采用超聲波換能器和鉑電阻溫度傳感器PT1000為敏感單元,TDC-GP2為測試單元,結合FPGA與上位機,最終實現(xiàn)了數(shù)據(jù)的采集、傳輸和處理功能。經過測試,系統(tǒng)流量測量誤差在±0.5%以內,溫度測量偏差不超過0.5 ℃,熱量值測量誤差優(yōu)于±0.3%,達到了《熱能表檢定規(guī)程》的標準。
時差法;鉑電阻溫度傳感器;超聲波換能器;TDC-GP2;上位機
近年來,政府一直推動供暖收費制度改革,大力推廣分戶計量、按量收費的方式。隨著這種供暖收費方式的推廣,必然會使用大量的熱量表。超聲波熱量表是隨著超聲波測量技術的發(fā)展而出現(xiàn)的新型熱量表,該熱量表測量精度高且受水質影響較小,逐漸取代了傳統(tǒng)的旋翼式熱量表,成為熱量表市場的主流產品。熱量表測量的準確性、可靠性、能耗及價格,成為決定產品是否具有競爭力的標準。因此,設計一款高精度、低功耗、低成本的超聲波熱量表具有重要的實用價值。
系統(tǒng)應用一對超聲波換能器在流體中交替收發(fā)超聲波信號,通過測量超聲波信號在流體中順流和逆流傳播的時間,由時間差Δt間接算出累積流量qv;應用一對鉑電阻溫度傳感器PT1000,測量入水口和出水口的溫度值。由測得的累積流量和溫度值,根據(jù)式(1)計算出Δt時間內的熱量值[1]。熱量計算公式如下:
Q=qvρ(hf-hθ)Δt
(1)
式中:ρ為出水口密度值,由出入口溫度值查表可得;hf和 hθ為進水口、出水口焓值。
1.1 流量測量
系統(tǒng)采用時差法進行流體流量的測量,當超聲波在流體中傳播時,搭載了流體的流速,通過測量超聲波在流體中順逆流的時間差間接測量流度,再通過流速計算出流量。選用ACAM公司的TDC-GP2芯片作為熱量表的測量單元[2];FPGA作為控制單元,對TDC-GP2芯片進行寄存器的配置和數(shù)據(jù)的讀取;UART作為軟硬件接口。
圖1為進水口超聲波熱量測量系統(tǒng)的整體硬件結構圖[3],上、下游換能器以Z字法形式安裝在測量管道上,角度為θ,管道的內徑為d,上、下游換能器的傳播路徑為L。
圖1 系統(tǒng)的整體硬件結構圖
測量時,上、下游換能器交替作為超聲波發(fā)射和接收端,順逆流的傳播時間為:
(2)
由式(2)可得順逆流的時間差為:
(3)
由式(3)可以推出流速v為:
(4)
流量的計算公式為:
(5)
測量超聲波順流傳播時間時,設置上游換能器為發(fā)射狀態(tài),下游換能器為接收狀態(tài),通過FPGA控制TDC-GP2芯片從Fire1管腳輸出脈沖信號,激勵上游換能器發(fā)出超聲波信號,同時觸發(fā)Start管腳。由于TDC-GP2芯片不能識別超聲波信號,當下游換能器接收到超聲波信號后,必須先對超聲波信號進行處理,接收到的超聲波信號先經過放大濾波電路去除一些干擾噪聲,然后通過運算放大器組成的閾值比較電路,輸出TDC-GP2芯片能夠識別的矩形波脈沖信號。Stop管腳被觸發(fā)后,TDC-GP2芯片內部高速單元開始測量時差,當FPGA檢測到一次中斷INTN信號時,表示一次時差測量完成[4]。測量超聲波逆流傳播時間時,將上游換能器設置為接收狀態(tài),下游換能器設置為發(fā)射狀態(tài)即可。
1.2 溫度測量
在流體流速一定時,TDC-GP2對圖1中電容C1、C2對參考電阻R1、R2和溫度傳感器PT1000的放電時間進行測量[5],通過FPGA將測量數(shù)據(jù)打包發(fā)送給上位機,上位機按照式(6)換算后作為流體的溫度值。設計中,測量單元TDC-GP2寄存器bit7設置為0,即溫度測量開始時進行2次虛擬測量,bit8設置為0,即溫度測量的周期為150 μs,bit9設置為1,即使用2個溫度傳感器。整個溫度測量的原理圖如圖2所示。
圖2 溫度測量原理圖
測量時,上位機控制FPGA發(fā)送控制字0x02,啟動溫度測量。TDC-GP2自動進行4次測量,測量完成之后中斷標志INTN置位,4次測量結果RES_0,RES_1,RES_2,RES_3存儲在寄存器0~3中。進水口PT1000的電阻值Rh與R1,出水口PT1000的電阻值Rc與R2有如下關系:
(6)
根據(jù)上式可以算出進水口和回水口溫度傳感器的電阻值Rh和Rc,通過查PT1000電阻值溫度分度表可以得到進水口與出水口的水溫T1、T2。
溫度值和流量值都是先通過專用時差測量芯片TDC-GP2對時間間隔進行測量[6],然后通過FPGA將測量數(shù)據(jù)發(fā)送給上位機,最后在上位機上按照相應公式進行計算來完成的。TDC-GP2是德國ACAM公司繼TDC-GP1后推出的新一代時差測量芯片,它有兩種工作模式。工作模式1:兩路Stop通道共用一路Start通道,最低有效位為65ps,測量范圍:2.0 ns~1.8 μs;工作模式2:只有一路Stop通道對應Start通道,最低有效位也是65 ps,測量范圍:500 ns~4 ms。設計中選擇工作模式1,采用雙片TDC-GP2設計時間間隔測量電路,其測量時序如圖3所示。
圖3 時間間隔測量時序圖
圖4 TDC-GP2外圍電路連接圖
如圖3所示,Start作為時間間隔的開始信號,Stop作為時間間隔的結束信號,Ref為測量模塊的基準時鐘,其周期為Tref,t1和t2為精細測量結果,由TDC的高速單元完成測量,Coarsecount為粗計數(shù)結果,由FPGA內部計數(shù)器完成測量。當時間間隔的Start信號和Stop信號位于同一個參考時鐘內時,TDC-GP2只能測出t1、t2中的一個時間量,所以將Stop信號延時m個參考時鐘周期后再進行測量。時間間隔可以表示為:
time=Tref×[Cc+(t1-t2)]/(Cal1-Cal2)-mTref
(7)
TDC-GP2工作模式1的測量范圍為2.0 ns~1.8 μs,當待測時間間隔超過1.8 μs時,即Start信號上升沿與Stop信號上升沿不同時位于該測量范圍內時,t1和t2就無法被同時測量到,而TDC-GP2完成一次測量大概需要5 μs,這樣就會出現(xiàn)較長的工作死區(qū)。系統(tǒng)中采用雙TDC-GP2芯片的設計,分別對t1、t2進行測量,t1、t2的測量互不影響,消除了工作死區(qū),同時將系統(tǒng)測量量程由1.8 μs擴大到了1 s。
3.1 TDC-GP2外圍硬件設計
系統(tǒng)選用ACAM公司的TDC-GP2芯片作為熱量表的測量單元,TDC-GP2是專用的時間間隔測量芯片,它的測量分辨率為65 ps,比Agilent的53132A計數(shù)器和斯坦福的SR60計數(shù)器分辨率都高,而且具有良好的功能性,包括精確的溫度測量、高速脈沖發(fā)生器、時鐘校準、4線SPI串行通信接口、微處理器以及一個傳感驅動與接收器,非常適合用于低成本超聲波熱量計設計。
圖4為TDC-GP2芯片的外圍連接電路圖[7],TDC-GP2芯片外接兩個晶振,其中4 MHz高速晶振用于時鐘校準以及在工作模式2中作為時間測量單元的一部分,32.768 kHz晶振作為基準時鐘用來控制高速時鐘和進行時鐘校準用。工作模式2中只有一個Stop通道開通,所以En_Stop2、Stop2管腳接地。Fire1、Fire2接超聲波換能器,PT1、PT4接PT1000鉑電阻溫度傳感器,分別測量進水口和回水溫度,PT2、PT3接參考電阻,LoadT管腳用于對電容C1進行充電,SenseT管腳用于感應電容C1放電結束,SPI總線引腳SSN、SCK、SI、SO經過排阻分別與FPGA的P1到P4引腳相連。
3.2 軟件設計
系統(tǒng)的軟件包括用VHDL語言編寫的FPGA嵌入式程序和用C#語言編寫的上位機程序,主要實現(xiàn)FPGA對TDC-GP2芯片的控制,并將TDC-GP2測得的數(shù)據(jù)通過SPI總線傳輸給上位機進行處理。軟件流程圖如圖5所示。
圖5 軟件流程圖
系統(tǒng)上電后,通過人機交互界面對FPGA發(fā)送Start命令,FPGA檢測到Start信號后復位并向TDC-GP2發(fā)送0x50操作碼復位TDC-GP2,復位完成后對TDC-GP2寄存器進行配置,配置完成后FPGA發(fā)送Start_Cal_Resonator命令對TDC-GP2進行時鐘校準,FPGA檢測到TDC-GP2返回的INTN標志位置低表示校準完成,發(fā)送讀操作碼可以讀取校準結果,TDC-GP2內部集成的微處理器能夠把這個測量值與理論值進行比較后計算出修正因數(shù)488.28125/RES_0。時鐘校準完成后,FPGA發(fā)送Start_Temp操作碼進行一次溫度測量,檢測到中斷INTN置低后,FPGA發(fā)送0xB4操作碼讀取結果寄存器檢測是否溢出,如果沒有溢出,讀取結果寄存器中數(shù)據(jù),即一次溫度測量完成。然后進行流量測量,先發(fā)送0x70初始化TDC-GP2,初始化后發(fā)送0x01觸發(fā)脈沖發(fā)生器,檢測到INTN置低后,FPGA發(fā)送0xB4操作碼讀取結果寄存器檢測是否溢出,如果沒有溢出,配置寄存器Reg1為0x81314400,計算HIT2-Start,由于每次測量大約需要4.6 μs,所以配置完后等待5 μs,配置寄存器Reg1為0x81414400,計算HIT3-Start,等待5 μs后讀取結果寄存器中數(shù)據(jù),然后切換上、下游超聲波換能器的收發(fā)狀態(tài)再進行一次時差測量,測量完成后,對溫度和流量測量的數(shù)據(jù)進行編幀并通過UART發(fā)送給上位機。多次測量后取平均值,上位機按照式(5)、式(6)對數(shù)據(jù)進行計算并顯示。
流量測量試驗采用的管道內徑為12 mm,超聲波換能器在管道上的安裝角度為30°,將樣機測試數(shù)據(jù)與光華愛而美特公司的IFS4000系列15 mm口徑電磁流量計測試數(shù)據(jù)進行對比,IFS4000測量范圍0~3 m3/h,最大誤差為0.1%(表1)。
表1 流量測量數(shù)據(jù)
溫度測量以電子溫度計作為標準,在穩(wěn)定流速條件下,進行多組測量并對測量結果取平均后得到數(shù)據(jù)如表2所示。
表2 溫度測量數(shù)據(jù) ℃
在實際測量中,由于管道內流體在不同流速下波動特性不同以及測試環(huán)境的影響,單次測量的數(shù)據(jù)是一直跳動的,所以表1和表2中的測量數(shù)據(jù)都是對100次測量結果取平均后得到的,這樣可以減小隨機誤差對測量精度的影響。表1中,流量測量值與IFS4000測量值的相對誤差在±1.5%以內;表2中,溫度測量值與標準值偏差不超過0.5 ℃,根據(jù)式(1)可得,熱量值的測量誤差在±0.3%以內,優(yōu)于國家《熱能表檢定規(guī)程》中規(guī)定的最大允許誤差±(0.5+Δtmin/Δt)%[8]。
為了實現(xiàn)高精度的熱量測量,設計了一種高精度、高分辨率的超聲波熱量系統(tǒng)。系統(tǒng)選用最小時差測量分辨率達65 ps的TDC-GP2芯片,實現(xiàn)了流量和溫度的測量。經過測試,系統(tǒng)流量測量誤差在±0.5%以內,溫度測量偏差不超過0.5 ℃,熱量值測量誤差優(yōu)于±0.3%,測量精度達到了熱量表的行業(yè)標準,具有一定的推廣價值和很好的市場前景。
[1] 瞿鑫,吳云峰,江桓,等. 基于FPGA的時間間隔測量系統(tǒng)的設計[J]. 電子器件,2013,36(6):825-827.
[2] 周國清,周祥,張烈平,等. 面陣激光雷達多通道時間間隔測量系統(tǒng)研制[J]. 電子器件,2015,38(1):166-173.
[3] ACAM Inc.TDC-GP2用戶手冊[DB/OL]. (2009-12-21). http://www.dzsc.com/uploadfile/company/102330/2008410145650637.pdf.
[4] 邢燕. 高精度時間間隔測量系統(tǒng)[J]. 電子測量技術,2010(5):1-3,9.
[5] 高正中,譚沖,趙聯(lián)成,等. 基于TDC-GP22高精度低功耗超聲波熱量表的設計[J]. 電子技術應用,2015(7):61-63,67.
[6] 徐圣法. 基于TDC_GPX的高精度時間間隔測量方法[J]. 國外電子測量技術,2012(12):40-41,54.
[7] 仲峰,萬莉萍,岳宇軍. 高精度時間測量芯片TDC-GP2在激光測距中的應用[J]. 工業(yè)控制計算機,2007(4):69-70,72.
[8] 鞠文濤. 超聲波熱量表的設計與研發(fā)[D]. 浙江大學,2008.
Design of Ultrasonic Heat Meter Based on Time Difference Method and TDC-GP2
CUIYongjun1,2*,ZHANGBinbin1,2,YANGBing1,2
(Ministerial Key Laboratory for Instrument Science and Dynamic Test,National key Laboratory for Electronic Measurement Technology,North University of China,Taiyuan 030051,China)
In order to achieve high precision of calorific value measurement,the design of ultrasonic heat measurement system is based on TDC-GP2. The system uses platinum resistance temperature sensor PT1000 and ultrasonic transducer as sensitive units,TDC-GP2 as testing unit,and the combination of FPGA and PC to realize the acquisition,processing and transmission of data. Through the test,the maximum measurement error is less than 3%,the maximum error of temperature measurement is less than 0.5 ℃,Calorific value measurement error is better than 0.3%.
time difference method;platinum resistance temperature sensor;ultrasonic transducer;TDC-GP2;pc
2016-03-04 修改日期:2016-04-13
TN79
A
1005-9490(2017)03-0737-05
C:7820
10.3969/j.issn.1005-9490.2017.03.044