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字段算法插件。