實時系統仿真測試平臺

1.設備組成

ETest_RT系統主要由硬件部分與軟件部分組成。硬件部分由上位機和實時下位機組成,上位機採用商用便攜計算機,下位機採用PXI測控計算機。上位機安裝Windows操作系統,運行設備資源管理、測試設計、測試調度、運行服務器、數據中心、運行客戶端、實時動作下載調試器;下位機安裝實時操作系統,運行裝載器模塊、實時進程模塊、上傳器模塊;下位機通過各類PXI接口板卡與被測系統相連。ETest_RT系統的硬件結構原理圖如下圖所示。
在這裏插入圖片描述
ETest_RT採用構件化分層的軟件開發框架,軟件底層代碼基於 GCC / CMake開發環境,採用C++語言開發;軟件上層集成框架基於Micosoft Visual Studio 開發環境,採用C# 語言開發,形成圖3-2所示的分層結構。
系統按從硬件到用戶抽象層次逐步提高的方式設計,劃分爲應用層、管理層、變換層和執行層。
應用層:用戶處理測試業務。對上,它爲用戶屏蔽系統的底層實現技術,使用戶專注於測試本身而不必關注系統的技術細節。對下,它調用各種數據,發佈測試腳本,指揮測試的啓動或終止。
管理層:系統接收用戶在應用層發出的指令,按邏輯單位調度和協調測試動作。對上,它爲應用層屏蔽系統的部署細節,使應用層不必爲部署差異而變化;對下,它將數據和指令分發到各個組件。
變換層:系統完成邏輯概念到物理實體的映射轉換。對上,它爲管理層屏蔽物理設備的工作細節,提供按邏輯單位組織的數據;對下,它向執行層發佈具體的硬件操作指令。
執行層:系統執行實際的物理動作。對上,它回報物理設備輸入的數據與狀態信息;對下,它操作硬件與被測系統交互。
軟件分設計態和運行態。系統工作於設計態時,不必進行完整軟硬件部署。用於規劃測試場景、設計測試方案、擬製測試用例、撰寫測試腳本、準備測試數據、設計數據監控。
系統工作於運行態時,必須按測試方案設計要求,部署相關軟硬件。用於實施測試方案,運行測試用例,執行測試動作,監控實時數據,獲取測試報告,得出測試結果。運行態又可按其部署在被測件與用戶之間的位置劃分爲控制端與執行端,其中執行端工作時無需人工值守。
在這裏插入圖片描述
使用ETest_RT平臺進行裝備嵌入式系統軟件測試的步驟如下(見圖3-3所示):
首先使用設備資源管理器進行設備資源規劃,利用測試設計軟件建立待測系統模型、設計測試用例及數據,形成測試方案文件。
測試調度臺載入測試方案後,分別啓動運行服務器、數據中心、數據監控器。
運行服務器對測試腳本進行解析,形成測試進程資源,通過實時上位機子系統編譯、鏈接,下載到實時下位機中。
實時下位機將實時腳本裝載,通過參數設置形成實時進程,實時進程在測試過程中,通過PXI總線形式的各類板卡與被測系統交互;
測試執行的過程中,實時下位機進程向實時上位機部分報送各類數據到數據中心,由數據中心向數據監控器和調度工作臺分發各類運行數據。
測試過程中可以通過測試數據記錄與查看軟件和測試監控軟件對測試數據進行監控、分析與評估。
在這裏插入圖片描述

2、各模塊主要功能

(1)硬件部分

硬件由上位機和實時下位機組成,上位機採用商用便攜計算機,下位機採用PXI測控計算機。接口板卡通過PXI接口直接同連接到測試下位機中,構成可滿足多種類型接口要求的測試環境。主要硬件部分的指標如下:

① PXI機箱

 緊湊型9槽PXI機箱,帶1個系統槽、1個觸發總線觸發槽和7個 PXI/Compact PCI外設槽
 0°C至+50°C的寬溫工作範圍
 41.6dBA超低運行噪音
 智能機箱管理
 5.9kg輕量鋁/鋼結構
 尺寸:280mm×177mm×303mm
 350W工業級交流電源
 電源、溫度和風扇監控LED

