摘 要:本文作者討論基于Visual C#開(kāi)發(fā)AIS模擬器,利用C# .NET類(lèi)庫(kù)可以輕松開(kāi)發(fā)模擬器,使實(shí)驗(yàn)室建設(shè)費(fèi)用降低,采用AIS模擬器不僅可以像真機(jī)一樣提供信息,也避免了影響正常航行的船舶,學(xué)生實(shí)訓(xùn)效果提高很大。
關(guān)鍵詞:Visual C#;AIS;航海;模擬器開(kāi)發(fā);教學(xué)改革
中圖分類(lèi)號(hào):TP391.9
AIS訓(xùn)練是《航海儀器正確使用評(píng)估》其中一項(xiàng),是學(xué)生訓(xùn)練的重點(diǎn)。結(jié)合本校的實(shí)際情況,真機(jī)數(shù)量不多的情況下,學(xué)生不能及時(shí)有效的訓(xùn)練,而且信息發(fā)送不當(dāng)操作可能對(duì)AIS網(wǎng)絡(luò)中的在航船舶和管理部門(mén)帶來(lái)安全隱患。而采用AIS模擬器不僅可以像真機(jī)一樣提供信息,也避免了影響正常航行的船舶。因此設(shè)計(jì)AIS模擬器是非常具有實(shí)際意義。
為了滿(mǎn)足AIS教學(xué)訓(xùn)練的需要,本文設(shè)計(jì)了一種基于Visual C#的AIS模擬器。該套模擬器是根據(jù)FURUNO FA-150型AIS真機(jī)設(shè)備進(jìn)行仿真設(shè)計(jì)開(kāi)發(fā),實(shí)現(xiàn)自動(dòng)廣播和接收船舶靜態(tài)信息、動(dòng)態(tài)信息、航次信息和安全信息,實(shí)現(xiàn)船舶識(shí)別、監(jiān)視和通信的功能。
1 系統(tǒng)設(shè)計(jì)
1.1 系統(tǒng)框架設(shè)計(jì)
FURUNO FA-150型AIS模擬器設(shè)計(jì),從工作原理、界面到實(shí)現(xiàn)功能盡量與真機(jī)設(shè)備相符,并通過(guò)局域網(wǎng)與服務(wù)器數(shù)據(jù)庫(kù)進(jìn)行交換數(shù)據(jù),實(shí)現(xiàn)AIS模擬器之間的數(shù)據(jù)通信。系統(tǒng)開(kāi)發(fā)工具Visual C# 2010;系統(tǒng)運(yùn)行環(huán)境Windows 7專(zhuān)業(yè)版+NET 4.0。系統(tǒng)構(gòu)成如圖1:
1.2 程序開(kāi)發(fā)
(1)數(shù)據(jù)庫(kù)設(shè)計(jì)
數(shù)據(jù)庫(kù)用來(lái)保存每條船舶的靜態(tài)信息、動(dòng)態(tài)信息、航次貨物信息、安全相關(guān)短息,留待查詢(xún)和其他船舶進(jìn)行交換數(shù)據(jù)。由于數(shù)據(jù)種類(lèi)較多,數(shù)據(jù)量較大,而且對(duì)于數(shù)據(jù)回放所要求的速度要快,占用系統(tǒng)資源較多。我們采用數(shù)據(jù)庫(kù)保存,以節(jié)省系統(tǒng)資源,提高訪問(wèn)速度。本系統(tǒng)采用SQL server 2008數(shù)據(jù)庫(kù),利用ADO技術(shù)訪問(wèn)數(shù)據(jù)庫(kù)。在數(shù)據(jù)庫(kù)中設(shè)計(jì)幾張表用來(lái)保存數(shù)據(jù):
Tb_ShipInfo保存船舶數(shù)據(jù),鍵為MMSI
Tb_SafetyMSG保存安全相關(guān)短消息,鍵為序號(hào)
(2)通信環(huán)境設(shè)計(jì)
AIS模擬器設(shè)備需要持續(xù)在網(wǎng)絡(luò)播發(fā)和接收本船及他船的靜態(tài)信息、動(dòng)態(tài)信息、航次相關(guān)信息,而且在必要時(shí)播發(fā)接收安全信息,因此,該系統(tǒng)中利用計(jì)算機(jī)網(wǎng)絡(luò)通信模擬AIS無(wú)線(xiàn)網(wǎng)絡(luò)通信。
(3)數(shù)據(jù)結(jié)構(gòu)定義
AIS通信時(shí),需要對(duì)各類(lèi)型AIS報(bào)文進(jìn)行解析、顯示。根據(jù)IEC-61162-100(AIS數(shù)字接口的特別要求)和ITU-RM.1371-1(AIS系統(tǒng)特性的推薦標(biāo)準(zhǔn)),定義相應(yīng)的數(shù)據(jù)結(jié)構(gòu),舉例如下:
靜態(tài)數(shù)據(jù)定義:
public class staticData
{
Public unsigned char messageID{get;set;};
Public unsigned char repeatIndicator{get;set;};
Public unsigned int MMSI{get;set;};
Public unsigned char shipName{get;set;};
……
}
與此類(lèi)似,本系統(tǒng)還對(duì)動(dòng)態(tài)數(shù)據(jù)的船位、航向、航速、ROT等數(shù)據(jù)進(jìn)行定義;教師可以通過(guò)教師機(jī)發(fā)送岸臺(tái)的航行警告、天氣預(yù)報(bào)等電文。在古野FA-150型AIS模擬器系統(tǒng)開(kāi)發(fā)中借助對(duì)各模塊中的參數(shù)進(jìn)行賦值與服務(wù)器進(jìn)行交換數(shù)據(jù),顯示到每個(gè)學(xué)生端,進(jìn)而真實(shí)的模擬AIS船對(duì)船之間的識(shí)別和通信。
(4)AIS模擬器操作界面設(shè)計(jì)
界面設(shè)計(jì)如圖所示與FA-150型AIS真機(jī)一致。左邊通過(guò)C#繪圖進(jìn)行設(shè)計(jì),模擬AIS設(shè)備的顯示屏;右邊為10個(gè)按鈕,所有操作通過(guò)鼠標(biāo)完成。
圖2 FA-150型AIS模擬器界面
通過(guò)按鈕,模擬器能夠完整地完成真機(jī)設(shè)備的全部功能,包括船到船交互通信、識(shí)別、短消息的發(fā)送和各個(gè)菜單,其菜單層級(jí)達(dá)到5級(jí)。
每個(gè)按鈕都是通過(guò)事件監(jiān)聽(tīng)來(lái)設(shè)計(jì)實(shí)現(xiàn)功能,每一個(gè)按鈕之間相互聯(lián)系,而且又相互獨(dú)立。
2 AIS模擬器在實(shí)際教學(xué)中的應(yīng)用
我們?cè)盒_@幾年發(fā)展迅速,招生規(guī)模不斷擴(kuò)大,造成航海儀器設(shè)備的配備數(shù)量嚴(yán)重不足。大多數(shù)航海高職院校從過(guò)去的一個(gè)自然班一個(gè)實(shí)訓(xùn)室的教學(xué)資源配置,變成了兩個(gè)甚至三個(gè)以上的自然班合用一個(gè)實(shí)訓(xùn)室,并且課堂授課時(shí)合班課的學(xué)生數(shù)達(dá)100名以上,這給操作性較強(qiáng)的航海儀器課程的正常教學(xué)帶來(lái)了很大弊端。我校的實(shí)訓(xùn)課都是分組進(jìn)行的,AIS實(shí)訓(xùn)課,由于AIS操作界面比較小,每次只能10人-12人一組,這樣一個(gè)合班課就要分成10組左右,同樣的內(nèi)容老師要重復(fù)講解10次左右,且每節(jié)課教師操作演示講解要花去半節(jié)課的時(shí)間,所以一節(jié)課下來(lái)由學(xué)生自己動(dòng)手去實(shí)操的時(shí)間很少,學(xué)生操作時(shí)爭(zhēng)搶現(xiàn)象時(shí)有發(fā)生,導(dǎo)致儀器設(shè)備使用壽命受到較大影響。當(dāng)前我校配備的AIS真機(jī)是古野FA-150、共有數(shù)量4臺(tái),由于學(xué)生多,時(shí)間少,常出現(xiàn)有些學(xué)生還沒(méi)碰到AIS設(shè)備就下課了,所以實(shí)訓(xùn)課的教學(xué)效果很不理想。
通過(guò)開(kāi)發(fā)AIS模擬器,教師可以在投影機(jī)上進(jìn)行講解,學(xué)生邊聽(tīng)邊練,大大提高教學(xué)效果,也避免學(xué)生爭(zhēng)搶設(shè)備,造成設(shè)備無(wú)謂的損壞,因此開(kāi)發(fā)模擬器是非常必要的。隨著航海新技術(shù)的發(fā)展和應(yīng)用,航海儀器設(shè)備的更替非???,提高學(xué)生對(duì)實(shí)際船舶航海儀器設(shè)備的操作能力是航海儀器課程教學(xué)改革的目的。為此,教學(xué)改革必須注重學(xué)生的技能培養(yǎng),只有把航海儀器設(shè)備的最新發(fā)展動(dòng)態(tài)和教學(xué)結(jié)合起來(lái),不斷研究、改進(jìn)教學(xué)方法,才能在航海儀器教學(xué)和改革各方面取得更好的成效。
參考文獻(xiàn):
[1]陳林春.“航海儀器”課程教學(xué)改革探討[J].浙江國(guó)際海運(yùn)職業(yè)學(xué)院學(xué)報(bào),2009(09).
[2]李軍.基于COM的AIS模擬器設(shè)計(jì)與實(shí)船借鑒應(yīng)用研究[J].航海技術(shù),2010(01).
作者單位:天津海運(yùn)職業(yè)學(xué)院,天津 300350