完整版白皮書(shū)下載頁(yè)面:http://www.jytek.com/whitepaper20170808_labview_nxg 關(guān)于此白皮書(shū) 2017年5月美國國家儀器有限公司(以下簡(jiǎn)稱(chēng)NI)同時(shí)發(fā)布了兩個(gè)LabVIEW版本:LabVIEW 2017與LabVIEW NXG。同一家公司在同一個(gè)時(shí)間一起公布兩個(gè)相近的產(chǎn)品(軟件),這是很不尋常的情況。鑒于LabVIEW在虛擬儀器測試測量領(lǐng)域的主導地位,NI的此舉必將會(huì )對測試測量領(lǐng)域乃至與其該領(lǐng)域相關(guān)的工業(yè)、科研、教育等行業(yè)產(chǎn)生不小的連鎖影響。 本白皮書(shū)旨在幫助相關(guān)行業(yè)的從業(yè)者和客戶(hù)客觀(guān)解讀“兩個(gè)版本LabVIEW”,給LabVIEW用戶(hù)和非LabVIEW用戶(hù)做決定時(shí)做一個(gè)參考,尤其是通過(guò)此白皮書(shū)可以幫助當前的LabVIEW用戶(hù)在這個(gè)變革的時(shí)期,做出一個(gè)理性的、正確的下一步軟件開(kāi)發(fā)計劃。 簡(jiǎn)儀科技提倡基于開(kāi)源、C#、.NET等技術(shù)為基礎的測試儀器軟件。同時(shí)密切注視儀器軟件的動(dòng)態(tài)。簡(jiǎn)儀希望這份白皮書(shū)給業(yè)界人士帶來(lái)中肯的建議,簡(jiǎn)儀也相信現今快速發(fā)展的軟件技術(shù)終將給儀器軟件帶來(lái)翻天覆地的變化,并徹底打破多年來(lái)儀器軟件被一家壟斷的局面。 概述 通用儀器測試軟件 當前測試測量領(lǐng)域使用的主要軟件開(kāi)發(fā)語(yǔ)言有C/C++、C#、VB、LabVIEW、Python等等,在虛擬儀器開(kāi)發(fā)軟件這一細分領(lǐng)域,在過(guò)去的30年中,LabVIEW以其直觀(guān)的圖形化編程特點(diǎn),逐漸占據了該細分領(lǐng)域的主導地位,LabVIEW軟件由美國國家儀器有限公司(以下簡(jiǎn)稱(chēng)NI)提出并常年推廣。 由于測試測量行業(yè)的發(fā)展相對封閉和緩慢,相比當今的工程技術(shù)發(fā)展迅速,有很多優(yōu)秀的技術(shù)并沒(méi)有得到足夠多的了解和重視,特別是在軟件工程領(lǐng)域,F在的軟件工程已經(jīng)全面轉向面向對象的編程思想,相比較測控界的軟件工具和編程方法還停留在面向過(guò)程,LabVIEW就是面向過(guò)程軟件的典型代表。面向過(guò)程能夠快速解決小項目開(kāi)發(fā),但是在中型和大型復雜的定制化測試項目,面向過(guò)程的圖形編程的各種弊病顯現:可讀性差,可維護性低,執行效率低,多線(xiàn)程實(shí)現難。相反,以C#為代表的微軟主推的面向對象的語(yǔ)言快速發(fā)展,可以完美解決以上問(wèn)題,其智能文本編程的編譯環(huán)境易學(xué)易用,同時(shí)所有的編程邏輯和結構都可以進(jìn)行面向對象的設計,使得代碼重用,團隊項目協(xié)作變得輕松自如。由于Visual Studio/C#/.NET是通用開(kāi)發(fā)環(huán)境(IDE),大量的應用并不在測試測量行業(yè),又由于有一些測試測量行當專(zhuān)用的工具沒(méi)有在此IDE中,這就造成了Visual Studio/C#/.NET IDE沒(méi)有成為測試儀器主流軟件。盡管如此,很多用戶(hù)都已自發(fā)地發(fā)現了Visual Studio/C#/.NET的潛力,成功地開(kāi)發(fā)了數不盡的測試測量應用。 簡(jiǎn)儀科技作為一個(gè)新成立的中國自主知識產(chǎn)權的測試公司,敏銳地察覺(jué)到Visual Studio/C#/.NET和開(kāi)源社區的巨大潛力,在全球第一個(gè)創(chuàng )造性提出了直接用微軟C#語(yǔ)言和.NET技術(shù)來(lái)直接搭建一個(gè)完全符合面向對象思維的測控軟件平臺:銳視開(kāi)發(fā)軟件—SeeSharp®。銳視開(kāi)發(fā)軟件SeeSharp®把成熟的Visual Studio/C#/.NET技術(shù)和開(kāi)源社區的豐富內容進(jìn)行系統的整理,有條不紊地引入到測控行業(yè),這將徹底改變LabVIEW壟斷通用測試軟件的現狀。 LabVIEW 和 LabVIEW NXG LabVIEW 是NI 1986年推出的圖形編程(G語(yǔ)言)軟件,誕生的比Windows還早。最早期LabVIEW是用來(lái)控制儀器的,后來(lái)NI把LabVIEW的功能逐漸擴充到數據采集,PXI,工業(yè)控制,運動(dòng)控制等多個(gè)領(lǐng)域。 在很大的程度上,LabVIEW就是虛擬儀器技術(shù)的別名,LabVIEW對儀器行業(yè)的貢獻是巨大的,有目共睹的。NI在LabVIEW上巨大的投資加上NI早期在PXI的推動(dòng)使得LabVIEW/PXI成為NI壟斷PXI模塊儀器市場(chǎng)的主要因素。LabVIEW也成為了最常用的通用測試軟件。 隨著(zhù)LabVIEW壟斷地位的逐漸形成,LabVIEW從9.0開(kāi)始命名為L(cháng)abVIEW 2009,此后版本以年份為代號頻繁更新,一年一個(gè)版本,年中往往再增加一個(gè).0.1版本或者SP1(例如LabVIEW 2009SP1),實(shí)際上接近一年兩個(gè)版本,很多用戶(hù)喜歡用.0.1版本或者SP1,因為會(huì )解決掉一些軟件使用問(wèn)題。LabVIEW和其它商業(yè)軟件一樣,通過(guò)頻繁的更新來(lái)促進(jìn)圍繞著(zhù)LabVIEW的軟硬件銷(xiāo)售。 但是LabVIEW NXG不是LabVIEW 2017的尋常升級版本,否則它更可能的會(huì )被命名為L(cháng)abVIEW 2018,而不是像現在這樣,加一個(gè)NXG后綴說(shuō)明 (即下一代:Next Generation),還要從1.0做起。通過(guò)NI官網(wǎng)中NXG與以往LabVIEW版本特性的比對表我們可以發(fā)現,不能想當然地認為當前的LabVIEW用戶(hù)可以像以往那樣升級,以往的代碼從一個(gè)版本的LabVIEW轉到下一個(gè)版本的LabVIEW,即所謂的升級,雖然不是完全順暢,例如會(huì )有一些斷線(xiàn),新的工具包不能用,新的硬件驅動(dòng)不支持等等問(wèn)題?偟膩(lái)說(shuō),用戶(hù)已有的LabVIEW程序和應用還是比較容易的升級到新的版本。 但這次NXG的出現和以往版本升級完全不一樣,如果用戶(hù)要繼續保留以前多年的LabVIEW代碼勞動(dòng)成果,這次要大費周折,而且有些轉換將是不可能的,例如RT、FPGA等產(chǎn)品線(xiàn)的相關(guān)應用。本白皮書(shū)將根據NI官方披露的信息來(lái)試圖解讀其前因后果。首先我們先來(lái)看一看軟件技術(shù)發(fā)展的另外一支Visual Studio/C#/.NET。 Visual Studio/C#/.NET 早期的Windows應用受DOS和x86體系的限制,開(kāi)發(fā)工具有限,開(kāi)發(fā)效率低,藍屏現象普遍。開(kāi)發(fā)者往往要從最底層的WinAPI著(zhù)手開(kāi)發(fā)應用。雖然Win/Intel系統是主流系統,但是Win/Intel系統的可靠性一致備受質(zhì)疑。為了改善Win/Intel系統的開(kāi)發(fā)環(huán)境,微軟、HP、Intel于2000年就提出了.NET的體系結構并通過(guò)了工業(yè)標準的認證。簡(jiǎn)言之,.NET是管理Windows底層設備的獨立中間運行層。微軟希望所有的應用開(kāi)發(fā)者通過(guò)調用.NET來(lái)開(kāi)發(fā)Windows的應用程序。為了使調用.NET便于使用,微軟還同時(shí)研制了類(lèi)似于Java的編程語(yǔ)言C#。幾乎是在同一時(shí)刻,C#也被納入為工業(yè)標準之一。 經(jīng)過(guò)十六年的發(fā)展,.NET已經(jīng)非常成熟,C#作為微軟推薦的程序語(yǔ)言也成為了微軟Visual Studio IDE中的主要成員之一,基于Visual Studio/C#/.NET的資源也日益豐富,特別是開(kāi)源社區的資源。為了使Visual Studio/C#/.NET成為軟件工程的主流開(kāi)發(fā)工具,順應開(kāi)源軟件的潮流,微軟不僅將大部分的.NET代碼開(kāi)源,更在2014年將Visual Studio免費,減少開(kāi)發(fā)人員的開(kāi)發(fā)成本。同時(shí),微軟還花了大力氣并購了.NET在Linux和MacOS上的實(shí)現平臺Mono,使得Visual Studio/C#/.NET成為了跨平臺的最佳選擇。 正是由于微軟的巨大投資及開(kāi)源社區的貢獻,Visual Studio/C#/.NET已經(jīng)成為了Windows平臺下的無(wú)可爭議的最佳開(kāi)發(fā)環(huán)境。世界上沒(méi)有任何一家其它軟件公司可以有資源來(lái)競爭這一地位。NI當然也不例外。所以把Visual Studio/C#/.NET引入儀器測試行當成為主流的測試軟件只是時(shí)間的問(wèn)題,在技術(shù)上沒(méi)有任何的懸念。簡(jiǎn)儀只是順勢而為,促進(jìn)和加快了Visual Studio/C#/.NET在通用測試技術(shù)中的應用。 完整版白皮書(shū)下載頁(yè)面:http://www.jytek.com/whitepaper20170808_labview_nxg |