【正文】
開始對溫室大棚技術進行了研究,采用模擬式顯示組合儀表,將采集的信息經(jīng)過處理然后發(fā)出指令進行控制和記錄。溫度管理一般把一天分為中午前、中午后、前半夜和后半夜四個時段來進行溫度調(diào)控。之后繼續(xù)降溫3℃左右,不可降得過低,這樣容易導致植物產(chǎn)生低溫危害。(2) 溫室研究現(xiàn)狀國外溫室控制技術以美國最為先進,主要是因為其計算機的發(fā)展非常迅速,這也使得以計算機為主的溫室環(huán)境控制技術迅速發(fā)展。并通過交互式界面顯示必要的信息,設置參數(shù)并繪制曲線,修正值曲線和測量數(shù)據(jù)曲線可以從設定的時間數(shù)據(jù)庫中調(diào)用。種植者不僅要充當溫室環(huán)境的傳感器,又要充當溫室作物管理的執(zhí)行。自動控制:此控制系統(tǒng)必須先輸入植物所需的生長目標參數(shù)值,經(jīng)計算機將實際測量的數(shù)值和預先設定的目標值進行比較,利用判斷后的結果來調(diào)控溫室環(huán)境因子,以控制相應的操作通風、制冷和加熱等。從手動到全自動控制技術,控制溫室生產(chǎn)過程向著更先進、更全面的方向發(fā)展。電路總體上分為采集模塊、核心處理模塊、報警模塊和顯示模塊。1602LCD液晶顯示屏,能夠實時、準確的顯示采集溫度值、濕度值及光照強度值,而且成本較低。結構設計比較清晰,各個模塊從硬件上設計起來相對簡單,比較方便的控制與顯示模塊間的連接。 所示。方案二可以利用單片機內(nèi)部的控制只讀存儲器、隨機存儲器和其豐富的引腳資源,外接鍵盤輸入,液晶顯示器等實現(xiàn)數(shù)據(jù)的傳輸處理和顯示功能。 主要元器件選擇 單片機選型方案一:AT89C51是低電壓,高性能的CMOS型8位微控制器,該設備采用MCS51指令,片內(nèi)通用的8位中央處理器和閃存單元,功能強勁,采用FLASH技術4K程序存儲器,對設備開發(fā)要求低,從而縮短了開發(fā)周期。AT89C51芯片提供三個級別的程序存儲器的加密,并提供了方便、靈活、可靠的硬件加密,可以保證程序或系統(tǒng)不被仿制。STC對工作環(huán)境的要求也比較低,3V~4V之間還可以正常工作,所以選用STC單片機會更合適?!?,℃。DHT11是集成型的一體數(shù)字溫濕度傳感器。測量范圍濕度20%~90%RH,溫度0℃~50℃。通過以上分析,方案一雖然精度高,卻稍顯復雜。光傳感器方面則選擇常用的光敏電阻。僅能顯示字母、數(shù)字和符號,但寄存器不止32個。相比于1602液晶屏,12864能更形象具體的實現(xiàn)顯示功能。主控模塊采用STC89C52芯片,控制整個系統(tǒng)的運行,并利用各個接口分別控制外圍模塊,使其他模塊可以連成一個整體,實現(xiàn)設計需要[7]。 系統(tǒng)總體設計框圖 主控模塊 STC89C52STC89C52單片機是一種低功耗,高性能CMOS 8位微控制器具有8K字節(jié)的可編程閃存,與80C51指令集和引腳完全兼容。掉電保護模式,RAM內(nèi)容被保存,振蕩器被凍結,單片機一切工作停止,直到下一個中斷或硬件復位為止[9]。P0口:P0口是8位雙向開路I/O口。P1口寫入1,然后上拉為高電平作輸入,下拉為低電平輸出電流,是內(nèi)部上拉所造成的結果。在訪問外部程序存儲器或數(shù)據(jù)存儲器進存取時,輸出是地址的高8位。做輸入口時,由于內(nèi)部的上拉電阻,被外部拉低的引腳會輸入一個電流ILL。要保持RST腳兩個機器周期的高電平時間當振蕩器復位期間時。因此,可用于定時目的或外部輸出的脈沖。加密方式為1時,/EA將內(nèi)部鎖定為RESET;當/EA端為高電平時,CPU執(zhí)行內(nèi)部程序存儲指令。 STC89C52模塊電路原理圖 DHT11傳感器模塊 DHT11傳感器DHT11傳感器是由NTC溫度電阻元件和濕度測量元件組成,并與高性能的8位微控制器連接。在5V電源電壓。第一引腳連接到電源。如果電纜長度小于20米,建議使用上拉電阻5K,超過20米時,根據(jù)實際情況使用適當?shù)纳侠娮?。例如,在某次從傳感器中讀取如下5Byte數(shù)據(jù):byte4 byte3 byte2 byte1 byte0 00101101 00000000 00011100 00000000 01001001 整數(shù) 小數(shù) 整數(shù) 小數(shù) 校驗和濕度 溫度 校驗和從上可得濕度和溫度的值,計算方法如下:humi (濕度)= byte4 . byte3=45 (%RH) temp (溫度)= byte2 . byte1=28( ℃) jiaoyan(校驗)= byte4+ byte3+ byte2+ byte1=73(=humi+temp)(校驗正確) 注意:DHT11一次通訊時間最大3ms,主機連續(xù)采樣間隔建議不小于100ms。 DHT11開始發(fā)送數(shù)據(jù)流程主機發(fā)送一個啟動信號后,等待20us~40us后讀取DH11T延遲響應信號讀取總線為低電平,說明其發(fā)送響應信號后,再把總線上拉到高電平,準備發(fā)送數(shù)據(jù),每一個位數(shù)據(jù)用低電平開始。 主機復位信號和DHT11響應信號DHT11發(fā)送響應信號需在總線為低電平時,發(fā)送響應信號后把總線拉高80us,準備發(fā)送數(shù)據(jù),每一bit數(shù)據(jù)都以50us低電平時隙開始,高電平的長短決定了數(shù)據(jù)位是0還是1。 DHT11電路原理圖 光傳感器模塊光敏電阻也被稱為光敏電阻器或光管,常用硫化物等材料構成。入射光越強電阻越低,入射光較弱,阻值增大。半導體ADC0832由8位分辨率產(chǎn)生的,雙通道A / D轉換芯片,最高分辨率可達256,可以適合于一般模擬轉換的要求,內(nèi)部電源的電壓輸入和參考電壓復用,使得芯片的模擬電壓根據(jù)數(shù)據(jù)輸出0?5V轉換僅需32μS。分別為CS,CLK,DO,DI。 1602液晶顯示模塊 1602液晶顯示屏HJ1602A是字符型液晶顯示器,能夠同時顯示16列2行內(nèi)容,主要顯示數(shù)字、字符。指令1:清除顯示:指令代碼01H。B:低電平不閃爍,高電平閃爍。指令6:功能設置命令DL:低電平為8位總線,高電平為4位總線。指令8:DDRAM地址設置。指令11:讀數(shù)據(jù)。 1602內(nèi)部顯示地址在LCD模塊的初始化首先應設置其顯示模式,液晶顯示模塊是字符光標自動向右。 1602顯示模塊 報警模塊 蜂鳴器蜂鳴器在電路中使用字母“HA”或“H”表示。本設計使用的是電磁式蜂鳴器。常見的三極管有901s8550、901s8050。這兩個是流出的發(fā)射器的電流的方向時,發(fā)射極E可以通過電流方向箭頭來表示。在寫程序之前要對系統(tǒng)的硬件電路有足夠的了解,各個接口,還有系統(tǒng)各個芯片以及模塊的時序,在編程過程中都要完全遵守,那樣才能使所預設的功能一一實現(xiàn),達到最終的要求。新一代數(shù)字式傳感器不再需要外部連接AD轉換模塊,具有標準接口,易于使用,因此使用越來越廣泛。 write_(0x0c)。 write_string(2,0, W: S: %RH )。在編譯完Keil C后,再運用STC_ISP_V480軟件燒錄到開發(fā)板上,實現(xiàn)實物與程序的連接。在完成對程序的調(diào)試和燒錄之后,還需要對其進行演示,把開發(fā)板與電腦連上,設置好對應的接口,完成供電及下載。若當前溫度沒有超過限值。4 系統(tǒng)的焊接與測試 系統(tǒng)硬件電路焊接系統(tǒng)硬件電路主要由采集模塊、按鍵模塊、報警模塊和液晶顯示模塊組成。 系統(tǒng)硬件電路調(diào)試經(jīng)過前期的努力,系統(tǒng)軟件和硬件設計已經(jīng)完成,并且調(diào)試也已經(jīng)結束。如果液晶顯示屏始終沒有顯示時,首先要排查溫濕度傳感器DHT11器件本身問題,若不是器件問題則要檢查并證實程序部分是否正確,若不正確應及時修改,直到系統(tǒng)測試達到預期結果。 傳感器模塊實物圖溫濕度傳感器DHT11采集溫度和濕度信息,光敏電阻采集光照強度信息,并將采集到的數(shù)據(jù)發(fā)送給單片機,并且通過轉換處理發(fā)送到顯示模塊,由LCD1602顯示屏顯示數(shù)據(jù)。 設置上下限實物圖通過按鍵可以對溫度、濕度及光照強度值的上下限進行設定,比如可以把濕度的上限SH設置為60%,下限SL設置為20%;溫度的上限WH設置為30176??傮w來說,本次設計還是比較成功的,達到了設計的基本要求。在老師的悉心指導下,完成了系統(tǒng)的整體設計,明確了系統(tǒng)所要實現(xiàn)的要求,首先分別設計軟件和硬件,然后是對軟件和硬件進行分別調(diào)試,在這個過程中不斷發(fā)現(xiàn)問題并改進,最后是把軟硬件結合進行總體測試,從而實現(xiàn)溫度、濕度及光照強度的實時檢測,超出設定范圍發(fā)出警報。無論在生產(chǎn)還是生活中,溫室與人類都是息息相關的,而智能化的控制溫度、濕度及光照強度已經(jīng)成為一種必然。希望在以后的工作生活中可以把這個系統(tǒng)進一步優(yōu)化,發(fā)展成為更加完美的系統(tǒng)。在做畢業(yè)設計的過程中,也是劉老師給予認真的指導,包括硬件采購,電路連接以及軟件程序設計等給我提供了很大的幫助。再次,感謝老師、同學、朋友們的幫助。C accuracy [6]. The calibration curve of the sensor is shown in Figure 2.Figure 2. Voltage vs. temperature calibration curve.(i) Controller section : The analog value is converted to digital value by ADC and is picked up by the microcontroller AT89S52 which is a lowpower, highperformance Complementary Metal Oxide Silicon (CMOS) 8bit microputer with 8 KB of Flash programmable and erasable read only memory (EPROM) [7].(ii) Display section : Since it is essential to display the data received from the microcontroller, a liquid crystal display 44780 LCD is used which is a 216 line display [8,9].(iii) Temperature control section : This section consists of a relay to control hardware to start cooling for maintaining temperature as set by the user and a buzzer to notify the change [10,11].(iv) Hardware controlling : Simple push buttons are used to set temperature and give the time of data transfer to the PC. A 12 V relay is used to control an LED at the set temperature. The schematic diagram of the system is shown in Figure 3. The whole system that we are fabricating for the experiment on a single board is shown in Figure 4.Figure 3. Embdeded control hardware circuit – schematic diagram.. Software description :Software development for the present work consists of two main modules. One being the online monitoring and controlling, and the other being offline analysis based on data stored in puter. Present article limits its work on first module keeping second module for future development. Software is developed in both C and Assembly language.Algorithm for online monitoring and controlling of temperature is given below :(i) First step is to initialize keys, Interrupt vectors panel and LCD Define port P3 of microcontroller ATMEL 89S52 as output port(ii) Get data through ADC0809 from two different channels of Temperature and Light Intensity continuously after a fixed interval(iii) Value obtained from different channels converted to appropriate form of displayFigure 4. Photograph of the fabricated system.(iv) Display the appropriate values of Temperature and Light Intensity in LCD panel in Round Robin pattern(v) Start hardware devices to act if sense temperature is higher than se