《單片機溫度控制系統(tǒng)設(shè)計》由會員分享,可在線閱讀,更多相關(guān)《單片機溫度控制系統(tǒng)設(shè)計(12頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、
單片機溫度控制系統(tǒng)設(shè)計
摘要:本文介紹了一種基于MSP430 單片機的溫度測控裝置。該裝置可實現(xiàn)對溫度的測量,并能根據(jù)設(shè)定值對環(huán)境溫度進行調(diào)節(jié),實現(xiàn)控溫的目的。控制算法基于數(shù)字PID算法。
引言
溫度是工業(yè)控制中主要的被控參數(shù)之一,特別是在冶金、化工、建材、食品、機械、石油等工業(yè)中,具有舉足重輕的作用。隨著電子技術(shù)和微型計算機的迅速發(fā)展,微機測量和控制技術(shù)得到了迅速的發(fā)展和廣泛的應用[1]。單片機具有處理能強、運行速度快、功耗低等優(yōu)點,應用在溫度測量與控制方面,控制簡單方便,測量范圍廣,精度較高。
本文設(shè)計了一種基于MSP430單片機的溫度測量和控制裝置,能對環(huán)境溫度進行測量,
2、并能根據(jù)溫度給定值給出調(diào)節(jié)量,控制執(zhí)行機構(gòu),實現(xiàn)調(diào)節(jié)環(huán)境溫度的目的。
1 整體方案設(shè)計
單片機溫度控制系統(tǒng)是以MSP430單片機為控制核心。整個系統(tǒng)硬件部分包括溫度檢測系統(tǒng)、信號放大系統(tǒng)、A/D轉(zhuǎn)換、單片機、I/O設(shè)備、控制執(zhí)行系統(tǒng)等。
單片機溫度控制系統(tǒng)控制框圖如下所示:
溫度傳感器將溫度信息變換為模擬電壓信號后,將電壓信號放大到單片機可以處理的范圍內(nèi),經(jīng)過低通濾波,濾掉干擾信號送入單片機。在單片機中對信號進行采樣,為進一步提高測量精度,采樣后對信號再進行數(shù)字濾波。單片機將檢測到的溫度信息與設(shè)定值進行比較,如果不相符,數(shù)字調(diào)節(jié)程序根據(jù)給定值與測得值的差值按PID控制算法設(shè)計控
3、制量,觸發(fā)程序根據(jù)控制量控制執(zhí)行單元。如果檢測值高于設(shè)定值,則啟動制冷系統(tǒng),降低環(huán)境溫度;如果檢測值低于設(shè)定值,則啟動加熱系統(tǒng),提高環(huán)境溫度,達到控制溫度的目的。
2 溫度信號檢測
本系統(tǒng)中對檢測精度要求不是很高,室溫下即可,所以選用高精度熱敏電阻作為溫度傳感器。熱敏電阻具有靈敏度較高、穩(wěn)定性強、互換精度高的特點??墒狗糯笃麟娐窐O為簡單, 又免去了互換補償?shù)穆闊?
熱敏電阻具有負的電阻溫度特性,當溫度升高時,電阻值減小,它的阻值—溫度特性曲線是一條指數(shù)曲線,非線性度較大。而對于本設(shè)計,因為溫度要求不高,是在室溫環(huán)境下,熱敏電阻的阻值與環(huán)境溫度基本呈線性關(guān)系[2],這樣可以通過電阻分壓
4、簡單地將溫度值轉(zhuǎn)化為電壓值。
給熱敏電阻通以恒定的電流,可得到電阻兩端的電壓,根據(jù)與熱敏電阻特性有關(guān)的溫度參數(shù)T0 以及特性系數(shù)k,可得下式
T=T0-kV(t) (1)
式中T為被測溫度。
根據(jù)上式,可以把電阻值隨溫度的變化關(guān)系轉(zhuǎn)化為電壓值隨溫度變化的關(guān)系,由于熱敏電阻的電信號一般都是毫伏級,必須經(jīng)過放大,將熱敏電阻測量到的電信號轉(zhuǎn)化為0~3.6之間,才能在單片機中使用。
下圖為放大電路原理圖。穩(wěn)壓管的穩(wěn)壓值為1.5V。
由于傳感器輸出微弱的模擬信號,當信號中存在環(huán)境干擾時,干擾信號也被同時放大,影響檢測的精度,需用濾波電路對先對模擬信號進行處理,以提高信號的抗干擾能力。
5、本系統(tǒng)采用巴特沃斯二階有源低通濾波電路。選取該巴特沃斯二階有源低通濾波電路的截止頻率
fH=10 kHz 。
3 控制系統(tǒng)設(shè)計
3.0 軟件設(shè)計
單片機溫度控制器控制溫度范圍100℃到400℃,采用通斷控制,通過改變給定控制周期內(nèi)加熱和制冷設(shè)備的導通和關(guān)斷時間,來提高和降低溫度,以達到調(diào)節(jié)溫度的目的。
軟件設(shè)計中選取控制周期TC 為200(T1C) ,導通時間取Pn T1C ,其中Pn 為輸出的控制量,Pn值介于0~200之間, T1 為定時器定時的時間,C為常數(shù)。由上兩式可看出,通過改變T1 定時時間或常數(shù)C,就可改變控制周期TC 的大小。溫度控制器控制的最高溫度為400℃,當
6、給定溫度超過400℃時以400℃計算。
圖3為采樣中斷流程圖。
數(shù)模轉(zhuǎn)換部分使用單片機自帶的12位A/D轉(zhuǎn)換器,能同時實現(xiàn)數(shù)模轉(zhuǎn)換和控制,免去使用專用的轉(zhuǎn)換芯片,使系統(tǒng)處理速度更快,精度更高,使電路簡化。采樣周期為500 μs ,當采集完16個點的數(shù)據(jù)以后,設(shè)置標志“nADCFlag =1”,通知主程序采集完16個點的數(shù)據(jù),主程序從全局緩沖區(qū)里讀出數(shù)據(jù)。
為進一步減小隨機信號對系統(tǒng)精度的影響,A/D轉(zhuǎn)換后,用平均值法對采樣值進行數(shù)字濾波。每16個采樣點取一次平均值。然后將計算到的平均值作為測量數(shù)據(jù)進行顯示。同時,按照PID算法,對溫度采樣值和給定值之間的偏差進行控制,得到控制量。
7、采樣全過程完成后就可屏蔽采樣中斷,同時啟動T1定時[3],進入控制過程。
溫度值和熱敏電阻的測量值在整個溫度采樣區(qū)間內(nèi)基本呈線性變化,因此在程序中不需要對測量數(shù)據(jù)進行線性校正。MSP430的T1定時器中斷作為控制中斷,溫度采樣過程和控制輸出過程采用了互鎖結(jié)構(gòu),即在進行溫度采樣,溫度值處理和運算等過程時T1不定時,待采樣全過程進行完時再啟動T1定時并同時屏蔽采樣中斷。T1定時開始就進入控制過程,在整個控制過程中都不采樣,直到200(T1C) 定時時間到,要開始新一輪的控制周期。在啟動采樣的同時屏蔽T1中斷。
圖4為T1定時中斷流程圖。
圖中,M代表定時器控制周期計數(shù)值,N則表示由調(diào)
8、節(jié)器計算出的控制量。首先判斷控制周期TC是否己經(jīng)結(jié)束。若控制周期TC已結(jié)束(即M=0),則屏蔽T1定時器中斷,進行新一輪溫度采樣;若控制周期TC還未結(jié)束〔即M≠0 〕,則開始判斷導通時間是否結(jié)束。若導通時間己結(jié)束(即N=0),則置輸出控制信號為低,并重新賦常數(shù)C值,啟動定時器定時,同時退出中斷服務程序;若導通時間還未結(jié)束(即N ≠0 ),則置輸出控制信號為高,控制執(zhí)行其間繼續(xù)導通,重新賦常數(shù)C值,啟動定時器定時,同時退出中斷服務程序。
3.1 數(shù)字PID
本文控制算法采用數(shù)字PID 控制,數(shù)字PID 算法表達式如下所示:
其中,KP 為比例系數(shù);KI=KPT/TI 為積分系數(shù);T 為
9、采樣周期,TI 為積分時間系數(shù);KD=KPTD/T 為微分系數(shù),TD 為微分時間系數(shù)。u(k) 為調(diào)節(jié)器第k次輸出, e(k) 為第k 次給定與反饋偏差。
對于PID 調(diào)節(jié)器,當偏差值輸出較大時,輸出值會很大,可能導致系統(tǒng)不穩(wěn)定,所以在實際中,需要對調(diào)節(jié)器的輸出限幅[4],即當|u|>umax 時,令u=umax 或u=-umax ,或根據(jù)具體情況確定。
3.2 溫度調(diào)節(jié)
PI 控制器根據(jù)溫度給定值和測量值之間的偏差調(diào)節(jié),給出調(diào)節(jié)量,再通過單片機輸出PWM 波,調(diào)節(jié)可控硅的觸發(fā)相位的相位角,以此來控制執(zhí)行部件的關(guān)斷和開啟時間,達到使溫度升高或降低的目的。隨后整個系統(tǒng)再通過檢測前一
10、階段控制后的溫度,進行近一步的控制修正,最終實現(xiàn)預期的溫度監(jiān)控目的。
4 結(jié)論
本設(shè)計利用單片機低功耗、處理能力強的特點,使用單片機作為主控制器,對室內(nèi)環(huán)境溫度進行監(jiān)控。其結(jié)構(gòu)簡單、可靠性較高,具有一定的實用價值和發(fā)展前景。
參考文獻
[1] 趙麗娟,邵欣.基于單片機的溫度監(jiān)控系統(tǒng)的設(shè)計與實現(xiàn).機械制造,2006,44(1)
[2] 張開生,郭國法.MCS-51 單片機溫度控制系統(tǒng)的設(shè)計.微計算機信息,2005,(7)
[3] 沈建華,楊艷琴,翟驍曙..MSP430 系列16 位超低功耗單片機原理與應用.清華大學出版社,2004,148-155
[4] 賴壽宏.微型計算機控
11、制技術(shù).北京:機械工業(yè)出版社,1994:90-95
MCS-51單片機溫度控制系統(tǒng)的設(shè)計
2009-10-13 16:16
摘 要:本文從硬件和軟件兩方面介紹了MCS-51單片機溫度控制系統(tǒng)的設(shè)計思路,對硬件原理圖和程序框圖作了簡捷的描述。
關(guān)鍵詞:MCS-51單片機;溫度;軟硬件;硬件原理圖;程序框圖;設(shè)計
0引言
在現(xiàn)代化的工業(yè)生產(chǎn)中,電流、電壓、溫度、壓力、流量、流速和開關(guān)量都是常用的主要被控參數(shù)。例如:在冶金工業(yè)、化工生產(chǎn)、電力工程、造紙行業(yè)、機械制造和食品加工等諸多領(lǐng)域中,人們都需要對各類加熱爐、熱處理爐、反應爐和鍋爐中的溫度進行檢測和控制。采用MCS-51單片機來對溫
12、度進行控制,不僅具有控制方便、組態(tài)簡單和靈活性大等優(yōu)點,而且可以大幅度提高被控溫度的技術(shù)指標,從而能夠大大提高產(chǎn)品的質(zhì)量和數(shù)量。因此,單片機對溫度的控制問題是一個工業(yè)生產(chǎn)中經(jīng)常會遇到的問題。本文以它為例進行介紹,希望能收到舉一反三和觸類旁通的效果。
1硬件電路設(shè)計
以熱電偶為檢測元件的單片機溫度控制系統(tǒng)電路原理圖如圖1所示。
1.1 溫度檢測和變送器
溫度檢測元件和變送器的類型選擇與被控溫度的范圍和精度等級有關(guān)。鎳鉻/鎳鋁熱電偶適用于0℃-1000℃的溫度檢測范圍,相應輸出電壓為0mV-41.32mV。
變送器由毫伏變送器和電流/電壓變送器組成:毫伏變送器用于把熱電偶輸出的0
13、mV-41.32mV變換成4mA-20mA的電流;電流/電壓變送器用于把毫伏變送器輸出的4mA-20mA電流變換成0-5V的電壓。
為了提高測量精度,變送器可以進行零點遷移。例如:若溫度測量范圍為500℃-1000℃,則熱電偶輸出為20.6mV-41.32mV,毫伏變送器零點遷移后輸出4mA-20mA范圍電流。這樣,采用8位A/D轉(zhuǎn)換器就可使量化溫度達到1.96℃以內(nèi)。
1.2接口電路
接口電路采用MCS-51系列單片機8031,外圍擴展并行接口8155,程序存儲器EPROM2764,模數(shù)轉(zhuǎn)換器ADC0809等芯片。
由圖1可見,在P2.0=0和P2.1=0時,8155選中它內(nèi)
14、部的RAM工作;在P2.0=1和P2.1=0時,8155選中它內(nèi)部的三個I/O端口工作。相應的地址分配為:
0000H - 00FFH 8155內(nèi)部RAM
0100H 命令/狀態(tài)口
0101H A 口
0102H B 口
0103H C 口
0104H 定時器低8位口
0105H 定時器高8位口
8155用作鍵盤/LED顯示器接口電路。圖2中鍵盤有30個按鍵,分成六行(L0-L5)五列(R0-R4),只要某鍵被按下,相應的行線和列線才會接通。圖中30個按鍵分三類:一是數(shù)字鍵0-9,共10個;二是功能鍵18個;三是剩余兩個鍵,可定義或設(shè)置成復位鍵等。為了減少硬件開銷,提高系統(tǒng)可
15、靠性和降低成本,采用動態(tài)掃描顯示。A口和所有LED的八段引線相連,各LED的控制端G和8155C口相連,故A口為字形口,C口為字位口,8031可以通過C口控制LED是否點亮,通過A口顯示字符。
圖1 單片機溫度控制系統(tǒng)電路原理圖
圖2 8155用作鍵盤/LED顯示器接口電路
2764是8K EPROM型器件。8031的PSEN和2764的OE相連,P2.5和CE相連,所以2764的地址空間為:0000H---1FFFH,ADC0809的0通道(IN0 其他輸入端可作備用)和變送器的輸出端相連,所以從通道0(IN0)上輸入的0V--+5V范圍的模擬電壓經(jīng)A/D轉(zhuǎn)換后可由8031通
16、過程序從P0口輸入到它的內(nèi)部RAM單元,在P2.2=0和WR=0時,8031可使ALE和START變?yōu)楦唠娖蕉鴨覣DC0809工作;在P2.2=0和RD=0時,8031可以從ADC0809接收A/D轉(zhuǎn)換后的數(shù)字量。也就是說ADC0809可以視為8031的一個外部RAM單元,地址為03F8H(地址重復范圍很大),因此,8031執(zhí)行如下程序可以啟動ADC0809工作。
MOV DPTR,#03F8H
MOVX @DPTR,A
若8031執(zhí)行下列程序:
MOV DPTR,#03F8H
MOVX A,@DPTR
則可以從ADC0809輸入A/D轉(zhuǎn)換后的數(shù)字量。
1.3溫度控制電路
17、8031對溫度的控制是通過雙向可控硅實現(xiàn)的。如圖一所示,雙向可控硅管和加熱絲串接在交流220V、50Hz市電回路。在給定周期T內(nèi),8031只要改變可控硅管的接通時間即可改變加熱絲的功率,以達到調(diào)節(jié)溫度的目的。
可控硅接通時間可以通過可控硅控制極上觸發(fā)脈沖控制。該觸發(fā)脈沖由8031用軟件在P1.3引腳上產(chǎn)生,在過零同步脈沖同步后經(jīng)光電耦合管和驅(qū)動器輸出送到可控硅的控制極上。
3. 溫度控制的算法和程序框圖
圖3 主程序框圖
3.1溫度控制算法
通常,電阻爐爐溫控制都采用偏差控制法。偏差控制的原理是先求出實測爐溫對所需爐溫的偏差值,然后對偏差值處理獲得控制信號去調(diào)節(jié)電阻爐
18、的加熱功率,以實現(xiàn)對爐溫的控制。在工業(yè)上,偏差控制又稱PID控制,這是工業(yè)控制過程中應用最廣泛的一種控制形式,一般都能收到令人滿意的效果。
3.2溫度控制程序框圖
溫度控制程序的設(shè)計應考慮如下:1)鍵盤掃描、鍵碼識別和溫度顯示;2)爐溫采樣、數(shù)字濾波;3)數(shù)據(jù)處理;4)越限報警和處理;5)PID計算、溫度標度轉(zhuǎn)換
3.2.1主程序框圖
主程序包括8031本身的初始化、并行接口8155初始化等等。大體說來,本程序包括設(shè)置有關(guān)標志、暫存單元和顯示緩沖區(qū)清零、T0初始化、CPU開中斷、溫度顯示和鍵盤掃描等程序。
3.2.2中斷服務程序框圖
T0中斷服務程序是溫度控制系統(tǒng)的主體程序
19、,用于啟動數(shù)/模轉(zhuǎn)換器、讀入采樣數(shù)據(jù)、數(shù)字濾波、越限溫度報警和越限處理、PID計算和輸出可控硅的觸發(fā)脈沖等。P1.3引腳上輸出的該同步觸發(fā)脈沖寬度由T1計數(shù)器的溢出中斷控制,8031利用等待T1溢出中斷的空閑時間(形成P1.3輸出脈沖頂寬)完成把本次采樣值轉(zhuǎn)換成顯示值而放入顯示單元緩沖區(qū)和調(diào)用溫度顯示程序。8031從T1中斷服務程序返回后即可恢復現(xiàn)場和返回主程序。
3.2.3主要子服務程序框圖
主要服務子程序包括溫度檢測采樣及數(shù)字濾波子程序、帶符號雙字節(jié)乘法子程序和標度轉(zhuǎn)換子程序目的是把實際采樣取得的二進制值轉(zhuǎn)換成BCD碼形式的溫度值,然后存放到顯示緩沖區(qū)中,供顯示子程序調(diào)用。
20、
圖4 中斷服務程序框圖
對于一般線性儀表來說,標度轉(zhuǎn)換公式為:
Tx=A0 + (Am-A0)
其中,A0為一次測量儀表的下限; Am為一次測量儀表的上限;Vx 為實際測量值(工程量);Vm為儀表上限對應的數(shù)字量; V0為儀表下限對應的數(shù)字量。
4 其它控制算法
不同的控制對象,所采用的算法有所不同。例如對于熱慣性大、時間滯后明顯、耦合強、難于建立精確數(shù)學模型的大型立式淬火爐,可以采用人工智能模糊控制算法,通過對淬火爐電熱元件通斷比的調(diào)節(jié),實現(xiàn)對爐溫的自動控制,也可以采用仿人智能控制(SHIC)算法和PID控制算法的聯(lián)合控制方案,實際應用時應靈活運用。
5結(jié)束語
21、MCS-51單片機,體積小,重量輕,抗干擾能力強,對環(huán)境要求不高,價格低廉,可靠性高,靈活性好,即使是非電子計算機專業(yè)人員,通過學習一些專業(yè)基礎(chǔ)知識以后也能依靠自己的技術(shù)力量,來開發(fā)所希望的單片機應用系統(tǒng)。本文的溫度控制系統(tǒng),只是單片機廣泛應用于各行各業(yè)中的一例,相信讀者會依靠自己的聰明才智,使單片機的應用更加廣泛化。
參考文獻
[1] 陳明熒.8051單片機課程設(shè)計實訓教材 北京:清華大學出版社 2004
[2] 凌玉華.單片機原理與應用系統(tǒng)設(shè)計 長沙:中南大學出版社 2006
[3] 胡漢才.單片機原理及其接口技術(shù) 北京:清華大學出版社 1995
[4] 徐淑華 程退安 姚萬生 .單片機微型機原理及應用 哈爾濱工業(yè)大學出版社 1994