隨著測試需求的快速變化和測試項(xiàng)目開發(fā)周期的縮短,您和團(tuán)隊(duì)能否最大程度地復(fù)用現(xiàn)有測試軟件和測量庫,將尤為重要。那為什么測試工程師不能更頻繁地復(fù)用更多軟件呢?以下是測試團(tuán)隊(duì)最常給到的答復(fù):
· 我們正在使用的軟件是調(diào)任或離職同事所開發(fā)的遺留軟件,如果對(duì)未知部分進(jìn)行更改,可能會(huì)有很大的風(fēng)險(xiǎn),而且費(fèi)用也很高。
· 測試和驗(yàn)證工程團(tuán)隊(duì)都有各自的工具和語言偏好或團(tuán)隊(duì)標(biāo)準(zhǔn)化機(jī)制;而且,由于過去項(xiàng)目的工具或軟件無法滿足當(dāng)今的需求,要實(shí)現(xiàn)代碼復(fù)用非常困難。
· 工程師亟需要最大程度地提高軟件復(fù)用程度及構(gòu)建抽象層或框架,但這不僅成本昂貴且耗時(shí)甚久。隨著項(xiàng)目周期不斷縮短,企業(yè)難以將重點(diǎn)放在如何實(shí)現(xiàn)標(biāo)準(zhǔn)的復(fù)用以及借鑒業(yè)界最佳實(shí)踐上。
現(xiàn)在工程師面臨的挑戰(zhàn)是應(yīng)該通過標(biāo)準(zhǔn)化來獲得長期優(yōu)勢,還是利用現(xiàn)有的代碼和軟件技能或偏好?兩者應(yīng)如何取得平衡?為了幫助解決這個(gè)挑戰(zhàn),LabVIEW作為一個(gè)開放平臺(tái),可幫助您將所有的測試硬件和軟件系統(tǒng)集成在一起。
使用LabVIEW,您可以將多種編程方法與圖形化數(shù)據(jù)流結(jié)合到單個(gè)應(yīng)用程序中?;谶@種靈活性,您可以選擇所需的工具來創(chuàng)建待測設(shè)備(DUT)的控制、配置或測量庫。LabVIEW可將多種語言(如.m、C、Python、IEC 61131-3和.NET)集成到您的應(yīng)用程序中,且能夠與本地或網(wǎng)絡(luò)上運(yùn)行的其他軟件進(jìn)行互操作,從而幫助團(tuán)隊(duì)更快速成功。
內(nèi)容
· 調(diào)用現(xiàn)有DLL和.NET程序集
· 調(diào)用MATLAB腳本
· 集成Python腳本
· 通過標(biāo)準(zhǔn)工業(yè)協(xié)議與外部系統(tǒng)通信
調(diào)用現(xiàn)有DLL和.NET程序集
除了將源代碼導(dǎo)入LabVIEW程序框圖之外,還可在LabVIEW應(yīng)用程序中調(diào)用使用其他語言開發(fā)的應(yīng)用程序和算法。例如,如果您已經(jīng)有一個(gè)C/C ++共享庫并且需要在LabVIEW中復(fù)用該庫,那么可以使用“調(diào)用庫函數(shù)節(jié)點(diǎn)”(Call Library Function Node)來調(diào)用這個(gè)共享庫。為了使導(dǎo)入外部庫更加容易,LabVIEW還提供了導(dǎo)入共享庫向?qū)В╥mport Shared Library Wizard),可自動(dòng)創(chuàng)建或更新LabVIEW包裝VI項(xiàng)目庫,以便集成到LabVIEW程序框圖中。

圖1.使用圖形化編程方法和Call Library Function Node(調(diào)用庫函數(shù)節(jié)點(diǎn)),復(fù)用現(xiàn)有C或C ++共享庫。
調(diào)用MATLAB腳本
調(diào)用使用The MathWorks,Inc.MATLAB®軟件開發(fā)的MATLAB腳本,其中包含了常見的數(shù)值分析、信號(hào)處理和高級(jí)數(shù)學(xué)編程方法。這些腳本可以使用MATLAB腳本節(jié)點(diǎn)與VI結(jié)合在一起,從而可以將MATLAB分析函數(shù)集成到測試和測量系統(tǒng)中。
集成Python腳本
LabVIEW也可以調(diào)用系統(tǒng)中運(yùn)行的其他應(yīng)用程序。過去十年,Python的應(yīng)用日益普及且不斷擴(kuò)展,為各種應(yīng)用提供了數(shù)十萬個(gè)現(xiàn)成的代碼庫。通過開發(fā)Python自動(dòng)化腳本并將其集成至大型的LabVIEW程序,提供了一個(gè)直觀的解決方案來將Python的靈活腳本編寫功能合并到LabVIEW系統(tǒng)設(shè)計(jì)工具。有多種方法可以復(fù)用Python代碼,比如Enthought開發(fā)的LabVIEW Python集成工具包或者與LabVIEW內(nèi)部的命令行連接,這些方法提供了針對(duì)特定操作系統(tǒng)的接口,來調(diào)用可執(zhí)行文件和其他構(gòu)建庫。

圖3.使用LabVIEW Python集成工具包進(jìn)行內(nèi)聯(lián)調(diào)用,在LabVIEW中復(fù)用現(xiàn)有Python腳本。
通過標(biāo)準(zhǔn)工業(yè)協(xié)議與外部系統(tǒng)通信
LabVIEW具有通用和特定行業(yè)專用的以太網(wǎng)和串行外設(shè)通信庫。LabVIEW本地支持常用的工業(yè)協(xié)議(如CAN、PROFINET、OPC UA和EtherCAT),因而可以連接到各種設(shè)備、機(jī)器和基礎(chǔ)架構(gòu)。如果您的應(yīng)用程序需要支持多種協(xié)議,LabVIEW可以作為一個(gè)網(wǎng)關(guān),在其支持的近20種協(xié)議之間轉(zhuǎn)換,其中包括針對(duì)特定行業(yè)的協(xié)議,如DNP3和FlexRay。
由于FPGA可以使用LabVIEW進(jìn)行編程,因此您甚至可以高效地構(gòu)建自定義通信協(xié)議來滿足傳統(tǒng)或特有通信需求。LabVIEW FPGA模塊提供了串行、I2C和SPI等數(shù)字總線協(xié)議的代碼示例,作為開發(fā)基礎(chǔ),同時(shí)還為Xilinx Aurora、Serial RapidIO、JESD204B和10千兆位以太網(wǎng)等高速串行協(xié)議提供了FPGA IP內(nèi)核。

圖 4.使用LabVIEW中的標(biāo)準(zhǔn)協(xié)議支持與DUT和其他系統(tǒng)組件進(jìn)行通信,如NI-XNET儀器驅(qū)動(dòng)程序。





廣告






















































