楊正峰 楊 磊
(上海海事大學,中國 上海 201306)
船載自動識別系統(tǒng)(AIS)是船舶新一代的通信導航系統(tǒng),依托自組織時分多址(SOTDMA)技術,實現對海上交通安全和船-岸、船-船間的自動識別、通信導航等功能。AIS概念自1994年瑞典等國首次提出到國際海事組織(IMO)、國際航標協(xié)會(IALA)、國際電信聯盟(ITUR)共同強力推廣,要求船舶強制安裝AIS,前后僅僅經歷了十年左右的時間,足以說明AIS系統(tǒng)對于船舶運行及其監(jiān)管的重要性,AIS的出現是航海史上的一個里程碑。由于海上交通環(huán)境復雜多變,AIS的出現使船舶航行安全和海上交通安全有了保障[1-2]。AIS數據在ECDIS,ARPA,VTS,航行警告、通告,船舶監(jiān)控管理系統(tǒng)等諸多系統(tǒng)中有著廣泛的應用。對于AIS信息的準確獲取和解碼是船載自動識別系統(tǒng)能夠充分發(fā)揮作用的基礎和前提。
AIS的主要構成如圖1所示:
圖1 船載自動識別系統(tǒng)主要構成
AIS做為助航系統(tǒng),通過VHF的兩個頻道 (87B161.975MHz和88B162.025MHz)進行收發(fā)同一信道上的船舶信息和安全相關信息,船和岸、船和船之間通過基站形成的通信網絡,實現相互之間的數據通信。通信接口可以接收來自GPS/DGPS的導航定位信息,電羅經提供的本船對地航向COG,計程儀提供的本船對地航速SOG,同時,能夠將AIS信息一同集成到電子海圖ECDIS,自動雷達標繪ARPA以及VDR中[3]。用戶接口為RS422通信協(xié)議,通過RS422/RS232轉換器轉換后的信號傳送到PC機的串口,實現AIS信息的采集。采集的部分信息如下:
盡管AIS通信過程中會根據不同的操作模式采用不同的通信協(xié)議,分別是 FATDMA、RATDMA、ITTDMA、SOTDMA,但是 AIS 系統(tǒng)在連續(xù)運行時主要采用SOTDMA通信協(xié)議。自組織時分多址SOTDMA技術原理是將信道時間分割成固定的時間間隔,使得同一個信道發(fā)送的信息相互不干擾[4]。AIS網絡中將1分鐘做為一幀,一幀分為2250個時隙,每個時隙長度為26.67ms,每個時隙能夠容納小于256bit的一條消息,對于大于256bit的消息會占用2個及以上的時隙。每一幀的開始和結束均以衛(wèi)星提供的世界時UTC時間為標志。
AIS報文消息的主要由船舶向基站和其他船舶播發(fā)的消息,岸臺管理中心向船舶播發(fā)的信息。其基本可以分為以下幾種類型[3]:
1.3.1 靜態(tài)信息:海上移動業(yè)務識別碼(MMSI),呼號,船名,船長,船寬,船舶類型,船上定位天線的位置等。
1.3.2 動態(tài)信息:具有精度指示和完整性狀態(tài)的船位,對地速度(SOG),對地航向,航行狀態(tài),轉向率,UTC時間等。
1.3.3 航行信息:船舶吃水,目的港,預到時間,危險貨物類型等。
1.3.4 安全信息:有關船舶航行相關的安全信息。
根據ITU-R M.1371規(guī)定,AIS信息總共分為22種不同的信息報文,具體報文類型如表1:
表1 22種報文的類型
AIS報文是整個船舶自動識別系統(tǒng)的數據交換和傳輸單位,包含豐富的船舶動態(tài)、靜態(tài)以及和安全相關的數據信息,AIS報文解析是將接收到的無法直接識別的暗碼數據解析成操作或者監(jiān)管人員能夠直接識別的明碼信息。信息解碼是AIS中關鍵技術之一。信息解碼主要分為以下幾個步驟:串口接收AIS報文、6bit二進制序列轉換、幀校驗正確、解析數據并顯示。
根據ITU-RM.137121和IEC6116222協(xié)議,AIS報文信息分為明碼和暗碼兩種類型。 明碼以 “$” 字符開始,如:$OSNT,1,2008,09,30,21,53,00,明碼報文內容可以直接讀取,此明碼報文給出了接收的報文廣播的具體時間。但是由于明碼占用了更多的空間資源,IEC對明碼的字符做了限制(少于等于82個字符)。
暗碼則以“! ”開頭,基本格式:! XXYYY,A,B,C,N,Data,V*HH。其中各部分相對應的內容見表2:
表2 AIS封裝報文中各部分表示的內容
其中的校驗部分采用的是循環(huán)冗余校驗CRC的方法來確保通信的可靠性,CRC是一類在通信領域廣泛地用于差錯控制的方法,編解碼簡單且糾錯能力強。AIS信息幀為高級數據鏈路控制規(guī)程HDLC的幀,其校驗序列中使用CRC-32進行校驗,其生成多項式為
為了將報文解析成明文信息,基本方法有兩種:一、檢索比對,將報文數據與表3中進行一一比對,轉換成相應的6bit的二進制序列;二、根據表中數據間的相互關系,通過數學算法將8bit的報文信息轉換成對應的6bit的二進制序列,算法流程圖如圖2所示[5-6]。鑒于AIS通常的數據量巨大,且圖中的數學算法容易實現,采用第二種方法將報文轉換成相應的二進制序列。
表3 8bit轉6bit二進制表
圖2 ASCⅡ碼轉換6bit二進制序列算法流程圖
以接收到的其中一條報文為例:
!AIVDM,1,1,3,B,169`K0001l8g@ADEaj55:42j00Rc,0*56
由文中算法編碼將數據部分轉換為6bit二進制序列如下:
本條報文對應的消息類型為1,根據ITU-R M.1371規(guī)定,其對應的解析如表4:
表4 第1類報文內容及解析結果
由此可知,通過文中的方法可以正確解析出AIS相應報文的內容,其他類型的信息解碼原理、過程和第1類報文相似,對于一個時隙不能全部包含的報文,AIS將其分成多條報文分別進行傳輸,在解析之前,要將多條的報文合并成一條報文,參照ITU-R M.1371給出的對應的報文類型及內容進行正確的解析。
本文分析介紹了船載自動識別系統(tǒng)及信息解碼方法,并通過實驗解析獲得了正確的AIS信息,充分說明了通過文中方法能夠快速解碼獲得AIS數據,為其在之后的研究過程中的應用打下基礎。鑒于AIS具有海量數據,而且多數應用需要數據的及時更新,因而推薦在實際AIS系統(tǒng)中應用多線程等技術來提升效率。
[1]孫文力,孫文強.船載自動識別系統(tǒng)[M].大連:大連海事大學出版社,2004.
[2]初秀民,徐海潮,萬劍,等.基于多線程的船載自動識別系統(tǒng)報文解析[J].中國航海,2011,34(2):19-23.
[3]張穎.船舶自動識別系統(tǒng)(AIS)接口數據的研究與應用[D].大連:大連海事大學,2009.
[4]咸魁蔚.自動識別系統(tǒng)(AIS)協(xié)議的研究和實現[D].天津:天津大學電子信息工程學院,2010.
[5]徐志京.AIS信息編解碼中CRC算法分析及程序實現[J].中國水運,2008,08(8):115-117.
[6]吳建華,陶德馨.自動船舶識別系統(tǒng)的信息解碼技術研究[J].武漢理工大學學報,2007,31(4):595-598.