② PXI控制器

 Intel® Core™ 2 Duo P8400 2.53GHz處理器
 支持VGA+DVI 雙顯示
 雙通道 DDR3 SODIMM 16GB
 系統最大吞吐量 132 MB/s
 集成SATA 硬盤250G
 集成 I/O
 可編程看門狗定時器

③ 1553B總線板卡

 雙通道多功能,每通道爲雙冗餘的A、B通道
 支持1M/2M/4Mbps及用戶自定義波特率
 幀間隔和消息間隔時間可軟件設置
 支持時間戳,分辨率1μs
 支持自測試、錯誤注入
 支持中斷、支持外觸發
 BC模式(總線控制器)
 BC幀可編程 
 消息間隔可編程
 非週期性消息可動態插入
 數據雙Buffer
 可編程
 BusA、BusB可選
 支持分支跳轉消息
 支持錯誤注入
 RT模式(遠程終端)
 單數據Buffer
 雙數據Buffer
 子地址循環數據Buffer
 非法命令可編程
 支持錯誤注入
 BM模式(總線監視器)
 100%消息記錄
 監視數據可編程過濾
 接收時間戳

④ ARINC429總線接口板卡

 通道數:靈活配置通道數,最大8發8收
 通訊速率:100Kbps,12.5Kbps,50Kbps,48Kbps,98Kbps
 字間間隔:4bits,可程控

⑤ CAN總線板卡

 2通道
 通訊速率:支持1Kbps~1Mbps之間的任意波特率
 支持雙向傳輸,CAN發送、CAN接收
 兼容CAN2.0A和CAN2.0B協議

⑥ RS232/RS485/RS422總線接口板卡

 通道數:靈活配置通道數,最大4通道
 通訊速率:最高8Mbps
 通訊協議:RS232/422/485(可軟件設置)

⑦ 模擬量輸入AD

 8通道並行採樣
 ADC分辨率:16位
 最大采樣速率:100KS/s
 量程檔程控
 容量存儲:4MSa/通道

⑧ 模擬量輸出DA

 8通道模擬輸出
 DAC分辨率:16位
 16通道TTL/COMS數字IO, 輸入/輸出可程控
 2通道32bit計數器

⑨ 數字量輸入/輸出

 32通道TTL/COMS電平兼容數字I/O
 每通道光電隔離
 最高傳輸速率1MHz
 大容量存儲4MB/通道

⑩ 上位機

 CPU: 雙核 i5-6200U 2.3GHz
 內存:DDR4 2133MHz,8GB
 固態硬盤:256GB
 顯示屏幕:14英寸,分辨率1920*1080
 獨立顯存:2GB

(2)設計工作臺

