(南通理工學院 電氣與能源工程學院, 江蘇 南通 226002)
溫度是表征物體冷熱程度的物理量,它可以通過物體隨溫度變化的某些特性(如電阻、電壓變化等特性)來間接測量,通過研究發現金屬鉑(Pt)的電阻值隨溫度變化而變化,并且具有很好的穩定性,利用鉑的這種物理特性制成的傳感器稱為鉑電阻溫度傳感器[1]。金屬鉑電阻溫度傳感器精度高、穩定性好,在工業測量方面有廣泛的應用。
通常所說的PT100是指鉑電阻溫度傳感器在0 ℃時對應的電阻值為100 Ω,電阻變化率為0.385 1 Ω/ ℃,PT100的分度表如表1所示。
根據電阻值和攝氏溫度的具體關系,可以推算出變化電阻對應的溫度值。由于PT100是中低溫區(-200~650 ℃)最常用的一種溫度傳感器,故環境溫度下具體的電阻取值關系為。
RPT=R0[1+AT+BT2+C(T-100)T3]
(1)
式(1)中R0為攝氏溫度在0 ℃時金屬鉑電阻溫度傳感器對應的阻值,T為實時環境溫度值,ABC分別表示系數值A=3.908*10-3;B=-5.775*10-7;C=-4.183*10-12,RPT為實時環境溫度T對應PT100的電阻值[2]。本文設計的溫度測控系統要求溫度范圍在(0 ℃~100 ℃)內變化,故根據上式可以得出溫度和阻值的變化,如圖1所示。
通過MATLAB驗證了鉑電阻溫度傳感器的阻值和環境溫度的變化呈線性關系,精度上也完全滿足PT100分度表中電阻變化率0.3851 Ω/ ℃。
該系統采用電橋對PT100傳感器輸出的電信號進行采樣,采用LM741設計差分電路消除線路阻抗引起的測量偏差,采用ADC0808逐次逼近法消除溫控系統的非線性誤差,采用STC高性能單片機作為主控芯片進行數據處理,最后在四位數碼管(數碼管位選和段選的動態掃描顯示,利用了發光管的余輝和人眼視覺暫留的功能)上實時顯示溫度數值和實現按鍵采用外部中斷技術實現對溫度上下限的設定功能[3],最后通過單片機的IO引腳輸出低電平使PNP三極管工作在飽和狀態,進而對固態繼電器進行控制(吸合),當模擬溫度一直上升達到設定的上限值,則通過單片機的IO引腳輸出高電平使PNP三極管工作在截止狀態,進而對固態繼電器進行控制(斷開),即實現對執行機構的控制。具體系統總體框圖如圖2所示。

表1 PT100分度表

圖1 PT100阻值與溫度變化關系

圖2 溫度測控系統框圖
該溫度測控系統的主控處理器選用的是宏晶科技的STC89C51單片機,這款單片機是采用8051內核的ISP在系統可編程芯片,最高工作時鐘頻率為80 MHz,片內含4K Bytes的可反復擦寫1 000次的Flash只讀程序存儲器,器件兼容標準MCS-51指令系統及80C51引腳結構,芯片內集成了通用8位中央處理器和ISP Flash存儲單元,具有在系統可編程(ISP)特性,配合PC端的控制程序即可將用戶的程序代碼下載進單片機內部,而且速度更快。STC89C51系列單片機是單時鐘/機器周期(1T)的兼容8051 內核單片機,是高速/ 低功耗的新一代8051 單片機,全新的流水線/精簡指令集結構,內部集成MAX810 專用復位電路。
系統采用三線PT100溫度傳感器作為溫度信號的采集器件,由于PT100鉑電阻傳感器的阻值是根據環境溫度的變化而變化,所以要想獲得溫度數據,就首先要獲取電阻值,然后將它轉成電信號進行輸出。那么,如何獲取到電信號的數值呢?我們設計了電橋,電橋是一種用電位比較法進行測量的儀器,被廣泛用來精確測量許多電學量和非電量。在自動控制測量中也是常用的儀器之一。根據PT100分度表可知環境溫度在0 ℃時,PT100電阻值為100 Ω,故在Proteus仿真軟件中選擇200 Ω的RV1模擬三線PT100鉑電阻溫度傳感器,RV2是一個校準電位器[4-6]。初始情況下調整RV1使RV1的阻值調整為100 Ω(即溫度數值顯示0 ℃),通過調整RV2使VA和VB兩點的電位相等,即使電橋達到平衡狀況。信號處理電路如圖3所示。

