當前位置:首頁 > 嵌入式 > 嵌入式分享
[導讀]在科研以及應用軟件領域,LabVIEW和MATLAB作為比較常用的2款工具,相信很多人都用過吧。簡單的概括一下,LabVIEW側重測試測量和數據采集,MATLAB側重科學計算和數據分析。

在科研以及應用軟件領域,LabVIEW和MATLAB作為比較常用的2款工具,相信很多人都用過吧。簡單的概括一下,LabVIEW側重測試測量和數據采集,MATLAB側重科學計算和數據分析。那么LabVIEW和MATLAB這兩款軟件之間有哪些細致區(qū)別呢?下面那么軟件Namisoft小編帶大家一起來看看吧~

一、LabVIEW和MATLAB區(qū)別介紹

LabVIEW通過拖拽圖標選擇函數的方式代替了較為繁瑣的輸入代碼編程,用線條將不同功能模塊連接起來,給用戶提供了簡單明了直接的圖形編程形式,大大減少了程序開發(fā)時間,而且運行速率幾乎不受到影響。利用LabVIEW,開發(fā)人員可以根據生產和實際需要,構建自己的儀器系統,它在工業(yè)測量和控制方面有著得天獨厚的優(yōu)勢。 LabVIEW和MATLAB的混合編程,通過LabVIEW專有程序接口調用MATLAB實現。LabVIEW設計用戶圖像界面,負責數據采集;MATLAB在后臺提供大型算法供LabVIEW調用,其程序的調用方法,可使用MATLABScript節(jié)點或ActiveX函數模板。

類似于LabVIEW的可用于工業(yè)控制領域的軟件還有ATECLOUD智能云測試平臺,這是一款自動化測試平臺,與LabVIEW化的圖形化語言不同,無需編程,15分鐘快速搭建自動化測試;自定義報告模板,可實現快速建立、快速修改;充分利用大數據、云計算,發(fā)揮數據的無限價值;ATECLOUD-APP在任何時間任何,地點皆能滿足您的遠程測試要求;數據可視化為您提供第一手的測試數據,實時分析實時展示。

MATLAB是經常使用的圖象處理軟件,它最擅長處理的數據類型是沒有維數限制的矩陣。對于一些包含了矩陣向量運算的工程設計上的問題,用戶能夠使用MATLAB輕松的解決掉,其能夠實現圖象處理方面的很多功能。用戶能夠將特征向量和矩陣通過MATLAB命令用圖形表示出來,而且能夠對圖形進行注解和打印操作。

MATLAB更多的是一種程序語言。他是一種很強大的科學計算工具。集成了大量的函數和工具箱toolbox。而LabVIEW更像一種可視化編程工具,提供大量的模塊,如按鈕,LED等。它是一種虛擬儀器,和硬件接口非常方便。尤其擅長數據采集系統。 LabVIEW的優(yōu)勢是在于ni是提供軟硬件一體的方案,也就是硬件設備ni也做,所以包含程序優(yōu)化性能,運行平臺,特別是硬件穩(wěn)定性方面,具有很大的優(yōu)勢。缺點是貴,而且你獨立做二次開發(fā)實際比較局限,一者社群小,關注的人有限,二者其編程語言不是很主流,需要轉換算法的邏輯。所以一般二次開發(fā)和需求都需要聯系ni,其會提供一些幫助。

但是近年來中美科技之爭愈演愈烈,MATLAB等軟件先后被禁,對科研等影響之大顯而易見。為避免LABVIEW出現類似情況,近年來國產測試測量軟件持續(xù)發(fā)力,ATECLOUD智能云測試平臺作為中國人自己的“LABVIEW”被國人廣泛使用。作為新晉測試測量行業(yè)的領導者,ATECLOUD智能云測試平臺更是優(yōu)化了LABVIEW的圖形化編程,直接用文本指令拖拽連接直接組建測試過程,平臺里面內置了20000+標準儀器型號的儀器指令拖拽即用,15分鐘即可搭建一整套測試方案。   MATLAB的優(yōu)勢在于其平臺比較適合算法開發(fā),得益于其早期的發(fā)展策略,MATLAB的算法開發(fā)和編程機制是非常容易上手而且簡單的,同時變量的實時可追蹤顯示的特性,對于算法層面調試很有幫助。而且現在其轉型后,各個工具箱也很強大,基于MATLAB可以做很多有用的二次開發(fā)。缺點是沒有配套硬件,MATLAB是一個純軟件,純軟件要商業(yè)化的話,穩(wěn)定性,運行效率等等就需要額外的精力去完善,MATLAB做原型設計都是不錯的,不過就可以當做其是個白盒,你的軟硬件實力很強,白盒就能發(fā)揮非常大的潛力,而如果弱的話,那么可能平均水平都不到。但是ni是追求軟硬件一體的,所以綜合穩(wěn)定性都還行,但是成本會更高。

