物聯(lián)網(wǎng)技術(shù)在海水養(yǎng)殖中的研究與應(yīng)用
掃描二維碼
隨時(shí)隨地手機(jī)看文章
引 言
2016 年 3 月17 日,《中華人民共和國(guó)國(guó)民經(jīng)濟(jì)和社會(huì)發(fā)展第十三個(gè)五年規(guī)劃綱要》發(fā)布,其中多處提到物聯(lián)網(wǎng)技術(shù)及智慧海洋。綱要第二十七章實(shí)施國(guó)家大數(shù)據(jù)戰(zhàn)略中提出建設(shè)物聯(lián)網(wǎng)應(yīng)用基礎(chǔ)設(shè)施和服務(wù)平臺(tái),推進(jìn)物聯(lián)網(wǎng)重大應(yīng)用示范工程建設(shè)。在第四十一章拓展藍(lán)色經(jīng)濟(jì)空間中提出推進(jìn)智慧海洋工程建設(shè)。
如何構(gòu)建科學(xué)的智慧海洋系統(tǒng)架構(gòu),使智慧海洋工程更好地為海水養(yǎng)殖服務(wù)。此方案從數(shù)據(jù)采集及控制節(jié)點(diǎn)、服務(wù)器、展示端三個(gè)部分設(shè)計(jì)和實(shí)現(xiàn)了一套完整的海水養(yǎng)殖智慧平臺(tái)。
1 系統(tǒng)架構(gòu)
如何能夠快速將遠(yuǎn)端數(shù)據(jù)采集及監(jiān)控,根據(jù)系統(tǒng)需求設(shè)計(jì)系統(tǒng)架構(gòu)圖,如圖 1 所示。
在系統(tǒng)架構(gòu)圖中,虛線雙向箭頭表示無(wú)線雙向通信,實(shí) 線雙箭頭表示有線雙向通信。在系統(tǒng)整體架構(gòu)中,通信方式 主要采用 Socket 通信,對(duì)于數(shù)據(jù)采集節(jié)點(diǎn)的識(shí)別主要采用設(shè) 備編號(hào)的方式進(jìn)行區(qū)分。展示端采用定時(shí)更新數(shù)據(jù)及請(qǐng)求更新 模式,同時(shí)服務(wù)器端設(shè)計(jì)了預(yù)警實(shí)時(shí)提示功能,系統(tǒng)采用 C/S 模式開發(fā)完成。
2 數(shù)據(jù)采集及控制節(jié)點(diǎn)
根據(jù)實(shí)用及成本考慮,數(shù)據(jù)采集及控制節(jié)點(diǎn)采用STM32單片機(jī),設(shè)計(jì)兩路電壓輸入和兩路電流輸入,一路 RS 485及一 路 CAN 接口,一個(gè)繼電器。節(jié)點(diǎn)中現(xiàn)接有 pH 傳感器一個(gè),輸 出為電壓模擬量 0 ~10 V;含氧量傳感器一個(gè),輸出為電流模 擬量 4 ~20 mA ;溫度傳感器一個(gè),采用 ds18b20,將其它沒有 使用的輸入接口作為后期其它數(shù)據(jù)采集擴(kuò)展使用。此節(jié)點(diǎn)通信 模塊采用 SIM900A,通訊模式采用 GPRS,滿足近海海域信號(hào) 的全覆蓋。節(jié)點(diǎn)與服務(wù)器連接時(shí),首先發(fā)送固定編號(hào),格式為 “1111+ID”,ID 編號(hào)從 STM32 芯片唯一 96 位設(shè)備 ID 號(hào)中讀取, 1111 表示數(shù)據(jù)采集節(jié)點(diǎn)。當(dāng)采集數(shù)據(jù)超出標(biāo)準(zhǔn)時(shí),可以通過控 制繼電器來(lái)采取相應(yīng)控制措施,同時(shí)可發(fā)送短信到指定手機(jī)中 發(fā)布預(yù)警信息。根據(jù)實(shí)際需求,可使用休眠模式,定時(shí)采集相 關(guān)數(shù)據(jù),大大降低數(shù)據(jù)采集及控制節(jié)點(diǎn)的能耗問題。
3 服務(wù)器
服務(wù)器作為數(shù)據(jù)匯集端,在設(shè)計(jì)和實(shí)現(xiàn)中主要負(fù)責(zé)數(shù)據(jù) 通信、數(shù)據(jù)存儲(chǔ)和數(shù)據(jù)處理等,采用 C# 編程語(yǔ)言、Socket 通 信方式和 SQL Server 2008 數(shù)據(jù)庫(kù)。服務(wù)器端對(duì)指定端口進(jìn)行 監(jiān)聽,當(dāng)監(jiān)聽到客戶端建立連接時(shí),將客戶端 IP 地址及端口 號(hào)儲(chǔ)存到特定集合中,以便后期對(duì)指定采集節(jié)點(diǎn)發(fā)送控制信息。 當(dāng)服務(wù)器端建立連接后,通過判斷客戶端發(fā)送的第一條信息 的前四位以區(qū)分是采集控制節(jié)點(diǎn)還是展示節(jié)點(diǎn)。當(dāng)接收信息前 四位為 1111 時(shí),為采集控制節(jié)點(diǎn),需將 ID 號(hào)與 IP 地址及端 口號(hào)進(jìn)行綁定,存儲(chǔ)在數(shù)據(jù)庫(kù)中。當(dāng)接收信息前四位為 2222 時(shí), 連接用戶為展示端,根據(jù)后面請(qǐng)求指令返回相應(yīng)的數(shù)據(jù)信息, 包括身份驗(yàn)證、溫度數(shù)據(jù)請(qǐng)求、pH 值數(shù)據(jù)請(qǐng)求和含氧量數(shù)據(jù) 請(qǐng)求等信息。服務(wù)器端將根據(jù)接收數(shù)據(jù)進(jìn)行信號(hào)調(diào)理,使接 收到的采集節(jié)點(diǎn)的數(shù)據(jù)與實(shí)際值更加接近。同時(shí)具有數(shù)據(jù)預(yù) 警機(jī)制,根據(jù)各預(yù)警參數(shù)值進(jìn)行分析判斷,一旦超出既定范 圍將立即采取相應(yīng)措施并發(fā)送信息給展示端,起到環(huán)境監(jiān)測(cè) 預(yù)警的作用。
4 展示端
展示端主要包括兩部分,一部分為 PC 展示端,另一部分為移動(dòng)展示端。PC 展示端主要采用C# 編程模式,而移動(dòng)終端展示使用Android 編程模式。展示端僅僅是在展示設(shè)備和編程語(yǔ)言中有所不同,其通信協(xié)議完全相同,通信方式仍使用Socket 編程。首次與服務(wù)器端連接時(shí)需發(fā)送 2222 作為展示端身份驗(yàn)證,服務(wù)器有數(shù)據(jù)更新時(shí)將向展示端發(fā)送更新數(shù)據(jù)。展示端需實(shí)現(xiàn)的功能有溫度、pH 值、含氧量、預(yù)警顯示及數(shù)據(jù)采集控制節(jié)點(diǎn)的繼電器控制。根據(jù)服務(wù)器端請(qǐng)求指令的不同來(lái)獲取不同的數(shù)據(jù),以便在展示端展示。當(dāng)數(shù)據(jù)超標(biāo)時(shí), 預(yù)警信號(hào)由綠色變?yōu)榧t色,恢復(fù)正常后將自動(dòng)切換回綠色。以PC 展示端為例,實(shí)際接收和顯示的數(shù)據(jù)如圖 2 所示。
圖 2 PC 展示端數(shù)據(jù)
5 結(jié) 語(yǔ)
此平臺(tái)提供了一套完整的智慧海洋系統(tǒng)解決方案,從終端采集、網(wǎng)絡(luò)傳輸、服務(wù)端數(shù)據(jù)處理到展示端數(shù)據(jù)展示及預(yù)警均采用了相關(guān)成熟的技術(shù),保證了平臺(tái)的穩(wěn)定性。將物聯(lián)網(wǎng)相關(guān)技術(shù)應(yīng)用于海水養(yǎng)殖中,優(yōu)勢(shì)明顯,大大節(jié)省了人力成本并解決了在惡劣環(huán)境中養(yǎng)殖數(shù)據(jù)的實(shí)時(shí)采集和處理等問題。除應(yīng)用于海水養(yǎng)殖,此平臺(tái)還為海洋環(huán)境監(jiān)測(cè)等方面提供了相關(guān)借鑒,其商業(yè)推廣前景十分廣闊。