|
工(gong)程(cheng)設(she)計(ji)可(ke)以(yi)從(cong)虛(xu)擬(ni)儀(yi)器(qi)中(zhong)獲(huo)得(de)什(shen)麼(me)?即(ji)便(bian)您(nin)對(dui)虛(xu)擬(ni)儀(yi)器(qi)並(bing)不(bu)熟(shu)悉(xi),了(le)解(jie)儀(yi)器(qi)如(ru)何(he)影(ying)響(xiang)工(gong)程(cheng)設(she)計(ji)也(ye)十(shi)分(fen)自(zi)然(ran)的(de)。例(li)如(ru)示(shi)波(bo)器(qi)等(deng)傳(chuan)統(tong)儀(yi)器(qi)在(zai)測(ce)試(shi)和(he)測(ce)量(liang)應(ying)用(yong)中(zhong)的(de)不(bu)同(tong)階(jie)段(duan)及(ji)電(dian)子(zi)係(xi)統(tong)的(de)設(she)計(ji)、驗證和測試階段都被廣泛地應用。但是,憑借快速開發工具、交互式設計功能以及與實際信號的自然關聯特性,虛擬儀器可以將工程設計帶入到一個新的時代。
例如數字信號處理(DSP)以及它與儀器之間的關係。數字信號處理器,簡稱為DSP,是一種針對數字信號進行實時數學運算的微處理器。要使用DSP處理模擬信號,首先要用抗鋸齒濾波器和模擬數字轉換器(ADC)對模擬信號進行數字化,並將它送入到傳入DSP的數據流中。之後,DSP會以某種方式修改數據流,並通過數字模擬轉換器(DAC)以及抗假象濾波器將信號轉轉回模擬信號。通常而言,類似示波器等傳統獨立儀器會使用定製的固定嵌入式DSP係統。除此之外,示波器其實還可以通過虛擬儀器技術在個人電腦(PC)上實現。利用PC的強大性能,使用PCI數據采集設備對實際輸入信號進行數字化,然後使用PC對信號進行處理。這種虛擬儀器的方式可以使用戶依靠自行開發的軟件程序和在PC或者實時操作係統上完成自定義的儀器功能。
虛(xu)擬(ni)儀(yi)器(qi)提(ti)供(gong)的(de)強(qiang)大(da)設(she)計(ji)工(gong)具(ju)使(shi)得(de)具(ju)有(you)不(bu)同(tong)技(ji)能(neng)層(ceng)次(ci)和(he)不(bu)同(tong)教(jiao)育(yu)背(bei)景(jing)的(de)人(ren)都(dou)可(ke)以(yi)快(kuai)速(su)設(she)計(ji)並(bing)開(kai)發(fa)自(zi)定(ding)義(yi)測(ce)試(shi)和(he)測(ce)量(liang)係(xi)統(tong)。相(xiang)反(fan),過(guo)去(qu)的(de)工(gong)程(cheng)設(she)計(ji)要(yao)求(qiu)開(kai)發(fa)人(ren)員(yuan)使(shi)用(yong)不(bu)相(xiang)關(guan)的(de)開(kai)發(fa)工(gong)具(ju),還(hai)需(xu)要(yao)在(zai)領(ling)域(yu)設(she)計(ji)和(he)實(shi)現(xian)都(dou)具(ju)備(bei)一(yi)定(ding)的(de)工(gong)程(cheng)專(zhuan)業(ye)知(zhi)識(shi)。本(ben)文(wen)描(miao)述(shu)了(le)如(ru)何(he)將(jiang)虛(xu)擬(ni)儀(yi)器(qi)設(she)計(ji)工(gong)具(ju)應(ying)用(yong)到(dao)信(xin)號(hao)處(chu)理(li)工(gong)程(cheng)設(she)計(ji)中(zhong),從(cong)而(er)消(xiao)除(chu)在(zai)設(she)計(ji)和(he)最(zui)終(zhong)係(xi)統(tong)實(shi)現(xian)之(zhi)間(jian)的(de)障(zhang)礙(ai)。我(wo)們(men)將(jiang)通(tong)過(guo)研(yan)究(jiu)數(shu)字(zi)信(xin)號(hao)處(chu)理(li)的(de)設(she)計(ji)與(yu)發(fa)布(bu),並(bing)作(zuo)為(wei)工(gong)程(cheng)實(shi)例(li),來(lai)進(jin)一(yi)步(bu)討(tao)論(lun)這(zhe)個(ge)問(wen)題(ti)。
數字信號處理與虛擬儀器
shouxian,womenlaitaolunyixiaxuniyiqidegainian,tadechuxianshiweilejiejuechuantongduliyiqidejuxianxing。guoqu,ceshihecelianggongjutongchangyoulirushiboqiheboxingfashengqidengduliyiqizucheng,tamenweiyouxiandeceliangyingyongtigongleyouxiandegongnengjihe。zhezhongchuantongyiqijuyousangejibenjuxianxing:1)硬件對信號采集提供有限的精度與速度;2)儀器中內建的廠商定義的有限的測量與分析函數;3)yonghucaozuojiemiandejuxianxing。ruguozhexiejuxianxingzhongyourenheyidianwufamanzuxiangmuguifandeyaoqiu,namejiuxuyaoyigexindeduliyiqi,zheyanghuidadazengjiazuizhongxitongchengben。
自1976年以來,NI通過將傳統的獨立儀器分成兩個基本部分為儀器帶入了一種新的觀念,這兩個部分是:duixinhaojinxingshuzihuasuoxudeyingjianhefenxixianshijieguosuoxuderuanjian。yunxuzuizhongyonghushiyongyonghudingyideruanjianweiqiyingyongjianlizuizhongyiqi,zheyangyiqidejuxianxingjiubeijiejuele,xuniyiqidegainianjiushizheyangdanshengde。jiangruanjianzuoweiyiqi,yiqijiukeyikuozhandaoceshi、控製和設計中。
相(xiang)對(dui)於(yu)傳(chuan)統(tong)的(de)獨(du)立(li)儀(yi)器(qi)而(er)言(yan),虛(xu)擬(ni)儀(yi)器(qi)的(de)優(you)點(dian)與(yu)數(shu)字(zi)信(xin)號(hao)處(chu)理(li)相(xiang)對(dui)於(yu)模(mo)擬(ni)信(xin)號(hao)處(chu)理(li)而(er)言(yan)的(de)優(you)點(dian)是(shi)相(xiang)似(si)的(de)。例(li)如(ru),模(mo)擬(ni)濾(lv)波(bo)器(qi)通(tong)常(chang)使(shi)用(yong)運(yun)算(suan)放(fang)大(da)器(qi)、電容和電阻等模擬電子元件實現,相對於使用浮點或定點機器實現的數字濾波器而言靈活性十分有限。盡管模擬濾波器比較便宜、易yi於yu建jian立li,模mo擬ni濾lv波bo器qi的de標biao定ding和he維wei護hu十shi分fen困kun難nan。要yao對dui設she計ji進jin行xing修xiu改gai也ye十shi分fen難nan以yi實shi現xian。例li如ru,如ru果guo後hou來lai發fa現xian需xu要yao一yi個ge更geng高gao階jie的de濾lv波bo器qi,就jiu必bi須xu改gai動dong硬ying件jian實shi現xian新xin的de設she計ji。由you於yu數shu字zi濾lv波bo器qi是shi用yong軟ruan件jian建jian立li的de,並bing沒mei有you這zhe個ge問wen題ti,從cong而er在zai單dan一yi硬ying件jian上shang提ti供gong了le可ke以yi實shi現xian多duo種zhong應ying用yong的de靈ling活huo平ping台tai。
除了虛擬儀器和數字信號處理都發揮了基於軟件平台的優點,虛擬儀器通過利用圖形化編程開發環境NI LabVIEW使得易用性的優點得到進一步的發展,它能夠讓更多人參與到軟件開發和儀器設計中去。LabVIEW不僅提供了完全與傳統的基於文本的編程語言所不同的圖形化編程方式,使得編程過程變得更加直觀與方便,同時還通過自帶的Mathscript兼(jian)容(rong)了(le)文(wen)本(ben)的(de)編(bian)程(cheng)語(yu)言(yan),使(shi)得(de)用(yong)戶(hu)可(ke)以(yi)兼(jian)容(rong)已(yi)有(you)的(de)算(suan)法(fa),或(huo)者(zhe)根(gen)據(ju)實(shi)際(ji)應(ying)用(yong)來(lai)選(xuan)擇(ze)合(he)適(shi)的(de)編(bian)程(cheng)方(fang)式(shi)。這(zhe)樣(yang)大(da)大(da)節(jie)省(sheng)了(le)需(xu)要(yao)熟(shu)悉(xi)編(bian)程(cheng)環(huan)境(jing)和(he)語(yu)法(fa)所(suo)需(xu)要(yao)的(de)大(da)量(liang)的(de)時(shi)間(jian)。
這也是缺乏足夠的設計工具對數字信號處理所產生的影響?對於DSPgongchengshieryan,shiyongchuantonggongjushixianjiyuruanjiandejiejuefanganshifentongku。dianxingdekaifaguochengcongsuanfashejikaishi,taxuyaoshiyongduozhongshuxuejianmohuanjing,zheyaoqiuduijiyuwenbendeminglingheyufayouzhezugoudeshuxichengdu。zaiwanchengsuanfazhihou,qianrushixitongdeshixiandailailexindekunnan。qianrushixitongshejixuyaoduishishichuligainian、板載內存可用性以及在軟件開發中所需的基於文本的編程語言和語法有深入的知識。
zaichuantongdejiyuwenbendeshejigongjuzhong,tiaoshiyoushixiangdangkunnande。ruguoqianrushixitongmeiyounenggouanzhaoqiwangdefangshijinxinggongzuo,ruhecainengzhaochushuxueshejidecuowuruheduiyingdaojutideqianrushixitongdaimane?lirulianghua、下溢出和上溢出等關於定點設計的問題很難進行跟蹤,因為他們常常在實時執行的前幾個循環中出現。例如斷點、單步執行、監視可用寄存器和變量等常用的簡單調試工具是不夠的,因為他們需要用戶舍棄實時執行,這樣也就無法使得問題重現。
在最近20年中,來自成千上萬家公司的工程師、科學家和技術員通過使用LabVIEW加速並簡化了開發過程,LabVIEW相比傳統設計工具而言更加強大,更加易於使用。LabVIEW具有通用編程語言所有的廣度和深度,其易用性提高了用戶效率,縮短了開發應用程序所需的時間。
簡化DSP設計的參數選擇
以數字濾波器設計為例,它是用NI LabVIEW和數字濾波器設計工具包進行開發與實現的。在這個應用和其他應用中,虛擬儀器方法的一個優點是提供了交互性――可以直接看到製定修改設計參數的結果。
數字濾波器設計首先要為濾波器類型(低通、帶通、帶阻和高通)定義濾波器規範,確定是有限脈衝響應(FIR)或是無限脈衝響應(IIR),確定采樣速率以及浮點機器上所需的濾波器響應。圖1給出了用於設計典型濾波器的交互式界麵,例如巴特沃斯、切比雪夫、反切比雪夫、橢圓、凱塞窗、多爾夫―切比雪夫窗以及等波紋FIR設計方法。圖1所示的設計是8 kHz采樣速率、1 kHz帶通、2 kHz帶阻、60 dB帶阻衰減的低通數字濾波器。在設計這些參數的時候,可以立刻看到當前設計的幅度響應和零極點圖,以及產生濾波器的階數。在圖1中,選擇了反切比雪夫濾波器因為它具有較好的過度帶特性和相對較低的濾波器階數。

