關(guān) 立,徐軼群
(集美大學(xué)輪機工程學(xué)院,福建 廈門 361021)
漁網(wǎng)示位標(biāo)安裝于漁網(wǎng)、定制網(wǎng)具或養(yǎng)殖網(wǎng)箱上,利用AIS技術(shù)向漁民指示網(wǎng)具的位置,為漁業(yè)捕撈和養(yǎng)殖提供一定的便利[1]。然而,目前市面上的基于AIS技術(shù)的漁網(wǎng)示位標(biāo)缺乏統(tǒng)一標(biāo)準(zhǔn),漁民或廠商隨意配置其水上移動業(yè)務(wù)標(biāo)識(MMSI)及其他參數(shù)[2],導(dǎo)致在電子海圖中難以區(qū)分漁網(wǎng)和船舶,影響船舶交通安全。研究解決漁網(wǎng)AIS示位標(biāo)問題不僅可以保障船舶交通安全,而且可提高海上搜救、海事監(jiān)管工作的效率。鄭峰[3]設(shè)計了基于AIS技術(shù)的漁具定位避碰裝置;劉鐵君等[4]提出漁網(wǎng)AIS示位標(biāo)采用主從模式,單張漁網(wǎng)只掛載一個主設(shè)備接入AIS系統(tǒng),從設(shè)備使用AIS技術(shù)與主機通信方面來減少船臺顯示,而這種方式雖然降低了發(fā)送設(shè)備數(shù)量,但發(fā)送數(shù)據(jù)總量并無顯著減少,無法解決AIS信道時隙占用的問題;黃倫文等[5]采用406 MHz衛(wèi)星通信的方式設(shè)計了一種基于北斗應(yīng)急無線電示位標(biāo),但該方案成本較高且數(shù)據(jù)更新效率較低;王連勝等[6]設(shè)計了一種基于GPRS通信方式的一鍵式緊急無線電示位標(biāo),可應(yīng)用在漁網(wǎng)定位領(lǐng)域,該方案采用的是自有協(xié)議及自建數(shù)據(jù)平臺。
NB-IoT(Narrow Band-internet of things)作為新興物聯(lián)網(wǎng)技術(shù),可以提供廣覆蓋、低功耗、低成本、多連接的網(wǎng)絡(luò)服務(wù),相比LTE和GPRS基站有20 dB的增益提升[7],在內(nèi)河流域及近海都有不錯的網(wǎng)絡(luò)覆蓋。通過PSM(power saving mode)模式與eDRX(extend discontinuous reception)技術(shù)的搭配,設(shè)備得以在低功耗狀態(tài)下長期工作。
目前數(shù)據(jù)服務(wù)器和云平臺的搭建主要有兩種形式:1)獨立搭建數(shù)據(jù)服務(wù)器,構(gòu)造私有云平臺,該形式在數(shù)據(jù)協(xié)議上靈活可控,數(shù)據(jù)保密性更高,但開發(fā)周期長,難度大,針對設(shè)備數(shù)量龐大的系統(tǒng)并發(fā)處理復(fù)雜,不利于應(yīng)用的快速上線;2)采用運營商服務(wù)器及標(biāo)準(zhǔn)的物聯(lián)網(wǎng)開發(fā)平臺,如阿里云、百度云、OneNET等,該形式系統(tǒng)部署快速,用戶不必考慮復(fù)雜接入過程,對不同平臺兼容性更強,但用戶數(shù)據(jù)傳輸必須通過物聯(lián)網(wǎng)平臺,存在商業(yè)風(fēng)險,且數(shù)據(jù)接入商業(yè)用途后運營商可能收取使用費。
本文設(shè)計的漁網(wǎng)NB示位標(biāo)選擇NB-IoT技術(shù)作為通信手段,選擇中移物聯(lián)的OneNET云平臺作為云服務(wù)平臺開發(fā)端。設(shè)備通過窄帶網(wǎng)絡(luò)將漁網(wǎng)示位標(biāo)的坐標(biāo)及電量等相關(guān)信息上傳到OneNET云平臺,供相關(guān)用戶查看,目標(biāo)用戶可以通過OneNET云平臺對設(shè)備數(shù)據(jù)上報周期,工作狀態(tài)等相關(guān)參數(shù)進行遠程配置。由于示位標(biāo)工作頻段不在AIS信道上,對現(xiàn)有AIS系統(tǒng)不會造成干擾,對船舶交通、海上搜救、海事監(jiān)管等方面有著積極作用。此外,本設(shè)備使用的功耗控制策略與動態(tài)休眠算法,比傳統(tǒng)的固定數(shù)據(jù)上報周期模式在續(xù)航上有更大優(yōu)勢。
基于NB-IoT與云服務(wù)平臺的漁網(wǎng)示位標(biāo)系統(tǒng)主要包括:北斗/GPS導(dǎo)航衛(wèi)星、漁網(wǎng)NB示位標(biāo)、NB基站、OneNET云平臺及應(yīng)用服務(wù)器、終端用戶5個部分組成,如圖1所示。
其中,漁網(wǎng)NB示位標(biāo)通過北斗/GPS雙模天線接收北斗/GPS衛(wèi)星信號,解析獲得NMEA0183協(xié)議GPRMC報文,提取并保存其中的時間、經(jīng)緯度等所需數(shù)據(jù)。通過12位ADC獲取電池平均電壓,基于電池電量曲線表得出設(shè)備當(dāng)前電量。在設(shè)備入網(wǎng)后,以物聯(lián)網(wǎng)專用的LWM2M協(xié)議格式注冊到OneNET云平臺。OneNET云平臺響應(yīng)各個漁網(wǎng)NB示位標(biāo)的注冊,并下發(fā)發(fā)現(xiàn)資源命令及轉(zhuǎn)發(fā)應(yīng)用服務(wù)器請求訂閱命令。漁網(wǎng)NB示位標(biāo)注冊在網(wǎng)后,通過OneNET云平臺將相關(guān)數(shù)據(jù)信息上報給應(yīng)用服務(wù)器。應(yīng)用服務(wù)器以O(shè)neNET云平臺作為橋梁,獲取漁網(wǎng)NB示位標(biāo)上報信息,并下發(fā)控制命令,形成面向用戶的漁網(wǎng)公共服務(wù)管理系統(tǒng),實現(xiàn)數(shù)據(jù)可視化與指令控制。用戶通過web頁面登錄應(yīng)用服務(wù)器,即可查看設(shè)備的地理位置等信息,擁有權(quán)限的目標(biāo)用戶可以向指定的漁網(wǎng)NB示位標(biāo)下發(fā)控制指令,如調(diào)整上報時隙,改變工作狀態(tài)等,實現(xiàn)遠程控制。
漁網(wǎng)NB示位標(biāo)硬件主要由單片機與串口電路、北斗/GPS雙模定位與NB通信模組電路、充放電及電源管理電路三個部分構(gòu)成。
2.1.1 單片機與串口電路
單片機及外圍控制口、串口電路原理圖如圖2所示。選用ST公司STM32L031系列單片機作為主控制器,該單片機在待機模式下功耗僅為0.25 uA,并具備低功耗串口通信功能[8](LPUART),負責(zé)控制NB模組數(shù)據(jù)收發(fā)以及定位數(shù)據(jù)接收。串口2連接CH340芯片,實現(xiàn)串口轉(zhuǎn)USB調(diào)試、數(shù)據(jù)打印等功能。通過內(nèi)部12位ADC管腳BAT_ADC以及電路導(dǎo)通控制管腳BAT_CHECK實現(xiàn)對供電電壓的實時監(jiān)測。BC20_PWR、BC20_RST、BC20_EINT、BC20_GNSS_POWER管腳分別用于控制NB通信模組的供電、重啟、喚醒功能以及為GNSS(global navigation satellite system)有源天線供電。
2.1.2 北斗/GPS雙模定位與NB通信模組電路
北斗/GPS雙模定位與NB通信模組電路原理圖如圖3所示。NB通信模組選用上海移遠公司開發(fā)的BC20模組,該模組接收機集成了北斗、GPS定位功能,可以實現(xiàn)多系統(tǒng)聯(lián)合定位[9],其衛(wèi)星信號捕獲狀態(tài)下耗流為54.7 mA,跟蹤狀態(tài)下耗流30.2 mA,而當(dāng)設(shè)備進入PSM工作模式時,耗流僅為3.7 uA。在與基站通信時,BC20模組在B5及B8頻段上發(fā)射功率可達23 dBm,接收靈敏度為-129 dBm。模組在發(fā)射時段瞬時電流可達260 mA,設(shè)計時在其供電管腳VBAT附近并聯(lián)了大容量去耦鉭電容。BC20模組串口采用1.8 V電平,經(jīng)過電平轉(zhuǎn)換電路后與主控制器串口連接。在模組處于PSM模式下,其1.8 V供電輸出管腳VCC_BC20_EXT無輸出,串口無法正常通信,使用時通過引腳BC20_PSM_EINT喚醒后再進行串口通信,重新配置其工作狀態(tài)。SIM卡選用貼片式5 mm×6 mm esim封裝,減小設(shè)備體積,提高抗震能力。
2.1.3 充放電及電源管理電路
充放電及電源管理電路原理圖如圖4所示。漁網(wǎng)NB示位標(biāo)使用3.7 V鋰電池供電,充電接口采用市面上通用的USB TYPE-C接口,充電管理芯片選用TP4065,并選用ME6211C33M5G芯片作為LDO(low dropout regulator),將鋰電池電壓轉(zhuǎn)換為主控器及NB通信模組工作電壓。需要采集鋰電池電壓時,BAT_CHECK管腳拉高,導(dǎo)通Q3與Q4,通過主控ADC管腳采集R14、R15分壓數(shù)據(jù),采集完成后,關(guān)斷數(shù)字三極管及場效應(yīng)管,降低設(shè)備功耗。設(shè)備通過PWR_STATE管腳監(jiān)測按鍵SW1狀態(tài),并通過控制PWR_CTRL管腳改變LDO使能管腳電平,實現(xiàn)按鍵關(guān)機功能。當(dāng)設(shè)備安裝于養(yǎng)殖網(wǎng)箱等長期海上作業(yè)體上時,可裝配太陽能板實現(xiàn)長續(xù)航。
漁網(wǎng)NB示位標(biāo)軟件主要基于STM32L031低功耗單片機與集成GNSS定位功能和NB窄帶物聯(lián)網(wǎng)通信功能的BC20模組,采用C語言開發(fā),編譯環(huán)境為Keil V5.26,軟件主流程圖如圖5所示。
2.2.1 工作流程實現(xiàn)
通過開機按鈕為設(shè)備上電后,主控制器進行初始化操作,并控制IO口保持供電電源,在接收到用戶關(guān)機命令時,可通過控制此IO口實現(xiàn)遠程關(guān)機。初始化BC20模組時,設(shè)備獲取NB信號RSSI與EPS網(wǎng)絡(luò)狀態(tài),注冊到云平臺,并根據(jù)云平臺服務(wù)器的響應(yīng)上報訂閱號與資源類型。設(shè)備根據(jù)配置的數(shù)據(jù)上報周期啟動AGPS和GNSS,獲取經(jīng)緯度及時間信息,并對電池電壓進行采樣,通過內(nèi)部存儲的電量電壓匹配數(shù)組獲取百分比形式的電量,再將相關(guān)數(shù)據(jù)逐一上傳至云平臺。同時,設(shè)備如果收到下行指令,則根據(jù)指令運行對應(yīng)線程,如調(diào)整數(shù)據(jù)上報周期,改變工作狀態(tài),或者強制關(guān)機等。未收到下行指令,設(shè)備將在上報數(shù)據(jù)成功后,進入動態(tài)休眠模式,并開啟外部與定時器中斷,等待下次中斷或上報時隙。程序中循環(huán)判斷語句均添加了重試次數(shù)及錯誤處理函數(shù),并添加了看門狗,提高設(shè)備運行穩(wěn)定性。
2.2.2 功耗控制策略
設(shè)備不同工作狀態(tài)下功耗狀態(tài)如圖6所示。分為5種運行狀態(tài):PSM為休眠態(tài);receive為接收態(tài);location為定位捕獲態(tài);transmit為通信態(tài);IDLE為不連續(xù)接收態(tài)。由圖6可知,設(shè)備能耗主要集中在獲取定位、數(shù)據(jù)上傳、數(shù)據(jù)接收過程中。為使設(shè)備在滿足響應(yīng)服務(wù)器下行命令時延情況下同時具備低功耗,軟件采用eDRX技術(shù),通過擴展的不連續(xù)接收模式來降低設(shè)備功耗,在eDRX周期內(nèi),向服務(wù)器申請較短的尋呼時間窗PTW(paging time window),縮短無數(shù)據(jù)交互期。在設(shè)備定位數(shù)據(jù)獲取與上報周期內(nèi),設(shè)計動態(tài)休眠算法,建立設(shè)備上報時隙控制傳遞函數(shù)。
設(shè)備上報時隙控制傳遞函數(shù)框圖如圖7所示。其工作原理為:設(shè)備在啟動后首先采集設(shè)備初始經(jīng)緯度數(shù)據(jù),之后根據(jù)預(yù)設(shè)上報時隙在第n次規(guī)定時間采集經(jīng)緯度數(shù)據(jù)后,根據(jù)初始經(jīng)緯度數(shù)據(jù)計算得出目前位置與初始位置水平偏移量Dn和與上一位置水平偏移量Dn-1之差dDn,根據(jù)Dn與dDn的值改變定位數(shù)據(jù)采樣頻率,并相應(yīng)調(diào)整數(shù)據(jù)上報周期Tr(Tr初始值取300 s)。當(dāng)位置偏移量Dn不超過設(shè)備水平定位精度Dcep時,可認為設(shè)備地理位置不變,則延長數(shù)據(jù)上報周期Tr,增加量Ta取值為設(shè)備的eDRX周期。當(dāng)位置偏移量Dn超過限定閾值時,若dDn<0,說明示位標(biāo)運動軌跡在回歸起始點;若dDn=0,說明示位標(biāo)在偏移初始坐標(biāo)的某點處于靜止?fàn)顟B(tài);若dDn>0,說明示位標(biāo)在快速遠離初始坐標(biāo)點,此時應(yīng)縮短數(shù)據(jù)上報周期Tr,提高設(shè)備數(shù)據(jù)實時性。
建立的動態(tài)數(shù)據(jù)上報周期Tr模型如下:
(1)
為測試漁網(wǎng)NB示位標(biāo)基本功能的穩(wěn)定性與可靠性,制作了設(shè)備樣機,并在測試平臺上對樣機定位精度和功耗進行測試。將設(shè)備靜置,對其定位數(shù)據(jù)進行統(tǒng)計,在570次定位中,水平定位誤差基本在10 m以內(nèi),數(shù)據(jù)可以準(zhǔn)確反映設(shè)備的真實地理位置,定位靶向圖如圖8所示,水平誤差分布圖如圖9所示。
根據(jù)漁網(wǎng)NB示位標(biāo)運行的軟件設(shè)計,其數(shù)據(jù)上報周期Tr可分為定位通信區(qū)間Ta與休眠區(qū)間Td,即:
Tr=Ta+Td。
(2)
則單時隙耗電量Er(m·Ah)與時間Tr的關(guān)系可寫為:
Er=Ia×Ta+Id×Td=Ia×Ta+Id×(Tr-Ta)。
(3)
其中:Ia為定位通信區(qū)間的平均電流;Id為設(shè)備休眠電流。
使用是德科技N6705電源分析儀配備N6781模塊對漁網(wǎng)示位標(biāo)工作下的耗電量進行測量,獲得完整的定位通信區(qū)間電流消耗,如圖10所示。設(shè)備在休眠區(qū)間下的電流消耗Id僅為0.09 mA;定位開啟時電流為80 mA,從開啟定位到獲得有效定位耗時平均約16 s(開啟AGPS);數(shù)據(jù)發(fā)送時全設(shè)備電流最高可達270 mA,每個數(shù)據(jù)包發(fā)送耗時約0.14 s;設(shè)備的定位通信區(qū)間Ta平均約為54 s,區(qū)間平均電流Ia為34.0 mA。以配備3000 m·Ah的鋰電池,上報時隙固定300 s為例,不使用功耗控制策略,設(shè)備可于海域內(nèi)靜置連續(xù)工作484 h,約20 d;在使用功耗控制策略與動態(tài)休眠算法時,當(dāng)設(shè)備的eDRX周期取值為81.92 s,且考慮設(shè)備位置偏移量基本小于設(shè)備水平定位精度的情況下,設(shè)備連續(xù)工作時間可長達2 701 h,約112 d。因此在設(shè)備長期處于靜止?fàn)顟B(tài)下,采用動態(tài)數(shù)據(jù)上報周期模型續(xù)航最高可以提高約4.6倍。
選擇廈門集美園博苑內(nèi)海水域?qū)O網(wǎng)NB示位標(biāo)進行工作狀態(tài)和功能測試,將設(shè)備與漁網(wǎng)固定,放置于水域中,設(shè)備實物圖與測試現(xiàn)場照片如圖11所示。測試人員通過手機端查看漁網(wǎng)所在位置,并對電量、經(jīng)緯度數(shù)據(jù)進行監(jiān)控,對快速尋標(biāo)等控制功能也進行了測試。經(jīng)測試,設(shè)備能夠準(zhǔn)確反映漁網(wǎng)的實時位置,并將數(shù)據(jù)及時上傳回云端,對遠程控制命令的響應(yīng)也十分迅速,能夠滿足設(shè)計功能的要求。
OneNET云平臺是中移物聯(lián)有限公司開發(fā)的一款免費的物聯(lián)網(wǎng)開放平臺[10]。該平臺面向應(yīng)用層,提供豐富的API和數(shù)據(jù)分發(fā)能力,開發(fā)者可根據(jù)平臺提供的標(biāo)準(zhǔn)接入流程將設(shè)備接入平臺[11]。OneNET云平臺在應(yīng)用管理上提供了BS架構(gòu)的WEB網(wǎng)頁及手機端[12]可視化界面開發(fā)套件,可以適應(yīng)不同需求的應(yīng)用開發(fā)。本文使用該平臺提供的NB-IoT物聯(lián)網(wǎng)套件,通過LWM2M協(xié)議接入,使用該套件自帶的應(yīng)用編輯器,實現(xiàn)基于OneNET的漁網(wǎng)位置公共服務(wù)平臺設(shè)計。
漁民作為漁網(wǎng)NB示位標(biāo)的主要使用群體,根據(jù)其職業(yè)特點與用戶習(xí)慣,在界面交互、功能設(shè)計、操作方式、顯示效果上進行了專門優(yōu)化,讓用戶能充分了解并利用漁網(wǎng)數(shù)據(jù)輔助決策,提升捕魚和養(yǎng)殖效率。終端用戶手機端操作界面分成三個頁面,如圖12所示。
用戶在登錄平臺后立即顯示主界面,該界面包含可視化漁網(wǎng)定位地圖、設(shè)備剩余電量百分比顯示以及數(shù)據(jù)更新時間,用戶可以直觀查看漁網(wǎng)所在位置以及設(shè)備電量剩余,通過縮放地圖可以獲得更加精確的位置信息,通過數(shù)據(jù)更新時間估計設(shè)備地理位置的時效。
通過菜單欄可切換至數(shù)據(jù)曲線界面,通過電量變化曲線可以預(yù)估設(shè)備剩余使用時間,通過經(jīng)緯度變化曲線可知漁網(wǎng)位移區(qū)間,判斷是否被水浪或漁船帶離原有位置,以便進行現(xiàn)場處理,及時止損,提高效率。
設(shè)備高級配置界面提供了快速尋標(biāo)功能、調(diào)整上報時隙功能、臨時休眠功能、強制關(guān)機功能、數(shù)據(jù)流切換(多個示位標(biāo)數(shù)據(jù)切換)功能。其中快速尋標(biāo)功能在漁民收網(wǎng)或?qū)ぞW(wǎng)時使用,通過應(yīng)用服務(wù)器下發(fā)命令,可以在有限時間內(nèi)將定位數(shù)據(jù)更新速率提高到3 s/次,使定位數(shù)據(jù)趨于實時。調(diào)整數(shù)據(jù)上報時隙功能可以手動調(diào)整漁網(wǎng)NB示位標(biāo)上報數(shù)據(jù)的周期,范圍為3~100 min可調(diào),便于漁民將示位標(biāo)應(yīng)用于不同使用場景。臨時休眠功能用于設(shè)備暫停上報定位數(shù)據(jù)時,以降低功耗。強制關(guān)機功能可以使設(shè)備直接斷電,只能通過設(shè)備電源鍵重新開機。數(shù)據(jù)流切換功能可以實現(xiàn)多個可控示位標(biāo)的控制切換,在用戶擁有多個漁網(wǎng)NB示位標(biāo)時可以通過切換數(shù)據(jù)流來監(jiān)控不同ID設(shè)備。
通過漁網(wǎng)位置數(shù)據(jù)共享服務(wù),用戶可以查看全網(wǎng)漁網(wǎng)NB示位標(biāo)的具體分布情況,如圖13所示。通行船舶可通過平臺查看航線內(nèi)是否存在漁網(wǎng),以便及時避讓,監(jiān)管部門可以通過平臺查看通航區(qū)內(nèi)是否存在違規(guī)布網(wǎng),或有漂網(wǎng)在水流作用下進入航道內(nèi),方便及時采取措施,保障船舶交通安全。
論文基于NB-IoT與OneNET云平臺技術(shù),設(shè)計開發(fā)了漁網(wǎng)NB示位標(biāo)系統(tǒng),并通過測試平臺和沿岸海域安裝測試實驗,對系統(tǒng)的可靠性和有效性進行了驗證。測試結(jié)果顯示,設(shè)計的漁網(wǎng)NB示位標(biāo)系統(tǒng)可以滿足漁網(wǎng)定位監(jiān)控功能,與傳統(tǒng)AIS網(wǎng)位儀相比,具有體積小,功耗低,抗干擾能力強等優(yōu)點,對漁民尋網(wǎng)、漁網(wǎng)監(jiān)控及位置共享都有積極作用。