功能原型系列:裝備與測(cè)試介紹
概覽
功能原型系列是一個(gè)文檔集,你可以通過(guò)它來(lái)了解原型過(guò)程。請(qǐng)閱讀關(guān)鍵概念,原型的優(yōu)勢(shì),關(guān)于產(chǎn)品選擇的討論以及其它技術(shù)資源。
裝備與測(cè)試
開(kāi)發(fā)原型的一個(gè)目的是為了快速地向潛在的客戶、投資者和同行展示一個(gè)想法和其設(shè)計(jì)。另一個(gè)同樣重要的原因在于原型能用來(lái)測(cè)試并驗(yàn)證基本的軟件和硬件性能。通常,只有當(dāng)你設(shè)法將一個(gè)功能型原型的電子器件、軟件和機(jī)械部件結(jié)合在一起時(shí),問(wèn)題便會(huì)凸顯。
通過(guò)原型階段的完整測(cè)試,你能在問(wèn)題將要導(dǎo)致巨大損失或無(wú)法修復(fù)之前就發(fā)現(xiàn)它們。原型測(cè)試為性能索賠的備份提供了具體的證據(jù),并且使你自信地將更加可靠的產(chǎn)品付諸實(shí)施。
優(yōu)勢(shì)
* 提高整體質(zhì)量–通過(guò)將系統(tǒng)發(fā)揮至極限來(lái)為你的嵌入式原型I/O進(jìn)行信號(hào)完整性測(cè)試。
* 提高可靠性 –請(qǐng)確認(rèn)你的嵌入式原型可以承受極限條件而不產(chǎn)生錯(cuò)誤,并對(duì)防止產(chǎn)品發(fā)生過(guò)載的安全系統(tǒng)進(jìn)行測(cè)試。
* 提高算法性能 – 通過(guò)在產(chǎn)品開(kāi)發(fā)周期中通過(guò)測(cè)試和排除一切異常狀況來(lái)提高你的嵌入式程序的效率。
創(chuàng)建一個(gè)軟件測(cè)試平臺(tái)
軟件測(cè)試方法
軟件定義的儀器本身十分靈活且易于實(shí)現(xiàn)自動(dòng)化。所以,當(dāng)今的產(chǎn)品設(shè)計(jì)團(tuán)隊(duì)可以通過(guò)減少人工測(cè)試的小時(shí)數(shù)和盡量減少實(shí)驗(yàn)用的儀器數(shù)量來(lái)簡(jiǎn)化開(kāi)發(fā)過(guò)程。
有了NI LabVIEW圖形化軟件平臺(tái),你可以輕松地設(shè)置簡(jiǎn)單的程序以測(cè)試主要算法的質(zhì)量和可靠性。原型的時(shí)候,請(qǐng)注意測(cè)試中主要的兩個(gè)方面:
1. 極限測(cè)試——請(qǐng)確定軟件設(shè)計(jì)提供了I/O通道整個(gè)范圍內(nèi)的高質(zhì)量數(shù)據(jù)。這將使原型在整個(gè)產(chǎn)品開(kāi)發(fā)周期內(nèi)都符合質(zhì)量標(biāo)準(zhǔn)。
2. 壓力測(cè)試——請(qǐng)確定在長(zhǎng)期使用后或當(dāng)所有I/O通道同時(shí)達(dá)到極限時(shí)都可以符合質(zhì)量標(biāo)準(zhǔn)。算法要足夠魯棒從而能考慮到有過(guò)載數(shù)據(jù)正在處理時(shí)的情況。
通過(guò)使用模擬 VI以使軟件算法達(dá)到極限,從而進(jìn)行無(wú)需硬件的測(cè)試。你可以在LabVIEW 中通過(guò)使用不同的信號(hào)生成VI或開(kāi)發(fā)能準(zhǔn)確描述實(shí)際I/O的VI來(lái)輕松地實(shí)現(xiàn)測(cè)試。
圖1. I/O 模擬方法
隨著計(jì)算機(jī)的發(fā)展,通過(guò)模擬I/O,你無(wú)需使用任何硬件就可以完整地測(cè)試軟件。簡(jiǎn)單而有效的I/O模擬方法有以下幾種:
* 信號(hào)產(chǎn)生VI –LabVIEW有一個(gè)特定的函數(shù)面板用來(lái)產(chǎn)生信號(hào)。從種類繁多的VI中選擇以有效地模擬I/O。
* 定制VI –有了高級(jí)的LabVIEW圖形化編程環(huán)境,開(kāi)發(fā)能描述I/O的測(cè)試平臺(tái)VI變得十分簡(jiǎn)單。
* 現(xiàn)有數(shù)據(jù) –LabVIEW具有從許多文件類型和數(shù)據(jù)庫(kù)中提取數(shù)據(jù)的功能。有了LabVIEW, 你可以使用模型化數(shù)據(jù)來(lái)為I/O模擬數(shù)據(jù)點(diǎn)。
使用I/O節(jié)點(diǎn)模擬進(jìn)行嵌入式FPGA測(cè)試
開(kāi)發(fā)具有嵌入式現(xiàn)場(chǎng)可編程門陣列(FPGAs)的原型是件棘手的事情,它的開(kāi)發(fā)技術(shù)與FPGA硬件和計(jì)算機(jī)軟件不同,主要原因有三:
1. 編譯時(shí)間——你需要大量的時(shí)間將一個(gè)設(shè)計(jì)編譯成硬件代碼并在FPGA上運(yùn)行。同時(shí),通常需要采用多次編譯來(lái)尋找程序錯(cuò)誤。
2. 硬件中不具備典型的LabVIEW調(diào)試功能——一旦在硬件中運(yùn)行代碼,或者說(shuō)代碼即硬件,你將無(wú)法進(jìn)行單步,過(guò)程高亮,設(shè)置斷點(diǎn)等動(dòng)作。
3. FPGA可高速并確定性地執(zhí)行——FPGA被用在高速和確定性應(yīng)用中。因此,設(shè)計(jì)者通常關(guān)注的是在FPGA的每個(gè)時(shí)鐘周期時(shí)所發(fā)生的情況,要么是純粹的性能原因,要么是描述并行任務(wù)間的同步性。
LabVIEW FPGA為通過(guò)模擬I/O或使用真實(shí)I/O進(jìn)行的基本FPGA算法測(cè)試提供了強(qiáng)大功能。
* 在有模擬I/O的開(kāi)發(fā)計(jì)算機(jī)上執(zhí)行VI –當(dāng)你按下運(yùn)行箭頭時(shí),F(xiàn)PGA VI就在PC上運(yùn)行。你可以選擇使用隨機(jī)數(shù)據(jù)或定制I/O將測(cè)試平臺(tái)VI寫入以確定輸入和捕獲輸出。
* 在有真實(shí)I/O的開(kāi)發(fā)計(jì)算機(jī)上執(zhí)行VI –這時(shí),僅NI R系列內(nèi)插設(shè)備才具備該功能。當(dāng)程序在FPGA I/O節(jié)點(diǎn)執(zhí)行時(shí),這個(gè)選項(xiàng)在PC機(jī)上運(yùn)行VI并將一個(gè)固定的性能下載到R系列設(shè)備以進(jìn)行I/O采樣。在早期測(cè)試和原型開(kāi)發(fā)中,這是非常有用的,但是,請(qǐng)記?。篒/O是軟件定時(shí)采樣,很有可能無(wú)法代表你真正預(yù)想VI應(yīng)該使用的時(shí)間。
* 注意: 使用真正的I/O需要硬件。
使用數(shù)據(jù)采集來(lái)測(cè)量I/O
由于軟件測(cè)試不能提供使用真實(shí)硬件的同樣感覺(jué),因而具有局限性。有了LabVIEW,你可以使用商用現(xiàn)成硬件去實(shí)現(xiàn)真實(shí)的I/O測(cè)試。
通過(guò)使用數(shù)字萬(wàn)用表或數(shù)據(jù)采集設(shè)備,你可以輕松地調(diào)試物理硬件I/O。LabVIEW與NI-DAQmx設(shè)備相結(jié)合,從而為執(zhí)行復(fù)雜的數(shù)據(jù)采集任務(wù)提供一個(gè)簡(jiǎn)單易用的高級(jí)接口。
圖2. 使用DAQ進(jìn)行測(cè)試
使用DAQmx Express VI:
* 測(cè)量嵌入式原型的物理輸出并分析信號(hào)的質(zhì)量和可靠性
* 為嵌入式原型提供實(shí)時(shí)信號(hào)以使軟件算法達(dá)到極限并對(duì)測(cè)試系統(tǒng)加壓
完全系統(tǒng)試驗(yàn)臺(tái)
系統(tǒng)ID
LabVIEW系統(tǒng)識(shí)別工具包不僅是一個(gè)VI庫(kù),還是一個(gè)基于大量原始數(shù)據(jù)開(kāi)發(fā)系統(tǒng)模型的助手。有了這些工具,你可以完成整個(gè)系統(tǒng)的識(shí)別,從分析原始數(shù)據(jù)到驗(yàn)證識(shí)別模型。你可以在更少的時(shí)間內(nèi),使用該系統(tǒng)識(shí)別助手來(lái)開(kāi)發(fā)能夠反映某種特定動(dòng)態(tài)系統(tǒng)行為的模型。
系統(tǒng)識(shí)別是一種基于所測(cè)量激勵(lì)和響應(yīng)數(shù)據(jù)而開(kāi)發(fā)動(dòng)態(tài)系統(tǒng)數(shù)學(xué)模型的方法。你能夠在許多應(yīng)用中使用系統(tǒng)識(shí)別,包括機(jī)械工程,生物學(xué),生理學(xué),氣象學(xué),經(jīng)濟(jì)學(xué)和基于模型的控制設(shè)計(jì)等。
基于模型的控制設(shè)計(jì)過(guò)程通常包含有識(shí)別對(duì)象模型,分析并綜合控制器,模擬閉環(huán)系統(tǒng),將控制器應(yīng)用到實(shí)時(shí)硬件中等過(guò)程。
LabVIEW系統(tǒng)識(shí)別工具包:
* 幫助你從真實(shí)數(shù)據(jù)中識(shí)別高階系統(tǒng)中的大型多變量模型
* 提供兩種工具,一個(gè)助手和一個(gè)VI庫(kù),用來(lái)識(shí)別離散的單輸入單輸出和多輸入多輸出線性系統(tǒng)
* 幫助你完成整個(gè)系統(tǒng)的識(shí)別,從分析原始數(shù)據(jù)到驗(yàn)證識(shí)別模型
* 與其它附加功能相集成,包括LabVIEW實(shí)時(shí)和LabVIEW控制設(shè)計(jì)與模擬模塊
系統(tǒng)識(shí)別工具包提供這樣一些VI,你可以用它們從動(dòng)態(tài)系統(tǒng)中預(yù)處理原始數(shù)據(jù)并開(kāi)發(fā)能反映該系統(tǒng)行為的模型。有了數(shù)據(jù)預(yù)處理VI,你可以分析某一特定激勵(lì)下的動(dòng)態(tài)系統(tǒng)響應(yīng)。分析完數(shù)據(jù)后,你可以使用參數(shù)模型估計(jì),非參數(shù)模型估計(jì),部分已知模型估計(jì),遞推模型估計(jì),頻域模型估計(jì)VI等來(lái)估計(jì)動(dòng)態(tài)系統(tǒng)的模型。最后,你可以使用模型驗(yàn)證或模型分析VI來(lái)確定該模型是否能準(zhǔn)確描述系統(tǒng)的動(dòng)態(tài)特性。
硬件在環(huán)(HIL)應(yīng)用
嵌入式控制系統(tǒng)在控制一個(gè)典型機(jī)械系統(tǒng)的不同元件時(shí)發(fā)揮了重要的作用。實(shí)際測(cè)試之前的系統(tǒng)軟件模擬并不總是有用的,因?yàn)槟M不能隨實(shí)際的模擬和數(shù)字信號(hào)而實(shí)時(shí)運(yùn)行。這一難題迫使我們?cè)谧詈蟛渴鹎?,采用HIL模擬作為測(cè)試嵌入式控制系統(tǒng)的標(biāo)準(zhǔn)方法。
測(cè)試一個(gè)完整的嵌入式原型可能會(huì)很困難,特別是當(dāng)你要測(cè)試整個(gè)系統(tǒng)的所有元件間的相互作用時(shí)。測(cè)試原型嵌入式控制系統(tǒng)時(shí),安全性,可用性或成本考慮都能令使用完整系統(tǒng)進(jìn)行必要的測(cè)試變得不切實(shí)際。你可以使用HIL模擬來(lái)仿真帶來(lái)這些挑戰(zhàn)的系統(tǒng)部件,這將使你在真實(shí)的整體系統(tǒng)測(cè)試前,在虛擬環(huán)境中徹底地對(duì)嵌入式控制設(shè)備進(jìn)行測(cè)試。有了這個(gè)功能,即使你的測(cè)試系統(tǒng)變得更加復(fù)雜,你也能合算地保持可靠性和市場(chǎng)投放時(shí)間的要求。
圖 3. 一個(gè)包含有三個(gè)主要元件的HIL測(cè)試系統(tǒng):一個(gè)軟件接口, 一個(gè)實(shí)時(shí)處理器和一個(gè)I/O接口
在較短的時(shí)間內(nèi)快速投放市場(chǎng)、更好的可靠性以及日益復(fù)雜的產(chǎn)品等多方面帶來(lái)的挑戰(zhàn)使得人們迫切需要HIL測(cè)試平臺(tái)的幫助:
* 在主機(jī)上配置并監(jiān)控用戶界面和諸如NI VeriStand的測(cè)試管理工具
* 使用實(shí)時(shí)模擬器,在嵌入式控制器和測(cè)試系統(tǒng)之間產(chǎn)生真實(shí)的電氣交互
* 設(shè)置物理負(fù)載和故障插入測(cè)試——HIL測(cè)試系統(tǒng)可以精確地模擬真實(shí)的條件并測(cè)試故障情況下的反應(yīng)
LabVIEW圖形化開(kāi)發(fā)環(huán)境和NI PXI模塊化的硬件平臺(tái)是建立HIL系統(tǒng)以實(shí)現(xiàn)高度逼真的控制器測(cè)試模擬的理想工具。
圖4. 圖形化系統(tǒng)設(shè)計(jì)
NI VeriStand是一個(gè)為了配置包含HIL測(cè)試的實(shí)時(shí)測(cè)試應(yīng)用的軟件環(huán)境。它可以幫助你配置多核實(shí)時(shí)引擎來(lái)執(zhí)行下列任務(wù):
* 基于模擬、數(shù)字、通信總線和現(xiàn)場(chǎng)可編程門陣列(FPGA)的I/O
* 觸發(fā)、多文件數(shù)據(jù)記錄
* 產(chǎn)生實(shí)時(shí)激勵(lì)
* 計(jì)算通道
* 事件報(bào)警和報(bào)警響應(yīng)例行測(cè)試
NI VeriStand也可以輸入控制算法并在LabVIEW軟件和第三方環(huán)境中仿真模型。你能使用一個(gè)運(yùn)行時(shí)可編輯的用戶界面來(lái)監(jiān)測(cè)這些任務(wù)并與其交互,這個(gè)界面包括了許多有用的工具來(lái)進(jìn)行強(qiáng)制賦值、報(bào)警監(jiān)控、I/O校準(zhǔn)和激勵(lì)文件編輯等。使用NI VeriStand時(shí)無(wú)需任何編程知識(shí),它可以被定制和擴(kuò)展到多種軟件環(huán)境下,如NI LabVIEW, NI TestStand, Microsoft Visual Studio .NET, C/C++, 和Python等。
下一步
NI提供了大量的嵌入式原型測(cè)試工具。將LabVIEW平臺(tái)和NI-DAQmx , NI VeriStand結(jié)合在一起可以幫助你徹底地對(duì)質(zhì)量、可靠性和整個(gè)產(chǎn)品開(kāi)發(fā)周期的表現(xiàn)進(jìn)行測(cè)試。