設計工作臺對待測系統及其對外接口進行建模,進行協議編輯及分析、創建測試監控、建立硬件規劃、創建及管理測試用例,確定測試要準備的接口設備數量。其主要功能包括:
 進行測試方案管理,針對測試方案的操作有:新建方案、打開方案、保存方案。
 每個測試方案中,可以包含一個到多個測試項目,多個測試項目的存在使得每個測試方案可以完成多個測試項目的設計,便於開展多個配置項到系統的集成測試。
 測試項目有新建、重命名、刪除和查看屬性的操作。
 用圖形化的方式對被測系統、外圍系統及被測系統對外接口進行描述,包括接口數量和接口類型,包括RS422、1553B、CAN、AD、DA、DI、DO、CT、Freq-CT、TCP等類型;能夠設定接口參數。
 創建接口協議,並使用協議描述語言進行協議描述,包括報文包頭、包尾、校驗等,描述各個字段類型及編碼方式,以及分支、循環等結構。
 爲了適應各種數據通信的需要,協議字段具有豐富的類型,包括:整形(無符號和有符號,8位/16位/32位/自定義長度)、浮點型、布爾類型、條件語句類型、分支語句類型、計算字段、校驗字段、數組字段。
 創建測試監控,描述實時數據監控的監控內容和顯示形式,並可設定報警條件。
 用戶可以在測試監控模塊添加測試監控並在監控面板上添加數據監控儀器,通過不同的類型監控儀器綁定協議字段或者字段按照某種公式運算的結果,從而在運行時通過監控儀器指針或數值的改變直觀地顯示出測試通訊時數據的變化。
 測試監控工具欄管理所有的測試監控儀表,包括數字表儀器,圓盤儀表,曲線圖,枚舉類型等。選擇合適的監控儀表,將其拖拽到監控面板的合適的位置,即可添加該監控儀表到監控面板上。用鼠標拖拽監控儀表的邊緣,即可調整其大小。
 打開“屬性”標籤頁,可以修改測試儀表的屬性。其中最重要的屬性是“協議段”屬性,表明了該監控儀表的數據來源。
 通過“協議段”屬性右側的展開按鈕,可以打開“綁定數據協議”對話框,其中顯示當前項目中的仿真模型中的所有的協議和協議段。
 測試儀表的數據源,既可以是一個協議字段,也可以是若干個協議字段組成的公式。
 在“綁定數據協議”對話框下部的輸入框中輸入協議字段,或協議字段組成的公式。雙擊需要的字段名稱,可以添加該字段名稱到自定義公式的光標所在位置。
 創建測試硬件規劃,確定測試需要使用的接口板卡設備,以及接口板卡設備對應的資源。
 創建測試用例,並提供測試用例的管理方式,包括分組、刪除、重命名等。
 創建測試用例的內容,包括使用測試腳本描述測試的過程,包括變量定義、條件語句、循環語句、輸出語句、數學運算、函數定義等。
 提供測試腳本的擴展接口,能夠實現向待測件的數據交互和數據自動解析,將比特流解析成具有意義的用戶數據。
 提供時序控制的方式,能夠按照一定的時序進行規定的操作。
 提供運行環境設置方式,設置測試運行期間的仿真模型服務器、數據中心服務器、測試執行服務器和客戶端的IP地址和端口號。
 提供對標準輸入輸出監控進行配置的功能,確定標準輸入輸出監控的類別配置。
 提供測試腳本執行方式,能夠運行用戶選擇的測試腳本;用戶能夠選擇終止腳本運行。
 能夠查看輸出信息及錯誤信息。

(3)測試運行服務軟件

測試運行服務軟件包括測試調度臺、運行服務器和數據中心,它們是與客戶端軟件相配合,驅動測試數據,進行自動化測試執行。主要實現以下功能:
 提供進程調度服務後臺運行程序,在進程調度代理的幫助下,根據測試設計軟件的設計,在測試主機上啓動測試執行、客戶端、服務器等進程,並通過進程調度服務協調各個軟件的運行邏輯。
 提供仿真模型服務器後臺運行程序,通過仿真模型服務器解析測試設計所建立的仿真模型,實現測試執行時數據收發的仿真解析服務。
 提供數據中心服務器後臺運行程序,在測試用例執行過程中,在數據中心服務器中集中統一處理通道中的收發收據,確保數據監控的分佈式實現。
 提供用例服務器後臺運行程序,解析處理測試設計中所編寫測試用例的執行過程。
 提供標準輸入輸出監控窗口程序,可以顯示仿真模型服務器、數據中心服務器、客戶進程以及用例服務器運行過程中的調試信息。
 解析測試腳本中的變量定義、條件語句、循環語句、輸出語句、數學運算、函數定義等語句,進行相應的操作。
 解析測試腳本擴展接口,實現向待測系統進行數據發送/接受和數據解析。
 解析測試腳本,按照時序控制要求進行操作。
 在測試啓動時記錄所有輸入數據;在測試過程中記錄所有輸入/輸出數據;在測試完成後自動生成彙總報表。
 按照用戶要求即時停止測試用例的執行。
 記錄並顯示測試用例的執行結果。

(4)運行客戶端和數據監控器

