楊英,任選
(1.廣東交通職業(yè)技術(shù)學(xué)院,廣東 廣州 510080;2.廣州索朗智能科技有限公司,廣東 廣州 510000)
我國(guó)是水產(chǎn)養(yǎng)殖大國(guó),但養(yǎng)殖中大部分投喂、增氧、水溫調(diào)節(jié)等相應(yīng)操作仍然是依靠人工觀察養(yǎng)殖環(huán)境而進(jìn)行,生產(chǎn)方式較為粗放,生產(chǎn)水平還比較落后。近年來以無線傳感、云計(jì)算、大數(shù)據(jù)等物聯(lián)網(wǎng)技術(shù)為標(biāo)志的新一代信息技術(shù)發(fā)展迅猛,利用物聯(lián)網(wǎng)技術(shù)進(jìn)行水產(chǎn)養(yǎng)殖已引起關(guān)注,有必要加強(qiáng)物聯(lián)網(wǎng)技術(shù)在水產(chǎn)養(yǎng)殖行業(yè)中的應(yīng)用研究。
水產(chǎn)養(yǎng)殖的水質(zhì)信息主要有溫度(T)、溶解氧(DO)、酸堿度(pH)、電導(dǎo)率(TDS)等。水質(zhì)信息的實(shí)時(shí)監(jiān)測(cè)對(duì)投喂、增氧、調(diào)節(jié)水溫等至關(guān)重要。近年已有許多用于漁業(yè)水質(zhì)檢測(cè)的研究,如鄒志勇等[1]、吳澤鑫等[2]提出了基于ZigBee 技術(shù)的嵌入式監(jiān)控系統(tǒng)。這類無線傳感技術(shù)屬于近距離傳輸,應(yīng)用受限?,F(xiàn)在,水質(zhì)監(jiān)測(cè)越來越多青睞于使用LoRa、NB_IoT無線傳感技術(shù)[3,4],而基于這類技術(shù)的用于水產(chǎn)養(yǎng)殖卻非常少[5]。因此,本文通過研究LoRa 無線傳輸技術(shù)在水質(zhì)監(jiān)測(cè)方面的應(yīng)用,提出了基于LoRa 的水產(chǎn)養(yǎng)殖成套設(shè)計(jì)方案,包括利用云技術(shù)進(jìn)行水質(zhì)信息存儲(chǔ)、控制信息轉(zhuǎn)發(fā)等技術(shù)來實(shí)現(xiàn)智能化、信息化水產(chǎn)養(yǎng)殖。
本系統(tǒng)采用兩級(jí)微型計(jì)算機(jī)控制系統(tǒng)(SCC)結(jié)構(gòu),由監(jiān)控終端系統(tǒng)與云平臺(tái)組成,云平臺(tái)使用廣州某公司提供專為智慧農(nóng)業(yè)開發(fā)的云平臺(tái)。該平臺(tái)完成了對(duì)網(wǎng)關(guān)數(shù)據(jù)接收、處理以及集中管理,前提是來自網(wǎng)關(guān)數(shù)據(jù)按照平臺(tái)要求的協(xié)議預(yù)先處理數(shù)據(jù)。本設(shè)計(jì)中先將來自監(jiān)控終端的數(shù)據(jù)進(jìn)行預(yù)處理再傳入網(wǎng)關(guān)設(shè)備,由網(wǎng)關(guān)設(shè)備負(fù)責(zé)與云平臺(tái)通信。
本系統(tǒng)的結(jié)構(gòu)框圖如圖1。其遠(yuǎn)程監(jiān)控終端系統(tǒng)以STM8L05F3 低功耗單片機(jī)為底層,由相應(yīng)的T傳感器、DO 傳感器、pH 傳感器、TDS 傳感器、模擬量輸入輸出通道、執(zhí)行機(jī)構(gòu)所組成。傳輸層采用RS485 通信協(xié)議接入LoRa 網(wǎng)關(guān),LoRa 網(wǎng)關(guān)數(shù)據(jù)通過GPRS 接入廣州市某公司云平臺(tái),一方面云平臺(tái)數(shù)據(jù)可通過手機(jī)移動(dòng)接口顯示出實(shí)時(shí)水質(zhì)信息,手機(jī)移動(dòng)端同時(shí)發(fā)送控制命令給云平臺(tái)控制監(jiān)控終端;另一方面,養(yǎng)殖設(shè)備上可與云平臺(tái)通信,來自云平臺(tái)的控制數(shù)據(jù)可以開關(guān)控制增氧機(jī)器、投飼料和增溫設(shè)備等。其中以SMT8L051F3 為核心的監(jiān)控終端系統(tǒng)的工作過程如下:
酸堿度(pH)、溶解氧(DO)、溫度(T)、電導(dǎo)率(TDS)等數(shù)據(jù)采集模塊完成對(duì)水產(chǎn)養(yǎng)殖環(huán)境中pH、溶解氧、溫度、電導(dǎo)率等采集,各自將數(shù)據(jù)通過轉(zhuǎn)換模塊轉(zhuǎn)換成電量,這類電量往往比較小不易讀取,通過設(shè)計(jì)調(diào)理電路把電信號(hào)放大、濾波轉(zhuǎn)換成單片機(jī)可以讀取的數(shù)字量,單片機(jī)再與RS485 通信,將數(shù)據(jù)打包好傳輸出去。單片機(jī)也可讀取RS485 數(shù)據(jù)包中控制信息進(jìn)行調(diào)節(jié)。系統(tǒng)整體結(jié)構(gòu)圖如下:
本文以DO 傳感器、主控芯片為例介紹硬件設(shè)計(jì)。
1.2.1 基于Clark 電極檢測(cè)DO 的方法與電路設(shè)計(jì)
(1)覆膜極譜式DO 傳感器的工作原理[6]
本系統(tǒng)選用覆膜原電池式DO 傳感器。該傳感器屬于Clark 電極型,價(jià)格適中,穩(wěn)定度好,可以滿足水產(chǎn)養(yǎng)殖環(huán)境溶解氧在線測(cè)量的要求。該傳感器由陰陽兩電極和電解液組成原電池,測(cè)量時(shí)不需外加電壓,電極反應(yīng)自發(fā)進(jìn)行。一個(gè)電極材料為Au,一個(gè)電極材料為Pb,電解液為NaOH 溶液,則電極反應(yīng)為:
陰極:O2+2H2O+4e-→40H-
陽極:2Pb+4OH-→2Pb(OH)2+4e
電池總反應(yīng):OH-+2Pb+2H20 →2Pb(OH)2
擴(kuò)散電流的大小可表示為:i=K'·CS
式中,K'在某一溫度下是一個(gè)常值,CS 為溶解氧濃度,電流與水中溶解氧濃度成正比,DO 傳感器為線性元件。只要測(cè)量該溫度下的電流值,就可測(cè)得此時(shí)水中溶解氧濃度。
朱亞明在文獻(xiàn)[6]中提出的公式:
根據(jù)上文提到的原理,設(shè)計(jì)了溶解氧的極化電壓電路、極化穩(wěn)壓電路以及溶解氧溫度補(bǔ)償電路。
(2)溶解氧極化電壓電路設(shè)計(jì)
極譜型電極需要外加0.6~0.8V 的極化電壓,需要一個(gè)分壓模塊。R11、R12 為分壓電阻。U4 為電壓跟隨器,增強(qiáng)極化電壓的驅(qū)動(dòng)能力。R10、C18 構(gòu)成個(gè)RC 濾波電路(圖2)。
(3)溶解氧極化穩(wěn)壓電路設(shè)計(jì)
LT1763 是一種穩(wěn)壓電源芯片(LDO)可把4~20V 供電電壓轉(zhuǎn)換為3.3V 電壓,再經(jīng)過小磁珠FB1 隔離轉(zhuǎn)換為信號(hào)調(diào)理模塊的正輸入電壓AVCC。AVCC 經(jīng)過ICL7660 轉(zhuǎn)換為-3.3V,再經(jīng)過L1,C12,C16 組成的LC 濾波電路提高電源的穩(wěn)定性,輸出-AVCC 供模擬器件使用(圖3)。
(4)溶解氧溫度補(bǔ)償電路設(shè)計(jì)
使用cj431 組成精密電流限制器,供給NTC 電阻,使其產(chǎn)生精確的電壓,依電壓值計(jì)算出當(dāng)前的溫度,然后由處理器對(duì)電極輸出信號(hào)進(jìn)行溫度補(bǔ)償。電路圖見圖4。其他傳感器硬件部分設(shè)計(jì)與DO傳感器設(shè)計(jì)類似。
1.2.2 主控芯片電路
主控芯片采用stm8l 系列。意法半導(dǎo)體的8 位微控制器平臺(tái)基于高性能8 位內(nèi)核和先進(jìn)外設(shè)集,該平臺(tái)采用意法半導(dǎo)體專有的130nm 嵌入式非易失性存儲(chǔ)器技術(shù)制造而成(圖5)。STM8L 基于8 位STM8 內(nèi)核采用了專有超低漏電流工藝,利用最低功耗模式實(shí)現(xiàn)了超低功耗(0.30uA)。它具有多個(gè)串行通信口和IIC 接口足以滿足本系統(tǒng)的使用。主控芯片連接電路圖見圖5。
1.3.1 RS485 通信
本設(shè)計(jì)采用RS485 通信,將來自主控芯片的數(shù)據(jù)傳給通信層。RS485 總線是一種常見的串行總線標(biāo)準(zhǔn),采用平衡發(fā)送與差分接收的方式,具有抑制共模干擾的能力。A 線上加一個(gè)3.3K 的上拉偏置電阻;在B 線上加一個(gè)3.3K 的下拉偏置電阻。匹配電阻是120Ω 的R20,可以有效增加系統(tǒng)的傳輸穩(wěn)定性。
RS-485 標(biāo)準(zhǔn)定義信號(hào)閾值的上下限為±200mV。即當(dāng)A-B>200mV 時(shí),總線狀態(tài)應(yīng)表示為“1”;當(dāng)A-B<-200mV 時(shí),總線狀態(tài)應(yīng)表示為“0”。但當(dāng)A-B 在±200mV 之間時(shí),則總線狀態(tài)為不確定,在A、B 線上面設(shè)上、下拉電阻,可盡量避免這種不確定狀態(tài),增強(qiáng)抗電磁干擾的能力??偩€上會(huì)存在浪涌沖擊、電源線與485 線短路、雷擊等潛在危害,所以在A、B 各自對(duì)地端接6.8V 的TVS 管。RS485通信電路電路圖如圖6。
1.3.2 LoRa 網(wǎng)關(guān)選擇
本設(shè)計(jì)中通過購(gòu)買LoRa 網(wǎng)關(guān)設(shè)備完成組網(wǎng)功能。購(gòu)買的網(wǎng)關(guān)設(shè)備相當(dāng)于一個(gè)無線路由設(shè)備,可以完成LoRa 節(jié)點(diǎn)自組網(wǎng)功能,同時(shí)具有3G/4G+LoRa 雙無線、強(qiáng)大的網(wǎng)絡(luò)轉(zhuǎn)換能力、工業(yè)級(jí)高速4G模塊、支持WIFI 覆蓋和APN/VPDN 專網(wǎng)、適應(yīng)各類無人值守工業(yè)應(yīng)用環(huán)境、帶寬資源分配可控、設(shè)備遠(yuǎn)程配置、升級(jí)與維護(hù)功能。
上位機(jī)軟件主要用來顯示水質(zhì)實(shí)時(shí)信息、根據(jù)水質(zhì)信息自動(dòng)發(fā)送控制養(yǎng)殖的機(jī)電設(shè)備的信息。本設(shè)計(jì)中LoRa 網(wǎng)關(guān)對(duì)接云平臺(tái),云平臺(tái)完成了數(shù)據(jù)服務(wù)器功能,當(dāng)上位機(jī)完成主動(dòng)連接后定時(shí)向上位機(jī)發(fā)送傳感器數(shù)據(jù),也可接收上位機(jī)發(fā)送來的各類控制命令。云平臺(tái)接收到控制命令主動(dòng)完成對(duì)養(yǎng)殖的機(jī)電設(shè)備如增氧機(jī)、投餌機(jī)、增熱機(jī)的開關(guān)控制,上位機(jī)軟件會(huì)將突發(fā)事故的處理命令發(fā)送給云平臺(tái)。發(fā)送控制命令的機(jī)制是:采集數(shù)據(jù)實(shí)時(shí)發(fā)送到遠(yuǎn)程數(shù)據(jù)庫服務(wù)器(云平臺(tái)),手機(jī)可預(yù)先設(shè)置好數(shù)值,數(shù)據(jù)上傳后進(jìn)行比對(duì)分析,繼電器通過數(shù)據(jù)比較做出相應(yīng)控制。軟件也可以手動(dòng)控制完成主動(dòng)增氧、投餌、增溫等功能。上位機(jī)軟件流程圖見圖7。
水中傳感器利用自主設(shè)計(jì)的變化電路放大信號(hào),借助ADC 電路把轉(zhuǎn)換后的數(shù)字量信號(hào)發(fā)送給主控芯片處理。傳感器最終反饋的數(shù)據(jù)是電壓信號(hào),數(shù)據(jù)會(huì)存在一定誤差,需要通過實(shí)驗(yàn)和數(shù)據(jù)分析,校驗(yàn)實(shí)驗(yàn)采集數(shù)據(jù)的準(zhǔn)確性。在確保傳感器采集數(shù)據(jù)可靠性的前提下,通過擬合電壓和傳感器的關(guān)系,得到傳感器-電壓轉(zhuǎn)換公式,同時(shí)驗(yàn)證公式的準(zhǔn)確性。軟件設(shè)計(jì)結(jié)果驗(yàn)證系統(tǒng)整體工作情況以及系統(tǒng)功能。
實(shí)驗(yàn)記錄兩類數(shù)據(jù):電腦串口實(shí)時(shí)采集到電壓值的數(shù)據(jù)作為“實(shí)驗(yàn)數(shù)據(jù)”,標(biāo)準(zhǔn)溶解氧測(cè)量?jī)x測(cè)得的含量數(shù)據(jù)作為“實(shí)際數(shù)據(jù)”,各個(gè)“實(shí)驗(yàn)數(shù)據(jù)”相對(duì)應(yīng)。以1000mL 自來水作為測(cè)試對(duì)象,通過往測(cè)試對(duì)象中加入定量的“零氧試劑”,間隔1min 記錄串口返回的電壓值和標(biāo)準(zhǔn)溶解氧測(cè)量?jī)x測(cè)量到的數(shù)據(jù)。采樣30 對(duì)數(shù)據(jù)進(jìn)行學(xué)習(xí),如表1 所示。
表1 電壓值與溶解氧關(guān)系數(shù)據(jù)Tab.1 Relationship data between voltage and dissolved oxygen
用MATLAB 對(duì)實(shí)驗(yàn)數(shù)據(jù)做了“殘差分析”,分析其數(shù)據(jù)樣本的可靠性(圖8),發(fā)現(xiàn)大部分實(shí)驗(yàn)數(shù)據(jù)可靠,誤差在可接受的范圍內(nèi)。同時(shí),大部分樣本點(diǎn)都落在了回歸線上,只有少數(shù)樣本偏離回歸線。
實(shí)驗(yàn)表明,用MATLAB 函數(shù)關(guān)系式擬合溶解氧的實(shí)驗(yàn)數(shù)據(jù)和實(shí)測(cè)數(shù)據(jù)組得到溶解氧-電壓函數(shù)關(guān)系式為:f(x)=0.017196x+1.7963x^2+0.5501。
同時(shí),為了驗(yàn)證擬合函數(shù)的可靠性,對(duì)數(shù)據(jù)作“散點(diǎn)圖”分析(圖9)。
散點(diǎn)圖分析表明,大部分點(diǎn)可以落在回歸線,公式擬合效果較為理想,說明溶解氧-電壓的函數(shù)可相對(duì)準(zhǔn)確測(cè)量水中溶解氧含量。實(shí)驗(yàn)結(jié)果表明,本系統(tǒng)傳感器數(shù)據(jù)的精度可精確到小數(shù)點(diǎn)后2 位。
與溶解氧實(shí)驗(yàn)類似,pH 數(shù)據(jù)樣本采集以及分析所示,樣本數(shù)據(jù)基本可信(圖10)。
用MATLAB 函數(shù)關(guān)系式擬合pH 傳感器實(shí)驗(yàn)數(shù)據(jù)和實(shí)測(cè)數(shù)據(jù)組得到溶解氧-電壓函數(shù)關(guān)系式為:f(x)=28.917x+1.6504x2+94.503。
散點(diǎn)圖的分析表明,大部分點(diǎn)可以落在回歸線,公式擬合效果較為理想(圖11)。其他傳感器與以上兩種傳感器實(shí)驗(yàn)方式類似,結(jié)果均滿足性能要求,均可精確到小數(shù)點(diǎn)后2 位。
在Android studio 平臺(tái)開發(fā)手機(jī)軟件App,使用了SQLite 作為本地?cái)?shù)據(jù)庫進(jìn)行密碼以及用戶數(shù)據(jù)的保存。手機(jī)App 在Android 環(huán)境系統(tǒng)中運(yùn)行,功能包括水質(zhì)信息的實(shí)時(shí)顯示、手動(dòng)控制養(yǎng)殖設(shè)備工作以及設(shè)定超限值自動(dòng)控制養(yǎng)殖設(shè)備工作等功能,系統(tǒng)每一分鐘刷新顯示數(shù)據(jù),運(yùn)行結(jié)果如圖12 所示。在工作狀態(tài)下,移動(dòng)端軟件運(yùn)行正常,證明整個(gè)系統(tǒng)設(shè)計(jì)合理,能滿足水產(chǎn)養(yǎng)殖實(shí)際工作需要。
基于物聯(lián)網(wǎng)技術(shù)的信息化水產(chǎn)養(yǎng)殖系統(tǒng)節(jié)省人力成本、降低養(yǎng)殖戶的勞動(dòng)量,對(duì)及時(shí)預(yù)防和處理事故都是傳統(tǒng)水產(chǎn)養(yǎng)殖方式所不能比擬的,是未來水產(chǎn)養(yǎng)殖的發(fā)展方向。系統(tǒng)的總體設(shè)計(jì)方案與無線傳輸技術(shù)極大地影響著這類系統(tǒng)的性能與成本。目前,水產(chǎn)養(yǎng)殖的無線傳輸技術(shù)一般在ZigBee、NB_IoT 和LoRa 技術(shù)中展開研究。ZigBee 特點(diǎn)是:近距離(一般通信距離10~20m),低功耗,低成本,無線組網(wǎng)需要借助其他網(wǎng)關(guān)[7];NB_IoT 技術(shù)的特點(diǎn)是:通信距離遠(yuǎn)(一般通信距離15km),在網(wǎng)絡(luò)部署上可與蜂窩基站復(fù)用,成本上較高[8];LoRa 比前兩者更適合水產(chǎn)養(yǎng)殖[7]:LoRa 傳輸距離1~20KM,低功耗,電池可供模塊使用10 年,自組網(wǎng),成本低[9],一般模塊幾元錢。本文正是基于對(duì)LoRa 技術(shù)的研究設(shè)計(jì)了系統(tǒng)。該系統(tǒng)采用LoRa 技術(shù)傳輸水質(zhì)傳感信息,通過LoRa 網(wǎng)關(guān)接入某智慧農(nóng)業(yè)的云平臺(tái)。實(shí)驗(yàn)證明,此設(shè)計(jì)合理、可行、有效,并保證了低功耗、遠(yuǎn)距離、低成本、數(shù)據(jù)實(shí)時(shí)性、穩(wěn)定性、精確性等性能。其數(shù)據(jù)實(shí)時(shí)性設(shè)定為一分鐘數(shù)據(jù)刷新一次,傳輸距離一般情況可達(dá)10 km,數(shù)據(jù)精度在1%內(nèi)??紤]到大面積養(yǎng)殖環(huán)境,基于ZigBee 技術(shù)的系統(tǒng)組網(wǎng)能力稍顯不足,而NB_IoT 成本高、對(duì)電信運(yùn)營(yíng)商依賴,水產(chǎn)養(yǎng)殖行業(yè)更適合采用基于LoRa 技術(shù)的物聯(lián)網(wǎng)系統(tǒng)。本設(shè)計(jì)表明,擁有無線自組網(wǎng)能力的LoRa 技術(shù)可接入多個(gè)節(jié)點(diǎn)到網(wǎng)關(guān)設(shè)備,不需要依賴電信運(yùn)營(yíng)商,是先進(jìn)的、靈活的無線傳輸技術(shù)。
近年來,物聯(lián)網(wǎng)的水產(chǎn)養(yǎng)殖研究的解決方案有些相似[1,2,10],都是從水中傳感器采集數(shù)據(jù)經(jīng)由網(wǎng)關(guān)設(shè)備傳入服務(wù)器;有些使用自己開發(fā)的服務(wù)器[1,2],有些使用公有云[10]。自己開發(fā)服務(wù)器成本比較高,而公有云提供的是公共接口,開發(fā)與維護(hù)的難度大。與這些物聯(lián)網(wǎng)解決方案不同的是,本研究針對(duì)智能農(nóng)業(yè)的云而不是公有云來設(shè)計(jì)硬件與軟件系統(tǒng)。而本系統(tǒng)所使用的云服務(wù)器已經(jīng)集成了數(shù)據(jù)包的解析、數(shù)據(jù)緩存、轉(zhuǎn)發(fā)等功能,具備控制養(yǎng)殖設(shè)備的功能,手機(jī)端軟件通過接口調(diào)用即能實(shí)現(xiàn)所有功能,如手機(jī)App 實(shí)驗(yàn)結(jié)果展示的那樣,功能全面,開發(fā)簡(jiǎn)單,極大降低了開發(fā)難度和開發(fā)成本。
目前對(duì)于LoRa 技術(shù)的研究主要集中在性能評(píng)估方面,針對(duì)水產(chǎn)養(yǎng)殖監(jiān)測(cè)的低成本專用LoRa 低功耗傳感網(wǎng)絡(luò)研究得很少[5]。本系統(tǒng)的設(shè)計(jì)突破了現(xiàn)有技術(shù),改進(jìn)了設(shè)計(jì)理念,同時(shí)結(jié)合了云計(jì)算、4G、移動(dòng)端APP 開發(fā)等技術(shù),實(shí)現(xiàn)了水產(chǎn)養(yǎng)殖的智能化、集約化,適合大面積水產(chǎn)養(yǎng)殖需要。