基于AT89C52單片機模糊PID的電阻爐溫度控制系統(tǒng)
電阻爐是熱處理工業(yè)中常用的設備,具有大滯后、參數(shù)時變、非線性等特點。各個領(lǐng)域?qū)﹄娮锠t溫度控制的精度、穩(wěn)定性、可靠性要求越來越高。提高該類對象的控制品質(zhì)具有廣泛的應用價值。常規(guī)PID控制算法簡單、易于實現(xiàn),適用于可建立精確數(shù)學模型的確定性控制系統(tǒng)。而實際工業(yè)生產(chǎn)過程往往具有非線性和時變性,難以建立精確的數(shù)學模型,因此常規(guī)PID控制器不能達到理想的控制效果。模糊控制不需要被控對象的精確數(shù)學模型,而且控制靈活、魯棒性強,但模糊控制器的積分作用較弱,導致系統(tǒng)的動態(tài)品質(zhì)較差。將模糊控制和PID控制兩者結(jié)合起來的復合型控制器,對復雜控制系統(tǒng)具有良好的控制效果。
文中在深入研究先進PID控制理論及其智能優(yōu)化控制策略的基礎上,以電阻爐為被控對象,建立一種溫度控制系統(tǒng)。由前端溫度傳感器及溫度檢測模塊實時檢測電阻爐溫度,并轉(zhuǎn)換成電壓信號,該電壓信號經(jīng)過溫度檢測電路轉(zhuǎn)換成與爐溫相對應的數(shù)字信號進入單片機,單片機進行數(shù)據(jù)處理后,通過液晶顯示屏顯示溫度并判斷是否報警,同時將得到的溫度偏差和偏差變化率進行模糊化,建立模糊控制規(guī)則表,由設定的模糊控制算法計算出控制量,通過控制固態(tài)繼電器的導通和關(guān)閉從而控制電阻絲的導通時間,以實現(xiàn)對爐溫的控制。
1 系統(tǒng)的硬件設計
1.1 總體設計
系統(tǒng)中,控制對象為電阻爐,被控量為爐溫,控制目標是使爐溫在常壓下恒定在一個設定值允許的誤差之內(nèi)。需要檢測的輸入信號是爐溫,需要輸出的信號主要是PWM,通過調(diào)整其占空比的大小來控制固態(tài)繼電器的導通與關(guān)閉,繼而來控制電加熱設備的導通與關(guān)閉,從而實現(xiàn)爐溫的控制。同時設計了報警電路,以提高系統(tǒng)的安全性??刂葡到y(tǒng)以AT89C52單片機為控制核心,采用閉環(huán)控制的工作方式,系統(tǒng)總體結(jié)構(gòu)如圖1所示。
1.2 溫度檢測部分設計
根據(jù)系統(tǒng)控制對象的特性,溫度傳感器采用K型熱電偶WRN-130,將檢測到的信號通過SBWR系列溫度變送器及A/D轉(zhuǎn)換器等溫度檢測電路處理后轉(zhuǎn)換成數(shù)字信號,供單片機處理。
1.3 人機接口部分設計
人機接口部分采用三位按鍵結(jié)構(gòu)和LCD12864液晶顯示屏完成溫度給定值的設定、顯示以及爐溫的實時顯示(如圖2所示)。3個按鍵分別是選擇鍵、調(diào)整鍵和確認鍵。由選擇鍵在三位溫度顯示值之間循環(huán)選擇,當位于任意一位時,可以用調(diào)整鍵進行該位數(shù)據(jù)量的調(diào)整(0~9),當設置好需要設定的溫度值后,按確認鍵,系統(tǒng)將啟動,并按照新的溫度值進行工作,同時液晶屏顯示當前的溫度值。
1.4 輸出驅(qū)動部分設計
該部分采用固態(tài)繼電器E0542-14F來控制加熱器的供電與否,使強、弱電之間在電氣上完全隔離,具有價格低廉、觸發(fā)電路簡單可靠的特點。單片機以PWM形式輸出控制信號,通過調(diào)整PWM的占空比來達到控制固態(tài)繼電器,繼而來控制爐溫的目的。
1.5 報警電路設計
當溫度達到、超過設定值或時間達到設定時間時,為保證安全,系統(tǒng)中設計了在緊急狀態(tài)下能引起警覺的報警信號。該溫度控制系統(tǒng)采用嗚音報警,將達林頓陳列反向驅(qū)動器MC1413連接AT89C52的P3.5口,當P3.5口輸出高電平時,NC1413輸出低電平,使蜂鳴器鳴音,反之,蜂鳴器停止鳴音。AT89C52的P3.5口的高低電平輸出是在中斷服務程序中完成的。
2 控制策略
2.1 被控對象的數(shù)學模型
系統(tǒng)的被控對象為SX2-10系列實驗室低溫箱式電阻爐,額定電壓為220 V,額定功率為2 000 W。設計目的是對爐膛的溫度進行升溫和恒溫控制,達到調(diào)節(jié)時間短、超調(diào)量低且穩(wěn)態(tài)誤差在±5℃內(nèi)的技術(shù)要求。電陽爐加熱器模型的傳遞函數(shù)為:
給定系統(tǒng)電壓輸入為110 V,經(jīng)測溫達到穩(wěn)定值時,給定輸入階躍信號110 V,使系統(tǒng)電壓達到220 V,每分鐘采樣一次,并記錄溫度值,實驗數(shù)據(jù)如表1所示。
此溫度數(shù)據(jù)為多次測量得到,穩(wěn)態(tài)的時間為30分鐘。根據(jù)科恩-庫恩公式,求得K=4.44、T=531s和τ=177s。所以加熱器的近似模型為:
2.2 模糊PID控制算法
模糊PID控制器是以常規(guī)PID控制器為基礎,采用模糊推理思想,根據(jù)不同的溫度誤差e和誤差變化ec對PID的3個參數(shù)進行在線自調(diào)整。該控制系統(tǒng)由模糊推理和常規(guī)PID控制器兩部分組成,控制結(jié)構(gòu)如圖3所示
3 系統(tǒng)的軟件設計
控制系統(tǒng)軟件部分主要包括主程序、采樣子程序、模糊PID控制程序、定時子程序等。程序采用C語言編寫,調(diào)試工具采用單片機AT89C 52的配套調(diào)試軟件KEIL C51。
3.1 主程序設計
系統(tǒng)上電或復位后,在單片機的控制下自動進入控制系統(tǒng)主程序。首先對單片機及各種芯片進行初始化操作,包括各個端口的初始化、變量的初始化、定時器的初始化及編寫模糊整定查詢表等。待輸入目標溫度值后,進入后續(xù)程序。主程序把其余部分聯(lián)接起來,構(gòu)成一個無限循環(huán)圖,控制系統(tǒng)的所有功能都在這個循環(huán)中周而復始地或有選擇地執(zhí)行。各種子程序都掛接在主程序上,主程序流程如圖4所示。
3.2 A/D采樣及處理
A/D采樣及處理屬于數(shù)據(jù)采集部分,其作用是完成對爐溫的實時檢測(每1秒鐘采樣一次),將檢測到的電壓值(經(jīng)溫度變送器和精密電阻轉(zhuǎn)換)經(jīng)過A/D轉(zhuǎn)換部分進行模數(shù)轉(zhuǎn)換,變成相應的數(shù)字量送入單片機AT89C52,保存在事先定義好的數(shù)組(10個元素)單元中。重復檢測十次,將數(shù)值存滿數(shù)組。為了去除干擾,進行均值濾波,去掉其中的一個最大值和一個最小值,將剩余的八個檢測值求出平均值,為該時刻的檢測值,存入相應單元。該部分主要程序代碼如下:
3.3 液晶顯示與按鍵驅(qū)動部分
液晶顯示屏和按鍵是最常用的輸出和輸入設備。該系統(tǒng)中采用3個獨立的按鍵作為輸入控制鍵,LCD12864液晶顯示屏作為輸出設備。作為輸入處理部分的3個按鍵的功能分別為選擇、調(diào)整和確認。系統(tǒng)上電運行時,可以通過選擇鍵循環(huán)選擇設定溫度的3個位和OK選項,當其中某項被選擇后,其下面出現(xiàn)橫線來標識。在設定溫度的3個位上,可以通過調(diào)整鍵進行0~9的循環(huán)選擇,當選中合適的數(shù)字后,可以按確認鍵進行值的確認。三位都調(diào)整確認完畢后,通過選擇鍵選中“OK”,按確認鍵,這樣系統(tǒng)將啟動運行。
3.4 模糊PID計算
模糊PID計算是整個系統(tǒng)的核心部分,主要是設計模糊PID控制器,其中的e和ec的論域均為-3~+3。在實際的控制過程中,在加熱至e為150之前,占空比為1,全速加熱,當進入e≤150的區(qū)域后,才啟動模糊PID進行計算,通過不斷調(diào)整△Kp、△Ki和△Kd的大小,控制輸出量u的大小,最后使電阻爐的溫度達到平衡。
4 仿真實驗
系統(tǒng)中分別采用常規(guī)PID控制、純模糊控制和模糊PID控制3種控制方法,利用MATLAB進行仿真實驗,從調(diào)節(jié)時間、超調(diào)量和穩(wěn)態(tài)誤差方面比較它們的控制性能。
通過前兩種控制方法的仿真實驗,對于常規(guī)PID控制,當給定溫度值為500時,調(diào)節(jié)時間約為1 200 s,超調(diào)量約為22.9%,穩(wěn)態(tài)誤差為零;對于純模糊控制,給定溫度值為500時,調(diào)節(jié)時間約為1 000 s,超調(diào)量為20℃,最終的穩(wěn)態(tài)誤差較大,約為10℃。
最后對模糊PID控制方法進行仿真實驗,對各輸入?yún)?shù)進行模糊化處理,取e的量化因子Ke=0.02,ec的量化因子Kec=0.1。對輸出量進行解模糊化,得到△Kp、△Ki和△Kd的比例因子均為0.1。選取經(jīng)過優(yōu)化后的初始PID參數(shù),使Kp=0.15、Ki=0.001、Kd=1.7。得到的模糊PID控制仿真曲線如圖5所示。
由系統(tǒng)的仿真曲線圖可見,模糊PID控制的性能指標為:調(diào)節(jié)時間約等于3 500 s,超調(diào)量約為7.5%,穩(wěn)態(tài)誤差為零。
經(jīng)過對常規(guī)PID控制、純模糊控制和模糊PID控制3種控制方案的仿真研究和分析,明顯看出,PID控制響應曲線超調(diào)量最大、調(diào)節(jié)時間較長、最終的穩(wěn)態(tài)誤差為零;純模糊控制響應曲線超調(diào)量最小、調(diào)節(jié)時間最短、但是最終的穩(wěn)態(tài)誤差卻很大;將兩種控制算法結(jié)合在一起的模糊PID控制策略可實現(xiàn)減小超調(diào)量、穩(wěn)態(tài)誤差為零等非常理想的性能指標。溫度控制的延遲是變化的,對于溫度控制這樣的非線性、有延遲的復雜的控制對象,模糊PID控制器顯示了明顯的優(yōu)越性,性能指標要比常規(guī)PID控制器改善很多。
5 結(jié)論
文中將模糊控制算法引入傳統(tǒng)的電阻爐溫度控制系統(tǒng)構(gòu)成模糊PID控制系統(tǒng)。通過將常規(guī)PID控制方法、純模糊控制方法和模糊PID控制方法進行仿真對比,發(fā)現(xiàn)模糊PID控制方法具有較好的動靜態(tài)響應特性和較強的魯棒性,還能夠消除系統(tǒng)余差,這對具有非線性、時變和延遲等特征