第13章 LabVIEW常用外部接口_第1頁
第13章 LabVIEW常用外部接口_第2頁
第13章 LabVIEW常用外部接口_第3頁
第13章 LabVIEW常用外部接口_第4頁
第13章 LabVIEW常用外部接口_第5頁
已閱讀5頁,還剩29頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領

文檔簡介

1、第第13章章 LabVIEW常用外部接口常用外部接口 盡管盡管LabVIEW是一款功能強大的圖形是一款功能強大的圖形化編程軟件,但其仍然有時無法實現(xiàn)某些化編程軟件,但其仍然有時無法實現(xiàn)某些特定的功能。為了彌補自身的不足,特定的功能。為了彌補自身的不足,LabVIEW提供了強大的外部程序接口以充提供了強大的外部程序接口以充分利用其他編程語言的優(yōu)勢。分利用其他編程語言的優(yōu)勢。 LabVIEW提供的外部程序接口主要有:提供的外部程序接口主要有:DDL、API、CIN、DDE、Matlab Script和和Active X等。通過這些接口,等。通過這些接口,LabVIEW能能夠方便地調(diào)用外部程序和控件

2、以及訪問數(shù)夠方便地調(diào)用外部程序和控件以及訪問數(shù)據(jù)庫。本章將主要介紹調(diào)用庫函數(shù)、據(jù)庫。本章將主要介紹調(diào)用庫函數(shù)、Matlab接口、接口、CIN節(jié)點和節(jié)點和Active X幾種常用幾種常用外部接口的使用方法。外部接口的使用方法。13.1 調(diào)用庫函數(shù)調(diào)用庫函數(shù) 13.1.1 DLL簡介簡介 DLL是是Dynamic Link Library 的縮寫的縮寫形式,中文譯為動態(tài)鏈接庫。它是作為共形式,中文譯為動態(tài)鏈接庫。它是作為共享函數(shù)庫的可執(zhí)行文件。享函數(shù)庫的可執(zhí)行文件。 可以把動態(tài)鏈接庫理解為一個函數(shù)庫。可以把動態(tài)鏈接庫理解為一個函數(shù)庫。 DLL在編程中的廣泛應用主要緣于它的在編程中的廣泛應用主要緣于

3、它的一些優(yōu)點。一些優(yōu)點。 (1)使用較少的資源)使用較少的資源 (2)推廣模塊式體系結(jié)構(gòu))推廣模塊式體系結(jié)構(gòu) (3)簡化部署和安裝)簡化部署和安裝 Windows操作系統(tǒng)中一些作為操作系統(tǒng)中一些作為DLL實實現(xiàn)的文件有:現(xiàn)的文件有:ActiveX 控件(控件(.ocx)文件、)文件、控制面板(控制面板(.cpl)文件和設備驅(qū)動程序)文件和設備驅(qū)動程序(.drv)文件。)文件。 13.1.2 API簡介簡介 API(Application Programming Interface,應用程序編程接口)是一套用,應用程序編程接口)是一套用來控制來控制Windows的各個部件(從桌面的外的各個部件(

4、從桌面的外觀到為一個新進程分配的內(nèi)存)的外觀和觀到為一個新進程分配的內(nèi)存)的外觀和行為的一套預先定義的行為的一套預先定義的Windows函數(shù)。函數(shù)。 13.1.3 庫函數(shù)的調(diào)用庫函數(shù)的調(diào)用 “調(diào)用庫函數(shù)節(jié)點調(diào)用庫函數(shù)節(jié)點”函數(shù)支持眾多數(shù)據(jù)函數(shù)支持眾多數(shù)據(jù)類型和調(diào)用規(guī)范。類型和調(diào)用規(guī)范。 圖圖13-1 “13-1 “調(diào)用庫函數(shù)節(jié)點調(diào)用庫函數(shù)節(jié)點”函數(shù)位置函數(shù)位置圖圖13-2 “13-2 “調(diào)用庫函數(shù)調(diào)用庫函數(shù)”函數(shù)配置屬性對話框函數(shù)配置屬性對話框13.1.4 調(diào)用庫函數(shù)示例調(diào)用庫函數(shù)示例圖圖13-3 13-3 調(diào)用庫函數(shù)示例程序框圖調(diào)用庫函數(shù)示例程序框圖13.2 Matlab接口接口 13.2.