圖3 信號處理電路
隨著環境溫度上升,根據PT100的定義可知鉑電阻的阻值上升,則電橋失去平衡(VB的電位上升,因為VA的電位是環境溫度在0 ℃時,PT100電阻值為100 Ω的基準電壓,則VB和VA形成電位差)。利用這一特點可以采用差分放大電路實現電信號的運算放大作用,差分電路的電壓增益公式為。
(2)
由于當RV1取值為138.51 Ω時,環境溫度對應100 ℃。經過計算,差分電路中的反饋電阻R5取值為33 KΩ,同時輸出電壓VO為5.018 V。由于差分運算放大電路所使用的器件是LM741集成芯片,該芯片供電電源為+12 V和-12 V,則正飽和電壓和負飽和電壓分別為+12 V和-12 V,所以當RV1取值超出了138.51 Ω時(即PT100溫度傳感器隨著環境溫度的上升,鉑電阻的繼續上升),差分電路還工作在線性放大區,將繼續輸出高于5 V的電壓值,直至飽和電壓12 V。為了使差分電路輸出端輸出的電壓值最大值為5 V,采用了二極管VD2和VD3構成限幅電路[7-9],當RV1取值為100~138.51 Ω時,輸出的電壓值(0~5 V),供后續ADC模數轉換電路作為輸入信號。
ADC0808 是含8 位A/D 轉換器、8 路多路開關,以及與微型計算機兼容的控制邏輯的CMOS組件,其轉換方法為逐次逼近型。ADC0808的精度為 1/2LSB。在AD 轉換器內部有一個高阻抗斬波穩定比較器,一個帶模擬開關樹組的256 電阻分壓器,以及一個逐次通近型寄存器。8 路的模擬開關的通斷由地址鎖存器和譯碼器控制,可以在8 個通道中任意訪問一個單邊的模擬信號。該系統采用ADC0808用于將連續變化的模擬信號轉換為數字信號,它也是模擬系統與計算機之間的接口部件。ADC轉換類型包括計數型AD轉換器、雙積分型AD轉換器、逐次逼近AD轉換器,該系統采用逐次逼近AD轉換器,它工作原理類似天平稱重量時的嘗試法,逐步用砝碼的累積重量去逼近被稱物體。ADC0808是一個八位的模數轉換器,故它的分辨率Δ表達式為:
(3)
ADC0808模數轉換器工作的具體過程為:首先通過三根地址線ADDA-ADDC連接STC單片機的P1.4~P1.6,它決定輸入的通道。該系統前級已經通信號處理得到輸出電壓OUT,直接通過ADC0808的IN3輸入,因為當STC單片機P1.6~P1.4輸出二進制數100B給ADDC-ADDA對應的地址時,則表示從IN3通道輸入模擬量。其次,通過單片機P1.2引腳先后輸出0-1-0給鎖存和啟動信號ALE/START,則表示開始啟動AD轉換[10-12]。再次,通過P1.1引腳輸出低電平給EOC,則表示判斷轉換是否已經結束。最后通過單片機P1.0引腳輸出高電平給OE,則表示允許輸出數字量給單片機的P2口。ADC0808和STC89C51系統連接圖、ADC0808工作時序圖分別如圖4和圖5所示。

圖4 ADC0808和STC89C51系統連接圖

圖5 ADC0808工作時序圖
繼電器是一種功率開關器件,它不但能夠實現弱電控制強電的功能,同時還能夠具有隔離的作用。圖6中的二極管D1是為了防止自感高電壓對電路的損壞,起保護作用。由于單片機引腳的驅動能力有限,在實際應用中經常使用PNP型大功率晶體管控制電路。具體工作原理:當單片機P1.7輸出高電平時,發射極和集電極均截止,PNP三極管相當于開關斷開;當單片機P1.7輸出低電平時,發射極和集電極均飽和,PNP三極管相當于開關閉合,則繼電器線圈通電吸合,被控對象斷電停止工作[13-15]。該系統的被控對象在Proteus仿真軟件中用12 V蓄電池和燈泡進行模擬仿真,以達到實物真實效果。繼電器電路仿真效果如圖6所示。

