“虛擬儀器技術”這個概念緣起于20世紀70年代末。在當時微處理器技術的發(fā)展已經(jīng)可以通過改變設備的軟件來輕松地實現(xiàn)設備功能的變化,所以要在測量系統(tǒng)中集成分析算法已經(jīng)成為可能,因此虛擬儀器技術的概念將會去改變整個的測試測量行業(yè)。在那個時候,當傳統(tǒng)儀器的供應商們還在將微處理器和廠商定義的算法嵌入到他們提供的封閉式專用系統(tǒng)中,同時,一個全新的趨勢——即打開測量系統(tǒng)、允許用戶自己定義分析算法并且配置數(shù)據(jù)的顯示方式——已經(jīng)開始形成。就這樣,虛擬儀器技術的概念誕生了。
儀器系統(tǒng)的發(fā)展經(jīng)歷了一段很長的歷史。在其早期發(fā)展階段,儀器系統(tǒng)指的是“純粹”的模擬測量設備,例如EEG記錄系統(tǒng)或示波器。作為一種完全封閉的專用系統(tǒng),它們包括電源、傳感器、模擬至數(shù)字轉(zhuǎn)換器和顯示器等,并且需要手動進行設置,將數(shù)據(jù)顯示到標度盤、轉(zhuǎn)換器,或者采取將數(shù)據(jù)打印在紙張上等各種形式。在那個時候,如果要進一步使用數(shù)據(jù),需要操作人員手動地將數(shù)據(jù)復寫到筆記本上。由于所有的事情都必須要人工去操作,所以要對實際采集到的數(shù)據(jù)進行深入分析、或者集成復雜的/自動化的測試步驟是很復雜、甚至是不可能完成的工作。一直到80年代,那些復雜的系統(tǒng),例如化學處理控制應用等,才終于不需要占用到多臺獨立臺式儀器一起連接到一個中央控制面板,這個控制面板由一系列物理數(shù)據(jù)顯示設備,例如標度盤、轉(zhuǎn)換器等,以及多套開關、旋鈕和按鍵組成,并專用于儀器的控制。
虛擬儀器系統(tǒng)在早期面臨著許多技術上的挑戰(zhàn)。那個時候通用接口總線(GPIB,IEEE488)已經(jīng)成為了一種標準方式去連接儀器和計算機、將原始數(shù)據(jù)傳輸?shù)接嬎銠C處理器、執(zhí)行分析功能并且顯示結(jié)果。不過,市場上的各個儀器廠商都使用各自的命令集來控制各自的產(chǎn)品,同時虛擬儀器技術的編程對于那些習慣用BASIC等文本語言來編程的專業(yè)人員來說是一個嚴峻的挑戰(zhàn)。很明顯,市場需要一種更高層更強大的工具,但是這個工具到底是什么,當時卻并不明朗。
轉(zhuǎn)機出現(xiàn)在1984年,那一年蘋果公司推出了帶有圖形化功能的Macintosh計算機。較之以往鍵入命令行,人們通過使用鼠標和圖標大大提高了創(chuàng)造性和工作效率,同時,Macintosh的這種圖形化操作方式也激發(fā)了NI創(chuàng)始人之一Jeff Kodosky的靈感。
1985年6月,Jeff Kodosky領導著一組工程師開始了圖形化開發(fā)環(huán)境Labview的編程工作,他們的研發(fā)成果就是推出了LabVIEW1.0版本。在20年后的今天看來,這個產(chǎn)品的誕生大大超越了當時業(yè)界的理念,具有深遠的前瞻意義。
LabVIEW有三個圖形化面板:其一,前面板,即用戶界面,用來讓工程師去創(chuàng)建交互式的測量程序,這些面板可以與實際儀器的面板非常相似,或者也可以是按照工程師們的思維創(chuàng)新而定義的。其二,程序框圖,即代碼,同樣也是圖形化的界面,其執(zhí)行順序由數(shù)據(jù)流來決定,這一點在軟件開發(fā)中是至關重要的。最后是函數(shù)面板,顧名思義,它包括了一系列即選即用的函數(shù)庫(根據(jù)virtual instruments縮寫為VI),供用戶在他們的測量項目中使用,能夠極大地提高他們的工作效率。
初始版本發(fā)布后,讓創(chuàng)始人Jeff Kodosky頗感驚喜的是,用戶們使用這一工具開發(fā)的應用不單單局限于測試測量,并且擴展到控制、建模和仿真領域。在工程師方面,他們也受到LabVIEW這一創(chuàng)新工具的啟發(fā)和鼓舞,因為LabVIEW的發(fā)布為不同領域的工程師開拓了創(chuàng)新的空間,為實現(xiàn)更大規(guī)模的應用提供可能,而在此之前,這些應用都是他們從未去嘗試過的。至此,LabVIEW就確立了在虛擬儀器技術中的基礎和核心地位。
在LabVIEW發(fā)展的同時,其他一些重要的技術也在迅猛發(fā)展中。1990年Microsoft發(fā)布了Windows3.0圖形化操作系統(tǒng),處理器和半導體行業(yè)也開始蓬勃起步。在其后的20年間,我們看到PC行業(yè)呈指數(shù)級增長。例如,目前的3GHzPC就可用來進行復雜的頻域和調(diào)制分析以用于通信測試應用。回到1990年的時候,用當時的PC(Intel386/16)處理65,000個點的FFT(快速傅立葉變換,用于頻譜分析的基本測量)需要1100秒時間,而現(xiàn)在使用3.4GHz的P4計算機實現(xiàn)相同的FFT只需要約0.8秒[Ffbench,JohnWalker]。相應地,硬盤、顯示器和總線帶寬也獲得了性能上的提高。新一代的高速PC總線--PCI Express能提供高達3.2GBytes/s的帶寬,從而可以基于PC架構(gòu)來實現(xiàn)超高帶寬的測量。同樣的,半導體行業(yè)正不斷推動技術進步、以及現(xiàn)成即用的商業(yè)ADC和DAC的標準,使得這些技術可以像在傳統(tǒng)廠商定義的儀器上使用一樣,在模塊化儀器上得到應用,并為開放的平臺提供更多的優(yōu)勢,在用戶需求改變的情況下,讓終端用戶無需替換整個系統(tǒng),就可以實現(xiàn)元件的升級,并擁有自定義配置的功能。
技術發(fā)展到這一步,虛擬儀器技術已經(jīng)不再單純是一個概念性的名詞,而是成為了一個實際可行的解決方案,不但能為用戶帶去廣泛的靈活性和可擴展性,而且可以實現(xiàn)成本上的節(jié)約。
虛擬儀器技術
成熟的虛擬儀器技術由三大部分組成:高效的軟件編程環(huán)境、模塊化儀器和一個支持模塊化I/O集成的開放的硬件構(gòu)架。在這個技術日新月異的時代,虛擬儀器技術為用戶帶來的靈活性和可擴展性已經(jīng)不再是一種奢求,而是必需。Clayton Christensen在《Innovators Dilemma》一書中是這樣描述這一現(xiàn)象的:當一個市場領導者面臨著同行/競爭對手推出更新、更先進的技術之后,他們往往就要喪失原先的領導地位了,因此技術領導者(即革新者)們也面臨了新的技術革新所帶來的困境。一方面,技術革新為公司贏得市場立足點,以及擴大市場份額的機會。但另一方面,隨著市場的成熟,這個加速公司成長的競爭優(yōu)勢卻難以長久維持,因為競爭會使產(chǎn)品逐漸商品化、大眾化,原先該產(chǎn)品上與眾不同的地方會逐漸變得普通,需要有新的技術革新帶來新的產(chǎn)品亮點。于是革新反而就開始成為一種責任,迫使公司為了保持在市場上既有的領導地位,持續(xù)不斷地進行技術革新,并且要以最短的時間將革新成果推向市場。
隨著產(chǎn)品開發(fā)時間不斷縮短,帶給儀器供應商的壓力也越大。廠商定義的解決方案能否滿足用戶不斷提出的新要求、新標準和新特性?我們看到現(xiàn)在產(chǎn)品的體積越來越小,同時需要集成的特性越來越多,這就要求有更多的儀器進行測量,從而確保產(chǎn)品質(zhì)量,因此,不同儀器I/O之間的同步變得至關重要,測量空間的因素也需要考慮在內(nèi)。面對這樣的情況,越來越多的工程師開始轉(zhuǎn)向虛擬儀器技術這一解決方案,不單是快速發(fā)展的消費電子、通訊等市場,甚至是一貫保守的美國國防部也加入了這一行列,他們使用“綜合性儀器(Synthetic Instrument)”這樣相似的概念名詞來預示著大規(guī)模的行業(yè)應用。在向國會提交的報告中,國防部指出:“在開發(fā)綜合性儀器時,采用新近的商業(yè)化技術實時地配置儀器,從而實現(xiàn)各種測試功能......單個綜合性儀器可以代替多個獨立儀器的功能,從而減小了后勤裝備的體積并解決了設備過時的問題。”[摘自2002年2月,國防部技術改進辦公室向國會提交的報告]。虛擬儀器技術,以及其他實質(zhì)相似的概念,為增加靈活性、降低投資成本、提高測試系統(tǒng)使用壽命,同時確??煽啃缘纫螅峁┝艘粋€理想的解決方案。
超越測試測量范疇
工程師眼下面對的挑戰(zhàn)與20年前的截然不同——現(xiàn)在已經(jīng)不再是單純的自動化方面的考慮了,而是在于復雜性。系統(tǒng)的復雜性急速增加,越來越多的特性功能集成到單一的設備中,并且每年不斷有新技術涌現(xiàn)出來以確保公司在市場上的競爭力。這種復雜性的增加迫使工程師們要去盡快學習和采用新的工具應對挑戰(zhàn)。
舉兩個典型的例子:多核處理器和FPGA。多核處理器解決了傳統(tǒng)方式下功耗的限制,并遵循摩爾定律繼續(xù)推進處理器技術的發(fā)展。正因為有許多應用能夠從并行執(zhí)行的方式中受益頗多,所以多核技術正在為工業(yè)應用帶來巨大的機會。
同樣的,F(xiàn)PGA是另一個很好的范例。雖然FPGA稱不上是一個新興技術,不過近幾年來它在諸多領域得到了快速廣泛的采用。究其原因正是因為上文提到的行業(yè)挑戰(zhàn),隨著產(chǎn)品復雜性的增加,通過編程去快速改變硬件功能的方式讓工程師不再需要重新設計硬件,就可以增加額外的特性。