智能多路溫度巡檢儀設計
摘要:為了解決現有溫度監控需要的儀表數量多,組網困難的問題,設計了一種智能多路溫度巡檢儀。使用STC15F2K60S2作為核心處理器,巡回檢測16路溫度傳感器。儀表具有多種類型輸入功能,可與多種類型傳感器、變送器配合使用。具有測量顯示、超限報警控制、數據采集記錄及RS 485通信功能,方便組成監控網絡,大大減少了測量儀表的數量。方案采用多項創新技術,經實際測試具有測控精確穩定和抗干擾能力強等優點。
本文引用地址:http://www.104case.com/article/201610/307640.htm0 引言
隨著計算機、微電子技術的迅猛發展,單片機由于其集成度高、功能強、體積小、抗干擾能力等優點廣泛應用于工業控制領域。測量儀器儀表也在發生著翻天覆地的變化,目前智能儀器儀表設計時無一不采用單片機。溫度測控在工業生產領域應用非常廣泛,而傳統的溫度檢測儀一般只能單點檢測且只有顯示功能。
在一些作業半徑大,測點分散的工業場合,就需要由一種多點巡回檢測,集中管理的測量儀表,能夠實現報警、遠傳、控制、數據記錄等功能,自動運行無需人為干預。針對這種需求,本文設計了一種智能多路溫度巡檢儀,采用Pt100鉑電阻作為溫度傳感器巡回檢測16路溫度,可設報警限值,具有報警信號常開常閉接點輸出,支持RS 485通信。儀表前面板具有數碼管、LED燈、按鍵人機接口,操作簡單,便于維護。
1 總體方案設計
系統方案如圖1所示。

以STC宏晶科技的STC15F2K60S2為主控芯片。該單片機具有以下特點:內部集成高精度RC時鐘,且從5~35MHz可選;內部集成復位電路,8級復位門檻電壓可選;內部集成E2PROM,用于保存用戶設置參數及標校參數;可編程時鐘輸出,對系統時鐘1~65 536級分頻輸出。其高速度、高集成度的特點非常適合本設計的需要。
在本系統中CPU主要是對溫度值進行巡回檢測、數據計算、數據顯示、同時檢測報警狀態、鍵盤輸入及通信數據并做出相應的處理。外圍有溫度傳感器信號處理電路、人機接口、通信接口、報警輸出及供電電源電路。其中溫度傳感器信號處理電路由轉換電路、濾波電路、多路模擬開關電路、放大電路、A/D轉換電路組成,是影響整臺儀器性能的關鍵。
2 Pt100測量原理
Pt100鉑電阻是一種電阻值隨環境溫度變化而改變的溫度傳感器,因其具有穩定性好、精度高、測溫范圍大等優點,而被廣泛應用。

測量儀表連接的溫度傳感器由鉑電阻和連接導線組成。在精確測量時連接導線的電阻對測量結果的影響不容忽視。工業上Pt100一般都采用三線制接法,在鉑電阻-端連接-根引線,另一端連接兩根引線,且三線長度、線徑、材質一致,這樣就保證了三線的電阻相等為r。這種方式通常與補償電路配套使用,以消除導線電阻引起測量誤差。本文所使用三線制電阻補償法其等效原理圖如圖2所示。其中Rt為Pt100電阻,Rv為分壓電阻,r為導線等效電阻,VR為Pt100基準電壓同時也是A/D轉換器的參考電壓。由歐姆定律可得基本關系式:

從式(2)可以看出:在已知RV和VR的情況下,只需測出V1和V2就可得出Pt100電阻Rt,而與導線電阻r沒有關系,從而消除了導線電阻的影響。
3 硬件電路設計
3.1 電源電路
本文設計基于TOP414的開關電源,TOP414是集脈沖信號控制電路和功率開關器件MOSEFT于一體的電源控制芯片。具有高集成度、簡單外圍電路等特點,能組成高效率無工頻變壓器的隔離式開關電源。由圖3可知,輸入電源通過TOP414開關和高頻變壓器變壓,再經過整流、電容濾波和電感平波,輸出直流電。高頻變壓器二次側有3個繞組,2路輸出功率,另一路為反饋回路提供電源。反饋回路從輸出端進行電壓取樣,通過光耦來控制脈沖控制開關的通斷,調節輸出功率。供電電源電路分別向系統電路提供5 V電源,向報警及通信電路提供12 V電源,且兩路輸出電源相互隔離。由于系統對12 V電源精度要求不高,所以反饋回路從5 V輸出端取樣,12 V電源通過線圈匝數比獲得。

