- 相關推薦
LabVIEW與MATLAB混合編程
摘要:結合實例詳細介紹了LabVIEW通過ActvieX自動化技術與MATLAB進行混合編程,達到了利用MATLAB優化算法庫的目的。將LabVIEW與MATLAB有機結合,是一條開發智能虛擬儀器的有效途徑。關鍵詞:LabVIEW語言 MATLAB ActiveX自動化 虛擬儀器
LabVIEW建立在易于使用的圖形數據流編程語言——G語言上,大大簡化了過程控制和測試軟件的開發。MATLAB以其強大的科學計算功能、大量穩定可靠的算法庫,已在為數學計算工具方面事實上的標準。但才者各有欠缺,利用混合編程可以相互補充。
MATLAB是MathWorks公司開發的“演算紙”式的程序設計語言。它提供了強大的矩陣運算和圖形處理功能,編程效率高,幾乎在所有的工程計算領域都提供了準確、高效的工具箱。但MATLAB也有不足之處,例如界面開發能力較差,并且數據輸入、網絡通信、硬件控制等方面都比較繁瑣。
美國NI公司推出的LabVIEW語言是一種非常優秀的面向對象的圖形化編程語言。LabVIEW是實驗室虛擬儀器集成環境(Laboratory Virtual Instrument Engineering Workbench)的簡稱,是一個開放型的開發環境,使用圖標代替文本代碼創建應用程序,擁有大量與其它應用程序通信的VI庫。例如LabVIEW使用自動化ActiveX、DDE和SQL,可與其它Windows應用程序集成;使用DataSocket技術、Web Server、TCP/IP和UDP網絡Vis,與遠程應用程序通信。在對硬件的支持方面,LabVIEW集成了與GPIB、VXI、PXI、RS-232/485、PLC和插入式數字采集設備等進行數據通信的全部功能。在LabVIEW下開發的程序稱為虛擬儀器VI(Virtual Instrument),因為其外形和操作可以模擬實際的儀器。在對各種算法的支持方面,LabVIEW的工具箱非常有限,這就限制了大型應用程序的快速開發。
鑒于LabVIEW和MATLAB的優點,本文介紹了通過ActiveX技術,在LabVIEW(Ver6.1)中調用和操作MATLAB(Ver6.5)的方法,實現LabVIEW和MATLAB的混合編程,充分發揮兩者的優勢。
圖1
1 基本原理
ActiveX自動化是基于組件對象模型COM(Component Object Model)的技術,允許應用程序或組件控制另一個應用程序或組件的運行,它包括自動化服務器和自動化控制器。MATLAB支持ActiveX自動化技術。通過使用MATLAB自動化服務器功能,可以在其它應用程序中執行MATLAB命令,并與MATLAB的工作空間進行數據交換。因此可以借助這一特性,把LabVIEW與MATLAB結合,充分利用MATLAB提供的大量高效可靠的算法和LabVIEW的圖形化編程能力,混合開發出功能強大的應用軟件。
2 應用舉例
在混合編程中,通常用LabVIEW設計用戶圖形界面,負責數據采集和網絡通信;MATLAB在后臺提供大型算法供LabVIEW調用。
2.1 方法一:使用MATLAB Script節點
為了簡化調用過程,LabVIEW提供了MATLAB Script節點。Lab
[1] [2] [3] [4] [5]
【LabVIEW與MATLAB混合編程】相關文章:
C#. NET與MATLAB混合編程在探空數據對比中的應用04-27
地震資料極化分析及MATLAB與VC++混合編程技術05-02
Matlab用于發動機故障預報及Delphi對Matlab的調用05-01
基于LabVIEW的虛擬儀器系統04-28
基于LabView的GPS數據采集及處理05-03
做matlab實驗心得09-27
matlab線性規劃04-30
編程的心得03-14
給機器編程04-28