韓云東 袁群哲 楊常青 王海波 蔣永馨
摘 要 針對(duì)船舶自動(dòng)識(shí)別系統(tǒng)(AIS)設(shè)備的功能特點(diǎn),利用虛擬儀器技術(shù)設(shè)計(jì)并開發(fā)虛擬AIS仿真實(shí)驗(yàn)系統(tǒng),該系統(tǒng)包含登錄模塊和功能模塊,在功能模塊中包括時(shí)間計(jì)算、暗碼解算、人員落水標(biāo)記、報(bào)文記錄復(fù)視、目標(biāo)標(biāo)記等多個(gè)子模塊,系統(tǒng)界面接近實(shí)物,操作界面簡(jiǎn)潔明了,能夠?qū)崿F(xiàn)AIS的模擬仿真運(yùn)行,學(xué)員通過應(yīng)用該系統(tǒng),可加深對(duì)AIS設(shè)備的理解。
關(guān)鍵詞 船舶自動(dòng)識(shí)別系統(tǒng);LabVIEW;虛擬AIS仿真實(shí)驗(yàn)系統(tǒng)
中圖分類號(hào):TP391.9 文獻(xiàn)標(biāo)識(shí)碼:B
文章編號(hào):1671-489X(2017)08-0009-03
Abstract According to the features of the AIS equipment, the Virtual
AIS Simulation Experiment System was developed through virtual instrument technology. The AIS system included login module and
the function module, and the function module included time calcu-lation module, code calculation module, overboard marking module, message recording repeater module, target labeling module, and so
on. The system interface was close to the real equipment, and it is simple and clear, and the simulation of AIS could realized on the computer. The students could deepen the understanding of AIS equip-
ment through the application of the system.
Key words automatic identification system; LabVIEW; virtual AIS simulation experiment system
1 前言
實(shí)驗(yàn)在航海信息系統(tǒng)課程教學(xué)中占有十分重要的地位,通過實(shí)驗(yàn),可以加深學(xué)員對(duì)航海儀器理論知識(shí)的理解,增強(qiáng)學(xué)習(xí)興趣,提高理論聯(lián)系實(shí)際的能力。但是近年來隨著學(xué)員數(shù)量不斷增加,現(xiàn)有的實(shí)驗(yàn)室設(shè)備和規(guī)模都難以滿足需要[1]。因此,實(shí)驗(yàn)室常常只能做一些最簡(jiǎn)單的驗(yàn)證性實(shí)驗(yàn),學(xué)員很少有機(jī)會(huì)去反復(fù)熟悉專業(yè)設(shè)備的使用,這對(duì)調(diào)動(dòng)學(xué)生的學(xué)習(xí)積極性、培養(yǎng)創(chuàng)新精神、加強(qiáng)實(shí)踐動(dòng)手能力都十分不利。
船舶自動(dòng)識(shí)別系統(tǒng)(Automatic Identification System,
簡(jiǎn)稱AIS)是繼ARPA、ECDIS系統(tǒng)之后,在航海信息技術(shù)領(lǐng)域中的又一大助航系統(tǒng),在保障航行安全、提高航行效率等各個(gè)方面發(fā)揮著十分重要的作用[2]。本文依靠LabVIEW平臺(tái)強(qiáng)大的數(shù)據(jù)處理能力[3],編程實(shí)現(xiàn)AIS的軟件仿真系統(tǒng),整個(gè)系統(tǒng)按照模塊化的設(shè)計(jì)思路進(jìn)行編寫,以單個(gè)功能為目標(biāo)編寫功能模塊,以數(shù)據(jù)流向?yàn)榫€索連接函數(shù),最終整合形成功能完整的系統(tǒng)整體。
2 虛擬AIS仿真實(shí)驗(yàn)系統(tǒng)設(shè)計(jì)
在虛擬AIS仿真實(shí)驗(yàn)系統(tǒng)的編程過程中,引入模塊化的設(shè)計(jì)思想,即按照功能去設(shè)計(jì)模塊,最終形成以各種結(jié)構(gòu)方框?yàn)榉纸绲墓δ苣K,將各個(gè)模塊組合成完整的程序系統(tǒng)。系統(tǒng)結(jié)構(gòu)如圖1所示。
在具體設(shè)計(jì)時(shí),每一模塊都以LabVIEW結(jié)構(gòu)(包括while
結(jié)構(gòu)、條件結(jié)構(gòu)、事件結(jié)構(gòu)、循環(huán)結(jié)構(gòu)等)為框架,依靠結(jié)構(gòu)對(duì)數(shù)據(jù)流向的控制能力,確保數(shù)據(jù)按照指定順序循環(huán),實(shí)現(xiàn)數(shù)據(jù)處理。
登錄模塊設(shè)計(jì) 其設(shè)置目的是為明碼的解碼單獨(dú)開辟空間,因?yàn)橛妹鞔a傳遞的消息一般為系統(tǒng)工作狀態(tài)等,不會(huì)在主屏幕上顯示輔助信息。因此,設(shè)置登錄模塊,使其在登錄時(shí)完成顯示,同時(shí)也模擬了實(shí)際使用時(shí)的開機(jī)過程。基于這些功能,登錄模塊的設(shè)計(jì)必須包含明碼解碼模塊,實(shí)現(xiàn)對(duì)明碼電文的自動(dòng)接收和解碼;進(jìn)度顯示模塊,模擬開機(jī)進(jìn)度;啟動(dòng)模塊,實(shí)現(xiàn)自動(dòng)啟動(dòng)主界面的功能。
功能模塊設(shè)計(jì) 功能模塊是整個(gè)系統(tǒng)的核心部分,必須具備與系統(tǒng)功能相對(duì)應(yīng)的功能模塊。首先,界面設(shè)計(jì)從模擬仿真的原則出發(fā),系統(tǒng)界面盡可能接近實(shí)際裝備。其次是功能按鍵,功能在實(shí)現(xiàn)的基礎(chǔ)上盡量做全。本系統(tǒng)中規(guī)劃了海圖縮放功能、航線顯示功能、人員落水告警功能、短消息發(fā)送功能、亮度調(diào)節(jié)功能等其他功能,也應(yīng)該設(shè)計(jì)相應(yīng)的功能模塊。
3 功能模塊的功能實(shí)現(xiàn)
功能模塊包含了系統(tǒng)的主要功能,并按模塊進(jìn)行實(shí)現(xiàn),由關(guān)聯(lián)度不高的多個(gè)子模塊組成,可劃分為時(shí)間計(jì)算模塊、暗碼解算模塊、人員落水標(biāo)記模塊、短消息發(fā)送及復(fù)示模塊、目標(biāo)標(biāo)記模塊以及其他模塊。
時(shí)間計(jì)算模塊 功能為獲取本地時(shí)間及計(jì)算UTC時(shí)間,主要運(yùn)用本地時(shí)間獲取函數(shù)、格式化日期時(shí)間函數(shù)、while結(jié)構(gòu)、條件結(jié)構(gòu)以及相應(yīng)的字符串處理與轉(zhuǎn)化函數(shù)。主要實(shí)現(xiàn)方法為從本地獲取時(shí)間后,通過格式化時(shí)間函數(shù)規(guī)定時(shí)間字符串格式,輸出字符串認(rèn)為是本地時(shí)間,然后對(duì)本地時(shí)間進(jìn)行計(jì)算(東八區(qū)),判斷時(shí)值是否超過8,如是則進(jìn)行減8操作后用返回值替換原值,如不是則對(duì)日期進(jìn)行減一后對(duì)時(shí)值進(jìn)行加十六操作后替換原值輸出,進(jìn)而得到UTC時(shí)間。
暗碼解算模塊 該模塊為本仿真系統(tǒng)的重要組成部分之一,負(fù)責(zé)解算暗碼電文,提供目標(biāo)的各種動(dòng)態(tài)信息與靜態(tài)信息。本系統(tǒng)中主要對(duì)消息編號(hào)為1、3、5的三種電文進(jìn)行解算,其中1、3號(hào)電文中分別攜帶定時(shí)船位報(bào)告與詢問船位報(bào)告,而5號(hào)電文中攜帶靜態(tài)和航行相關(guān)數(shù)據(jù)報(bào)告,分別對(duì)應(yīng)AIS系統(tǒng)中的動(dòng)態(tài)信息與靜態(tài)信息。
落水標(biāo)記模塊 該模塊實(shí)現(xiàn)的功能主要是模擬MOB功能,即在人員落水的瞬間標(biāo)記人員落水位置并將落水坐標(biāo)存儲(chǔ)于本機(jī)之中,主要實(shí)現(xiàn)方法為當(dāng)MOB按鈕按下時(shí),系統(tǒng)要自動(dòng)記錄當(dāng)前的坐標(biāo)地點(diǎn),并在海圖上完成紅色標(biāo)記,主面板上的告警燈要同時(shí)點(diǎn)亮,且彈出對(duì)話框詢問是否顯示坐標(biāo)位置,是則顯示記錄點(diǎn)坐標(biāo),否則關(guān)閉對(duì)話框,當(dāng)再次按下MOB鍵時(shí),標(biāo)記點(diǎn)消失。
短消息發(fā)送及復(fù)示模塊 該模塊實(shí)現(xiàn)功能是模擬AIS系統(tǒng)中的短消息發(fā)送功能,并且搭配復(fù)視功能對(duì)已編輯的報(bào)文內(nèi)容進(jìn)行顯示,其實(shí)現(xiàn)思路與人員落水點(diǎn)的模擬過程大體相同,也需要依賴后臺(tái)的數(shù)據(jù)文件進(jìn)行存儲(chǔ),主體操作均為文件創(chuàng)建寫入和讀取。
目標(biāo)標(biāo)記模塊 該模塊實(shí)現(xiàn)功能是對(duì)海圖上顯示的各個(gè)目標(biāo)進(jìn)行標(biāo)記。當(dāng)目標(biāo)被標(biāo)記時(shí),目標(biāo)會(huì)以黃色和不同顏色交替閃爍;取消標(biāo)記后,目標(biāo)恢復(fù)原狀。其功能實(shí)現(xiàn)過程為標(biāo)記按鈕按下時(shí),需要完成以下兩點(diǎn)操作:
1)顯示對(duì)話框,提示用戶選擇想要標(biāo)記的對(duì)象;
2)運(yùn)行目標(biāo)標(biāo)記程序。
其他模塊 除了主要模塊之外,本系統(tǒng)還包括一些其他模塊,比如:航線顯示模塊,主要用于航線模擬;目標(biāo)信息裝訂模塊,主要運(yùn)用于設(shè)置初始信息以及之后的某些固定信息的顯示;為了減小系統(tǒng)的冗余度,還在其中集成了幫助信息的顯示以及模擬系統(tǒng)的停止按鈕。
4 系統(tǒng)實(shí)現(xiàn)
本系統(tǒng)開發(fā)完成后,主體由兩部分VI組成,分別為登錄模塊與功能模塊。
登錄模塊 其目的主要是進(jìn)行明碼的解碼任務(wù)。由于明碼一般用來進(jìn)行時(shí)間、工作狀態(tài)等信息的播發(fā),因此在AIS主界面中并沒有相應(yīng)的顯示區(qū)域。為完善AIS模擬系統(tǒng)的功能,增加其美觀程度,特設(shè)登錄界面,且將登錄界面與主界面相關(guān)聯(lián),實(shí)現(xiàn)主界面的自動(dòng)開啟。登錄模塊顯示效果如圖2所示。
功能模塊實(shí)現(xiàn) 為了維持二者的正常工作,在系統(tǒng)文件夾中加入人員落水位置記錄文件、報(bào)文記錄文件以及子VI數(shù)據(jù)庫。模擬AIS系統(tǒng)接收電文由*.txt文件提供,分為明碼電文與暗碼電文,以暗碼電文為主,電文由程序自動(dòng)解算并顯示。設(shè)備功能方面,成功模擬了AIS系統(tǒng)常見的航線顯示、人員落水標(biāo)記、目標(biāo)標(biāo)記、海圖縮放、短報(bào)文發(fā)送、亮度調(diào)節(jié)等其他功能。AIS功能模塊界面如圖3所示。
使用介紹 本系統(tǒng)的主要研制目的是模擬AIS系統(tǒng)的工作特征和功能,讓學(xué)習(xí)者對(duì)AIS的使用效果有一個(gè)具體的體驗(yàn),有助于學(xué)習(xí)人員了解AIS的使用方法甚至部分工作原理,其使用方法如下。
第一步:系統(tǒng)初始化。打開登錄模塊,系統(tǒng)自動(dòng)進(jìn)入登錄界面,在登錄界面中,用戶可以看到系統(tǒng)時(shí)間及AIS系統(tǒng)的工作狀態(tài)。同時(shí)為了便于使用者了解其明碼的解碼過程,特設(shè)源碼窗口顯示未經(jīng)解碼的電文信息。除此之外,在界面下端顯示有進(jìn)度條,便于用戶掌握進(jìn)入主界面的時(shí)間。
第二步:主界面操作。系統(tǒng)的主界面是模擬新陽升電氣300型AIS而設(shè)計(jì)的界面,主界面分為顯示區(qū)域、按鍵區(qū)域以及指示燈三大部分。
1)顯示區(qū)域以海域?yàn)轱@示背景,顯示內(nèi)容主要是目標(biāo)、航行及其他信息、根據(jù)按鍵功能顯示的其他窗口三部分。航行及其他信息主要顯示在屏幕的四個(gè)角上,左上角為系統(tǒng)時(shí)間,右上角為本船位置及航向航速信息,左下角為當(dāng)前目標(biāo)位置以及相對(duì)于本船的方位距離信息,右下角為目標(biāo)船的四類基本信息。顯示目標(biāo)由不同顏色的小方塊代表。
2)按鍵區(qū)域由數(shù)字鍵盤和功能鍵組成,數(shù)字鍵盤主要用于目標(biāo)的選擇,功能鍵主要用于激發(fā)不同功能。
3)指示燈主要用于指示和報(bào)警功能。
5 結(jié)束語
本文以LabVIEW軟件為平臺(tái),從AIS系統(tǒng)的實(shí)際功能出發(fā),立足其功能特性,對(duì)AIS系統(tǒng)的主要功能進(jìn)行模擬仿真。整套模擬系統(tǒng)能夠動(dòng)態(tài)模擬顯示AIS系統(tǒng)的工作數(shù)據(jù),并能夠?qū)崿F(xiàn)目標(biāo)標(biāo)記、人員落水報(bào)警等輔助功能,真實(shí)地展現(xiàn)了AIS系統(tǒng)的各種主要功能及實(shí)際工作狀態(tài),為軟件使用者提供了一個(gè)直觀的使用感受,對(duì)于學(xué)習(xí)掌握該AIS設(shè)備提供了一個(gè)很好的輔助工具。目前該系統(tǒng)已應(yīng)用到相關(guān)課程的實(shí)驗(yàn)教學(xué)中,獲得較好的效果。
參考文獻(xiàn)
[1]楊敏,葉宏,倪繼峰,等.虛擬儀器在電子專業(yè)教學(xué)中的應(yīng)用[J].中國教育技術(shù)裝備,2010(36):146-147.
[2]韓云東,蔣永馨.航海信息系統(tǒng)[M].大連:海軍大連艦艇學(xué)院,2015.
[3]章佳榮,王粲,趙國宇.精通LabVIEW虛擬儀器程序設(shè)計(jì)與案例實(shí)現(xiàn)[M].北京:人民郵電出版社,2013.