無需授權即可轉載

最近因為項目需要,又撿起了Labview學習了一下,發(fā)現Labview這個東西真是好,所有的結果就是一個快字,這次主要是使用Labview調用Matlab中的算法文件,實現多矩陣輸入,解除多矩陣輸出,之前因為沒有接觸過這方面的東西,所以搜索了大量的文獻和文檔,大致總結了一個調用流程,就想在這里和大家分享一下,希望大家玩的開心

Matlab與Labview的幾種交互方式

通過網上的文獻,其實Labview和Matlab混合編程的文章很多,但是大多數的方式都是通過Labview中的Matlab Script直接編寫Matlab腳本,實現算法的調用,這種方法的優(yōu)缺點都很明顯,缺點就是算法如果極其復雜,這套流程根本就沒法走通,也就對于一些簡單的Matlab腳本還可以適用。

其他的方法諸如DLL調用,和COM組件技術我也沒有更深的研究,主要原因還是網上這些文章的針對性,特殊性太強,換個其他算法生成的DLL文件,就可能調用失敗,或者無法解除正確的結果。

最后,我瞄上了.net技術,主要是C#和Labview混合編程是基于.net技術,而且這類的文章也很多,Labview中也可以調用基于.net的DLL文件,所以我最終選擇的方法就是基于.net的技術的DLL文件調用,結果證明也確實是靠譜的。

.NET技術

.NET Framework 是一個針對常見程序需求提供了大量預編碼解決方案的組件。您可以從 MATLAB 中創(chuàng)建 .NET 類的實例并與 .NET 應用程序交互。MATLAB 僅在 Windows平臺上支持 .NET Framework

創(chuàng)建了.NET類后,就可以在Labview對.NET進行實例化,使用其中的屬性和方法,但是因為在Matlab中使用的數據格式為Matlab特有的MWArray類型,這種類型在Labview中無法直接使用,所以需要通過MWArray.dll文件進行數據的傳入,這個文件一般位于[Matlab安裝位置]\Matlab版本號\toolbox\dotnetbuilder\bin\win64\v4.0文件夾中,我們注意到Matlab 2017b對應的MWArray.dll是2.17.1.0版本的。

創(chuàng)建一個.Net Assembly

先從一個簡單的例子來看看Matlab中的程序是如何封裝成.net運行庫的,這里我使用的是matlab官方的例程,可以按照這個說明一步步的建立一個,net文件

訪問鏈接如下

Matlab Example

這個例子里面建立了一個簡單的一元函數,給一個輸入就可以獲得一個輸出,輸出是矩陣的形式,例如

之后我們把這個函數打包成.net組件,在APP標簽上點擊Library Compiler

for_redistribution — 包含Net文件和Matlab運行庫

for_testing — 用于測試的文件

for_redistribution_files_only — 只包含Net文件

PackagingLog.txt — 打包記錄文件

LabVIEW應用領域:

測試測量:LABVIEW最初就是為測試測量而設計的,因而測試測量也就是現在LABVIEW最廣泛的應用領域。經過多年的發(fā)展,LABVIEW在測試測量領域獲得了廣泛的承認。至今,大多數主流的測試儀器、數據采集設備都擁有專門的LabVIEW驅動程序,使用LabVIEW可以非常便捷的控制這些硬件設備。同時,用戶也可以十分方便地找到各種適用于測試測量領域的LabVIEW工具包。這些工具包幾乎覆蓋了用戶所需的所有功能,用戶在這些工具包的基礎上再開發(fā)程序就容易多了。有時甚至于只需簡單地調用幾個工具包中的函數,就可以組成一個完整的測試測量應用程序。

