電加熱爐溫度單片機(jī)控制系統(tǒng)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
0 引 言
電加熱爐隨著科學(xué)技術(shù)的發(fā)展和工業(yè)生產(chǎn)水平的提高,已經(jīng)在冶金、化工、機(jī)械等各類工業(yè)控制中得到了廣泛應(yīng)用,并且在國(guó)民經(jīng)濟(jì)中占有舉足輕重的地位。對(duì)于這樣一個(gè)具有非線性、大滯后、大慣性、時(shí)變性、升溫單向性等特點(diǎn)的控制對(duì)象,很難用數(shù)學(xué)方法建立精確的數(shù)學(xué)模型,因此用傳統(tǒng)的控制理論和方法很難達(dá)到好的控制效果。
單片機(jī)以其高可靠性、高性能價(jià)格比、控制方便簡(jiǎn)單和靈活性大等優(yōu)點(diǎn),在工業(yè)控制系統(tǒng)、智能化儀器儀表等諸多領(lǐng)域得到廣泛應(yīng)用。采用單片機(jī)進(jìn)行爐溫控制,可以提高控制質(zhì)量和自動(dòng)化水平。
1 單片機(jī)爐溫控制系統(tǒng)結(jié)構(gòu)
本系統(tǒng)的單片機(jī)爐溫控制系統(tǒng)結(jié)構(gòu)主要由單片機(jī)控制器、可控硅輸出部分、熱電偶傳感器、溫度變送器以及被控對(duì)象組成。如圖1所示。
爐溫信號(hào)T通過溫度檢測(cè)及變送,變成電信號(hào),與溫度設(shè)定值進(jìn)行比較,計(jì)算溫度偏差e和溫度的變化率de/dt,再由智能控制算法進(jìn)行推理,并得控制量u,可控硅輸出部分根據(jù)調(diào)節(jié)電加熱爐的輸出功率,即改變可控硅管的接通時(shí)間,使電加熱爐輸出溫度達(dá)到理想的設(shè)定值。
2 系統(tǒng)硬件設(shè)計(jì)
2.1 系統(tǒng)硬件結(jié)構(gòu)
以AT89C51單片
機(jī)為該控制系統(tǒng)的核心,實(shí)現(xiàn)對(duì)溫度的采集、檢測(cè)和控制。該系統(tǒng)的工作流程如圖2所示。系統(tǒng)由變送器經(jīng)A/D轉(zhuǎn)換器構(gòu)成輸入通道,用于采集爐內(nèi)的溫度信號(hào)。
變送器可以選用DBW,型號(hào),它將熱電偶信號(hào)(溫度信號(hào))變?yōu)?~5 V電壓信號(hào),以供A/D轉(zhuǎn)換用。轉(zhuǎn)換后的數(shù)字量與爐溫?cái)?shù)字化后的給定值進(jìn)行比較,即可得到實(shí)際爐溫和給定爐溫的偏差及溫度的變化率。爐溫的設(shè)定值由BCD撥碼盤輸入。由AT89C51構(gòu)成的核心控制器按智能控制算法進(jìn)行推算,得出所需要的控制量。由單片機(jī)的輸出通過調(diào)節(jié)可控硅管的接通時(shí)間,改變電爐的輸出功率,起到調(diào)溫的作用。
2.2 系統(tǒng)硬件的選擇
a)微型計(jì)算機(jī)的選擇:選擇AT89C51單片機(jī)構(gòu)成爐溫控制系統(tǒng)。它具有8位CPU,3 2根I/O線,4 kB片內(nèi)ROM存儲(chǔ)器,128 kB的RAM存儲(chǔ)器。AT89C51對(duì)溫度是通過可控硅調(diào)功器實(shí)現(xiàn)的。在系統(tǒng)開發(fā)過程中修改程序容易,可以大大縮短開發(fā)周期。同時(shí),系統(tǒng)工作過程中能有效地保存一些數(shù)據(jù)信息,不受系統(tǒng)掉電或斷電等突發(fā)情況的影響。AT89C51單片機(jī)內(nèi)部有128 B的RAM存儲(chǔ)器,不夠本系統(tǒng)使用,因此,采用6264(8 kB)的RAM作為外部數(shù)據(jù)存儲(chǔ)器。
b)熱電偶的選擇:本設(shè)計(jì)采用DBW型熱電偶--鎳絡(luò)-鎳硅(線性度較好,熱電勢(shì)較大,靈敏度較高,穩(wěn)定性和復(fù)現(xiàn)性較好,抗氧化性強(qiáng),價(jià)格便宜)對(duì)溫度進(jìn)行檢測(cè)。由于溫度是非線性輸出的,而與輸入的mV信號(hào)成線性關(guān)系,所以在軟件上將此非線性關(guān)系加以修正,以便正確反映輸入mV信號(hào)與溫度之間的關(guān)系。ADC0809把檢測(cè)到的連續(xù)變化的溫度模擬量轉(zhuǎn)換成離散的數(shù)字量,輸人到單片機(jī)中進(jìn)行處理。
c)鍵盤輸入的選擇:采用4片BCD撥碼盤作為溫度設(shè)定的輸入單元,輸入范圍為0~9999,可滿足本系統(tǒng)的要求。每位BCD碼盤占4條線,通過上拉電阻接入8255可編程并行I/O擴(kuò)展口。4片BCD碼盤占8255的A、B兩口,8255工作方式設(shè)為"0 模式",A、B兩口均為輸入方式。開機(jī)后,CPU讀8255口操作,即可將BCD碼盤的設(shè)定溫度讀入并存人相應(yīng)的存儲(chǔ)單元。
d)顯示器的選擇:采用字符型LCD(液晶顯示器)模塊TC1602A,并且它把LCD控制器、ROM和LCD顯示器用PCB(印制板)連接到一起,只要向LCD送人相應(yīng)的命令和數(shù)據(jù)便可實(shí)現(xiàn)所需要的顯示,使用特別方便靈活。第1行顯示設(shè)定溫度,第2行顯示實(shí)際溫度,這樣,溫差一目了然,方便控制。
3 系統(tǒng)軟件設(shè)計(jì)
本系統(tǒng)的應(yīng)用程序主要由主程序、中斷服務(wù)程序和子程序組成。主程序的任務(wù)是對(duì)系統(tǒng)進(jìn)行初始化,實(shí)現(xiàn)參數(shù)輸入,并控制電加熱爐的正常運(yùn)行。主程序主要由系統(tǒng)初始化、數(shù)據(jù)采集及處理、智能推理等部分組成。系統(tǒng)初始化包括設(shè)置棧底、工作寄存器組、控制量的初始值、采樣周期、中斷方式和狀態(tài)、定時(shí)器的工作方式以及8255的初始化、TC1602A的初始化等。數(shù)據(jù)采集及處理主要包括實(shí)時(shí)采集電加熱爐的爐溫信號(hào),計(jì)算出實(shí)際爐溫與理想值的差值以及溫差的變化率,并對(duì)爐溫信號(hào)進(jìn)行濾波和限幅處理。主程序如圖3所示。
中斷服務(wù)程序?qū)崿F(xiàn)定時(shí)采樣和輸出控制。AT89C51共有6個(gè)中斷源:2個(gè)外部中斷、2個(gè)定時(shí)器溢出中斷及2個(gè)串行中斷。
子程序主要有采樣子程序、數(shù)字濾波子程序、控制算法子程序、數(shù)字轉(zhuǎn)換子程序、顯示子程序等。在采樣程序中包括對(duì)A/D啟動(dòng)、讀結(jié)果及把A/D結(jié)果轉(zhuǎn)換成為實(shí)際溫度值。由于熱電偶本身的非線性及模擬輸人通道存在的非線性,需要將A/D值與溫度值之間對(duì)應(yīng)關(guān)系以表格形式存于EPROM中。數(shù)字濾波子程序是將A/D轉(zhuǎn)換成的數(shù)字量提取有用的量,一方面通過TC1602ALCD模塊顯示出來;另一方面將該溫度值與被控溫度值進(jìn)行比較,根據(jù)其偏差值的大小及溫度的變化率,通過智能控制器來改變可控硅管的接通時(shí)間,從而達(dá)到改變電加熱爐的輸出功率,即控制算法子程序是控制器中最重要的一部分,它的原理將在第4節(jié)介紹。
4 智能控制算法
考慮到電加熱爐是一個(gè)非線性、時(shí)變和分布參數(shù)系統(tǒng),所以本文采用一種新型的智能控制算法。它充分吸取數(shù)學(xué)和自動(dòng)控制理論成果,與定性知識(shí)相結(jié)合,做到取長(zhǎng)補(bǔ)短,在實(shí)時(shí)控制中取得較好的成果。
本系統(tǒng)的智能控制器由數(shù)據(jù)庫(kù)、知識(shí)庫(kù)、推理機(jī)、學(xué)習(xí)環(huán)節(jié)、修正環(huán)節(jié)和黑板組成。數(shù)據(jù)庫(kù)中存放各個(gè)時(shí)刻的采樣值y(k)、偏差e(k)、控制量u(k)和生成控制量u(k),所用的控制規(guī)則序號(hào)、每條控制規(guī)則的加權(quán)系數(shù)a都是以數(shù)組的形式存放。
知識(shí)庫(kù)中知識(shí)由產(chǎn)生式規(guī)則生成,其規(guī)則集都是按順序排列的。當(dāng)求得偏差e(k)和被調(diào)整量y(k)后,借助黑板進(jìn)行正向推理,從上到下順序地搜索知識(shí)庫(kù)中的匹配模式,一旦找到匹配規(guī)則,即可求出控制量u(k)。
學(xué)習(xí)過程是通過修正規(guī)則加權(quán)系數(shù)a,使各種控制規(guī)則產(chǎn)生的控制
量隨環(huán)境和控制量效果變化進(jìn)行修正,從而實(shí)現(xiàn)自學(xué)習(xí)的功能。由于被控制對(duì)象具有d步時(shí)延,因此,y(k)是由(k-d)時(shí)刻及其以前所有控制量作用的結(jié)果,則應(yīng)修正控制量u(k-d)的控制規(guī)則所對(duì)應(yīng)的控制規(guī)則加權(quán)系數(shù)a[num(k-d)]。
系統(tǒng)爐溫控制過程是一個(gè)慢過程,一般采樣間隔長(zhǎng),在此間隔時(shí)間內(nèi),被控對(duì)象可能受內(nèi)部參數(shù)變化或隨機(jī)干擾影響,因而町能導(dǎo)致(k+1)時(shí)刻發(fā)出的控制量使控制效果變差,影響系統(tǒng)的控制性能。為補(bǔ)充這一不足,這里引入動(dòng)態(tài)修正環(huán)節(jié)為:
式中:0 < r < 1。
最后由修正量和黑板給出的u(k)疊加,得到總輸出控制量為:
式中:β取0.8~0.9。
5 結(jié)束語
本系統(tǒng)以單片機(jī)AT89C51為核心,它具有高可靠性、高性能價(jià)格比、控制方便簡(jiǎn)單和靈活性大等優(yōu)點(diǎn)。控制器采用新型的智能控制算法,岡而系統(tǒng)升溫快,控溫精度高,穩(wěn)態(tài)誤差可達(dá)±5℃以內(nèi),滿足系統(tǒng)要求。整個(gè)系統(tǒng)操作簡(jiǎn)便,抗干擾能力強(qiáng)、運(yùn)行可靠。