圖2 溫、濕度顯示模塊圖
AT89C51通過(guò)2-4譯碼器對(duì)4只MC14495芯片進(jìn)行控制。MC14495的輸出端與LED數(shù)碼管的7段a,b,c,d,e,f,g相連。MC14495芯片的作用是輸入被顯示字符的二進(jìn)制碼(或BCD碼),井把他自動(dòng)轉(zhuǎn)換成相應(yīng)的字形碼,送給LED顯示。
圖2中,4個(gè)輸出端口用于輸出顯示字符的二進(jìn)制碼 (或BCD碼)。1個(gè)輸出端口用于控制2-4譯碼器工作,還有2個(gè)輸出口經(jīng)譯碼器輸出后控制哪一片MC14495顯示輸出,從而直觀的看出溫度、濕度經(jīng)過(guò)閉環(huán)調(diào)節(jié)之后的效果值。如我們假定溫度上限、下限為50,0,濕度為70,30。我們可根據(jù)現(xiàn)場(chǎng)檢測(cè)直觀的顯示溫、濕度值,超出系統(tǒng)將做報(bào)警處理。程序簡(jiǎn)單思路如下[5]:
#include<iostream.h>
Void main( ){ int a,b,c,d,e,f,g,g;//設(shè)置檢測(cè)點(diǎn)a,b用來(lái)檢測(cè)溫度上下限,c,d檢測(cè)濕度上下限,e,f,g,h對(duì)應(yīng)顯示溫度與濕度的測(cè)量值。
If(a>0&&a<5&&c>3&&c<7)//如果溫度、濕度都在我們?cè)O(shè)定的范圍內(nèi),正常顯示。
a=e;b=f;c=g;d=h;//把檢測(cè)對(duì)應(yīng)連接顯示接口,顯示溫度、濕度值。
else
報(bào)警}
3系統(tǒng)軟件設(shè)計(jì)
3.1數(shù)據(jù)采集
溫度數(shù)據(jù)的采集經(jīng)過(guò)DS18B20獨(dú)特的功能,直接將采集的數(shù)據(jù)自動(dòng)轉(zhuǎn)化為數(shù)字量傳入單片機(jī),濕度數(shù)據(jù)是由傳感器測(cè)得現(xiàn)場(chǎng)濕度信號(hào)經(jīng)變送器轉(zhuǎn)換成0~5V的直流信號(hào),送到A/D模數(shù)轉(zhuǎn)換器轉(zhuǎn)換成數(shù)字量后,再送入單片機(jī)進(jìn)行數(shù)據(jù)處理,處理后的數(shù)據(jù)進(jìn)入PID算法比較做出控制量的選擇。
3.2數(shù)字濾波
當(dāng)采樣過(guò)程完成后,要對(duì)采樣所得的數(shù)據(jù)進(jìn)行數(shù)字濾波。數(shù)字濾波程序用于濾去來(lái)自控制現(xiàn)場(chǎng)對(duì)采樣值的干擾,數(shù)字濾波的算法很多,這里采用中值濾波。中值濾波原理很簡(jiǎn)單,就是對(duì)采樣過(guò)程中的n個(gè) (一般是3個(gè))采樣值進(jìn)行比較,取中間值放入指定的存儲(chǔ)單元。
3.3單片機(jī)抗干擾電路的設(shè)計(jì)
在抗干擾方面的許多技術(shù),如設(shè)計(jì)軟件陷阱、加硬件看門狗電路等。若失控的程序進(jìn)入“死循環(huán)”,通常采用“看門狗”技術(shù)使程序脫離“死循環(huán)”。通過(guò)不斷檢測(cè)程序循環(huán)運(yùn)行時(shí)間,若發(fā)現(xiàn)程序循環(huán)時(shí)間超過(guò)最大循環(huán)運(yùn)行時(shí)間,則認(rèn)為系統(tǒng)陷入“死循環(huán)”,需進(jìn)行出錯(cuò)處理!翱撮T狗”技術(shù)大大提高了系統(tǒng)可靠性,本系統(tǒng)“看門狗”讓系統(tǒng)運(yùn)行更加穩(wěn)定可靠。
3.4系統(tǒng)的PID控制算法[6]
控制算法是控制系統(tǒng)的核心部分,是控制系統(tǒng)能否穩(wěn)定和調(diào)節(jié)品質(zhì)是否優(yōu)良的關(guān)鍵。本系統(tǒng)是一個(gè)閉環(huán)控制的單片機(jī)直接控制系統(tǒng)(DDC),它的工作原理是按照一定的采樣周期T去對(duì)被控量(溫度、濕度)進(jìn)行采樣,并經(jīng)過(guò)控制算法算出控制量,以此控制量作為輸出控制執(zhí)行器,實(shí)現(xiàn)對(duì)被控對(duì)象的控制,采用單片機(jī)作為控制器核心所構(gòu)成的自動(dòng)控制系統(tǒng),軟件算法流程圖如圖3。閉環(huán)溫度、濕度控制程序,由求偏差E和偏差變化率Ec,數(shù)據(jù)量化算法、增量PID控制算法等程序模塊組成。單片機(jī)首先讀取數(shù)字化的實(shí)際轉(zhuǎn)速,并與設(shè)定的轉(zhuǎn)速相比較,得出差值,單片機(jī)再根據(jù)差值,調(diào)用PID程序,計(jì)算并輸出模擬電壓控制變頻調(diào)速器,調(diào)節(jié)被控對(duì)象電機(jī)轉(zhuǎn)速的大小,同時(shí),尋找最優(yōu)條件,改變PID參數(shù)。
PID的計(jì)算公式為:
U(K)=U(K-1)+KP[E(K)-E(K-1)]+KI×E(K)+KD[E(K)-2 E(K-1)+ E(K-2)]
= U(K-1)+PP+PI+PD (2)
KI=T/TK (3)
KD=Td/T (4)
式中:KP為比例系數(shù);T為采樣周期;TK為積分時(shí)間;Td為微分時(shí)間。
根據(jù)公式進(jìn)行編程,相應(yīng)的程序流程如圖4
4 結(jié)束語(yǔ)
該閉環(huán)控制系統(tǒng)實(shí)現(xiàn)了AT89C51單片機(jī)為核心,通過(guò)PID算法達(dá)到對(duì)溫度、濕度的檢測(cè)及其控制,運(yùn)行可靠,操作簡(jiǎn)單,精度高,響應(yīng)速度快,可以滿足溫、濕度的控制。同時(shí),通過(guò)LED數(shù)碼管直觀的顯示通過(guò)控制系統(tǒng)后的溫、濕度值,當(dāng)出現(xiàn)異常現(xiàn)象時(shí),通過(guò)報(bào)警裝置發(fā)出警告,及時(shí)得到處理,從而滿足現(xiàn)場(chǎng)需要,具有廣泛的應(yīng)用前景。
本文創(chuàng)新點(diǎn):采用單片機(jī)AT89C51性價(jià)比高,溫度DS18B20轉(zhuǎn)化溫度簡(jiǎn)潔,整個(gè)閉環(huán)控制系統(tǒng)通過(guò)PID設(shè)置的參數(shù),根據(jù)單片機(jī)自動(dòng)修正啟動(dòng)溫、濕度控制裝置,調(diào)整滿足現(xiàn)場(chǎng)需要,同時(shí)可通過(guò)數(shù)碼顯示,清楚的觀測(cè)到溫、濕度值,超過(guò)限定值進(jìn)行報(bào)警處理。此套裝置實(shí)施方便、可靠。
參考文獻(xiàn):
[1]劉攀,俞杰.基于單片機(jī)的溫度測(cè)控系統(tǒng)[J]. 蘭州交通大學(xué)學(xué)報(bào),2005,6-12: 103-106.
[2]夏曉南.基于單片機(jī)的溫箱溫度和濕度的控制[J].現(xiàn)代電子技術(shù),2005,215-24: 117-118.
[3]趙娜,趙剛.基于51單片機(jī)的溫度測(cè)量系統(tǒng)[J].微計(jì)算機(jī)信息,2007,23-1:146-148.
[4]馮建華,趙亮.單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)與產(chǎn)品開發(fā)[M].北京:人民郵電出版社 2004
[5]譚浩強(qiáng).C語(yǔ)言程序設(shè)計(jì)[M].北京:清華大學(xué)出版社 1999
[6]王德玉等.智能井控系統(tǒng)的控制研究[J].西南石油大學(xué)學(xué)報(bào),2006,28-4:97-100.
作者簡(jiǎn)介:李俊, 男,1981年12生, 漢族,西南石油大學(xué)機(jī)電工程學(xué)院碩士研究生。研究方向:自適應(yīng)控制系統(tǒng)
作者簡(jiǎn)介:張曉東,男,1959年生,漢族,教授,西南石油大學(xué)機(jī)電工程學(xué)院,從事石油鉆采設(shè)備新技術(shù)、現(xiàn)代設(shè)計(jì)理論與方法的教學(xué)及石油鉆采工具,特別是井下動(dòng)力鉆具和井下工具的研發(fā)工作。