- 溫度傳感器工作原理及其應(yīng)用
- 學(xué)習(xí)傳感器前置放大電路
- 從傳感器前置放大電路輸出的信號(hào)
使用溫度傳感器為 PT100,這是一種穩(wěn)定性和線性都比較好的鉑絲熱電阻傳感器,可以工作在 -200℃ 至 650℃ 的范圍.本電路選擇其工作在 -19℃ 至 500℃ 范圍.
整個(gè)電路分為兩部分,一是傳感器前置放大電路,一是單片機(jī) A/D 轉(zhuǎn)換和顯示,控制,軟件非線性校正等部分.
前置放大部分原理圖如下:
工作原理:
傳感器的接入非常簡單,從系統(tǒng)的 5V 供電端僅僅通過一支 3K92 的電阻就連接到 PT100 了.這種接法通常會(huì)引起嚴(yán)重的非線性問題,但是.由于有了單片機(jī)的軟件校正作為后盾,因此就簡化了傳感器的接入方式.
按照 PT100 的參數(shù),其在 0℃ 到 500℃ 的區(qū)間內(nèi),電阻值為 100 至 280.9Ω,我們按照其串聯(lián)分壓的揭發(fā),使用公式:Vcc/(PT100+3K92)* PT100 = 輸出電壓(mV),可以計(jì)算出其在整百℃時(shí)的輸出電壓,見下面的表格:
溫度 ℃ |
PT100 阻值 Ω |
傳感兩端電壓 mV |
0 |
100.00 |
124.38 |
1 |
100.39 |
124.8 |
50 |
119.40 |
147.79 |
100 |
138.51 |
170.64 |
150 |
157.33 |
192.93 |
200 |
175.86 |
214.68 |
250 |
194.10 |
235.90 |
300 |
212.05 |
256.59 |
350 |
229.72 |
276.79 |
400 |
247.09 |
296.48 |
450 |
264.18 |
315.69 |
500 |
280.98 |
334.42 |
單片機(jī)的 10 位 A/D 在滿度量程下,最大顯示為 1023 字,為了得到 PT100 傳感器輸出電壓在顯示 500 字時(shí)的單片機(jī) A/D 轉(zhuǎn)換輸入電壓,必須對(duì)傳感器的原始輸出電壓進(jìn)行放大,計(jì)算公式為:(500/1023 * Vcc)/傳感器兩端電壓( mV/℃ ) ,(Vcc=系統(tǒng)供電=5V),可以得到放大倍數(shù)為 10.466 。
關(guān)于放大倍數(shù)的說明:有熱心的用戶朋友詢問,按照 (500/1023 * Vcc)/傳感器兩端電壓不能得到 10.466 的結(jié)果,而是得到 11.635的結(jié)果。實(shí)際上,500 個(gè)字的理想值是無法靠電路本身自然得到的,自然得到的數(shù)字僅僅為 450 個(gè)字,因此,公式中的 500℃ 在實(shí)際計(jì)算時(shí)的取值是 450 而不是 500 。450/1023*5/(0.33442-0.12438)≈10.47 。其實(shí),計(jì)算的方法有多種,關(guān)鍵是要按照傳感器的 mV/℃ 為依據(jù)而不是以被測溫度值為依據(jù),我們看看加上非線性校正系數(shù):10.47*1.1117=11.639499 ,這樣,熱心朋友的計(jì)算結(jié)果就吻合了。
運(yùn)算放大器分為兩級(jí),后級(jí)固定放大 5 倍(原理圖中 12K/3K+1=5),前級(jí)放大為:10.465922/5=2.0931844 倍,為了防止調(diào)整時(shí)的元器件及其他偏差,使用了一只精密微調(diào)電位器對(duì)放大倍數(shù)進(jìn)行細(xì)調(diào),可以保證比較準(zhǔn)確地調(diào)整到所需要的放大倍數(shù)(原理圖中 10K/(8K2+Rw)+1)。
通常,在溫度測量電路里,都會(huì)有一個(gè)“調(diào)零”和另一個(gè)“調(diào)滿度”電位器,以方便調(diào)整傳感器在“零度”及“滿度”時(shí)的正確顯示問題。本電路沒有采用兩只電位器是因?yàn)橹灰?ldquo;零度”調(diào)整準(zhǔn)確了,就可以保證整個(gè)工作范圍的正確顯示,當(dāng)然也包括滿度時(shí)的最大顯示問題了。
那么,電路中對(duì)“零度”是如何處理的呢?它是由單片機(jī)程序中把這個(gè)“零度”數(shù)字直接減掉就是了,在整個(gè)工作范圍內(nèi),程序都會(huì)自動(dòng)減掉“零度”值之后再作為有效數(shù)值來使用。
當(dāng)供電電壓發(fā)生偏差后,是否會(huì)引起傳感器輸入的變化進(jìn)而影響準(zhǔn)確度呢?供電變化后,必然引起流過傳感器的電流發(fā)生變化,也就會(huì)使傳感器輸出電壓發(fā)生變化??墒?,以此同時(shí),單片機(jī)的供電也是在同步地接受到這種供電變化的,當(dāng)單片機(jī)的 A/D 基準(zhǔn)使用供電電壓時(shí),就意味著測量基準(zhǔn)也在同步同方向發(fā)生變化,因此,只要參數(shù)選擇得當(dāng),系統(tǒng)供電的變化在 20% 之內(nèi)時(shí),就不會(huì)影響測量的準(zhǔn)確度。(通常單片機(jī)系統(tǒng)并不允許供電有過大的變化,這不僅僅是在溫度測量電路中的要求。)
[page]
后級(jí)單片機(jī)電路的原理圖如下: 從傳感器前置放大電路輸出的信號(hào),就送入到 HT46R23 的 A/D 轉(zhuǎn)換輸入端口(PB0/AN0),由單片機(jī)去進(jìn)行各種必需的處理。首先是進(jìn)行軟件非線性校正,把輸入信號(hào)按照不同的溫度值劃分為不同段,再根據(jù)其所在的段分別乘以不同的補(bǔ)償系數(shù),令其與理論值盡量接近,經(jīng)過非線性校正的數(shù)字,才被送去進(jìn)行顯示,比較用戶設(shè)定的控制值等等。
各段的非線性補(bǔ)償系數(shù)見下列表格(僅僅列出主要段的數(shù)據(jù),非全部表格內(nèi)容):
傳感電壓
傳感電壓 |
mV/℃ |
內(nèi)部AD讀數(shù) |
校正系數(shù) |
124.3781 |
供電電阻=3K92±1%,供電電壓=5.000V±1% |
||
124.8450 |
0.4670 |
1.00 |
1.0000 |
147.7942 |
0.4683 |
50.14 |
0.9972 |
170.6414 |
0.4626 |
99.06 |
1.0095 |
192.9326 |
0.4570 |
146.80 |
1.0218 |
214.6802 |
0.4515 |
193.36 |
1.0343 |
235.8961 |
0.4461 |
238.79 |
1.0469 |
256.5918 |
0.4407 |
283.11 |
1.0597 |
276.7898 |
0.4355 |
326.36 |
1.0724 |
296.4779 |
0.4302 |
368.52 |
1.0854 |
315.6891 |
0.4251 |
409.65 |
1.0985 |
334.4220 |
0.4201 |
449.76 |
1.1117 |
本電路還有一個(gè)特點(diǎn),就是用戶可以在工作范圍內(nèi),任意設(shè)定 3 個(gè)超限控制值。當(dāng)測量顯示值大于設(shè)定值的時(shí)候,對(duì)應(yīng)的控制端口就會(huì)輸出高電平。利用這個(gè)高電平信號(hào),再外接一級(jí)三極管驅(qū)動(dòng)繼電器的電路,就可以實(shí)現(xiàn)自動(dòng)控制。在某一個(gè)控制端口輸出高電平的同時(shí),與之串聯(lián)的 LED 發(fā)光管會(huì)同時(shí)點(diǎn)亮,以便提示使用者是哪一個(gè)設(shè)定值在輸出控制信號(hào)。
電路中的 24C02 是電存儲(chǔ)器,可以把使用者設(shè)定的控制值可靠地保存起來,即使掉電也不會(huì)丟失數(shù)據(jù)。
電路圖中還有 3 只按鍵,它們分別是“設(shè)定”、“加置數(shù)”和“減置數(shù)”操作按鍵,用于使用者進(jìn)行超限值的設(shè)置。使用方法如下:
按動(dòng)一下設(shè)定鍵,屏幕顯示“1--”,表示現(xiàn)在進(jìn)入第一個(gè)超限值的設(shè)置,三秒后屏幕自動(dòng)跳轉(zhuǎn)到顯示“***”并閃爍(*** 代表原來電存儲(chǔ)器里儲(chǔ)存的超限數(shù)值),然后,按壓加數(shù)鍵(或減數(shù)鍵),屏幕上的最低位的數(shù)字就會(huì)加一(或減一),如果按住按鍵三秒以上不放開,屏幕上的前兩位數(shù)字就會(huì)快速進(jìn)行加數(shù)(或減數(shù))。把屏幕上的數(shù)字調(diào)整到所需要的數(shù)字后,這個(gè)超限值就設(shè)置完成了。
接著,再按動(dòng)一下設(shè)定鍵屏幕顯示“2--”,表示現(xiàn)在進(jìn)入第二個(gè)超限值的設(shè)置,三秒后屏幕自動(dòng)跳轉(zhuǎn)到顯示“***”并閃爍....,接下來的操作與第一個(gè)超限值的操作完全一樣。
第三個(gè)超限值的設(shè)置與上面兩個(gè)完全一樣。
當(dāng)設(shè)置好 3 個(gè)超限值之后,還必須最后按動(dòng)一下設(shè)定鍵,退出設(shè)定狀態(tài)而返回正常工作狀態(tài)。如果忘記了這最后一次按動(dòng)退出的操作,程序就會(huì)等待 10 秒之后,自動(dòng)返回正常工作狀態(tài)。
簡易調(diào)試方法:
可以使用 100Ω 的電阻來模擬 PT100 在 0℃ 的阻值,接入傳感器輸入端,看看顯示是否 =000,如果不對(duì),可以調(diào)整微調(diào)電位器來達(dá)到;然后用一只 281Ω 的電阻來模擬 PT100 在 500℃ 時(shí)傳感器的電阻值,顯示應(yīng)該在 500 字±1字;最后,使用一只 194Ω 的電阻來代替 250℃ 傳感器電阻輸入,應(yīng)該顯示 250±1 字.如果經(jīng)過上面調(diào)試沒有問題,就可以接入真正的 PT100 傳感器投入使用了.(真正的傳感器也有誤差,可以微調(diào)一下前置放大的電位器來校正它。)
在實(shí)際工作中,要求電路的供電電壓為 5V±5%.如果測量顯示值大于某一個(gè)超限值,對(duì)應(yīng)的控制端口就會(huì)立即輸出高電平。
如果傳感器發(fā)生開路故障,顯示就會(huì)出現(xiàn)"HHH",如果傳感器及其引線發(fā)生了短路,顯示就會(huì)立即出現(xiàn)"LLL".為了防止傳感器出現(xiàn)開路或者短路之后可能會(huì)引起的不良后果,這時(shí)候,3 個(gè)控制輸出端口都會(huì)優(yōu)先關(guān)閉。