基于51單片機(jī)的溫室測(cè)試系統(tǒng)
設(shè)施農(nóng)業(yè)是世界現(xiàn)代農(nóng)業(yè)發(fā)展的主要方向之一,我國(guó)農(nóng)業(yè)正處于從傳統(tǒng)也向高產(chǎn)、優(yōu)質(zhì)、高效為目的的現(xiàn)代化農(nóng)業(yè)轉(zhuǎn)化新階段,設(shè)施農(nóng)業(yè)是我國(guó)今后比較長(zhǎng)的時(shí)間內(nèi)農(nóng)業(yè)發(fā)展的個(gè)主要方向。
環(huán)境控制對(duì)果樹生產(chǎn)的重要作用已經(jīng)為國(guó)內(nèi)外大量的科學(xué)實(shí)驗(yàn)和生產(chǎn)的實(shí)踐所證實(shí)。只有在適宜的生長(zhǎng)環(huán)境下果疏才能充分發(fā)揮其高產(chǎn)潛力。多年的有關(guān)果樹生長(zhǎng)環(huán)境的研究,不儀知道了農(nóng)業(yè)生產(chǎn),也為溫室環(huán)境測(cè)控的研究提供了理論和依據(jù)。但如何利用傳感器技術(shù),白動(dòng)檢測(cè)技術(shù),通訊技術(shù),計(jì)算機(jī)技術(shù)的發(fā)展和溫室栽培的推廣研制出對(duì)溫室溫度,濕度,二氧化碳濃度的智能測(cè)控系統(tǒng),為果樹提供最佳的生長(zhǎng)環(huán)境,一直是農(nóng)業(yè)研究者面臨的重要課題。
雖然國(guó)外采用了全智能控制,但是他們的成本太高,不適合我國(guó)國(guó)情,國(guó)內(nèi)已有的日光溫室主要采用自然能源,雖然造價(jià)比較低,但過于簡(jiǎn)陋,只有少數(shù)實(shí)現(xiàn)了溫度、濕度、光照等單一因素的測(cè)控,不能滿足日益現(xiàn)代化的農(nóng)藝要求。本文研制一種價(jià)格比較適宜、擴(kuò)展性較好的多功能溫室智能測(cè)試系統(tǒng)。
1 系統(tǒng)組成及工作原理
本系統(tǒng)功能由硬件和軟件兩大部分協(xié)調(diào)完成,硬件部分主要完成各種傳感器信號(hào)的采集、轉(zhuǎn)換、各種信息的顯示等;軟件主要完成信號(hào)的處理及控制功能等。
其工作原理是89C51單片機(jī)一次查詢各傳感器的輸出信號(hào),然后89C51對(duì)輸入信號(hào)進(jìn)行相應(yīng)處理后通過顯示模塊44780輸出,同時(shí)還可輸出各種報(bào)警信號(hào)。
2 硬件構(gòu)成
該系統(tǒng)硬件主要包括以下幾個(gè)模塊:89C51主控模塊、傳感器模塊、A/D轉(zhuǎn)換器、擴(kuò)展、44780顯示模塊等。其中89C51主要完成外圍硬件的控制以及一些運(yùn)算功能,傳感器完成信號(hào)的采樣功能,A/D轉(zhuǎn)換器主要完成模/數(shù)的轉(zhuǎn)換、存儲(chǔ)器主要完成程序和數(shù)據(jù)的存儲(chǔ)、44780顯示模塊完成字符、數(shù)字的顯示功能。
主控模塊
系統(tǒng)采用ATMEL公司生產(chǎn)的AT89C51單片機(jī),它帶有4kB閃速式存儲(chǔ)器、128B內(nèi)存,最大工作頻率24MHz,同時(shí),具有32條輸入輸出線,16位定時(shí)/計(jì)數(shù)器,5個(gè)中斷源,1個(gè)串行口。
2.1 傳感器的選取
2.1.1 溫度傳感器
采用AD590集成溫度傳感器,此傳感器是電流型的,它的特性如表1所列。
測(cè)量地表溫與土溫也可以用AD590集成溫度傳感器。由于傳感器探頭要插入土中,所以要將傳感器及變換電路封裝在金屬探棒中。金屬探棒可以起到防水、防腐的作用。又因?yàn)榻饘俚膶?dǎo)熱性好,所以金屬探棒不會(huì)影響傳感器對(duì)溫度的測(cè)量。
2.1.2 濕度傳感器
采用IH3605電容式集成濕度傳感器。其輸出電壓較高且線性較好。尢需進(jìn)行信號(hào)放大和信號(hào)調(diào)整,可直接進(jìn)行A/D轉(zhuǎn)換。其特性表如表2所列。
2.1.3 光照強(qiáng)度傳感器
本系統(tǒng)選用北京林業(yè)大學(xué)生產(chǎn)的光量子傳感器,主要由感應(yīng)元件和匹配濾光片系統(tǒng)組成。感應(yīng)元件選用硅太陽能電池,在太陽輻射作用下產(chǎn)牛的光電流與輻射強(qiáng)度成線性關(guān)系。標(biāo)準(zhǔn)的硅光電池的光譜響應(yīng)在400nm-1100n。的范圍,峰值波長(zhǎng)為800nm。光量子傳感器是一種靈敏的藍(lán)色硅電池,在近紅外區(qū)域700nm-1100nm只有相當(dāng)?shù)偷捻憫?yīng),而在可見區(qū)域400~700nm比一股硅電池的響應(yīng)卻要高得多,峰值響應(yīng)在550~-650nm之間。光量子傳感器在光的照射下,輸山變化十分微弱的電流信號(hào)(約幾個(gè)微安)。所以光合有效輻射的檢測(cè)電路應(yīng)選用低漂移,共模抑制比高的集成運(yùn)算放大器。放大電路采用電流一電壓變換放大電路,如圖1所示。光電子傳感器的電氣特性如表3所列。
2.1.4 C02濃度傳感器
C02濃度傳感器選用紅外線氣敏傳感器。其測(cè)量范圍寬,達(dá)-2000ppm,檢測(cè)精度可達(dá)15%??梢赃x用這種方法來監(jiān)測(cè)溫室空氣中C02的濃度。
2.1.5 土壤水分傳感器
選用TDR-3型土壤水分傳感器。TDR-3土壤水分傳感器可測(cè)量土壤水分的體積百分比,與土壤本身的機(jī)理無關(guān),是目前國(guó)際上最流行的土壤水分測(cè)量方法。TDR-3型土壤水分傳感器是一款高精度、高靈敏度的測(cè)量土壤水分的傳感器。
2.2 多路開關(guān)CD4051
本系統(tǒng)選用了單端8通道模擬多路開關(guān)CD4051。它由電平位移電路,帶禁止端INH的8選1譯碼器和由該譯碼器對(duì)各個(gè)輸出分別加以控制的八個(gè)CMOS雙向模擬開關(guān)組成。其引腳如圖2所示。INH為高電平時(shí),八路通道全部不通。A、B、C分別為輸入選通地址端,0-7為八路模擬輸入信號(hào)端,COMMON端為被選通模擬信號(hào)的輸出端CD4051傳送的信號(hào)范圍從VFE到VDD。由于環(huán)境因子的采樣信號(hào)幅值為0~2V,所以將VEE端與Vss端相連并接地,VDD端接電源端Vcc,使得信號(hào)傳送范周為O-Vcc,即0~+5V,INH,A,B,C四端連接四根地址線,控制信號(hào)的選通,其真倩表見表4。選通的信號(hào)從COMMON端送到A/D電路。
2.2.1 通道的分配
七路環(huán)境因子的測(cè)量信號(hào)各占一個(gè)通道。通道分配如表5所列。
2.3 A/D轉(zhuǎn)換電路
MC14433采用8位數(shù)據(jù)輸出,轉(zhuǎn)換精度為1/2000,相當(dāng)于11位二進(jìn)制A/D轉(zhuǎn)換器的精度。它還具有抗干擾性好、自動(dòng)校零、自動(dòng)極性輸山、自動(dòng)量程控制信號(hào)輸出、單基準(zhǔn)電壓、外接元件少等特點(diǎn)。MC14433的引腳及外接元件如圖3所示。
MC14433的轉(zhuǎn)換速度較慢,不宜用查詢方式。系統(tǒng)采用如圖3中所示的中斷方式。每次A/D轉(zhuǎn)換結(jié)束,EOC都輸出一個(gè)正脈沖,其寬度為0.5個(gè)內(nèi)部時(shí)鐘振蕩周期,如圖3所示。將EOC端接入89C51的外部中斷1引腳,利用EOC脈沖的下降沿觸發(fā)中斷。單片機(jī)處理中斷服務(wù)程序,接收數(shù)據(jù)。動(dòng)態(tài)分時(shí)輸出 BCD碼的QO-Q3和DSi-DS;與89C51的PI口相連。
2.4 擴(kuò)展電路與地址分配
2.4.1 擴(kuò)展電路
89C51芯片上帶有擴(kuò)展功能引腳。
-EA/VPP端:系統(tǒng)中該引腳接+5V高電平,程序計(jì)數(shù)器PC先訪問內(nèi)部程序存儲(chǔ)器,當(dāng)PC值超過OFFFH(4k)時(shí),轉(zhuǎn)向執(zhí)行外部程序存儲(chǔ)器內(nèi)的程序。
-PSEN端:外部程序存儲(chǔ)器讀選通信號(hào)。本系統(tǒng)未擴(kuò)展外部程序存儲(chǔ)器,此引腳空。
ALE/-PROD端:系統(tǒng)擴(kuò)展外部存儲(chǔ)器時(shí)ALE輸出鎖存信號(hào)。
89C51內(nèi)部有128個(gè)字節(jié)的RAM存儲(chǔ)器。存實(shí)時(shí)數(shù)據(jù)采集和處理時(shí),僅靠片內(nèi)的RAM是不夠的,還需要利用89C51的擴(kuò)展功能擴(kuò)展外部數(shù)據(jù)存儲(chǔ)器。常用的數(shù)據(jù)存儲(chǔ)器有靜態(tài)SRAM和動(dòng)態(tài)DRAM。由于DRAM需要不斷刷新,設(shè)計(jì)時(shí)要增加刷新電路,電路復(fù)雜,可靠性差。因此SRAM在單片機(jī)測(cè)控系統(tǒng)中應(yīng)用更普遍。
木系統(tǒng)采用常用的2KX8位SRAM6116。它采用CMOS工藝制造,單一+5V電源,典型存取時(shí)間200ns。與89C51硬件連接如圖4所示。74LS373是帶三態(tài)門的8D鎖存器,用作地址鎖存器。
2.4.2 端口及地址分配
端口及地址分配如表6所列。
根據(jù)以上端口分配,可以確定外設(shè)地址為:
多路開關(guān)CD4051:XO-X7對(duì)應(yīng)BOH-B7H;B8H-BFH全不通;
外部擴(kuò)展RAM:0800-OFFFH,共2k;
執(zhí)行信號(hào)輸出依靠P2.5線選鎖存器74LS373,后將控制字從PO口輸山到74LS373來完成。
2.5 執(zhí)行信號(hào)輸出
本系統(tǒng)的執(zhí)行信號(hào)輸出電路為試驗(yàn)性的仿真電路。系統(tǒng)模擬八路執(zhí)行信號(hào),針對(duì)七路環(huán)境因子信號(hào)的監(jiān)視情況,主控機(jī)發(fā)出控制指令,控制單片機(jī)開啟一路或多路執(zhí)行信號(hào)電路,以實(shí)現(xiàn)對(duì)環(huán)境因子狀態(tài)的調(diào)控。執(zhí)行輸出電路由控制字鎖存器、發(fā)光二極管、電阻組成。各路執(zhí)行信號(hào)所代表的執(zhí)行機(jī)構(gòu)或系統(tǒng)如表7所列。
2.6 通信方式
本系統(tǒng)是溫室群的監(jiān)控系統(tǒng),它是由多臺(tái)前沿機(jī)和主控機(jī)構(gòu)成的網(wǎng)絡(luò)組成的。因此系統(tǒng)的狀態(tài)監(jiān)視、環(huán)境控制等都是通過網(wǎng)絡(luò)通信來實(shí)現(xiàn)的。所以,前沿機(jī)的通信電路是系統(tǒng)重要組成部分。
溫室群環(huán)境監(jiān)控系統(tǒng)的實(shí)時(shí)性要求不高,傳輸?shù)男畔⒘恳膊惶?,因此串行異步通訊可以滿足其通訊需求,并且具有線路簡(jiǎn)單,易于實(shí)現(xiàn)的優(yōu)點(diǎn)。本系統(tǒng)采異步通訊。溫室群環(huán)境監(jiān)控系統(tǒng)要求遠(yuǎn)距離數(shù)據(jù)傳送,對(duì)數(shù)據(jù)傳送速率要求不太高并要有一定的抗干擾能力,因此RS-422最適合系統(tǒng)的要求。適當(dāng)降低傳輸速率,如9600bit/s,可以使傳送距離達(dá)到1200m以上,完全滿足系統(tǒng)要求。主控機(jī)口通信采用主機(jī)板上空閑的標(biāo)準(zhǔn)25芯COM2 口,進(jìn)行電平轉(zhuǎn)換后掛接RS-422總線。使用這種轉(zhuǎn)換器時(shí)可以使用與RS-232相同的通訊軟件而無需進(jìn)行修改。其引腳定義如表8所列。
本系統(tǒng)采用RS-422與TTL電平轉(zhuǎn)換常用芯片:傳輸線驅(qū)動(dòng)器SN75174;傳輸線接收器SN75175,SN75174是一具有三態(tài)輸出的單片四差分線驅(qū)動(dòng)器。SN75175是具有三態(tài)輸山的單片四差分接收器。它們的設(shè)計(jì)符合EIA標(biāo)準(zhǔn)RS-422規(guī)范,適用于噪聲環(huán)境中總線線路較長(zhǎng)的多點(diǎn)傳輸。芯片采用+5V電源,與其他芯片一致。通信線路采用標(biāo)準(zhǔn)RS-422九芯插接件。電路如圖5所示。
2.7 監(jiān)控網(wǎng)絡(luò)
本系統(tǒng)采用總線型監(jiān)控網(wǎng)絡(luò)??偩€型拓樸結(jié)構(gòu)如圖6所示。在總線型控制網(wǎng)絡(luò)中,主控站通過總線來訪問各個(gè)前沿機(jī)。只有主控站有權(quán)控制總線,而各前沿機(jī)則不可以,并且各個(gè)前沿機(jī)之間不能直接進(jìn)行通信。這種拓樸結(jié)構(gòu)的特點(diǎn)是:數(shù)字化的數(shù)據(jù)通過串行輸入/輸出總線進(jìn)行傳送;通訊協(xié)議采用RS232,RS422,RS485等;系統(tǒng)擴(kuò)展較為靈活:通信速率較低。
2.8 44780顯示模塊
本系統(tǒng)采用44780驅(qū)動(dòng)的LCD,HD44780(KS0062)是用低功耗CMOS技術(shù)制造的大規(guī)模點(diǎn)陣LCD控制器(兼帶驅(qū)動(dòng)器),和4bit/8bit微處理器相連,它能使點(diǎn)陣LCD顯示大小寫英文字母、數(shù)字和符號(hào)等豐富的信息,同時(shí)有較強(qiáng)的通用性應(yīng)用,使用方便,用戶能用少量元件就可組成一個(gè)完整點(diǎn)陣LCD系統(tǒng),送入相關(guān)的數(shù)據(jù)和指令即可實(shí)現(xiàn)所需的顯示。
44780顯示模塊有8條數(shù)據(jù)線,3條控制線,可與微處理器或微控制器相連,通過送入數(shù)據(jù)和指令,就可使模塊正常工作,44780顯示模塊和89C51單片機(jī)連接電路如圖7所示。
2.9 抗干擾設(shè)計(jì)
在微機(jī)測(cè)控系統(tǒng)中,系統(tǒng)抗干擾性能的好壞直接影響到整個(gè)系統(tǒng)工作的可靠性與安全性。因此,抗干擾設(shè)計(jì)是系統(tǒng)設(shè)計(jì)的一個(gè)主要內(nèi)容,本系統(tǒng)采用的是由硬件和軟件相結(jié)合的抗干擾措施。
2.9.1 系統(tǒng)硬件抗干擾設(shè)計(jì)
(1) 濾波技術(shù)
將電源變壓器的進(jìn)線段加入濾波器,以消弱瞬變?cè)肼暩蓴_;在直流電源線和地線之間接濾波電容,以抑制電源噪聲。
(2) 去耦電路
存印刷電路板的各個(gè)集成電路的電源線端與地線端之間配置去耦電容。
(3) 屏蔽技術(shù)
屏蔽技術(shù)主要由電場(chǎng)屏蔽,電磁場(chǎng)屏蔽和磁場(chǎng)屏蔽三類,本系統(tǒng)是電場(chǎng)和電磁場(chǎng)屏蔽的方法。主要使用低電阻材料作為屏蔽材料,把需要隔離的部分保衛(wèi)起來。磁場(chǎng)屏蔽則應(yīng)采用高導(dǎo)磁率的材料。
(4) 光電隔離:
再I/O通道上采用光電隔離器,將單片機(jī)系統(tǒng)與各種傳感器、開關(guān)從電器上隔離開來,很大一部分干擾可被阻擋
2.9.2系統(tǒng)軟件抗干擾設(shè)計(jì)
對(duì)于微機(jī)測(cè)控系統(tǒng),僅僅考慮硬件的抗干擾是遠(yuǎn)遠(yuǎn)不夠的,采取一定的軟件抗干擾措施非常必要,它不儀能降低系統(tǒng)的硬件成本,又可以充分發(fā)揮軟件的優(yōu)勢(shì),使系統(tǒng)具有自我診斷,自我恢復(fù)的能力。本系統(tǒng)采用的軟件抗干擾措施主要有以下幾種:
(1) 數(shù)字濾波技術(shù),采用數(shù)字濾波技術(shù)除去輸入信號(hào)中所摻雜的各種隨機(jī)干擾。 (2) 軟件陷阱技術(shù),當(dāng)系統(tǒng)受劍干擾,PC值發(fā)生變化,程序"亂飛"等情況,可以用軟件陷阱和看門狗將程序拉回到復(fù)位狀態(tài)。具體的講,可以在RAM中埋一些標(biāo)志,在每次程序復(fù)位時(shí),通過這些標(biāo)志,可以判斷復(fù)位原因并根據(jù)不同的標(biāo)志直接跳到相應(yīng)的程序。這樣可以使程序運(yùn)行有連續(xù)性,用戶在使用時(shí)也不易察覺到程序被重新復(fù)位過。
3 軟件設(shè)計(jì)
該系統(tǒng)軟件主要由主程序、中斷子程序、數(shù)據(jù)采集與A/D轉(zhuǎn)換子程序、顯示子程序、報(bào)警子程序等六大模塊組成,因?yàn)镃語言編寫的軟件易于實(shí)現(xiàn)模塊化,生成的機(jī)器代碼質(zhì)量高、可讀性強(qiáng)、移植好,所以本系統(tǒng)的軟件采用C語言編寫,再KeilVision3 Demo版本的集成開發(fā)環(huán)境下進(jìn)行編譯連接。
3.1 主程序設(shè)計(jì)
主程序主要完成硬件初始化、子程序調(diào)用等功能,主程序流程圖如圖8所示。
3.2 數(shù)據(jù)采集子程序設(shè)計(jì)
數(shù)據(jù)采集與A/D轉(zhuǎn)換子程序根據(jù)輸入?yún)?shù)對(duì)相應(yīng)的模擬信號(hào)進(jìn)行采樣、量化及處理,并將相應(yīng)信號(hào)的數(shù)值返回主程序。
3.3 顯示子程序設(shè)計(jì)
顯示子程序完成符號(hào)、數(shù)值的顯示輸出。
3.4 報(bào)警子程序
主要實(shí)現(xiàn)異常情況下控制告警信號(hào)輸山。如當(dāng)室內(nèi)溫度升高到某一點(diǎn)時(shí),或濕度低于某一規(guī)定值時(shí),音頻報(bào)警裝置會(huì)發(fā)出不同頻率的告警信號(hào),同時(shí)相應(yīng)的指示燈亮(點(diǎn)亮報(bào)警指示燈的任務(wù)由顯示子程序來完成),以引起工作人員的主意。
4 仿真與調(diào)試
4.1 仿真器選擇
本系統(tǒng)選用ME-52單片機(jī)仿真開發(fā)系統(tǒng),它實(shí)時(shí)仿真頻率高達(dá)33MHz,提供2~24MHz的時(shí)鐘信號(hào)。同時(shí)它提供64KB程序代碼存儲(chǔ)器,支持仿真所有程序和數(shù)據(jù)地地址空間,支持Franklin V3.XX/Keil 6.xx編譯連接工具。具有分別獨(dú)立控制項(xiàng)目文件的項(xiàng)目管理器。另外具有VC++風(fēng)格的窗口駐留,窗口動(dòng)態(tài)切分和工作簿模式窗口界面。
4.2 仿真調(diào)試
在仿真調(diào)試階段,采用"自底向上逐步集成"的策略,逐模塊進(jìn)行仿真測(cè)試,在此基礎(chǔ)上逐步集成。譬如可先仿真顯示模塊、測(cè)溫子模塊、測(cè)濕度子模塊等,然后將仿真成功的模塊逐個(gè)加入主程序進(jìn)行仿真,在仿真過程中發(fā)現(xiàn)錯(cuò)誤,采用"分塊壓縮策略",快速找到并改正錯(cuò)誤;注意在集成過程中出現(xiàn)問題,大多是由于模塊間資源使用沖突引起的。當(dāng)軟件模塊仿真成功后,可與硬件一起進(jìn)行在線仿真,此時(shí)在調(diào)試中出現(xiàn)的問題大多是由于連接線連接錯(cuò)誤、虛焊、布線不合理等原因造成的。 隨著電子技術(shù)的廣泛應(yīng)用,智能溫室控制必將成為一種發(fā)展趨勢(shì),文中提出利用51單片機(jī)和新型傳感器對(duì)溫室環(huán)境進(jìn)行測(cè)試,目前原型機(jī)己取得成功。調(diào)試結(jié)果表明,本系統(tǒng)可靠性高、使用方便,下一步將住此基礎(chǔ)上開發(fā)控制系統(tǒng),給用戶提供更大的方便。
評(píng)論