王振華,孫振華,孫世杰
(許繼電氣股份有限公司,許昌 461000)
隨著微電子技術(shù)、計(jì)算機(jī)技術(shù)、信息技術(shù)的不斷發(fā)展,繼電保護(hù)技術(shù)也得到了迅速的發(fā)展,從最初的電磁式保護(hù)裝置發(fā)展到如今的集網(wǎng)絡(luò)化、智能化、保護(hù)測控于一體的微機(jī)繼電保護(hù)測控裝置,并且在電力系統(tǒng)中廣泛應(yīng)用[1,2].電力系統(tǒng)量測控制設(shè)備是構(gòu)建智能電網(wǎng)的基礎(chǔ),實(shí)現(xiàn)智能電網(wǎng)目標(biāo)的載體[3],其能否正常運(yùn)行直接影響到電力系統(tǒng)運(yùn)行的可靠性和安全性.CPU板卡作為繼電保護(hù)測控裝置的核心板卡,其硬件功能的正確性及性能的好壞,直接關(guān)系到裝置運(yùn)行的安全性和可靠性.在繼電保護(hù)CPU板卡生產(chǎn)調(diào)試階段,需要對各功能模塊進(jìn)行測試,從功能上進(jìn)行驗(yàn)證及對關(guān)鍵性能指標(biāo)進(jìn)行評估[4],以保證滿足設(shè)計(jì)的要求.傳統(tǒng)的人工測試方法費(fèi)時(shí)費(fèi)力,甚至無法達(dá)到測試目的,并且操作繁瑣,重復(fù)作業(yè),容易出錯.
在測試過程中引入自動化工具進(jìn)行自動化測試,是一種非常實(shí)用高效的方法[5–7].目前的繼電保護(hù)自動測試系統(tǒng)主要針對保護(hù)測控裝置進(jìn)行設(shè)計(jì),而針對CPU板卡的自動測試開發(fā)較少.為加快生產(chǎn)測試流程,提高測試效率,本文設(shè)計(jì)了一種繼電保護(hù)CPU板卡的硬件自動測試系統(tǒng).該自動測試系統(tǒng)采用模塊化、層次化設(shè)計(jì),通用性強(qiáng),自動化程度高,測試過程無需人工干預(yù),有效避免人工測試過程中漏測測試項(xiàng)、錯接測試線等造成的質(zhì)量隱患,極大縮短CPU板卡的生產(chǎn)調(diào)試周期.
CPU 板卡是在分析和借鑒了國內(nèi)外同類產(chǎn)品基礎(chǔ)上,從技術(shù)和開發(fā)手段的先進(jìn)性,軟硬件資源的通用性,系統(tǒng)的可靠性等方面考慮,開發(fā)研制的高性能保護(hù)測控插件.目前本公司CPU板卡主要采用PowerPc架構(gòu)處理器 MPC8377、MPC8313、MPC8309,以及 Xilinx公司的ARM+FPGA組合架構(gòu)ZYNQ-7000 系列等高性能處理器作為主控制芯片,構(gòu)建保護(hù)控制自動化系統(tǒng)硬件平臺.
綜合考慮各類CPU板卡,按照板上各種硬件資源所實(shí)現(xiàn)的功能不同,可以將CPU板卡資源劃分為表1所列功能模塊.本文CPU板卡是對CPU保護(hù)插件、通信管理插件等使用高性能處理器作為主控芯片的相關(guān)插件統(tǒng)稱.
表1 CPU 板卡功能模塊及描述
隨著電力系統(tǒng)的不斷發(fā)展,電力系統(tǒng)保護(hù)自動化裝置的功能需求更加多樣化,繼電保護(hù)CPU板卡的硬件功能模塊也會不斷發(fā)展壯大.
本自動測試系統(tǒng)中所用到的測試方法都是以CPU板卡的模塊化分析為基礎(chǔ)的,根據(jù)CPU板卡各種硬件功能模塊的特點(diǎn),采用不同的測試方法,實(shí)現(xiàn)硬件功能模塊的自動化測試,進(jìn)行功能驗(yàn)證和性能評估,并按照功能模塊對測試結(jié)果進(jìn)行記錄、歸檔.
CPU板卡自動測試系統(tǒng)遵循模塊化、通用性、實(shí)用性、經(jīng)濟(jì)性的總體設(shè)計(jì)原則,從硬件組成上分為測試管理裝置、被測輔助裝置、PC上位機(jī)等幾部分,其總體架構(gòu)如圖1所示.PC上位機(jī)與測試管理裝置之間使用以太網(wǎng)通信,實(shí)現(xiàn)測試命令的下發(fā)及測試結(jié)果的最終上送.測試管理裝置與被測輔助裝置內(nèi)的CPU 被測板卡通過以太網(wǎng)通信,實(shí)現(xiàn)測試交互.測試管理裝置還通過通用異步串口與被測輔助裝置內(nèi)的測試輔助板通信,下發(fā)數(shù)模轉(zhuǎn)換命令,產(chǎn)生AD通道測試所需的模擬量,施加到CPU 板卡的模擬通道上.在部分硬件模塊(以太網(wǎng)、串口等)測試時(shí),測試管理裝置與CPU板卡之間需要通過相應(yīng)通道接口進(jìn)行數(shù)據(jù)報(bào)文收發(fā)、產(chǎn)生測試參考信號等.
圖1 系統(tǒng)總體架構(gòu)
測試管理裝置主要由電源插件、核心控制插件、以太網(wǎng)通信插件、以太網(wǎng)轉(zhuǎn)接插件、串口擴(kuò)展插件、出口擴(kuò)展插件等部分組成,各部分通過背板連接.各插件主要采用公司現(xiàn)有的供貨板卡,只需針對該裝置設(shè)計(jì)專用背板插件,以節(jié)約產(chǎn)品開發(fā)成本.測試管理裝置的主要功能包括:接收上位機(jī)發(fā)送的測試命令,向被測CPU板卡轉(zhuǎn)發(fā)測試命令;接收背測板測試結(jié)果,并向上位機(jī)轉(zhuǎn)發(fā)測試結(jié)果;提供足夠的光以太網(wǎng)口、電以太網(wǎng)口、RS232/RS485串口、開出等物理接口,及其它各類輔助測試資源.測試管理裝置的功能組成框圖如圖2所示.
圖2 測試管理裝置功能組成框圖
為提高整個(gè)測試系統(tǒng)的通用性,測試管理裝置的功能資源應(yīng)按照最大化的要求進(jìn)行設(shè)計(jì),以滿足各類CPU板卡的測試需要.測試管理裝置具體實(shí)現(xiàn)以下功能:
(1)1 路電以太網(wǎng)口,與上位機(jī)通信;
(2)1路電以太網(wǎng)口,與被測CPU板卡通信;
(3)1路RS232串口,與被測輔助裝置內(nèi)輔助測試板卡上的DA 轉(zhuǎn)換模塊通信,發(fā)送DA 轉(zhuǎn)換命令;
(4)8路電以太網(wǎng)口,用于測試被測CPU板卡的電以太網(wǎng)口;
(5)8路光以太網(wǎng)口,用于測試被測CPU板卡的光以太網(wǎng)口;
(6)3路RS485,用于測試被測CPU板卡的RS485串口;
(7)2路RS232,用于測試被測CPU板卡的RS232串口;
(8)1路光B碼和1路電B碼輸出,為被測CPU板卡光B碼測試提供參考信號;
(9)14對出口觸點(diǎn)信號,用于輔助測試被測CPU板卡的開入通道;
(10)2 路光纖通道,用于測試被測 CPU 板卡的光纖通道.
被測輔助裝置主要由電源插件、被測CPU 板卡、FPGA輔助測試板卡等幾部分組成,各部分通過背板實(shí)現(xiàn)電氣信號連接,其中FPGA輔助測試板卡為新設(shè)計(jì)插件.被測輔助裝置主要功能包括:為被測CPU插件提供供電電源;在FPGA輔助測試板卡的輔助下完成擴(kuò)展開入、擴(kuò)展開出、擴(kuò)展總線、按鍵通道、液晶控制信號、IO 信號等硬件功能模塊的測試工作.
FPGA輔助測試板為被測輔助裝置的重要組成部分,主要由FPGA可編程邏輯器件、電平轉(zhuǎn)換電路、以太網(wǎng)口轉(zhuǎn)接電路及DA轉(zhuǎn)換模塊等組成,如圖3所示.
圖3 FPGA 輔助測試板組成框圖
被測CPU板卡所有背板端子引線經(jīng)背板全部轉(zhuǎn)接至FPGA輔助測試板.被測板通過背板端子上的總線與FPGA輔助測試板實(shí)現(xiàn)信息交互.FPGA可編程邏輯器件通過檢測相應(yīng)背板引線上電平參考信號的變化,產(chǎn)生測試結(jié)果并反饋給被測CPU 板卡;或主動給相應(yīng)背板引線輸出電平參考信號,由被測CPU板卡回讀該電平參考信號并產(chǎn)生測試結(jié)果.電平轉(zhuǎn)換電路將背板端子的出口、按鍵等的24V或5V電平轉(zhuǎn)換為3.3V電平信號連接到FPGA可編程邏輯器件.以太網(wǎng)口轉(zhuǎn)接電路將CPU板卡背板網(wǎng)口引線轉(zhuǎn)接到FPGA輔助測試板前面板上的RJ45端子,與測試管理裝置實(shí)現(xiàn)通信,實(shí)現(xiàn)信息交互.DA轉(zhuǎn)換模塊主要由微控制器及DA轉(zhuǎn)換芯片組成,通過前端子的串口接收測試管理裝置發(fā)送的數(shù)據(jù)包,選擇并通過相應(yīng)通道輸出電壓或電流模擬量.
FPGA輔助測試板的設(shè)計(jì)使用為擴(kuò)展開入、擴(kuò)展開出、擴(kuò)展總線、按鍵通道、液晶控制信號、IO 信號等硬件功能模塊的測試提供一種高效便捷的測試方法,不需要借助產(chǎn)品整裝置來完成測試,并且不需要額外的測試設(shè)備施加激勵,節(jié)約了測試成本.
PC上位機(jī)測試管理軟件基于Windows操作系統(tǒng),用于CPU板卡測試用例的編輯、測試命令下發(fā)及測試信息管理等.PC上位機(jī)與測試管理裝置使用以太網(wǎng)通信,通過定時(shí)收發(fā)心跳報(bào)文檢測和指示通訊線路通訊狀態(tài);發(fā)送測試命令給測試管理裝置,并接收測試管理裝置上送的測試結(jié)果.通過TCP與UDP協(xié)議對比分析,在局域以太網(wǎng)上采用UDP進(jìn)行內(nèi)部通信比較合適,根據(jù)該系統(tǒng)的應(yīng)用特點(diǎn),傳輸層協(xié)議采用UDP通信協(xié)議.UDP 協(xié)議不需要建立連接,響應(yīng)速度快,具有較少的流量控制和差錯控制,系統(tǒng)開銷比較小[8–10].
軟件功能模塊結(jié)構(gòu)如圖4所示,主要包括以下功能模塊:
圖4 PC 上位機(jī)測試管理軟件結(jié)構(gòu)
(1)用戶管理:包括用戶登錄驗(yàn)證、用戶注銷、密碼設(shè)置;
(2)測試命令下發(fā):發(fā)送啟動自動測試命令及中止測試命令;
(3)測試過程輸出展示:將測試過程及結(jié)果分模塊展示,便于掌握測試進(jìn)度;
(4)測試報(bào)告生成:將測試結(jié)果信息按規(guī)定格式保存為PDF文件;
(5)系統(tǒng)參數(shù)設(shè)置:根據(jù)設(shè)置的參數(shù)進(jìn)行系統(tǒng)設(shè)置,并將參數(shù)保存到配置文件中;
(6)報(bào)文監(jiān)視:實(shí)時(shí)查看以太網(wǎng)通信鏈路上原始報(bào)文數(shù)據(jù),便于系統(tǒng)調(diào)試;
(7)通信狀態(tài)指示:指示通信鏈路的工作狀態(tài).
測試用例包括具體CPU 板卡型號、硬件功能模塊測試項(xiàng)以及各硬件模塊相應(yīng)測試參數(shù)設(shè)置,如收發(fā)數(shù)據(jù)包數(shù)量、數(shù)據(jù)包長度、通道數(shù)、模擬量值、等待時(shí)間等.采用xml類型的文件編輯存儲,每個(gè)硬件功能模塊測試項(xiàng)對應(yīng)其中的一個(gè)元素,元素可以有子元素和屬性.每種不同類型板卡可對測試項(xiàng)目進(jìn)行勾選并保存下來建立測試用例庫,測試管理軟件根據(jù)所測試的CPU 板卡型號,自動選擇調(diào)用相應(yīng)測試用例文件,完成自動測試.
測試管理軟件能夠?qū)y試過程實(shí)時(shí)展示出來,并且在測試完成后,根據(jù)規(guī)格要求將測試結(jié)果生成PDF文件保存起來,以便測試人員查看、歸檔.
按照測試方法的不同,將被測CPU板卡的硬件功能模塊分為三大類,分別為:裝置輔助類、板上自檢類和背板引線類.
裝置輔助類硬件功能模塊包括以太網(wǎng)口、RS485/RS232串口、B碼對時(shí)、光纖通道、開入等,其特點(diǎn)是測試過程需要在測試管理裝置的輔助作用下完成.CPU 板卡上該類模塊通過與測試管理裝置上的相同類型模塊收發(fā)數(shù)據(jù)或接收測試管理裝置下發(fā)的參考信號,實(shí)現(xiàn)對其功能及性能測試評估.
裝置輔助類硬件功能模塊測試流程為:如圖5所示,上位機(jī)首先通過網(wǎng)口E給測試管理裝置網(wǎng)口E1發(fā)送測試命令,測試管理裝置通過網(wǎng)口E2將測試命令轉(zhuǎn)發(fā)給被測輔助裝置中CPU板卡的網(wǎng)口E,CPU板卡接收到測試命令后進(jìn)入測試模式.
圖5 裝置輔助類硬件功能模塊測試流程示意圖
下面分兩種情況說明:
(1)當(dāng)CPU板卡待測模塊T為網(wǎng)口、串口等通信接口時(shí),CPU板卡通過T給測試管理裝置的T發(fā)送數(shù)據(jù)包,測試管理裝置接收到數(shù)據(jù)包后對數(shù)據(jù)包內(nèi)的方向標(biāo)志取反后發(fā)回給CPU板卡,CPU板卡對定量收發(fā)的數(shù)據(jù)包進(jìn)行比較統(tǒng)計(jì),產(chǎn)生測試結(jié)果.
(2)當(dāng)CPU板卡待測模塊T為開入或B碼時(shí),測試管理裝置在收到測試命令后,通過T輸出參考信號,CPU板卡待測模塊T通過檢測該信號狀態(tài)變化或?qū)υ撔盘栠M(jìn)行解碼,判斷待測模塊的工作狀態(tài),產(chǎn)生測試結(jié)果.CPU板卡將測試結(jié)果通過網(wǎng)口E反饋給測試管理裝置網(wǎng)口E2,再通過測試管理裝置網(wǎng)口E1發(fā)送給上位機(jī),實(shí)現(xiàn)對該模塊功能及性能測試評估.
板上自檢類硬件功能模塊主要包括測溫模塊、實(shí)時(shí)時(shí)鐘、電壓監(jiān)測、FLASH、DDR等,CPU板卡上該類模塊沒有端子引線,通過自身讀寫自檢測試實(shí)現(xiàn)對其功能及性能測試評估.
板上自檢類硬件功能模塊測試流程為:如圖6所示,板上自檢類硬件功能模塊測試中,上位機(jī)與測試管理裝置之間的通信同裝置輔助類硬件功能模塊測試過程.當(dāng)CPU板卡E網(wǎng)口接收到測試管理裝置E2網(wǎng)口轉(zhuǎn)發(fā)的測試命令后,待測硬件模塊T進(jìn)入讀寫自檢測試,產(chǎn)生測試結(jié)果,實(shí)現(xiàn)對該模塊功能及性能測試評估.
圖6 板上自檢類硬件功能模塊測試流程示意圖
背板引線類硬件功能模塊主要包括擴(kuò)展開入、擴(kuò)展開出、AD通道、按鍵通道、液晶控制信號、擴(kuò)展總線、IO信號等.CPU板卡上該類模塊信號經(jīng)背板端子連接至FPGA輔助測試板,在FPGA輔助測試板的配合下實(shí)現(xiàn)對其功能及性能測試評估.
背板引線類硬件功能模塊的測試主要是通過FPGA輔助測試板實(shí)現(xiàn)的.如圖7所示,當(dāng)CPU板卡E網(wǎng)口接收到測試管理裝置E2網(wǎng)口轉(zhuǎn)發(fā)的測試命令后,待測模塊T進(jìn)入測試模式.CPU板卡通過背板總線實(shí)現(xiàn)與FPGA輔助測試板交互,由于不同模塊背板引線信號的方向不同,測試實(shí)現(xiàn)中會有所不同.
(1)CPU板卡背板引線信號方向?yàn)檩敵龅男盘?FPGA輔助測試板接收到相應(yīng)模塊的測試命令后,進(jìn)入檢測背板連線信號變化工作狀態(tài),CPU板卡控制背板連線信號變化,FPGA輔助測試板根據(jù)檢測情況產(chǎn)生測試結(jié)果,并將結(jié)果暫存到FPGA內(nèi)部寄存器中,待CPU板卡通過背板總線讀取測試結(jié)果.
圖7 背板引線類硬件功能模塊測試流程示意圖
(2)CPU板卡背板引線信號方向?yàn)檩斎氲男盘?FPGA輔助測試板接收到相應(yīng)模塊的測試命令后,控制相應(yīng)背板連線信號變化,CPU檢測信號變化情況,據(jù)此產(chǎn)生測試結(jié)果.
(3)AD通道測試時(shí),測試管理裝置通過串口S以固定幀格式發(fā)送數(shù)字量、AD通道號給FPGA輔助測試板的DA轉(zhuǎn)換模塊,DA轉(zhuǎn)換模塊將數(shù)字量轉(zhuǎn)換為模擬量信號,并輸出給被測CPU板卡相應(yīng)模擬量通道,CPU讀取AD采樣值并與測試管理裝置通過以太網(wǎng)通信口發(fā)送的數(shù)字量值進(jìn)行比較,據(jù)此判斷AD采樣通道功能是否正常.
FPGA輔助測試板的設(shè)計(jì)使用,為背板引線類硬件功能模塊的測試提供了高效快捷的測試方法.下面以擴(kuò)展總線測試舉例說明該類CPU模塊測試軟件的具體實(shí)現(xiàn).擴(kuò)展總線包括片選信號、讀寫信號、8位數(shù)據(jù)線、8位地址線,測試軟件流程如圖8所示.
圖8 擴(kuò)展總線測試軟件流程圖
(1)CPU板卡通過擴(kuò)展總線向FPGA輔助測試板0x00地址進(jìn)行一次寫操作,啟動測試;
(2)CPU板卡通過擴(kuò)展總線依次讀地址0x01、0x02、0x04、0x08、0x10、0x20、0x40、0x80;
(3)CPU判斷所讀數(shù)據(jù),每次讀數(shù)應(yīng)為相應(yīng)地址的反碼(FPGA進(jìn)行邏輯處理),否則輸出異常;
(4)輸出測試結(jié)果.
使用該方法能夠同時(shí)測試到地址線與地址線、數(shù)據(jù)線與數(shù)據(jù)線、地址線與數(shù)據(jù)線、地址線與VCC、數(shù)據(jù)線與VCC、地址線與GND以及數(shù)據(jù)線與GND之間是否短路,數(shù)據(jù)線、地址線、控制線連接是否正確,實(shí)現(xiàn)了對擴(kuò)展總線的全面測試.
目前,該自動測試系統(tǒng)已經(jīng)應(yīng)用于MPC8313、MPC8377系列處理器相關(guān)的CPU板卡生產(chǎn)過程的測試之中.以某型號的微機(jī)測控裝置內(nèi)的CPU板卡為例,該CPU板卡上待測硬件功能模塊如表2所示.
表2 某型號 CPU 板卡測試項(xiàng)
從表中各功能模塊的測試時(shí)間來看,開入、AD通道、以太網(wǎng)、B碼對時(shí)等幾項(xiàng)測試所用時(shí)間較多,而使用FPGA輔助測試板完成的測試項(xiàng)如擴(kuò)展總線、液晶控制信號、IO信號、按鍵通道等所用時(shí)間較少.從PC上位機(jī)啟動測試開始,到測試完成生成測試報(bào)告,整個(gè)測試過程不需人工干預(yù),該CPU板卡測試時(shí)間約為59 s,與傳統(tǒng)人工測試至少30分鐘以上測試時(shí)間相比,測試效率大幅提高.由于各類CPU板卡的板上硬件功能模塊的差異,測試時(shí)間會有所不同,綜合分析各類板卡,其測試時(shí)間均在2分鐘以內(nèi).
CPU板卡自動測試系統(tǒng)采用模塊化、層次化設(shè)計(jì),主要由測試管理裝置、被測輔助裝置、PC上位機(jī)等幾部分組成.根據(jù)CPU 板卡上各硬件功能模塊的特點(diǎn),將其分為三大類,分別采用不同的測試方法,實(shí)現(xiàn)了CPU板卡硬件功能模塊的自動測試,節(jié)省了人力物力成本,減少測試過程中的人為錯誤,極大縮短產(chǎn)品的生產(chǎn)調(diào)試周期.進(jìn)一步地,使用工業(yè)機(jī)器人配合該自動測試系統(tǒng),實(shí)現(xiàn)測試系統(tǒng)的接線、更換待測CPU板卡、下載測試程序等各工序的自動化作業(yè)[11],提高測試準(zhǔn)備等生產(chǎn)測試各個(gè)環(huán)節(jié)的生產(chǎn)效率,能夠更好地發(fā)揮自動測試系統(tǒng)的作用.