3.2 Pt100信號選擇及放大電路
巡檢儀信號轉換電路由圖4中的17個信號檢測電路組成(由于版面所限,圖中僅繪出第1個、第2個和第17個),實現將16路Pt100溫度傳感器輸出的電阻信號轉換為電壓信號。其中第1路沒有外接Pt100傳感器,設置它的目的是為系統提供零電壓和參考電壓,用于彌補運算放大器放大倍數的誤差,余下16個電路的原理完全一致。

每路產生2個電壓信號分別由2個16×1多路切換器CD4067實現分時選通,2個CD4067的公共端和零電壓、參考電壓再由模擬開關CD4051選通。8位數據鎖存器74LS273用于I/O口的擴展,控制多路開關的地址碼。
電壓信號放大采用低零漂移的運算放大器OP07,為了適應不同的輸入信號,OP07和模擬開關CD4051構成一個可編程增益放大器。增益控制由CD4051模擬開關和電阻構成,通過對CD4051地址碼的控制實現對輸入信號不同的放大倍數。為了有效地抑制共模干擾運放采用雙電源供電,-5 V發生電路參見圖5。

3.3 A/D數據轉換電路
TLC7135是流行的雙積分A/D轉換器,其具有4位半的精度(相當于14位A/D)、自動校零、自動極性輸出、單基準電壓、動態字位掃描BCD碼輸出、抗干擾力強,穩定性好等特點。美中不足的是其轉換精度依賴于積分時間,因此轉換速度較低。盡管現在主流的是逐次逼近型A/D轉換器,但高精度(>12位)的逐次逼近型A/D價格很高。TLC7135憑借其價格低精度高的優勢,現今仍為廣大設計者所青睞。TCL7135使用資料較多,其工作原理在此就不做過多講述。
TLC7135同樣采用雙電源供電,為最大限度利用單片機內部資源,硬件上利用STC15F2K60S2可編程的時鐘輸出去推動二極管來產生負電壓。省去了價格較高的專用IC。工作原理如圖5所示,單片機8 MHz系統時鐘經64分頻在P3.4腳輸出125 kHz時鐘信號,經C22反相推動二極管D6,D7產生負電壓。由于二極管壓降的緣故,實際得到的負壓約為-4.3 V。由于本系統中的信號都是單級電壓對負電壓值要求并不十分嚴格,此負壓方案產生的負壓是完全可以勝任的。
單片機和TLC7135的接口有并行和串行兩種方式。本設計單片機對TLC7135采用串行數據采集,該方式結構簡單、占用單片機I/O資源少。STC15F2K60S2的P3.2(INT0)引腳接TLC7135的BUSY引腳,用來接收A/D轉換狀態輸出。單片機的P3.0引腳接TLC7135的RUN/HOLD引腳,用來啟動A/D轉換。單片機的P3.1腳接TLC7135的POLARITTY引腳,用來判斷輸入電壓極性。TLC7135的時鐘同樣利用STC15F2K60S2的可編程時鐘輸出功能獲得,8 MHz系統時鐘經32分頻在P3.5腳輸出250 kHz的脈沖信號,接至ICL7135的時鐘輸入管腳。

由圖6可知,TLC7135的A/D轉換周期為40 002個時鐘周期。串行接法是通過計脈沖數的方法來獲得測量結果的,通過設置單片機定時計數器時鐘與TLC7135時鐘頻率相同,設置INT0外部中斷為邊沿觸發,進入被測信號積分階段時,TLC7135的BUSY引腳變為高電平,觸發單片機中斷,定時計數器立即啟動計數,在A/D轉換的基準電壓反積分階段結束時,TLC7135的BUSY端變為低電平,定時計數器停止計數,讀出定時計數器的計數結果,即為被測電壓積分階段和基準電壓反積分階段所需的時鐘脈沖數的總和。由于被測電壓積分階段的時間是固定的,為10 000個時鐘脈沖,用定時計數器的計數結果減去輸入積分階段的計數值10 000,即得到基準電壓反積分階段的計數值N。反積分階段的計數脈沖數與輸入電壓成線性關系,滿量程時對應的有效計數脈沖為20 000,可以得以下公式:
N=VIN/VMAX×20 000 (3)
式中:VMAX為TLC7135的滿量程電壓,由于TLC7135滿量程為2倍參考電壓即VMAX=2VREF,基準電壓反積分階段的脈沖數和輸入電壓滿足關系式:
N=VIN/VREF×10 000 (4)
經過簡單變換可得輸入電壓的計算公式:
VIN=N/10 000×VREF (5)
式(5)中VREF是利用TL431產生的2.5 V基準電壓,單片機計數得到N后,就可計算出輸入電壓。
3.4 人機接口電路
在儀表的前面板上設計有數碼管,LED燈,按鍵,用于數據顯示、狀態指示及參數設置。為了盡量減少單片機I/O資源開銷,采用了動態刷新顯示方法。單片機控制點亮一個數碼管,然后關掉,再點亮第二個,4個數碼管周而復始地輪流點亮,一個輪流周期每個數碼管的點亮時間是極為短暫的,由于人的視覺停留及發光管的余輝效應,盡管實際上各個數碼管并非同時點亮,但只要刷新的速度足夠快,給人的視覺就是一組穩定的顯示數據,不會有閃爍感。

