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