楊國平,王聰,王亮
(上海工程技術(shù)大學(xué)汽車工程學(xué)院,上海201620)
在基于多體系統(tǒng)動(dòng)力學(xué)軟件ADAMS/Controls模塊的聯(lián)合仿真中,MATLAB以其強(qiáng)大的計(jì)算和可視化編程功能以及極高的編程效率,迅速成為從事科學(xué)研究和工程設(shè)計(jì)不可缺少的軟件;ADAMS軟件具有十分強(qiáng)大的運(yùn)動(dòng)學(xué)和動(dòng)力學(xué)分析功能,為工程領(lǐng)域用戶提供了強(qiáng)大的建模、仿真環(huán)境,使用戶能夠?qū)Ω鞣N機(jī)械系統(tǒng)進(jìn)行建模、仿真及分析;而把ADAMS 和MATLAB 聯(lián)合起來仿真,可以將機(jī)械系統(tǒng)與控制設(shè)計(jì)仿真分析有機(jī)地連接起來,實(shí)現(xiàn)機(jī)電一體化的聯(lián)合分析。
聯(lián)合仿真流程圖如圖1所示。
圖1 聯(lián)合仿真流程圖
(1)建立機(jī)械系統(tǒng)模型
可以在ADAMS/View 下直接建立機(jī)械系統(tǒng)模型,也可以輸入外部建立好的模型。
(2)確定ADAMS的輸入與輸出變量
確定輸入與輸出變量后,可以在ADAMS 和控制軟件之間形成一個(gè)閉合回路。
(3)在MATLAB 中建立起控制系統(tǒng)模型
建立起控制系統(tǒng)模型后,將其與ADAMS的機(jī)械系統(tǒng)模型聯(lián)接起來。
(4)仿真模型
可以使用交換式或批處理方式仿真機(jī)械系統(tǒng)和控制系統(tǒng)在一起的模型。
基于ADAMS/Control模塊的聯(lián)合仿真系統(tǒng)框圖2如下。
圖2 聯(lián)合仿真系統(tǒng)框圖
在進(jìn)行聯(lián)合仿真的過程中,常常因?yàn)闆]有設(shè)置正確的路徑,找不到所需要的文件而遇到仿真失敗的錯(cuò)誤提示。聯(lián)合仿真中,ADAMS/Control模塊生成.dll、.cmd、.m文件,把文件全部拷到MATLAB的當(dāng)前工作目錄下,經(jīng)過這樣設(shè)置,一般就不會(huì)再出現(xiàn)仿真失敗的錯(cuò)誤提示。
在進(jìn)行聯(lián)合仿真之前,首先要在ADAMS 和MATLAB 兩個(gè)軟件之間建立起通信聯(lián)系。首先,將ADAMS軟件所生成的“hammer _ test.m”文件、“hammer_test.cmd”文件、“hammer_test.acf”文件和“hammer_test.adm”文件導(dǎo)入到MATLAB 當(dāng)前的工作目錄下,然后啟動(dòng)MATLAB軟件,在MATLAB 調(diào)出ADAMS 子系統(tǒng)模型,具體步驟如下:
(1)在MATLAB的命令提示符下鍵入:hammer_ test,然后回車,MATLAB系統(tǒng)會(huì)自動(dòng)調(diào)用ADAMS軟件所設(shè)置的輸入和輸出變量。響應(yīng)如下:
(2)在命令提示符下鍵入who,然后回車,MATLAB 命令窗口如圖3所示。
圖3 Matlab 命令窗口
MATLAB系統(tǒng)顯示ADAMS軟件中定義的變量列表,選擇其中任意變量名可進(jìn)行檢驗(yàn)。
雙擊圖4所示ADAMS_sub模塊,便可以清楚地看到其內(nèi)部的具體組成,如圖5所示。
圖4 ADMAS 控制模版
圖5 ADMAS 子模板
2.2.1 液壓破碎錘運(yùn)動(dòng)微分方程
一個(gè)仿真模型應(yīng)能盡量全面反映被仿真對(duì)象的實(shí)際物理過程。但要完全做到不“失真”是不可能的,為此必須建立一些適當(dāng)?shù)募僭O(shè)條件。這里假設(shè):
(1)泵的供油量及系統(tǒng)壓力恒定,回油被壓為定值,閥芯和活塞的運(yùn)動(dòng)對(duì)壓力沒有影響。(2)換向閥閥芯的運(yùn)動(dòng)狀態(tài)變化按開關(guān)量考慮。(3)流體的黏度不受壓力影響并且機(jī)器工作過程中的溫度處處一致。
(4)除進(jìn)油膠管外,其他構(gòu)件都視為不變形的絕對(duì)剛體。
(5)油液中壓力波的傳遞時(shí)間忽略不計(jì),大部分情況下忽略油液的質(zhì)量,流動(dòng)為不可壓縮流體的層流。
(6)活塞與液壓缸、換向閥芯與閥箱的機(jī)械摩擦阻力、密封圈的阻力和黏性阻力均為零。
(7)活塞運(yùn)動(dòng)過程中氮?dú)馐抑袣怏w不與外界發(fā)生熱交換。
根據(jù)上述假設(shè)條件及物體運(yùn)動(dòng)所必須遵守的牛頓第二定律、流體連續(xù)性原理、氣體狀態(tài)方程,可以列出破碎錘沖擊機(jī)構(gòu)運(yùn)動(dòng)的基本微分方程組,即得到活塞和閥芯的運(yùn)動(dòng)微分方程。
液壓沖擊器結(jié)構(gòu)示意圖見圖6。
(1)活塞回程加速階段
圖6 液壓沖擊器結(jié)構(gòu)示意圖
活塞制動(dòng)和沖程階段:
式中:mp為活塞質(zhì)量,kg;
x為活塞位移,m;
v為活塞運(yùn)動(dòng)速度,m/s;
A1、A2、A3分別為活塞前后腔和氮?dú)馐矣行ё饔妹娣e,m2;
p1、p2、p3分別為活塞前后腔和氮?dú)馐覊毫?,Pa;
V為絕熱膨脹時(shí)的氮?dú)馊莘e,m3;
V0為原始氮?dú)馊莘e,m3;
p0為氮?dú)馐页錃鈮毫Γ琍a;
k為氣體多變指數(shù),這里取k=1.4。
(2)閥芯回程換向階段
閥芯沖程換向階段:
式中:mv為閥芯質(zhì)量,kg;
x為閥芯位移,m;
v為閥芯運(yùn)動(dòng)速度,m/s;
A4、A5分別為換向閥前后腔有效作用面積,m2;
p4、p5分別為換向閥前后腔壓力,Pa。
(3)活塞和閥芯運(yùn)動(dòng)狀態(tài)的劃分
狀態(tài)A:閥在下止點(diǎn),活塞回程加速。
狀態(tài)B:活塞下端面越過信號(hào)口,閥回程換向,活塞繼續(xù)回程加速。
狀態(tài)C:閥孔接通高壓管路,活塞回程減速運(yùn)動(dòng)。
狀態(tài)D:閥繼續(xù)回程換向,活塞繼續(xù)回程制動(dòng)。狀態(tài)E:閥到達(dá)上止點(diǎn),活塞繼續(xù)回程制動(dòng)。
狀態(tài)F:閥不動(dòng)作,活塞沖程加速。
狀態(tài)G:活塞上端面越過信號(hào)口,閥沖程換向,活塞繼續(xù)加速。
狀態(tài)H:閥孔接通回油管路,活塞沖程制動(dòng)。
狀態(tài)I:閥到達(dá)下止點(diǎn),活塞撞擊釬桿,活塞沖擊釬桿后進(jìn)入下一個(gè)循環(huán)。
根據(jù)上面的分析,列出活塞和閥芯的運(yùn)動(dòng)狀態(tài)判別式如表1所示。
表1 活塞、閥芯各運(yùn)動(dòng)狀態(tài)判別式
2.2.2 搭建控制系統(tǒng)模型
根據(jù)上文對(duì)液壓破碎錘運(yùn)動(dòng)狀態(tài)的分析,將活塞和閥芯的關(guān)聯(lián)運(yùn)動(dòng)細(xì)分為9個(gè)步驟,并用判別式將整個(gè)運(yùn)動(dòng)過程劃分為6個(gè)狀態(tài)過程,針對(duì)各個(gè)狀態(tài)的運(yùn)動(dòng)特征,在MATLA/Simulink 中建立基于開關(guān)控制的液壓破碎錘的仿真模型,如圖7所示。圖7中的ADAMS_sub模塊即為ADAMS 子系統(tǒng)模塊。
圖7 ADAMS 和MATLAB 聯(lián)合仿真模型
進(jìn)行聯(lián)合仿真前,須先將模型初始化。這些初始化參數(shù)需要根據(jù)廠家提供的基本參數(shù)或按某些規(guī)則、經(jīng)驗(yàn)給出。液壓破碎錘的聯(lián)合仿真系統(tǒng)輸入的參數(shù)是壓力,輸出參數(shù)是活塞與閥芯的速度、位移及加速度。這些參數(shù)設(shè)定如表2所示。
表2 初始值的設(shè)定表
2.2.3 設(shè)置仿真參數(shù)
(1)在ADAMS_sub 子模塊中,雙擊Msc Software模塊,彈出參數(shù)設(shè)置對(duì)話框,在Output Files Prefix 欄輸入“hammer_test”,名字用單引號(hào)括起來。ADAMS/Controls 用包含改名字的3種文件格式來保存仿真結(jié)果,如表3所示。
表3 仿真結(jié)果文件類型
(2)在Block Parameters:ADAMS Plant 對(duì)話框Communication Interval 欄中的數(shù)值表示ADAMS/View仿真的實(shí)際步長,應(yīng)大于或等于MATLAB 最大仿真步長,否則聯(lián)合仿真時(shí)可能出現(xiàn)警告信息。在此設(shè)置ADAMS的仿真步長為0.001,所以在后面Simulink Parameters 對(duì)話框設(shè)置的最大步長應(yīng)該小于0.001。
為了實(shí)時(shí)動(dòng)態(tài)顯示仿真動(dòng)畫,在Animation 下拉表中選擇Interactive模式。若選取Batch模式,可不用打開ADAMS/View程序也能執(zhí)行聯(lián)合仿真,但此時(shí)只能通過MATLAB仿真框圖中的示波器觀察輸出結(jié)果的變化情況。
(3)運(yùn)行模型仿真
在MATLAB Simulink 窗口選擇Simulation 菜單下的Configuration Parameters 菜單項(xiàng),彈出Configuration Parameters 對(duì)話框。
首先,設(shè)置仿真時(shí)間,及設(shè)置Start Time為0.0,設(shè)置Stop Time為0.15;然后,在Solver Options 選項(xiàng)組中,選擇Type為Variable-step,此處的Simulink仿真的最大步長應(yīng)該小于ADAMS的仿真步長,此處取0.000 5;最后,求解函數(shù)的選擇,因?yàn)槲闹醒芯康囊簤簺_擊器屬于剛性系統(tǒng),所以采用ode15s (stiff/NDF),ode15s是一個(gè)多步驟指令,是以數(shù)值微分方程(NDFs)為基礎(chǔ)的可變順序指令??蛇x擇向后微分方程BDFs (或稱為Gear法)。至此即完成參數(shù)仿真的設(shè)置。
聯(lián)合仿真結(jié)束后,得到活塞和閥芯的運(yùn)動(dòng)規(guī)律曲線,以此作為分析液壓破碎錘系統(tǒng)運(yùn)動(dòng)特性的依據(jù)。為了更好、更便利地處理、分析數(shù)據(jù),將通過兩個(gè)軟件分別輸出仿真結(jié)果。
(1)在MATLAB 中獲取仿真結(jié)果
系統(tǒng)仿真完成后,利用MATLAB的繪圖命令,給出ADAMS_uout的仿真結(jié)果,ADAMS_uout數(shù)據(jù)隱含在ADAMS_sub模塊中。
在MATLAB 提示符下輸入:
Plot(ADAMS_tout,ADAMS_uout)得到活塞和閥芯的運(yùn)動(dòng)規(guī)律曲線如圖8—13所示。
圖8 活塞位移
圖9 閥芯位移
圖10 活塞速度
圖11 閥芯速度
圖12 活塞加速度
圖13 閥芯加速度
(2)ADMAS/PostProcessor 中的仿真結(jié)果分析
作者將聯(lián)合仿真生成的數(shù)據(jù)——仿真結(jié)果文件(.res)、要求文件(.req)和圖形文件(.gra)運(yùn)用ADAMS的后處理模塊PostProcessor 進(jìn)行分析。液壓破碎錘活塞和閥芯的動(dòng)力學(xué)仿真結(jié)果如圖14—16所示。
圖14 活塞和閥芯的位移曲線
圖15 活塞和閥芯的速度曲線
圖16 活塞和閥芯的加速度曲線
由圖14可以看出:活塞的行程為s1=71.07 mm,閥芯的行程s2=12 mm,整個(gè)運(yùn)動(dòng)過程比較平穩(wěn),一直保持在一個(gè)恒定的范圍內(nèi)。
由圖15可以看出:活塞碰撞時(shí)的速度為v=8.37 m/s,由末速度法可以算出系統(tǒng)此時(shí)的沖擊能為463.48 J,與東空公司通過AEM的應(yīng)力波法得到的454.7 J的試驗(yàn)結(jié)果相比,誤差為1.93%,誤差較小。當(dāng)活塞撞擊釬桿的那一瞬間,活塞的反彈速度很小,一方面說明,碰撞時(shí)的能量傳遞效果好,大部分能量都傳遞給釬桿用來打擊物體;另一方面,活塞回彈速度小可以減小對(duì)挖掘機(jī)的沖擊。
從圖15還可以看出:閥芯的換向時(shí)間只有0.004 s,而最大速度達(dá)到5.75 m/s,所以閥芯的換向沖擊還很大?;钊笄坏膲毫κ峭ㄟ^換向閥周圍的4個(gè)中心口分別與高壓管路、回油管路的結(jié)合來控制的,因?yàn)閾Q向時(shí)間極短,所以作者在Simulink 中建立的液壓破碎錘控制系統(tǒng)中采用開關(guān)控制。
在圖16看出:過高的加速度使閥芯在換向過程中會(huì)跟換向閥箱有激烈碰撞。所以液壓破碎錘系統(tǒng)在保證釬桿和活塞強(qiáng)度的同時(shí),也要確保換向閥箱和換向閥芯的強(qiáng)度從而提高機(jī)器的使用壽命和精度。
仿真數(shù)據(jù)與官方數(shù)據(jù)對(duì)比見表4,各項(xiàng)輸出參數(shù)均在合理范圍內(nèi),說明液壓破碎錘的虛擬樣機(jī)模型在一定程度上還是真實(shí)反映實(shí)際的運(yùn)動(dòng)狀態(tài),輸出的各項(xiàng)參數(shù)有一定的參考價(jià)值。
表4 數(shù)據(jù)對(duì)比表
從兩組數(shù)據(jù)對(duì)比來看:原虛擬樣機(jī)的輸出運(yùn)動(dòng)參數(shù)還有很大提升空間,沖擊能有優(yōu)化的可能,仿真得出的沖擊能之所以比說明書上提供的值大,主要是因?yàn)榉抡媸墙⒃谝恍┘僭O(shè)條件下:系統(tǒng)壓力、流量恒定;不考慮氮?dú)馀c空氣的熱量交換;認(rèn)為運(yùn)動(dòng)部件之間摩擦阻力和黏性阻力為零。把這些因素考慮進(jìn)來,仿真結(jié)果應(yīng)該更加接近實(shí)際值。
通過對(duì)液壓破碎錘系統(tǒng)運(yùn)動(dòng)規(guī)律的分析,在一定假設(shè)條件下,建立了活塞和閥芯運(yùn)動(dòng)過程的數(shù)學(xué)模型,同時(shí)對(duì)活塞和閥芯的運(yùn)動(dòng)狀態(tài)進(jìn)行了劃分,通過MATLAB 和ADMAS 兩大仿真軟件對(duì)以東空4M型液壓破碎錘的結(jié)構(gòu)參數(shù)為基礎(chǔ)建立的虛擬樣機(jī)進(jìn)行聯(lián)合仿真,得到的各項(xiàng)參數(shù)與廠家提供的數(shù)據(jù)相近,從理論上驗(yàn)證了在一定假設(shè)條件下的液壓破碎錘虛擬樣機(jī)模型的可靠性,同時(shí)體現(xiàn)了聯(lián)合仿真優(yōu)于傳統(tǒng)的機(jī)電系統(tǒng)設(shè)計(jì)中控制模型和機(jī)械模型相互獨(dú)立的仿真形式,為研究與設(shè)計(jì)液壓沖擊系統(tǒng)提供了新的方法。
【1】何清華.液壓鑿巖機(jī)的設(shè)計(jì)與研究——基本公式的導(dǎo)出[J].中南礦冶學(xué)院學(xué)報(bào),1988,19(2):196-202.
【2】BERGMAN R,BAKER J D.Enabling Collaborative Engineering and Science at JPL[J].Advances in Engineering Software,2000,31(8/9):661-668.
【3】沈俊,宋健.基于ADAMS 和Simulink 聯(lián)合仿真的ABS控制算法研究[J].系統(tǒng)仿真學(xué)報(bào),2007,19(5):1141-1143.
【4】周鑫.基于ADAMS與MATLAB的汽車電動(dòng)助力轉(zhuǎn)向系統(tǒng)的聯(lián)合仿真[D].武漢:武漢理工大學(xué),2009.
【5】郭衛(wèi)東.虛擬樣機(jī)技術(shù)與ADAMS 應(yīng)用實(shí)例教程[M].北京:北京航空航天大學(xué)出版社,2008:221-221.
【6】董霖.MATLAB 使用詳解:基礎(chǔ)、開發(fā)及工程應(yīng)用[M].北京:電子工業(yè)出版社,2001:222-223.
【7】陳博,楊國平,高軍浩,等.基于FLOWMASTER的液壓沖擊器動(dòng)態(tài)特性仿真研究[J].機(jī)床與液壓,2011,39(11):95-97.
【8】魯建平,胡軍科,尚建忠,等.某型工程車閉式走行液壓系統(tǒng)建模與仿真[J].機(jī)床與液壓,2007,35(1):134-138.
【9】林紅,楊國平,王習(xí)兵,等.液壓沖擊器回程運(yùn)動(dòng)和沖程運(yùn)動(dòng)仿真研究[J].機(jī)床與液壓,2008,36(5):156-160.
【10】梁翠平,楊國平,王亮,等.液壓沖擊器氮?dú)馐翌A(yù)充壓力對(duì)沖擊性能的影響研究[J].機(jī)床與液壓,2011,39(7):15-17.