5、1 Matlab Script節(jié)點節(jié)點 Matlab是由數(shù)值分析、矩陣分析、信是由數(shù)值分析、矩陣分析、信號處理和圖形繪制等組成的一個高性能的號處理和圖形繪制等組成的一個高性能的數(shù)值計算和圖形顯示的計算軟件環(huán)境。為數(shù)值計算和圖形顯示的計算軟件環(huán)境。為了結(jié)合兩者以充分利用了結(jié)合兩者以充分利用LabVIEW和和Matlab各自的優(yōu)點,各自的優(yōu)點,LabVIEW通過提供的通過提供的Matlab Script節(jié)點可以導入和編輯節(jié)點可以導入和編輯Matlab程序。程序。 Matlab Script節(jié)點位于節(jié)點位于“函數(shù)函數(shù)”選板選板下下“數(shù)學數(shù)學腳本與公式腳本與公式腳本節(jié)點腳本節(jié)點”子選子選板中,如圖板中

6、,如圖13-4所示。所示。圖圖13-4 “13-4 “調(diào)用庫函數(shù)節(jié)點調(diào)用庫函數(shù)節(jié)點”函數(shù)位置函數(shù)位置13.2.2 Matlab Script節(jié)點示例節(jié)點示例 圖圖13-5和圖和圖13-6所示給出了在所示給出了在LabVIEW中使用中使用Matlab Script節(jié)點調(diào)用節(jié)點調(diào)用Matlab的示例。的示例。 圖圖13-5 Matlab13-5 Matlab Script Script節(jié)點示例節(jié)點示例 圖圖13-6 13-6 腳本在腳本在MatlabMatlab中的運行結(jié)果中的運行結(jié)果13.3 代碼接口節(jié)點(代碼接口節(jié)點(CIN) 在在LabVIEW中,用來調(diào)用中,用來調(diào)用C/C+的接的接口是代碼

7、接口節(jié)點(口是代碼接口節(jié)點(Code Interface Node),簡稱為),簡稱為CIN。用戶可以將編寫好。用戶可以將編寫好的的C語言代碼通過一定手段編譯成語言代碼通過一定手段編譯成LabVIEW可以識別的代碼并將其與可以識別的代碼并將其與CIN相相連,這樣如果在執(zhí)行程序時,如果需要執(zhí)連,這樣如果在執(zhí)行程序時,如果需要執(zhí)行行CIN節(jié)點時,就會自動調(diào)用此節(jié)點所連接節(jié)點時,就會自動調(diào)用此節(jié)點所連接的的C語言代碼,實現(xiàn)語言代碼,實現(xiàn)LabVIEW與與C語言代碼語言代碼的連接。的連接。 CIN節(jié)點需要調(diào)用格式為節(jié)點需要調(diào)用格式為*.lsb的文件,的文件,這種文件可以通過這種文件可以通過Visual

8、 C+ 來生成,也來生成,也因此使得因此使得CIN節(jié)點的使用比調(diào)用節(jié)點的使用比調(diào)用DLL要復雜要復雜得多。由于在生成得多。由于在生成*.lsb文件時需要用到文件時需要用到C語語言,所以在使用言,所以在使用CIN節(jié)點時必須事先安裝節(jié)點時必須事先安裝C編譯器。編譯器。 一般情況下,創(chuàng)建一般情況下,創(chuàng)建CIN節(jié)點需要以下幾節(jié)點需要以下幾步:步: (1)創(chuàng)建一個空)創(chuàng)建一個空CIN節(jié)點;節(jié)點; (2)創(chuàng)建)創(chuàng)建CIN節(jié)點的輸入輸出端口;節(jié)點的輸入輸出端口; (3)創(chuàng)建)創(chuàng)建C語言源文件;語言源文件; (4)編譯)編譯C語言源文件為語言源文件為*.lsb文件;文件; (5)加載)加載*.lsb文件到文件

9、到CIN節(jié)點,完成調(diào)用過節(jié)點,完成調(diào)用過程。程。圖圖13-7 CIN13-7 CIN節(jié)點函數(shù)接線端子節(jié)點函數(shù)接線端子 圖圖13-8 CIN13-8 CIN節(jié)點函數(shù)接線端子與控件的連接節(jié)點函數(shù)接線端子與控件的連接圖圖13-9 13-9 創(chuàng)建創(chuàng)建DLLDLL工程對話框工程對話框圖圖13-10 13-10 將將cintoolscintools路徑添加到路徑添加到DLLDLL工程中工程中圖圖13-11 13-11 代碼生成的設置代碼生成的設置 圖圖13-12 DLL13-12 DLL工程編譯命令工程編譯命令圖圖13-13 CIN13-13 CIN節(jié)點示例程序框圖和運行界面節(jié)點示例程序框圖和運行界面13

