LabVIEW
一種程序開發環境
LabVIEW是一種程序開發環境,由美國國家儀器(NI)公司研製開發,類似於C和BASIC開發環境,但是LabVIEW與其他計算機語言的顯著區別是:其他計算機語言都是採用基於文本的語言產生代碼,而LabVIEW使用的是圖形化編輯語言G編寫程序,產生的程序是框圖的形式。
徠LabVIEW軟體是NI設計平台的核心,也是開發測量或控制系統的理想選擇。 LabVIEW開發環境集成了工程師和科學家快速構建各種應用所需的所有工具,旨在幫助工程師和科學家解決問題、提高生產力和不斷創新。
LabVIEW標誌
LabVIEW(Laboratory Virtual Instrument Engineering Workbench)是一種用圖標代替文本行創建應用程序的圖形化編程語言。傳統文本編程語言根據語句和指令的先後順序決定程序執行順序,而 LabVIEW 則採用數據流編程方式,程序框圖中節點之間的數據流向決定了VI及函數的執行順序。VI指虛擬儀器,是 LabVIEW 的程序模塊。
LabVIEW提供很多外觀與傳統儀器(如示波器、萬用表)類似的控制項,可用來方便地創建用戶界面。用戶界面在 LabVIEW 中被稱為前面板。使用圖標和連線,可以通過編程對前面板上的對象進行控制。這就是圖形化源代碼,又稱G代碼。LabVIEW 的圖形化源代碼在某種程度上類似於流程圖,因此又被稱作程序框圖代碼。
儘可能採用了通用的硬體,各種儀器的差異主要是軟體。
可充分發揮計算機的能力,有強大的數據處理功能,可以創造出功能更強的儀器。
用戶可以根據自己的需要定義和製造各種儀器。
未來
虛擬儀器研究的另一個問題是各種標準儀器的互連及與計算機的連接。目前使用較多的是IEEE488 或 GPIB協議。未來的儀器也應當是網路化的。
LabVIEW(Laboratory Virtual instrument Engineering Workbench)是一種圖形化的編程語言的開發環境,它廣泛地被工業界、學術界和研究實驗室所接受,視為一個標準的數據採集和儀器控制軟體。LabVIEW集成了與滿足 GPIB、VXI、RS-232和 RS-485 協議的硬體及數據採集卡通訊的全部功能。它還內置了便於應用TCP/IP、ActiveX等軟體標準的庫函數。這是一個功能強大且靈活的軟體。利用它可以方便地建立自己的虛擬儀器,其圖形化的界面使得編程及使用過程都生動有趣。
圖形化的程序語言,又稱為“G”語言。使用這種語言編程時,基本上不寫程序代碼,取而代之的是流程圖或框圖。它儘可能利用了技術人員、科學家、工程師所熟悉的術語、圖標和概念,因此,LabVIEW是一個面向最終用戶的工具。它可以增強你構建自己的科學和工程系統的能力,提供了實現儀器編程和數據採集系統的便捷途徑。使用它進行原理研究、設計、測試並實現儀器系統時,可以大大提高工作效率。
利用 LabVIEW,可產生獨立運行的可執行文件,它是一個真正的32位/64位編譯器。像許多重要的軟體一樣,LabVIEW提供了Windows、UNIX、Linux、Macintosh的多種版本。
它主要的方便就是,一個硬體的情況下,可以通過改變軟體,就可以實現不同的儀器儀錶的功能,非常方便,是相當於軟體即硬體!現在的圖形化主要是上層的系統,國內現在已經開發出圖形化的單片機編程系統(支持32位的嵌入式系統,並且可以擴展的),不斷完善中(大家可以搜索 CPUVIEW 會有更詳細信息;)
虛擬儀器(virtual instrument)是基於計算機的儀器。計算機和儀器的密切結合是目前儀器發展的一個重要方向。粗略地說這種結合有兩種方式,一種是將計算機裝入儀器,其典型的例子就是所謂智能化的儀器。隨著計算機功能的日益強大以及其體積的日趨縮小,這類儀器功能也越來越強大,目前已經出現含嵌入式系統的儀器。另一種方式是將儀器裝入計算機。以通用的計算機硬體及操作系統為依託,實現各種儀器功能。虛擬儀器主要是指這種方式。
虛擬儀器實際上是一個按照儀器需求組織的數據採集系統。虛擬儀器的研究中涉及的基礎理論主要有計算機數據採集和數字信號處理。目前在這一領域內,使用較為廣泛的計算機語言是美國NI 公司的 LabVIEW。
虛擬儀器的起源可以追溯到20世紀70年代,那時計算機測控系統在國防、航天等領域已經有了相當的發展。PC機出現以後,儀器級的計算機化成為可能,甚至在 Microsof t公司的 Windows 誕生之前,NI公司已經在Macintosh計算機上推出了LabVIEW2.0 以前的版本。對虛擬儀器和 LabVIEW長期、系統、有效的研究開發使得該公司成為業界公認的權威。目前LabVIEW 的最新版本為 LabVIEW2014,LabVIEW 2009 為多線程功能添加了更多特性,這種特性在 1998 年的版本 5 中被初次引入。使用 LabVIEW 軟體,用戶可以藉助於它提供的軟體環境,該環境由於其數據流編程特性、LabVIEW Real-Time 工具對嵌入式平台開發的多核支持,以及自上而下的為多核而設計的軟體層次,是進行并行編程的首選。
普通的 PC 有一些不可避免的弱點。用它構建的虛擬儀器或計算機測試系統性能不可能太高。目前作為計算機化儀器的一個重要發展方向是制定了VXI 標準,這是一種插卡式的儀器。每一種儀器是一個插卡,為了保證儀器的性能,又採用了較多的硬體,但這些卡式儀器本身都沒有面板,其面板仍然用虛擬的方式在計算機屏幕上出現。這些卡插入標準的 VXI 機箱,再與計算機相連,就組成了一個測試系統。VXI 儀器價格昂貴,目前又推出了一種較為便宜的 PXI 標準儀器。
LABVIEW有很多優點,尤其是在某些特殊領域其特點尤其突出。
測試測量:LABVIEW最初就是為測試測量而設計的,因而測試測量也就是現在LABVIEW最廣泛的應用領域。經過多年的發展,LABVIEW在測試測量領域獲得了廣泛的承認。至今,大多數主流的測試儀器、數據採集設備都擁有專門的LabVIEW驅動程序,使用LabVIEW可以非常便捷的控制這些硬體設備。同時,用戶也可以十分方便地找到各種適用於測試測量領域的LabVIEW工具包。這些工具包幾乎覆蓋了用戶所需的所有功能,用戶在這些工具包的基礎上再開發程序就容易多了。有時甚至於只需簡單地調用幾個工具包中的函數,就可以組成一個完整的測試測量應用程序。
控制:控制與測試是兩個相關度非常高的領域,從測試領域起家的LabVIEW自然而然地首先拓展至控制領域。LabVIEW擁有專門用於控制領域的模塊----LabVIEWDSC。除此之外,工業控制領域常用的設備、數據線等通常也都帶有相應的LabVIEW驅動程序。使用LabVIEW可以非常方便的編製各種控制程序。
模擬:LabVIEW包含了多種多樣的數學運算函數,特別適合進行模擬、模擬、原型設計等工作。在設計機電設備之前,可以先在計算機上用LabVIEW搭建模擬原型,驗證設計的合理性,找到潛在的問題。在高等教育領域,有時如果使用LabVIEW進行軟體模擬,就可以達到同樣的效果,使學生不致失去實踐的機會。
兒童教育:由於圖形外觀漂亮且容易吸引兒童的注意力,同時圖形比文本更容易被兒童接受和理解,所以LabVIEW非常受少年兒童的歡迎。對於沒有任何計算機知識的兒童而言,可以把LabVIEW理解成是一種特殊的“積木”:把不同的原件搭在一起,就可以實現自己所需的功能。著名的可編程玩具“樂高積木”使用的就是LabVIEW編程語言。兒童經過短暫的指導就可以利用樂高積木提供的積木搭建成各種車輛模型、機器人等,再使用LabVIEW編寫控制其運動和行為的程序。除了應用於玩具,LabVIEW還有專門用於中小學生教學使用的版本。
快速開發:根據筆者參與的一些項目統計,完成一個功能類似的大型應用軟體,熟練的LabVIEW程序員所需的開發時間,大概只是熟練的C程序員所需時間的1/5左右。所以,如果項目開發時間緊張,應該優先考慮使用LabVIEW,以縮短開發時間。
跨平台:如果同一個程序需要運行於多個硬體設備之上,也可以優先考慮使用LabVIEW。LabVIEW具有良好的平台一致性。LabVIEW的代碼不需任何修改就可以運行在常見的三大台式機操作系統上:Windows、Mac OS 及 Linux。除此之外,LabVIEW還支持各種實時操作系統和嵌入式設備,比如常見的PDA、FPGA以及運行VxWorks和PharLap系統的RT設備。
每位LabVIEW用戶的起點都是開發系統,這一開發系統也是圖形化編程的基礎環境。以下軟體包的功能相輔相成,可幫助用戶滿足當前和未來的需求。
LabVIEW包括基本版,完整版和專業版。
LabVIEW基本版:
• 圖形化用戶界面開發
• 數據採集
• 儀器控制
• 報告生成和文件I/O
LabVIEW完整版:
• 700多個數學/分析函數
• 外部代碼集成 (.dll)
• 網際網路連接
• 高級用戶界面開發
LabVIEW專業版:
• 應用發布 (creat.exe)
• 開發管理
• 源代碼控制
• 網路通信
由於LabVIEW的模塊化特性,可通過添加NI和第三方的附加軟體來滿足顧客的項目需求。下方列出的各種LabVIEW函數和高級工具可用於幫助用戶開發特定應用並將其部署至終端。
• 集成部署硬體:結合可編程自動化控制器(PAC),設計、原型與部署硬體終端,如實時系統和基於現場可編程門陣列(FPGA)的系統。
• 例如:LabVIEW Real-Time模塊,LabVIEW FPGA模塊,用於ARM微控制器的NI LabVIEW嵌入式模塊,NI LabVIEW Mobile模塊,NI LabVIEW觸摸屏模塊,NI LabVIEW無線感測器網路模塊,LabVIEW C代碼生成器,NI實時管理程序
• 信號處理、分析和連接:添加用於聲音和振動測量、機器視覺、RF通信、瞬時與短時信號分析等的專用圖像和信號處理函數。
• 例如:LabVIEW視覺應用開發模塊,聲音和振動測量套件,聲音與振動工具包,NI LabVIEW網際網路工具包,NI LabVIEW高級信號處理工具包,NI LabVIEW自適應濾波器工具包,NI LabVIEW數字濾波器設計工具包,NI LabVIEW MathScript RT模塊,頻譜測量工具包,NI LabVIEW調製工具包,NI LabVIEW機器人模塊,LabVIEW生物醫學工具包,LabVIEW電能套件,ECU測量和校準工具包,用於LabVIEW的GPS模擬工具包,用於固定WiMAX的測量套件,NI WLAN測量套件,汽車診斷指令集,LabVIEW GPU分析工具。
• 控制與模擬:使用高級控制演演算法、動態模擬與運動控制軟體,設計、模擬並執行控制系統。
• 例如:NI LabVIEW PID和模糊邏輯工具包,NI LabVIEW控制設計與模擬模塊,NI LabVIEW系統辨識工具包,NI LabVIEW模擬介面工具包,LabVIEW NI SoftMotion模塊。
• 數據管理、記錄與報表生成:快速記錄、管理、搜索採集的數據並將其導出至第三方軟體工具(如:Microsoft Office和工業標準的資料庫)。
• 例如:NI LabVIEW數據記錄與監控模塊,NI LabVIEW Microsoft Office報表生成工具包,NI LabVIEW資料庫連接工具包,NI LabVIEW DataFinder工具包,NI LabVIEW SignalExpress。
• 開發工具和驗證:用戶可利用代碼分析儀和單元測試架構,評估圖形化代碼質量並根據開發需求實現回歸測試和驗證等操作的自動化。
• 例如:NI LabVIEW VI分析儀工具包,NI LabVIEW狀態圖模塊,NI LabVIEW桌面執行跟蹤工具包,NI需求管理軟體,NI Real-Time執行跟蹤工具包,NI LabVIEW單元測試架構工具包
• 應用發布:通過創建可執行程序、安裝程序和DLL,將LabVIEW 應用程序發布給用戶;或者通過網路或網際網路共享用戶界面。
• 例如:NI LabVIEW應用程序生成器 (Windows版)
簡單回顧一下LabVIEW最近的發展歷史(也僅限於我能夠收集到的版本),從這裡也可以間接的體會到LabVIEW的發展速度有多快。從LabVIEW的軟體版本來看(我能收集到的),應該有LabVIEW 5系列、LabVIEW 6系列、LabVIEW 7系列和LabVIEW 8系列。發布年份可能有誤,以NI為準。
LabVIEW 1.0 發佈於:1986年,運行在蘋果公司的Macintosh平台上。
LabVIEW 2.0 發佈於:1988年,1990年虛擬儀器面板和結構化數據流獲兩項美國專利。
LabVIEW 3.0 發佈於:1994年
LabVIEW 4.0 發佈於:1996年
LabVIEW 5.0 發佈於:1998年
L徠abVIEW 5.1.1 發佈於:2000年3月
LabVIEW 6.02 發佈於:2001年2月
LabVIEW 6.1 發佈於:2002年1月
LabVIEW 7.0 發佈於:2003年5月
LabVIEW 7.1 發佈於:2004年4月
LabVIEW 7.1.1 發佈於:2004年11月
LabVIEW 8.0 發佈於:2005年10月
LabVIEW 8.0.1 發佈於:2006年2月
LabVIEW 8.20 發佈於:2006年8月
LabVIEW 8.2.1 發佈於:2007年3月
LabVIEW 8.2.1f4 發佈於:2007年9月
LabVIEW 8.5 發佈於:2007年8月
LabVIEW8.5.1 發佈於:2008年4月
LabVIEW8.6 發佈於:2008年8月
LabVIEW8.6.1 發佈於:2009年2月
LabVIEW 2010 發佈於:2010年8月
LabVIEW 2011 發佈於:2011年8月
LabVIEW 2012 發佈於:2012年8月
LabVIEW 2013 發佈於: 2013年8月
LabVIEW 2014 發佈於: 2014年8月
從NI的LabVIEW版本號,可以看出:
1、系列號:5、6、7、8表示新的系列,軟體結構或功能可能有重大改進(付費升級)
2、版本號:5.x、6.x、7.x、8.x表示軟體有新的內容或比較大的改進(付費升級)
3、版本號:5.x.x、6.x.x、7.x.x、8.x.x表示軟體較上個版本進行了修補(免費升級)
LabVIEW
作 者:陳樹學 編著
出 版 社:電子工業出版社
出版時間:2014-9-1
版 次:1
頁 數:466
字 數:806000
印刷時間:2014-9-1
本: 16開
紙 張:膠版紙印
印 次:1
包 裝:平裝
書 名:LabVIEW寶典
LabVIEW寶典
出 版 社:電子工業出版社
出版時間:2011-3-1
版 次:1
頁 數:603
字 數:973000
印刷時間:2011-3-1開
本: 16開
紙 張:膠版紙印
印 次:1
包 裝:平裝
書名:我和LabVIEW--一個NI工程師的十年編程經驗
LabVIEW
叢 書 名:博客藏經閣叢書
出 版 社:北京航空航天大學出版社
出版時間:2009-09-01
版 次:1
頁 數:412
裝 幀:平裝
開 本:16開