嚴(yán)洪立,屈 ,梅容芳
(宜賓職業(yè)技術(shù)學(xué)院,四川 宜賓 644003)
作為一種物理量,溫度給人最直觀的感受就是冷、熱,反映了分子熱運(yùn)動(dòng)的劇烈程度。任何農(nóng)作物都生活在具有一定溫度的外界環(huán)境之中,其生理活動(dòng)、生化反應(yīng)等都受溫度的影響。通常,其生理生化反應(yīng)隨溫度的升高而加快、降低而變慢,體現(xiàn)為溫度升高,生長(zhǎng)發(fā)育加速;溫度降低,生長(zhǎng)發(fā)育遲緩。當(dāng)溫度高于或低于農(nóng)作物所能忍受的溫度范圍時(shí),將物極必反,造成其生長(zhǎng)緩慢、停止,發(fā)育受阻,甚至死亡。因此,農(nóng)作物種植應(yīng)根據(jù)作物特點(diǎn),調(diào)節(jié)好作物生長(zhǎng)環(huán)境溫度,為其提供最適宜的種植溫度。
溫度的變化具有季節(jié)性和晝夜性,夏季溫度高,農(nóng)作物產(chǎn)量品類多;冬季溫度低,農(nóng)作物產(chǎn)量少品類少,而溫室大棚的出現(xiàn)降低了溫度季節(jié)性對(duì)農(nóng)作物的影響。溫室大棚起源于羅馬的云母覆蓋,最早運(yùn)用于促進(jìn)黃瓜的早熟[1]。作為世界第二大農(nóng)產(chǎn)品出口國(guó)的荷蘭,土地資源稀缺,但廣泛運(yùn)用溫室大棚種植技術(shù),其玻璃溫室面積高達(dá)16.5萬畝,約占全世界溫室總面積的1/4,提高了農(nóng)業(yè)產(chǎn)值,做到了花卉、蔬果出口量居世界第一,其中,溫室蔬菜占蔬菜生產(chǎn)總值的3/4。
我國(guó)溫室大棚種植歷史悠久,最早可追溯至秦朝時(shí)期,但沒有得到大規(guī)模的升級(jí)與推廣。自20世紀(jì)70年代開始,我國(guó)大力引進(jìn)推廣新型溫室大棚,溫室農(nóng)業(yè)得到了快速發(fā)展,溫室總種植面積已躍居世界第一,但受限于規(guī)模、成本等制約,現(xiàn)代農(nóng)業(yè)技術(shù)應(yīng)用不足。單作業(yè)溫室大棚農(nóng)戶無法承擔(dān)并使用大棚綜合因子測(cè)控系統(tǒng),大棚種植主要靠人工維護(hù),如溫度數(shù)據(jù)的采集依賴人體感受、溫度計(jì)測(cè)量,干預(yù)多且費(fèi)時(shí)、費(fèi)力,效率低,不利于充分發(fā)揮溫室大棚的優(yōu)點(diǎn)、為農(nóng)作物提供適宜的生長(zhǎng)環(huán)境從而提高農(nóng)作物產(chǎn)量。因此,需要一種低成本、高效率的大棚溫度采集系統(tǒng),幫助農(nóng)戶收集大棚各區(qū)域的溫度數(shù)據(jù),輔助分析作物生產(chǎn)環(huán)境數(shù)據(jù),改善農(nóng)作物種植方式,提高產(chǎn)量。
系統(tǒng)的結(jié)構(gòu)主要包含顯示模塊、控制模塊和多個(gè)溫度傳感器。其中,控制模塊采用單片機(jī)AT89C52作為中央處置器,負(fù)責(zé)處理與溫度傳感器的通信及溫度數(shù)據(jù)處理;顯示模塊為L(zhǎng)CD1602,作為人機(jī)交互界面呈現(xiàn),顯示溫度傳感器設(shè)備號(hào)及溫度數(shù)據(jù);溫度傳感器采用DS18B20,在空間內(nèi)布局多個(gè)傳感器,以總線方式向控制模塊傳遞溫度數(shù)據(jù)。系統(tǒng)框架如圖1所示。
圖1 系統(tǒng)框架
控制模塊的核心為AT89C52單片機(jī),主要為51單片機(jī)最小系統(tǒng),包含時(shí)鐘電路和復(fù)位電路。AT89C52為Atmel公司推出的8位低電壓、高性能微處理器,自帶8 k bytes的可擦寫Flash只讀程序存儲(chǔ)器和256 bytes的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器[2]。該單片機(jī)還兼容MCS-51指令系統(tǒng),具有中斷、定時(shí)器/計(jì)數(shù)器、UART等常用功能,價(jià)格低廉,滿足大部分簡(jiǎn)單的系統(tǒng)設(shè)計(jì)需求。
溫度傳感器是應(yīng)用最多的傳感器之一,主要功能是感知溫度的變化,并將其裝換為穩(wěn)定的信號(hào)輸出,品類繁多,可按測(cè)量方式和傳感器材料進(jìn)行劃分??紤]到大棚布線及電路設(shè)計(jì)簡(jiǎn)潔的實(shí)際,本系統(tǒng)采用美國(guó)DALLAS公司生產(chǎn)的單總線數(shù)字式溫度傳感器DS18B20[3],結(jié)構(gòu)簡(jiǎn)單,一體化設(shè)計(jì),僅有3個(gè)引腳,電路簡(jiǎn)潔,只需一個(gè)I/O數(shù)據(jù)線相連傳輸即可,且價(jià)格便宜,測(cè)量精度高,使用壽命長(zhǎng),既經(jīng)濟(jì)又實(shí)用。
由于大棚的空間范圍比較大,為了保證測(cè)量溫度的準(zhǔn)確性和有效性,需要對(duì)大棚內(nèi)多個(gè)區(qū)域的溫度進(jìn)行測(cè)量,在顯示模塊需要顯示多個(gè)數(shù)據(jù),而傳統(tǒng)數(shù)碼管能夠顯示的內(nèi)容有限,且不夠靈活,需要耗費(fèi)多個(gè)IO口,因此,本設(shè)計(jì)在顯示模塊采用LCD1602液晶顯示。LCD1602的芯片工作電壓在4.5~5.5 V,能夠顯示兩排,共32個(gè)字符,每個(gè)字符為5×8點(diǎn)陣,且能夠滾動(dòng)顯示,滿足系統(tǒng)對(duì)多個(gè)溫度數(shù)據(jù)靈活顯示功能。
系統(tǒng)電路中,控制模塊的XTAL1和XTAL2引腳接時(shí)鐘電路,為控制模塊提供穩(wěn)定的時(shí)鐘,RST引腳與復(fù)位電路相連,實(shí)現(xiàn)點(diǎn)擊輕觸開關(guān)復(fù)位;顯示模塊的VSS電源地引腳接地,VDD電源引腳接5 V電源,VEE液晶顯示偏壓引腳與滑動(dòng)變阻器相連,實(shí)現(xiàn)液晶偏壓調(diào)節(jié),其核心是3根控制線和數(shù)據(jù)線的連接,連接方式有直接控制方式和間接控制方式,這兩種連接方式區(qū)別在于間接方式比直接方式可節(jié)省4個(gè)I/O口和數(shù)據(jù)刷新耗時(shí)不同。考慮到溫度數(shù)據(jù)的刷新情況,本系統(tǒng)采用直接控制方式,將RS數(shù)據(jù)/命令選擇引腳與P2^0相連,RW讀/寫選擇引腳與P2^1相連,E使能信號(hào)引腳與P2^2相連,D0到D7數(shù)據(jù)引腳與P0接個(gè)上拉電阻后相連接;溫度傳感器A,B,C,D的VCC電源引腳接5 V電源,GND引腳接地,DQ數(shù)據(jù)引腳接上拉電阻后與P2^3相連。系統(tǒng)電路如圖2所示。
圖2 系統(tǒng)電路
經(jīng)查閱LCD1602的驅(qū)動(dòng)芯片數(shù)據(jù)手冊(cè)可知,在對(duì)LCD1602進(jìn)行編程時(shí),應(yīng)當(dāng)遵守讀寫時(shí)的序圖規(guī)則,并滿足基本的時(shí)序時(shí)間參數(shù)要求,RS,RW,E這3根控制線在不同的指令時(shí),應(yīng)遵守基本操作[4],具體如表1所示。在讀狀態(tài)時(shí),RS清0,RW置1,同時(shí),E應(yīng)保持高脈沖,即可從D0—D7引腳讀出狀態(tài)字;在讀數(shù)據(jù)時(shí),RS和RW都應(yīng)置1,E保持高脈沖,即可從D0—D7引腳讀出數(shù)據(jù);在寫命令時(shí),RS和RW都應(yīng)清0,E保持高脈沖,才能向D0—D7寫入命令;在寫數(shù)據(jù)時(shí),RS置1,RW
表1 LCD1602的4種基本操作
清0,E保持高脈沖,才能向D0—D7寫入數(shù)據(jù)。
由于DS18B20為單總線數(shù)據(jù)協(xié)議,因此,在每次操作時(shí),數(shù)據(jù)/命令的讀寫只能一位一位地傳輸,從DS18B20的數(shù)據(jù)手冊(cè)時(shí)序圖可知,在編程時(shí),需要先對(duì)DS18B20進(jìn)行初始化;在讀操作時(shí),先讀取一位數(shù)據(jù),再把數(shù)據(jù)左移操作,將數(shù)據(jù)拼接為一個(gè)字節(jié);在寫操作時(shí),先把數(shù)據(jù)最低位取出,發(fā)送后,再把數(shù)據(jù)右移,取最低位發(fā)送,直至8位數(shù)據(jù)發(fā)送完畢。每個(gè)DS18B20都有64位光刻ROM,類似人的身份證號(hào),具有唯一性。在單總線多路溫度傳感器采集時(shí),需要先讀出ROM序列號(hào),再將ROM序列號(hào)進(jìn)行匹配,匹配成功后,方可將對(duì)應(yīng)的傳感器溫度數(shù)據(jù)讀取出來。
系統(tǒng)的程序中,先初始化LCD1602,待液晶顯示初始化完成后,再初始化DS18B20,將DS18B20的ROM序列號(hào)與單總線上對(duì)應(yīng)的溫度傳感器匹配后,再讀取該溫度傳感器的溫度數(shù)據(jù),將其顯示在LCD1602液晶屏幕上,如此循環(huán),采集刷新,實(shí)現(xiàn)對(duì)大棚內(nèi)各區(qū)域溫度的實(shí)時(shí)采集顯示。系統(tǒng)程序的流程如圖3所示。
本系統(tǒng)在Proteus仿真軟件上進(jìn)行仿真驗(yàn)證,結(jié)果表明,系統(tǒng)設(shè)計(jì)方案可行,能夠?qū)崿F(xiàn)基于單總線對(duì)多路溫度傳感器數(shù)據(jù)處理顯示,實(shí)現(xiàn)對(duì)多點(diǎn)溫度測(cè)量,采集顯示的溫度精度為0.1 ℃,實(shí)時(shí)數(shù)據(jù)刷新,滿足溫室大棚對(duì)數(shù)據(jù)采集的需求;本系統(tǒng)利用51單片機(jī)最小系統(tǒng),LCD1602液晶顯示和DS18B20溫度傳感器實(shí)現(xiàn),設(shè)計(jì)電路簡(jiǎn)單,安裝調(diào)試簡(jiǎn)單,操作方便,界面簡(jiǎn)潔直觀,成本低廉,充分考慮了單作業(yè)溫室大棚種植農(nóng)戶的經(jīng)濟(jì)條件,符合農(nóng)戶的實(shí)際需求,具有一定的應(yīng)用價(jià)值。
圖3 系統(tǒng)程序的流程