了解用于自動化測試的模塊化儀器系統(tǒng)
設(shè)備的日趨復(fù)雜和技術(shù)的漸進(jìn)融合迫使測試系統(tǒng)變得更加靈活。盡管成本的壓力要求系統(tǒng)具有更長的生命周期,測試系統(tǒng)仍須適應(yīng)設(shè)備隨時間變化而帶來的各種變化。而實(shí)現(xiàn)這些目標(biāo)的唯一途徑便是采用一種軟件定義的模塊化架構(gòu)。本文將通過使用虛擬儀器來解釋軟件定義的概念,為硬件平臺和軟件實(shí)現(xiàn)提供多種選擇,并討論模塊化系統(tǒng)是如何滿足理想ATE的需求。
目前就本質(zhì)而言,有兩種類型的儀器應(yīng)用,虛擬儀器和傳統(tǒng)儀器。圖1描述了這兩種類型儀器的架構(gòu)。
Figure 1. Comparing traditional and virtual instrumentation architectures, both share similar hardware components; the primary difference between the architectures is where the software resides and whether it is user-accessible.
兩種類型儀器的相似之處。兩者都具有測量硬件、一個機(jī)箱、一個電源、一根總線、一個處理器、一個操作系統(tǒng)和一個用戶界面。由于這兩類儀器使用相同的基本組件,所以從純硬件的角度來看,兩者間最明顯的區(qū)別在于如何將這些組件進(jìn)行封裝。一個傳統(tǒng)的(或獨(dú)立的)儀器會將所有的組件放在同一個盒子(這個盒子適用于任何一個獨(dú)立儀器)中。通過GPIB、USB或LAN/局域網(wǎng)控制的手動儀器便是這類獨(dú)立儀器的一個范例。這些儀器是作為獨(dú)立實(shí)體設(shè)計(jì)的,其主要設(shè)計(jì)目的并不是系統(tǒng)應(yīng)用。雖然傳統(tǒng)儀器數(shù)量眾多,但就儀器本身而言,其軟件處理和用戶界面都是固定的,僅當(dāng)廠商選擇更新時才可以被更新,而且如何更新也取決于廠商的選擇(例如,通過固件升級)。因此,用戶要想進(jìn)行傳統(tǒng)儀器功能列表中未包括的測量是不可能的,而且,對于一個傳統(tǒng)儀器,根據(jù)新的標(biāo)準(zhǔn)進(jìn)行測量,或者根據(jù)需求的變化調(diào)整原系統(tǒng),都是極具挑戰(zhàn)的。
相比之下,一個通過軟件定義的虛擬儀器使得用戶可以訪問來自硬件的原始數(shù)據(jù),以便自定義測量和用戶界面。通過這種軟件定義的方式,用戶可以進(jìn)行定制測量,根據(jù)新的標(biāo)準(zhǔn)進(jìn)行測量,或者根據(jù)需求變化調(diào)整系統(tǒng)(例如增加儀器、通道或測量)。盡管用戶定義軟件可用于獨(dú)立的、特殊應(yīng)用的硬件,但其理想的搭配還是通用的模塊化硬件,它能使測量軟件的靈活性和性能得到充分發(fā)揮。這種靈活的自定義軟件與可擴(kuò)展硬件的組合,便是模塊化儀器的核心所在。
模塊化儀器可以采取多種形式。在一個設(shè)計(jì)良好的模塊化儀器系統(tǒng)中,許多組件,例如機(jī)箱和電源,都為多個儀器模塊所共用,而不是為某一儀器功能重復(fù)配置這些組件。這些儀器模塊也可以包含不同類型的硬件,包括示波器、函數(shù)發(fā)生器、數(shù)字化儀與RF等。在某些情形下(如圖2所示),測量硬件僅僅是一個安裝于主機(jī)的某個外設(shè)端口或外設(shè)插槽的外設(shè)。在此情形下,主機(jī)PC提供用以完成軟件測量的處理器,以及用于電源供應(yīng)和I/O的機(jī)箱。
Figure 2. Examples of measurement hardware choices for modular instrumentation include a USB peripheral module on the left, and a PCI Express plug-in module on the right.
在另一些情形下,例如PXI(PCI的儀器拓展)——一個用于測試、測量和控制的穩(wěn)固平臺,并由超過70個成員公司所支持——測量硬件被安裝于一個工業(yè)機(jī)箱(如圖3所示)。
Figure 3. This example of a modular instrumentation system uses PXI hardware and NI LabVIEW graphical development software.
在一個PXI系統(tǒng)中,主機(jī)可以嵌入機(jī)箱(如圖3所示),或者是通過線纜接口控制測量硬件的獨(dú)立的便攜機(jī)、臺式機(jī)或服務(wù)器。由于一個PXI系統(tǒng)使用與PC內(nèi)部相同的總線(PCI和PCI Express)和現(xiàn)有的PC組件來實(shí)現(xiàn)對系統(tǒng)的控制,因此,無論是使用PXI系統(tǒng)還是PC,相同的模塊化儀器概念均可等同應(yīng)用。(然而,PXI確實(shí)為模塊化儀器提供了一些此處未展現(xiàn)的其它優(yōu)點(diǎn),如更高的通道數(shù)、便攜性和穩(wěn)固性(了解關(guān)于PXI的更多信息,請?jiān)L問ni.com/china/pxi)。)不論系統(tǒng)使用PXI、帶有內(nèi)插式模塊的臺式機(jī)或是帶有外設(shè)I/O模塊的臺式機(jī),這種共享機(jī)箱和控制器的方式都大大降低了成本,同時也使用戶能夠?qū)y量與分析軟件進(jìn)行控制。雖然模塊化儀器存在多種配置選擇,但該類型儀器與傳統(tǒng)儀器的區(qū)別之處在于,其軟件是開放的,因此當(dāng)測試需求發(fā)生變化或傳統(tǒng)儀器無法完成測量時,用戶可以自定制測量。
值得注意的是,這種模塊化方法并不意味著,在與將所有功能連接到單一盒子內(nèi)的傳統(tǒng)儀器相比時,會存在儀器或通道間同步的問題。相反地,模塊化儀器的設(shè)計(jì)目的在于可被集成以供系統(tǒng)使用。所有的模塊化儀器均通過共享的時鐘和觸發(fā)器,提供定時和同步的能力。例如,就最高同步精度而言,基帶、IF和RF儀器可以以低于100 ps儀器間偏移的精度進(jìn)行同步——優(yōu)于同一臺儀器的多個通道間的同步偏移。
雖然術(shù)語“模塊化”有時會僅僅基于硬件封裝而被錯誤使用,但模塊化儀器所涵蓋的內(nèi)容遠(yuǎn)不止封裝。用戶期望一個模塊化系統(tǒng)能帶來三方面的收益——通過共用機(jī)箱、背板和處理器帶來成本的降低和外形尺寸的減小,通過與主處理器的高速連接帶來更快的吞吐量,以及通過用戶定義的軟件實(shí)現(xiàn)更大的靈活性與更長的生命周期。
如上所述,一個模塊化儀器系統(tǒng)中的所有儀器共用一個電源、機(jī)箱和控制器。而獨(dú)立儀器則為每一個儀器重復(fù)配置電源、機(jī)箱和(或)控制器,從而增加了成本與尺寸并降低了可靠性。事實(shí)上,無論使用何種總線結(jié)構(gòu),每個自動化測試系統(tǒng)都需要計(jì)算機(jī)進(jìn)行控制;在模塊化架構(gòu)下,所有儀器共用同一個控制器,從而使得在整個系統(tǒng)范圍內(nèi)分擔(dān)成本。在模塊化儀器系統(tǒng)中,G赫茲計(jì)算機(jī)處理器通過軟件分析數(shù)據(jù)并完成測量。其測量結(jié)果十倍于甚至百倍于僅由傳統(tǒng)儀器構(gòu)建的測試系統(tǒng)(這些系統(tǒng)使用內(nèi)置的廠商定義的固件和專用處理器)的吞吐量。例如,一個典型的矢量信號分析儀(VSA)每秒可以完成0.13次帶內(nèi)功率測量,然而一個NI模塊化VSA每秒可以完成4.18次帶內(nèi)功率測量——提高近33倍。
模塊化儀器需要一個高帶寬、低延遲的總線將儀器模塊與共享處理器相連接,以執(zhí)行用戶定義的測量。雖然USB在易用性方面提供了極好的用戶體驗(yàn),但PCI與PCI Express(以及以這些總線為基礎(chǔ)拓展所得的PXI平臺)在模塊化儀器中提供了最佳性能。目前, PCI Express提供高達(dá)4 GB/s的插槽,而PXI提供帶寬高達(dá)2GB/s的插槽——超過高速USB 33倍,100 Mb/s以太網(wǎng)的160倍,甚至是即將推出的千兆以太網(wǎng)的16倍(如圖4所示)。外設(shè)總線(例如LAN與USB)總是通過一個內(nèi)部總線(例如PCI Express)與PC處理器相連,因而理論上總會導(dǎo)致性能下降。我們以一個模塊化RF采集系統(tǒng)為例,來討論高速總線如何影響測試與測量。在一個臺式機(jī)或PXI系統(tǒng)中,一個帶有4個2 GB/s的PCI Express插槽,可以將兩個通道100 MS/s 的16位IF(中頻)數(shù)據(jù)直接輸送到處理器供運(yùn)算。由于LAN與USB都不能滿足這些需求,所以需要提供這樣性能水平的儀器總是包含一個嵌入式的、廠商定義的處理器,以完成測量——這樣的儀器就不再是模塊化的了。
Figure 4. PCI and PCI Express provide the highest bandwidth and lowest latency, decreasing test time and delivering flexibility and longevity through user-defined software.
對于一個模塊化儀器,與主機(jī)的高速連接是提供靈活性和長生命周期的關(guān)鍵,因?yàn)樗管浖莾x器駐留于主機(jī)。通過在主機(jī)上運(yùn)行軟件,用戶(而不是廠商)可以定義儀器如何運(yùn)行。這樣的架構(gòu)使您能夠:1)進(jìn)行那些不夠普遍以致未能包含在典型的、廠商定義的、非模塊化的途徑中的測量;2)為尚未發(fā)布的標(biāo)準(zhǔn)創(chuàng)建測量; 3)定義用于進(jìn)行特殊測量的算法。軟件的用戶定義本質(zhì)也意味著,當(dāng)待測設(shè)備發(fā)生變化時,您可以對測量甚至儀器進(jìn)行增加或調(diào)整。您也可以使用軟件的直接訪問,通過網(wǎng)絡(luò)來監(jiān)聽或控制這些模塊化儀器。
值得注意的是,這些硬件的實(shí)現(xiàn)并沒有犧牲測量性能。目前,通過模塊化儀器方法的設(shè)計(jì)的儀器,包括業(yè)界最高分辨率的數(shù)字化儀、最高帶寬的任意波形發(fā)生器和最精確的7位半數(shù)字萬用表。
模塊化儀器中軟件的作用是不容忽視的。軟件將來自硬件的原始比特流轉(zhuǎn)換為一個有用的測量值。一個設(shè)計(jì)良好的模塊化儀器系統(tǒng)能兼顧軟件的多層結(jié)構(gòu),包括I/O驅(qū)動程序、應(yīng)用開發(fā)程序和測試管理程序。
Figure 5. Software layers are often used in a modular instrumentation system.
位于最底層的測量與控制服務(wù),是最常被忽略的,但卻是一個模塊化儀器系統(tǒng)最關(guān)鍵的要素之一。該層代表I/O驅(qū)動軟件和硬件配置工具。這個驅(qū)動軟件非常關(guān)鍵,因?yàn)樗鼮闇y試開發(fā)軟件和用于測量與控制的硬件之間提供連接。
儀器驅(qū)動程序提供一個高層、直接可讀的、與儀器交互的函數(shù)的集合。每個儀器驅(qū)動程序都是為特定的儀器模塊量身定做,以提供一個調(diào)用其獨(dú)特功能的接口。對于一個儀器驅(qū)動程序,特別重要的是其與開發(fā)環(huán)境的集成,以便儀器命令成為應(yīng)用開發(fā)的無縫集成的一部分。系統(tǒng)開發(fā)人員需要根據(jù)所選的開發(fā)環(huán)境(如NI LabVIEW、C、C++或Microsoft .NET)對儀器驅(qū)動進(jìn)行優(yōu)化。
同樣包含在測量與控制服務(wù)中的是配置工具。這些配置工具包括用于配置和測試I/O的資源,存儲擴(kuò)展、校準(zhǔn)和通道混疊信息。這些工具對于一個儀器系統(tǒng)的快速構(gòu)建、故障排除和維護(hù)非常重要。
位于應(yīng)用開發(fā)環(huán)境層的軟件能提供用于開發(fā)應(yīng)用所需的代碼或程序的工具。雖然圖形化編程不是每一個模塊化儀器系統(tǒng)所必需的,但出于易用性和快速開發(fā)的考慮,這些系統(tǒng)經(jīng)常使用圖形化工具。圖形化編程使用“圖標(biāo)”或符號函數(shù),以繪圖方式表示所要執(zhí)行的操作,如圖7所示。這些符號通過傳遞數(shù)據(jù)并確定執(zhí)行順序的“線”相連。LabVIEW提供了業(yè)界最常用的、也是最完整的圖形化開發(fā)環(huán)境。
一些應(yīng)用還需要一個名為軟件管理的附加層,用于測試執(zhí)行或測試數(shù)據(jù)的可視化。對于高度自動化的測試系統(tǒng),測試管理軟件為順序執(zhí)行、分支/循環(huán)、報告生成和數(shù)據(jù)庫集成提供了一個框架。測試管理工具還必須提供與創(chuàng)建專用代碼的開發(fā)環(huán)境的緊密集成。例如,NI TestStand提供了用于順序執(zhí)行、分支、報告生成和數(shù)據(jù)庫集成的框架,并包含與所有常用開發(fā)環(huán)境的連接。對于其它需要可視化觀察大量測試數(shù)據(jù)的應(yīng)用,其他的工具或許有用。這些需求包括快速訪問大量的離散數(shù)據(jù)、持續(xù)報告和數(shù)據(jù)可視化。這些軟件工具,針對數(shù)據(jù)采集過程中所采集到的數(shù)據(jù)和(或)仿真過程中所生成的數(shù)據(jù),為管理、分析和報告這些數(shù)據(jù)提供輔助。
對于一個模塊化儀器系統(tǒng),該軟件架構(gòu)中的每一層都應(yīng)當(dāng)予以重視。
隨著設(shè)備變得愈為復(fù)雜并涵蓋更多迥異的技術(shù),測試系統(tǒng)必須變得更為靈活。測試系統(tǒng)必須適應(yīng)隨時變化的設(shè)備,然后與此同時,成本的壓力要求系統(tǒng)具有更長的生命周期。實(shí)現(xiàn)這些目標(biāo)的唯一途徑便是采用一種軟件定義的模塊化架構(gòu)。通過共享組件、高速總線和開放的用戶定義軟件,模塊化儀器便是滿足當(dāng)今和未來自動化測試需求的最合適的選擇。
要點(diǎn): 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...
關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)