智能多路溫度巡檢儀設(shè)計(jì)
摘要:為了解決現(xiàn)有溫度監(jiān)控需要的儀表數(shù)量多,組網(wǎng)困難的問題,設(shè)計(jì)了一種智能多路溫度巡檢儀。使用STC15F2K60S2作為核心處理器,巡回檢測(cè)16路溫度傳感器。儀表具有多種類型輸入功能,可與多種類型傳感器、變送器配合使用。具有測(cè)量顯示、超限報(bào)警控制、數(shù)據(jù)采集記錄及RS 485通信功能,方便組成監(jiān)控網(wǎng)絡(luò),大大減少了測(cè)量?jī)x表的數(shù)量。方案采用多項(xiàng)創(chuàng)新技術(shù),經(jīng)實(shí)際測(cè)試具有測(cè)控精確穩(wěn)定和抗干擾能力強(qiáng)等優(yōu)點(diǎn)。
本文引用地址:http://2s4d.com/article/201610/307640.htm0 引言
隨著計(jì)算機(jī)、微電子技術(shù)的迅猛發(fā)展,單片機(jī)由于其集成度高、功能強(qiáng)、體積小、抗干擾能力等優(yōu)點(diǎn)廣泛應(yīng)用于工業(yè)控制領(lǐng)域。測(cè)量?jī)x器儀表也在發(fā)生著翻天覆地的變化,目前智能儀器儀表設(shè)計(jì)時(shí)無一不采用單片機(jī)。溫度測(cè)控在工業(yè)生產(chǎn)領(lǐng)域應(yīng)用非常廣泛,而傳統(tǒng)的溫度檢測(cè)儀一般只能單點(diǎn)檢測(cè)且只有顯示功能。
在一些作業(yè)半徑大,測(cè)點(diǎn)分散的工業(yè)場(chǎng)合,就需要由一種多點(diǎn)巡回檢測(cè),集中管理的測(cè)量?jī)x表,能夠?qū)崿F(xiàn)報(bào)警、遠(yuǎn)傳、控制、數(shù)據(jù)記錄等功能,自動(dòng)運(yùn)行無需人為干預(yù)。針對(duì)這種需求,本文設(shè)計(jì)了一種智能多路溫度巡檢儀,采用Pt100鉑電阻作為溫度傳感器巡回檢測(cè)16路溫度,可設(shè)報(bào)警限值,具有報(bào)警信號(hào)常開常閉接點(diǎn)輸出,支持RS 485通信。儀表前面板具有數(shù)碼管、LED燈、按鍵人機(jī)接口,操作簡(jiǎn)單,便于維護(hù)。
1 總體方案設(shè)計(jì)
系統(tǒng)方案如圖1所示。
以STC宏晶科技的STC15F2K60S2為主控芯片。該單片機(jī)具有以下特點(diǎn):內(nèi)部集成高精度RC時(shí)鐘,且從5~35MHz可選;內(nèi)部集成復(fù)位電路,8級(jí)復(fù)位門檻電壓可選;內(nèi)部集成E2PROM,用于保存用戶設(shè)置參數(shù)及標(biāo)校參數(shù);可編程時(shí)鐘輸出,對(duì)系統(tǒng)時(shí)鐘1~65 536級(jí)分頻輸出。其高速度、高集成度的特點(diǎn)非常適合本設(shè)計(jì)的需要。
在本系統(tǒng)中CPU主要是對(duì)溫度值進(jìn)行巡回檢測(cè)、數(shù)據(jù)計(jì)算、數(shù)據(jù)顯示、同時(shí)檢測(cè)報(bào)警狀態(tài)、鍵盤輸入及通信數(shù)據(jù)并做出相應(yīng)的處理。外圍有溫度傳感器信號(hào)處理電路、人機(jī)接口、通信接口、報(bào)警輸出及供電電源電路。其中溫度傳感器信號(hào)處理電路由轉(zhuǎn)換電路、濾波電路、多路模擬開關(guān)電路、放大電路、A/D轉(zhuǎn)換電路組成,是影響整臺(tái)儀器性能的關(guān)鍵。
2 Pt100測(cè)量原理
Pt100鉑電阻是一種電阻值隨環(huán)境溫度變化而改變的溫度傳感器,因其具有穩(wěn)定性好、精度高、測(cè)溫范圍大等優(yōu)點(diǎn),而被廣泛應(yīng)用。
測(cè)量?jī)x表連接的溫度傳感器由鉑電阻和連接導(dǎo)線組成。在精確測(cè)量時(shí)連接導(dǎo)線的電阻對(duì)測(cè)量結(jié)果的影響不容忽視。工業(yè)上Pt100一般都采用三線制接法,在鉑電阻-端連接-根引線,另一端連接兩根引線,且三線長(zhǎng)度、線徑、材質(zhì)一致,這樣就保證了三線的電阻相等為r。這種方式通常與補(bǔ)償電路配套使用,以消除導(dǎo)線電阻引起測(cè)量誤差。本文所使用三線制電阻補(bǔ)償法其等效原理圖如圖2所示。其中Rt為Pt100電阻,Rv為分壓電阻,r為導(dǎo)線等效電阻,VR為Pt100基準(zhǔn)電壓同時(shí)也是A/D轉(zhuǎn)換器的參考電壓。由歐姆定律可得基本關(guān)系式:
從式(2)可以看出:在已知RV和VR的情況下,只需測(cè)出V1和V2就可得出Pt100電阻Rt,而與導(dǎo)線電阻r沒有關(guān)系,從而消除了導(dǎo)線電阻的影響。
3 硬件電路設(shè)計(jì)
3.1 電源電路
本文設(shè)計(jì)基于TOP414的開關(guān)電源,TOP414是集脈沖信號(hào)控制電路和功率開關(guān)器件MOSEFT于一體的電源控制芯片。具有高集成度、簡(jiǎn)單外圍電路等特點(diǎn),能組成高效率無工頻變壓器的隔離式開關(guān)電源。由圖3可知,輸入電源通過TOP414開關(guān)和高頻變壓器變壓,再經(jīng)過整流、電容濾波和電感平波,輸出直流電。高頻變壓器二次側(cè)有3個(gè)繞組,2路輸出功率,另一路為反饋回路提供電源。反饋回路從輸出端進(jìn)行電壓取樣,通過光耦來控制脈沖控制開關(guān)的通斷,調(diào)節(jié)輸出功率。供電電源電路分別向系統(tǒng)電路提供5 V電源,向報(bào)警及通信電路提供12 V電源,且兩路輸出電源相互隔離。由于系統(tǒng)對(duì)12 V電源精度要求不高,所以反饋回路從5 V輸出端取樣,12 V電源通過線圈匝數(shù)比獲得。
3.2 Pt100信號(hào)選擇及放大電路
巡檢儀信號(hào)轉(zhuǎn)換電路由圖4中的17個(gè)信號(hào)檢測(cè)電路組成(由于版面所限,圖中僅繪出第1個(gè)、第2個(gè)和第17個(gè)),實(shí)現(xiàn)將16路Pt100溫度傳感器輸出的電阻信號(hào)轉(zhuǎn)換為電壓信號(hào)。其中第1路沒有外接Pt100傳感器,設(shè)置它的目的是為系統(tǒng)提供零電壓和參考電壓,用于彌補(bǔ)運(yùn)算放大器放大倍數(shù)的誤差,余下16個(gè)電路的原理完全一致。
每路產(chǎn)生2個(gè)電壓信號(hào)分別由2個(gè)16×1多路切換器CD4067實(shí)現(xiàn)分時(shí)選通,2個(gè)CD4067的公共端和零電壓、參考電壓再由模擬開關(guān)CD4051選通。8位數(shù)據(jù)鎖存器74LS273用于I/O口的擴(kuò)展,控制多路開關(guān)的地址碼。
電壓信號(hào)放大采用低零漂移的運(yùn)算放大器OP07,為了適應(yīng)不同的輸入信號(hào),OP07和模擬開關(guān)CD4051構(gòu)成一個(gè)可編程增益放大器。增益控制由CD4051模擬開關(guān)和電阻構(gòu)成,通過對(duì)CD4051地址碼的控制實(shí)現(xiàn)對(duì)輸入信號(hào)不同的放大倍數(shù)。為了有效地抑制共模干擾運(yùn)放采用雙電源供電,-5 V發(fā)生電路參見圖5。
3.3 A/D數(shù)據(jù)轉(zhuǎn)換電路
TLC7135是流行的雙積分A/D轉(zhuǎn)換器,其具有4位半的精度(相當(dāng)于14位A/D)、自動(dòng)校零、自動(dòng)極性輸出、單基準(zhǔn)電壓、動(dòng)態(tài)字位掃描BCD碼輸出、抗干擾力強(qiáng),穩(wěn)定性好等特點(diǎn)。美中不足的是其轉(zhuǎn)換精度依賴于積分時(shí)間,因此轉(zhuǎn)換速度較低。盡管現(xiàn)在主流的是逐次逼近型A/D轉(zhuǎn)換器,但高精度(>12位)的逐次逼近型A/D價(jià)格很高。TLC7135憑借其價(jià)格低精度高的優(yōu)勢(shì),現(xiàn)今仍為廣大設(shè)計(jì)者所青睞。TCL7135使用資料較多,其工作原理在此就不做過多講述。
TLC7135同樣采用雙電源供電,為最大限度利用單片機(jī)內(nèi)部資源,硬件上利用STC15F2K60S2可編程的時(shí)鐘輸出去推動(dòng)二極管來產(chǎn)生負(fù)電壓。省去了價(jià)格較高的專用IC。工作原理如圖5所示,單片機(jī)8 MHz系統(tǒng)時(shí)鐘經(jīng)64分頻在P3.4腳輸出125 kHz時(shí)鐘信號(hào),經(jīng)C22反相推動(dòng)二極管D6,D7產(chǎn)生負(fù)電壓。由于二極管壓降的緣故,實(shí)際得到的負(fù)壓約為-4.3 V。由于本系統(tǒng)中的信號(hào)都是單級(jí)電壓對(duì)負(fù)電壓值要求并不十分嚴(yán)格,此負(fù)壓方案產(chǎn)生的負(fù)壓是完全可以勝任的。
單片機(jī)和TLC7135的接口有并行和串行兩種方式。本設(shè)計(jì)單片機(jī)對(duì)TLC7135采用串行數(shù)據(jù)采集,該方式結(jié)構(gòu)簡(jiǎn)單、占用單片機(jī)I/O資源少。STC15F2K60S2的P3.2(INT0)引腳接TLC7135的BUSY引腳,用來接收A/D轉(zhuǎn)換狀態(tài)輸出。單片機(jī)的P3.0引腳接TLC7135的RUN/HOLD引腳,用來啟動(dòng)A/D轉(zhuǎn)換。單片機(jī)的P3.1腳接TLC7135的POLARITTY引腳,用來判斷輸入電壓極性。TLC7135的時(shí)鐘同樣利用STC15F2K60S2的可編程時(shí)鐘輸出功能獲得,8 MHz系統(tǒng)時(shí)鐘經(jīng)32分頻在P3.5腳輸出250 kHz的脈沖信號(hào),接至ICL7135的時(shí)鐘輸入管腳。
由圖6可知,TLC7135的A/D轉(zhuǎn)換周期為40 002個(gè)時(shí)鐘周期。串行接法是通過計(jì)脈沖數(shù)的方法來獲得測(cè)量結(jié)果的,通過設(shè)置單片機(jī)定時(shí)計(jì)數(shù)器時(shí)鐘與TLC7135時(shí)鐘頻率相同,設(shè)置INT0外部中斷為邊沿觸發(fā),進(jìn)入被測(cè)信號(hào)積分階段時(shí),TLC7135的BUSY引腳變?yōu)楦唠娖?,觸發(fā)單片機(jī)中斷,定時(shí)計(jì)數(shù)器立即啟動(dòng)計(jì)數(shù),在A/D轉(zhuǎn)換的基準(zhǔn)電壓反積分階段結(jié)束時(shí),TLC7135的BUSY端變?yōu)榈碗娖?,定時(shí)計(jì)數(shù)器停止計(jì)數(shù),讀出定時(shí)計(jì)數(shù)器的計(jì)數(shù)結(jié)果,即為被測(cè)電壓積分階段和基準(zhǔn)電壓反積分階段所需的時(shí)鐘脈沖數(shù)的總和。由于被測(cè)電壓積分階段的時(shí)間是固定的,為10 000個(gè)時(shí)鐘脈沖,用定時(shí)計(jì)數(shù)器的計(jì)數(shù)結(jié)果減去輸入積分階段的計(jì)數(shù)值10 000,即得到基準(zhǔn)電壓反積分階段的計(jì)數(shù)值N。反積分階段的計(jì)數(shù)脈沖數(shù)與輸入電壓成線性關(guān)系,滿量程時(shí)對(duì)應(yīng)的有效計(jì)數(shù)脈沖為20 000,可以得以下公式:
N=VIN/VMAX×20 000 (3)
式中:VMAX為TLC7135的滿量程電壓,由于TLC7135滿量程為2倍參考電壓即VMAX=2VREF,基準(zhǔn)電壓反積分階段的脈沖數(shù)和輸入電壓滿足關(guān)系式:
N=VIN/VREF×10 000 (4)
經(jīng)過簡(jiǎn)單變換可得輸入電壓的計(jì)算公式:
VIN=N/10 000×VREF (5)
式(5)中VREF是利用TL431產(chǎn)生的2.5 V基準(zhǔn)電壓,單片機(jī)計(jì)數(shù)得到N后,就可計(jì)算出輸入電壓。
3.4 人機(jī)接口電路
在儀表的前面板上設(shè)計(jì)有數(shù)碼管,LED燈,按鍵,用于數(shù)據(jù)顯示、狀態(tài)指示及參數(shù)設(shè)置。為了盡量減少單片機(jī)I/O資源開銷,采用了動(dòng)態(tài)刷新顯示方法。單片機(jī)控制點(diǎn)亮一個(gè)數(shù)碼管,然后關(guān)掉,再點(diǎn)亮第二個(gè),4個(gè)數(shù)碼管周而復(fù)始地輪流點(diǎn)亮,一個(gè)輪流周期每個(gè)數(shù)碼管的點(diǎn)亮?xí)r間是極為短暫的,由于人的視覺停留及發(fā)光管的余輝效應(yīng),盡管實(shí)際上各個(gè)數(shù)碼管并非同時(shí)點(diǎn)亮,但只要刷新的速度足夠快,給人的視覺就是一組穩(wěn)定的顯示數(shù)據(jù),不會(huì)有閃爍感。
如圖7所示,4位數(shù)碼管各有8個(gè)顯示段,每位數(shù)碼管相同的段連在一起,由P0端口統(tǒng)一進(jìn)行段驅(qū)動(dòng),而各個(gè)數(shù)碼管的共陽極則由另一個(gè)I/O進(jìn)行驅(qū)動(dòng)。P2.4用于驅(qū)動(dòng)LED燈公共端,P2.5用于分時(shí)檢測(cè)按鍵輸入。驅(qū)動(dòng)程序的設(shè)計(jì)思路是,P2.0-3端口控制三極管Q1,Q2,Q3,Q4輪流打開。例如P2.0輸出低電平,三極管Q1導(dǎo)通,數(shù)碼管DS1點(diǎn)亮,P0端口控制顯示相應(yīng)的數(shù)字,LED1狀態(tài)如需點(diǎn)亮,P2.4輸出低電平,否則輸出高電平。同時(shí)檢測(cè)P2.5端口輸入,如為高電平說明按鍵S1被按下。為了嚴(yán)格地保證輪流周期和顯示時(shí)間,可以在單片機(jī)定時(shí)器中斷服務(wù)程序中進(jìn)行動(dòng)態(tài)顯示和檢測(cè)。
3.5 報(bào)警輸出及通信電路設(shè)計(jì)
為了避免外聯(lián)設(shè)備的浪涌沖擊和噪聲干擾,報(bào)警輸出和通信電路與系統(tǒng)電路完全隔離,接地以及電路之間沒有任何物理上的傳導(dǎo)連接。繼電器K1、K2用于某路溫度超過設(shè)定的報(bào)警值時(shí),輸出機(jī)械接點(diǎn)信號(hào),如可以連接聲、光報(bào)警裝置。RS 485通信接口可以將本儀表納入到總線拓?fù)涞腞S 485網(wǎng)絡(luò)中,以提高測(cè)量網(wǎng)絡(luò)的集中監(jiān)控能力。為了提高RS 485通信速度本設(shè)計(jì)采用了接收和發(fā)送自動(dòng)轉(zhuǎn)換的零延時(shí)電路。如圖8所示,若發(fā)送為低電平,DE/RE為高電平,發(fā)送允許,此時(shí)由于D管腳接地,MAX1487芯片的輸出端A、B產(chǎn)生表示低電平的差分信號(hào)。若發(fā)送高電平,DE/RE為低電平,MAX1487芯片的A、B端處于高阻態(tài)。此時(shí)靠電阻R32和R35的下拉和上拉作用,使總線上產(chǎn)生表示高電平的差分信號(hào)。由以上分析看出,在半雙工傳送數(shù)據(jù)的方式下,程序不必控制DE/RE,硬件完成接收和發(fā)送的轉(zhuǎn)換。
4 軟件設(shè)計(jì)
儀表整機(jī)軟件主要由3部分組成,數(shù)據(jù)采集與溫度計(jì)算程序、人機(jī)服務(wù)程序、通信程序。為了保證各子程序協(xié)調(diào)運(yùn)行,需要通過中斷機(jī)制實(shí)現(xiàn)。數(shù)據(jù)采集與溫度計(jì)算程序在主循環(huán)里運(yùn)行,人機(jī)服務(wù)在定時(shí)中斷里完成,通信任務(wù)在串行通信中斷服務(wù)程序中完成。
數(shù)據(jù)采集與溫度計(jì)算程序要對(duì)16路溫度進(jìn)行循環(huán)采集,通過單片機(jī)P0端口對(duì)多路開關(guān)的地址引腳控制而實(shí)現(xiàn)通道選擇。一共用了17路數(shù)據(jù)通道,第一路為零電壓、參考電壓,2~17路為16路溫度電壓信號(hào)。每次采集數(shù)據(jù)都要經(jīng)過通道選擇,A/D轉(zhuǎn)換處理,溫度計(jì)算等操作。
人機(jī)服務(wù)程序是實(shí)現(xiàn)儀器的顯示及人工操作,由于數(shù)碼管和LED指示燈采用動(dòng)態(tài)刷新顯示,為了保證動(dòng)態(tài)刷新周期,人機(jī)服務(wù)程序安排在定時(shí)器中斷里運(yùn)行。
RS 485通信訪問方式為主從方式,本儀表處于從機(jī)地位。儀表收到主機(jī)發(fā)來的數(shù)據(jù)幀后,根據(jù)MODBUS RTU通信協(xié)議將主機(jī)要求的信息發(fā)送到RS 485網(wǎng)絡(luò)中,主機(jī)可以讀取16路溫度、報(bào)警設(shè)定數(shù)據(jù),以及重新設(shè)置相關(guān)參數(shù)。
5 結(jié)語
本文基于STC15F2K60S2實(shí)現(xiàn)了多路溫度傳感器測(cè)量,系統(tǒng)設(shè)計(jì)緊湊、成本低、功能強(qiáng)大,且適用范圍非常廣泛。每個(gè)通道通過參數(shù)設(shè)置及變換電路稍加更改即可接受不同的輸入類型,如熱電偶、熱電阻、線性電壓、線性電流、線性電阻,可與各種傳感器、變送器配合使用,實(shí)現(xiàn)對(duì)溫度,壓力、液位等物理量測(cè)量,為工業(yè)系統(tǒng)集成提供了一個(gè)很好的硬件平臺(tái)。
評(píng)論