劉曉陽(yáng),江志東,高偉偉,楊明欽
(1.海軍航空大學(xué)青島校區(qū),山東青島 266041;2.中國(guó)人民解放軍91504 部隊(duì),浙江臺(tái)州 318000)
近年來(lái),1553B 總線已經(jīng)成為中國(guó)現(xiàn)役空中力量最主要的先進(jìn)航空電子系統(tǒng)數(shù)據(jù)總線,廣泛作為三代機(jī)的主干網(wǎng)絡(luò),在四代機(jī)中也有重要的局部應(yīng)用[1]。1553B 總線具有雙向傳輸特性,實(shí)時(shí)性和可靠性高,不僅廣泛用于航空、航天領(lǐng)域[2],也可應(yīng)用于艦艇、潛艇、坦克和戰(zhàn)車上[3-4]。由于1553B 總線應(yīng)用的廣泛性[5],對(duì)其的學(xué)習(xí)和研究就變得至關(guān)重要。但是目前院校實(shí)際教學(xué)中,由于院校沒(méi)有專用的1553B總線教學(xué)實(shí)驗(yàn)室,1553B 試驗(yàn)箱價(jià)格昂貴,軟硬設(shè)施與教學(xué)目標(biāo)存在一定差距,欠缺合適的教學(xué)工具和學(xué)員自主學(xué)習(xí)工具,令1553B 總線的教學(xué)往往停留在概念性認(rèn)識(shí)階段[6]。
該文在研究1553B 總線數(shù)據(jù)傳輸?shù)幕A(chǔ)上,開(kāi)發(fā)了一款滿足院校培訓(xùn)教學(xué)的1553B 總線仿真軟件,目標(biāo)是滿足教學(xué)培訓(xùn)與自主學(xué)習(xí)需求,提高學(xué)員的航空電子設(shè)備維護(hù)水平。
MIL-STD-1553B 總線全稱為數(shù)字時(shí)分制命令/響應(yīng)型多路傳輸數(shù)據(jù)總線[7-8],主要由四部分組成:總線控制器(BC)、總線監(jiān)視器(BM)、遠(yuǎn)程終端(RT)[9]和余度電纜(物理媒介)[10]。在總線上傳輸?shù)臄?shù)據(jù)碼應(yīng)是曼徹斯特Ⅱ型碼??偩€上的協(xié)議字分為三類:命令字、數(shù)據(jù)字、狀態(tài)字[11]。命令字傳輸?shù)氖荁C 的命令,數(shù)據(jù)字、狀態(tài)字傳輸?shù)姆謩e是數(shù)據(jù)和狀態(tài)信息[12]。
該軟件在Windows 操作系統(tǒng)下,使用Visual Basic 6.0 集成開(kāi)發(fā)工具,面向用戶,界面豐富,接口方便[13]。Visual Basic 6.0 簡(jiǎn)稱VB 6.0,緊密聯(lián)系Windows 操作系統(tǒng)[14],具有可視化的設(shè)計(jì)工具、結(jié)構(gòu)化的程序設(shè)計(jì)語(yǔ)言與簡(jiǎn)明的程序集成開(kāi)發(fā)環(huán)境[15],極大提高了該軟件的開(kāi)發(fā)效率[16]。
針對(duì)實(shí)際教學(xué)培訓(xùn)中學(xué)員較難理解的問(wèn)題,該軟件選擇3個(gè)1553B總線實(shí)驗(yàn)進(jìn)行仿真,如圖1所示。
圖1 軟件總體框架
1553B 總線基礎(chǔ)通信實(shí)驗(yàn)是學(xué)習(xí)1553B 總線的基礎(chǔ),可視化要求可在時(shí)間軸上顯示傳輸?shù)拿钭?、狀態(tài)字、數(shù)據(jù)字。命令字要求配置的內(nèi)容應(yīng)該設(shè)置為4 項(xiàng):1)RT 地址(可選31 個(gè),當(dāng)選擇廣播模式默認(rèn)為11111);2)T/R 位(選擇接收命令字或者發(fā)送命令字);3)子地址/方式(可選30 個(gè),當(dāng)上一步中選擇了方式控制模式,默認(rèn)為00000 或11111,則無(wú)法更改);4)數(shù)據(jù)字計(jì)數(shù)和方式代碼(發(fā)送或接收的數(shù)據(jù)字個(gè)數(shù)為0~32 個(gè),若啟用了方式控制,則代表需要執(zhí)行的方式命令,默認(rèn)填入無(wú)法更改)。
真實(shí)航空電子系統(tǒng)上的數(shù)據(jù)傳輸是按照大周期進(jìn)行,大周期內(nèi)又有多個(gè)小周期,小周期內(nèi)又有多個(gè)消息。所以,文中進(jìn)一步提出關(guān)于1553B 的總線消息調(diào)度實(shí)驗(yàn)。
為了教學(xué)的實(shí)用性和設(shè)計(jì)的便捷性,該文只根據(jù)刷新頻率(傳輸周期)安排消息傳輸。在所有消息中,取最長(zhǎng)的周期傳輸時(shí)間間隔(即刷新頻率最低)作為大周期的參考,取最短的周期傳輸時(shí)間間隔(即刷新頻率最高)作為小周期的參考。該實(shí)驗(yàn)?zāi)M的是用戶自定的航電系統(tǒng)消息情況,而真實(shí)航電總線上的各RT 消息頻率是按照ICD 調(diào)度表進(jìn)行傳輸?shù)?,因此由概況具體過(guò)渡到基于ICD 的消息調(diào)度實(shí)驗(yàn)。
接口控制文件(Interface Control Document,ICD)是定義和描述組成航電各分系統(tǒng)或電子設(shè)備之間接口性能、技術(shù)特性及使用說(shuō)明的技術(shù)文件[13]。該實(shí)驗(yàn)?zāi)M一個(gè)小型航電系統(tǒng)的運(yùn)行過(guò)程,是對(duì)該教學(xué)仿真軟件實(shí)驗(yàn)內(nèi)容的綜合提煉與升級(jí)。對(duì)ICD 消息傳輸?shù)目梢暬枨笥性跁r(shí)間軸上顯示總線ICD 消息塊,實(shí)時(shí)顯示小周期時(shí)間與進(jìn)度,根據(jù)用戶操作觸發(fā)非周期消息,查看或者隱藏指定發(fā)送設(shè)備在時(shí)間軸上所有的消息小塊,以此直觀地認(rèn)識(shí)周期消息的傳輸情況。
用戶啟動(dòng)軟件,彈出學(xué)習(xí)模式對(duì)話框,對(duì)應(yīng)實(shí)際教學(xué)需求,選擇3 種實(shí)驗(yàn)?zāi)J?。軟件?shí)現(xiàn)步驟:在Microsoft Visual Basic 6.0 平臺(tái)上建立標(biāo)準(zhǔn)exe 工程文檔;按照方法新建窗體、對(duì)話框、模塊以及各種所需的控件,并對(duì)照軟件邏輯流程圖提出的需要,在建立的窗體、對(duì)話框、模塊、控件中寫(xiě)入實(shí)現(xiàn)功能所需的代碼,按當(dāng)前指定的目標(biāo)功能實(shí)時(shí)調(diào)試糾錯(cuò);整體完成后編譯生成exe 文件,對(duì)整體進(jìn)行調(diào)試并記錄問(wèn)題;修改工程文件;編譯生成可執(zhí)行文件;投入使用獲取用戶反饋并根據(jù)實(shí)際情況進(jìn)行優(yōu)化。
該實(shí)驗(yàn)實(shí)現(xiàn)了1553B 總線的基礎(chǔ)數(shù)據(jù)通信,能夠仿真一則消息的具體傳輸情況。如圖2、圖3 所示,為RT->RT 傳輸模式下的操作界面,大致把界面功能劃分為:1)學(xué)習(xí)說(shuō)明類內(nèi)容;2)字格式配置區(qū)功能;3)傳輸過(guò)程可視化的功能操作與實(shí)現(xiàn)。
圖2 學(xué)習(xí)說(shuō)明類內(nèi)容與字格式配置區(qū)
圖3 傳輸過(guò)程可視化的功能操作與實(shí)現(xiàn)
3.1.1 學(xué)習(xí)說(shuō)明類內(nèi)容
學(xué)習(xí)說(shuō)明類內(nèi)容對(duì)應(yīng)學(xué)習(xí)說(shuō)明、命令字配置表、數(shù)據(jù)字格式表、狀態(tài)字格式表。學(xué)習(xí)說(shuō)明按鈕用于打開(kāi)存有點(diǎn)對(duì)點(diǎn)傳輸模式學(xué)習(xí)說(shuō)明文件的窗體;命令字配置表按鈕用于打開(kāi)命令字1 的配置表,此表的分類辦法思路新穎,將不同項(xiàng)的分類和配置命令字1 的順序相對(duì)應(yīng),直觀性更強(qiáng),幫助用戶快速選擇查閱;數(shù)據(jù)字格式表和狀態(tài)字格式表按鈕分別用于打開(kāi)對(duì)應(yīng)的字格式表。重選學(xué)習(xí)模式除了關(guān)閉窗口外,還可清除當(dāng)前顯示內(nèi)容與初始化操作。
3.1.2 字格式配置區(qū)功能
在配置過(guò)程中消息模式標(biāo)題跟隨配置命令字1框的內(nèi)容實(shí)時(shí)更新變化;啟用方式命令時(shí),配置命令字1 框方式代碼的項(xiàng)根據(jù)前面RT 地址、T/R 位和子地址/模式框的所選項(xiàng)實(shí)時(shí)改變;如果進(jìn)入RT->RT、RT->RT(廣播)這兩種消息模式,激活配置命令字2框,那么配置命令字2 框會(huì)依據(jù)協(xié)議規(guī)范,關(guān)聯(lián)隨動(dòng)配置命令字1 框;根據(jù)不同的消息模式激活對(duì)應(yīng)的數(shù)據(jù)字配置框。
3.1.3 傳輸過(guò)程可視化
傳輸過(guò)程可視化的實(shí)現(xiàn)依賴于數(shù)據(jù)字配置區(qū)下方的4 個(gè)功能類按鈕:完成配置、生成字碼和MII 波形、執(zhí)行傳輸流程演示、拓?fù)鋱D示意流程。對(duì)應(yīng)的主要功能:計(jì)算和配置輸入信息、生成對(duì)應(yīng)的二進(jìn)制、十六進(jìn)制碼以及曼徹斯特Ⅱ型編碼波形圖、識(shí)別消息模式并且對(duì)應(yīng)執(zhí)行文字以及視圖流程演示、識(shí)別消息模式并顯示對(duì)應(yīng)拓?fù)涫疽鈭D。
1553B 總線消息調(diào)度實(shí)驗(yàn)根據(jù)用戶輸入的頻率參數(shù)調(diào)度安排周期傳輸內(nèi)容,模擬總線消息傳輸?shù)拇笾逻^(guò)程。圖4、圖5 為消息調(diào)度實(shí)驗(yàn)界面,圖4 中為繪制分段有序的小周期,按順序?qū)⑿≈芷谶B接,即可組成當(dāng)前自定頻率下數(shù)據(jù)傳輸?shù)囊粋€(gè)大周期;圖5中為大周期消息傳輸演示,在這個(gè)部分將顯示一個(gè)完整的大周期,并設(shè)置運(yùn)行指針來(lái)表示大周期運(yùn)行的情況。
圖4 1553B消息調(diào)度小周期部分界面
圖5 1553B消息調(diào)度大周期消息傳輸部分界面
實(shí)驗(yàn)較為完善地模擬了一個(gè)小型航電系統(tǒng)在一次空空火力打擊時(shí)總線上消息的傳輸情況,是對(duì)1553B 總線數(shù)據(jù)傳輸實(shí)驗(yàn)內(nèi)容設(shè)計(jì)的一個(gè)總結(jié)和提高。
主要開(kāi)發(fā)流程:設(shè)計(jì)ICD 表,根據(jù)ICD 表消息內(nèi)容計(jì)算安排周期消息調(diào)度分配;實(shí)現(xiàn)周期消息傳輸模擬;實(shí)現(xiàn)非周期消息實(shí)時(shí)插入模擬;實(shí)現(xiàn)單獨(dú)顯示指定發(fā)送設(shè)備消息功能。周期消息傳輸可視化實(shí)現(xiàn)思路為設(shè)置PictureBox 控件,合理劃分顯示空間,根據(jù)數(shù)組內(nèi)存儲(chǔ)的所有RT 消息內(nèi)容,在PictureBox 控件上繪制周期傳輸?shù)男K,以及顯示時(shí)間指針?lè)?,需要?shí)時(shí)顯示的代碼應(yīng)該放置在定時(shí)器控件內(nèi)。用戶單擊全部運(yùn)行按鈕,并啟動(dòng)定時(shí)器。單擊暫停則將定時(shí)器的使能屬性設(shè)置為禁用(False),單擊繼續(xù)則設(shè)置為啟用(True),定時(shí)器繼續(xù)運(yùn)行。在一個(gè)周期傳輸完成之后,應(yīng)當(dāng)清空當(dāng)前的PictureBox 內(nèi)容,并將定時(shí)器使能屬性設(shè)置為禁用,使得能夠用Call 方法調(diào)用全部運(yùn)行按鈕中的過(guò)程函數(shù),實(shí)現(xiàn)一個(gè)循環(huán)演示的效果。圖6 為總線ICD 消息序列運(yùn)行的主要實(shí)現(xiàn)結(jié)構(gòu)。
圖6 總線消息序列運(yùn)行實(shí)現(xiàn)結(jié)構(gòu)
該文在詳細(xì)分析1553B 總線數(shù)據(jù)傳輸?shù)幕A(chǔ)上,用Visual Basic 6.0 設(shè)計(jì)開(kāi)發(fā)了一款應(yīng)用于教學(xué)的1553B 總線仿真軟件。結(jié)合院校教學(xué)實(shí)際,詳細(xì)分析了軟件開(kāi)發(fā)需求,實(shí)現(xiàn)了1553B 總線基礎(chǔ)通信實(shí)驗(yàn)、1553B 總線消息調(diào)度實(shí)驗(yàn)、基于ICD 的消息調(diào)度實(shí)驗(yàn)。通過(guò)交互式的實(shí)驗(yàn)設(shè)計(jì),提高了實(shí)驗(yàn)操作自由程度與糾錯(cuò)能力,可更好地發(fā)揮用戶的主觀能動(dòng)性,通用性強(qiáng),較好地滿足了當(dāng)前1553B 總線培訓(xùn)教學(xué)中的實(shí)際需求。