蔡騫+紀然然+彭晶晶+呂進龍
摘 要:設計一個基于物聯網技術的魚類養(yǎng)殖環(huán)境監(jiān)控系統,該系統實現了對水溫、溶解氧、pH值等參數的采集、處理和預警,同時實現了視頻監(jiān)控、增氧機自動控制以及魚類的投食功能。該系統適用于目前大多數情況的水產養(yǎng)殖和水環(huán)境監(jiān)測,并增加了水環(huán)境中重金屬含量監(jiān)測的特色功能。
關鍵詞:監(jiān)控系統;魚類養(yǎng)殖;物聯網;ZigBee
中圖分類號:TP393 文獻標識碼:A 文章編號:2095-1302(2015)03-00-04
0 引 言
長期以來,我國水產養(yǎng)殖環(huán)保意識淡薄、養(yǎng)殖密度過高等問題,導致養(yǎng)殖病害呈逐年加重之勢,以至于水域環(huán)境遭到不同程度的破壞,水產品質量安全得不到有效保障,解決水產養(yǎng)殖環(huán)境狀況已經成為水產養(yǎng)殖業(yè)持續(xù)健康發(fā)展的重要課題。
影響水產養(yǎng)殖環(huán)境的關鍵參數是水溫、溶氧、氨氮、重金屬、pH值等。目前國內的水產養(yǎng)殖業(yè)其水質監(jiān)測基本上仍處于人工取樣、化學分析的人工監(jiān)測階段,其耗時費力、精確度不高,并且需要有專業(yè)人員進行操作。該魚類養(yǎng)殖系統結構清晰,配置簡單,功能易擴展等,實現了對水溫、溶解氧、pH值以及重金屬含量等多參數的采集、處理和預警。同時,還可以自動控制增氧機、投食機等設備,實現自動喂食和增氧。
1 總體設計
本系統主要由感知系統、網絡層傳輸系統、應用層系統(包括手動采集導入系統、數據處理展示系統和控制系統等)三大部分組成。感知層解決的是人類世界和物理世界的數據獲取問題。它首先通過傳感器、攝像機等設備,采集外部物理世界的數據,然后通過RFID、條形碼、藍牙、紅外等短距離傳輸技術傳遞數據。感知層所需要的關鍵技術包括檢測技術、短距離無線通信技術等。本系統的感知系統主要是指感知層設備所組成的硬件系統,包括了傳感器、攝像機、控制設備等,負責獲取各類數據、視頻,并傳輸給后臺處理;同時根據預警情況,對設備進行控制。
網絡層傳輸系統主要包括ZigBee和無線通信、以太網兩大部分。ZigBee技術是一種近距離、低復雜度、低功耗、低速率、低成本的雙向無線通訊技術,主要用于距離短、功耗低且傳輸速率不高的各種電子設備之間進行數據傳輸以及典型的有周期性數據、間歇性數據和低反應時間數據之間的傳輸應用。本系統中ZigBee通信主要用于傳感器和采集模塊之間的數據通信,解決了傳統環(huán)境監(jiān)測方案中遇到的布線困難、成本高等問題。無線通信、以太網部分主要用于采集控制設備和后臺管理中心之間數據交互、視頻傳輸等功能。如果現場適合布線,可以采取以太網通信方式,但大多數都是采用無線通信的方式,使用3G或者4G的技術,具有無需布線,方便快捷等優(yōu)點。
應用層系統包括手動采集導入系統、數據處理展示系統和控制系統三部分。手動采集導入系統是用于手持設備對水樣進行重金屬檢測后,把測試結果導入系統,系統根據導入的數據進行分析處理,然后進行預警等;數據處理展示系統是對數據中心處理后的數據、視頻等進行匯總,把相關的圖表、報表等展現給用戶;控制系統是根據預警信息或提示,可以自動或者人工對增氧機、投食機等設備進行控制,實現自動喂食和增加氧氣。系統結構圖如圖1所示:
圖1 系統結構圖
1.1 硬件設計
本系統所用主要硬件設備包括水溫傳感器、pH傳感器、溶解氧傳感器、重金屬檢測設備、視頻采集設備、網關設備、控制設備、視頻服務器等。
水溫傳感器從結構上講與傳統的傳感器沒有什么變化,但它的作用是向發(fā)動機控制單元提供一個溫度變化的模擬量信號。它的供電電壓是由控制單元提供的5 V電源,返回控制單元的信號為1.3~3.8 V的線性變化信號。
pH傳感器是用來檢測被測物中氫離子濃度并將其轉換成相應的可用輸出信號的一種傳感設備,通常由化學部分和信號傳輸部分構成。pH傳感器常用于進行對溶液、水等物質的工業(yè)測量。
溶解氧傳感器是一種用于測量氧氣在水中的溶解量的傳感設備,用于水中含氧量的測量,通過調節(jié),以便維持最佳的生態(tài)和生長環(huán)境。
重金屬,實際上主要是指汞、鎘、鉛、鉻、砷等金屬或類金屬,也指具有一定毒性的一般重金屬,如銅、鋅、鎳、鈷、錫等。在天然水體中一般重金屬產生毒性的范圍大約在1~10mg/L之間,而汞,鎘等產生毒性的范圍在0.01~0.001mg/L之間。重金屬檢測方面,日本和歐盟國家有的采用電感耦合等離子質譜法(ICP-MS)分析,但儀器成本高。也有的采用X熒光光譜(XRF)分析,優(yōu)點是無損檢測,可直接分析成品,但檢測精度和重復性不如光譜法。目前最新流行的檢測方法是陽極溶出法,檢測速度快,數值準確,可用于現場等環(huán)境應急檢測。
而視頻方面,根據不同的監(jiān)視對象和要求,攝像機應做不同的配置,對大范圍的室外空間監(jiān)視,并要求看清整體目標的場景,配置球形云臺防護罩,帶動攝像機做上下左右掃描,攝像機配置22倍鏡頭以短焦距(廣角)作整體監(jiān)視,以長焦距(拉近)分辨具體細節(jié)(全遙控方式);對小范圍空間或單個目標監(jiān)視,可用固定攝像機配置定焦鏡頭監(jiān)視。
在主要硬件設備中,水溫傳感器、pH傳感器、溶解氧傳感器、重金屬檢測設備等,主要負責環(huán)境數據的采集,并把采集的數據通過ZigBee協議傳送給網關設備或者導入系統數據中心;網關設備通過以太網或者無線網絡方式,負責把數據傳送給數據中心服務器;而視頻采集設備、視頻服務器,負責采集存儲視頻和圖像;控制設備主要功能是接收軟件平臺系統的指令,對增氧機、投食機等設備進行控制(如進行啟動、停止等操作),并把設備的運行狀態(tài)返回給軟件平臺系統。
該系統硬件部分主要部署圖如圖2所示:
圖2 硬件部署圖
1.2 軟件設計
該系統軟件主要功能包括水溫、水深、pH值、含氧量等數據的采集、處理、保存;重金屬含量測試數據的導入;視頻信息實時顯示以及歷史查詢;對自動控制增氧機、投食機等設備進行控制指令的下發(fā)以及設備狀態(tài)的查詢;以及在采集到的魚池參數超出標準時可進行報警等功能。
根據系統軟件的主要功能,本軟件系統模塊劃分主要包括:數據采集與處理模塊,負責傳感信息和視頻信息的采集、處理與保存;數據導入模塊,主要是把離線設備檢測的重金屬數據導入本系統中,供用戶查詢使用;設備控制模塊,主要是根據用戶指令或者自動控制的參數設置,下發(fā)控制設備信息,并返回設備控制以后的狀態(tài);數據查詢模塊,主要是供用戶查詢實時的數據和歷史數據,并把查詢的結果比如數據曲線或者報表,展示給用戶;自動報警模塊,對采集的數據信息超過警戒后,自動給用戶提示的功能,以方便用戶及時地進行處理。系統流程圖如圖3所示:
圖3 系統流程圖
本系統啟動開始,軟件平臺系統自動根據設置,進行采集數據,然后進行數據處理。當數據達到報警設置的條件,對用戶進行報警,如果數據正常,則進行數據保存,如果產生報警,再根據系統設備檢查是否需要下發(fā)設備控制指令,該指令也可以由操作人員進行手動點擊下發(fā),再把操作結果返回給用戶。系統對導入和采集的數據,進行處理后,保存到存儲服務器,供用戶進行提取和查詢。
系統根據設置,自動進行采集數據。其中,采集數據的主要代碼如下:
int RevData(char * strbuff)
{
int retVal;
WSADATA wsaData;
DWORD dwIP = 0;
//域名解析
HOSTENT* pHS = gethostbyname(strdomain);
if( pHS != NULL)
{
in_addr addr;
CopyMemory(&addr.S_un.S_addr, pHS->h_addr_list[0], pHS->h_length);
dwIP = addr.S_un.S_addr;
}
else
{
return 0;
}
SOCKET sckTongJi = socket(AF_INET, SOCK_STREAM, 0);
//定義地址結構體 并初始化
SOCKADDR_IN addrSvr;
addrSvr.sin_family = AF_INET;
addrSvr.sin_addr.S_un.S_addr = dwIP;
addrSvr.sin_port = htons(80); //使用網絡字序
retVal = connect(sckTongJi, (SOCKADDR*)&addrSvr, sizeof(SOCKADDR_IN));
if (retVal)
{
//AfxMessageBox("connect error!");
WSACleanup();
return 0;
}
memset(strbuff, 0, sizeof(strbuff));
recv(sckTongJi, strbuff, 4096, 0);
closesocket(sckTongJi);
WSACleanup();
}
用戶進行查詢數據后,軟件系統根據查詢得到的數據繪制出數據曲線圖。其中,繪制溶解氧曲線的主要代碼如下:
void CDrawCoorView::OnDraw(CDC* pDC)
{
CDrawCoorDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
const int num=6;
float initX[num]={1,2,3,4,5,6};
float initY[num]={0,2,4,6,8,10};
//分別取得X和Y最大值,最小值
float maxX=initX[0];
float minX=initX[0];
float maxY=initY[0];
float minY=initY[0];
for(int i=0;i { if(initX>maxX) maxX=initX; if(initX minX=initX; if(initY>maxY) maxY=initY; if(initY minY=initY; } //確定圖象顯示大小 int width=500; int height=300; const int mytop=20; const int mybottom=40; const int myleft=50; const int myright=40; //確定X,Y軸每單位顯示寬度 float intervalX=(width-myleft-myright)/(maxX-minX); float intervalY=(height-mybottom-mytop)/(maxY-minY); //繪制曲線 pDC->MoveTo(int(myleft+(initX[0]-minX)*intervalX),
int(height-(mybottom+(initY[0]-minY)*intervalY)));
for(i=0;i { pDC->LineTo(int(myleft+(initX-minX)*intervalX), int(height-(mybottom+(initY-minY)*intervalY))); } } 2 系統調試 2.1 傳感器的調試 傳感器上電后,通過ZigBee協議自動與網關設備進行組網,然后可以通過軟件采集傳感器的數據。如果采集上來的數據不準確,通常是由下面三個方面問題引起的:傳感器輸出電流不對(常用傳感器輸出為電流型)、傳感器量程配置不對、數據計算錯誤。傳感器輸出電流不對是傳感器設備問題,可以更換新的傳感器;傳感器量程配置不對可以通過配置說明書進行糾正;而數據計算錯誤是軟件方面的Bug引起的,需調試并修改軟件。 2.2 視頻圖像的調試 在視頻的調試過程中,常常發(fā)現有視頻畫面抖動或者不清晰的問題。視頻畫面抖動,通常是由視頻信號線問題或者電磁干擾引起的,更換新的視頻信號線或者查找周圍干擾源并消除干擾,抖動現象就會消失。而視頻不清晰,如果經過調節(jié)焦距等操作,仍然達不到預期的效果,則說明是攝像機的選擇不適合。攝像機種類很多,不同的環(huán)境需要采用不同的攝像機,以達到預期的效果。比如:室外定點監(jiān)視目前最常用的是紅外一體化攝像機,有特殊要求可選擇陣列紅外攝像機,雙CCD陣列攝像機等;而室外動點監(jiān)視常用的是智能球機,可以分高速球、中速球、低速球,根據需要來選擇,也可以選擇普通攝像機;室內一般也可以選用紅外一體化攝像機,但用的更多的是半球吸頂式攝像機,可以選擇是否帶紅外,鏡頭大小等。還有,局部光線強的環(huán)境,選擇背光或抑光補償能力強的攝像機或直接選用寬動態(tài)攝像機。 2.3 軟件系統的調試 如果硬件調試完畢,通過軟件顯示的數據或者曲線不準確,則是由軟件系統引起的,通過排查并修復軟件系統的Bug,可以展示正確的結果。本軟件系統經過調試后,可以正確的顯示水溫、溶解氧、pH值等數據曲線,其中溶解氧傳感器的數據曲線如圖4所示: 圖4 溶解氧數據曲線 3 結 語 本系統已經成功應用在多個水產養(yǎng)殖實驗基地,大大提高了工作效率和人工成本,獲得了用戶的好評。本系統和傳統的水產監(jiān)控系統相比,具有下列一些特色和創(chuàng)新: 針對水中含有重金屬常常離線檢測,本系統開發(fā)了重金屬數據導入系統,使整個水域的環(huán)境參數更加真實和完整。 本系統可以根據報警信息設置,自動對溶解氧等設備進行控制,也可以通過人工的方式去控制增氧機、投食機等設備。 本系統可以通過調節(jié)視頻設備,通過視頻直接觀察水域的情況和被控制設備的狀態(tài),大大提高了操作的安全性。 本系統可以對水產類特別是魚類養(yǎng)殖環(huán)境中水的溫度、水位,氧含量等情況進行7*24小時的連續(xù)監(jiān)測。由于系統可實現遠程監(jiān)控,即使沒有人員在監(jiān)測現場,也可以全面了解水域的環(huán)境情況,在水產養(yǎng)殖應用中具有很強的實際意義。另外,本系統不僅包含電腦客戶端軟件,也含有移動終端操作使用的APP,大大提高了系統使用的便捷性。同時,系統設計時,兼顧了穩(wěn)定性、可靠性、可擴展性等特點。 參考文獻 [1] 朱文錦, 冉綱軍. 水產養(yǎng)殖環(huán)境參數自動監(jiān)控系統研究[J]. 淡水漁業(yè),2001(1):60-61. [2] 龍慶華. 智能溫室計算機自動監(jiān)控系統 [J]. 華南師范大學學報(自然科學版),2001(1):5-8. [3] 程月華,毛罕平,左志宇. 基于單片機的設施農業(yè)營養(yǎng)液供給控制系統[J]計算機測量與控制,2002,10(3):172-174. [4] 王欽,陳忠輝,陳新. 基于ZigBee的倉庫溫濕度采集系統的設計[J]. 計算機與數字工程. 2009,37(9):207-211. [5] 趙馨惠,俞秀生. 極譜式在線溶解氧分析儀有關問題探討[J]. 化工自動化及儀表.2007, 34(1):94-96. [6] 姚玉霞,劉鶴,傘曉輝,等;蔬菜生產智能化專家系統在蔬菜栽培中的應用[J].農業(yè)網絡信息,2004(9):13-15. [7]李中華,王國占,齊飛.我國設施農業(yè)發(fā)展現狀及發(fā)展思路[J].中國農機化,2012(1):7-9. [8]葛志軍,傅理.國內外溫室產業(yè)發(fā)展現狀與研究進展[J].安徽農業(yè)科學,2008,36 (35):1575-1576 [9]劉篤仁,韓保君.傳感器原理及應用技術[M].北京:機械工業(yè)出版社,2003. [10]黃賢斌,鄭筱霞.傳感器原理與應用[M].北京:高等教育出版社. 2004. [11] Encyclopedia of Internet Technologies and Applications Knowledge management technologies and applications[R].literature review from 1995 to 2002.