王熠鑫 曾曉莉 嚴李強 郭龍銀
摘? 要:為了改善青藏高原缺氧、晝夜溫差大等獨特的氣候環境帶來的不利因素,根據生態屋的設計理念和模式,基于智能溫室設計了高原生態屋,并通過將多種類傳感器與管理系統相連設計了高原生態屋管理系統。該系統能根據實時監測高原生態屋內各生態因子的數值并將其控制在適合人類居住、適宜該種植物生長的最佳范圍內,且可視化數據能更好地分析生態屋運轉狀況,同時為生態屋的大數據分析提供基礎數據。
關鍵詞:高原生態屋;生態因子;數據管理系統;物聯網;數據可視化
中圖分類號:TU17? ? ? ? ? 文獻標志碼:A? ? ? ? ?文章編號:2095-2945(2019)06-0033-04
引言
為有效緩解由高原環境帶來的不適,專門為生活在高原的人們及往來行人設立特殊的供給站即高原智能生態屋是非常有必要的。高原智能生態屋既可設立在進藏線路中的無人區,也可設立在長期有人居住的農牧區、戶外旅游景點及軍隊駐扎區,為人們提供更為舒適的環境。
高原智能生態屋通常采用透明導電薄膜材料作為生態屋的外罩,為生態屋和過往人群提供電能,其內部有泡泡屋或民居為過往人群提供居住點,并同時設置生態因子控制模塊、電能供給模塊、供氧模塊、自助售藥模塊、供水模塊、智能化生態廁所模塊等模塊[1],為過往人群提供便利,改善因高原環境帶來的胸悶、頭暈等高原反應。
由于高原智能生態屋所處環境的特殊性,通常交通不便、信息閉塞,從而導致我們無法及時了解高原生態屋的具體信息,不能更好的管理高原生態屋,故此設計了高原生態屋生態因子數據管理系統,擬通過先進的信息化技術和手段實現高原生態屋的智能管理、數據的及時更新與遠程監控。
我們利用多種傳感器搭建數據傳輸網,并根據不同的模塊和需求采取不同的數據信息獲取方式,設計了生態因子數據管理系統,同時對數據進行了可視化處理,以便實現觀察各生態因子之間的相互影響。另外,系統設計了不同環境因子之間的兩兩比較或多組比較功能,能夠更容易地發現不同環境因子之間的直接影響和間接影響,為研究不同數據之間存在的關系提供便利。
1 需求分析
1.1 采集數據
高原生態屋數據采集部分包括生態因子模塊、電能模塊和物資補給模塊。
1.1.1 生態因子模塊
由于高原生態屋中最重要的是對植物生長環境的檢測和植物的照料,故初步考慮兩種形式內部環境的自循環功能:一是管理員定時人工檢查維護,如補充養料和驅蟲;二是系統自動檢測植物生長的幾大要素,例如環境溫度、土壤濕度、光照強度、光照時長及CO2含量等。
因此,為了實現內部環境的自循環功能,首先通過多種傳感器采集數據,然后利用MATLAB軟件進行數據處理并尋找其規律,同時將采集的數據作為生態屋DNA算法的前期數據源進行算法更新,最后基于專業人士意見對系統和算法進行優化,最終實現高原生態屋的智能化管理[2]。
1.1.2 電能模塊
高原生態屋的作用不僅可以作為旅客休息之所,也可以有效利用太陽能,其表面的透明導電薄膜可將接收到的太陽能部分轉化為電能。將轉化的電能收集存儲起來,一部分用于生態屋自身使用,另一部分通過蓄電池蓄電后上傳至電網,利用電表讀取數據,設計采用串口MODBUS協議,得出轉化的、使用的以及消耗的電能,進而得出生態屋的電能效率。
1.1.3 物資補給模塊
高原生態屋除了產生電能和內構環境外,還能為旅客提供藥品、食物和水等。這些物品通過自動售賣機進行交易,并將其物資販賣記錄利用售賣機內部程序系統把所有信息在后臺記錄,以便管理員調用,實時對物資管理補充。另外,對一些無法自動上傳的物資信息,需管理員手工輸入。
1.2 數據傳送和存儲
高原生態屋管理系統主要應用在兩個方面,一是管理單一的生態屋[3],二是作為最底層傳感器與上層服務器之間的數據中轉站,這方面最需要的是處理傳感器與服務器之間的連接功能。
在數據錄入方面設置兩個功能模塊,首先,設置手動輸入數據的功能;其次,組建傳感器數據網絡解決采集底層數據。
在通過傳感器數據網絡采集底層數據時,為盡量實現系統的最優化和最小代價,對于不同模塊采用不同的數據傳輸方式。例如,生態因子模塊通過各類傳感器收集數據信息,并利用ZigBee組件對數據進行打包[4],再通過Jennet協議[5]利用IP地址和自組網實現對端點的訪問和操作;而電能模塊則根據MODBUS協議獲取電表數據信息并得出生態屋的電能效率,同時電能存儲部分通過檢測電池儲能情況獲取電池數據信息;此外,物資補給模塊則將自動販賣機數據信息進行處理、存儲并上傳至上層服務器。
1.3 用戶功能
高原生態屋生態因子數據管理系統的使用者有超級管理員也稱開發者、總管理員、普通管理員三種。他們擁有不同的權限和安全性控制,所以在權限設置方面,各角色分別使用自己的成員名和密碼進入自己能使用權限范圍界面。超級管理員擁有對本系統進行維修、保護以及升級的職能;總管理員作為一個生態屋的一把手,是一個生態屋的支柱,其能修改、刪除整個生態屋內生態因子的所有數據,同時,也關注普通管理員的日常記錄,避免問題的發生;普通管理員是一個生態屋的管家,其使得生態屋的數據能正常有序的錄入、查詢。普通管理員能及時根據生態屋內生態因子數據對生態屋進行管理,其系統功能如表1所示。
1.4 可視化數據
高原生態屋是一個實時變化的自循環系統,為了能夠準確而又及時的分析和為生態屋的下一步做決定,可視化是一個必要而又高效的途徑[7]。而我們主要采用R語言實現數據可視化,利用統計學習算法和神經網絡算法的工具進行統計計算和統計制圖,從而對生態因子進行一些簡單的統計分析,例如方差分析、功效分析等。
1.5 更新要求
數據更新采用MySQL數據庫的自動更新和超級管理員遠程更新兩種方式實時錄入存儲,并每日上傳一次服務器。自動更新則通過上層服務器存儲的系統版本信息來主動更新數據,當管理員登錄系統并連接服務器時,就會自動獲取版本信息;遠程更新則需超級管理員將更新后的安裝包發送到各個生態屋,進行更新后再利用服務器檢查系統是否完整正常。
2 整體架構
2.1 系統設計
2.1.1 數據庫模塊
數據庫模塊包括基本表、視圖、索引、存儲過程的創建以及各個基本表中插入的數據。其中視圖、索引和存儲過程的創建,是為了方便用戶使用本高原生態屋生態因子數據管理系統。
2.1.2 系統界面模塊
系統界面模塊包括登錄界面、超級管理員界面、總管理員界面和普通管理員界面。登錄界面主要有登陸功能,超級管理員界面主要有維護、升級系統的功能,總管理員界面主要有修改、刪除和批量處理的功能,普通管理員界面主要有錄入、查詢的功能。
2.1.3 界面與數據庫連接模塊
界面與數據庫連接模塊有下載驅動、設置數據庫服務和安全、通過JDBC把界面與數據庫連接起來三個部分。該模塊在數據庫模塊和系統界面模塊之間起到了橋梁的作用[7]。
2.1.4 功能設計
高原生態屋生態因子數據管理系統基于業務流程而設計,將流程控制與業務管理分離,以流程控制為核心,主要分為五個層次:
系統頂端是門戶層,提供管理員和開發者兩個登錄界面。普通管理員和總管理員的功能有限,操作簡單,從個人門戶登錄;功能復雜的開發者從開發者界面登錄。根據實際工作情況,使用者分別從不同界面登錄,進入相應界面。
第二層是權限層,用于對登錄者進行身份識別、用戶管理以及權限控制,其中,權限控制主要涉及權限管理,比如普通管理員沒有刪除數據的功能等。
第三層是流程層,主要包括流程管理和流程監控兩部分,流程管理模塊通過解析流程定義,根據不同信息,分析流程當前節點狀態,調用業務層相應模塊進行處理,并引導流程正常運行。流程監控模塊用于實時獲取流程進展情況,服務于查詢、統計報表等功能[8]。
第四層是業務層,分為更改個人信息、可視化分析、日程總結、電能查詢、生態因子查詢、物資查詢幾個功能模塊,處理系統的具體業務操作。其中,更改個人信息涉及角色最多,涵蓋功能廣泛;可視化分析主要是分析生態屋內生態因子模塊內各因子數據;日程總結是使用者即普通管理員、總管理員、開發者登錄后對所做工作及感想的記錄;電能查詢、生態因子查詢及物資查詢這三個模塊的功能主要是對其因子進行數據查詢。
最底層是數據層,生態屋內生態因子、電能及物資模塊等信息的數據存儲在數據庫中,系統運行中其信息錄入者的個人信息通過數據中心的方式與其他系統交互獲得[9]。系統架構如圖1所示。
2.2 軟件設計
高原生態屋生態因子數據管理系統有三個模塊:數據庫模塊、系統界面模塊、界面與數據庫連接模塊。
2.2.1 數據庫設計
高原生態屋管理系統主要涉及到6個表,即:普通管理員用戶信息表、總管理員用戶信息表、開發者用戶信息表、生態因子模塊表、電能模塊表、物資補給表。總數據庫結構如圖2所示。
2.2.2 可視化設計
高原生態屋管理系統的可視化設計,著重考慮用戶的交互性和數據直觀化這兩點。可視化流程如圖3所示。
交互性:管理員們可以選擇不同的模塊和不同時段進行查詢分析,模塊分為生態因子、電能和物資補給三個部分;時段分為日周月年四個不同的時間段[10]。
數據直觀化:在數據庫調取數據信息后,針對生態因子模塊,我們采取二維散點圖(只表示日時間段的數據變化)和動態三維散點圖(周月年),第一第二維是生態因子計量單位和時間,其定義按照管理員需求做出調整,而生態因子的第三維植物生長狀況維度保持不變[11],在-1和1之間,其中1為極好,-1為極差,而生長狀態只由管理員定期檢查時錄入。針對電能模塊和物資補給模塊,本系統采取折線和餅狀圖,用以簡單的而有直觀的表示電量的變化和各部分的百分比。
3 數據傳輸與服務
3.1 因子數據分析
利用高原生態屋生態因子數據管理系統,通過對其溫度、光照強度、濕度環境因子數據的收集與分析[12],將得到不同環境因子之間的直接影響與間接影響,為自我進化算法(“DNA算法”)奠定基礎,建立有助于植物自我進化的數據庫,部分數據如表2所示。
3.2 因子數據傳輸
Zigbee協議分為兩部分,IEEE 802.15.4定義了PHY(物理層)和MAC(介質訪問層)技術規范;Zigbee聯盟定義了NWK(網絡層)、APS(應用程序支持層)、APL(應用層)技術規范[13]。Zigbee協議棧將各個層定義的協議都集合在一起,以函數的形式實現,并給用戶提供API(應用層),用戶可以直接調用。在eclipse加載相應的jar包,引入接口SerialPortEventListener,連接正確的端口,便可以接收數據。
3.3 聯網模塊
服務器框架采取的是:JAVA的SpringMVC+Mybatis +MySQL[14],將高原生態屋管理系統連接網絡后,通過客戶端連接服務器端的IP地址和端口號,并遵循TCP/IP協議,構建socket通信,sever端將接收請求和參數,最后通過訪問client客戶端的數據庫,實現資料上傳,其通信過程如圖4所示。
3.4 界面設計與功能實現
使用JAVA語言開發系統的界面,通過JDBC把系統界面與MySQL5.0建立的數據庫聯系起來[15]。系統根據不同的操作從數據庫中查詢數據或輸入數據,從而實現系統管理。
管理員界面以普通管理員界面為例,該界面的主要功能是錄入、查詢各模塊的數據信息及存儲普通管理員基本信息。普通管理員添加修改以后,其個人信息及工作記錄會存儲到這張表中。
數據可視化模塊以二維散點圖為例,在數據庫調取數據信息后,針對生態因子模塊,采取二維散點圖(只表示日時段的數據變化),可使數據直觀化。
4 結束語
此項目能高效的儲存和管理海量的高原生態屋中各環境因子的數據,對高原環境下的高原生態屋有著巨大的作用。切實保證了高原生態屋能夠科學化運行,為未來智能化、信息化管理生態屋奠定基礎。
參考文獻:
[1]楊玉,嚴李強,李林峰,等.基于智能溫室的高原宿主細胞屋設計[J].物聯網技術,2018,01:026.
[2]陳霜洲,李美華.智能化居家養老模式的開發與推廣使用[J].社區心理學研究,2017,01(3):86-100.
[3]郭雅楠,余嘉玲,周景博,等.新時期中國生態補償的理論與政策創新思考[J].政策解讀,2018,06:001.
[4]鞠傳香,吳志勇.基于ZigBee技術的溫室大棚智能監控系統[J].江蘇農業科學,2013,41(12):405-407.
[5]于曼華.基于WSN的梅花鹿數字化養殖系統的研究與應用[D].長春:吉林農業大學,2016.
[6]宋紹成.智能企業猛虎構架研究[D].長春:吉林大學,2016.
[7]朱鵬.農村智能信息服務系統構建及關鍵技術研究[D].南京:南京大學,2011.
[8]王建,陳蘭生,賴其濤,等.大數據背景下的智能化農業設施系統設計[J].中國農機化學報,2016,11(37):180-184.
[9]姚一青.藏品管理信息化研究[D].上海:復旦大學,2014.
[10]巫濤.長沙城市綠地景觀格局及其生態服務功能價值研究[D].長沙:中南林業科技大學,2012.
[11]何志明.智能高速公路綜合管理平臺設計[D].廣州:華南理工大學,2011.
[12]李興澤,王福平.基于物聯網的農業大棚智能管控系統[J].江蘇農業科學,2018,41(1):181-183.
[13]張葉茂.基于無線傳感網的蔬菜基地環境監控系統[J].江蘇農業學,2017,45(24):213-216,221.
[14]王加加.基于aop的安全信息收集與統計系統的設計與實現[D].西安:西安電子大學,2011.
[15]向鍵.基于數據分析的生鮮超市業務系統的設計與實現[D].長春:吉林大學,2017.