TSic系列高精度溫度傳感器的應(yīng)用
摘要:數(shù)字溫度傳感器因其低成本、易使用、無需校準(zhǔn)等特點近年來得到廣泛應(yīng)用,其中以DS18B20為代表。目前常用的數(shù)字溫度傳感器與傳統(tǒng)的鉑溫度傳感器相比,測量精度還不夠高。本文介紹的TSic系列的精度可達(dá)到±0.07℃,并且具有長期穩(wěn)定性。
關(guān)鍵詞:高精度數(shù)字溫度傳感器;單片機(jī);TSic;DS18B20
引言
TSic是IST(Innovative Sensor Technology)公司單總線溫度傳感器IC的注冊商標(biāo)。TSic產(chǎn)品系列由集成芯片和已校準(zhǔn)的溫度傳感器組成,內(nèi)部集成了用于模擬或數(shù)字信號輸出的信號轉(zhuǎn)換器。TSic系列的測量精度為±0.5~±0.07℃,是目前精度極高的數(shù)字溫度傳感器IC,優(yōu)于DIN Y(1/3 DIN B)鉑傳感器的精度。信號分辨率為0.1~0.004℃。TSic不僅有出色的精度,而且具有長期穩(wěn)定性。IST公司還提供TSic的精度范嗣偏移定制校準(zhǔn)服務(wù)。
TSic系列有標(biāo)準(zhǔn)0~1 V模擬電壓輸出、比例10%~90%V+電壓輸出和11位數(shù)字信號輸出3種方式,用戶可根據(jù)自己的需求選擇適用的型號。TSic的低功耗(典型值為30μA)使其非常適合移動應(yīng)用。TSic還有無需校準(zhǔn)、轉(zhuǎn)換速度快(100 ms)和易使用等優(yōu)點。
1 計算公式和通信協(xié)議
1.1 TSic輸出信號的計算公式
◆數(shù)字輸出:T=(Digital_signal/2047×(HT~LT)+LT)℃
◆模擬輸出信號:T=(Sig[Volt]×(HT-LT)+LT)℃
◆比例輸出信號:T=((Sig[V]/VDD[V]-0.1)/0.8×(HT-LT)+LT)℃
不同的型號有不同的LT和HT,例如精度±0.1℃的TSic 50x,其LT=-10,HT=60。
1.2 用于TSic的ZACwire通信協(xié)議
ZACwire是一種單線雙向通信協(xié)議。位編碼類似于時鐘信號嵌入數(shù)據(jù)信號中的曼徹斯特編碼(信號的下降沿以固定周期產(chǎn)生)。這樣協(xié)議對兩個IC之間通信時波特率的差異就很不敏感。
在終端用戶應(yīng)用中,TSic傳送溫度信息,另一個IC(通常是MCU)通過ZACwire讀溫度數(shù)據(jù)。
TSic發(fā)送長度為1字節(jié)的數(shù)據(jù)包。這些包由1個起始位、8個數(shù)據(jù)位和一個奇偶校驗位組成。常用的波特率是8 kbps(125μs位寬)。信號的常態(tài)是高電平。當(dāng)傳輸開始,起始信號發(fā)生,緊接著是數(shù)據(jù)位(先高后低),包的結(jié)尾是偶校驗位。ZACwire數(shù)據(jù)包如圖1所示。
Tsic提供11位分辨率的溫度數(shù)據(jù),11位數(shù)據(jù)不能在單個包中傳遞。一個來自TSic的完整溫度數(shù)據(jù)包由2個包組成。第1個包包含高3位溫度信息,第2個包包含低8位溫度信息。在第1個傳輸包的末端和第2個傳輸包的開始之間有一個寬度為二分之一信號位寬的高信號,即停止位。來自TSic的全ZACwire溫度數(shù)據(jù)包如圖2所示。
ZAcwire的位格式是占空比編碼。起始位:50%占空比,用于設(shè)置閘門時間。邏輯1:75%占空比。邏輯0:25%占空比。停止位:信號高電平,持續(xù)半位寬度時間。在包中的字節(jié)之間有一個半停止位時間。ZACwire位編碼時序如圖3所示。
2 硬件設(shè)計
圖4是某個應(yīng)用中與TSic相關(guān)部分的電路圖。
圖中溫度傳感器U2的圖標(biāo)借用了晶體管的圖標(biāo),該設(shè)計兼容DS18B20和TSic,如果使用TSic則不接R2。引腳2是數(shù)據(jù)線,引腳3是傳感器的電源。
傳感器的電源沒有直接接到VCC,原因如下:MCU可以用中斷方式或查詢方式讀TSic的數(shù)據(jù)。當(dāng)連接ZACwire信號到MCU的引腳時,能夠在起始位的下降沿引發(fā)一個中斷,使MCU轉(zhuǎn)向中斷服務(wù)程序ISR。當(dāng)使用查詢方式時,MCU必須發(fā)起讀溫度操作,這可以用MCU的一個引腳提供電源到TSic來實現(xiàn)。當(dāng)MCU要讀溫度時,該引腳首先給TSic供電,大約65~85 ms后它將收到一個溫度數(shù)據(jù)包。這種開關(guān)TSic的方法有額外的好處,就像掉電模式,可以將靜態(tài)電流從通常的45μA減小到0。
TSic是一種混合信號IC,需要低噪聲供電。通過MCU的引腳供電易受MCU電源的數(shù)字噪聲的影響,因此要在MCU的供電引腳加一個RC濾波器,即圖4中的R1和C,C盡可能接近TSic V+和地。
在裝配時要特別注意安裝工藝會影響精度。SOP-8封裝適用于PCB自動組裝,但是回流焊工藝會影響已校準(zhǔn)的精度。為了用這種封裝實現(xiàn)高精度,IST公司提供組裝后的校準(zhǔn)。在小批量應(yīng)用中應(yīng)選用TO92封裝,使用冷連接工藝安裝。TO92封裝還可以裝在不銹鋼探頭中。
為TSic提供電源的MCU引腳要由一個強(qiáng)CMOS推挽驅(qū)動器來驅(qū)動,圖4中用P3.5為TSic供電。STC11L16XE是可以選擇端口工作模式的,可以將P3.5配置為強(qiáng)推挽輸出模式。經(jīng)實驗ZACwire線用普通的8051端口就可以。
3 軟件設(shè)計
3.1 怎樣讀包
測量起始位下降沿和上升沿之間的時間,該時間(Tstrobe)就是選通時間,其寬度為位寬度(bit window)的一半。再等待一個Tstrobe的時間,即在下一個下降沿,開始采樣ZACwire信號。因為每個位都以一個下降沿開始,所以每個位的采樣窗口都會復(fù)位。這意味著從起始位開始的比特流將不會發(fā)生誤差。
建議當(dāng)捕獲起始位時,ZACwire信號的采樣率至少為正常波特率的16倍。因為正常波特率是8 kHz,當(dāng)捕獲Tstrobe時要求最小128 kHz的采樣速率。
當(dāng)起始位的下降沿產(chǎn)生時,它引發(fā)MCU進(jìn)入一個計數(shù)循環(huán),遞增一個內(nèi)存位置,直到看見ZACwire信號的上升沿。該計數(shù)值就是Tstrobe。在獲得Tstrobe后,MCU就可以簡單地等待下面9個下降沿(8個用于數(shù)據(jù),1個用于奇偶校驗)。在每個下降沿之后,MCU等待Tstrobe期滿,然后采樣下一個位。
下面給出一個TSic 506的應(yīng)用例子,使用其他型號的傳感器時測量范圍和計算公式需要調(diào)整。
3.2 8051 C語言代碼
代碼使用查詢方式讀TSic數(shù)據(jù)。代碼中對于選通時間并沒有進(jìn)行精確測量,而是用延時函數(shù)估計。延時函數(shù)delay_10us是用邏輯分析儀對STC11L16XE標(biāo)定的,使用其他MCU需要重新標(biāo)定。
結(jié)語
Tsic溫度傳感器與其他單總線溫度傳感器相比,具有精度高、測量范圍寬、同等分辨率下轉(zhuǎn)換速度快、操作簡單、支持模擬輸出等優(yōu)點。Tsic與鉑傳感器相比,在校準(zhǔn)范圍內(nèi)精度可以更高。Tsic系列溫度傳感器IC具有極高的性價比,在需要高精度測溫的場合具有良好的應(yīng)
用前景。