<nav id="w0g0m"><code id="w0g0m"></code></nav>
  • <xmp id="w0g0m">
    <xmp id="w0g0m"><nav id="w0g0m"></nav><menu id="w0g0m"><strong id="w0g0m"></strong></menu>
  • <xmp id="w0g0m">
  • <nav id="w0g0m"></nav>
    <menu id="w0g0m"><menu id="w0g0m"></menu></menu>
    1. 網站地圖
    2. 設為首頁
    3. 關于我們
    ?

    智慧農業大棚測控及 信息管理系統

    發布時間:2023-07-17 15:22
    目錄
    摘 要 I
    ABSTRACT II
    第1 章 緒 論 1
    1.1課題研究的背景及意義 1
    1.2國內外研究現狀及發展 2
    1.2.1國內研究現狀 2
    1.2.2國外研究現狀 3
    1.2.3智慧農業大棚的發展概況 4
    1.2.4智慧農業大棚的發展趨勢 5
    1.3課題研究的主要內容及結構安排 6
    1.3.1課題研究的主要內容 6
    1.3.2論文的結構安排 6
    第2 章 系統的整體架構設計及相關技術 8
    2.1系統整體架構 8
    2.2系統的相關技術 8
    2.2.1現代測控技術 8
    2.2.2無線通信技術 9
    2.2.3傳感器技術 1 1
    2.2.4系統開發框架 12
    2.3本章小結 14
    第3 章 測控系統的設計與實現 15
    3.1系統的整體方案 15
    3.2系統的硬件設計與實現 15
    3.2.1微處理器的選擇 15
    3.2.2MCU 控制器電路 17
    3.2.3RS-485 接口電路 19
    3.2.4RS-232 接口電路 20
    325 SD卡接口電路 20
    3.2.6WiFi模塊電路 21
    3.2.7電源模塊電路 22
    3.3系統的軟件設計與實現 23
    3.3.1數據采集的軟件設計 24
    3.3.2通信的軟件設計 25
    3.4控制部分 26
    3.5應用實例 29
    3.6本章小結 33
    第4 章 信息管理系統的設計與實現 34
    4.1通信軟件的設計與實現 34
    4.1.1設備層通信協議 34
    4.1.2服務層通信協議 36
    4.2數據庫的設計與實現 38
    4.2.1數據庫技術 38
    4.2.2數據庫設計與實現 39
    4.3信息管理系統界面的設計與實現 47
    4.3.1系統異步更新 47
    432 MD5力加密算法 48
    4.3.3系統界面設計與實現 51
    4.4系統軟件實現功能 62
    4.5本章小結 62
    第5 章 結論與展望 63
    5.1全文總結 63
    5.2研究展望 63
    參考文獻 64
    致 謝 68
    攻讀碩士學位期間論文發表及科研情況 69
    第 1章 緒 論
    1.1課題研究的背景及意義
    農業是國民經濟的基礎,中國人口眾多,食用的水果、蔬菜等食品,共計 20多萬噸, 除了少數年份為進行品種調整而進口之外,大部分都來自中國[1]。作為世界上最大的農 業國家,農業在中國的經濟和社會發展中發揮著重要作用。農業大棚是設施農業的重要 組成部分,也是我國農業發展的重點之一[2]。良好的氣候和生態環境條件是農業生產的 重要保障,中國在農業生產方面積累了豐富的經驗和知識[3]。然而,在我國大部分地區, 存在許多不利因素,如多山少地、土壤質量差、土壤資源缺乏、氣候條件復雜多變等, 這對農作物的生長極為不利。因此,農業大棚的出現使得農業生產不受環境、氣候、區 域等因素的限制,并在一定程度上改變了現狀。我們對傳統農業大棚的普遍了解是它們 使用人工體力勞動,其特點是精耕細作、生產規模小、生產技術落后、農業部門結構單 一和農業產量低。隨著社會的發展,傳統的農業生產模式已經不能適應現代經濟發展的 需要,傳統的農業種植模式已經逐漸被許多智能技術所取代[4]。
    農業大棚在我國農業生產過程中得到越來越廣泛的應用,但是目前在我國存在一個 普遍的現象,就是傳統農業大棚自動化的程度比較低[5]。農業大棚內環境數據的采集技 術比較落后,而且耗時且費力,控制基本上是大量的人工操作,在一定程度上限制了農 業大棚的經濟效益,不利于農業大棚擴大生產規模,并提高農業信息化水平[6]。隨著科 學技術的發展,農業發展也得到了促進,利用現有的智能化技術,更新和改造傳統的農 業大棚。利用智能化技術改造農業生產模式,是中國農業和國民經濟可持續發展的一件 大事。隨著微型計算機的出現,同時傳感器技術快速發展,其低廉的價格和高可靠性給 農業的轉型帶來了許多便利。因此,根據當前對農業大棚對環境參數的監控需求,使用 傳感器來監控農業大棚內的環境參數,分析數據并控制設備調整環境參數在合適的范圍 內,從而形成一套完整的農業大棚智能化控制系統[7]。該智能化控制系統能夠精確地控 制棚內溫度、濕度、CO2濃度、土壤溫度、土壤濕度以及光照強度等環境參數,可以大 量節省人力和體力,提高大棚內農作物種植的質量和產量,改變傳統農業大棚過去的落 后面貌。
    智慧農業大棚測控以及信息管理系統的研究使用到了現代測控技術、傳感器技術、 數據庫技術以及Java Web技術等多種技術。本課題所研究的智慧農業大棚就是將智能化 控制系統及數據信息管理系統應用到大棚種植上,系統通過數據采集和數據分析,科學 的控制棚內設備設施,從而改變棚內作物的生長環境,以達到作物生長的最佳條件。并 且現在網絡技術發達,智慧農業大棚不僅可以監測棚內環境參數,可以將數據上傳到服 務器,保存到數據庫中,信息系統通過訪問數據庫,查看大棚內的環境參數。現階段, 隨著智能化信息管理技術的發展,我國農業的發展方向,逐漸向智能化方向靠攏,向智 慧農業轉型成為我國的發展熱點之一[8]。
    1.2國內外研究現狀及發展
    1.2.1國內研究現狀
    中國是溫室栽培起源最早的國家。從一開始簡單帶有保護措施的蔬菜種植,到 20 世紀70年代初,地膜覆蓋技術被引入中國,并在保溫方面發揮了一定的作用,到現在智 慧農業大棚的發展,中國的農業水平有著顯著的提高[9]。
    從20世紀90年代開始,我國設施農業的發展越來越迅速,技術水平也飛速提高, 朝著更力科學化的方向發展,使設施農業規模更大,生產產量和質量越來越高[10]。尤其 是最近一段時期,我國越來越重視現代農業的發展,吸取國外技術優點的基礎上,發展 我國農業生產技術[11]。溫室根據不同需求結構不同,隨著技術的發展,溫室管理越來越 智能化,而且由于不同地區的使用條件的不同,各類溫室仍然存在[12]。然而,中國的智 能溫室起步相對較晚。1966年,吉林長春建成了第一個塑料大棚,面積只有70平方米。 20世紀70年代,節能日光溫室開始在應用到中國市場,并且發展非常迅速。截至1994 年7月,全國溫室總面積有515萬畝,其中有節能溫室115萬畝,大棚400萬畝[13]。直 到20世紀80年代初,美國等農業生產技術比較發達的國家相繼引進了許多套現代化溫 室設備[14]。這些引進的現代化溫室設備主要應用在大型城市旁邊,用于育苗,種植等。 智能農業計算機已經被廣泛應用于溫室的智能控制當中, 2000年,江蘇理工大學經過學 習智能化控制技術,成功開發了一套比較典型的溫室軟硬件控制系統,可以綜合控制環 境參數[15]。2010年,我國政府部門出臺了《農業科技發展“十三五規劃”》等政策文件, 在十三五期間,全力支持我國農業的發展。在此期間,國內外對溫室環境無線測控技術 進行了相關研究,主要利用GPRS網絡通信技術、Zigbee、藍牙和WiFi等無線通信方式 進行傳輸信息。
    最近幾年,智慧農業迅速發展,農村網絡基礎設施建設得到力強,據統計2017年底, 全國行政村寬帶覆蓋率達到96%,為“互聯網+現代農業”提供基礎。2018年7月,全國 21 個省市啟動了 8 大農產品大數據試點項目。通過完善監測預警系統,每天發布農產品 批發價格指數,每月發布19種農產品的市場供求報告和5種產品的供求平衡表,實現數 據管理服務,指導產銷。隨著現代科學技術以及物聯網技術的不斷發展,在一定基礎上 為智慧化農業發展提供技術支持,圍繞溫室設施智能化管理的需求,一些遠程控制系統 已逐步應用于智能農業的發展和建設。自主研發了溫室作物環境信息傳感器、多回路智 能控制器、節水灌溉控制器、水肥一體化等一系列技術產品,為提高我國溫室智能管理 水平發揮了重要作用[16],加快我國智慧農業建設步伐。
    1.2.2國外研究現狀
    溫室作為一種農業生產的基礎設施,是一種與外界氣候半獨立、半封閉的人工生態 壞境,為農作物的生長創造了適宜的環境。所以它可以避免外界各種不利因素的影響, 給農作物創造更好的生長環境[17]。隨著先進技術和經濟的發展,智能化溫室成為溫室發 展的主要方向,不斷學習改進自動控制技術以及其他有利于溫室發展的先進技術,實現 智能化溫室的長期發展[18]。
    隨著快速發展的電子技術,微型計算機開始步入市場,越來越多的微型計算機控制 用于溫室環境控制,使溫室發展產生了巨大的變化[13]。溫室發展歷程大致有五個階段, 分別是手動、機械、分散電控、集中電控、計算機綜合控制,由于技術不夠先進,傳統 的溫室控制系統有一定的缺陷,所以很難實現環境的綜合控制。 90 年代開始,微型計算 機研究開發水平越來越高,利用微型計算機開發溫室環境控制系統,使溫室控制進入智 能化階段[19-21]。溫室里的溫度、光線、水和肥料都由計算機控制形成一套完整的測控系 統。
    在設施農業技術方面,美國具有極高的設備生產水平和社會化服務。荷蘭是歐美國 家設施農業的代表, 20 世紀,在荷蘭和世界市場出現的溫室氣候控制系統中使用計算機 作為商品的核心部分[22]。 2004 年底,荷蘭溫室的總面積占世界溫室的四分之一,大部分 是連棟溫室。生產過程是機械化的。集成工業技術被廣泛應用,通過計算機智能控制系 統有效地監控農業大棚中的各類環境因素,玻璃溫室都由氣候控制計算機控制。從 20 世紀90 年代到 10 年代,以色列的溫室已經更新了三代[23-25]。為了實現溫室澆水、施肥 和環境的智能控制,科學家研究出一系列有關農業大棚智能化控制的計算機軟件和硬件。 計算機可以自動監控作物的生長,遠程控制設備,系統采用滴灌的方式澆水施肥。日本 大力發展設施農業,日本首先從本國自身條件出發,全面了解國內農業設施情況,根據 國情學習國內外技術經驗,全面改善溫室結構以及溫室智能化控制系統,全面監控栽培 植物的各種生長環境,實現農作物種植的高度自動化。
    智慧農業已成為世界現代農業發展的一大趨勢。許多發達國家和地區的政府和組織
    相繼推出了智能農業發展計劃。2015年日本推出基于“智能機械+現代信息技”術的下一 代農林水產養殖創造技術。2017 年,歐洲農業機械協會召開峰會,隨著科技的發展,歐 洲農業的未來發展方向是農業4.0——智慧農業,其特點是應用智能化技術和先進的農業 機械設備;在經歷了機械化、雜交、化學和生物技術之后,美國正走向智慧農業(Smart Agriculture)購。外國溫室工業致力于高科技發展,利用現有的技術,開發綜合控制溫 室系統,溫室系統不是對環境變量的簡單的控制,由于各類環境因素的影響,而是一系 列復雜的控制系統,除了控制外,從育苗到包裝出售,全程自動化[26]。
    1.2.3智慧農業大棚的發展概況
    目前中國現代溫室技術已經相當成熟, “中國式日光溫室”是我國的一種具有自主知 識產權的高效節能溫室建造形式[27]。隨著各種溫室設計和施工技術的不斷改進和成熟, 一些標準化的產品和材料已經逐漸定型,溫室設計已經開始向標準化發展。溫室項目作 為設施農業在種植業領域的代表,匯集了現代農業的精髓,代表了現代農業的發展方向 [28]。 2018年溫室總面積已經達到二百多萬公頃, 2018全國各地區溫室設施(建筑)面 積分部如圖 1.1 所示。
     
    2018年全國溫室面積組成及2010-2018年溫室面積發展趨勢如圖1.2所示。溫室主 要由塑料大棚、連棟溫室和日光溫室組成,其中塑料大棚占 65.8%,日光溫室占31.8%, 連棟溫室占2.5%。從2010年到2018年間,溫室面積逐步增力,最近幾年趨于平穩,人 們不僅限于擴大種植面積,也開始研究溫室智能化控制技術,使農業種植和管理更力智 能化。
     
    圖1.2全國溫室面積組成及溫室面積發展趨勢圖
    國外現代農業大棚確實有自己獨特的特點,包括技術含量高,智能化程度高,管理 得當等。目前,大部分控制系統調節環境參數,只考慮單因素開關量[29,30]。而事實上, 大棚中的溫度、濕度、C02濃度等其他環境因素都在一定程度上影響著環境中農作物的 生長,這些因素相互關聯。環境因素的時空變化非常復雜,當我們改變某個環境因素時, 我們經常會將其他環境因素改變到不適當的水平。中國各個地區的氣候條件不同,根據 環境的不同,應該適當地引入,以提高中國溫室大棚工業的技術水平。我們需要結合我 國地區實際特點,找出適合我國的溫室類型。
    1.2.4智慧農業大棚的發展趨勢
    未來一段時間,節能、智能化、信息化將成為中國現代智慧農業大棚的主要發展方 向,不斷提高和改善系統整體性能,逐步形成中國特色溫室大棚智能化測控產品。特別 是一些大型企業,他們意識到智慧農業大棚產業存在的問題,調整管理策略,注重實效, 使大棚的發展更加合理和成熟。從長遠發展來看,中國農業大棚市場有著巨大的發展潛 力,其用戶正變得更加理性和成熟。中國地廣物博,在不同地區,為適應其氣候特點, 科學合理布置溫室區域,推廣農業大棚應用技術。中國的智慧農業大棚產業也開始向國 際市場發展,外國溫室企業也試圖占領中國市場,市場正在向國際化發展。因此,中國 現代智慧農業大棚產業技術將會快速地發展,市場前景非常廣闊。
    智慧農業大棚基本發展趨勢如下:
    (1)采用全智能化設計。系統設定條件,系統便可根據設定參數進行自動化控制, 節省人力資源。同時,農田信息的采集和聯網還可以實現自然災害監測和預警,幫助用 戶實現農業設施的精確化控制和標準化管理。
    (2)實現實時數據傳輸和共享。利用傳感器采集在棚內數據信息,為遠程查看提供 數據基礎。
    (3)保障安全性。利用現代科技實現質量跟蹤,從生產到銷售的實施智能化監控[31]。
    1.3 課題研究的主要內容及結構安排
    1.3.1課題研究的主要內容
    本課題研究的主要是對智慧農業大棚測控及信息管理系統的設計及實現。本系統分 為信息管理系統和數據測控系統兩部分。數據測控系統包括數據采集單元與控制單元, WiFi 模塊作為無線通信模塊與服務器通信,進行數據傳輸。測控系統利用傳感器監測棚 內各類環境參數,實時顯示數據信息,將所采集的數據通過控制算法分析處理并控制棚 內設備,從而改變棚內各種環境變量。然后將傳感器測量到的各個物理量參數數據上傳 至服務器并保存到數據庫中,信息管理系統使用 Java Web 編寫程序,信息管理系統從數 據庫中讀取數據,可查看棚內各項環境參數的實時數據和歷史數據,同時可以將數據以 圖表的形式顯示出來,使用戶更加清晰的查看棚內各項環境參數以及變化趨勢,方便對 農業大棚的管理。
    首先,根據需求分析,系統采用傳感器來感知各類環境參數,并將數據保存到數據 庫中,這些傳感器數據為精準調控提供科學依據。然后控制單元接受系統的控制命令, 控制棚內設備。最后是信息管理系統界面的設計及實現,系統采用 B/S 架構,方便使用, 系統發布后,登錄系統平臺便可查詢農業大棚內的溫濕度、CO2濃度、土壤溫濕度、光 照強度等參數,還可以對數據進行分析實現對農業大棚更加智能化的管理,系統不僅可 以顯示實時數據,并可查詢歷史數據,其中數據還可以通過圖表的形式更加直觀化的顯 示出來,農業大棚內的數據參數如果超過一定安全范圍,系統會發出警告,使用戶及時 關注并處理故障。
    本課題的目的就是測控系統實現后能夠實現大棚內環境參數的實時采集,并且具有 數據自動存儲、數據傳輸、實時顯示以及自動控制等功能,信息管理系統能夠從數據庫 讀取實時以及歷史數據,方便用戶查看。整體系統實現實時監測、控制,使管理更加精 細化、環境參數信息化,使大棚種植更加科學化、智能化,智能化的系統可提高農作物 的產量和品質,從而提高經濟效益。
    1.3.2論文的結構安排
    本課題結合現代控制技術、無線通信技術和軟件開發技術,設計和實現智慧農業大 棚測控及信息管理系統,根據課題的研究內容,本文分為五章進行介紹。
    第一章是緒論,針對智慧農業大棚測控及信息管理系統,首先探討了的研究背景以 及研究意義,然后介紹了智慧農業大棚的國內外研究現狀、發展概況以及發展趨勢,最 后給出了了本文的主要內容與本文結構安排。
    第二章是系統的整體架構設計及相關技術,根據需求設計系統架構,它是整體設計 實現的基礎,實現所需功能所需的結構和基礎設備等,并介紹了系統實現所涉及到的部 分技術。
    第三章是測控系統的設計與實現,首先設計測控系統的整體架構,然后是測控系統 的軟硬件設計與實現,其中包括微處理器的選擇以及各個模塊的電路設計以及部分程序, 最后是控制部分設計與實現并給出系統應用實例。
    第四章是信息管理系統的設計與實現,首先分析了設備層和服務層的通信協議,然 后探討數據庫技術,選擇合適的數據庫并根據需求設計數據表,并介紹了系統異步更新 和 MD5 加密算法的應用,最后介紹智慧農業大棚信息管理系統的主要界面的設計與實 現。
    第五章是結論與展望,簡單梳理全文并總結,并對未來的研究方向進行展望。
     
     
    第2 章 系統的整體架構設計及相關技術
    2.1系統整體架構
    本課題系統主要由傳感器、測控模塊、通信模塊、控制模塊、數據庫、服務器以及 計算機信息管理系統平臺幾部分組成,系統整體架構如圖2.1所示。測控系統利用 WiFi 無線通信模塊與服務器通信。在每個農業大棚內合適的位置放置測控模塊,通過傳感器 采集數據,其中傳感器采用 485 信號的傳感器,通過 RS-485 總線與 STM32 連接,測控 模塊通過 ModBus 通信協議采集傳感器數據,根據對采集的數據分析處理,然后與設置 的特定值比較并控制設備執行器。例如設定值為25°C,當棚內溫度高于25°C時,系統根 據規則判斷是否開啟風機通風,給大棚降溫。最后將數據通過無線傳輸傳送到服務器, 用戶可以通過信息管理系統實時查看大棚內的各項環境參數以及歷史數據,還可以根據 歷史數據進行數據分析,使用戶更加科學的管理農業大棚。
    數據采集節點 I
    I |溫濕度傳感器| C02傳感器| |光照傳感器| I
    I , , , S, I
    I |通信模塊|匸環境數據采集處理模塊 | 1
    圖 2.1 系統整體架構
    2.2系統的相關技術
    2.2.1現代測控技術
    在現代工業發展中現代測控技術占有重要地位,各種不同領域的實用技術都涉及到 現代測控技術,使現代測控技術的發展趨于多樣化。目前,大多數的科學研究工作都需 要現代測控技術的支持。它適用于控制工程、計算機軟硬件以及智能儀器儀表等高科技 領域。
    現代測控技術是一門集光、電、機、算于一體的技術,大致分為四個階段過程,首 先進行信號采集,一般是采用各類傳感器采集數據信息,包括物理、化學、開關量信號 以及圖像信號等[32,33]。其次對采集到的數據進行整理,將采集到的電信號轉化為容易處 理的數字信號,例如開關量信號通常可以被轉換成所需的數字信號,在被無紙記錄儀采 集后輸出到下一個處理環節。圖像信號主要用于采集后的顯示,采集信號都需要轉化成 數據信號再處理,在信號處理階段,數字信號主要用于顯示或發送控制信號。最后就是 顯示控制,系統通過顯示屏或者軟件平臺顯示數據,根據數據對設備進行控制。以上幾 個環節構成了整個測控過程。如果包括控制過程,則可以完全形成閉環,即信號從對象 開始,在采集、整理和處理之后,控制信號最終被施加到對象的閉環[34-36]。
    現代測控技術因為其高效、操作方便等優點被廣泛應用于社會發展的各種領域[32]。 在本研究課題中,農業大棚利用測控技術,采集所需數據,分析并控制設備。測控模塊 與傳感器之間的Socket通信是基于TCP/IP協議,傳感器數據通過無線通信技術發送到 服務器端,以供智慧農業大棚信息管理系統使用。根據在數據庫中保存的數據,信息管 理系統可以查看實時和查詢歷史數據,以圖表的形式顯示數據,并且測控系統還可以通 過設定自動控制農業大棚中的設備,實現農業的智能化,減輕人力負擔。
    2.2.2無線通信技術
    無線通信(Wireless communication)是一種通信方法,其原理是利用電磁波信號可以 在自由空間傳播的特性來交換信息[37]。無線通信技術跟傳統通信技術相比無需布線,系 統維護更加方便,而且還方便用戶管理和使用,具有很高的擴展性強和靈活性,還可以 節省人力;此外,無線通信技術具有很強的抵抗環境變化的能力,更容易診斷故障。 常 用的無線通信技術有ZigBee、GPRS、WiFi等。
    (1)ZigBee
    ZigBee 是一種短距離低功率無線通信技術,主要用于短距離無線連接[38]。 ZigBee 通信的主要特點有功耗低、效率高、成本低、延時短以及速率低等優點,ZigBee通常工 作在 20-250kbps 的較低速率[39]。主要適用于家居建筑控制、工業現場自動控制、農業信 息采集與控制、公共場所信息檢測與控制、智能標簽等領域,可嵌入各種設備。
    但ZigBee使用F8X26網關(其中x表示網絡制式,如F8126表示GPRS網關)組 網拓撲結構圖,如圖2.2所示。基本設計就是通過云管理平臺可以實現遠程采集農業大 棚里溫度傳感器的4-20mA的電流,從而能夠實時監測大棚溫度,對農作物進行合理管 控;也可以通過LAN 口本地采集、WiFi無線本地采集或者RS232串口進行本地采集。 當然也可以將溫度傳感器(信號輸出為4?20mA)換成RS232/485串口設備。
     
     
    F8914終端或路由
    圖 2.2 ZigBee 組網拓撲結構圖
     
    (2)GPRS
    GPRS 是一項可以高速處理數據的技術,以分組的形式將資料傳送到用戶端[40,41]。 分組交換技術是計算機網絡中比較重要的數據傳輸技術。因此 GPRS 網絡可以方便地與 互聯網連接,促進了移動數據業務的初步飛躍發展,實現了移動通信技術和數據通信技 術的完美結合。
    GPRS 通信用于實現數據分組傳輸和接收,具有速率高、利用率高等特點[42]。農業 大棚的節水灌溉自動化系統如圖 2.3 所示,底端的傳感器數據可以通過 GPRS 傳輸到監 控中心,用戶可以隨時查看數據,如果有故障或數據異常,可以通過短信報警通知用戶。
     
    圖 2.3 GPRS 節水灌溉自動化系統
    (3)WiFi
    WiFi的全稱是Wireless Fidelity,翻譯過來就是無線保真度,WiFi基于IEEE 802.il 系列協議,是一種允許電子設備連接到WLAN的技術[43]。WiFi技術具有組網簡單、無 需布線、不受布線條件限制的優點[44];終端支持比較豐富,經濟實惠,組網成本低;應 用靈活,可以靈活地適用于只有少數用戶的小型網絡,也可以適用于有數千用戶的大型 網絡;為方便用戶使用,還為用戶提供漫游服務。
    WiFi通信的設計方案比較簡單,僅需要通過MCU控制WIFI模塊,通過CAN總線 與主板通信,然后通過 WiFi 模塊傳輸數據信息到服務器[45]。通過連接服務器,然后服 務器對數據進行保存,為系統平臺提供基礎數據支撐。其設計方案如圖 2.4 所示。
     
    圖 2.4 WiFi 通信設計方案
    對農業來說,需要考慮成本,安裝和布線等問題。而WiFi通信傳輸速度快、成本比 較低,無需布線、使用范圍比較廣、使用比較普遍,基本滿足需求,所以本課題研究無 線通信技術采用的是WiFi通信。
    2.2.3傳感器技術 傳感器是感知各類信號的設備,其工作原理是利用物化生效應將測量的非電量轉換 成電量[46-49]。隨著信息技術的發展,傳感器技術在物聯網中越來越重要,傳感器技術作 為采集信息的基礎,也在快速發展。
    市場上有各種類型的傳感器,要根據設計系統的需求,選擇合適精度的傳感器。對 于某些應用來說,過高的精度沒有太大的意義;太寬的范圍也會降低測量精度,并且會 導致成本過高,而且增加技術難度[50]。因此,首先所有系統都需要穩定性比較高、耐用 性比較強的傳感器,其次再根據測量對象的需求正確選擇精度和范圍是非常重要的。
    隨著科學技術的快速發展和相關條件的成熟,傳感器技術在智慧農業的發展中占據 非常重要的地位,通過傳感器采集數據,分析并控制系統,改善溫室環境,使得農業生 產不僅可以擺脫天氣等自然因素的限制,還可以實現對農田、溫室、水產品、牲畜等領 域的遠程科學監測,從而有效降低勞動力。它還可以利用科學分析來提高整個農業抵御 災害和風險的能力,提高農業產量,增加經濟收入。
    智慧農業大棚在農作物生產過程中傳感器也得到了較為廣泛的應用,它的主要作用 是通過對農作物環境中的各種參數,包括溫度、濕度、CO2濃度、土壤溫濕度以及光照 強度等主要數據進行采集檢測,然后將輸送到主控微機上,進而實現對各種環境條件的 調節作用;還可以將數據上傳至服務器,然后保存到數據庫中,為供客戶端查詢,分析 數據提供基礎。
    2.2.4系統開發框架
    本課題研究的信息管理系統的開發使用SSM框架,SSM就是Spring、SpringMVC 和MyBatis的簡稱,其中SpringMVC是Spring框架中的一部分,SSM框架結構如圖2.5 所示。通常用在數據源比較簡單Web項目當中,使用比較簡單明了。下面分別介紹一下 各個框架以及在系統實現中的主要作用。
    (1)Spring
    Spring是一個用于控制反轉和面向切面的輕量級容器框架[51]。Spring的框架不需要 程序員新建一個對象,而是讓Spring框架來完成所有工作。
    (2)Spring MVC
    SpringMVC 的工作是攔截項目中的用戶請求。其中 MVC(Model、 View、 Controller) 就是模型、視圖和控制的整體簡稱,這種模式可以將整體Web系統劃分功能,每個單元 執行相應職能,MVC強制分離Web應用程序的輸入、處理和輸出,各自處理分配到的 任務。
    (3)MyBatis
    MyBatis 是對 JDBC 的封裝,使數據庫的增改刪等操作變的更加簡單,方便用戶配 置使用。對于MyBatis的工作過程,我們可以簡單的理解為MyBatis是一個框架,用于 管理數據的添加、刪除、修改和檢查等操作。
     
     
    圖 2.5 SSM 框架結構圖
    系統程序完成一項功能的各類文件名稱和功能如圖所示,如表2.1所示。 表2.1 SSM框架文件信息表
    名稱 功能
    Entity
    Model 層,實體類,定義對象屬性
    (Spring)
    Mapper.xml 定義數據庫執行的操作,比如 insert、selectAll、selectByKey、delete、update
    (Mybatis) 等操作
    Mapper.java 持久層,用于連接和訪問數據庫。定義操作數據庫的各種接口,Mapper.xml
    (Mybatis) 中的操作根據ID映射到Java函數中
    Service.java 業務層,存儲業務邏輯處理,向持久層( Mapper )發送請求,為控制層
    (Spring) 提供服務,接受控制層的參數,完成相應的功能,并返回控制層
    控制層,用于業務模塊的過程控制。將頁面請求與服務層連接,獲取頁面
    Controller.java
    請求的參數,通過自動組裝將不同的 URL 映射到相應的處理函數,獲取
    Spring MVC)
    參數,并處理,然后將傳輸到服務層
    JSP View層,向控制器(Controller)發送請求,頁面請求什么參數,需要獲
    Spring MVC) 取什么數據
    2.3本章小結
    本章首先介紹了智慧智慧農業大棚測控及信息管理系統的整體設計方案以及系統所 包括的內容。然后介紹了系統在研究設計過程中所用到的一些相關技術,包括現代測控 技術、無線通信技術、傳感器技術以及系統開發框架,并闡述了相關技術在農業大棚中 的發展應用以及優點。
    第 3 章 測控系統的設計與實現
    測控系統的設計主要包括農業大棚內的整體測控系統,微控制器系統、各類傳感器 以及設備之間的通信。測控系統的主要功能是能夠實現棚內各種數據的采集并通過 RS-485與微控制器通信,農業大棚內的數據通過WiFi模塊與服務器通信,并將數據上 傳至服務器并保存到其數據庫中。
    3.1系統的整體方案
    測控系統的數據通信是基于 Modbus 協議標準下的數據采集傳輸,每個大棚的檢測 點都有一個測控系統來通過傳感器來接收棚內溫度、濕度、CO2濃度、土壤溫濕度以及 光照強度等重要參數。根據采集到的數據分析判斷,然后控制熱泵或空調、水簾、燈光、 風機和灌溉等設備,將環境數據控制在合適的范圍之內,以達到作物生長的環境要求。 測控系統的基本結構如圖 3.1 所示。
     
    圖 3.1 測控系統基本結構圖
    測控系統采用STM32為核心,采用485信號的傳感器通過485接口連接,并與STM32 通信,測控系統主要包括WiFi模塊、控制執行模塊與顯示模塊。其中WiFi模塊是與服 務器連接通信,將傳感器的數據傳輸并保存到數據庫中,根據系統的數據分析,從而控 制執行模塊控制棚內設備,顯示模塊可顯示當前環境參數的實時數據。
    3.2系統的硬件設計與實現
    3.2.1 微處理器的選擇
    微處理器是把各種功能部件集成在一塊芯片上構成的微型計算機,即單片機[52]。要 根據系統需求選擇單片機,還要考慮成本、功耗以及封裝類型等因素。主要考慮一下幾 點:
    八'、•
    (1)考慮MCU處理運算速度的需求。在本系統設計中,微處理器需要采集溫濕度、CO2 濃度、土壤溫濕度以及光照強度數據的同時,還要將采集的數據傳輸到服務器,所以要 求微處理器的速度要快一些。
    (2)考慮低功耗。由于農業大棚測控數據需要實時采集,對低功耗有一定的要求。在工 作時間長時低功耗相對于其他來說,可以降低設備溫度,隨著設備溫度的降低,器件壽 命則相應延長。
    (3)考慮簡化系統設計。簡化系統可增加系統的穩定性。
    綜合考慮以上幾個方面,在本測控系統中,微處理器采用的是STM32系列的單片 機。STM32系列包含五個產品線,它們的引腳、外設和軟件均兼容[53,54]。STM32F103 具有性能高、低功耗、2通道12位D/A轉換器(STM32F103xC,STM32F103xD, STM32F103xE獨有)、112個I/O端口等特性。不僅開發方便簡單,為開發人員提供了 各種易于上手的軟硬件輔助工具,開發工具,比較齊全,開發資料也比較豐富。集成了 非常豐富的接口,通信模塊以及其他功能模塊,利用簡單的架構和簡便易用的工具實現
    了高集成度,最終根據需要選擇增強型STM32F103RET6,具體型號說明如表3.1所示。
    表 3.1 STM32F103RET6 型號說明
    型號代碼 詳細規則
    STM32 STM32代表ARM Cortex-M內核的32位微控制器
    F F代表芯片子系列
    103 103代表增強型系列
    R R代表引腳數,R代表64腳
    E這一項代表內嵌Flash容量,其中6代表32K字節Flash,8代表64K字節Flash,
    E B代表128K字節Flash,C代表256K字節Flash,D代表384K字節Flash, E代
    表512K字節Flash, G代表1M字節Flash
    T T代表LQFP封裝
    6 6代表工作溫度時-40?85 °C
     
     
    3.2.2MCU控制器電路
    由上章節可知,本測控系統的MCU控制器采用的是STM32F103RET6。這一系列微 控制器的詳細參數如表3.2所示。
    表 3.2 STM32F103RET6 詳細參數
    名稱 功能參數
    核心處理器 ARM®Cortex™-M3
    核心尺寸 32 位
    最高工作頻率 72MHz
    連接性 CAN, I2C, IrDA, LIN, SPI, UART/USART, USB
    外設 DMA,電機控制 PWM, PDR, POR, PVD, PWM,溫度傳感器,WDT
    I/O 口 51
    程序存儲容量 512KB
    程序存儲器類型 Flash 閃存
    RAM 容量 64Kx8
    電壓 2V?3.6V
    數據轉換器 A/D16x12b、D/A2x12b
    工作溫度 -40C?85C
    封裝 64-LQFP
    測控系統的MCU控制器電路原理圖如圖3.2所示。
     
     
     
    STM32.F103RL15
    ("Vai-IAMrtK-KH. PCJ4-OSC32 IN PC35-OSC32 OUT
    圖3.2MCU控制器電路原理圖
    (1)供電電源
    MCU控制器電路采用3.3V供電,加了 6個O.Oluf去耦電容,起濾波作用[55]。
    (2)復位電路
    系統采用上電復位,STM32上電時NRST出現短暫的低電平[56],該低電平持續時間 由電阻和電容共同決定,計算公式如下:
    t = l.lRC (2.l)
    帶入數值計算,其中R為10KQ, C為O.luF,所以可以計算出需求的復位信號持續 時間約在1ms左右。手動復位則是按鍵SW-PB按下時,NRST和地導通,從而產生一個 低電平,實現系統復位。
    (3)外部時鐘電路
    外部時鐘電路通過OSC_IN和OSC_OUT接入STM32,電路包括晶振和起振電容, 晶振的作用是為最小系統提供最基本的時鐘信號,無源晶振需要外接起振電容,起到一 定的濾波的作用,濾除晶振波形中的高頻雜波,保證晶振輸出的震蕩頻率更加穩定,為 了提高電磁兼容性,OSC_IN和OSC_OUT通過10K電阻接地[57]。
    本系統的外部時鐘電路主要采用12MHz晶體諧振器,晶振兩側加了兩個20pF的起 振電容,經過芯片內部倍頻處理后可以達到系統時鐘要求。
    (4)啟動方式
    M3核的器件有3種啟動方式,BOOTO、BOOT1跳線選擇CPU的啟動方式如下表
    3.3所示。本系統直接將 BOOT0 引腳和 BOOT1 引腳置為低電平[58]。
    表 3.3 CPU 啟動方式
    BOOTO BOOT1 啟動模式
    O 無關 用戶閃存存儲器啟動
    1 O 從系統存儲器啟動
    1 1 從內嵌SRAM啟動
     
    (5)SWD 下載接口
    本系統下載接口選用SWD接口電路,包括VDD (3.3V),SWDIO, SWCLK,GND 四線[59]。詳細信息如下表3.4所示。
     
    表 3.4 SWD 接口線的詳細信息
    名稱 詳細功能
    VDD 目標板參考電壓信號
    SWDIO 串行數據輸入輸出
    SWCLK 串行時鐘輸入
    GND 公共地信號
    3.2.3 RS-485 接口電路
    RS-485是一個電氣特性標準,方便數據傳輸。RS-485具有通信速率高、距離遠等 優點,而且利用差分傳輸使噪聲輻射比較小,并具備多個驅動器和接收器。
    本次測控系統選用具有485信號輸出的傳感器,采用RS-485接口接收各類傳感器采 集到的數據信息,傳輸至MCU,以備后續工作的使用。RS-485接口電路圖如圖3.3所 示。RS-485接口采用的是一種差分傳輸方式,各節點之間的通信是通過雙絞線作為傳輸 介質[60],將其中一線定義為A,另一線定義為B。本系統RS-485通訊接口電路采用的芯 片型號為SN65HVD3082,是低功耗半雙工RS-485收發器,由TI公司研制。其規格參 數如下:
    (1)通信方式:半雙工
    (2)接收器滯后:30mV
    (3)數據速率: 200kbps
    (4)電壓-電源: 5V
    (5)工作溫度:-40°C?85 °C
    (6)封裝: 8-SOIC
     
    3.2.4RS-232 接口電路
    RS-232用于與顯示屏通訊,電路圖如圖3.4所示。采用SP3232串口轉換芯片設計, 基本參數如下所示:
    (1)供電電壓:3.3V供電
    ⑵工作溫度范圍:-40°C?85°C
    (3)數據率:235kbps
    (4)接收器數:2個
    (5)驅動器數:2個
     
    圖3.4 RS-232接口電路圖
    3.2.5SD卡接口電路
    本系統還設計了 SD卡的接口電路,系統安裝SD卡后,可以保存短時間內的數據, 防止系統關機或者出現故障后數據的丟失。SD卡總線方式有兩種,如表3.5所示。
    表3.5 SD卡總線方式
    名稱 結構
    SD方式 6線制,使用CLK、CMD、DATA0-DATA3進行數據通信
    SPI方式 4線制,使用CS、CLK、Dataln、DataOut進行數據通信
    因為SD方式的數據傳輸速度比較快快[61],本系統采用SD方式,本模塊采用3.3V 供電,SD卡的電路接口如圖3.5所示。
     
     
    3.2.6WiFi 模塊電路
    WiFi 模塊或者可通俗地理解為一種轉換器,將單片機的串口信號轉換成無限 WiFi
    信號,其工作流程圖如圖 3.6 所示。
     
     
     
     
    ESP8266是一款高性能的UART-WiFi (串口-無線)模塊,支持WiFi AP (模塊作為 熱點,實現局域網無線控制)、 WiFi STA (模塊通過互聯網實現控制) 、 WiFiAP+WiFi STA三種共存模式,該模塊還具有簡潔高效的AT指令,方便設備通過網絡傳輸數據, 使開發更加簡單[62]。
    3.2.7電源模塊電路
    本系統電源模塊主要用到的是5V和3.3V,24V轉5V電路圖如圖3.8所示。采用 TPS5430降壓芯片作為電源轉換芯片,為了降低設計電路的復雜性,TPS5430反饋環路 內部補償。基本參數如下所示:
    (1)功能:降壓
    (2)電壓輸入:5.5V~36V
    (3)電壓輸出:1.221V?32.04V
    (4)電流輸出:3A
    (5)開關頻率:500KHz
    (6)工作溫度:-40C?125C
     
    GND
    圖 3.8 24V 轉 5V 電路圖
    其中3.3V電源主要是為STM32最小系統、RS-232接口、SD卡接口以及WiFi模塊 等電路供電,5V轉3.3V電路圖如圖3.9所示。本次5V轉3.3V電源設計采用 LM1117-3.3V,基本參數如下所示:
    (1)輸出電壓:3.3V、最大輸入電壓:15V
    (2)輸出電流:1.5A
    (3)輸出端數量:1個Output
     
     
    GND
    圖 3.9 5V 轉 3.3V 電路圖
    除了以上兩個主要部分外,電源模塊還包括電源指示以及電源插針電路,方便用戶
    查看和使用電源,電路圖如圖 3.10所示。
     
    3.3系統的軟件設計與實現
    測控系統的軟件設計主要是基于STM32F103RET6芯片的編程,主要包括一些接口 的初始化和基本參數設置、數據采集與傳感器之間的通信、數據采集與Wi-Fi模塊之間 的通信等。基本的測控系統軟件設計框圖如圖 3.11 所示。
     
     
    圖 3.11 控制系統軟件框圖
    3.3.1 數據采集的軟件設計 數據采集是系統的最關鍵部分,根據需要本系統軟件采用進入中斷方式采集多路傳 感器數據,分析處理并上傳。數據采集框圖如圖3.12 所示。
     
    圖 3.12 傳感器數據采集框圖
    傳感器數據采集部分程序代碼如下:
    //函數名稱: Multiple_read_Si7021 //函數功能:多字節讀取傳感器 void Multiple_read_Si7021(u8 REG_address, u16 *value)
    { u8 Si7021_BUF[2]={0};〃緩存數組定義
    IIC_Start();//IIC 起始信號 IIC_Send_Byte((SLAVE_ADDR<<1)|0);
    IIC_Wait_Ack();〃 等待應答 IIC_Send_Byte(REG_address);
    IIC_Wait_Ack();〃 等待應答 delay_ms(19);〃等待傳感器數據轉換完成,至少應該大于18ms IIC_Start();
    IIC_Send_Byte((SLAVE_ADDR<<1)|1);
    IIC_Wait_Ack();
    Si7021_BUF[0] = IIC_Read_Byte(1);〃 高八位
    Si7021_BUF[1] = IIC_Read_Byte(0);〃 第八位 IIC_Stop();〃停止信號
    *value=((Si7021_BUF[0]«8)+Si7021_BUF[1]);〃 將高低八位合成為十六位數據
    } //單片機內定時器中斷程序 void TIMER2_ISR (void) interrupt 5 {SFRPAGE=TMR2_PAGE;
    TF2=0; //去掉中斷標志 TF2 longdao_input++; //切換至下一路輸入 if(tongdao_input==moni_input) {tongdao=1;} //循環}
    3.3.2通信的軟件設計
    系統通信部分硬件設計直接采用WiFi模塊,其軟件工作流程圖如圖3.13所示。
     
     
    圖 3.13 WiFi 工作流程圖
    通信部分軟件設計首先初始化,然后接受系統發送的 AT 命令,根據命令連接服務 器并發送數據,如果發送失敗記錄日志并報警。
    3.4控制部分 控制系統通過控制電機、風機、水泵、灌溉施肥機等設備,控制棚內環境參數在合
    適的范圍內,如溫濕度、CO2濃度、光照強度等。大棚結構模型如圖4.14所示。
     
     
     
     
    11風設備
     
     
    應制88節點
    圖 3.14 大棚結構圖
    控制部分主要是自動控制、手動控制以及遠程控制。其流程圖如圖 4.15 所示。控制 系統分為自動控制和手動控制,手動控制需要人工操作設備,遠程控制通過管理平臺控 制,而自動控制系統分時段、分時期控制棚內的溫度、濕度、CO2濃度、光照強度等參 數,分別是早晨、白天、黃昏、晚上四個不同時期。不同時間段的轉換時間可以根據需 要修改,能夠很好的模擬自然環境,避免環境參數突然的變化引起農作物的不適。
     
    圖 3.15 軟件控制流程圖
    (1)溫度控制
    根據環境要求,設定目標溫度,當測量溫度-目標溫度設定<-ir時,系統控制設備, 開始增溫,棚內增溫系統控制流程圖如圖3.16所示,在農作物生長周期內,不管白天還 是晚上,只要檢測到棚內溫度滿足增溫條件時就啟動水循環加熱,水循環外部利用太陽 能和水箱,如果水箱內的水大于40°C的時候,直接使用水通過管道增加棚內空氣溫度, 但是水箱內水小于40C時,則需要啟動電輔熱系統給循環水加熱,正常情況下通過太陽 能的能量給循環水加熱;當測量溫度-目標溫度設定>1C時,開啟風機和水泵,采取濕簾 降溫。首先開啟水泵延時5分鐘,將濕簾充分浸濕后,打開風機,降溫結束后,為了將 濕簾吹干,延時關閉風機10分鐘。同樣濕度根據設定濕度,當測量濕度-目標濕度設定 <-5%RH時,驅動水泵、電磁閥啟動加濕器加濕。
     
     
    圖3.16棚內增溫系統控制流程圖
    (2)光照控制
    光照控制除了遮陽簾的控制之外,還具有補光設備,早晨和傍晚由于光照度不足, 開始定時補光,當白天測量光照度-目標光照度設定三300lx,開啟自動補光,補光系統控 制流程圖如圖3.17所示,系統在早上五點到晚上八點之間檢測到光照強度低的時候,啟 動補光系統,晚上不用補光。
     
    圖3.17補光系統控制流程圖
    遮陽簾通過控制電機從而帶動遮陽簾的展開和收起,到達限位后自動停止。正常情 況下設定時間,白天收起,夜間展開,但是白天如果室內溫度過高,比如實際測量溫度 大于30C時,則開啟電機展開遮陽簾。
    (3)CO2 控制
    CO2 是作物進行光合作用的重要元素,是作物生長的必須條件,據分析當環境中的
    CO2濃度達到一定量時作物的產量會增加,而且品質明顯提高。所以控制CO2濃度范圍
    是非常重要的,系統當目標測量二氧化碳-二氧化碳設定<-300ppm,通過控制繼電器和電 磁閥打開CO2氣體發生器,增加CO2氣體,提升CO2濃度到相應水平。
    (4)灌溉施肥控制
    當土壤濕度低于設定值時,可開始澆水,可以設置灌溉用的水泵的開啟時間和關閉 時間,定時定量澆水。
    系統澆水采用滴灌的方式,可實現水肥一體,系統結構圖如圖3.18所示。系統變頻 控制箱控制水泵,水經過濾系統,可溶的肥料經過施肥系統,然后進入灌溉施肥機,通 過出水/施肥管道運輸到農作物生長區域,保持主要生長區域的土壤水分和營養,可以提 高水肥的利用率。
     
    圖 3.18 水肥一體系統結構圖
    3.5應用實例
    以山東莘縣某大棚為例,棚內種植黃瓜,不同時期控制方案不同,其中果實發育期 的環境調控數據如表 3.6所示。控制方案需要根據農作物的生長特性設定,在溫度控制 上春季控制棚溫在28?30C之間,下面介紹控制部分使用情況。
     
    表 3.6 環境調控數據表
    控制因素/單位 果實發育期/環境數據
    持續時間/d 10 ?20
    晝溫廠C 25 ?30
    夜溫廠c 18?22
    空氣相對濕度/%RH 80?85
    土壤溫度/C 18?20
    土壤含水量/%RH 80?90
    光飽和點/lx 1421
    光補償點/lx 51
    適宜光照強度/lx 750
    CO2飽和點/ppm 1592
    CO2補償點/ppm 69
    適宜CO2濃度/ppm 650
    (1) 增溫控制系統
    增溫控制系統主要包括太陽能、水箱、電加熱器和循環管道,太陽能與水箱如圖 3.19 所示,棚內循環管道如圖 3.20所示,系統利用太陽能加熱水箱內的水,然后通過循環水 增加棚內溫度。
     
    圖 3.19 太陽能和水箱
     
     
     
    圖 3.20 循環水管道
    (2)降溫控制系統 系統通過控制電機,打開風口,通過通風降低棚內溫度,前風口電機如圖 3.21 所示。
     
    圖 3.21 風口電機
    (3)遮陽簾控制系統 農業大棚的遮陽簾也是通過電機帶動遮陽簾的展開和收起,遮陽簾控制結構如圖
    3.22 所示。
     
     
    圖 3.22 遮陽簾控制結構
     
    (4)補光系統
    在白天光照不足時,開啟補光燈補光,補光燈如圖 3.23 所示。
     
    圖 3.23 補光燈
     
    (5)環境監測系統
    環境監測系統通過各類傳感器監測各類環境數據,比如溫濕度、光照度等。環境監 測系統如圖 3.24所示。基本采集數據如圖 3.25 所示。
     
    圖 3.24 環境監測系統
     
    mwf可
    | 冬就2019-03-01 2019-03-30
    Q M [' : A
    原號 日期 卓鯽。C) 空宅濕度(%) 題(°C) 垃濕度㈣ 光理(Lux) 二®化碳(Ppm)
    2019-03-01 03:00:12 17.5 76.2 19.4 20.9 0.0 425.0
    2 2019-D3-01 03:30:12 17.2 76.3 19.4 20.9 0.0 426.0
    3 2019-03-02 00:00:06 18.2 797 19.8 23£ 0.0 529.0
    4 2019-03-02 22:30:06 20.6 74.5 21.1 24.2 0.0 514.0
    |農 2019-03-03 05:30:06 17.9 78.3 19.0 23.5 0.0 514.0
    6 2019-03-03 06:30:12 17.9 77.9 18.7 23.4 0.0 517.0
    7 2019-0^03 07:30:12 17.9 77.6 18.6 23.3 0.0 522.0
    8 2019-03-03 09:00:12 19.1 74.9 19.0 23.2 537.0 502.0
    9 2019-0^03 09:30:12 20.7 71.6 19.4 23.2 610.0 503.0
    10 2019-03-03 10:00:12 22.9 67.2 20.1 23.2 1668.0 502.0
     
    總共H3T5鹿 首頁 1 2 345 TS 長
    圖 3.25 采集數據
    3.6本章小結
    本章主要是介紹測控系統的設計與實現,主要包括測控系統的整體方案設計、軟硬 件的設計與實現以及控制部分的設計與實現,其中硬件設計主要介紹了各個功能模塊的 電路原理圖和基本參數;軟件設計部分介紹了主控制芯片和WiFi模塊的軟件設計與實 現,主要是以流程圖的方式,更加直觀的表現出軟件的工作流程,而且附帶了一部分軟 件程序代碼,更加明確的了解系統軟件的設計與實現;最后詳細介紹系統控制部分以及 系統在莘縣的應用實例。
     
     
    第 4 章 信息管理系統的設計與實現
    本課題的信息管理系統軟件以Eclipse為開發工具,采用Java語言,服務器接收無 線發來的數據,并保存到數據庫,信息管理系統從服務器端查詢、數據列表以及曲線顯 示及打印數據等。系統軟件架構如圖 4.1 所示,儲存層的作用是存儲環境數據,用戶信 息以及系統信息等。應用層主要通過系統平臺與用戶實現交互功能,將業務層處理的結
    果返回并展示給用戶。業務層相當于應用層與儲存層的中間接口,主要是數據采集,控
    制信號的輸出以及用戶信息操作等工作。
     
    4.1通信軟件的設計與實現
    4.1.1設備層通信協議
    設備層通信主要是測控系統與服務器(C/S)之間的通信,采用的是基于TCP/IP協 議的Socket通信,其中TCP/IP參考模型分為四個層次:應用層、傳輸層、網絡層和網 絡接口層[63]。TCP/IP協議分層模型如圖4.2所示。本系統的應用層即服務器端,傳輸層 與網絡層采用TCP/IP協議,通信方式采用無線通信采用Socket接口,通過指定IP和端 口號連接。
    本課題研究的測控系統與服務器端之間的通信,測控系統作為客戶端,服務器作為 服務端[64]。Socket的通信流程如圖4.3所示。
     
     
    圖 4.2 TCP/IP 協議分層模型
     
     
     
    圖 4.3 Socket 通信流程圖
    有關Socket通信部分程序如下:
    static MySqlConnection conn;
    static MySqlCommand mycmd1;
    static Socket serverSocket;
    static Socket clientSocket;
    static Thread thread;
    static void ssocket(string[] args)
    {
    serverSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
    IPEndPoint ipep = new IPEndPoint(IPAddress.Parse("192.168.1.104"), 7888);
    serverSocket.Bind(ipep);//將所創建的套接字與 IPEndPoint 綁定 serverSocket.Listen(IOO);//設置套接字為收聽模式
    Console.WriteLine("準備連接");
    while (true) {
    try{
    clientSocket = serverSocket.Accept();
    thread = new Thread(ReceiveData);
    thread.Start();
    } catch (Exception e) {
    Console.WriteLine(" Socket 通訊出現異常錯誤:"+ e.Message);
    }
    }
    }
    4.1.2服務層通信協議
    服務層通信主要是用戶端瀏覽器與服務器(B/S )之間的通信,采用的是 HTTP(Hypertext Transfer Protoco 1)協議通信[65]。協議指定HTTP客戶機和服務器之間的數 據傳輸格式,并使客戶端和服務器可以有效地傳輸數據。HTTP協議是基于TCP協議的 一種應用。HTTP數據的發送圖解如圖4.4所示。
     
    圖 4.4 HTTP 數據的發送圖解
    HTTP 連接被稱為一次連接,客戶端通過 HttpServletRequest 對象請求連接,然后服 務器通過HttpServletResponse響應,返回客戶端頁面顯示,最后關閉連接。HTTP響應 流程圖如圖 4.5 所示。
     
    圖 4.5 HTTP 響應流程圖
     
    系統有關 HTTP 協議返回錯誤代碼的部分程序如下:
    <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
    <% String path = request.getContextPath();
    String basePath=request.getScheme()+"://"+request.getServerName()+":"+
    request.getServerPort()+path+"/static/"; %>
    <!DOCTYPE html>
    <html lang="en">
    <head>
    <base href="<%=basePath%>">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
    <meta charset="utf-8" /> <title>404</title>
    </head>
    <body class="no-skin">
    <div class="main-container" id="main-container">
    <h1 class="grey lighter smaller">
    404 沒有找到此頁面
    </h1>
    <hr /><div>
    <div class="space"></div>
    <h4 class="smaller">檢查一下可能性:</h4>
    <ul>
    <li><i class="icon-hand-rightblue"></i> 檢查請求鏈接是不是有誤</li>
    <li><i class="icon-hand-rightblue"></i> 檢查處理類代碼是不是有誤</li>
    <li><i class="icon-hand-rightblue"></i> 檢查環境配置是不是有誤</li>
    <li><i class="icon-hand-rightblue"></i> 檢查處理類視圖映射路徑</li>
    </ul>
    </div></ hr></div></body></html>
    如果過程出現錯誤,錯誤消息通常以狀態碼的形式通過顯示屏輸出返回給客戶端。 常見的 HTTP 相應狀態碼如表 4.1 所示。
    表 4.1 常見的 HTTP 狀態碼表
    狀態碼 狀態描述
    204 請求被受理但沒有資源可以返回
    401 請求需要認證和授權
    403 請求的對應資源禁止被訪問
    404 服務器無法找到對應資源
    500 服務器內部錯誤
    503 服務器正忙
     
    4.2數據庫的設計與實現
    4.2.1數據庫技術
    信息系統的核心技術就是數據庫技術,用于協助計算機管理數據的方法[66]。系統使
    用關系模型和數據庫來存儲數據。數據庫是可用來存儲電子文件的地方,是以某種方式
    存儲在一起的數據集合,用戶可以增改刪減文件中的數據,并且獨立于應用程序。采用 關系模型設計數據庫,可提高數據的讀取速度。在選擇數據庫的使用時,需考慮系統兼
    容性、成本以及操作復雜程度等問題,本課題研究所使用的數據庫采用MySQL數據庫, 來存儲采集到的數據以及各種數據關系°MySQL是目前最常使用的關系型數據庫管理系 統之一I67】。MySQL數據庫的部分優點如下:
    (1)MySQL性能卓越、服務穩定
    ⑵MySQL支持AIX、Windows等多用操作系統,支持多用開發語言
    (3) 軟件安裝簡單
    (4)軟件免費
    (5)使用SQL語言,優化SQL查詢算法
    (6)提供多種數據庫連接途徑
    4.2.2數據庫設計與實現
    本系統的數據庫設計與實現采用MySQL數據庫,采用的版本是主流的mysql-5.5.37, MySQL的主界面如圖4.6所示。
     
    圖 4.6 MySQL 主界面
    首先輸入密碼后成功進入MySQL的運行界面,密碼是在安裝時用戶可以自己設置 的,在頁面處輸入SQL語句則可對數據庫進行操作。但這樣操作不簡單直觀,使用比較 復雜,不方便管理。所以需要圖形化的管理數據庫工具,本課題研究所采用的數據庫管 理工具是 Navicat premium。
     
    Navicat premium 軟件可以同時連接到 MySQL、Oracle 等數據庫,使用戶對于管理 不同類型的數據庫更加容易,快速、輕松地創建、管理和維護數據庫。如圖 4.7 所示 Navicat Premium連接了本地(localhost)的MySQL數據庫,設置連接名及其他信息,輸入IP 地址,服務名稱及用戶名及密碼信息;輸入完所需信息后,點擊連接測試,如果出現連 接成功,則證明配置正確。
     
    圖 4.7 連接 MySQL 配置
    Navicat Premium 的主界面如圖 4.8 所示。左側是本地所建的數據庫,選擇自己的數 據庫,查看表信息,用戶可以增加數據、修改數據、修改數據,直接修改后點擊保存即 可,使用戶的使用操作數據庫更加直觀方便。
     
    圖 4.8 Navicat Premium 主界面
     
    經過需求分析,數據庫需要建立基本系統表和存儲環境數據的表,本課題研究的信
    息管理系統需要數據庫中建立的主要數據表如表 4.2 所示。
    表 4.2 數據庫的主要數據表
    表名 功能描述
    注冊用戶信息表,保存用戶名、密碼、郵箱、電話以及最后一次登錄時間等 sys_user
    信息
    sys_menu 系統菜單表,保存系統菜單名稱以及菜單的 URL 等信息
    sys_role 用戶級別表,保存用戶級別,以區分用戶權限
    sys_fhbutton 系統按鈕表,保存系統中應用的按鈕名稱及功能等信息
    sys_role_fhbutton 字典表,連接 sys_role 和 sys_fhbutton
    sys_fhlog 系統日志表,記錄用戶登錄和退出等一些重要操作記錄
    gh_data 數據表,保存設備編號,數據采集時間,各種參數的數值等
    gh dic 數據字典表,保存設備編號所對應的詳細信息,與 gh data 提供信息
    1)system 表的設計圖如圖 4.9 所示,具體 E-R 圖如圖所示,下面介紹幾個主要表的詳
     
    細信息。
     
    圖 4.9 system 表的設計圖
     
    1)注冊用戶信息表sys_user的E-R圖如圖4.10所示,由E-R圖得到的基本信息如
    表 4.3 所示。其中字段 USER_ID 代表用戶的 ID ;字段 USERNAME 代表用戶名;字段 PASSWORD 代表登錄密碼;字段 NAME 代表注冊用戶的真實姓名;字段 ROLE_ID 代 表用戶的角色ID ;字段LAST_LOGIN代表該用戶最后一次登錄系統的時間;字段EMAIL 代表用戶的郵箱地址;字段 IP 代表用戶登錄的 IP 地址;字段 PHONE 代表用戶的聯系 方式,其中 USER_ID、PASSWORD 以及 ROLE_ID 都是加密后保存到數據庫中的,使 系統更加安全。
     
    圖 4.10 注冊用戶信息表的 E-R 圖
     
     
    表 4.3 注冊用戶信息表
    編號 字段名 數據類型 數據長度 可否空值 主鍵
    1 USER_ID varchar 100
    2 USERNAME varchar 255
    3 PASSWORD varchar 255
    4 NAME varchar 255
    5 ROLE_ID varchar 100
    6 LAST_LOGIN varchar 255
    7 IP varchar 100
    8 EMAIL varchar 32
    9 PHONE varchar 32
    2) 系統菜單表 sys_menu 的 E-R 圖如圖 4.11 所示,由 E-R 圖得到的基本信息如表
     
    4.4所示。其中字段MENU_ID代表系統菜單的ID;字段MENU_NAME代表系統菜單
    的名稱;字段 MENU_URL 代表系統菜單的 URL 地址;字段 MENU_ICON 代表系統菜 單的圖標;字段 MENU_STATE 代表系統菜單的狀態,1 表示可見,0 表示隱藏。
     
     
     
     
    圖 4.11 系統菜單表的 E-R 圖
     
     
    表 4.4 系統菜單表
    編號 字段名 數據類型 數據長度 可否空值 主鍵
    1 MENU_ID int 11
    2 MENU_NAME varchar 255
    3 MENU_URL varchar 255
    4 MENU_ICON varchar 255
    5 MENU STATE int 11
     
    3) 用戶級別表 sys_role 的 E-R 圖如圖 4.12 所示,由 E-R 圖得到的基本信息如表 4.5 所示。其中字段ROLE_ID代表角色ID ;字段ROLE_NAME代表用戶級別名;字段 EDIT_QX 代表編輯修改權限;字段 ADD_QX 代表增加權限;字段 CHA_QX 代表查詢 權限;字段 DEL_QX 代表刪除權限,其中 1 代表具備操作權限,0 代表不具備操作權限。
     
    圖 4.12 用戶級別表的 E-R 圖
     
     
    表 4.5 用戶級別表
    編號 字段名 數據類型 數據長度 可否空值 主鍵
    1 ROLE_ID int 11
    2 ROLE_NAME varchar 255
    3 ADD_QX varchar 255
    4 DEL_QX varchar 255
    5 EDIT_QX varchar 255
    6 CHA QX varchar 255
    4) 系統按鈕表 sys_fhbutton 的 E-R 圖如圖 4.13 所示,由 E-R 圖得到的基本信息如
    表4.6所示。其中字段FHBUTTON_ID代表按鈕的ID;字段NAME代表按鈕的功能名 稱。
     
     
    圖 4.13 系統按鈕表的 E-R 圖
    表 4.6 系統按鈕表
    編號 字段名 數據類型 數據長度 可否空值 主鍵
    1 FHBUTTON_ID int 11
    2 NAME varchar 255
    5) 系統字典表 sys_role_fhbutton 的 E-R 圖如圖 4.14 所示,由 E-R 圖得到的基本信 息如表4.7所示。其中字段RB」D代表字典表的ID;字段ROLE_ID代表角色ID,與用 戶級別表sys_role中的字段ROLE_ID對應;字段BUTTON_ID代表按鈕的ID,與系統 按鈕表 sys_fhbutton 中的字段 FHBUTTON_ID 對應。
     
     
    圖 4.14 系統字典表的 E-R 圖
     
     
    表 4.7 系統字典表
    編號 字段名 數據類型 數據長度 可否空值 主鍵
    1 RB_ID int 11
    2 ROLE_ID varchar 255
    3 BUTTON ID varchar 255
    6) 系統日志表 sys_fhlog 的 E-R 圖如圖 4.15 所示,由 E-R 圖得到的基本信息如表
    4.8 所示。其中字段 FHLOG_ID 代表日志編號;字段 USERNAME 代表用戶名; CZTIME 代表操作時間;字段 CONTENT 代表操作內容。
     
     
     
    表 4.8 系統日志表
    編號 字段名 數據類型 數據長度 可否空值 主鍵
    1 FHLOG_ID int 11
    2 USERNAME varchar 255
    3 CZTIME datetime 0
    4 CONTENT varchar 255
    2)農業大棚監測的參數信息表的設計圖如圖 4.16 所示,下面介紹幾個主要表的詳細
     
    信息。
    gh_data
    ^n^nt
    gh1_test_time datetime gh1_id: int ghl_tem_value varchar(255) ghl_hum_value varchar(255) gh1_co2_value: varchar(255) gh1_landtem_value: varchar(255) gh1_landhum_value: varchar(255) gh1_light_value varchar(255) reserve_1: varchar(255)
    圖 4.16 數據表的設計圖
    1) gh_data 表的 E-R 圖如圖 4.17 所示,由 E-R 圖得到的基本信息如表 4.9 所示。其 中字段id代表數據ID;字段gh1_test_time代表采集時間;字段gh1」d代表大棚ID;字 段gh1_tem_value代表棚內溫度,單位是°C ;字段gh1_hum_value代表空氣濕度,單位
    是%;字段ghl_co2_value代表CO2濃度,單位是ppm;字段ghl」andtem_value代表土 壤溫度,單位是°C ;字段ghl_landhum_value代表土壤濕度,單位是%;字段ghl_light_value 代表光照強度,單位是 lx。
     
     
    圖 4.17 數據表的 E-R 圖
    表 4.9 數據表
    編號 字段名 數據類型 數據長度 可否空值 主鍵
    1 ID int 11
    2 GH1_TEST_TIME datetime 0
    3 GH1_ID int 11
    4 GH1_TEM_VALUE varchar 255
    5 GH1_HUM_VALUE varchar 255
    6 GH1_CO2_VALUE varchar 255
    7 GH1_LANDTEM_VALUE varchar 255
    8 GH1_LANDTEM_VALUE varchar 255
    9 GH1 LIGHT VALUE varchar 255
     
    2) 數據字典表 gh_dic 的 E-R 圖如圖 4.18 所示,由 E-R 圖得到的基本信息如表 4.10 所示。其中字段id代表數據字典表的ID;字段gh_name代表大棚具體名稱;字段gh_id 代表大棚標號。
     
    圖 4.18 數據字典表的 E-R 圖
     
     
    表 4.10 數據字典表
    編號 字段名 數據類型 數據長度 可否空值 主鍵
    1 ID int 11
    2 GH_NAME varchar 255
    3 GH ID varchar 255
    4.3 信息管理系統界面的設計與實現
    系統采用 Java Web 語言,以 B/S 架構和 SSM (Spring+SpringMVC+MyBatis)框架 為基礎,服務器采用Apache Tomcat來開發Web前端界面。B/S架構簡化了系統的開發、 維護和使用,降低了用戶的總體成本[68]。用戶只要通過瀏覽器就能訪問信息管理系統, 但用戶需注冊后才可登錄系統,查詢或打印數據。
    Java 是一種面向對象的編程語言, Java 有三大方向:分別是 Java SE 主要面向開發 桌面程序、Java EE主要面向開發Web應用和Java ME主要面向開發手機應用。其中Java Web 包括兩個部分,分別是 Web 服務器和 Web 客戶端。本課題所研究的智慧農業大棚 信息管理系統是使用 Java EE 的應用程序 Java Web 語言來開發的。
    4.3.1 系統異步更新
    Ajax全稱是Asynchronous Javascript And XML,是一種創建交互式網頁應用的網頁 開發技術[69,70]。本課題的信息管理系統顯示數據圖表的趨勢圖采用Ajax,實時刷新界面, 異步更新數據, Ajax 的工作流程如圖 4.19 所示。
     
     
    Ajax 其實就是 JavaScript+XML 的技術, XMLHttpRequest 是 Ajax 的核心機制,它 定義了用腳本操縱HTTP的API,是一種支持異步請求的技術。智慧農業大棚信息管理 系統實現實時更新曲線圖,就是利用的Ajax技術,有關Ajax技術的JS代碼如下:
    〃通過ajax向后臺發送請求,傳遞數據。
    $.ajax({
    type: 'POST',
    url : '<%=basePath%>bar/getbar.do',
    dataType: 'json',
    success:function(data){
    debugger;
    option.xAxis[0]['data']=data.gh1_test_time; option.series[0]['data']=data.gh1_tem_value; option.series[1]['data']=data.gh1_hum_value; option.series[2]['data']=data.gh1_co2_value;
    option.series[3]['data']=data.gh1_landtem_value; option.series[4]['data']=data.gh1_landhum_value; option.series[5]['data']=data.gh1_light_value;
    myChart.setOption(option);
    },
    error:function(){
    debugger;
    },
    complete:function(){
    myChart.hideLoading();〃停止動畫載入提示
    }
    })
    4.3.2MD5 加密算法
    MD5加密的全名是信息-摘要算法5 (Message-Digest Algoorithm 5),采集摘要中的 信息,并通過特定的位運算獲得加密的MD5字符串,是一種單向加密算法[71]。它通常 用于保存用戶密碼、密鑰信息和一些關鍵性信息等,并直接從前端傳輸到數據庫中存儲。 整體流程圖如圖 4.20 所示。
     
    圖 4.20 MD5 加密算法流程圖
    本課題研究的信息管理系統為了保證安全性,在注冊時,密碼采用 MD5 加密,然 后傳輸并保存到系統數據庫中。接口相關協議規則以及后臺部分代碼如下: <div class="step-content row-fluid position-relative">
    <ul class="unstyled spaced2">
    <li class="text-warning orange"><i class="ace-icon fa fa-exclamation-triangle"></i> 相關參數協議:04用戶名或密碼錯誤;05FKEY驗證失敗</li>
    <li class="text-warning green"><i class="ace-icon fa fa-star blue"></i>
    校驗加密規則:(取其中一個參數名+當前日期[格式20181205]+混淆碼”,fh,"然后md5 加密的值作為參數 FKEY 的值提交)
    </li></ul></div>
    //后臺提交注冊
    function register(){
    if(rcheck()){
    var nowtime = date2str(new Date(),"yyyyMMdd");
    $.ajax({
    type: "POST",
    url: 'appSysUser/registerSysUser.do',
    data:
    {USERNAME:$("#USERNAME").val(),PASSWORD:$("#PASSWORD").val(), NAME:$("#name").val(),EMAIL:$("#EMAIL").val(),rcode:$("#rcode").val(),FKEY:$.md5('P ASSWORD'+nowtime+',fh,'),tm:new Date().getTime()},
    dataType:'json',
    cache: false,
    success: function(data){
    if("00" == data.result){ $("#windows2").hide(); $("#windows1").show();
    $("#loginbox").tips({
    side : 1,
    msg : '注冊成功,請登錄',
    bg : '#68B500',
    time : 3
    });
    changeCode1();
    }else if("04" == data.result){
    $("#USERNAME").tips({
    side : 1,
    msg: "用戶名已存在",
    bg : '#FF5080',
    time : 15
    });
    showfh();
    $("#USERNAME").focus();
    }else if("06" == data.result){
    $("#rcode").tips({
    side : 1,
    msg : "驗證碼輸入有誤",
     
    bg : '#FF5080',
    time : 15
    });
    showfh();
    $("#rcode").focus(); }
    }});} }
    433系統界面設計與實現
    系統使用的編程工具大致有兩個,一個是Eclipse,可用于開發Java項目,本課題研
    究系統應用的版本是 Eclipse Java EE IDE for Web Developers。第二個是 Apache Tomcat,
    它是一個免費的開源的 Web 應用服務器, 本課題研究系統應用的版本是
    apache-tomcat-8.5.34。所有環境配置好后,在Eclipse開發平臺上,開發界面如圖4.21所 示,我們搭建出項目的關鍵部分目錄的文件夾主要包括 controller、service、mybatis1 和 WEB-INF (JSP),分別對應SSM框架的控制層、業務層、持久層和頁面。系統調試在
    debug 模式下進行, debug 運行界面如圖 4.22 所示。下面將具體介紹各個頁面的設計與 實現功能。
    ” 3 ftl_backups i> 3 mybatisl
    ? 3 mybatis2 t> ® spring
    園 dbconfig .prope rtic Wl dbfh.properties 図 ehcache>xml 髙 Iog4j>properties
    ® Iog4|'.xml 圍 redisrproperties
    ,臺 webapp
    t> 3 admin
    t> 厲 M ETA-INF
    IM web>xml
    E] 4O4.jsp 0 favicon.i 囪 index.isp
    圖 4.21 系統開發界面
     
    Conwiand line argument: 2819 10:20:42 isporg. mvnand line argument: 2019 10:20:42 ±^org.
    Command line argument;
    圖 4.22 debug 運行界面
    (1) 登錄界面及注冊界面
    將計算機配置好環境,測試中輸入網址進入智慧農業大棚信息管理系統的登錄界面,
    為增強安全性,登錄界面加入了驗證碼的輸入,登錄界面如圖 4.23 所示。如果已經有賬 戶,則可直接輸入用戶名和密碼登錄系統,進入主界面;沒有賬戶則可點擊注冊按鈕,
    其中用戶密碼經MD5加密后保存,注冊界面如圖4.24所示。
     
     
    圖 4.23 登錄界面
    MMbJB
    請輸入用戶名
    辭入密碼
    WW新輸入密碼
    請輸入郵箱
     
     
    圖 4.24 注冊信息界面
    (2)系統主界面
    系統的主界面如圖4.25所示,中間做大棚展示,系統菜單導航用于引導用戶使用。
     
    圖 4.25 系統主界面
     
    (3)系統功能
    整體軟件系統功能圖如圖 4.26 所示,主要包括用戶管理、系統管理、數據庫管理和 大棚信息管理。
     
     
    圖 4.26 軟件系統功能圖
    (4)環境數據表 大棚信息管理即數據管理界面,主要是環境數據界面該界面包括所有數據的表格, 首頁顯示的是棚內各類傳感器的數據,數據根據設備采集時間采用倒序的方式顯示(<!-- 倒序顯示代碼-->order by GH1_TEST_TIME desc),顯示最新數據,歷史數據可以通過 關鍵字和時間段兩種方式查詢,后面會進行詳細的介紹,搜索按鈕旁邊是導出按鈕,點 擊導出按鈕可以以Excel表的形式導出數據庫數據。右下角有分頁信息,可查看當前所 在頁碼和總頁碼,并可跳轉頁碼。本系統每頁設定的是顯示10條數據,還可以按需求選 擇,并可按順序分頁查看,也可以在頁碼框輸入想要到達的頁碼并跳轉到相應頁面。 Admin 管理員還可以對表進行編輯,例如增刪一些數據。環境數據界面如圖 4.27所示。
     
     
    (5)查詢歷史數據
    系統的檢索方式提供關鍵字查詢和時間查詢兩種,檢索基本界面如圖4.28所示。
     
    1) 關鍵字查詢,本系統設置的是可以查詢所有數據的關鍵字,前臺 JSP 頁面程序如 下:
    <!-- 關鍵詞輸入框 Start-->
    <td>
    <input type="text" placeholder"這里輸入關鍵詞"class="nav-search-input" id="nav-search-input" autocomplete="off" name="keywords" value="${pd.keywords }" placeholder"這里輸入關鍵詞"/>
    </td>
    <!-- 關鍵詞輸入框 End-->
    //后臺 Mybatis 持久層操作數據庫的部分程序如下
    <!-- 關鍵詞檢索 Start-->
    <if test="pd.keywords!= null and pd.keywords != ''">
    and
    ( GH1_TEST_TIME LIKE BINARY CONCAT(CONCAT('%', #{pd.keywords}),'%')
    or
    GH1_ID LIKE BINARY CONCAT(CONCAT('%', #{pd.keywords}),'%')
    or
    GH1_TEM_VALUE LIKE BINARY CONCAT(CONCAT('%', #{pd.keywords}),'%') or
    GH1_HUM_VALUE LIKE BINARY CONCAT(CONCAT('%', #{pd.keywords}),'%')
    or
    GH1_CO2_VALUE LIKE BINARY CONCAT(CONCAT('%', #{pd.keywords}),'%') ) </if>
    <!-- 關鍵詞檢索 End-->
    2)查詢日期采用日歷控件的形式,前臺JSP頁面程序如下:
    <!-- 日歷框 Start-->
    <td style="padding-left:2px;">
    <input class="span10 date-picker" name="lastStart" id="lastStart" value="${pd.lastStart }" type="text" data-date-format="yyyy-mm-dd" readonly="readonly" style="width:88px;" placeholder^開始日期"title="開始日期"/>
    </td>
    <td style="padding-left:2px;">
    <input class="span10 date-picker" name="lastEnd" id="lastEnd"
    value="${pd.lastEnd }" type="text" data-date-format="yyyy-mm-dd" readonly="readonly" style="width:88px;" placeholder"結束日期"title="結束日期"/>
    </td>
    <!-- 日歷框 End-->
    //后臺 Mybatis 持久層操作數據庫的部分程序如下
    <!-- 時間檢索 Start-->
    <if test="pd.lastStart!= null and pd.lastStart != '' and pd.lastEnd!= null and pd.lastEnd != '' "> And
    (
    GH1_TEST_TIME >= #{pd.lastStart}
    and
    GH1_TEST_TIME &lt;= #{pd.lastEnd}
    )
    </if>
    <!-- 時間檢索 End-->
    查詢某個時間段的歷史數據界面如圖4.29所示,選擇開始日期和結束日期后,便可 查詢選定時間段內的數據。
     
     
    康號 時問 設備褊號 溫度 濕康 二氧化碳濃度 備注 操作
    1 2019-01-2219:30:00.0 200 16.4 521 17.5 20.9 2
    2 2019-01-22 19:00:00.0 200 17 33.1 522 18 21 2
    3 2019-01-2218:30:00.0 200 19 79.2 529 19.1 21.3 2
    Q I 4 2019-01-22 18:00:00.0 200 22 76.5 536 18.9 21.5 2
    5 2019-01-22 17:30:00.0 200 22.2 70.1 535 20.5 21.3 2
    6 2019-01-22 17:00:00.0 200 23.4 64.8 523 21.6 21.1 3
    7 2019-01-22 16:30:00.0 200 24.6 58.7 528 22.5 21.9 352
    8 2019-01-2216:00:00.0 200 26.9 54.6 532 21.5 21.7 741
    9 2019-01-22 15:30:00.0 200 32.2 51.9 538 24.8 21.6 855
    10 2019-01-22 15:00:00.0 200 35 48.7 524 23.8 21.2 1524
     
    圖 4.29 查詢歷史數據
    (6)數據圖表顯示
    除了簡單的數據顯示外,信息管理系統還提供種植農作物信息以及實時數據的圖表 顯示,可以以折線圖等圖表的形式來顯示數據,視覺上更加直接、美觀;邏輯上使用戶 更加清晰直觀的了解數據的變化趨勢,更加直觀的分析數據。由于數據太多,同時在一 個頁面上顯示會比較密集,所以系統設定圖表只顯示近二十四小時內的趨勢圖。實時數 據顯示如圖 4.30所示,近24小時趨勢圖如圖 4.31所示。
     
     
    圖 4.30 實時數據圖
    圖 4.31
    近 24 小時趨勢圖
    (7) 農作物信息
    系統還具備農作物的生育期信息。
    使用戶能夠更加精確的了解農作物的生長環境,
    從而更加科學的管理。農作物信息如圖4.32所示。
    *51
     
    圖 4.32 農作物信息
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
    (8)視頻監控 系統具備視頻監控功能,用戶可通過系統查看棚內農作物生長情況。監控界面如圖
    4.33 所示。
     
    圖 4.33 視頻監控
     
    (9)遠程控制
    系統還具有遠程控制功能,如圖 4.34所示,系統通過綁定設備后,從系統平臺便可
    以控制棚內設備,目前主要綁定了水肥機、CO2發生器和遮陽簾,用戶登錄系統后可根 據需要遠程控制水肥機、CO2發生器或遮陽簾的開關。
     
    圖 4.34 遠程控制
    (10)權限管理
    系統用戶角色分為Admin管理員、管理員和注冊用戶三大類,不同角色可訪問的系 統功能不同。管理員是系統設定的不可以注冊,主要是管理系統設置等操作的。普通的 用戶則可以通過注冊,注冊用戶以及管理員可以訪問而且只能訪問自己被授權的資源, 這個權限是Admin管理員可以設定的,管理員可以設定注冊用戶可以查看哪個菜單下的 圖表和數據,以及對圖表和數據的操作。我們現在設定的是普通的注冊用戶只能查看或 導出數據信息,其他管理系統的操作要通過管理員來控制。兩種用戶進入主界面看到的 菜單是不同的,管理員可查看所有的菜單,但注冊用戶只能查看管理員設定對注冊用戶 可見的菜單。角色權限界面如圖 4.35 所示。按鈕權限即不同的用戶具有不同的可操作按 鈕,按鈕權限界面如圖 4.36 所示。
    角色僵礎權限)
    新埴組I
     
    新堵角色
     
     
    圖 4.35 角色權限
    匹角色(SSfiR限)D童
    角色咼特系統管理組
    唐號 角色 導出EXCEL 發由隣 組織機構數堀權限 導入EXCEL 畑信 站內信 綁左用戶
    1 用戶 i
    2 — = j j OF#; 丿
    3 衛管羈 i (x j otf) (1® CU^' (5®
    4 OFF
     
    圖 4.36 按鈕權限
    (11)在線管理
    在線管理顯示當前用戶使用情況,顯示在線人數以及用戶名,這個菜單只有 Admin
    管理員可以操作,如發現不正常用戶,還可以強制其下線。在線管理界面如圖 4.37 所示。
     
    圖 4.37 在線管理界面
    (12)日志管理
    日志管理可管理系統用戶的操作記錄,例如登錄或退出系統,主要顯示用戶名,事 件以及操作時間,Admin管理員還可以查詢或刪除記錄。日志管理界面如圖4.38所示。
     
     
     
    圖 4.38 日志管理界面
    (13)用戶管理
    主要功能是對用戶信息進行管理,用戶管理界面如圖 4.39所示。
    馥用戶
     
    IQ —:. :T I強日期]請遺輛色Q i
    那號 編號 用戶名 姓名 角色 曰郵箱 OSfig 錄 上次登錄忡 操作
    口 ' wanger a®用戶 11345678987@qq.com S 2019-01-18 1 9:24:31 0:0:0:0:0:0:0:1
    2 1 Irsi 李四 am用戶 2273554859@qq.com B 2018-06-1815:20:35 0:0:0:0:0:0:0:1
    9 112 wl 1212 二級營理員 1111116@qq.com B 2018-06-18 14:50:15
    333 san am用戶 978336446@qq.com E 2018-06-05 13:44:11 127.0.0.1
    121212 w2 wwqw 刼用戶 12111111@qqxomS 2018-06-0510:34:21
    6 33656 w3 kkl a®用戶 25222222@qq.com S 2018-05-2411:26:57
    7 1101 zhangsan 張三 _級譚員 zhangsan@www.com H 2018-05-24 09:54:22
    4.4 系統軟件實現功能
    (1)用戶管理功能
    用戶訪問信息管理系統,系統可管理用戶信息和操作權限,例如分配權限等操作。
    (2)數據實時顯示功能
    系統數據可實時顯示,軟件使用頁面Ajax功能,設定時間,實時刷新頁面,獲取最 新測量數據。
    (3)數據查詢功能
    系統具有歷史數據查詢功能,選擇時間段就可以查詢所需時間段的數據,也可隨時 打印或導出報表(excel報表)。通過網址,可以遠端登錄系統,查看數據。
    (4)遠程控制
    系統具有遠程控制功能,可以通過登錄信息管理平臺,根據需要控制風機,水肥機 等設備。
    (5)數據存儲備份功能
    可備份數據庫,防止出現故障后,系統無法恢復,系統用戶可以根據需要隨時備份 數據。
    (6)自動報警功能
    本課題研究的系統具有自動報警功能,便于監控中心及時通知工作人員進行維護。 自動檢測到的故障包括:數據異常、通信故障、傳感器故障等。
    4.5 本章小結
    本章主要介紹了通信軟件的設計與實現、數據庫的設計與實現、信息管理系統界面 的設計與實現和系統軟件實現功能。首先,信軟件的設計介紹設備層的通信協議和服務 層的通信協議,測控系統與服務器之間采用 Socket 協議通信,服務器端與信息管理系統 之間采用 HTTP 協議通信,主要介紹了通信流程以及通信的部分代碼;然后,簡單介紹 數據庫技術和數據庫的設計與實現,為方便操作MySQL數據庫管理工具使用Navicat premium,重點介紹了本研究課題的數據表的設計與實現,主要包括數據表的E-R圖以 及基本信息等;最后信息管理系統界面的設計與實現介紹了使用相關的技術、重要部分 界面設計,界面的功能以及部分關鍵性代碼。
    第 5 章 結論與展望
    5.1 全文總結
    本論文課題來源于企事業委托的項目,本項目主要是基于現代技術的發展以及現代 農業和人民思想的進步,采取自動化、智能化的管理手段管理農業是大勢所趨,有利于 農業的發展,經濟收益的提高。所以開發一套完整的智慧農業大棚測控及信息管理系統 勢在必行。該系統主要是利用各種高精度傳感器檢測農業大棚內的溫濕度、 CO2 濃度、 土壤溫濕度以及光照強度等信息。數據傳輸的通訊協議是Modbus通信協議,然后傳輸 到單片機中,數據經處理后將數據通過 WiFi 模塊上傳至服務器,并把數據保存到數據庫 中,為用戶查詢提供準確數據,為系統開發提供基礎。
    本文一開始介紹了本課題研究的背景及意義、農業大棚的國內外研究現狀以及發展 概況和趨勢;其次介紹了系統的整體設計方案以及系統所涉及到的相關技術;然后重點 介紹了智慧農業大棚測控系統的設計與實現,主要包括測控系統的整體方案設計、硬件 設計以及軟件設計,主要包括各個模塊的設計以及部分軟件程序,并提供部分硬件電路 圖以及部分關鍵性代碼;最后介紹了信息管理系統的設計與實現,主要包括四部分內容: 通信軟件、數據庫以及信息管理系統的界面設計和系統軟件實現功能。
    本課題設計的智慧農業大棚測控及信息管理系統是通過傳感器獲取農業大棚內各類 環境數據,然后可以通過WiFi傳輸到服務器并保存到數據庫中,使用用戶注冊后便可通 過網址(網絡)訪問管理系統,并可以查看最新數據和歷史數據,系統還提供數據的曲 線圖等圖表顯示,使用戶更加清晰直觀的查看數據的變化趨勢,為用戶提供更好的服務。
    5.2研究展望
    因為個人的時間和所學知識有限,本課題設計的智慧農業大棚測控及信息管理系統 還存在一些地方,有待深度開發和改善,主要包括以下三個方面。
    第一方面,采集數據還不夠全面,例如土壤 PH 值、土壤鹽分、室外的氣候等數據 信息。
    第二方面,本系統數據庫設計只是簡單的存儲傳感器數據,數據庫的設計應該更加 規范化、系統化。
    第三方面,信息管理系統的界面和功能需要后續用戶提要求進行開發和完善,使系 統使用更加簡單明了,功能更加齊全。
    參考文獻
    [I]焦文靜.安徽省農業土地利用效率比較研究[D].沈陽:東北大學,2011.
    ⑵楊英茹,郭利朋,岳趙寒,等.日光溫室遠程監控系統發展現狀及問題分析[J].農業網絡信 息,2015(3):50-51.
    [3]薛峰.基于WindowsCE和GPRS無線監控系統的研究[D].安徽:安徽理工大學,2011.
    ⑷王松濤.基于無線傳感器網絡的環境監測系統設計與應用[J].資源節約與環保,2016(12):87-8 8.
    [5]蒲小平.我國設施農業發展現狀及存在的問題[J].農業技術與裝備,2000(5):21-22.
    [6]鐘鋼.國內外溫室發展歷程、現狀及趨勢[J].農業科技與裝備,2013(9):68-69.
    ⑺龔尚福,潘虹.智能溫室大棚監控系統的研究與設計[J].現代電子技術,2017,40(19):119-122.
    [8]彭宏麗.溫室環境智能監測與控制系統設計[D].太原:太原理工大學,2007.
    [9]邢希君,宋建成,吝伶艷,等.設施農業溫室大棚智能控制技術的現狀與展望[J].江蘇農業科 學,2017,45(21):10-15.
    [10]張衛東.我國溫室發展的現狀及發展建議[J].科技信息,2013,10:439.
    [II]陶永紅.淺談我國溫室大棚的現狀與發展[J].安徽農機,2003(1):17-18.
    [12]韓晨燕.溫室大棚數字光照度計系統的研究[D].南京:南京林業大學,2013.
    [13]王國美.溫室自動控制系統的設計[D].陜西:西北農林科技大學,2001.
    [14]Gao Y,He Z,Li X,et al.Research of network information management system for high-throughput rice breeding[J].Nongye Gongcheng Xuebao/Transactions of the Chinese Society of Agricultural Engineering,2014,30(7):155-162.
    [15 ]張書謙.溫室及配套設備的發展與創新[J].農村實用工程技術(溫室園藝),2004(7):68-72.
    [16]趙春江.智慧農業發展現狀及戰略目標研究[J/OL].中國農業文摘-農業工 程,2019(03):15-17[2019-05-24].https://doi.org/10.19518/j.cnki.cn11-2531/s.2019.0041.
    [17]袁玲瓏.溫室環境因子監控系統的研究[D].武漢:華中農業大學,2005.
    [18]Fang X,Chen L,Yin H Z.The Measurement and Control System of Agricultural Greenhouse Based On Network[C].Advanced Materials Research. Trans Tech Publications,2014,926:1488-1492.
    [19]林偉.基于Android平臺的遠程智能農業大棚控制系統設計[D].哈爾濱:哈爾濱理工大學,2017.
    [20]余倩倩.溫室環境小氣候模型的構建及智能控制算法的研究[D].南京:南京農業大學,2010.
    [21]楊學坤,蔣曉,諸剛.溫室環境控制技術的研究現狀與發展趨勢[J].中國農機化學報,2013(4):16-1&
    [22]Yitong Yuan. Research Status and Trends of Agricultural Plant Protection Modernization in Shanxi Province[A]. Institute of Management Science and Industrial Engineering.Proceedings of 2018 6th International Education,Economics,Social Science,Arts,Sports and Management Engineering Conference(IEESASM 2018)[C].Institute of Management Science and Industrial Engineering: 計 算 機 科 學 與電 子 技 術 國 際學 會 (Computer Science and Electronic Technology International Society),2018:6.
    [23]Yuci Wang. Research on the Status Quo and Countermeasures of Campus Culture Construction in Agricultural Universities and Colleges[P]. 2018 2nd International Conference on Education, Economics and Management Research (ICEEMR 2018),2018.
    [24 ]張景福.武威市涼州區設施農業現狀調查與改進建議[D].蘭州:蘭州大學,2016.
    [25 ]蓋磊.基于以太網的溫室集群環境控制系統的研究[D].內蒙古:內蒙古農業大學.2011.
    [26 ]邢希君,宋建成,吝伶艷,等.設施農業溫室大棚智能控制技術的現狀與展望J].江蘇農業科學,2017, 45(21):18-23.
    [27]Ito K,Hara Y.Multipoint-measurement multipoint-heating greenhouse temperature control with wooden pellet fuel using an adaptive model predictive control approach with a genetic algorithm[C].2017 25th Mediterranean Conference on Control and Automation (MED).IEEE,2017:54-59.
    [28]Li F, Wei Y, Chen Y, et al. System Design of Online Monitoring and Controlling System Based on Zigbee in Greenhouse. [M].Computer and Computing Technologies in Agriculture VIII. 2015.
    [29]劉凈羽.基于GSM智能溫室環境監控系統的設計J].民營科技,2017(5):24-24.
    [30]張建忠,王學勤,喻景權.綠色環控設施農業:我國設施農業發展的必由之路J].中國軟科 學,2007(9):17-20.
    [31]汪亞.物聯網技術在宿遷智能農業發展中應用研究J].農業網絡信息,2014(12):20-22.
    [32]沈久利,邢婷婷.測控技術標準體系構建的幾點建議J].科技與企業,2014 (8):315-315.
    [33 ]李春亮.電網設備狀態參量在線監測遠端控制裝置的設計[D].蘭州:蘭州理工大學,2017.
    [34]Tafa Z,Ramadani F,Cakolli B.The design of a ZigBee-based greenhouse monitoring system[C].2018 7th Mediterranean Conference on Embedded Computing (MECO).IEEE,2018:1-4.
    [35]嚴一平.虛擬儀器技術和發展趨勢J].上海計量測試,2005,32(3).
    [36]張旻晉.分布式實時測控網絡技術研究與實現[D].武漢:武漢大學,2004.
    [37]陳高鋒.常用無線通信技術簡介J].電腦知識與技術,2012,08(5):1062-1064.
    [38]Liu W,Dai J.Design of attitude sensor acquisition system based on STM32[C].2015 fifth international conference on instrumentation and measurement, computer, communication and control (IMCCC).IEEE,2015:1850-1853.
    [39]徐仕寶.基于zigbee技術的智慧農業實時采集和遠程控制系統研究[J].智能城市,2016(9):32.
    [40]黃昕.基于PDA的移動數據處理系統設計與實現[D].成都:電子科技大學,2010.
    [41]孫強.基于雙模單待芯片GSM系統對TD-SCDMA系統的測量方法研究[D].上海:上海交通大 學,2012.
    [42]張文霞,王圓,張凱,等.基于ZigBee無線網絡的智能農業溫室大棚管理系統的設計與實現[J].中國 農機化學報,2016,37(6):247-250.
    [43]林思晨.LTE-U與WiFi共存機制及流量均衡技術研究[D].廈門:廈門大學,2017.
    [44]袁志福,來志云,祁英華,等.GPRS傳輸技術在農業氣象中的應用[J].中國農業信息,2015(1):100.
    [45]王乾,于亮,任敬濤,等.基于LoRa與GPRS的農業智能數據采集系統設計與實現[J].智庫時 代,2018(28):1-3.
    [46]喬輝.關于WLAN覆蓋的研究[J].無線電通信技術,2012,38(3):18-19.
    [47 ]陳曉亮.差分電容式微加速度傳感器穩定性研究[D].哈爾濱:哈爾濱工業大學,2009.
    [48]曹靜,吳浩,張新家.真空斷路器機械性能測試系統的參數采集接口電路設計[J].實驗室研究與探 索,2007,26(7):67-71.
    [49]Kuze A,Suto H,Nakajima M,et al.Thermal and near infrared sensor for carbon observation Fourier-transform spectrometer on the Greenhouse Gases Observing Satellite for greenhouse gases monitoring[J].Applied Optics,2009,48(35):6716-33.
    [50]歐廷印,胡筱婧.傳感技術發展綜述[J].電工技術,2006(11):1-1.
    [51]Zhang H,Xue H.Design of Greenhouse Environmental Parameters Prediction System[C].International Conference on Computer and Computing Technologies in Agriculture. Springer, Berlin, Heidelberg,2010:502-507.
    [52]韓方浩,王哲.基于STM32的農業大棚環境的智能測控系統設計[J].電子世界,2018(18):151-152.
    [53]肖興輝.基于無線網絡的溫濕水一體化糧情監測系統[D].濟南:山東建筑大學,2017.
    [54]劉崢,渠海鵬,魏志明,等.基于PLC和組態技術現代農業溫室控制系統設計[J].農家參 謀,2018(09):45.
    [55]代國勇.基于STM32單片機溫室大棚環境的智能控制系統設計及實現[D].石家莊:石家莊鐵道大 學,2017.
    [56]Qiang G,Ming C.Research and design of web-based wireless sensor network management system for greenhouse[C].2008 International Conference on Computer and Electrical Engineering.IEEE,2008:657-661.
    [57 ]郭庭熙.適用于配電網的相量測量單元設計與研制[D].北京:華北電力大學,2017.
    [58]Huang Q , Deng L , Fei M , et al. Building a Virtual Reality System for Intelligent Agriculture Greenhouse Based on Web3D[C].International Conference on Life System Modeling and Simulation International Conference on Intelligent Computing for Sustainable Energy and Environment. 2017.
    [59]龍建明,熊剛,張爭剛,等.基于單片機的溫室環境控制系統設計J].湖北農業科學,2015, 54(9):2238-2241.
    [60]王博,劉忠富,莊婧昱,等.基于STM32的無線溫室大棚控制系統設計J].電子測量技 術,2017(06):48-52+63.
    [61]趙建貴,李長青,安葳鵬,等.RS-485通信接口在KJ93型煤礦監控系統中的應用J].焦作工學院學報 (自然科學版),2001(05):353-354.
    [62 ]李曉峰.小型直升機自適應控制技術研究與實現[D].南京:南京航空航天大學,2016.
    [63]Qingsong NIU.A Design of Modern Greenhouse Environmental Monitoring System[J].Asian Agricultural Research,2017,9(07):57-60.
    [64]Li J,Zheng W,Shen C,et al.Application of Modbus Protocol Based on p_C/TCPIP in Water Saving Irrigation in Facility Agricultural[C].International Conference on Computer and Computing Technologies in Agriculture. Springer, Berlin, Heidelberg,2013:281-288.
    [65]嚴凱,姚凱學,韋付芝,等.基于STM32F103ZET6的溫室大棚多點光照采集系統J].計算技術與自 動化,2018(02):42-46.
    [66]唐孝先.智慧煤礦綜合信息移動平臺軟件的設計與實現[D].太原:太原理工大學,2017.
    [67]龔婧.基于PLC的電能計費系統[D].成都:電子科技大學,2011.
    [68]紀建偉,趙海龍,李征明,等.基于STM32的溫室CO2濃度自動調控系統設計[J].浙江農業學 報,2015,27(5):860.
    [69]Laszlo A,Bissell M J.Healthcare information management system[J].Computers in Health Care,2016,12(2):279-296.
    [70]劉慶海,徐雪梅,晏小飛.SSM在社區網格化管理平臺中的設計與應用[J].電腦編程技巧與維 護,2018,400(10):102-104+129.
    [71]Pawlowski A,Sanchez-Molina J A,Guzman J L,et al.Evaluation of event-based irrigation system control scheme for tomato crops in greenhouses[J].Agricultural WaterManagement,2017,183:16-25.
    【本文地址:http://www.bzhlmm.com//guanlilei/gongshangguanli/xixinguanli/8888.html

    上一篇:電子元器件信息管理與釆購決策系統的 研究與實現

    下一篇:沒有了

    相關標簽: