新疆大學(xué)電氣工程學(xué)院 梁 露 文 龍 江 川 尹純亞 何 山 楊建庭
?
基于單片機(jī)的封閉空間溫、濕度控制系統(tǒng)
新疆大學(xué)電氣工程學(xué)院 梁 露 文 龍 江 川 尹純亞 何 山 楊建庭
【摘要】封閉空間的溫、濕度自動(dòng)控制是影響工農(nóng)業(yè)發(fā)展的重要因素。以蔬菜大棚為例,研究把AT89C51單片機(jī)作為主控制器,以溫度傳感器DS18B20和集成濕度傳感器IH3605為主要器件的封閉空間溫、濕度控制系統(tǒng)。該設(shè)計(jì)可為生物生長(zhǎng)提供合適的環(huán)境,滿足作物高產(chǎn)的要求。設(shè)計(jì)充分考慮了性價(jià)比因素,選用了價(jià)低、性能穩(wěn)定的器件,最終通過(guò)單片機(jī)實(shí)現(xiàn)了對(duì)空間溫、濕度的控制要求。
【關(guān)鍵詞】AT89C51單片機(jī);傳感器;溫、濕度控制;輸出顯示
人們對(duì)生活品質(zhì)的要求越來(lái)越高,培植性狀優(yōu)良的作物,成為研究的熱點(diǎn)。食用菌、蔬菜花卉、生物實(shí)驗(yàn)室和畜禽棚圈等場(chǎng)所,對(duì)溫、濕度要求頗為嚴(yán)格,基于單片機(jī)的封閉空間溫、濕度控制系統(tǒng)可較好地解決此類問(wèn)題。目前常規(guī)的溫、濕度控制設(shè)計(jì),對(duì)溫濕度測(cè)量,較多采用熱敏電阻和濕敏電容(屬傳統(tǒng)的模擬式傳感器),還需設(shè)計(jì)信號(hào)調(diào)制電路,并經(jīng)由較復(fù)雜的校準(zhǔn)和標(biāo)定,測(cè)量精度難保證,且成本較高。本文設(shè)計(jì)的溫、濕度控制系統(tǒng),可給生物提供穩(wěn)定適宜的溫、濕度環(huán)境,滿足生產(chǎn)的需求。系統(tǒng)充分考慮了經(jīng)濟(jì)性和穩(wěn)定性,最終選用C51單片機(jī)來(lái)實(shí)現(xiàn)對(duì)溫、濕度的控制。
大量科學(xué)實(shí)驗(yàn)和實(shí)踐過(guò)程證明,環(huán)境指標(biāo)的調(diào)控對(duì)作物增產(chǎn)的作用顯著,只有在適宜的生長(zhǎng)環(huán)境下作物才能充分發(fā)揮高產(chǎn)潛力。本系統(tǒng)所要完成的任務(wù):(1)通過(guò)傳感器實(shí)時(shí)、準(zhǔn)確地測(cè)量和顯示環(huán)境溫、濕度值;(2)在溫度不滿足要求時(shí)進(jìn)行相應(yīng)的調(diào)節(jié)和控制;(3)通過(guò)采集溫、濕度值,準(zhǔn)確判斷設(shè)定值與采樣值間的差別,及時(shí)啟動(dòng)報(bào)警裝置。
2.1 系統(tǒng)的功能要求
系統(tǒng)實(shí)現(xiàn)的功能:(1)溫室大棚溫、濕度指標(biāo)的實(shí)時(shí)采集,由單片機(jī)對(duì)采集的溫濕度值進(jìn)行循環(huán)檢測(cè)、數(shù)據(jù)處理、顯示。(2)實(shí)現(xiàn)溫濕度越限及時(shí)報(bào)警,并啟動(dòng)控制系統(tǒng)調(diào)節(jié)溫度。以大棚辣椒為例,生長(zhǎng)溫度最高為350C,本系統(tǒng)要求當(dāng)溫度高于260C時(shí),電機(jī)轉(zhuǎn)動(dòng)排風(fēng)降溫,溫度高于350C,喇叭實(shí)時(shí)報(bào)警,電機(jī)全速轉(zhuǎn)動(dòng)排風(fēng),控制溫度;濕度低于65%時(shí),實(shí)時(shí)報(bào)警,打開(kāi)增濕裝置(水幕),實(shí)現(xiàn)濕度控制。
2.2 系統(tǒng)的組成
以單片機(jī)為核心器件,溫濕度傳感器為測(cè)量元件,采用溫濕度測(cè)量、通信和控制技術(shù),組成智能溫濕度測(cè)控系統(tǒng)(如圖1所示),包括:溫濕度測(cè)量電路,顯示電路,報(bào)警電路,溫濕度控制電路。選用的主要元件:?jiǎn)纹瑱C(jī)、溫度傳感器、集成濕度傳感器、降溫裝置(風(fēng)扇)、升溫裝置(加熱器)、増濕裝置(水幕)、報(bào)警裝置(蜂鳴器)等。
圖1 溫度控制系統(tǒng)組成
2.3 系統(tǒng)的工作原理
系統(tǒng)以單片機(jī)AT89C51為核心,采用C語(yǔ)言編程,核心是溫、濕度控制,由單片機(jī)AT89C51、風(fēng)扇、加濕加熱設(shè)備、報(bào)警裝置組成。AT89C51為中央控制器,負(fù)責(zé)中央運(yùn)算和控制,協(xié)調(diào)系統(tǒng)各模塊工作。
溫度模塊:由DS18B20溫度傳感器采集數(shù)據(jù),AT89C51單片機(jī)進(jìn)行數(shù)據(jù)處理,數(shù)碼管顯示溫度,延時(shí)程序控制步進(jìn)電機(jī)轉(zhuǎn)速。當(dāng)室溫低于26℃時(shí),電機(jī)和喇叭均不工作;當(dāng)室溫介于26℃和35℃之間時(shí),溫度傳感器將產(chǎn)生的數(shù)字信號(hào)傳輸給單片機(jī),單片機(jī)通過(guò)I/O端口輸出信號(hào)給數(shù)碼管顯示,同時(shí)驅(qū)動(dòng)變頻器。變頻器控制電機(jī)開(kāi)始運(yùn)轉(zhuǎn);當(dāng)室溫高于35℃時(shí),單片機(jī)經(jīng)過(guò)判斷啟動(dòng)蜂鳴器報(bào)警,控制變頻器加大輸出頻率,使電機(jī)加速運(yùn)轉(zhuǎn),實(shí)現(xiàn)加速降溫的目的。當(dāng)室溫低于作物適宜生長(zhǎng)下限時(shí),溫度傳感器還可經(jīng)單片機(jī)啟動(dòng)加熱裝置,對(duì)室溫進(jìn)行提升。
濕度模塊:當(dāng)濕度小于65%時(shí),IH3605集成濕度傳感器從I/O端口將信號(hào)傳給單片機(jī),由延時(shí)程序控制增濕裝置工作,增加濕度,同時(shí)控制蜂鳴器工作發(fā)出警報(bào);當(dāng)濕度增加為80%時(shí),傳感器將信號(hào)傳給單片機(jī),控制增濕裝置停止工作。
圖3 仿真連接圖
3.1 AT89C51單片機(jī)
單片機(jī)AT89C51系統(tǒng)帶有4K字節(jié)閃存器,128字節(jié)內(nèi)部RAM,32個(gè)I/O口線,2個(gè)16位定時(shí)/計(jì)數(shù)器,1個(gè)全雙工串行通信口,1個(gè)5向量?jī)杉?jí)中斷,時(shí)鐘電路及片內(nèi)振蕩器,具有較低的電壓、高性能的8通道微處理系統(tǒng)的優(yōu)點(diǎn)。閃存可擦除,對(duì)輸入系統(tǒng)的數(shù)據(jù),采用高精度的工業(yè)化存儲(chǔ)系統(tǒng),完成單片機(jī)數(shù)據(jù)的系統(tǒng)嵌入。
3.2 測(cè)溫控制電路
DSl8B20傳感器是支持“單總線”接口方式的數(shù)字式溫度傳感器,可直接讀取被測(cè)環(huán)境的溫度值。它有TO-92、TSOC、SOIC多種封裝形式,可適應(yīng)不同的環(huán)境需求。其溫度測(cè)量范圍是-55—1250C,精度為0.50C,可通過(guò)對(duì)封閉空間溫度總線的數(shù)字化控制,提高系統(tǒng)抗干擾能力。
傳統(tǒng)系統(tǒng)通過(guò)將模擬信號(hào)遠(yuǎn)距離采樣并A/D轉(zhuǎn)換測(cè)溫,須采取措施解決由長(zhǎng)線傳輸、多點(diǎn)測(cè)量切換及放大電路零漂等造成的誤差補(bǔ)償,才可獲得較高測(cè)溫精度。DS18B20數(shù)字溫度傳感器測(cè)量溫度,全數(shù)字化的輸出信號(hào),便于單片機(jī)處理及控制,省去了傳統(tǒng)測(cè)溫A/D轉(zhuǎn)換等許多外圍電路。
DS18B20集成溫度控制電路封裝如圖2,GND為接地端,DQ是數(shù)據(jù)的輸入和輸出引腳,可采用與DQ相連的方式為外界供電;VD為可選引腳,當(dāng)電路工作在寄生電源狀態(tài)時(shí),須接地。讀取或?qū)懭隓S18B20僅需一根總線,需外接一個(gè)約4.7的上拉電阻,當(dāng)總線閑置時(shí),其狀態(tài)為高電平。DS18B20是溫度-電流傳感器,抗干擾能力較強(qiáng)。
圖2 DS18B20控制電路
溫度控制系統(tǒng)還包括風(fēng)扇和加熱裝置。溫度傳感器將測(cè)量到的溫度信號(hào)轉(zhuǎn)變?yōu)閿?shù)字信號(hào)后,經(jīng)變頻器變頻,可滿足電機(jī)和加熱裝置的啟動(dòng)要求,控制溫度。
3.3 濕度的測(cè)量及控制電路
系統(tǒng)采用IH3605集成濕度傳感器,內(nèi)部集成了調(diào)理信號(hào)電路,多層的獨(dú)特結(jié)構(gòu)可抵抗塵埃、濕氣、油、臟物和其他物質(zhì)的侵蝕,具有線性度好、精度高、輸出電壓范圍大及互換性強(qiáng)等優(yōu)點(diǎn),測(cè)濕系統(tǒng)無(wú)需信號(hào)放大和調(diào)整,可直接進(jìn)行A/D轉(zhuǎn)換。
濕度控制系統(tǒng)除濕度傳感器外,還包括水幕等設(shè)備。
4.1 軟件仿真
圖3為單片機(jī)與溫度傳感器DS18B20、顯示器等的連接圖。傳感器通過(guò)變頻器控制電機(jī)轉(zhuǎn)動(dòng),限于篇幅,此處只給出溫度控制電路。
通過(guò)軟件仿真,證明設(shè)計(jì)可按要求控制封閉空間溫度,實(shí)驗(yàn)調(diào)試驗(yàn)證了系統(tǒng)的正確性。
4.2 實(shí)物調(diào)試
在軟件的調(diào)試過(guò)程中,遇到了很多問(wèn)題,如數(shù)碼管有共陰極和共陽(yáng)極之分,不同類型的數(shù)碼管,電路圖連線不同,連線錯(cuò)誤將導(dǎo)致無(wú)法顯示溫度值;步進(jìn)電機(jī)要由ULN2003A晶體管驅(qū)動(dòng),不能直接由P1驅(qū)動(dòng);使用Keil C51導(dǎo)出文件,需要導(dǎo)出.hex文件再下載到單片機(jī)內(nèi),才能驅(qū)動(dòng)單片機(jī)運(yùn)行所編程序。
經(jīng)不斷改進(jìn),調(diào)試結(jié)果如圖4和圖5所示,電機(jī)運(yùn)行狀況符合程序要求:在26℃以下,電機(jī)和喇叭不工作,溫度顯示隨室溫同步變化;室溫在26℃~35℃之間時(shí),電機(jī)開(kāi)始工作,喇叭不工作;室溫在35℃以上時(shí),步進(jìn)電機(jī)轉(zhuǎn)速加快,喇叭開(kāi)始工作。
由C語(yǔ)言編寫系統(tǒng)軟件控制程序,易于模塊化,生成的代碼質(zhì)量高、可讀性好、可移植性強(qiáng)。
5.1 溫度程序總流程
圖6為溫度程序總體流程圖。
圖4 溫度顯示調(diào)試
圖5 電路調(diào)試
圖6 溫度程序總流程圖
單片機(jī)初始化,調(diào)用溫度模塊進(jìn)行數(shù)據(jù)采集,經(jīng)轉(zhuǎn)換程序,將十六進(jìn)制數(shù)轉(zhuǎn)換成十進(jìn)制數(shù),查表輸出數(shù)碼管顯示,根據(jù)判斷語(yǔ)句調(diào)整電機(jī)轉(zhuǎn)速,控制喇叭運(yùn)行。
運(yùn)用主函數(shù)調(diào)用各個(gè)模塊,用get_temperature命令調(diào)用溫度傳感器,調(diào)用數(shù)碼管顯示程序display(temp)進(jìn)行實(shí)時(shí)室溫顯示,if判斷語(yǔ)句對(duì)檢測(cè)的室溫進(jìn)行大小對(duì)比,根據(jù)返回值確定是否驅(qū)動(dòng)電機(jī)和蜂鳴器。
void main()
{
ds_change();
......
......
{get_temperature();
display(temp);
......
......
if(get_temperature()>260&&get_temperature()<350)
......
......
P1=table2[i];
......
......
beep=1;
}}
濕度控制系統(tǒng)同理。
5.2 數(shù)碼管顯示程序
數(shù)碼管通電,延時(shí)等待,DS18b20采集的數(shù)據(jù)在單片機(jī)進(jìn)行轉(zhuǎn)換,查表輸入相應(yīng)地址數(shù)據(jù),延時(shí)等待,輸入顯示數(shù)據(jù)。
數(shù)碼管由八段組成(A,B,C,D,E,F,G,DP),即八個(gè)發(fā)光二極管,因發(fā)光二極管的導(dǎo)通方向一定(導(dǎo)通電壓一般取1.7V),所以八個(gè)發(fā)光二極管的公共端分兩種:分別接地的共陰極數(shù)碼管或接+5V的共陽(yáng)極數(shù)碼管,其中每段均有截止和導(dǎo)通發(fā)光兩種狀態(tài),分別對(duì)應(yīng)0、1兩種狀態(tài)。本系統(tǒng)選用共陰極數(shù)碼管。即位選為低電平(0),選中數(shù)碼管。
5.3 步進(jìn)電機(jī)、喇叭驅(qū)動(dòng)程序設(shè)計(jì)
步進(jìn)電機(jī)驅(qū)動(dòng)由單片機(jī)進(jìn)行調(diào)用,P1口接步進(jìn)電機(jī),采用的為兩相四線步進(jìn)電機(jī),延時(shí)程序delay(n)控制電機(jī)轉(zhuǎn)速。
void delay(int z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=115;y>0;y--)
......
...... }
在不同溫度時(shí),通過(guò)控制delay(n)的n值來(lái)進(jìn)行轉(zhuǎn)速控制。
單片機(jī)對(duì)喇叭的驅(qū)動(dòng),在if語(yǔ)句進(jìn)行判斷后,滿足條件,則單片機(jī)驅(qū)動(dòng)P2^3口,輸出高電平,驅(qū)動(dòng)喇叭工作。
通過(guò)基于AT89C51單片機(jī)的控制系統(tǒng),對(duì)溫、濕度指標(biāo)進(jìn)行監(jiān)測(cè)和調(diào)控,全部過(guò)程由單片機(jī)系統(tǒng)自動(dòng)完成,能對(duì)作物所需的特定溫、濕度進(jìn)行調(diào)控,滿足生長(zhǎng)需要。設(shè)計(jì)具有較大的靈活性,可通過(guò)軟件設(shè)置修改參數(shù),達(dá)到對(duì)各溫度段的控制,以滿足不同生物的生長(zhǎng)要求,適用于畜禽圈舍、食用菌栽培、蔬菜花卉生產(chǎn)和微生物培養(yǎng)等場(chǎng)合。系統(tǒng)的控制精度高、成本低,也為下一步在此基礎(chǔ)上開(kāi)發(fā)功能更強(qiáng)大和復(fù)雜的系統(tǒng),提供了極大的拓展空間。
參考文獻(xiàn)
[1]裴清華.基于AT89C51單片機(jī)的蔬菜大棚控制系統(tǒng)[J].計(jì)算機(jī)與現(xiàn)代化,2010,173(1):4-6.
[2]林曌.基于單片機(jī)的溫度濕度監(jiān)控系統(tǒng)[J].科技視界, 2014,9(6):182-183.
[3]易麗華,黃俊.基于AT89C51單片機(jī)與DS18B20的溫度測(cè)量系統(tǒng)[J].電子與封裝,2009,9(5):68-70.
[4]易順明,趙海蘭,袁然.基于單片機(jī)的大棚溫濕度控制系統(tǒng)設(shè)計(jì)[J].現(xiàn)代電子技術(shù),2011,8(7):131-134.
[5]郭天祥.新概念51單片機(jī)C語(yǔ)言教程[M].電子工業(yè)出版社,2011.
[6]李朝青,劉艷玲.單片機(jī)原理及接口技術(shù)[M].北京航空航天大學(xué)出版社,2013.
梁露(1993—),女,遼寧朝陽(yáng)人,大學(xué)本科,現(xiàn)就讀于新疆大學(xué)電氣工程學(xué)院。
何山(1974—),江蘇金壇人,博士,副教授,主要研究方向:潔凈能源發(fā)電技術(shù)。
通訊作者:
作者簡(jiǎn)介:
基金項(xiàng)目:自治區(qū)級(jí)大學(xué)生創(chuàng)新創(chuàng)業(yè)訓(xùn)練計(jì)劃項(xiàng)目(201510755214)、高等學(xué)校博士學(xué)科點(diǎn)專項(xiàng)科研基金聯(lián)合資助項(xiàng)目(20136501120003)、新疆大學(xué)電機(jī)學(xué)精品課程建設(shè)項(xiàng)目資助。