周 華
(中核武漢核電運行技術股份有限公司,湖北武漢 430223)
全范圍模擬機(Full Scope Simulator,FSS)是指用于核電站操作人員培訓和執照考試的專用設備。《HAF103核動力廠運行安全規定》[1]提出為了滿足核電站的安全運行要求,必須使用模擬機對操縱員進行培訓。所以核電廠全范圍模擬機(FSS)成為了核電工程建設主路徑上的關鍵設備;同時全范圍模擬機的性能和質量將直接影響核電廠操縱員培訓效果,也對核電廠的安全運行有著重要的影響。
目前,全范圍模擬機的設計開發涉及到核電廠工藝系統模型仿真技術、分布式控制系統(Distributed Control System,DCS)仿真技術、計算機仿真支撐軟件技術等多領域技術,而且屬于一項軟件與硬件高度集成的系統化工程。其中,測試工作是全范圍模擬機項目開發過程中關鍵環節,是保證模擬機產品質量的有效手段。而科學高效的測試管理方法和工具將有利于提高測試效率的同時保證測試質量。
一臺全范圍模擬機可分為硬件設備和運行軟件兩部分。
硬件設備包括布置在全范圍模擬機主控室(Main control room,MCR)、遠方停堆站(Remote Shutdown Station,RSS)、技術支持中心和教練員室的所有設備,后臺運行服務器以及相互之間的接口設備。全范圍模擬機主控室和遠方停堆站是參照參考機組實際運行的主控室進行1:1的布置,目的是還原操縱員實際的工作環境,讓受訓人員在感官上不會產生與實際工作時的差異,從而提高培訓的逼真度;教練員站提供給教員控制模擬機以及模擬主控室之外操作的場所;后臺運行的服務器主要運行模型計算程序來模擬參考機組特定的工況場景。典型的硬件拓撲結構見圖1。
全范圍模擬機應對參考機組的所有系統特性進行完全的、綜合的和實時的仿真,再現參考機組在正常、異常和事故工況下的狀態演變。主控室設備以高逼真度仿真的方式實現,以確保模擬機主控室和實際機組主控室之間沒有明顯的差異。模擬范圍應涵蓋參考機組冷停堆工況至滿功率工況、各事故工況以及其他運行狀態(包括停堆換料期間的狀態)。

圖1 典型全范圍模擬機硬件拓撲圖
全范圍模擬機測試內容主要包括堆芯性能測試,工藝系統過程模型測試,故障測試,機組啟停測試,瞬態測試和場景測試,DCS功能測試、性能測試和故障測試,硬盤臺性能和功能測試,模擬機應用軟件測試,模擬機系統整體性能測試等。測試的目的在于發現各個設計階段程序中的錯誤,驗證模擬機整體功能和性能是否符合項目技術規格書及操縱員培訓所規定的技術要求,確認全范圍模擬機軟件質量。全范圍模擬機可分為6個階段。
(1)單元測試。對于工藝模型來說就是系統分調測試,包括部件測試、參數驗證;對于DCS仿真系統來說是指控制邏輯驗證和DCS軟件功能及性能測試。
(2)集成測試。模擬機各個分系統功能設計完成后進行系統間的集成,集成調試主要驗證系統間的接口是否完善,集成調試的目標是建立穩定的初始工況。
(3)工廠測試。在建立初始工況后,根據驗收測試規程對集成后的模擬機性能進行測試,主要內容是正常變工況測試、故障測試、瞬態測試和軟件功能測試。
(4)出廠驗收測試。模擬機完成工廠測試后確認滿足出廠要求,由模擬機用戶方或委托第三方參與產品的出廠驗收測試,驗證模擬機的性能滿足相關技術指標的要求。
關于刀片的優化方案,主要是通過參考割草機上常用的、工藝性良好的刀片確定的。市面上常見的割草機刀片大概有彎曲刀片、異形刀片和平直刀片(原方案)三種,故優化方案2采用原刀盤和圖11所示的彎曲刀片。
(5)現場驗收測試。出廠驗收通過后,模擬機設備發往現場進行安裝調試,在軟硬件設備安裝調試完成后進行現場驗收測試。現場驗收通過后可交由使用方進行操作人員培訓及考試。
(6)數據更新階段測試。全范圍模擬機始終是需要保證其計算結果和呈現出來的響應與參考機組保持一致,這樣才能保證培訓效果。隨著參考機組實際工程進度的推進,模擬機可陸續的獲取到參考機組的調試數據和運行數據,因此,模擬機研制過程一般會有2~4次的數據更新,使用參考機組數據來對模擬機設計進行修正,從而達到模擬機上的響應與參考機組的實際響應一致。
各階段測試范圍見表1。