10、.4 ActiveX 13.4.1 ActiveX簡介簡介 OLE(Object Linking and Embedding,對象連接與嵌入)是一種面,對象連接與嵌入)是一種面向?qū)ο蟮募夹g(shù)。向?qū)ο蟮募夹g(shù)。 COM(Component Object Modal,組件對象模型)是一種說明如何建立可動組件對象模型)是一種說明如何建立可動態(tài)互變組件的規(guī)范。態(tài)互變組件的規(guī)范。 ActiveX是微軟為分布式計算制定的一是微軟為分布式計算制定的一套標準。它可以使用兩種不同的機制對客套標準。它可以使用兩種不同的機制對客戶請求作出響應:一種是戶請求作出響應:一種是“分布組件對象分布組件對象模型(模型(DCOM)

11、”;另一種是;另一種是“遠程自動遠程自動化(化(Remote Automation)”。 在在LabVIEW5.1及其以后版本中,及其以后版本中,LabVIEW既可作為既可作為ActiveX的服務器端,的服務器端,也可以作為一個客戶端。也可以作為一個客戶端。 ActiveX組件包括如下幾類。組件包括如下幾類。(1)自動化服務器)自動化服務器(2)自動化控制器)自動化控制器(3)控件)控件(4)文檔)文檔(5)容器)容器13.4.2 ActiveX控件控件 ActiveX控件是控件是ActiveX最常用的,它最常用的,它是存放于是存放于ActiveX容器的一個可嵌入的組件。容器的一個可嵌入的組件

12、。LabVIEW中中ActiveX容器函數(shù)位于容器函數(shù)位于“控件控件”選板下選板下“新式新式容器容器”子選板中,如圖子選板中,如圖13-14所示。利用所示。利用“ActiveX容器容器”函數(shù),用戶函數(shù),用戶可以調(diào)用第三方提供的各種可以調(diào)用第三方提供的各種ActiveX控件。控件。圖圖13-14 “ActiveX13-14 “ActiveX容器容器”函數(shù)位置函數(shù)位置 圖圖13-15 13-15 選擇選擇ActiveXActiveX對象對話框?qū)ο髮υ捒?圖圖13-16 ActiveX13-16 ActiveX日歷控件對象日歷控件對象 圖圖13-17 13-17 調(diào)用調(diào)用Windows Media

13、PlayerWindows Media Player控件程序框圖控件程序框圖圖圖13-18 13-18 調(diào)用調(diào)用Windows Media PlayerWindows Media Player控件前面板控件前面板13.4.3 ActiveX自動化自動化 ActiveX自動化是自動化是ActiveX的一個重要的一個重要組成部分,通過組成部分,通過ActiveX自動化,可以實現(xiàn)自動化,可以實現(xiàn)一個程序?qū)α硗庖粋€程序的調(diào)用。一個程序?qū)α硗庖粋€程序的調(diào)用。 LabVIEW作為作為ActiveX自動化客戶端自動化客戶端時,同樣可以訪問時,同樣可以訪問ActiveX對象。對象。ActiveX相關(guān)的操作函數(shù)

14、位于相關(guān)的操作函數(shù)位于“函數(shù)函數(shù)”選板下選板下“互互連接口連接口ActiveX”子選板中,如圖子選板中,如圖13-19所所示。示。圖圖13-19 ActiveX13-19 ActiveX函數(shù)選板函數(shù)選板圖圖13-20 ActiveX13-20 ActiveX對象選擇對話框?qū)ο筮x擇對話框 圖圖13-21 13-21 利用利用“打開自動化打開自動化”函數(shù)調(diào)用函數(shù)調(diào)用Windows Media PlayerWindows Media Player控件控件本章小結(jié)本章小結(jié) 為了能夠充分利用其他編程語言的優(yōu)為了能夠充分利用其他編程語言的優(yōu)點,點,LabVIEW提供了強大的外部程序接口提供了強大的外部程序接口能力,通過這些外部程

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論