如圖7所示,4位數碼管各有8個顯示段,每位數碼管相同的段連在一起,由P0端口統一進行段驅動,而各個數碼管的共陽極則由另一個I/O進行驅動。P2.4用于驅動LED燈公共端,P2.5用于分時檢測按鍵輸入。驅動程序的設計思路是,P2.0-3端口控制三極管Q1,Q2,Q3,Q4輪流打開。例如P2.0輸出低電平,三極管Q1導通,數碼管DS1點亮,P0端口控制顯示相應的數字,LED1狀態如需點亮,P2.4輸出低電平,否則輸出高電平。同時檢測P2.5端口輸入,如為高電平說明按鍵S1被按下。為了嚴格地保證輪流周期和顯示時間,可以在單片機定時器中斷服務程序中進行動態顯示和檢測。
3.5 報警輸出及通信電路設計
為了避免外聯設備的浪涌沖擊和噪聲干擾,報警輸出和通信電路與系統電路完全隔離,接地以及電路之間沒有任何物理上的傳導連接。繼電器K1、K2用于某路溫度超過設定的報警值時,輸出機械接點信號,如可以連接聲、光報警裝置。RS 485通信接口可以將本儀表納入到總線拓撲的RS 485網絡中,以提高測量網絡的集中監控能力。為了提高RS 485通信速度本設計采用了接收和發送自動轉換的零延時電路。如圖8所示,若發送為低電平,DE/RE為高電平,發送允許,此時由于D管腳接地,MAX1487芯片的輸出端A、B產生表示低電平的差分信號。若發送高電平,DE/RE為低電平,MAX1487芯片的A、B端處于高阻態。此時靠電阻R32和R35的下拉和上拉作用,使總線上產生表示高電平的差分信號。由以上分析看出,在半雙工傳送數據的方式下,程序不必控制DE/RE,硬件完成接收和發送的轉換。

4 軟件設計
儀表整機軟件主要由3部分組成,數據采集與溫度計算程序、人機服務程序、通信程序。為了保證各子程序協調運行,需要通過中斷機制實現。數據采集與溫度計算程序在主循環里運行,人機服務在定時中斷里完成,通信任務在串行通信中斷服務程序中完成。
數據采集與溫度計算程序要對16路溫度進行循環采集,通過單片機P0端口對多路開關的地址引腳控制而實現通道選擇。一共用了17路數據通道,第一路為零電壓、參考電壓,2~17路為16路溫度電壓信號。每次采集數據都要經過通道選擇,A/D轉換處理,溫度計算等操作。
人機服務程序是實現儀器的顯示及人工操作,由于數碼管和LED指示燈采用動態刷新顯示,為了保證動態刷新周期,人機服務程序安排在定時器中斷里運行。
RS 485通信訪問方式為主從方式,本儀表處于從機地位。儀表收到主機發來的數據幀后,根據MODBUS RTU通信協議將主機要求的信息發送到RS 485網絡中,主機可以讀取16路溫度、報警設定數據,以及重新設置相關參數。
5 結語
本文基于STC15F2K60S2實現了多路溫度傳感器測量,系統設計緊湊、成本低、功能強大,且適用范圍非常廣泛。每個通道通過參數設置及變換電路稍加更改即可接受不同的輸入類型,如熱電偶、熱電阻、線性電壓、線性電流、線性電阻,可與各種傳感器、變送器配合使用,實現對溫度,壓力、液位等物理量測量,為工業系統集成提供了一個很好的硬件平臺。
評論