表1 測試階段與測試內容
測試需求分析是測試計劃階段的關鍵任務,準確而完整的測試需求是保障軟件測試結果有效的基礎和條件[2]。全范圍模擬機測試需求分析是根據模擬機合同技術附件、行業標準和軟件需求規格書等上文件,將全范圍模擬機的功能要求分解成較小而且相對獨立的測試項,從而建立測試需求與上游需求文件的追蹤關系。
首先,從上游文件中獲取對全范圍模擬機在功能和性能上的要求并確定驗收標準,同時設計出模擬機驗收的測試類,比如分系統測試、綜合啟停測試、故障測試、第三方軟件測試等,而這些測試類在全范圍模擬機測試大綱中進行描述,與之對應的是各個測試規程分冊。確定測試類別之后,對于每一類別的測試分冊進行詳細的需求分析,形成每個測試分冊的測試條目文件。比如華龍一號全范圍模擬機中關于分系統需求分析過程如下。
(1)確定分系統測試規程清單。
(2)測試內容條目化(表2)。
(3)將測試條目作為相應測試規程編制的輸入,建立對應關系。

表2 分系統測試條目示例
3.2.1 高效的測試管理工具
高效的管理工具是所有管理工作的重要組成部分。孟平等(2004)[3]提出“測試管理系統有助于對制定測試計劃編寫、測試用例和測試步驟、問題的跟蹤處理、測試總結報告等各個階段進行有效的控制和管理,以提高軟件開發尤其是產品測試的管理水平,保證軟件產品質量”。項目配置管理軟件Sim原CMS是獨立用于配置管理的軟件系統,用于支持模擬機的開發、維護、升級等全壽期的變化跟蹤和控制,其主要功能有:系統維護、文件配置項管理、硬件數據配置管理、設計數據管理、差異管理和基線控制。配置管理軟件采用服務器/客戶端的工作模式。其中的差異管理,即不符合項管理模塊是一個典型的測試管理工具。不符合項管理模塊這種電子化管理系統改變了以前靠紙質偏差單或者簡單的Excel表格來記錄、跟蹤、管理模擬機測試過程的落后管理方式,通過標準的電子化流程來嚴格規范不符合項的處理流程,同時還可以對不符合項進行查詢和統計并通過報表輸出等功能對不符合項進行趨勢分析,從而更好的掌控模擬機的測試過程及測試質量,另外,測試過程的記錄可以完整并長期保存。電子化管理系統可以通過網絡平臺,解決了不符合項處理過程中跨地域、跨網絡、跨平臺、多項目、多角色、多人員交互等一系列技術和管理問題,極大的提供了測試過程中不符合項的處理效率,有效的節約了項目開發時間。
首先人員角色和職責由各個項目的項目經理在系統中完成配置,項目經理在整個流程中的作用是負責角色定義、權限分配、問題協調;測試工程師負責不符合項報告的填寫、跟蹤處理情況、回歸測試及關閉;制定責任人是指各個專業的工程師,比如模型工程師、儀控工程師,主要負責根據不符合項的描述進行修改并提交,同時對于嚴重程度屬于重大或較大的不符合項制定修改方案;項目技術負責人首先對新增的不符合項進行確認,甄別出是否屬于不符合項,同時還需要對重大或較大不符合項的修改意見進行審查。不符合項處理流程中共有以下幾種狀態:new(新產生),Not DR(非不符合項),Commented(暫不處理),Fixed(已修改),Offered(待測試),Closed(關閉),Closed_C(讓步接受),Open(未通過)以及Defer(遺留項)。
3.2.2 采用自動化測試工具
自動化測試是指測試人員根據功能需求或者接口功能編寫自動的測試腳本,通過測試腳本的自動執行測試步驟,將測試輸出結果與期望輸出進行比較,同時監控和管理測試執行過程[3]。因此,測試人員可以脫離繁瑣的測試執行及管理過程,集中精力于測試用例的設計上,從而極大地提供測試工作的效率。但不是所有的測試過程都適合自動化測試,通過分析全范圍模擬機測試工作的特點,可以在不符合項的回歸測試、重復性的測試內容、對時間沒有依賴的測試內容或者已經實現手工測試用例等方面采用自動化測試工具。
(1)穩態運行數據精度測試。模擬機行業標準[4]中提到“應證實模擬機能夠在有完整的參考機組數據的3個功率水平上準確的模擬參考機組的穩態響應,該3個功率平臺應至少跨越50%額定運行功率范圍”。為了滿足標準的要求,全范圍模擬機需要進行穩態運行數據精度的測試,該項測試在內部測試階段、出廠驗收階段、現場驗收階段、數據更新階段都會進行,具有重復性高、數據記錄工作量大的特點,因此專門開發了針對穩態運行精度測試的自動化測試工具checkdata。在進行測試之前,只需要輸入指定的IC(Initial Conditions,初始條件)號、選擇檢查時間以及基準參數配置文件后,工具將自動記錄測試數據,自動與參考數據進行比較,并生成測試結果,如圖2所示。從生成的測試結果上初步判斷出哪些參數不符合預期。同時測試結果可直接導出Excel格式的文件。
(2)自動化場景測試。全范圍模擬機在交付使用之前需要進行多輪次的能力測試,包括正常變工況測試、故障工況測試和瞬態工況測試。這些測試結果與模擬機培訓內容息息相關,是模擬機測試中重要的環節。而這些測試存在相對固定的測試步驟,并且產生的不符合項比較多。因此,可以使用自動化場景測試工具。自動化場景測試是通過完整記錄第一次人工測試的操作步驟,這些操作步驟包括教員的教控命令和學員的操作并以場景文件的方式保存下來;當需要再次執行同一測試內容時,以調用場景的方式自動順序執行相同的操作步驟。場景工具操作界面如圖3所示。

