《LabVIEW寶典(第2版)》詳盡講解了LabVIEW常用的編程方法、編程技巧和工程應用技術。全書共分為3篇,其中,入門篇歸納總結了LabVIEW編程人員必須掌握的基礎知識,包括LabVIEW的基本概念、基本函數的用法和常用的運行結構,以及LabVIEW的基本數據結構和文件存儲方式;高級篇細致地講解了引用、屬性、方法及各類高級控件的運用,LabVIEW的文本方式編程及DLL、C語言接口,基于MATLAB語法的math*編程技術,LabVIEW基于組件的高級編程方法和編程模式;工程應用篇介紹了串口、并口和網絡通信的常用方法,數據采集的基本原理和方法,LabVIEW實時系統的構建和編程,以及各種常用專業工具包的使用方法,包括數據庫連接工具包、數據監控與記錄工具包、報表生成工具包、狀態圖工具包等。本書可作為高等院校通信、測量技術、自動控制等相關課程的教材和教學參考書,也可作為相關工程技術人員設計開發儀器或自動測試系統的技術手冊。
前 言
計算機的出現,徹底改變了人們的工作和生活方式。如今計算機已經無處不在,進入了每個人的生活之中。在工程技術人員看來,計算機不僅僅是人們常見的PC,也包括各種微處理器。從這個角度看,我們無時無刻不在使用計算機,例如,電視、洗衣機、自動提款機等都依賴計算機來實現各種便捷的功能。
相同的計算機可以完成不同的工作,在于它們使用不同的程序,而程序是由計算機編程語言創建的。短短幾十年中,出現了眾多的編程語言,這些編程語言的共同特點是采用文本方式創建程序。文本方式編程對編程人員要求很高,這使得計算機編程只能是少數人才可以從事的職業。
美國國家儀器公司(National Instruments, NI)的創新軟件產品LabVIEW,允許用圖形方式編程,摒棄了晦澀難懂的文本代碼,使得計算機編程不再是少數人的專利。LabVIEW的最早版本誕生于1986年,幾乎和Windows的最早版本同步,這注定了LabVIEW是多平臺的編程語言,適合于不同的操作系統。
20世紀80年代初,NI公司是GPIB總線設備的主要供貨商,豐富的硬件經驗和強大的軟件開發需求,促使NI公司的工程師們決心尋找一種代替傳統編程語言的開發工具,這導致了1986年LabVIEW的橫空出世。LabVIEW是由測試工程師開發的專用編程語言,因此,LabVIEW具有鮮明的行業特點,最早主要用于測試測量領域。NI公司獨創了虛擬儀器的理念,提出了軟件就是儀器的理念,并逐步成為業界的標準。
隨著LabVIEW的不斷發展,幾乎每隔一兩年,都要推出新的版本。LabVIEW的應用范圍已經覆蓋了工業自動化、測試測量、嵌入式應用、運動控制、圖像處理、計算機仿真、FPGA等眾多領域。以LabVIEW為核心,采用不同的專用工具包和統一的圖形編程方式,可以實現不同技術領域的需求。
由于LabVIEW版本升級過快,導致許多函數、VI的名稱與圖標發生了變化。使用LabVIEW新版本的讀者,會發現本書第1版中程序框圖的函數、VI與新版LabVIEW對應不上,而且LabVIEW每次更新都增加了很多新功能。鑒于此,我們編寫了本書的第2版。第2版在2016新版LabVIEW的基礎上,重新編寫了絕大部分程序框圖,同時也針對新功能,增加了對應的內容。尤其是對第10章,重寫了大部分內容,增加了許多流行的框架結構的介紹。除了LabVIEW本身的框架外,也介紹了幾種流行的第三方常用框架結構。
本書要點
本書作者多年使用LabVIEW作為主要的編程語言,因此特別關注LabVIEW在工業領域的具體運用以及LabVIEW的實用編程技術。本書共17章,分為入門篇、高級篇、工程應用篇。
第1~5章為入門篇,介紹了LabVIEW的基本概念、基本函數的用法和常用的運行結構,詳盡地分析了LabVIEW的基本數據結構和文件存儲方式。
第6~11章為高級篇,介紹了應用程序、VI和控件的引用、屬性和方法,以及各類高級控件的運用方法。第8章介紹了LabVIEW的文本編程方式及DLL、C語言接口,第9章詳細介紹了基于MATLAB語法的MathScript編程技術,第10章介紹了LabVIEW基于組件的編程方法。
第12~17章為工程應用篇,具體而細致地講解了在做實際工程開發時所用到的LabVIEW編程技術。本篇結合LabVIEW的常用工具包,具體分析了計算機串口、并口、網絡通信方面的編程技術,以及數據記錄和監控工具包、數據庫連接工具包、報表生成工具包、狀態圖工具包、FPGA工具包等的應用。第13、第14章詳細介紹了數據采集的基本原理和常用編程方法,其中重點介紹了LabVIEW在實時系統下的運用。第15章講解了LabVIEW實時系統的開發案例。第16章講解了LabVIEW數據采集系統開發案例。第17章講解了FPGA的開發案例,以及如何利用LabVIEW圖形編程方式,提高開發效率。
本書讀者
本書可作為高等院校通信、測量技術、自動控制等相關課程的教材和教學參考書,也可作為相關工程技術人員設計開發儀器或自動測試系統的技術手冊。
本書特色
本書內容非常豐富,在每個章節都安排了大量的示例,針對具體編程實踐中遇到的問題,提出了多種解決方法。在兼顧基礎知識的前提下,深入討論了LabVIEW的高級編程方法和編程技巧。
本書的宗旨是作為實用工具書,側重于來自工程實踐的一線案例。筆者在寫作過程中,與眾多的LabVIEW愛好者進行了充分的溝通與交流,總結了編程過程中經常遇到的問題,并作為本書的重要內容。
本書使用了大量篇幅講解NI公司各種專用工具包的運用,這部分內容具有一定的深度和實用價值,特別適合于具有一定基礎的編程人員學習運用。在基礎篇中,雖然也介紹了許多LabVIEW的基礎知識,但還是側重于具體應用,其中大量的例程可以直接在具體項目中使用。
在高級篇中,重點介紹了LabVIEW常用的編程模式,以及狀態圖工具包的運用,同時介紹了新增的面向對象的編程方法。
補遺說明
本書寫作時主要使用8.6版本,但是書中介紹的具體內容并不限于特定的版本,因此無版本限制。本書案例文件和相關課件在網址read.zhiliaobang.com可以下載,方便讀者提高學習效率,也方便教師教學。此外,對于比較重要的內容,為了讓讀者印象深刻,我們以學習筆記的體例呈現出來。
致謝與分工
本書由陳樹學、劉萱兩位工程師編寫,我們有多年的LabVIEW實際開發經驗,經過濃縮和總結才成此書。在編寫本書的過程中得到張國強老師的大力支持,他為我們提供了開發硬件,使得寫作能在真實的開發環境中進行,應該說沒有他的熱心幫助完成本書是難以想象的事情。本書也離不開成都道然科技有限責任公司的專業策劃支持。因為本書作者為工程技術人員,對于寫作并不擅長,書中錯漏之處在所難免,敬請批評指正。能夠為LabVIEW在國內的推廣使用做一點力所能及的貢獻,能夠對廣大的LabVIEW愛好者有所幫助,是我們最大的愿望。如果你有任何意見或者建議歡迎聯系:info@dozan.cn。
陳樹學,1989年畢業于哈爾濱工業大學動力工程系,畢業后進入一汽集團公司,負責專用機床、加工自動線和測試設備的軟件開發工作。初期使用C語言,從LabVIEW 6.0版本開始,采用LabVIEW作為優選編程語言。 劉萱,2005年畢業于天津大學計算機科學與技術專業。畢業后進入天津久榮車輪技術有限公司主持車輪輪胎檢測設備系統軟件的研發工作。2006年首次接觸LabVIEW 7.2并在實際項目中使用,十余年來積累了利用LabVIEW開發工程項目的豐富經驗。