控制:控制與測試是兩個相關度非常高的領域,從測試領域起家的LabVIEW自然而然地首先拓展至控制領域。LabVIEW擁有專門用于控制領域的模塊----LabVIEWDSC。除此之外,工業(yè)控制領域常用的設備、數據線等通常也都帶有相應的LabVIEW驅動程序。使用LabVIEW可以非常方便的編制各種控制程序。

仿真:LabVIEW包含了多種多樣的數學運算函數,特別適合進行模擬、仿真、原型設計等工作。在設計機電設備之前,可以先在計算機上用LabVIEW搭建仿真原型,驗證設計的合理性,找到潛在的問題。在高等教育領域,有時如果使用LabVIEW進行軟件模擬,就可以達到同樣的效果,使學生不致失去實踐的機會。

兒童教育:由于圖形外觀漂亮且容易吸引兒童的注意力,同時圖形比文本更容易被兒童接受和理解,所以LabVIEW非常受少年兒童的歡迎。對于沒有任何計算機知識的兒童而言,可以把LabVIEW理解成是一種特殊的“積木”:把不同的原件搭在一起,就可以實現自己所需的功能。著名的可編程玩具“樂高積木”使用的就是LabVIEW編程語言。兒童經過短暫的指導就可以利用樂高積木提供的積木搭建成各種車輛模型、機器人等,再使用LabVIEW編寫控制其運動和行為的程序。除了應用于玩具,LabVIEW還有專門用于中小學生教學使用的版本。

快速開發(fā):根據筆者參與的一些項目統計,完成一個功能類似的大型應用軟件,熟練的LabVIEW程序員所需的開發(fā)時間,大概只是熟練的C程序員所需時間的1/5左右。所以,如果項目開發(fā)時間緊張,應該優(yōu)先考慮使用LabVIEW,以縮短開發(fā)時間。

跨平臺:如果同一個程序需要運行于多個硬件設備之上,也可以優(yōu)先考慮使用LabVIEW。LabVIEW具有良好的平臺一致性。LabVIEW的代碼不需任何修改就可以運行在常見的三大臺式機操作系統上:Windows、Mac OS 及 Linux。除此之外,LabVIEW還支持各種實時操作系統和嵌入式設備,比如常見的PDA、FPGA以及運行VxWorks和PharLap系統的RT設備。

聲明:該篇文章為本站原創(chuàng),未經授權不予轉載,侵權必究。
換一批
延伸閱讀

9月2日消息,不造車的華為或將催生出更大的獨角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數字化轉型技術解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關鍵字: AWS AN BSP 數字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術公司SODA.Auto推出其旗艦產品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關鍵字: 汽車 人工智能 智能驅動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務中斷的風險,如企業(yè)系統復雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務連續(xù)性,提升韌性,成...

關鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據媒體報道,騰訊和網易近期正在縮減他們對日本游戲市場的投資。

關鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數據產業(yè)博覽會開幕式在貴陽舉行,華為董事、質量流程IT總裁陶景文發(fā)表了演講。

關鍵字: 華為 12nm EDA 半導體

8月28日消息,在2024中國國際大數據產業(yè)博覽會上,華為常務董事、華為云CEO張平安發(fā)表演講稱,數字世界的話語權最終是由生態(tài)的繁榮決定的。

關鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應對環(huán)境變化,經營業(yè)績穩(wěn)中有升 落實提質增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務引領增長 以科技創(chuàng)新為引領,提升企業(yè)核心競爭力 堅持高質量發(fā)展策略,塑強核心競爭優(yōu)勢...

關鍵字: 通信 BSP 電信運營商 數字經濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術學會聯合牽頭組建的NVI技術創(chuàng)新聯盟在BIRTV2024超高清全產業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現場 NVI技術創(chuàng)新聯...

關鍵字: VI 傳輸協議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯合招商會上,軟通動力信息技術(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關鍵字: BSP 信息技術
關閉