摘 要: 針對ATS中TPS的可移植性差的問題,在ATML框架下研究了面向信號的自動測試系統結構,提出了一種面向信號的自動測試系統資源分配方法。該方法使用信號作為測試系統內信息傳輸的接口,通過信號匹配為UUT端口分配儀器資源,解決了傳統的面向儀器的自動測試系統資源分配依賴硬件資源的問題,提高了TPS的可移植性。
關鍵詞: 自動測試系統; ATML; 面向信號; 資源分配; UML
中圖分類號: TN911.23?34; TP311 文獻標識碼: A 文章編號: 1004?373X(2013)19?0116?04
0 引 言
ATS(Automatic Test System,自動測試系統)能夠對被測設備進行自動測試、故障診斷。傳統的面向儀器的ATS中開發的TPS(Test Program Set,測試程序集)涉及對測試資源的直接訪問,當TPS在不同平臺之間移植或測試儀器資源改變時,測試程序需做大量改動,可移植性和重用性較差。
ATML(Automated Test Markup Language,自動測試標記語言)采用面向信號的結構對ATS進行標準化描述[1?2]。
ATML將測試需求描述為UUT端口的測量/激勵信號需求,測試資源能力描述為儀器資源端口的信號能力,通過信號匹配實現儀器資源的分配[3?4]。測試執行過程中,測試程序根據儀器資源分配的結果,調用面向信號的儀器驅動實現測試操作。基于ATML開發的TPS中不包含任何針對硬件資源的操作[5],當TPS在不同平臺之間移植時,資源分配模塊能夠重新為UUT端口分配測試儀器,提高了TPS的可移植性。
1 儀器能力描述
ATML ATS關系圖如圖1所示。
在ATS中,儀器的主要功能是產生或測量UUT端口的需求信號。傳統的測試儀器往往是功能單一的專用儀器,ATS中儀器數量眾多,隨著被測設備的增加,專用的測試適配器也越來越多,導致通用ATS的規模越來越龐大。近年來出現了以軟件控制的、以功能組合方式實現的合成儀器技術,如Ai7技術,將7種儀器的功能由一個合成儀器模塊來實現[6]。本單位自主研發的可重構儀器資源的每個通道可以軟件定義為AD/DA/計數器/DMM等常用的測試儀器資源,省去資源分配環節(信號開關矩陣);同時,可重構儀器具備超寬量程,可以不使用接口適配器進行信號調理。
為了實現面向信號開發的TPS的靈活重載和儀器的獨立,ATML不直接利用儀器的物理端口(Ports),而是在儀器描述文檔內定義信號能力(Capabilities)和邏輯資源(Resources),通過能力到資源的映射(CapabilityMap)和資源到端口的連接(NetworkList)實現不同的信號能力到儀器端口的分配[7]。整個測試系統的能力是測試工作站中所有儀器能力的總和。
以可重構儀器中的萬用表資源為例,其能力、資源和端口的映射關系如圖2所示。
(1)定義儀器的信號能力
儀器的信號能力定義了儀器能夠產生或測量的信號類型信息。儀器的信號能力使用STD的BSC(Basic Signal Component, 基本信號組件)庫和TSF(Test Signal Framework, 測試信號框架)庫進行描述,也可以使用BSC庫和TSF庫中基本信號的組合自定義測試需要的復雜信號。以直流電壓測量能力為例,幅值范圍為-400~400 V,精度為0.1%,其ATML描述如下:
(2)定義邏輯資源
邏輯資源定義了儀器內部的功能模塊,用于連接儀器的信號能力與物理端口。圖2所示的萬用表資源包含4個邏輯端口:P1、P2、P3、P4。
(3)定義儀器的物理端口
物理端口定義了儀器的外部端口,圖2中的端口:HI、LO、Sense_HI、Sense_LO。
(4)將信號能力映射到資源
儀器描述文檔中使用CapabilityMap元素描述信號能力與邏輯資源間的映射關系。其結構為:CapabilityMap/Mapping/Map/Node/Path。通過增加Mapping元素,將多個信號映射到同一個資源,可以描述一個資源能夠產生/測量多個信號,但是同一時刻只能產生/測量其中的一個信號;通過增加Mapping元素,將一個信號映射到多個資源,可以描述一個信號可以由多個資源產生/測量;通過在同一Mapping元素中將多個信號映射到一個資源,可以描述一個資源能夠同時產生/測量多個信號;通過在同一Mapping元素中將一個信號映射到多個資源,可以描述一個信號占用多個資源;通過在同一Mapping元素中添加多個Map元素,可以描述信號與資源間多個端口的連接;通過在同一Map元素中添加多個Node元素,可以描述信號與資源間一對多或多對一的連接;Path元素用于描述能力或資源端口在儀器描述文檔中的位置。通過上述搭配組合,可以完成對具體儀器功能間相互依賴或約束等復雜關系的描述[8]。
(5)將資源連接到物理端口
儀器描述文檔中使用NetworkList元素描述邏輯資源與物理端口間的連接關系。其結構為:NetworkList/Network/Node/Path。通過增加Network元素,描述資源與端口間的多條邏輯連接線路;Path元素用于描述資源端口和物理端口在儀器描述文檔中的位置。
2 測試需求描述
ATML在測試描述文檔中使用STD對測試需求進行了描述,UUT的所有端口和測試點所需的激勵信號或測量信號在元素TestDescription/DetailedTestInformation/Action/Behavior中描述[9]。Behavior元素的結構如圖3所示。
其中Operations元素和IeeeStd1641元素包含對STD標準的引用。以Operations元素為例,說明ATML中對測試需求的描述方法。Operations元素使用17種預定義類型的操作(Operation)來描述Behavior的行為,其中OperationSetup類型的操作用于創建需求信號,OperationConnect類型的操作用于將信號連接到UUT的端口或測試點。使用OperationConnect操作將OperationSetup中創建的信號signal1連接到UUT的某個端口,可以描述UUT該端口的需求信號為signal1信號。
3 儀器資源分配模塊設計
儀器資源分配模塊通過對測試需求與測試資源能力進行信號匹配,實現儀器資源端口到UUT端口的映射。采用UML(Unified Modeling Language,統一建模語言)描述儀器資源分配模塊的設計方案,其用例圖如圖4所示。
在儀器資源分配模塊中,通過加載測試描述文件、測試工作站描述文件和儀器描述文件,獲取測試需求信息和測試系統能力信息,通過信號匹配實現儀器資源的分配。
通過對圖4的分析,對用例進行抽象,得到儀器資源分配模塊的類圖如圖5所示。
對類圖中涉及到的類簡單介紹如下:
(1)儀器資源管理類:根據UUT各端口的信號需求及儀器能力列表分配儀器,生成儀器工作方式配置信息,并根據儀器與測試工作站的連接關系,得到工作站與UUT的連接關系,最終生成UUT端口到工作站端口的物理連接信息。
(2)儀器類:加載儀器描述ATML文檔,解析該文檔得到儀器能力、邏輯資源、儀器端口及能力到端口的映射信息;根據儀器資源分配結果,生成儀器工作方式配置文件。
(3)測試描述類:加載測試描述描述ATML文檔,解析該文檔得到UUT端口、測點及需求信號信息。
(4)測試工作站類:加載測試工作站描述ATML文檔,解析該文檔得到測試工作站端口、儀器資源信息及儀器與工作站的連接信息。
(5)物理連接類:根據儀器資源分配結果,生成UUT端口到測試工作站端口的物理連接文件。
通過對儀器資源分配模塊靜態模型的分析,得出系統對象隨時間交互的序列圖如圖6所示。
由圖6可知,儀器資源分配的過程為:解析測試描述文件,得到UUT各端口的需求信號;解析測試工作站描述,得到工作站中所有的測試儀器信息及儀器與工作站的連接關系;解析儀器描述文件,得到儀器能力列表及儀器能力到儀器端口的連接信息;根據UUT各端口的信號需求及儀器能力列表分配儀器,生成可重構儀器工作方式配置文件,并根據儀器與工作站的連接關系,得到工作站與UUT的連接關系,生成UUT端口到測試工作站端口的物理連接文件。
以活動圖的形式,對分配儀器資源操作進行說明,如圖7所示。
分配儀器資源的過程如下:
(1)查詢UUT端口需求信號列表,獲取UUT端口UUT_Port的需求信號R_Signal;若列表空則退出;
(2)查詢信號能力列表,獲取滿足需求信號R_Signal的信號能力A;若失敗則R_Signal未匹配成功,當前測試配置不能滿足測試需求,轉到(1);
(3)查詢CapabilityMap列表,獲取包含信號A的映射Mapping;若失敗轉到(2);
(4)由映射Mapping獲取產生/測量信號A的資源R;
(5)由資源列表查詢資源R是否空閑,若資源R已使用,轉到(3);若資源R空閑,轉到(6);若資源R條件空閑(即資源R能夠同時產生/測量多種信號,且已使用資源R產生/測量其中的一種或多種信號),轉到(7);
(6)查詢儀器的NetworkList列表,獲取資源R連接的儀器端口INST_Port;查詢測試工作站的NetworkList列表,獲取INST_Port連接的工作站端口Sta_Port,生成Sta_Port與UUT_Port的連接;測試儀器調用信號能力A對應的面向信號的儀器驅動,由INST_Port端口產生/測量UUT_Port端口的需求信號R_Signal;轉到(1)繼續匹配下一項;
(7)查詢資源R與儀器端口、工作站、UUT的連接列表,獲取資源R已連接的UUT端口R_UUT_Port;比較UUT端口UUT_Port和R_UUT_Port,若二者相同,則使用UUT_Port已連接的儀器產生/測量信號R_Signal,轉到(1)繼續匹配下一項;若二者不同,則轉到(3)。
當有多個儀器滿足測試需求時,應以一定的原則將儀器進行排序,確定最終選用的測試儀器。可以參考文獻10中提出的按照精度最高、按照儀器均衡使用、按照儀器使用習慣等調度方式,此處不再贅述。
4 結 語
本文研究了ATML中對測試系統能力和測試需求的面向信號描述方法,并給出具體的描述實例;使用UML詳細設計了儀器資源分配模塊的軟件結構。儀器資源分配模塊通過對測試系統能力和測試需求進行信號匹配,為UUT的待測端口分配儀器資源。面向信號的資源分配方法提高了ATS中TPS的可移植性,本文提出的方法可以為其他類似研究提供指導。
參考文獻
[1] IEEE Standards Coordination Committee 20. IEEE Standard for Automatic Test Markup Language (ATML) for exchanging automatic test equipment and test information via XML [S]. IEEE Standards Coordination Committee, USA, 2010.
[2] 路輝.自動測試系統測試描述語言[M].北京:機械工業出版社,2011.
[3] 王睿.基于ATML的自動測試系統軟件研究[J].儀器儀表學報,2011,32(6):184?188.
[4] 范書義,徐國華,王成.基于ATML的測試程序自動生成系統軟件體系結構[J].計算機測量與控制,2012,20(9):2571?2573.
[5] 趙鵬鵬,崔少輝,王詩源. ATML中的能力描述方法研究[J].信息技術,2013(1):88?91.
[6] 許屹暉,李執力,王震宇.新一代軍用ATS技術體制和關鍵技術研究[J].現代防御技術,2010,38(2):35?40.
[7] IEEE Standards Coordination Committee 20. IEEE Trial?Use Standard for Automatic Test Markup Language (ATML) for exchanging automatic test equipment and test information via XML: Exchanging Instrument Descriptions[S]. IEEE Standards Coordination Committee, USA, 2008.
[8] 徐理中.基于ATML的自動測試軟件的接口實現[D].太原:太原理工大學,2008.
[9] IEEE Standards Coordination Committee 20. IEEE Trial?Use Standard for Automatic Test Markup Language (ATML) for exchanging automatic test equipment and test information via XML: Exchanging Test Descriptions[S]. IEEE Standards Coordination Committee, USA, 2009.
[10] 劉昕.面向信號的測試資源映射技術研究[D].哈爾濱:哈爾濱工業大學,2011.