Medtronic 公司的測試工程團隊必須研發(fā)自動化的 HV 電擊器測試解決方桉,且共 12 個測試模塊能夠個別測試 1 ~ 4 種不同的產(chǎn)品,以縮短整體測試時間。透過 LabVIEW FPGA 與 NI 智能DAQ硬件,團隊將模塊通訊速度從 20 KHz ( 大幅提升至 1.7 MHz ,而縮短整體測試時間。
前款手動系統(tǒng)即透過平行通訊埠同步執(zhí)行 12 個模塊,僅可測試 1 種 HV 電擊器,且測試 12 組儀器需耗時 135 分鐘。新的自動化系統(tǒng)可透過 FPGA 數(shù)位 I/O 通訊功能,非同步執(zhí)行 12 個模塊,并于 48 分鐘內(nèi)測試多 4 種不同類型的共 12 項裝置。重入碼測試序列器與測試程式可獨立控制各測試模塊,因此可由自動化裝置操作 (Handling) 系統(tǒng)引導進行各組測試作業(yè)。執(zhí)行測試的主機電腦整合自動化裝置操作系統(tǒng),與 HV 電擊器測試系統(tǒng)。
測試自動化
自動化測試是把以人為驅(qū)動的測試行為轉(zhuǎn)化為機器執(zhí)行的一種過程。通常,在設(shè)計了測試用例并通過評審之后,由測試人員根據(jù)測試用例中描述的規(guī)程一步步執(zhí)行測試,得到實際結(jié)果與期望結(jié)果的比較。在此過程中,為了節(jié)省人力、時間或硬件資源,提高測試效率,便引入了自動化測試的概念。
軟件測試自動化的研究領(lǐng)域主要集中在軟件測試流程的自動化管理以及動態(tài)測試的自動化(如單元測試、功能測試以及性能測試方面)。在這兩個領(lǐng)域,與手工測試相比,測試自動化的優(yōu)勢是明顯的。首先自動化測試可以提高測試效率,使測試人員更加專注于新的測試模塊的建立和開發(fā),從而提高測試覆蓋率;其次,自動化測試更便于測試資產(chǎn)的數(shù)字化管理,使得測試資產(chǎn)在整個測試生命周期內(nèi)可以得到復用,這個特點在功能測試和回歸測試中尤其具有意義;此外,測試流程自動化管理可以使機構(gòu)的測試活動開展更加過程化,這很符合CMMI過程改進的思想。
AeroSpec 測試自動化操作系統(tǒng)將負責從 4 組輸入盤 (Input tray) 中取出待測裝置 (DUT);透過光學自行辨識 (OCR) 功能讀取 DUT 序號;將 DUT 載入或卸載 12 組測試模塊之一;根據(jù)測試結(jié)果,將 DUT 置于 12 組輸出盤之一。4 項不同的產(chǎn)品可設(shè)定于 4 組輸入盤中,每輸入盤可容納 20 組裝置。
Test executive 系統(tǒng)為主控制器,可提供使用者界面、主導測試模塊的負載與卸載程度,并讓 Test manager 針對實際裝置或裝載于測試模塊的裝置,進行 HV 電擊器測試。
Test manager 將決定受測產(chǎn)品,并將該筆資訊送至 Test executive,讓操作者選擇要進行測試的產(chǎn)品。一旦載入 DUT,即開始于特定模塊中進行測試。Test executive 與測試處理器將于測試期間持續(xù)載入剩下的 DUT,Test manager 將跟著測試每組 DUT 直至完畢。Test manager 可動態(tài)調(diào)用多 12 組重入碼測試序列器 ,并接著動態(tài)調(diào)用重入碼獨立測試程序。Test manager 將依據(jù)測試執(zhí)行檔啟動測試程序 (Test executive)。
系統(tǒng)將管理于 LabVIEW 圖形化程式設(shè)計環(huán)境中管理所有測試模塊與 DUT.各測試模塊均具有靜態(tài)屬性集,其中數(shù)值將根據(jù)產(chǎn)品類型、測試階段、硬體設(shè)定,與其他處理屬性而有所變化。當目前 DUT 的測試作業(yè)結(jié)束,測試系統(tǒng)將關(guān)閉記憶體內(nèi)的測試佇列。Test manager 將監(jiān)控測試狀態(tài),并于 DUT 完成測試時通知 Test executive 測試通過/失敗狀態(tài)。Test executive 將接著讓測試器卸載 DUT,并將之放置于輸出盤中接著另 1 組 DUT 將載入至測試模塊,以進行下個測試循環(huán)。各 12 個測試模塊均獨立進行 DUT 載入、測試,與卸載循環(huán)。自動化測試器則會將載入/卸載作業(yè)要求排入佇列。
共 2 組 NI PXI-7811R 模塊 則透過序列通訊 (SPI) 與 JTAG,分別溝通測試模塊與 DUT.此 2 個 NI PXI-7811R 模塊均執(zhí)行相同的 LabVIEW FPGA 程序,但具有不同的同步機制 (Semaphore) 與 NI-VISA 來源可控制該模塊。
Test sequencer 將從測試程式中動態(tài)呼叫測試 (Test case),以控制 DUT 測試作業(yè)。由于記憶體必須容納測試程式與多 12 組重入碼或 Test sequencer 的獨立備份,因此必須犧牲些許系統(tǒng)效能,以囊括所有 subVI 或 subfunction 重入碼。此解決方桉則可降低整體系統(tǒng)記憶體的使用率,以提升相關(guān)效能。所有 Test sequencer 與測試程式均使用相同 FPGA,因此系統(tǒng)使用同步機制或稱為載具 (Token),以控制各 PXI-7811R 模塊。
所有 VI 均必須存取 FPGA 程序,以初始化該同步機制。各 FPGA 系統(tǒng)均具有獨立同步機制,可讓群組 A (1 ~ 6) 中的 1 個模塊存取個 FPGA 系統(tǒng);而群組 B 的 1 個模塊則幾乎同步存取第二個 FPGA 系統(tǒng)。每組 FPGA 的互動作業(yè)極為短暫 – 約幾個毫秒 (Millisecond);因此該方式適于分配 FPGA 來源程序,以支援 12 組對等程式。各模塊的各個測試程序約有 600 個 FPGA 互動作業(yè)。FPGAs 可非同步高速執(zhí)行 12 個模塊,以處理系統(tǒng)可負荷的所有流量。