Author(s):
David Hakey - Medtronic, Inc.
Patrick J. Ryan - Medtronic, Inc.
Johnny Maynes - Medtronic, Inc.
Industry:
Electronics, Biotechnology
Products:
NI-VISA, LabVIEW, FPGA Module, PXI-7811R
The Challenge:
構(gòu)成自動化的高電壓 (HV) 電擊器測試系統(tǒng),,以個別測試 12 組 HV 電擊器模塊,并可測試不同的產(chǎn)品類型,,縮短整體測試時間,。
The Solution:
使用 NI LabVIEW FPGA 軟件與 NI 智能數(shù)據(jù)采集 (DAQ) 硬件,建立非同步化的環(huán)境,;所有的 12 個模塊均具有獨立通訊埠,,并可自動執(zhí)行作業(yè)。
Medtronic 公司的測試工程團隊必須研發(fā)自動化的 HV 電擊器測試解決方桉,,且共 12 個測試模塊能夠個別測試 1 ~ 4 種不同的產(chǎn)品,,以縮短整體測試時間。透過 LabVIEW FPGA 與 NI 智能DAQ硬件,,團隊將模塊通訊速度從 20 KHz (平行通訊埠) 大幅提升至 1.7 MHz (FPGA),,而縮短整體測試時間。
前款手動系統(tǒng)即透過平行通訊埠同步執(zhí)行 12 個模塊,,僅可測試 1 種 HV 電擊器,,且測試 12 組儀器需耗時 135 分鐘。新的自動化系統(tǒng)可透過 FPGA 數(shù)位 I/O 通訊功能,,非同步執(zhí)行 12 個模塊,,并于 48 分鐘內(nèi)測試最多 4 種不同類型的共 12 項裝置。重入碼測試序列器 (Reentrant test sequencer) 與測試程式可獨立控制各測試模塊,,因此可由自動化裝置操作 (Handling) 系統(tǒng)引導(dǎo)進行各組測試作業(yè),。執(zhí)行測試的主機電腦整合自動化裝置操作系統(tǒng),,與 HV 電擊器測試系統(tǒng)。
測試自動化
AeroSpec 測試自動化操作系統(tǒng)將負責(zé)從 4 組輸入盤 (Input tray) 中取出待測裝置 (DUT),;透過光學(xué)自行辨識 (OCR) 功能讀取 DUT 序號,;將 DUT 載入或卸載 12 組測試模塊之一;最后根據(jù)測試結(jié)果,,將 DUT 置于 12 組輸出盤之一,。4 項不同的產(chǎn)品可設(shè)定于 4 組輸入盤中,每輸入盤可容納 20 組裝置,。
Test executive 系統(tǒng)為主控制器,,可提供使用者界面、主導(dǎo)測試模塊的負載與卸載程度,,并讓 Test manager 針對實際裝置或裝載于測試模塊的裝置,,進行 HV 電擊器測試。
Test manager 將決定受測產(chǎn)品,,并將該筆資訊送至 Test executive,,讓操作者選擇要進行測試的產(chǎn)品。操作者根據(jù)各系統(tǒng)設(shè)定以載入產(chǎn)品并開始測試,,測試處理器接著將 DUT 載入至測試模塊中,。一旦載入 DUT,即開始于特定模塊中進行測試,。Test executive 與測試處理器將于測試期間持續(xù)載入剩下的 DUT,,Test manager 將跟著測試每組 DUT 直至完畢。Test manager 可動態(tài)調(diào)用最多 12 組重入碼測試序列器 (Test Sequencer),,并接著動態(tài)調(diào)用重入碼獨立測試程序,。Test manager 將依據(jù)測試執(zhí)行檔啟動測試程序 (Test executive)。
系統(tǒng)將管理于 LabVIEW 圖形化程式設(shè)計環(huán)境中管理所有測試模塊與 DUT,。各測試模塊均具有靜態(tài)屬性集,其中數(shù)值將根據(jù)產(chǎn)品類型,、測試階段,、硬體設(shè)定,與其他處理屬性而有所變化,。當(dāng)目前 DUT 的測試作業(yè)結(jié)束,,測試系統(tǒng)將關(guān)閉記憶體內(nèi)的測試佇列。Test manager 將監(jiān)控測試狀態(tài),,并于 DUT 完成測試時通知 Test executive 測試通過/失敗狀態(tài),。Test executive 將接著讓測試器卸載 DUT,并將之放置于輸出盤 (Output tray) 中,。.接著另 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 重入碼。僅這些 subVI 即可形成系統(tǒng)瓶頸,,或包含可產(chǎn)生重入碼的總體 (Global) 功能,。此解決方桉則可降低整體系統(tǒng)記憶體的使用率,以提升相關(guān)效能,。所有 Test sequencer 與測試程式均使用相同 FPGA,,因此系統(tǒng)使用同步機制 (Semaphore) 或稱為載具 (Token),以控制各 PXI-7811R 模塊,。
所有 VI 均必須存取 FPGA 程序,,以初始化該同步機制。各 FPGA 系統(tǒng)均具有獨立同步機制,,可讓群組 A (1 ~ 6) 中的 1 個模塊存取第一個 FPGA 系統(tǒng),;而群組 B (7 ~ 12) 的 1 個模塊則幾乎同步存取第二個 FPGA 系統(tǒng)。每組 FPGA 的互動作業(yè)極為短暫 – 約幾個毫秒 (Millisecond),;因此該方式適于分配 FPGA 來源程序,,以支援 12 組對等程式。各模塊的各個測試程序約有 600 個 FPGA 互動作業(yè),。FPGAs 可非同步高速執(zhí)行 12 個模塊,,以處理系統(tǒng)可負荷的所有流量。