LabVIEW(英語:Laboratory Virtual Instrumentation Engineering Workbench,實驗室虛擬儀器工程平台)是由美國國家儀器公司所開發的圖形化程式編譯平台,發明者為傑夫·考度斯基(Jeff Kodosky),程式最初於1986年在蘋果電腦上發表。LabVIEW早期是為了儀器自動控制所設計,至今轉變成為一種逐漸成熟的高階程式語言。圖形化程式與傳統程式語言之不同點在於程式流程採用"資料流"之概念打破傳統之思維模式,使得程式設計者在流程圖構思完畢的同時也完成了程式的撰寫。

LabVIEW
LabVIEW的圖示
開發者美國國家儀器公司
首次發布1986年,​38年前​(1986
目前版本
  • 2021 (2021年7月;穩定版本)[1]
編輯維基數據鏈結
程式語言視覺化程式設計語言
作業系統WindowsmacOSLinux
平台跨平台[2]
語言英語簡體中文
許可協定專有軟體
網站http://www.ni.com/labview/

LabVIEW率先引入了特別的虛擬儀表的概念,使用者可透過人機介面直接控制自行開發之儀器。此外LabVIEW提供的函式庫包含:訊號擷取、訊號分析、機器視覺、數值運算、邏輯運算、聲音震動分析、資料儲存等。目前可支援WindowsUNIXLinuxmacOS等作業系統。由於LabVIEW特殊的圖形程式簡單易懂的開發介面,縮短了開發原型的速度以及方便日後的軟體維護,因此逐漸受到系統開發及研究人員的喜愛。目前廣泛的被應用於工業自動化之領域上。LabVIEW預設以 多執行緒執行程式,對於程式設計者更是一大利器。此外LabVIEW通訊介面方面支援:GPIBUSBIEEE1394MODBUS串列埠並行埠IrDATCPUDPBluetooth.NETActiveXSMTP等介面。

近年來 LabVIEW 除了可以在 PC 上面撰寫之外,另外支援即時系統(Real-time OS)以及可程式邏輯閘陣列(Field Programmable Gate Array, FPGA)。使用者可以透過 LabVIEW 開發環境設計、編譯程式後下載至微處理器(Micro-processor)或 FPGA晶片,最終達到獨立運作(Stand-alone)的功能。但目前主要還是支援 NI 自行生產的嵌入式系統系列產品,通稱 NI-RIO 系列產品。比如:PCI/PXI R系列 DAQ卡片、CompactRIO、single-boardRIO、myRIO...等。

資料流編程 編輯

LabVIEW程式語言,也被稱為G語言,是一種資料流程式語言。程式設計師通過繪製導線連接不同功能的節點,圖形化的程式方塊圖(LV原始碼)結構決定程式如何執行。這些線傳遞變數,所有的輸入資料都準備好之後,節點便馬上執行。這可能出現同時使用多個節點的情況,G語言天生地具有並列執行能力。內建的排程演算法自動使用多處理器多執行緒硬體,可以跨平台地在可執行的節點上復用執行緒。

圖形化編程 編輯

LabVIEW將建立使用者介面(稱為前面板)的工作自然地融合到開發周期當中。LabVIEW的程式/子程式被稱為虛擬儀器(VI)。每個VI都有三個組成部分:程式方塊圖(Block Diagram)、前面板(Front Panel)和圖示/連接器(Icon/Connector)。連接器是用來供其他的程式方塊圖呼叫本VI之用。程式設計師可以利用前面板上的控制控制項將資料輸入正在執行的VI,或者用顯示控制項將運算結果輸出。前面板還可以作為程式的介面:每個虛擬儀器(VI)既可以把前面板當作使用者介面,作為一個程式來執行;也可以作為一個節點放到另一個VI程式方塊圖中,通過連接器面板連接起來,而前面板則定義VI的輸入和輸出。這意味著每個VI,在作為子程式嵌入到一個大型的專案之前,都可以很方便地進行測試。

圖形化的方法還允許非程式設計師通過拖放虛擬化形式的VI的方法來生成程式,控制他們已經熟悉的實驗室裝置。在LabVIEW編程環境下,藉助已經提供的大量常式和文件,可以很容易地建立小型應用程式。這是好的一方面。編寫複雜的演算法或大規模的代碼時,程式設計師需要對LabVIEW特殊的語法具有廣泛的了解,並且通曉LabVIEW記憶體管理的拓撲結構。最先進的LabVIEW開發系統提供了建立獨立應用程式的可能性。此外,還可以建立分散式應用,通過客戶機/伺服器模式進行通訊。由於G語言天生的並列性特性,這很容易實現。

計時系統 編輯

LabVIEW使用1904年1月1日(Epoch參考日期)作為「零」(起始)時間。使用1904年1月1日作為起始時間的軟體還有蘋果公司的Mac OS 9,Palm OS,MP4,Microsoft Excel(可選)。

版本 編輯

LabVIEW 8.X 編輯

 
LabVIEW的編輯環境-人機介面
 
LabVIEW的編輯環境-程式方塊圖
 
利用LabVIEW之圖形介面開發之光學類比軟體之人機介面。

LabVIEW 8.X之版本中引入了物件導向(OOP)之程式設計概念,使LabVIEW更接近一個完整的程式語言。LabVIEW 8.20版的命名是為了慶祝LabVIEW第20週年。目前最新的版本為LabVIEW 8.6。LabVIEW 8.5新增的功能如下:

  • 輕鬆整合如多核心處理器的最新技術
  • 以新功能管理軟體開發,如圖形化合併VI的功能
  • 以新的BLAS訊號處理程式庫,更迅速地分析資料
  • 以新的狀態圖程式設計方式,開發完整的應用

LabVIEW 2009 編輯

LabVIEW 2010 編輯

NI LabVIEW 2010新特性
LabVIEW 2010平台類軟體在更新時,新特性直接由客戶請求驅動、具有更強大的定時與同步功能、獲得改進的後端編譯器可生成經最佳化的機器碼並將應用程式在執行時的執行效能提升20%。這款最新版LabVIEW增加了編程特性,為應用程式注入更多效能與效能;無論您是首次使用還是長期使用NI LabVIEW 2010的專家,都能獲得效率的提升。

NI LabVIEW 2010內含:LabVIEW的新功能、各類LabVIEW模組、LabVIEW網際網路工具包、針對其餘LabVIEW平台的更新和缺陷修復。NI標準服務專案的使用者可立即下載LabVIEW 2010。訪問服務資源中心,以便下載其他LabVIEW產品並了解特殊且隨需應變的培訓模組。
LabVIEW 2010平台特性
LabVIEW 2010開發系統特性

  • 憑藉新型後端編譯器技術和自訂代碼最佳化, 加快執行代碼的速度
  • 通過14類直接源於使用者回饋的新型改進, 簡化開發
  • 消除與子VI呼叫相關的開銷
  • 將經編譯的原始碼儲存至單獨檔案內, 簡化團隊開發
  • 通過將原始碼封裝至配有打包的專案庫的單一檔案內, 簡化代碼部署和發布

NI LabVIEW 2010 Real-Time模組特性

  • 經最佳化的主機/目標終端資料傳輸, 搭配網路流
  • 聯網目標里新的、基於Web的監測與組態
  • 能夠通過Web服務發布變數

NI LabVIEW 2010 FPGA模組特性

  • 新型選件針對分散式編譯
  • 可匯入Xilinx核心生成器 (CORE Generator) IP
  • 通過程式生成規範, 更好地管理位流檔案 (bitfile)與設定
  • 精確至周期的仿真結合ModelSim

NI LabVIEW 2010 MathScript RT模組特性

  • NI即時 (Real-Time)目標上的確定性執行
  • 自動檢測針對MathScript節點輸出變數
  • 最佳化的LabVIEW MathScript窗口文字編輯器

LabVIEW 2011 編輯

LabVIEW 2012 編輯

LabVIEW 2013 編輯

LabVIEW 2014 編輯

LabVIEW 2015 編輯

LabVIEW 2016 編輯

LabVIEW 2017 編輯

LabVIEW 2018 編輯

此版LabView加入了對於Python的支援,可於Labview呼叫Python程式。

LabVIEW 2019 編輯

LabVIEW 2020 編輯

此版本加入了物件的介面功能,也讓AF的抽象訊息透過介面進行繼承。

編輯

  1. ^ https://www.ni.com/pdf/manuals/374715r.html.
  2. ^ LabVIEW Development Systems. [2009-10-06]. (原始內容存檔於2017-05-09) (英語). 

外部連結 編輯