張蓉蓉
(江蘇財(cái)經(jīng)職業(yè)技術(shù)學(xué)院機(jī)械與電子工程系,江蘇 淮安223001)
近年來(lái),隨著民眾對(duì)反季節(jié)農(nóng)產(chǎn)品需求量的逐步增大,越來(lái)越多的農(nóng)戶開(kāi)始采用溫室栽培的方法進(jìn)行農(nóng)作物栽培。溫室栽培技術(shù)的核心是控溫,傳統(tǒng)的方法多為手工作業(yè),不僅工作量大,且實(shí)時(shí)性、精確度和有效性都很差。本文研究了一種基于STC89C52單片機(jī)的溫控系統(tǒng)設(shè)計(jì)方法。系統(tǒng)采用STC89C52作為處理器,借助智能溫度傳感器DS18B20采集大棚內(nèi)溫度信號(hào),并轉(zhuǎn)變成數(shù)字信號(hào)輸入單片機(jī)內(nèi),實(shí)現(xiàn)單片機(jī)對(duì)溫室大棚內(nèi)溫度的控制。調(diào)試結(jié)果表明,本設(shè)計(jì)方案可以滿足系統(tǒng)控溫速度快、實(shí)時(shí)性強(qiáng)和精確度高的要求。
本系統(tǒng)用于實(shí)現(xiàn)對(duì)大棚內(nèi)環(huán)境溫度的智能調(diào)節(jié),各種植物要求有不同的生長(zhǎng)環(huán)境,因此,本系統(tǒng)需要有一定的設(shè)置范圍。如基于某種植物,其生長(zhǎng)環(huán)境的室溫范圍為20~30℃。要求控制系統(tǒng)在溫度越出設(shè)定的范圍時(shí),蜂鳴器啟動(dòng)并發(fā)出警報(bào)聲,且令相應(yīng)繼電器動(dòng)作,開(kāi)啟設(shè)備,調(diào)控棚內(nèi)溫度,使室溫保持在設(shè)定的范圍內(nèi)不變。系統(tǒng)硬件結(jié)構(gòu)框圖如圖1所示。系統(tǒng)上電工作后,首先由微處理將命令寫(xiě)入溫度傳感器,隨后溫度傳感器開(kāi)始轉(zhuǎn)換數(shù)據(jù),數(shù)據(jù)轉(zhuǎn)換后再通過(guò)CPU來(lái)進(jìn)行處理,處理后的數(shù)據(jù)結(jié)果將顯示到數(shù)碼管上,與此同時(shí),系統(tǒng)還將完成對(duì)溫度范圍的判斷,并針對(duì)判斷結(jié)果作出相應(yīng)的動(dòng)作。
圖1 溫控系統(tǒng)硬件結(jié)構(gòu)框圖
系統(tǒng)采用STC公司生產(chǎn)的單片機(jī)STC89C52作為處理器。該芯片沿用了經(jīng)典的MCS-51內(nèi)核,并在其基礎(chǔ)上做了很多改進(jìn):指令代碼完全兼容傳統(tǒng)8051單片機(jī);12時(shí)鐘/機(jī)器周期和6時(shí)鐘/機(jī)器周期可以任意選擇;具有8 kB可編程Flash存儲(chǔ)器和512 B RAM;無(wú)需專用編程器或?qū)S梅抡嫫?,可直接使用串口下載。相較于傳統(tǒng)的51單片機(jī),89C52綜合性能更高。本系統(tǒng)需要較高的處理速度和較強(qiáng)的抗干擾性能,STC89C52作為一款高性能的CMOS 8位微控制器可以滿足這一要求。
對(duì)于單片機(jī)系統(tǒng)而言,合理的片內(nèi)及外圍電路設(shè)置,是確保芯片核心電路能夠穩(wěn)定工作的前提和基礎(chǔ)。因此在設(shè)計(jì)本系統(tǒng)時(shí),應(yīng)先對(duì)STC89C52芯片的外圍電路進(jìn)行合理的設(shè)計(jì)。
晶振部分設(shè)計(jì)是一個(gè)十分關(guān)鍵的環(huán)節(jié),其性能的好壞將直接影響到系統(tǒng)的穩(wěn)定性和可靠性。本系統(tǒng)選用12 MHz、12分頻時(shí)的晶體振蕩器,機(jī)器周期為1μs。電路圖如圖2所示。
傳統(tǒng)溫控系統(tǒng)電路中,廣泛采用的是通過(guò)熱電偶、熱敏電阻或PN結(jié)測(cè)溫,經(jīng)過(guò)相應(yīng)的信號(hào)處理電路,轉(zhuǎn)換成A/D轉(zhuǎn)換器能接收的模擬量,再經(jīng)A/D轉(zhuǎn)換最終送入單片機(jī)進(jìn)行處理,完成監(jiān)控。但是這類方式存在電路復(fù)雜、易受干擾、較難操控、不夠精準(zhǔn)等諸多缺陷。鑒于上述因素,本設(shè)計(jì)采用DALLAS半導(dǎo)體公司生產(chǎn)的單線智能溫度傳感器DS18B20作為溫度檢測(cè)器。該傳感器不需要借助A/D轉(zhuǎn)換,可以直接將所采集的信號(hào)進(jìn)行模/數(shù)轉(zhuǎn)換,輸出數(shù)字量,且易與單片機(jī)接口,使用非常方便。具體電路如圖3所示。
圖2 晶振電路
圖3 溫度采集電路
顯示溫度數(shù)據(jù)是系統(tǒng)功能設(shè)計(jì)的重要環(huán)節(jié)。根據(jù)LED數(shù)碼管的驅(qū)動(dòng)方式不同,分為靜態(tài)和動(dòng)態(tài)顯示2種情況。靜態(tài)顯示是指每個(gè)數(shù)碼管的每一個(gè)筆段型電極都需要控制元件進(jìn)行同時(shí)驅(qū)動(dòng),其優(yōu)點(diǎn)是對(duì)比度好、響應(yīng)快、顯示亮度高等,缺點(diǎn)是占用I/O口多、能耗高、在使用時(shí)需要加入驅(qū)動(dòng)器進(jìn)行驅(qū)動(dòng)、應(yīng)用受限制。動(dòng)態(tài)顯示是單片機(jī)應(yīng)用領(lǐng)域最為常見(jiàn)的顯示方式,動(dòng)態(tài)顯示中,數(shù)碼管將依次選通,單片機(jī)通過(guò)輸出字形碼,在數(shù)碼管上顯示出來(lái),并不斷輪流刷新。動(dòng)、靜態(tài)顯示效果是相同的,但是動(dòng)態(tài)顯示能充分節(jié)約I/O口,且能耗低。
本設(shè)計(jì)選用了4位LED數(shù)碼管作為顯示設(shè)備,采用動(dòng)態(tài)顯示方式驅(qū)動(dòng)LED數(shù)碼管。電路連接如圖4所示。
復(fù)位電路設(shè)計(jì)采用自動(dòng)復(fù)位和人工復(fù)位相結(jié)合的方案。人工復(fù)位時(shí),需使RST/VPD變?yōu)楦唠娖?,按下?fù)位按鈕,電容經(jīng)電阻快速放電,后人工恢復(fù)復(fù)位按鈕,此時(shí)電容經(jīng)由電阻充電,使RST/VPD由高電平恢復(fù)為低電平。復(fù)位電路如圖5所示。
圖4 顯示電路
圖5 復(fù)位電路
(1)按鍵電路主要設(shè)計(jì)有3個(gè)功能鍵:一個(gè)功能鍵S1調(diào)控上限溫度,另一個(gè)功能鍵S2控制下限溫度,第三個(gè)鍵S3是確認(rèn)鍵。
(2)使用P3.0、P3.1、P3.3與鍵盤(pán)電路連接,用以檢測(cè),設(shè)置R13、R14、R15作為上拉電阻。
(3)設(shè)置電容C13、C14、C15的用途是硬件去按鍵抖動(dòng)。按鍵電路如圖6所示。
圖6 按鍵電路
當(dāng)溫度低于設(shè)定溫度時(shí),蜂鳴器啟動(dòng),發(fā)出報(bào)警,繼電器對(duì)加熱器進(jìn)行控制,使其升溫,具體由單片機(jī)的P1.3口控制,此時(shí),電磁繼電器KA1動(dòng)作,觸點(diǎn)打到左邊,達(dá)到一定溫度停止加熱。當(dāng)溫度超過(guò)設(shè)定范圍時(shí),蜂鳴器啟動(dòng),發(fā)出報(bào)警,繼電器對(duì)通風(fēng)器進(jìn)行控制,由P1.4口控制KA2動(dòng)作,由風(fēng)機(jī)對(duì)棚內(nèi)進(jìn)行通風(fēng)降溫,當(dāng)溫度達(dá)到預(yù)定范圍,由電磁繼電器KA2控制停止通風(fēng)作業(yè)。
通過(guò)上述方案,可以使溫室大棚內(nèi)的溫度保持在設(shè)定范圍內(nèi),實(shí)現(xiàn)對(duì)溫室大棚溫度的控制。溫度控制電路如圖7所示。
存儲(chǔ)電路是系統(tǒng)中相對(duì)獨(dú)立的電路模塊。STC89C52芯片內(nèi)部沒(méi)有在關(guān)電后繼續(xù)存儲(chǔ)數(shù)據(jù)的存儲(chǔ)器,但系統(tǒng)中又有大量采集到的數(shù)據(jù)需要被保存,要解決這一矛盾,設(shè)計(jì)系統(tǒng)時(shí)就需要增加一個(gè)非易失存儲(chǔ)器,即在系統(tǒng)外擴(kuò)充一個(gè)存儲(chǔ)電路,以實(shí)現(xiàn)在給系統(tǒng)通電后自動(dòng)將用戶設(shè)定的溫度限值由外部存儲(chǔ)器加載到單片機(jī)中,使得程序可以在系統(tǒng)內(nèi)部高速、正常運(yùn)行。
本設(shè)計(jì)選用了能夠在1.8~6 V范圍內(nèi)進(jìn)行擦寫(xiě)的存儲(chǔ)器24C02。電路連接如圖8所示。
圖7 溫度控制電路
圖8 存儲(chǔ)電路
結(jié)合控制系統(tǒng)程序采用匯編語(yǔ)言編寫(xiě)、主程序中采用定時(shí)查詢方式對(duì)溫度信號(hào)進(jìn)行采樣等軟件設(shè)計(jì)方案,對(duì)硬件系統(tǒng)進(jìn)行調(diào)試,實(shí)驗(yàn)結(jié)果證實(shí),本系統(tǒng)可以實(shí)現(xiàn)預(yù)期的信號(hào)采集、數(shù)據(jù)處理、數(shù)據(jù)存儲(chǔ)以及數(shù)據(jù)傳輸?shù)裙δ堋?/p>
本文研究了一種以單片機(jī)為核心的智能溫度控制系統(tǒng),圍繞單片機(jī)STC89C52的控制與應(yīng)用技術(shù)進(jìn)行深入探討,針對(duì)農(nóng)作物生長(zhǎng)過(guò)程中對(duì)溫度控制的需求,設(shè)計(jì)完成了一種溫室大棚室溫智能調(diào)控系統(tǒng)。硬件電路選用了單片機(jī)STC89C52和智能溫度傳感器DS18B20作為系統(tǒng)硬件的主要芯片。通過(guò)溫度傳感器采集大棚內(nèi)溫度信號(hào),并轉(zhuǎn)變成數(shù)字信號(hào)輸入單片機(jī)內(nèi),實(shí)現(xiàn)單片機(jī)對(duì)溫室大棚內(nèi)溫度的控制。調(diào)試結(jié)果驗(yàn)證了設(shè)計(jì)方案的有效性。
[1]李東,李文哲.采用單片機(jī)進(jìn)行離子電流燃燒診斷控制[J].東北農(nóng)業(yè)大學(xué)學(xué)報(bào),2008(11)
[2]李云陽(yáng).基于單片機(jī)的超聲測(cè)距系統(tǒng)設(shè)計(jì)[J].拖拉機(jī)與農(nóng)用運(yùn)輸車,2010(5)