何 東,寧文慧
(重慶城市職業學院 信息工程系,重慶 402160)
隨著海洋開發的發展,船舶技術也得到了飛速發展。船舶設備逐漸增多,生產規模日益擴大,設備的自動化程度正在被不斷地提高,系統的復雜程度也越來越高,不同系統設備間的關聯程度日益緊密,故障診斷和維修難度日益加大,管理要求不斷升級,對系統的可靠性和安全性要求越來越高。如何及時了解和監控船舶設備的運行狀態,船舶運行過程中的系統故障檢測與排除,對船舶設備運行狀態進行預測,船舶的安全可靠調度就成了航海任務安全的關鍵。因此,設計一套高效的遠程實時監控系統是指導船舶航行的關鍵所在。
現有技術行業以船舶自動識別系統 (AIS系統)為成熟、全面、應用較廣的一套設備系統,系統功能強大,能實時性接收船舶靜態、動態數據、船舶航程數據,能發布實時性的天文水文信息,但是不具備遠洋通信、應急求救預警及提供應急方案功能、遠程接收信息處理、遠程故障診斷、設備預警,船舶終端和監控管理終端之間在線信息交換量小,隨著航運事業的迅猛發展,通行船舶數量迅猛增加,船舶通行的動態、靜態數據與日俱增,因此本文提出一種基于云服務平臺的3G/4G無線通信的船舶遠程實時監控系統,可以通過船載終端與多種設備進行連接,客戶端也采用多種模式及移動客戶端,便于船舶客戶及時查詢,以解決航運企業的監督管理、預警、報警、故障診斷、指揮、調度的實際需求。
船舶遠程實時監控系統主要由船載終端(船舶端)、云服務平臺、岸基系統(公司端)三部分組成。系統總體架構如圖1所示。
船載終端主要負責采集船設備的運行狀態(包括經緯度、航向)、參數的收集,同時將數據通過3G/4G網絡將數據按照一定協議發送到云服務平臺,云服務平臺對數據按相關協議進行解析,處理和存儲。岸基系統的實時遠程監控系統根據云平臺解析出來的數據能夠實時動態的掌握船舶設備的運行狀態和參數,及時分析發現船舶設備的故障情況,以及預測將會發生故障的設備,以便船舶設備能夠得到及時高效的維修和保養,同時可以對船舶進行控制和合理調度,甚至可以聯系相關設備的廠家對設備進行遠程故障診斷和排除。
船載終端的主要功能是采集船上設備的主要數據并統一進行數據綜合處理,然后通過無線網絡的方式將數據包發送至云服務平臺,同時公司或設備廠家在客戶端通過云服務平臺發送數據給船載終端。由于船舶設備的接口類型不統一,所以船載終端可以通過CAN總線、485總線、網絡與船舶設備進行通信(網絡接口通過交換機進行擴展),如圖2所示。
船載終端采用LINUX操作系統,處理器為4核ARM CORTEX-A53,并包含有LCD顯示器以及觸摸屏、音頻接口、USB接口、SD接口、報警單元、GPS模塊、3G/4G模塊、RS485接口、RS232接口、網口等。LCD顯示及觸摸屏實時顯示被監控船舶設備的相關信息,并能進行交互操作,信息輸入通過觸摸屏來實現,同時通過音頻接口可以播放相應的語音信息。船載終端根據設備的接口需要可以通過RS232、RS485、CAN接口、網口進行靈活的連接,SD接口可以實現數據文件的存儲,因此船載終端設備的數據除了通過3G/4G網絡傳輸到云服務中心外,也可以保存在SD存儲卡中(相當于黑匣子)。GPS模塊是為了獲取船舶的定位信息。當船舶發生緊急事件時可以通過音頻單元進行語音報警和通過報警單元進行聲光報警。船載終端的系統結構示意圖如圖3所示。
2.1.1 數據采集
(1)采集參數分類。通導設備數據如船舶的GPS模塊接收的經緯度,航向,測深儀、風速風向儀;燃料罐數據包括溫度數據、壓力數據、液位數據等;排漏氣體數據,二氧化碳、氮、硫等排放數據;船用設備數據如輔機、主機;船舶施工數據、工況數據、文件報表等各種信息。
(2)參數采集方法。目前船舶設備的數據采集方式主要有485串口通訊采集(常見的有MODBUS等協議),CAN總線采集,網絡采集等等,遠程監控前期主要是針對常見協議開發通用轉換驅動,后期在分析不同的船舶設備廠家的通訊規范的基礎上,制定一套符合船舶遠程監控系統的數據輸入輸出接口標準(硬件接口、軟件通訊協議)[1]。
2.1.2 數據綜合處理及保存
數據綜合處理模塊將采集到的船載設備中的各類數據先保存然后進行數據整合,并按照統一的格式(通信協議格式)進行處理(主要是數據的有效性檢查,數據的格式統一,異常數據檢驗,并添加當前時間、船舶編號和船載終端編號,并生成實時數據,以便岸端數據使用)[2]。
2.1.3 數據傳輸
船載終端在采集和處理數據后,將按照通信協議的數據包通過3G/4G無線網絡實時的發送到云平臺。
2.1.4 數據顯示報警
船載終端在觸摸屏上可以實時顯示采集到的數據,并且檢測到參數異常就馬上進行預警、報警,以提醒船舶值班人員馬上進行處理,故障排除,避免事故發生(可以通過報警單元進行聲光報警和通過音頻部分進行語音報警)。
2.1.5 數據接收控制
船載終端可以接收企業發送來數據和語音提醒;當船舶的設備發生故障,根據權限允許設備供應商通過船載終端對其設備進行遠程預警、故障診斷、排除和修復(具有遠程調試功能的設備)。
為了保證船舶遠程實時監控系統中海量數據的通信效率和可靠性,實現船舶的實時監控和動態管理,因此數據的處理和存儲通過云服務平臺。
云計算[3]是一種新興的基于互聯網的分布式網絡服務技術,利用互聯網的高速傳輸能力,將數據處理過程從個人計算機或服務器轉移到互聯網上的計算機集群中。集群機器都是普通的計算機,由某一中心服務器統一管理,中心服務器按客戶的需要分配計算資源,最終達到與超級計算機相同的效果。
云計算有3種部署模式,即公有云、私有云、混合云[4]。公有云價格低廉、靈活、有彈性,但是公有云存儲的數據并不是在企業本地,應用存在安全問題。所以構建一個私有云平臺,使其主要為企業內部提供云服務,不對公眾開放,在企業的防火墻內工作,這樣就能對其數據、安全性和服務質量進行有效的控制,并且能夠提供個性化和高效的彈性計算資源分配能力,能夠更有效地利用企業內部已有的計算機設備資源,打造更符合企業需求的云平臺。本文討論如何構建一個本地環境的私有云。
目前開源的云計算項目有Eucalyptus、Open Stack、Cloud Stack 和Open Nebula 等。其中Open Stack 目前已經獲得英特爾、Ubuntu、惠普、思科等多個重要公司和開源組織的支持,并且已經有多家公司發布了基于Open Stack的產品。因此,本文開源云操作系統選擇為Openstack,以4臺服務器為基礎搭建云計算平臺,其中1臺服務器作為控制節點,另外3臺作為計算節點。控制節點提供磁盤存儲、調度、權限認證和網絡在線管理功能模塊;計算節點部署虛擬化、計算和網絡通訊模塊。通過Open-stack管理平臺在3臺計算節點服務器上劃分8臺虛擬主機,一臺獨立的高配置虛擬主機用于雙實例的主從Oracle服務,一臺文件和視頻服務器,兩臺虛擬主機作為應用服務器,兩臺虛擬主機作為通信服務器,兩臺虛擬主機作為memcached和redis高速緩存服務器。如果把船舶監控系統的組件全部部署到一臺服務器上,數據量大時高并發部分組件故障問題,整個系統無法運行。現在,根據需求劃分多臺虛擬主機,可有效提高計算機資源的利用率,采取分布式部署,把可能出現的故障局限在了單臺虛擬主機上,并且主要部件都采用雙實例輪詢部署到不同的虛擬主機上,理論上可以保障在故障出現時冗余組件提供續航服務[5]。
2.3.1 岸基系統的結構組成
岸基系統的實時遠程監控系統根據云服務平臺解析的數據(包括船舶端的實時設備信息,視頻信息和航海信息等),對船舶端數據進行處理和綜合分析,通過輔助決策系統生成航行方案或處置方案,將指令發給船端,從而進行故障排除、調度和應急指揮。同時還可以與現有的企業船舶安全管理系統數據共享,提供實時查詢、異常報警、航行狀態等數據,還可以為船舶設備的廠家提供大數據為設備企業進行設備分析提供有力可靠的數據來源。
遠程實時監控系統的軟件架構采用C/S,B/S混合的模式。核心的應用程序主要采用C/S模式,對外發布一般采用B/S模式,為了保障數據安全,根據不同用戶設定不同的軟件功能權限,同時移動端也采用C/S模式。
2.3.2 實時遠程監控系統的功能
(1)船舶設備信息查詢。對于船舶設備的發動機機型及其結構性能指標和工作性能指標;船舶正常航行中船動裝置的工作狀況;船舶結構強度、吃水、航速、噸位、客貨載情況等信息是在船舶航行前就建立起來的,這些信息可以查詢,該功能主要是實時查詢船舶航行過程中各個設備的運行狀態,參數。比如船舶的舵角、航向、速度、液位。
(2)定位及電子地圖顯示。根據獲得的GPS模塊的數據信息,可以顯示出船舶的位置信息,同時可以在電子地圖上顯示出來,以空間數據庫為基礎,應用數據與地圖有機結合,提供的空間分析和查詢功能,直觀地顯示結果。
(3)信息發布。通過數值預報產品和天氣海況資料獲取相應的氣象、水文信息以及航行中注意事項,通過信息發布功能發布到船載終端,然后在船載終端上顯示出來,也可以在船舶的大屏幕上顯示出來。
(4)規劃航速、航線及定期加注功能。根據船舶反饋的信息,結合船舶基礎數據,船舶航行的區域特征,及不可避免的氣象水文等客觀條件,給船舶提出更加合理的航行方案,船舶航行的利潤最大化,定時對船舶航行過程中的航行區域、航行圖及航行特性進行分析,論證方案的可實施性及合理性,定規劃航速、航線及加注等問題,將方案提交給船舶[6]。
(5)調度指揮功能。根據船載終端上傳的緊急突發事件處理過程現場視頻圖像采、實時音視頻交互,可以讓相關政府部門對應急突發事件的情況了解更加完整全面、對突發事件的反應更加迅速、對有關人員之間的協調更加充分、決策更加有效,還大大降低了工作人員的工作難度。
(6)預警、報警和聯動管理。根據設備廠家提供的設備運行預警狀態參數(可能或即將會產生故障的狀態參數),提前產生預警信息,從而通知船舶采取相應措施,避免更大故障或危機事件的產生,將事故提前解決;同時當船舶設備出現故障時、氣源不足、機器異常工作、火災、碰撞、溢油及漏氣等一系列故障時,遠程監控系統馬上進行報警,根據不同的報警級別,船載終端可以通過音頻口進行報警,還可以通過報警單元進行聲光報警,同時在船舶大屏幕上進行顯示。同時也可以聯動中心服務器錄像功能。
(7)遠程故障診斷和排除。由于船舶設備在航行的過程中出現故障,船舶人員可能不會修理或排除故障,設備廠家人員不可能馬上趕到現場,那么有些設備廠家的設備具有遠程調試的功能,可以通過船載終端進行通信,從而對船舶設備進行遠程故障判斷、調試、控制和排除,這樣大大減輕了船舶工作人員的負擔并且故障能及時得到解決。
(8)信息存儲和備份。對船載終端采集到的數據進行存儲和備份,以便進行分析,為以后提供寶貴的經驗;同時船舶設備廠家對可以其設備的運行參數的大量數據進行分析,為設備出現故障進行提前預警,產生故障的原因,設備中哪些部件容易損壞,如何提高產品的質量提供有效的有力的數據來源。
(9)移動APP。用戶使用移動終端時通過驗證后,可以隨時瀏覽船舶的信息,位置(根據用戶權限)等相關信息。
(10)系統管理。用戶訪問權限管理、數據庫維護管理、安全策略管理。
船舶遠程實時監控系統能有效監控船舶在航行中各種狀態及參數,為船舶的安全、經濟航行提供更好的航行方案,且通過獲取的大數據進行分析能夠實時有效的達到船舶高效管理的目標,文章從系統的總體架構及各部分的功能及其設計做了詳細的描述,系統能夠滿足幾乎所有類型的船舶監控管理需求,通過云平臺的運用,可以同時連接成千上萬個船載終端進行并發的數據傳輸及處理,從而更有效的對船舶進行管理、指揮和調度。
[1]許艷梅.基于3G技術的船舶遠程監控系統的研究與設計[D].大連:大連海事大學,2013.
[2]曾明亮.船舶機艙監控報警系統的設計與實現[D].南京:南京理工大學,2013.
[3]陳康,鄭緯民.云計算: 系統實例與研究現狀[J].軟件學報,2009,20(05):1337-1348.
[4]李愛國,原建偉.云計算部署模式及應用類型研究[J].電子設計工程,2013,21(02):24-26.
[5]陳鵬,劉爽,史國友.船舶監控系統中可擴展高效通信軟件的設計[J].大連海事大學學報,2014,40(02):86-40.
[6]賀銀根,田堃,劉建朔.一種船舶遠傳監控系統的設計與應用研究[J].中國修船,2016,29(01):25-30.