- 相關推薦
基于Labview與Matlab聯合編程的路譜模擬設計
摘要:本文介紹了路譜模擬系統的系統結構與組成形式,以Labview軟件作為開發工具實現了系統軟件的操作簡便性,可視化性,精確性,并重點介紹了基于Labview與Matlab節點的設計方法。最后通過實驗臺架的測試驗證了此系統的有效型與可靠性。
關鍵詞:路譜模擬 Labview Matlab節點
一、前言
路譜模擬系統可以在試驗室內模擬再現整車在實際路面上行駛的運行工況,從而完成對汽車零部件性能檢測的試驗項目。精確、可靠的道路模擬系統可以縮短新產品的開發周期,降低開發成本,提高產品開發質量。Labview軟件具有設計界面友好、手工編碼少的優點,而matlab軟件具有強大的數學處理計算能力。本文結合這兩種開發環境的優勢,以某公司試驗室的激振實驗臺為基礎研究對象,采用軟件聯合的方法,開發設計了路譜模擬系統。
二、路譜模擬系統的實現
2.1 系統簡介
路譜模擬系統的總體設計主要包括硬件和軟件兩個部分。硬件的主要功能在于可靠地實現路譜信號的傳遞、執行,并且確保試驗過程安全、穩定。硬件主要包括車輛激振臺、功率放大器、USB數據采集器、加速度傳感器、力傳感器以及連接各個模塊的線纜。軟件的主要功能是生成路譜信號,標準信號或隨機信號并提供可視化界面供操作人員實現對試驗任務的設置、開始與停止。其中軟件的設計采用了結合了Labview和Matlab的聯合編程方法。
系統的工作過程描述為:由試驗人員設定試驗車輛數據、路面等級、車速等參數,由軟件模擬器對相應的參數計算得到對應的路面譜時域信號數據,將生成的信號以數組的形式下載給USB3020數據采集器,數據采集器進行模擬輸出,經過功率放大器的電壓轉換作用,以電壓的形式控制激振臺動作,安裝在被測車輛上的加速度和力傳感器將振動數據傳給控制臺監視軟件來檢測數據的可靠與正確性。
2.2 基于Labview的路面模擬系統界面實現
本文以軟件的操作簡便性,可視化性,數據生成精確性為設計目標,基于Labview對路面譜模擬程序進行實現。模擬軟件功能包括:路譜參數的設定,其他信號參數的設定,通道輸出開啟控制,信號的生成,生成信號數據顯示,測試過程的控制等。
界面左側主要用于參數設置與參數修改,涉及到的功能包括模擬信號類型的轉換,信號頻率,幅值等重要參數的設定,路譜等級及車型等參數的設定,傳遞函數方法的選擇以及數據輸出通道的開啟或關閉。這些功能為試驗人員在試驗過程中提供了良好的可操作性,試驗人員可以根據當前的試驗要求對試驗參數進行設定,設定過程快速,有效,簡潔。
界面右側主要用于查看各個通道生成信號的時域圖形和頻域圖形并且設定實驗總時長以及試驗的開始,停止。其功能按鈕的控制響應快速,保證了試驗的可操作性。
路譜模擬系統包括軟、硬件兩個部分,所以在進行軟件設計的時候,要考慮到軟件與硬件的匹配。本文采用以Labview編程語言編寫USB3020數據采集器控制程序的方法,利用USB3020提供的庫函數實現軟、硬件的結合。圖1即為USB3020提供的庫函數。
由圖1可以看出,其庫函數連接也是具有圖形化和數據流的特點。提供設置可以在labview中進行加載。實現的功能有:USB3020數據采集器設備的初始化,數據寫入設備緩存區,輸出數據的同步,輸出數據的觸發,設備的清除數據以及設備的釋放。將這些庫函數嵌入在系統軟件中,實現對硬件的驅動。
三、Labview的Matlab的混合編程
本文采用基于節點法labview與matlab混合編程實現友善操作界面與復雜運算的結合。主要實現功能模塊為路譜信號的生成,主要使用了Matlab腳本節點,其位置在Labview程序框圖>>函數>>數學>>腳本與公式。Matlab腳本節點是實現Labview和Matlab兩者相結合的最主要的方法。在調用時選中Matlab腳本節點放置到框圖上并調節到合適的大小,可以在其中手動輸入腳本,也可以右鍵點擊導入來導入已經寫好的腳本。Matlab腳本節點與它外部Labview框圖程序靠腳本節點的輸入輸出來連接,其輸入和輸出的設置可以在腳本節點的快捷菜單中選擇添加輸入和添加輸出。
因為Labview和Matlab是兩種不同的編程語言,有各自的數據類型定義,所以結合應用時必須注意Matlab腳本節點內外數據類型的匹配。即Labview程序框圖的數據類型要與腳本節點端子的變量數據類型一致,腳本節點端子的變量數據類型要與腳本內程序的數據類型一致。可以在腳本節點上的輸入輸出端子上點擊右鍵選擇數據類型。
在腳本節點調試時可能會遇到在Matlab中運行良好的程序代碼進入腳本節點之后報錯的情況,因為在變量導入中會存在維數變換問題,例如行向量進入腳本節點運算程序后可能會轉化為列向量,造成節點內矩陣運算出錯。初步設計時可以考慮代碼逐條導入的方法檢測
其運行出錯的位置再針對性檢測出錯原因。針對維數變換問題,設計時可以利用增大輸出變量維數并查看其數組大小的方法來檢測其維數變換情況。例如,將一維數組設定為二位數組數據類型輸出再查看其數組大小,行向量則為(n,1),列向量則為(1,n)。若存在維數問題,在腳本節點內轉置即可。另外,在腳本節點右下角有一個容錯端子,設計時可將錯誤端子輸出查看,方便調試。圖2即為路譜計算時調用的Matlab節點程序。
可以發現在Labview中不容易編寫的運算程序在腳本節點內可以實現難度降低了很多,而保證導入變量和輸出變量數據類型的一致是一個關鍵點。值得注意的是腳本節點內程序運算速度明顯比Matlab環境下運算速度慢,所以循環數量大、運算時間長、方法復雜的程序利用腳本節點方法時需要精細設計。
四、程序運行驗證
對設計的程序進行了試驗運行。設置參數為:車輛輪距1.6m,車輛軸距1.8m,參考車速50km/h,路面等級D,路面仿真結果如圖3。其中左上圖為左前輪路譜曲線,右上圖為右前輪路譜曲線,左下圖為左后輪路譜曲線,右下圖為右后輪路譜曲線。
由圖3看出,左輪前后有路面波形一致,但具有一定相差,同時右輪也具有類似的結論。說明路面模擬系統生成路譜信號與實際運行一致,該設計方法可行。
五、結語
本文基于Labview軟件采用與Matlab聯合編程的方法設計了路譜模擬軟件,通過理論分析、軟硬件聯合調試和程序運行驗證等保證了系統的可靠性、準確性,結果表明由模擬系統生成的路譜信號與監控臺采集得到的信號一致,軟件控制響應迅速,使用過程系統穩定。
所開發的系統在某公司試驗臺上已經進入了生產運行,系統運行穩定可靠。該設計方法可行和有效。
參考文獻:
[1]徐占.標準路面譜室內再現控制研究[D].武漢理工大學,2009,12.
[2]趙莉華.基于LabVIEW和Matlab虛擬實驗室的實現[J].實驗室研究與探索,2014,4.
[3]戴一平.LabVIEW平臺在教育技術學科實驗教學中的應用分析[J].現代教育技術,2012,8.
[4]裴鋒,楊萬生.LabVIEW與MATLAB混合編程[J].電子技術應用,2004,03.
[5]梁曉剛,張永昌.LabVIEW與MATLAB混合編程的實現[J].電腦開發與應用,2009,9.
[6]宋凡峰,吳廣祥.LabVIEW與MATLAB混合編程技術淺析[J].數字化用戶,2014,20.
【基于Labview與Matlab聯合編程的路譜模擬設計】相關文章:
LabVIEW與MATLAB混合編程03-19
基于MATLAB的模擬調制系統仿真(Simulink工具箱)05-27
基于MATLAB的FIR數字濾波器設計03-07
基于Matlab的層次分析法與運用03-21
基于matlab的節電模糊控制系統03-07
基于LAN的UAIS模擬器的設計與開發03-07
基于LabVIEW的自動生成Excel報告功能開發03-07
試論基于Matlab的層次分析法與運用12-03