溫室生產作為高效、高科技含量的大規(guī)模生產方式已經成為世界農業(yè)的發(fā)展趨勢。溫室設施的自動監(jiān)測和控制技術可以為農作物創(chuàng)造良好的生長環(huán)境,節(jié)約人力成本,提高農作物的產量,因此需要開發(fā)與溫室相關的自動化技術,以降低運行成本、提高效率、實現環(huán)境的精確控制。我國目前的溫室沒施綜合監(jiān)測水平不高,控制能力比較差,帶有綜合環(huán)境自動調節(jié)的高科技溫室主要從國外引進。筆者開發(fā)了以S3C2 440為核心的嵌入式環(huán)境監(jiān)測系統可以完成溫室環(huán)境參數的監(jiān)測和收集,同時通過輸出機構實時控制溫室環(huán)境以達到溫室監(jiān)測和控制智能化的目的,具有精度高,智能控制等優(yōu)點。
軟件工程領域最重要的、具有劃時代意義成果之一的就是統一建模語言UML(Unified Modeling Language)的出現。開發(fā)系統可以借助UML的CASE工具來完成從軟件的分析、設計、實現到測試的一系列軟件工程過程,大大提高了軟件開發(fā)的復用性和效率,降低了軟件開發(fā)過程中的返工率。文中采用了UML方法來設計一個軟硬件都要考慮的溫室環(huán)境監(jiān)測系統,從而體現了UML強大的表達能力,該系統用UML表達清晰、嚴謹、易于實現。
1 溫室環(huán)境監(jiān)測系統組成
系統主要架構如圖1所示,系統由上位機、下位機和執(zhí)行結構組成。上位機為PC機可以處理下位機傳送的溫室環(huán)境參數同時可以給下位機發(fā)出指令。下位機是以Samsung S3C2440為主控制器,資源豐富功能強大,其主頻為400MHZ,最高可達533MHZ,內存為64MSDRAM,數據總線32 bit,S3C2440還支持以太網卡,很容易實現網絡功能。其他主要部件有溫濕度傳感器SHT11,光照傳感器TSI2561和CO2傳感器NAP-21ACO2液晶顯示模塊等基本部件。輸出執(zhí)行結構包括循環(huán)風機、噴水系統、內外遮陽電機等。
1.1 傳感器電路
1.1.1 溫濕度傳感器
SHT11溫濕度傳感器采用SMD(LCC)表面貼片封裝,由于將傳感器與電路部分結合在一起,因此傳感器具有比其它類型的濕度傳感器優(yōu)越的多的性能。傳感器可直接通過I2C總線與ARM連接,減少電路硬件成本,簡化電路。系統中為了同時測量溫室內的溫濕度值,將各SHT11的SCK先接到S3C2440的同一個I/O口,而DATA線則分別接到不同的I/O上。
1.1. 2 CO2濃度監(jiān)測和光強度監(jiān)測
CO2濃度監(jiān)測采用NEMOTO公司生產的NAP-21ACO2傳感器,NAP-21A輸出線性好,有較好的長期穩(wěn)定性與極好的重復性及精度。該傳感器是一種熱傳導式CO2傳感器,在不同濃度的CO2氣體中其阻值與CO2的濃度成線性關系,傳感器通過放大器連接。光強測量選用TAOS公司的TSI25 61光強度傳感器,該傳感器具有數字式輸出端口和標準I2C總線接口,測量的照度范圍為1~70 000lx,功耗僅為0.75mW。TS1256具有高速、低功耗、寬量程、可編程配置的特點??梢栽O置光強度上、下閾值,控制執(zhí)行結構的遮陽板。
1.2 輸出執(zhí)行結構
系統的執(zhí)行機構包括循環(huán)風機、噴水系統、內外遮陽電機等。利用微控制器輸出高低電平,控制開關。當溫室內的溫度、濕度、CO2等各個環(huán)境參數,通過無線數據采集系統采集到微控制器并顯示出來,再由有線通訊模塊傳送到上位機系統,與數據庫進行比對,得出適合該種作物的環(huán)境參數,上位機通過通訊模塊發(fā)送信息到下位機,下位機再根據各個信息發(fā)出執(zhí)行命令控制執(zhí)行機構。當然也可以直接通過下位機發(fā)出執(zhí)行命令控制執(zhí)行結構,注意下位機執(zhí)行輸出機構只在特殊情況下使用。具體部署圖如圖1所示。
帶陰影的是處理器,處理器處理溫室環(huán)境信息,發(fā)送到執(zhí)行裝置,不帶陰影的是執(zhí)行裝置,分別執(zhí)行相關命令。
2 UML靜態(tài)建模
2.1 用例圖
用例圖(Use Case Diagram)就是角色、用例以及它們之間的關系構成的圖。是對系統功能的陳述。改圖說明用例模型中的關系,如圖2所示。
本系統中,遠端管理員通過上位機可以查看歷史數據,設置環(huán)境參數,設定溫濕度閾值,光照閾值,CO2閾值,發(fā)送命令到下位機。下位機可以根據上位機發(fā)送的閾值控制執(zhí)行機構,下位機通過傳感器收集溫室環(huán)境的信息,下位機可以把信息傳送給上位機。本地管理員也可以通過下位機的顯示模塊直接控制執(zhí)行結構。
2.2 類 圖
類圖來描述系統靜態(tài)的對象結構及其相互關系。從用例圖(圖2)中可分解出一些類,并將這些類之間的結構描述出來。類圖是最常用的UML圖,顯示出類、接口以及它們之間的靜態(tài)結構和關系,用于描述系統結構化設計。
本系統中,兩個管理類是遠程管理員(Remote-admin)和本地管理員(Local-admin)對上位機類(The host computer)和下位機類(Lower machine)操作.下位機類對傳感器類(Sensor)、執(zhí)行機構類(Run)和顯示模塊類(Show)進行操作。遠程管理類操作就是login;本地管理類的操作login;上位機類操作是:inquiry,set,send,receive,summit;下位機類操作是:set-show,send,receive,set-run;傳感器類屬性是:seneor_id,操作是:temperature_measure,humidity_measure,light_measure,CO2_measure,等操作;顯示模塊類是操作是:
displayr;執(zhí)行機構類屬性是:manchine_id,操作是:set-light,set-wind,set-humidity,系統類圖如圖3所示。
3 UML動態(tài)建模
3.1 狀態(tài)圖
狀態(tài)圖(State Diagram)是描述一個實體基于事件反應的狀態(tài)行為,顯示該實體如何根據當前所處狀態(tài)對不同的時間做出反應的。
本系統中:)下位機從各個傳感器讀取數據,顯示到顯示模塊:2)可以通過下位機根據讀取的數據直接設定執(zhí)行機構,執(zhí)行輸出;3)下位機把接受的數據傳送給上位機,上位機根據歷史數據做出判斷得到適合該作物的環(huán)境參數,發(fā)送給下位機;4)下位機接收上位機傳送來的數據,顯示到顯示模塊:5)下位機根據接受的數據發(fā)出命令,設定執(zhí)行結構,執(zhí)行輸出。
系統狀態(tài)圖如圖4所示。
3.2 序列圖
UML序列圖(Sequence Diagram)一般用于確認和豐富一個環(huán)境的邏輯。一個使用情境就是系統潛在的使用方式的描述,就是它的名稱所要描述的,其邏輯可能是一個用例的一部分,或是一條備選路線;可能是一個貫穿單個用例的完成流程,也可能包含幾個用例中的流程。系統序列圖如圖5所示。
本系統的序列圖對應的信息:1)傳感器讀取溫室內溫濕度、光照、CO2參數值;2)下位機接受傳感器數據,并顯示到顯示模塊;3)下位機可以直接設置執(zhí)行機構;4)下位機發(fā)送數據到上位機,上位機做出判斷送出設定值;5)下位機接受上位機發(fā)送的設定值,顯示到顯示模塊;6)下位機根據設定值發(fā)送命令執(zhí)行輸出機構,調整溫室環(huán)境。
4 結論
該系統以S3C2440為核心,采用UML方法,設計了一個智能的溫室環(huán)境監(jiān)測系統。實際應用表明該系統具有控制參數設定方便、控制精度高、穩(wěn)定性好、人機界面友好等特點,有著極高的性價比和可行性。