杜一村,楊晨,李玉峰
鄭州機電工程研究所,河南鄭州450015
為了保證艦船在發生戰斗破損或火災等緊急情況后仍能保持其生命力,需要損管系統對損害進行有效施救,更需要艦員在技術與心理上做好充分準備[1]。因此,損害管制行動的日常訓練是一個極為重要的問題。由于抗沉與滅火訓練的特殊性,一般無法進行實操,所以便需要采用損管訓練系統對艦員進行訓練與考核[2]。
在艦船訓練系統的研究上,美國處于世界領先水平。他們很早就提出了嵌入式模擬訓練的概念,即將訓練設備嵌入到實裝內,使裝備具有訓練和作戰的雙重功能。美國已研制出成熟的海軍艦艇訓練激勵系統(On-Board Training System,OBTS),它是一個綜合性的嵌入式水面艦艇模擬訓練系統,能生成協調、綜合、虛擬的戰場環境,合成與海區可能發生的情況非常相似的復雜作戰想定,并通過艦艇的實裝設備呈現給作戰分隊,為他們提供如同海上航行訓練一樣的訓練機會[3]。
我國對全艦模擬訓練系統的研究尚處于起步階段,各分區的訓練系統研究也還不成熟。其中,損管訓練系統的研究大都集中在技術理論以及模擬器產品上,雖然采用了人工智能、虛擬現實等先進技術[4-6],能夠滿足艦員的岸基訓練,但并不能在實船上裝備,因此會存在態勢失真、時效性差等問題。
本文擬根據嵌入式模擬訓練的設計理念,針對損管訓練系統下的某安全監控系統模擬訓練軟件(以下簡稱“模擬訓練軟件”)進行設計與實現,該軟件能夠在實船裝備狀態下通過與訓練臺的通信,模擬產生不同等級的報警信號,使艦員學習和熟悉軟件界面以及相應的操作流程,通過在模擬訓練環境下的日常訓練達到完全熟悉和熟練掌握某安全監控設備的功能和操作使用方法的目的,以保障在正常監控狀態下艦員遇到報警事件時能夠輕松應對、正確操作、快速處理[7-8]。
損管訓練系統是針對各損管監控臺位的操作人員,為其在日常訓練情況下操作虛擬設備和實船裝備、演練基本流程、了解系統基本執行原理、觀察學習報警及反饋信息功能,同時為損管指揮流程的訓練提供支撐的系統。
損管訓練系統主要由訓練臺以及各分系統模擬訓練軟件組成,各分系統模擬訓練軟件嵌入到各監控臺上運行,其結構原理框圖如圖1所示。
模擬訓練軟件主要由主程序模塊、登錄模塊、訓練處理模塊、報警處理模塊、界面信息顯示模塊、以太網數據收發模塊、數據輸入輸出(I/O)模塊、控制局域網(Controller Area Network,CAN)數據收發模塊以及實時數據庫等組成,如圖2所示。
主程序模塊主要負責完成軟件中各測點狀態邏輯條件及各監控艙室綜合狀態邏輯條件的判斷;登錄模塊負責完成艦員模擬訓練前的登錄驗證;訓練處理模塊主要負責配合訓練臺完成模擬訓練專業流程的處理;報警處理模塊負責完成模擬訓練報警事件的產生,以及報警后的聲光控制及按鈕操作處理;界面信息顯示模塊主要負責完成模擬訓練監控界面中各測點狀態信息的實時顯示;以太網數據收發模塊主要負責完成以太網數據的封裝、解析、接收及發送功能;數據輸入輸出模塊主要負責完成各按鍵信息的采集輸入及各指示燈、蜂鳴器狀態控制信號的輸出;CAN數據收發模塊主要負責完成CAN數據的封裝、解析、接收及發送功能;實時數據庫負責完成各測點數據信息的實時存儲。
模擬訓練軟件和實時監控軟件共同運行于監控臺上,兩個軟件共享指示燈、蜂鳴器、按鍵、旋鈕等硬件資源。為了有效實現硬件資源共享及兩個軟件功能的完美融合,兩個軟件通過共享內存變量進行通信,其原理框圖如圖3所示。輸出控制變量內存區用于兩個軟件對指示燈及蜂鳴器的綜合控制,輸入控制變量內存區用于兩個模塊對艦員操作按鍵信息的采集,綜合報警變量區用于模擬訓練軟件應急狀態下的自行調度,即模擬訓練軟件在工作過程中監測到綜合報警變量有效,自行退出模擬訓練流程。
艦員訓練時,首先通過監控臺上的工作/訓練轉換開關進行訓練模式切換,并通過模擬訓練軟件的登錄界面向訓練臺發送身份驗證信息,待訓練臺驗證通過后監控臺進入正常訓練模式。訓練臺操作人員通過訓練臺模擬軟件設置報警信息,然后自動將報警信息發送至監控臺模擬訓練軟件,艦員通過模擬訓練監控界面查看當前的報警信息,并能根據當前的模擬報警信息使消防設備模擬投入操作,訓練臺接收到消防設備模擬投入操作指令后,向模擬訓練軟件反饋相應的消防設備狀態信息。訓練結束時,彈出結束訓練信息提示對話框,并根據操作人員的選擇,確定是否顯示考評結果。其工作流程圖如圖4所示。
由于組態軟件在數據采集與過程控制上具有優勢,故采用組態軟件作為開發環境,具體開發步驟主要有:定義I/O設備、建立數據庫點、設計圖形界面、動畫連接、添加函數及動作等[9-10]。
1)定義I/O設備。
與組態軟件交換數據的現場總線控制系統(Fieldbus Control System,FCS)、可編程邏輯控制器(Programmed Logic Controller,PLC)、板卡、智能儀表等設備可看作I/O設備,需要定義數據庫變量才能與外設交換數據。模擬訓練軟件定義I/O設備,用于軟件與指示燈、蜂鳴器、按鈕等的數據交互。
2)建立數據庫測點。
I/O設備運行的狀態保存在組態軟件數據庫點參數中。在數據庫中,用戶操作的對象是測點,系統也以測點為單位存放各種信息。由于數據庫可以與多個I/O設備進行數據交換,所以必須指定測點與相應I/O設備建立數據連接。
模擬訓練與實時監控使用的報警測點相互獨立,可綁定不同的I/O連接,但指示燈、蜂鳴器、按鍵、旋鈕等硬件資源共享,只能綁定同一I/O連接,所以只能使用其腳本語言進行內部判斷,然后控制I/O設備。
3)設計圖形界面。
圖形界面可直觀地顯示監控情況。組態軟件提供了工具箱、圖庫以及豐富的控件,以方便進行界面制作。
模擬軟件界面從上到下依次劃分為菜單欄、工作區和報警條。菜單欄用于監控功能界面的切換,由按鈕區、名稱區和日期時間區組成。工作區主要顯示具體的監控畫面,由圖形、表格、文字等組成。報警條顯示詳細報警事件,主要包括報警日期、報警時間、報警優先級和報警內容等信息。
4)動畫連接。
為了使設計出來的圖形能反映模擬訓練的運行狀況,需要使靜態的畫面具有動畫效果,進行動畫連接。應用程序的對象通過數據庫變量連接數據庫點,數據庫測點參數的變換使應用程序對象的屬性(顏色、數值、隱現)發生變化。
5)添加函數及動作。
將一些重復利用的功能腳本添加到自定義函數中,然后可以在其他腳本或表達式中調用。這種做法不僅減少了代碼量,而且降低了程序的維護工作量。
在應用程序動作腳本的程序運行周期執行中添加對報警測點的檢測功能,以實現自動監控,周期執行的流程圖如圖5所示。
數據改變動作腳本與變量的連接,以變量的數值改變作為觸發事件。每當變量的數值變化時,腳本即執行一次。以工作/訓練旋鈕切換為例,其流程圖如圖6所示。
軟件開發完成后,其運行效果如圖7所示。用戶只有通過身份驗證后才可進行模擬訓練,模擬訓練界面中除標題欄有醒目標識外,其余區域顯示與實時監控相似。
模擬訓練軟件開發完成后,由第三方機構進行了測評,主要測試類型及方法如表1所示。測試結果表明,該軟件滿足規定的功能、性能、接口、邊界等要求。此外,該項目還進行了會議評審,獲得業界專家、使用方代表等的一致認可。

