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