運行客戶端介於測試執行服務器與上位機之間,執行通信代理,負責數據的轉發和客戶端測試過程的管控,爲上位機提取環境數據。數據監控器則以虛擬儀表或圖表方式顯示當前測試數據。兩個模塊主要實現以下功能:
 管理實時子系統,建立實時子系統與運行態控制端之間的連接關係。
 爲實時子系統提供運行資源。
 登錄測試服務軟件後,顯示測試設計軟件設計的全部測試監控界面,可選擇一個或多個測試監控面板進行測試監控。
 運行指定的測試監控,在測試執行過程中實時顯示指定的測試數據,提供數字儀器、儀表盤、枚舉項、曲線圖等數據監控方式。
 可以實時顯示測試執行中的測試數據;
 可以以解析後的協議數據格式顯示測試數據,也可以以二進制、八進制、十六進制顯示測試數據。
 可以設置數據過濾條件,實現界面顯示特定數據的功能。
 可以設置數據報警條件,當出現某種特性數據時,軟件以醒目的形式顯示出滿足報警條件的數據。
 可以進行數據查詢,可以查詢某個時間段的報文,也可以查詢某個協議字段的數據。
 可以對指定的數據進行統計,也可以查看數據曲線圖。

(5)設備資源管理

設備資源管理軟件模塊提供了系統支持的測試設備及通道的管理功能,提供了系統設備擴展的接口。其主要實現以下功能:
 添加、刪除系統設備。
 修改系統設備的數量。
 添加、刪除設備包含的通道。
 修改設備包含的通道的數量及類型。
 保存設備信息到設備資源文件中,在測試設計軟件中使用。

(6)運行態執行端實時上位機

運行態執行端是實現實時性的關鍵子系統,包括實時上位機和實時下位機。其形態如下圖所示(虛線框是系統的其它部分):
在這裏插入圖片描述
實時上位機有環境管理、編譯器、下載調試器、數據格式化等模塊。
 環境管理模塊,管理所有輸入的元數據。這些數據用於腳本解析、數據格式化。環境管理的設計是集成性原則所要求的。環境數據目前已知有如下類別:設備規劃、協議描述、仿真模型和動作腳本。
 編譯器,綜合環境管理所提供的元數據,編譯產生可供下位機實時操作系統運行的二進制代碼。由於主要的編譯工作在設計態時即已完成,這裏主要是鏈接。編譯器工作的主要內容有:將測試模型提取爲“實時動作腳本語言”對象;全局優化;鏈接仿真模型、協議描述語言、RASL三個部分,加入主框架,形成實時程序;當系統被置於調試狀態時,嵌入調試信息。
 下載調試器將編譯器編譯的結果發送到下位機。當系統處於調試狀態時,對實時動作腳本進行調試。調試器支持以下功能:遠程調試、程序載入、程序掛接、手動中斷、斷點設置、變量觀察和單步執行。
 數據格式化,對上傳給數據中心的數據進行格式化處理,主要是利用環境管理數據還原名稱與結構等元數據。

(7)運行態執行端實時下位機

運行態執行端實時下位機包含裝載器、實時進程和上傳器等模塊。
 下位機裝載器,從上位機接收程序,設置環境,載入並啓動代碼。可以接收上位機指令,通知程序關閉。當系統處於調試狀態時,啓動調試 stub 供上位機調試器連接。
 下位機實時進程,由裝載器啓動上位機程序啓動生成,它具體完成實時測試動作。實時進程的代碼主框架固定,以靜態庫的形式存放在上位機的編譯器那裏。在主框架中嵌入仿真代碼、測試動作代碼後形成完整的程序。所以實時進程具有通用的基本通信能力,包括可接收裝載器的關閉指令,可向上傳器發送相關數據。當系統處於調試模式時,實時進程會包含必要的調試代碼。
 下位機上傳器從實時進程接收數據,並異步向上位機上傳。

(8)輔助工具

工具軟件提供了嵌入式系統測試時部分常用的軟件工具,主要包括以下軟件模塊:
 曲線數據生成工具:具有曲線數據編輯、座標選擇、曲線數據讀取、曲線數據存儲等功能,配合測試執行軟件,提供一種測試數據生成手段。
 測試數據記錄與查看工具:在測試執行時,可記錄測試執行中的數據,供測試執行結束後查看與分析,包括協議選擇、數據過濾、報警條件設置功能。
 應用協議生成工具;提供應用協議的表格化編輯功能,可以設置協議的字段組成、字段類型、字段默認取值等。
 CRC插件診斷器與CRC插件生成器:提供CRC校驗算法的設計功能,可設計自定義的CRC算法,診斷其算法正確性,並最終形成協議描述語言中的CRC字段算法插件。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章