基于AT89S51單片機(jī)的PID溫度控制系統(tǒng)設(shè)計
掃描二維碼
隨時隨地手機(jī)看文章
溫度控制技術(shù)不僅在工業(yè)生產(chǎn)有著非常重要的作用,而且在日常生活中也起著至關(guān)重要的作用。本文對系統(tǒng)進(jìn)行硬件和軟件的設(shè)計,在建立溫度控制系統(tǒng)數(shù)學(xué)模型的基礎(chǔ)之上,通過對PID控制的分析設(shè)計了系統(tǒng)控制器,完成了系統(tǒng)的軟、硬件調(diào)試工作。算法簡單、可靠性高、魯棒性好,而且PID控制器參數(shù)直接影響控制效果。
1.系統(tǒng)概述
1.1系統(tǒng)總體結(jié)構(gòu)
該系統(tǒng)利用AT89S51豐富的外設(shè)模塊搭建硬件平臺。系統(tǒng)的硬件電路包括:模擬部分和數(shù)字部分,基本電路由核心處理模塊、溫度采集模塊、鍵盤顯示模塊及控制執(zhí)行模塊等組成。
1.2系統(tǒng)工作流程
系統(tǒng)開始工作時,首先由單片機(jī)控制軟件發(fā)出溫度讀取指令,通過數(shù)字溫度傳感器采集被控對象的當(dāng)前溫度值并送顯示屏實時顯示。然后,將該溫度測量值與設(shè)定值T比較,其差值送PID控制器。PID控制器處理后輸出一定數(shù)值的控制量,經(jīng)D/A轉(zhuǎn)換為模擬電壓量,控制被控對象進(jìn)行加熱。
1.3系統(tǒng)軟件設(shè)計方法
整個系統(tǒng)軟件設(shè)計包括管理程序和控制程序兩部分,管理程序包括LED顯示的動態(tài)刷新、控制指示燈、處理鍵盤的掃描和響應(yīng)??刂瞥绦虬ˋ/D轉(zhuǎn)換、中值濾波、越限報警處理、PID計算等。
2.系統(tǒng)硬件結(jié)構(gòu)
2.1電源電路的設(shè)計
系統(tǒng)所用直流電源由三端集成穩(wěn)壓器組成的串聯(lián)型直流穩(wěn)壓電源提供。設(shè)計中選用了LM7805 LM7815和LM7915三個三端集成穩(wěn)壓器,提供+5V直流電壓,輸出電流均為1A.變壓器將220V的市電降壓后再通過整流橋整流之后采用了大容量的電解電容進(jìn)行濾波,以減小輸出電壓紋波。電源電路圖如圖1所示。
圖1電源電路圖
2.2復(fù)位電路設(shè)計
單片機(jī)復(fù)位電路設(shè)計的好壞,直接影響到整個系統(tǒng)工作的可靠性。只有一個可靠的復(fù)位電路才能使系統(tǒng)避免出現(xiàn)了“死機(jī)”、“程序走飛”等現(xiàn)象。電路圖如圖2所示。
圖2復(fù)位電路圖
2.3時鐘電路設(shè)計
本控制器采用的是內(nèi)部振蕩方式得到單片機(jī)的時鐘信號,這種方式得到的時鐘信號比較穩(wěn)定。圖3為時鐘電路。
圖3時鐘電路圖
2.4可控硅輸出電路
可控硅是一種功率半導(dǎo)體器件,簡稱SCR,也稱晶閘管。本部分為控制電加熱爐功率的雙向可控硅驅(qū)動電路,采用MOC3041作為驅(qū)動電路。如圖4所示。
圖4可控硅輸出電路
2.5聲光報警電路模塊
某一通道的溫度測量值超出預(yù)先設(shè)定的上、下限報警值或系統(tǒng)運行出現(xiàn)故障時,系統(tǒng)發(fā)出聲光報警以提醒用戶注意。如圖5所示。
圖5聲光報警電路圖
3.系統(tǒng)軟件設(shè)計
3.1系統(tǒng)主程序設(shè)計
在反應(yīng)器系統(tǒng)中,主程序的功能主要是設(shè)定程序執(zhí)行過程中用到的相關(guān)變量,分配寄存器,對所需要的參數(shù)初始化,根據(jù)定時中斷程序,調(diào)用相應(yīng)的功能模塊,完成一定的任務(wù)。
3.2系統(tǒng)子程序設(shè)計
3.2.1顯示子程序
LED顯示方式包括有靜態(tài)和動態(tài)顯示兩種,動態(tài)掃描顯示電路是將顯示各位的所有相同字段線連在一起,由一個8位I/O口控制,而每一位的公共端(共陽或共陰COM)由另一個I/O口控制。由于這種連接方式將每位相同字段的字段線連在一起,當(dāng)輸出字段碼時,每一位將顯示相同的內(nèi)容。因此,要想顯示不同的內(nèi)容,必須采取輪流顯示的方式。
3.2.2定時子程序
定時程序主要是用于完成查表的占空比控制??傮w思想是根據(jù)控制表中占空比控制變量U的不同取值,采用不同的定時來改變繼電器的通斷,根據(jù)繼電器的特性,要求不能頻繁通斷,所以通斷要有一定長的時間,但又要考慮到控制能夠及時的根據(jù)新的采集值和設(shè)定值的變化來做出相應(yīng)的動作。
4.控制方案
4.1 PID控制
PID控制器是一種線性控制器,它根據(jù)給定值與實際輸出值構(gòu)成控制偏差,將偏差比例、積分和微分通過線性組合構(gòu)成控制量,對被控對象進(jìn)行控制。
4.2 PID參數(shù)整定
由于PID控制器的輸出為系統(tǒng)偏差的比例、微分和積分作用后的線性組合,所以調(diào)整各個部分的線性系數(shù)就是PID控制器控制性能好壞的關(guān)鍵。必須針對具體被控對象對PID控制器參數(shù)進(jìn)行整定,采取擴(kuò)充臨界比例度法:
(a)選擇合適的采樣周期T.所謂合適是指周期足夠小,一般應(yīng)選它對象的純滯后時間的1/IO以下;
(b)僅讓控制器作純比例控制,由小到大逐漸增大比例系數(shù)Kp,直至使系統(tǒng)出現(xiàn)臨界振蕩,記下此時的臨界振蕩周期Ts和臨界振蕩增益Ks;
(c)選擇合適的控制度。所謂控制度,就是數(shù)字控制器和模擬調(diào)節(jié)器所對應(yīng)的過渡過程的誤差平方的積分之比;
(d)根據(jù)控制度查表。
4.3 Matlab仿真
通過對上述的整定方法的綜合運用,整定后得到PID控制器的參數(shù)為:Kp=1.75,Ki=0.0125,Kd=3,在MATLAB/Simulink環(huán)境下建立溫度控制系統(tǒng)的仿真模型,如圖6示。仿真后得到系統(tǒng)階躍響應(yīng)曲線。
圖6仿真模型
仿真后得到的系統(tǒng)階躍響應(yīng)的動態(tài)性能還是比較理想的,超調(diào)很?。憫?yīng)峰值為1.017,超調(diào)量Q%=1.7%)。統(tǒng)的響應(yīng)誤差是也是比較小的(穩(wěn)態(tài)誤差為0.005),在系統(tǒng)要求的精度范圍之內(nèi)。
5.總結(jié)
系統(tǒng)采用模塊化設(shè)計,擴(kuò)展性強(qiáng)。模塊化設(shè)計,使控制器具有一定的通用性,而且運行安全可靠。成本低,操作簡單,體積小,安裝方便,反應(yīng)靈敏,控制精度高。