圖2 自動化穩態測試工具界面及輸出結果

圖3 自動化場景測試工具
自動化場景測試工具還可幫助修改人員快速定位不符合項的問題所在,提高修改效率,同時也可用于不符合項的回歸測試,節約測試人力和測試時間。
全范圍模擬機進入集成測試階段之后,為了保證測試的獨立性以及測試進度,在條件允許的情況下充分利用多平臺進行測試和修改。而每個平臺同樣包括工藝過程仿真軟件、安全級和非安全級DCS軟件,對于每一類軟件又分為平臺軟件和工程數據。因此,全范圍模擬機軟件對版本控制的要求更高,測試版本必須有明確的標識和說明,能夠得到有效的控制。測試版本的控制手段主要有以下3個方面。
(1)建立測試基線版本。每一個測試版本都有唯一的標識號,比如V1.0.0。對于測試版本的配置項信息由專人進行維護。
(2)確定備份內容和備份周期。確定全范圍模擬機軟件需要備份的內容與實際的軟件是如何對應的,即平臺軟件存放在哪個目錄中,工程數據存放在哪個目錄中,而且每次備份內容都有時間標簽加以區分;備份周期有幾種形式:定時備份,及每周或每月固定時間進行備份;平臺軟件在每次升級前后進行手動備份;每個測試階段完成后進行階段性備份。
(3)規范更新流程。采用限制登陸權限的方式來保證測試版本不被進行任何修改。更新工作由專人負責執行,且已明確更新內容和更新步驟,更新前做好備份。原則上采用增量更新的方式,即先通過運行對比腳本獲取測試版本與即將更新內容之間的差異,然后將差異內容進行更新。
加強測試需求管理,提高測試的覆蓋率和充分性,建立科學高效的測試管理方法,開發和使用自動化測試工具,采用嚴格標準的測試控制流程,這些舉措都是保證模擬機產品質量、提供測試效率的有效手段。只有科學地進行測試管理,并堅持以測試管理問題為導向,積極探索、尋找解決方案和措施,持續改進,才能促進模擬機測試管理隊伍的成長,促進模擬機質量的提高。