表1 軟件測試類型及方法Table 1 Test types and methods of the simulation training software
1)統一的系統頂層設計。
為保證模擬訓練模式下的信息流程、運行流程與實時監控模式保持一致,需要進行系統層面的頂層設計,在安全監控系統所有關聯的系統設備中增加訓練模式和相應的功能。
2)消防設備模擬投入防誤動作。
為了防止在模擬訓練模式下消防設備模擬投入時真實消防設備發生誤動作,在硬件設計上所有指令按鈕或旋鈕全部采用自復位式,確保每次按鈕或旋鈕操作的時效性和針對性;在軟件設計上,當采集到I/O輸入信號由0變為1再變為0為一次有效信號時,才將對應的消防設備控制指令送出。
3)真實損害報警信號優先。
在軟件設計全過程中,堅持實時監控功能為主、模擬訓練功能為輔的原則,采用真實報警信號優先技術,確保在訓練模式下對真實報警狀態不間斷實時監控,當發生真實報警時能快速、有效地做出相應對策。
1)各臺位的時間協同。
訓練臺通過周期發送和訓練開始前發送這2種方式向各參訓臺發送時間信息,以此實現時鐘同步,然后統一安排各參訓臺在訓練科目上的開始、持續、終止等時間,使各參訓臺在行動上達成時間上的協調一致。
2)實時數據傳輸和數據實時響應。
訓練臺與參訓臺、參訓臺與參訓臺之間都需要大量的數據交互,因此采用主動觸發機制和回調機制來保證數據的時效性。
3)分布數據儲存功能。
每一個參訓臺都將記錄其訓練過程中的報警數據及具體操作,訓練臺將記錄所有參訓臺位詳細的訓練內容。所有記錄均可長期儲存,并能便捷查詢。
訓練評估是建立在一系列的評估規則之上,通過從臺位上收集到的大量信息數據,如環境態勢、指揮決策、協同效果、操作響應等,進行海量的數據挖掘、分析,并由中心處理器計算得出一個評估報告,對整個訓練科目及各參訓臺訓練情況做出成績評定。
本文對某艦用安全監控系統模擬訓練軟件的功能需求、體系結構和工作流程等進行了研究,分析了模擬訓練軟件與實時監控軟件的相互影響,并以此為基礎對模擬訓練軟件進行了開發。通過解決訓練與實裝互聯、協同訓練、訓練評估等關鍵技術,成功研制出嵌入安全監控系統的模擬訓練軟件,并通過了相關軟件測試,可進行實船裝備。該系統可提高艦員的訓練質量,為某艦用裝備提供安全保障。