圖1:典型濾波器設計Express VI提供了用於交互式設計探索的界麵,可以使用教科書中的巴特沃斯、切比雪夫以及等波紋FIR等濾波器。
基(ji)於(yu)虛(xu)擬(ni)儀(yi)器(qi)的(de)信(xin)號(hao)處(chu)理(li)設(she)計(ji)所(suo)具(ju)有(you)的(de)另(ling)一(yi)個(ge)優(you)點(dian)是(shi)圖(tu)形(xing)化(hua)的(de)編(bian)程(cheng)方(fang)式(shi),類(lei)似(si)流(liu)程(cheng)圖(tu)式(shi)的(de)圖(tu)形(xing)化(hua)編(bian)程(cheng)方(fang)式(shi)使(shi)得(de)程(cheng)序(xu)更(geng)加(jia)直(zhi)觀(guan)。同(tong)時(shi),要(yao)嚐(chang)試(shi)一(yi)個(ge)新(xin)的(de)算(suan)法(fa)隻(zhi)需(xu)要(yao)替(ti)換(huan)成(cheng)所(suo)需(xu)要(yao)的(de)函(han)數(shu)圖(tu)標(biao)即(ji)可(ke)。例(li)如(ru),反(fan)切(qie)比(bi)雪(xue)夫(fu)濾(lv)波(bo)器(qi)設(she)計(ji)可(ke)以(yi)方(fang)便(bian)地(di)替(ti)換(huan)成(cheng)雷(lei)米(mi)茲(zi)濾(lv)波(bo)器(qi)設(she)計(ji)方(fang)法(fa)或(huo)是(shi)最(zui)小(xiao)P階規範設計方法。實際上,在表1中所列的一係列編程設計選擇都可以用於設計中。雷米茲設計方法生成了FIR濾波器,可以將期望頻率響應和實際設計濾波器頻率響應之間的最大誤差降到最小。這種設計規範產生的濾波器具有“等波紋”特性,即“切比雪夫”誤差行為。雷米茲工具產生的濾波器設計適用於類型I-IV線性相位、任意形狀FIR、最優幅度近似(最大或最小相位)、單點帶規範(穀或峰)以及精確增益控製。最小P階規範方法可以用於設計帶有任意幅度和相位約束的FIR和IIR濾波器。使用數字濾波器設計工具包,最小P階規範方法使用牛頓法或迭代重賦權最小二乘(IRLS)法開發解決方案。
|
|
FIR |
特殊設計 |
|
巴特沃斯 |
凱塞 |
IIR穀峰 |
|
切比雪夫 |
多爾夫―切比雪夫 |
IIR梳 |
|
反切比雪夫 |
加窗 |
最平濾波器 |
|
橢圓 |
雷米茲 |
窄帶 |
|
貝塞爾 |
最小P階規範 |
任意群延遲 |
|
最小P階規範 |
|
群延遲補償器 |
表1:數字濾波器設計工具包提供了從傳統應用到現代應用所需的程序化的濾波器設計工具套件。
在對定點濾波器進行設計和發布的過程中,有一種特性的重要性是不言而喻的,就是需要能夠直接、交互式地查看設計結果。傳統的通過文本軟件定點實現的方法往往效率高、成本低,但是由於算法精度較低,其設計過程也更為複雜。
使用LabVIEW和(he)數(shu)字(zi)濾(lv)波(bo)器(qi)設(she)計(ji)工(gong)具(ju)包(bao),定(ding)點(dian)數(shu)字(zi)濾(lv)波(bo)器(qi)設(she)計(ji)過(guo)程(cheng)首(shou)先(xian)是(shi)對(dui)浮(fu)點(dian)濾(lv)波(bo)器(qi)進(jin)行(xing)原(yuan)型(xing)設(she)計(ji),並(bing)轉(zhuan)換(huan)成(cheng)定(ding)點(dian)設(she)計(ji)。轉(zhuan)換(huan)成(cheng)定(ding)點(dian)設(she)計(ji)會(hui)大(da)大(da)改(gai)變(bian)濾(lv)波(bo)器(qi)的(de)特(te)性(xing)和(he)性(xing)能(neng)。實(shi)現(xian)了(le)指(zhi)定(ding)定(ding)長(chang)寄(ji)存(cun)器(qi)的(de)整(zheng)數(shu)字(zi)長(chang)、濾lv波bo器qi拓tuo撲pu等deng其qi他ta參can數shu,這zhe些xie對dui於yu確que保bao濾lv波bo器qi按an照zhao設she計ji期qi望wang進jin行xing工gong作zuo是shi十shi分fen關guan鍵jian的de。對dui定ding點dian設she計ji進jin行xing適shi當dang的de仿fang真zhen和he分fen析xi可ke以yi避bi免mian之zhi後hou在zai調tiao試shi設she計ji的de時shi候hou,在zai千qian萬wan行xing嵌qian入ru式shi係xi統tong代dai碼ma中zhong進jin行xing調tiao試shi查zha找zhao。集ji成cheng在zaiVI設計環境中的定點建模、仿真和分析工具簡化了從浮點設計到定點設計之間的過渡。
另外一個使得定點數字濾波設計非常困難的原因是,參數量化、中間運算和結果向係統引入了噪聲。此外,如果在數據存儲中沒有足夠的空間,就會發生上溢出。LabVIEW數字濾波器設計工具包中的定點建模、仿真和分析功能能夠在設計階段找出實現的錯誤源頭。例如,對於圖1設計的低通濾波器進行定點實現。用戶使用定點建模VI,就可以在多個設計方案中選擇定點係統、指定字長、整數字長以及設計中關鍵位置的舍入和溢出模式。為了對最終實現進行進一步控製,還提供了超過23種不同的濾波器拓撲,從FIR直接形式1到IIR級聯二階部分(形式I或II、轉置),直至網格ARMA(基本、一個乘法器或歸一化部分)。
|