圖6 繼電器電路仿真效果
該系統具有超出上限溫度時斷開繼電器、低于下限溫度時自動吸合繼電器功能。故設定了四個功能鍵,圖中的KEY1、KEY2主要是對環境溫度的上限和下限進行設定,初始在程序設定上限溫度90 ℃下限溫度30 ℃。當用戶需要對設備溫度的上下限值進行修改時,即可通過單片機的外部中斷技術實現對溫度上下限進行+和-操作。KEY3主要是通過FLAG標志位判斷中斷設定是否已經結束,如果已結束則通過此鍵返回顯示當前實時溫度。KEY4主要是功能切換鍵(設定上限溫度還是下限溫度的選擇功能)。
顯示電路主要是通過單片機的P0口輸出單片機處理后的數據,通過P3口的部分引腳對數碼管進行位選,以達到數碼管的動態顯示功能。根據PT100的電阻實時顯示設備當前溫度數值,還可以根據功能鍵切換顯示設備設定的上限數值和下限數值。
系統的軟件設計思想:首先,通過對單片機的P1口和內部定時器T0采用中斷技術產生CLK脈沖信號進行初始化配置,保證ADC0808模數轉換器能夠穩定的輸出數字量。其次,ADC0808模數轉換器的輸出口與單片機的P2口對應連接。單片機從P2口獲取ADC0808轉換的數字量進行理論計算得到實時溫度數值,并通過數碼管動態掃描顯示。再次,系統會根據用戶設定的上限和下限溫度數值與當前環境溫度數值進行比較,初始設定的設備上限溫度90 ℃下限溫度30 ℃,當環境溫度超過上限P1.7輸出低電平,低于下限P1.7輸出高電平[16]。如果用戶想調整設備溫度的上限和下限,可以通過外部中斷INT0和外部中斷INT1采用中斷技術實現遞增和遞減功能。KEY4按鍵為功能選擇鍵,可以切換上限還是下限,初始條件下默認是上限數值。流程圖中的FLAG標志位,主要是用來判斷是否有外部中斷產生,如果沒有FLAG為0繼續往下執行顯示程序,否則轉向執行中斷處理程序(因為中斷隨時可能發生,為了能夠在流程圖體現出中斷過程,所以用了FLAG標志位)。測溫控制系統流程圖如圖7所示。

圖7 測溫控制系統流程圖
本系統是基于Proteus仿真軟件進行在線構建溫度測控系統,Proteus軟件是英國Lab Center Electronics公司出版的EDA工具軟件,也可稱之為電子虛擬實驗室。它是目前比較好的仿真單片機及外圍器件的工具。雖然目前國內推廣剛起步,但已受到單片機愛好者、從事單片機教學的教師、致力于單片機開發應用的科技工作者們的青睞。正是由于這款仿真軟件在單片機開發中的優勢,所以本系統的調試都是建立在它的虛擬平臺之上的。
在實驗過程中,我們首先通過調節電橋上RV1的數值(模擬真實的PT100隨外界工作環境溫度變化時所引起的電阻值的相應變化)使電橋失去平衡,以此達到電信號的變化。最終在輸出端IO口外接的數碼管上顯示經單片機處理后相應的溫度數值(隨著電阻RV1變化模擬外界環境的溫度)。通過模擬設備設定溫度的上下限,當模擬輸出的溫度低于設定溫度的下限,可以通過單片機的P1.7引腳輸出低電平使PNP三極管工作在飽和狀態,進而對繼電器進行控制(吸合),當模擬溫度一直上升達到設定的上限值,則通過單片機的P1.7引腳輸出高電平使PNP三極管工作在截止狀態,進而對繼電器進行控制(斷開),即實現對被控對象的控制。經過整體聯調,溫度測控系統達到了系統預期的目的[17]。系統總體仿真效果圖如圖8所示。

圖8 系統總體仿真效果圖
本文結合目前工業生產過程中的溫度測控系統存在的主要問題,設計了基于PT100鉑金屬電阻作為傳感器的溫度測量和控制系統。經過對電橋和LM741構成的差分放大電路進行理論分析與合理設計,實現了對PT100鉑電阻傳感器的電信號進行采樣。經過對ADC0808采用逐次逼近法消除溫度測控系統的非線性誤差,提高了轉換精度的精準性[18]。經過STC高性能單片機的軟、硬件設計與多次調試,達到了溫度測控系統溫度實時顯示要求和按鍵操控靈敏度高的預期目標,最終實現了利用繼電器對被控對象的通斷進行控制。