高榮官 葉 軍
(1泰興市水務局堤管處江蘇泰興225400 2泰興市水務局江蘇泰興225400)
節(jié)水灌溉監(jiān)控系統(tǒng)遠程管理軟件設計與實現(xiàn)
高榮官1葉 軍2
(1泰興市水務局堤管處江蘇泰興225400 2泰興市水務局江蘇泰興225400)
本文基于Delphi語言設計遠程數(shù)據(jù)管理系統(tǒng),通過運用基于TCP/IP協(xié)議的Socket編程實現(xiàn)土壤參數(shù)的實時采集,與Access數(shù)據(jù)庫的結合實現(xiàn)了歷史數(shù)據(jù)的查詢,此外曲線圖的繪制、水晶報表打印、遠程視頻監(jiān)控、短信貓的設計增加了系統(tǒng)的智能化。
監(jiān)控系統(tǒng);管理軟件;數(shù)據(jù)庫
我國是農(nóng)業(yè)大國,總用水量的70%用于農(nóng)業(yè)用水,但傳統(tǒng)的大水漫灌耕作方式,使農(nóng)業(yè)用水的有效利用率僅為40%左右,因此采用先進的節(jié)水灌溉方式對農(nóng)業(yè)生產(chǎn)具有十分重要的意義。節(jié)水灌溉不僅可以提高水資源的利用率,而且可以緩解我國水資源緊張的局面,對于生態(tài)環(huán)境的改善、經(jīng)濟效益的提高,以及實現(xiàn)可持續(xù)發(fā)展都具有十分重要的意義。
本系統(tǒng)是基于Delphi語言、采用分層次、分模塊化設計的遠程數(shù)據(jù)管理系統(tǒng),通過運用基于TCP/IP協(xié)議的Socket編程實現(xiàn)土壤參數(shù)的實時采集,與Access數(shù)據(jù)庫的結合實現(xiàn)了歷史數(shù)據(jù)的查詢,此外曲線圖的繪制、水晶報表打印、遠程視頻監(jiān)控、短信貓的設計增加了系統(tǒng)的智能化。
圖1 系統(tǒng)功能架構
本系統(tǒng)通過Web遠程登陸到管理系統(tǒng),該管理系統(tǒng)主要分為用戶管理系統(tǒng)及綜合管理系統(tǒng),用戶管理系統(tǒng)主要進行用戶權限、密碼等操作。綜合管理系統(tǒng)主要是對地圖進行操作,具體分為地圖操作、目標選擇、屬性修改、數(shù)到圖綜合查詢以及圖層控制。如圖1所述。用戶層主要分為系統(tǒng)管理員以及用戶。應用層主要是為用戶操作提供一個軟件平臺。數(shù)據(jù)層主要應用于數(shù)據(jù)的存儲與查詢。
節(jié)水灌溉子系統(tǒng)結構系統(tǒng)框圖如圖1所示。分模塊式的設計使系統(tǒng)的架構清晰,且具有多種功能?;诖谕ㄐ旁O計實現(xiàn)了水泵閘門以及支渠流量的采集?;?G的無線通信,實現(xiàn)了農(nóng)田土壤參數(shù)的采集,進而得以實現(xiàn)農(nóng)田的智能化管理?;?G的視頻監(jiān)控,使管理員對于農(nóng)田作業(yè)的動向能夠更直觀的管理。
3.1 TCP/IP協(xié)議
TCP/IP協(xié)議作為一種網(wǎng)絡協(xié)議,在當今網(wǎng)絡不斷發(fā)展的趨勢下應用也越來越廣泛,它包含了許多實現(xiàn)網(wǎng)絡通信協(xié)議,因此也被稱作TCP/IP協(xié)議棧。其中TCP以及IP協(xié)議是這些協(xié)議中最重要的兩個通信協(xié)議。TCP/IP與標準的OSI協(xié)議相比,精簡了會話層和表示層,將其加入到應用層上,減少通信結構的層次關系,從而提高信息傳輸?shù)乃俾?。處于傳輸層的TCP協(xié)議表示的是傳輸控制協(xié)議,它可以實現(xiàn)無差錯、無重復的順序數(shù)據(jù)傳輸。網(wǎng)絡層的IP協(xié)議,為因特網(wǎng)中的每一臺電腦給予了一個唯一標識。在應用程序中應用TCP/IP協(xié)議進行通信時,利用TCP套接字在本機與目的機之間建立一個套結字虛擬連接,然后兩者之間便可以開始一種雙向的字節(jié)流交換。在通信原理中,通信協(xié)議大多是以報文的形式進行數(shù)據(jù)傳輸,TCP/IP協(xié)議也有自己特定的報文形式。
3.2 Socket接口
Socket又稱“套接字”,是一組用于描述IP地址與端口號的接口。Socket是應用層和TCP/IP協(xié)議族通信的中間軟件層,打開一個Socket會綁定一個端口。它隱藏了復雜的TCP/IP協(xié)議族,使一組簡單、通用的接口展現(xiàn)給用戶。
TCP/IP的Socket提供以下3種套接字:流式套接字、數(shù)據(jù)報套接字、原始套接字。和其他兩種方式相比,本系統(tǒng)選用的流式套接字提供了一個因面向連接而比較可靠的數(shù)據(jù)傳輸服務。數(shù)據(jù)無差錯、無重復、有序地發(fā)送和接收。建立網(wǎng)絡連接成功后,服務器端和客戶端都會產(chǎn)生一個Socket接口,通過操作此接口完成所需對話。本系統(tǒng)需要實時通信,網(wǎng)絡消息的傳輸是以異步的方式進行。所以在設計考慮使用多線程來操作Socket以避免程序的阻塞。
3.3 服務器端與客戶端的通信
不成功則創(chuàng)建套接字失敗
4.1 數(shù)據(jù)庫模塊
本系統(tǒng)采用了數(shù)據(jù)庫管理模塊對數(shù)據(jù)進行處理。主要完成數(shù)據(jù)的存儲、查詢、曲線圖的繪制以及水晶報表打印等功能。
數(shù)據(jù)庫是信息存儲的載體。數(shù)據(jù)庫設計的好壞直接影響了整個系統(tǒng)的控制。本文以Access2010數(shù)據(jù)庫系統(tǒng)為基礎,建立一個最優(yōu)性能的數(shù)據(jù)庫設計方案。本系統(tǒng)選用集中式中央數(shù)據(jù)庫模型,將由采集模塊采集到的數(shù)據(jù)信息都儲存在一個中央數(shù)據(jù)庫中。Web服務器和3G應用服務器均使用數(shù)據(jù)訪問接口ADO實現(xiàn)與數(shù)據(jù)庫的連接。
4.2 曲線圖繪制
遠程傳送的數(shù)據(jù)經(jīng)校驗分析后,存入Access數(shù)據(jù)庫數(shù)據(jù)表中,字段包括ID、日期、土壤濕度值、土壤溫度值以及土壤Ph值,使用DBChart控件,綁定該數(shù)據(jù)源,并進行曲線圖的繪制。使得管理員能夠更直觀方便的分析每一個節(jié)點土壤參數(shù)的變化規(guī)律。
4.3 水晶報表打印
為了便于管理員更直觀了解農(nóng)田的土壤狀況,本系統(tǒng)采用了水晶報表設計器用以生成報表,將存儲在數(shù)據(jù)庫中的數(shù)據(jù),進行保存及打印。采用QReport和DBChart控件控件進行簡單報表界面設計以及數(shù)據(jù)源的綁定。報表菜單上有導出報表、打印報表等功能。
本文設計了節(jié)水灌溉監(jiān)控系統(tǒng)的上位機軟件,該軟件包括登錄界面、選擇界面、3G遠程通信和數(shù)據(jù)管理模塊等?;赥CP/IP協(xié)議的Socket編程,系統(tǒng)實現(xiàn)了數(shù)據(jù)的實時采集以及遠程傳輸,并且按條件查詢歷史數(shù)據(jù),并生成報表,供查詢與打印。
[1]孫艷紅.無線傳感器網(wǎng)絡在農(nóng)田溫濕度信息采集中的構建與應用[D].河南農(nóng)業(yè)大學,2010,6.
[2]楊明慧.無線傳感器網(wǎng)絡在蔬菜大棚監(jiān)測中的應用研究[D].揚州大學,2010,4.