◎ 何濤 廣東省廣州航道事務(wù)中心城區(qū)航標(biāo)與測繪所
在信息化建設(shè)背景下,國家交通運(yùn)輸部頒發(fā)了《國家綜合立體交通規(guī)劃綱要》,提出通過推動(dòng)人工智能、新型通信技術(shù)等創(chuàng)新科技應(yīng)用,在2035年完成智能先進(jìn)綜合立體交通網(wǎng)建設(shè)。而在航道智能化發(fā)展過程中,智能航標(biāo)為重要設(shè)施,需要通過科學(xué)監(jiān)管保證航道運(yùn)輸高效、安全,因此應(yīng)引入先進(jìn)技術(shù)完成對應(yīng)監(jiān)管系統(tǒng)設(shè)計(jì),從而加快航道交通事業(yè)的發(fā)展。
在航道運(yùn)行過程中,將根據(jù)通航條件及上下游航標(biāo)的關(guān)系確定航標(biāo)的設(shè)置,并做好位置調(diào)整,以便憑借航標(biāo)特性完成所在航段標(biāo)識。為此,需要對航標(biāo)位置信息進(jìn)行采集,通過實(shí)時(shí)監(jiān)控航標(biāo)位置加強(qiáng)與船舶聯(lián)動(dòng)。通過對航標(biāo)所在水域的水深、風(fēng)速、水溫等信息進(jìn)行采集,能夠通過建立數(shù)學(xué)模型完成適航船舶數(shù)量推算,及時(shí)進(jìn)行災(zāi)害預(yù)警,為航道高效、安全運(yùn)行提供保障。但目前在航標(biāo)數(shù)據(jù)采集方面,使用的系統(tǒng)多通過RS232/RS485或有線Modem通信方式,無法滿足數(shù)據(jù)實(shí)時(shí)傳輸需求。依靠人工方式進(jìn)行航標(biāo)維護(hù)則面臨勞動(dòng)強(qiáng)度大、成本高和異常無法得到及時(shí)處理等問題,同樣無法滿足航標(biāo)管理需求。而移動(dòng)通訊業(yè)務(wù)的快速發(fā)展,為智能航標(biāo)監(jiān)管提供新的數(shù)據(jù)傳輸方式,因此應(yīng)加強(qiáng)現(xiàn)有無線網(wǎng)絡(luò)資源利用,通過實(shí)現(xiàn)航標(biāo)數(shù)據(jù)的實(shí)況采集加強(qiáng)航標(biāo)監(jiān)管。
按照系統(tǒng)設(shè)計(jì)需求可知,需通過智能航標(biāo)實(shí)時(shí)獲取地理位置和水文氣象等信息。LoRa作為Semtech公司研制出的物聯(lián)網(wǎng)解決方案,能夠依靠擴(kuò)頻技術(shù)獲得較高靈敏度,在低功耗條件下完成超長距離通信,可以用于航道數(shù)據(jù)無線傳輸。將信息發(fā)送至后端服務(wù)器后,完成信息解析處理,能夠通過Web平臺進(jìn)行航標(biāo)監(jiān)控。具體來講,就是利用智能算法分析判斷航標(biāo)是否存在偏移問題,通過及時(shí)發(fā)出預(yù)警提醒人員處理。從系統(tǒng)架構(gòu)上來看,需要?jiǎng)澐譃榇d節(jié)點(diǎn)、組網(wǎng)節(jié)點(diǎn)、網(wǎng)絡(luò)節(jié)點(diǎn)和后臺監(jiān)管系統(tǒng)四部分,并通過模塊化設(shè)計(jì)生成與業(yè)務(wù)需求相匹配的功能模塊,增強(qiáng)系統(tǒng)功能的穩(wěn)定性。其中,船載節(jié)點(diǎn)用于確定航標(biāo)位置,需配備GPS模塊進(jìn)行定位,經(jīng)前端STM32單片機(jī)進(jìn)行預(yù)處理后,通過LoRa模塊發(fā)送數(shù)據(jù),如圖1所示。組網(wǎng)節(jié)點(diǎn)(Lora Tracker)能夠通過天線(LoRaWAN)接收船載節(jié)點(diǎn)發(fā)送的數(shù)據(jù),經(jīng)打包后以LoRa射頻信號形式傳輸至網(wǎng)絡(luò)節(jié)點(diǎn)。網(wǎng)絡(luò)節(jié)點(diǎn)由多個(gè)傳感器、通訊模塊、LoRa網(wǎng)關(guān)和Rasberry Pi控制器構(gòu)成,能夠?qū)η岸税l(fā)送的數(shù)據(jù)進(jìn)行解析,然后通過3G/4G移動(dòng)通信網(wǎng)絡(luò)傳輸至后臺服務(wù)器端,滿足人員的數(shù)據(jù)訪問需求。在系統(tǒng)工作過程中,利用前端無線傳感器網(wǎng)絡(luò)完成數(shù)據(jù)采集和處理,通過LoRa網(wǎng)絡(luò)進(jìn)行數(shù)據(jù)傳輸,能夠?qū)⒑綐?biāo)相關(guān)數(shù)據(jù)通過服務(wù)器存儲到系統(tǒng)數(shù)據(jù)庫中。后臺監(jiān)管系統(tǒng)由計(jì)算機(jī)和服務(wù)器構(gòu)成,用戶通過計(jì)算機(jī)登錄平臺后,可以對服務(wù)器數(shù)據(jù)進(jìn)行訪問。通過Web服務(wù)器,可以根據(jù)系統(tǒng)業(yè)務(wù)邏輯進(jìn)行數(shù)據(jù)調(diào)用,將各項(xiàng)信息加載至平臺,用于實(shí)現(xiàn)航標(biāo)監(jiān)管。
圖1 基于LoRa的智能航標(biāo)監(jiān)管系統(tǒng)架構(gòu)圖
在系統(tǒng)硬件設(shè)計(jì)上,關(guān)鍵在于做好核心控制器、LoRa通信模塊和前端設(shè)備等各部分硬件設(shè)備的選型和設(shè)計(jì),確保系統(tǒng)功能可以順利實(shí)現(xiàn)。
2.2.1 核心控制器
系統(tǒng)核心控制器選用Rasberry Pi,屬于64 位四核處理器,是基于ARM的微型主機(jī)設(shè)備,能夠達(dá)到1.4GHz運(yùn)行頻率。配備SD內(nèi)存硬盤,主板四周分布多個(gè)USB接口和10/100M以太網(wǎng)接口,并配備視頻輸出接口,具備基本PC 功能,可以用于提取和解析定位數(shù)據(jù)。不同于STM32等單片機(jī),控制器在網(wǎng)關(guān)中需要發(fā)揮主控作用。而Rasberry Pi控制器可完成復(fù)雜數(shù)據(jù)運(yùn)算,同時(shí)能夠?qū)崿F(xiàn)2.4GHz和5GHz無線局域網(wǎng)等功能拓展,滿足多元任務(wù)和各系統(tǒng)調(diào)度需求,可以直接下載上層程序,并對底層硬件進(jìn)行連接,通過互聯(lián)網(wǎng)實(shí)現(xiàn)云控制。為維持平臺供電狀態(tài),需要向控制器輸入5V穩(wěn)壓電源,經(jīng)過芯片內(nèi)部調(diào)壓后通過OUT口向其他模塊輸出3.3V電壓。根據(jù)芯片特征,將BOOT0引腳設(shè)置為1,將BOOT1引腳設(shè)置為1或0,使主機(jī)采用閃存啟動(dòng)方式,在執(zhí)行用戶程序的同時(shí),為硬件完成給定任務(wù)提供指導(dǎo)。在主控制器工作時(shí),可以與LoRa通信模塊連接,通過LoRa網(wǎng)關(guān)與各前端節(jié)點(diǎn)通信。而通過3G/4G,主控制器可以與服務(wù)器通信,將數(shù)據(jù)發(fā)送至服務(wù)器數(shù)據(jù)庫中。
2.2.2 LoRa通信模塊
設(shè)計(jì)LoRa通信模塊,需要選用SX1301射頻芯片,擁有配套供電、GPS和天線射頻模塊。對節(jié)點(diǎn)數(shù)據(jù)進(jìn)行收集并發(fā)送至網(wǎng)關(guān)后,將利用芯片完成數(shù)據(jù)分類處理,然后傳遞至主控制器,經(jīng)過移動(dòng)或無線通信方式傳遞至后臺。通信芯片對LoRa集中器IP進(jìn)行了集成,能夠通過多通道實(shí)現(xiàn)數(shù)據(jù)收發(fā),達(dá)到較高網(wǎng)關(guān)通信功能,與遠(yuǎn)端無線端點(diǎn)建立可靠連接。將芯片和主控器的復(fù)位引腳連接,能夠?qū)崿F(xiàn)同步復(fù)位,與控制器時(shí)鐘信號、主輸入從輸出等引腳連接,可以根據(jù)設(shè)定的時(shí)鐘信號完成前端節(jié)點(diǎn)掃描,完成數(shù)據(jù)采集和傳輸操作。LoRa通信板上配置Max-7 GNSS芯片實(shí)現(xiàn)GPS定位,在達(dá)到較高定位精度的同時(shí),可以降低系統(tǒng)功耗。憑借先進(jìn)射頻架構(gòu),模塊能夠獲得較強(qiáng)抗干擾能力,通過串行端口發(fā)送或接收地理信息。在LoRa通信模塊中,需要利用SKY67150芯片進(jìn)行射頻信號發(fā)送,能夠通過天線對節(jié)點(diǎn)信息進(jìn)行接收,經(jīng)過初步整理后按照控制器指令向網(wǎng)關(guān)節(jié)點(diǎn)發(fā)送數(shù)據(jù)。采用LoraWAN1.0.2通信協(xié)議,LoRa通信模塊能夠在該模式下工作,主動(dòng)連接LoRa網(wǎng)絡(luò)。而采用電池供電,可以豐富模塊應(yīng)用場景,使模塊用于戶外通信展現(xiàn)較高可靠性。
2.2.3 前端設(shè)備
在前端設(shè)備選型方面,還應(yīng)結(jié)合數(shù)據(jù)采集需求完成各種傳感器的布設(shè),確保全面掌控航標(biāo)信息。在通過GPS模塊進(jìn)行航標(biāo)定位的同時(shí),應(yīng)配備水位計(jì)、風(fēng)速計(jì)等設(shè)備,完成水深、風(fēng)速等數(shù)據(jù)采集。但實(shí)際航標(biāo)漂浮在水中,將產(chǎn)生一定傾斜角度,遭遇大風(fēng)、洪水等天氣容易受外力影響,導(dǎo)致航標(biāo)安全受到威脅。加裝角速度傳感器,能夠?qū)綐?biāo)實(shí)時(shí)傾角進(jìn)行測量,同時(shí)分析水流速度、天氣等信息能夠及時(shí)發(fā)出預(yù)警,提醒人員及時(shí)開展檢修維護(hù)工作。為避免航標(biāo)因發(fā)生位置偏移給船舶航行帶來威脅,可以加裝微型攝像頭進(jìn)行拍照,方便人員實(shí)時(shí)查看周圍環(huán)境狀況,幫助人員做好充足準(zhǔn)備。針對前端設(shè)備,需要選用鋰電池進(jìn)行供電,確保航標(biāo)成為智能設(shè)備,完成各類數(shù)據(jù)全方位采集。
在系統(tǒng)軟件設(shè)計(jì)方面,需要?jiǎng)澐譃榻M網(wǎng)、服務(wù)端和平臺三部分分別完成軟件設(shè)計(jì),滿足系統(tǒng)功能實(shí)現(xiàn)需求。
2.3.1 組網(wǎng)軟件
系統(tǒng)LoRa終端分布在不同航標(biāo)上,需要利用自組網(wǎng)形式實(shí)現(xiàn)無線連接,確保將采集到的數(shù)據(jù)統(tǒng)一發(fā)送至系統(tǒng)網(wǎng)關(guān)節(jié)點(diǎn)。實(shí)際在系統(tǒng)組網(wǎng)方面,采用星形拓?fù)浼軜?gòu),將LoRa網(wǎng)關(guān)當(dāng)成是連接點(diǎn),用于對終端和系統(tǒng)服務(wù)器的IP進(jìn)行連接。采用單跳通信方式,各節(jié)點(diǎn)將進(jìn)行雙向通信,經(jīng)擴(kuò)頻后在不同頻率下進(jìn)行數(shù)據(jù)傳輸,具體范圍在0.3~0.5kbit/s之間,能夠通過自適應(yīng)方式對終端射頻輸出進(jìn)行控制,達(dá)到提高網(wǎng)絡(luò)容量的效果。按照組網(wǎng)規(guī)范,需要進(jìn)行點(diǎn)到點(diǎn)傳輸,將終端節(jié)點(diǎn)劃分為ClassA、ClassB和ClassC三種模式,利用軟件程序完成業(yè)務(wù)場景設(shè)置,并通過中繼進(jìn)行接口處理,使數(shù)據(jù)通過上行鏈路傳遞至網(wǎng)關(guān)。在網(wǎng)關(guān)和終端間,同樣設(shè)計(jì)為單跳連接,確保節(jié)點(diǎn)數(shù)據(jù)能夠被多個(gè)網(wǎng)關(guān)接收,然后通過IP網(wǎng)絡(luò)上傳,以免出現(xiàn)數(shù)據(jù)丟失問題。按照系統(tǒng)工作流程,上電后將對LoRa模塊進(jìn)行初始化,判斷是否存在新節(jié)點(diǎn)加入請求。發(fā)現(xiàn)有節(jié)點(diǎn)請求,將確定節(jié)點(diǎn)物理地址等信息是否在網(wǎng)絡(luò)緩存表中,未發(fā)現(xiàn)相同信息將在緩存表中記錄,并將節(jié)點(diǎn)加入網(wǎng)絡(luò),完成組網(wǎng)過程。在節(jié)點(diǎn)發(fā)送數(shù)據(jù)時(shí),經(jīng)協(xié)議棧封裝生成數(shù)據(jù)幀,可以向網(wǎng)絡(luò)層發(fā)送,經(jīng)過拆分、幀信息校驗(yàn)后,將有效載荷取出并傳遞至應(yīng)用層,使數(shù)據(jù)在網(wǎng)關(guān)得到匯聚。
2.3.2 服務(wù)端軟件
主控器向系統(tǒng)服務(wù)器發(fā)送航標(biāo)相關(guān)數(shù)據(jù),需要完成服務(wù)端軟件編程。在Linux開發(fā)環(huán)境下,可以通過開發(fā)應(yīng)用程序?qū)崿F(xiàn)與服務(wù)器間的通信,完成不同數(shù)據(jù)端口調(diào)用,從而利用多線程進(jìn)行位置、風(fēng)速等各種數(shù)據(jù)傳送。在軟件編程方面,需要先搭建4G無線上網(wǎng)場景,在主控制器啟動(dòng)后Linux系統(tǒng)將進(jìn)入自啟模式,獲取Telent服務(wù)對服務(wù)器進(jìn)行直接訪問。將網(wǎng)絡(luò)節(jié)點(diǎn)當(dāng)成是客戶端,將控制器當(dāng)成是PC服務(wù)端,可以利用Socket通信獲取航標(biāo)各項(xiàng)信息,如圖2 所示。控制器針對獲取的數(shù)據(jù),將先進(jìn)行分割操作,然后結(jié)合地理、水文等數(shù)據(jù)類型進(jìn)行分別處理。如針對GPS數(shù)據(jù),將插入到對應(yīng)GPSData數(shù)據(jù)庫表中,最后通過4G網(wǎng)絡(luò)將數(shù)據(jù)發(fā)送至服務(wù)器。
圖2 Socket通信流程
2.3.3 平臺軟件
通過后臺監(jiān)管系統(tǒng)實(shí)施航標(biāo)監(jiān)管,需要利用Web瀏覽器顯示平臺界面,并通過服務(wù)器業(yè)務(wù)處理邏輯進(jìn)行數(shù)據(jù)調(diào)用和顯示,因此應(yīng)完成對應(yīng)軟件程序開發(fā)。平臺采用B/S架構(gòu)和S S M 框 架,通 過IoC容器控制對象間的依賴關(guān)系,并通過SpringMVC分開業(yè)務(wù)邏輯層和表示層,完成前端頁面和后臺業(yè)務(wù)邏輯耦合。通過XML進(jìn)行原生信息映射,將接口和POJO類映射為數(shù)據(jù)庫中信息,能夠?qū)崿F(xiàn)平臺信息的實(shí)時(shí)加載。采用Java語言編程,可以將服務(wù)端發(fā)送數(shù)據(jù)存入到對應(yīng)數(shù)據(jù)庫,然后通過頁面訪問數(shù)據(jù)。在數(shù)據(jù)處理方面,需要編寫數(shù)據(jù)解析程序,如針對GPS數(shù)據(jù)需要完成航標(biāo)設(shè)備號、經(jīng)度、緯度、日期等信息解析,處理后存入數(shù)據(jù)庫中。對航標(biāo)進(jìn)行監(jiān)控,可以根據(jù)航段等信息進(jìn)行對應(yīng)航標(biāo)位置和水文氣象信息調(diào)取。系統(tǒng)根據(jù)設(shè)定值對采集到的數(shù)據(jù)進(jìn)行分析,確認(rèn)超出偏差范圍后將發(fā)出預(yù)警,提醒人員對航標(biāo)位置進(jìn)行糾偏,并生成管理日志,為人員制定維修維護(hù)方案提供依據(jù)。通過對不同時(shí)段航標(biāo)報(bào)警數(shù)據(jù)進(jìn)行分類統(tǒng)計(jì),能夠結(jié)合報(bào)警類型、地點(diǎn)、時(shí)間等條件掌握故障發(fā)生規(guī)律,優(yōu)化已有航標(biāo)檢修維護(hù)計(jì)劃,做到高效開展航標(biāo)監(jiān)管工作。
為實(shí)現(xiàn)航標(biāo)實(shí)時(shí)監(jiān)管,需采用LoRa技術(shù)完成智能航標(biāo)監(jiān)管系統(tǒng)開發(fā),通過在前端布置GPS和傳感器進(jìn)行航標(biāo)位置和水文氣象信息采集,并通過無線通信方式進(jìn)行數(shù)據(jù)實(shí)時(shí)傳遞,確保人員可以在后臺實(shí)施航標(biāo)信息化管理,及時(shí)發(fā)現(xiàn)和處理航標(biāo)位置偏移等情況。引進(jìn)物聯(lián)網(wǎng)、移動(dòng)通信等技術(shù)創(chuàng)新航標(biāo)監(jiān)管模式,能夠提高航標(biāo)智能化管理水平,達(dá)到安全、高效通航目標(biāo)。