第一篇:Adams振動仿真心得
Adams單自由度隔振掃頻研究心得:
1.對于box剛體,討論y方向單自由度,對box需要兩點移動副約束,兩點要求是棱角點
或者中心點,而且兩點不能在一個y的高度上(猜測可能有冗余約束)。
2.Box上的兩點移動副約束要求:first body 與second body 要求互換,即同一零件不能作
為兩個移動副的first body。如果還不行,在滿足說說的條件下,多嘗試幾種組合。
3.重力場的加載與否不影響頻響應(yīng)函數(shù)的得出及結(jié)果。頻響函數(shù)縱坐標單位為分貝,即振
幅的常用對數(shù)的20倍。
4.幅頻特性曲線,無阻尼對應(yīng)相位差180°,有阻尼對應(yīng)相位差小于180°。
5.加載重力加速度后,時域仿真會整體自由落體,靜態(tài)求解會報錯,但是不影響頻響求解。
6.當彈簧阻尼系數(shù)設(shè)置過大時,(共振峰值近似消除),頻響求解會報錯,可能是振動模塊
無法仿真過阻尼狀態(tài)。
1.2.3.非線性彈簧下,對于質(zhì)量塊,如何建立力? 右鍵彈簧功能圖標,選擇“箭頭指向一點”的圖表,確定詳細欄中為:Two Bodies、constant,選擇質(zhì)量塊→選擇ground→選擇質(zhì)量中心→方向確定點。對新建的力以后,要modify一下,因為通過剛度外部數(shù)據(jù)需由常數(shù)改為函數(shù)。函數(shù)-AKISPL(DM(MAKER_11,PART_3.CM)-400,0,SPLINE_1,0),大括號內(nèi)依次表
示,MAKER_11和PART_3.CM兩標記點之間的距離減參考坐標(即第一變量為變形),沒有第二變量,曲線名稱為SPLINE_1,微分階數(shù)為零。
研究非線性彈簧彈簧力和位移的關(guān)系,要用非線性力取代彈簧。得到的力-位移曲線曲率大的部分放大后會發(fā)現(xiàn)是具有滯回特性的。
需建立兩個測量,監(jiān)測力和位移。
研究有阻尼彈簧振幅衰減過程,可定義衰減系數(shù)指標,表示前兩個峰值之比。4.5.6.1.導入的參數(shù)文件如果是csv格式,在導入后,time column index 可以不輸入1,如果是
txt格式需要輸入1才能讀入數(shù)據(jù)曲線。
2.利用模型確認工具,可以發(fā)現(xiàn)模型自由度數(shù)目不對,或者模型有問題時,利用children
按鈕可以找到問題所在;需要刪除零質(zhì)量零件但是又找不到零件時,在菜單欄view 下面的part only 或者model里面可以找到并刪除。
3.輸入設(shè)計變量要干脆,不要修改,否則出現(xiàn)編號雜亂無章,變量過多,暫時不知道怎么
刪除無用編號。
1.通過繪制垂直方向(或水平方向)頻響的幅值曲線與相位曲線,可以看出影響垂直方向
(或水平方向)響應(yīng)的最大的模態(tài)頻率。
2.通過繪制功率譜密度或PSD曲線,可以顯示振動分析中各種頻率輸入的傳遞能量。會看
到在模態(tài)頻率處曲線縱坐標開始有較大的降幅。
3.通過繪制模態(tài)坐標,可以查看某一階模態(tài)對應(yīng)的振動響應(yīng)。在單個坐標系里得到各階模
態(tài)對應(yīng)的振動響應(yīng),從而找到對系統(tǒng)振動響應(yīng)影響最大的模態(tài)。
4.對于三維頻響圖,y軸標記為run:1.0~2.0,暫不知道表示什么意思。
查看創(chuàng)建某一part的measure,查看振動情況時,選擇坐標方向而不是mag(幅值)項,這里的mag(幅值)項還不知道什么意思,從mag(幅值)的結(jié)果來看不是振幅的意思,也不是各個方向振幅的模值。
第二篇:adams運動仿真教學
起重機的建模和仿真,如下圖所示。
1)啟動ADAMS 1.運行ADAMS,選擇create a new model;2.modal name 中命名為lift_mecha;3.確認gravity 文本框中是earth normal(-global Y),units文本框中是MKS;ok 4.選擇setting——working grid,在打開的參數(shù)設(shè)置中,設(shè)置size在X和Y方向均為20 m,spacing在X和Y方向均為1m;ok 5.通過縮放按鈕2)建模
1.查看左下角的坐標系為XY平面
2.選擇setting——icons下的new size圖標單位為1 3.在工具圖標中,選擇實體建模按鈕中的box按鈕4.設(shè)置實體參3.53.數(shù);
,使窗口顯示所有柵格,單擊F4打開坐標窗口。On ground Length :12 Height:4 Depth:8 5.鼠標點擊屏幕上中心坐標處,建立基座部分 6.繼續(xù)boxNew part Length :3 Height:3 Depth: 3.5 設(shè)置完畢,在基座右上角建立座架Mount部件 建立Mount座架部件,設(shè)置參數(shù):
7.左鍵點擊立體視角按鈕架到基座中間部位:,查看模型,座架Mount不在基座中間,調(diào)整座
①右鍵選擇主工具箱中的position按鈕圖標
中的move按鈕
②在打開的參數(shù)設(shè)置對話框中選擇Vector,Distance項中輸入3m,實現(xiàn)Mount移至基座中間位置
③設(shè)置完畢,選擇座架實體,移動方向箭頭按Z軸方向,Distance項中輸入2.25m,完成座架的移動
右鍵選擇座架,在快捷菜單中選擇rename,命名為Mount 8.選擇setting—working grid 打開柵格設(shè)置對話框,在set location中,選擇pick 選擇Mount.cm座架質(zhì)心,并選擇X軸和Y軸方向,選擇完畢,柵格位于座架中心
選擇主工具箱中的視角按鈕,觀察視圖 將spacing—working grid,設(shè)置spacing中X和Y均為0.5 10.選擇圓柱實體繪圖按鈕New part Length:10m Radius:1m 選擇座架的中心點,點擊左側(cè)確定軸肩方向,建立軸肩,單擊三維視圖按鈕,觀察視圖,設(shè)置參數(shù):
11.繼續(xù)圓柱工具① 設(shè)置參數(shù): New part Length: 13m Radius: 0.5m ② 選擇Mount.cm作為創(chuàng)建點,方向同軸肩,建立懸臂,繪制懸臂
③ 右鍵選擇新建的懸臂,在快捷菜單中選擇part_4——Rename,命名為boom ④選擇懸臂,移動方向沿X軸負向,實現(xiàn)懸臂的向左移動:
1)右鍵選擇工具箱中的position按鈕中的move按鈕
2)在打開的參數(shù)對話框中,選擇vector,distance中輸入2m,點擊懸臂,實現(xiàn)移動
⑤ 右鍵點擊實體建模按鈕設(shè)置圓角半徑為1.5m ⑥ 左鍵選擇座架上側(cè)的兩條邊,點擊右鍵,完成倒角,在彈出的下一級菜單中選擇導圓角工具,12.選擇box按鈕圖標① 設(shè)置參數(shù): New part Length : 4.5 Height: 3.0 Depth: 4.0 ② 選擇懸臂左側(cè)中心點,命名為bucket,建立鏟斗,創(chuàng)建鏟斗
③ 右鍵選擇position按鈕下一級按鈕move按鈕
④ 在打開的參數(shù)對話框中,選擇vector,distance中輸入2.25m,選擇鏟斗,移動方向沿全部坐標系X軸負方向,實現(xiàn)鏟斗的橫向移動
⑤ 在主工具箱中,選擇三維視圖按鈕,察看鏟斗
⑥ 繼續(xù)選擇move按鈕,設(shè)置參數(shù)中選擇vector,distance中輸入2.0m,選擇鏟斗,移動方向沿全部坐標系 Z軸負方向,實現(xiàn)鏟斗的縱向移動
⑦ 移動完畢,選擇主工具箱中的渲染按鈕render,察看三維實體效果,再次選擇render按鈕,實體圖則以線框顯示
⑧ 右鍵點擊實體建模按鈕,再彈出的下一級按鈕中選擇倒角工具的參數(shù)設(shè)置對話框中,設(shè)置倒角Width為1.5m,⑨ 選擇鏟斗下側(cè)的兩條邊,完畢單擊右鍵,完成倒角
⑩ 右鍵選擇實體建模工具按鈕,再下一級按鈕中選擇Hollow按鈕的參數(shù)設(shè)置對話框中設(shè)置參數(shù)Thickness為0.25m 選擇鏟斗為挖空對象,鏟斗上平面為工作平面,完畢點擊右鍵挖空鏟斗,在打開,在打開
3)添加約束
根據(jù)圖示關(guān)系,添加鏈接 ① 在主工具箱中,選擇轉(zhuǎn)動副bod——1 loc和pick feature,下方的參數(shù)設(shè)置對話框中,設(shè)置參數(shù)2 ② 選擇基座和座架,然后選擇座架中心Mount.cm,旋轉(zhuǎn)軸沿y軸正向,建立座架與基座的轉(zhuǎn)動副
③ 繼續(xù)用轉(zhuǎn)動副按鈕,建立軸肩與座架間的轉(zhuǎn)動副,設(shè)置參數(shù)為2 bod——1 loc和Normal to grid,選擇軸肩和座架,再選擇座架中心點,建立轉(zhuǎn)動副 ④ 繼續(xù)用轉(zhuǎn)動副按鈕,建立鏟斗與懸臂間的轉(zhuǎn)動副,設(shè)置參數(shù)為2 bod——1 loc和Normal to grid,選擇鏟斗與懸臂,再選擇鏟斗下側(cè)中心點,建立轉(zhuǎn)動副 ⑤ 選擇主工具箱中的平動副,設(shè)置參數(shù)2 bod——1 loc和pick feature,選擇懸臂與軸肩,再選擇懸臂中心標記點,移動方向沿X軸正方向,建立懸臂和軸肩間的平動副
⑥ 右鍵點擊窗口右下角的Information 信息按鈕,選擇約束按鈕,觀察是否按要求施加約束,關(guān)閉信息窗口 ⑦ 檢查完畢,選擇仿真按鈕運動 4)添加運動
① 選擇主工具箱中的旋轉(zhuǎn)運動按鈕,右鍵點擊座架中心標記點,在彈出的,對系統(tǒng)進行仿真,觀察系統(tǒng)在重力作用下的選擇窗口中,選擇JOINT_mount_ground,給座駕與基座的轉(zhuǎn)動副添加轉(zhuǎn)動運動 ② 選擇俯視圖按鈕,觀察旋轉(zhuǎn)運動副的箭頭圖標
③ 右鍵點擊該運動,在彈出的快捷菜單中選擇motion_mount_ground——modify在修改對話框中,修改function項為360d*time ④ 重復上述動作,在軸肩和座架之間建立旋轉(zhuǎn)運動Motion_shoulder_ground, ⑤ 右鍵點擊該運動,在彈出的快捷菜單中選擇motion_shoulder_ground——modify在修改對話框中,修改function項為-STEP(time,0,0,0.10,30d)⑥ 重復上述動作,在鏟斗和懸臂之間建立旋轉(zhuǎn)運動Motion_bucket_boom ⑦ 設(shè)置運動函數(shù)為45d*(1-cos(360d*time))
⑧ 右鍵點擊主工具箱中旋轉(zhuǎn)運動按鈕,選擇下一級平行運動按鈕,點擊懸臂中心平動副,在懸臂和座架間建立平行運動
⑨ 設(shè)置平行運動函數(shù)為STEP(time,0.8,0,1,5)
⑩ 選擇主工具箱中的仿真按鈕,設(shè)置仿真參數(shù)END Time:1;Steps:100,進行仿真
5)測量和后處理
① 鼠標右鍵點擊鏟斗,打開右鍵快捷鍵,選擇測量measure ② 系統(tǒng)打開參數(shù)設(shè)置對話框,將Characteristic設(shè)置為CM Point,Component 設(shè)置為Y,測量Y向位移。
③ 點擊Apply,出現(xiàn)空白的測量窗口 ④ 點擊總工具箱中測量長度按鈕,測量懸臂左端點與軸肩右端點間的距離
保存文件qizhongji在E:jiben0520053377目錄中,推出系統(tǒng)。
其它CAD圖與ADAMS軟件的接口
1)在solid-edge、solid-working、p-re、UG等三維造型軟件中,繪制三維圖形,下圖所示為裝載機的工作裝置CAD三維圖;
裝載機工作裝置中包含許多零部件,為簡化仿真模型,可以在建立三維圖形時,將鏈接螺栓等非傳動件忽略,將其質(zhì)量添加到相連的傳動件上即可,切記:在CAD軟件裝配圖繪制完三維圖后,將文件保存為.igs為后綴的格式退出。2)將三維CAD圖形文件調(diào)入ADAMS軟件
打開ADAMS軟件,進入ADAMS界面,進行以下操作:
① 在File菜單,選擇Import命令,顯示文件輸入對話框。
② 在File Type欄,選擇輸入的CAD文件格式,后綴為.igs格式,顯示輸入的CAD文件對話框,如上圖所示。
③ 在File To Read右邊的空框內(nèi)輸入文件名,方法為:鼠標放在空框內(nèi),點擊右鍵,選擇browse,打開文件瀏覽對話框,找到已保存的后綴為.igs的文件,雙擊即可。
④ 在Part Name 欄,輸入ADAMS數(shù)據(jù)庫名。
⑤ 選擇OK按鈕,即可將CAD文件調(diào)入ADAMS軟件中。
1)點擊放大縮小圖標示調(diào)入的圖形;
2)修改個零部件的物理特性:視圖在由CAD軟件調(diào)入ADAMS軟件后,其各部件的物理特性丟失,只保留了幾何特性,所以,為進行系統(tǒng)仿真,需要對每一個零部件添加材料特性,方法如下:
① 將鼠標放在要修改的零部件上,點擊右鍵,依次選擇:浮動菜單的第一項part—modify,打開修改對話框;,將鼠標放在繪圖視窗內(nèi),按下左鍵,移動鼠標,顯
② 在category欄選擇mass properties;在define mass by欄選擇geometry and material type;在material type 欄,輸入零件的材料
③ 點擊修改對話框下角的show calculated inertia,計算零件的質(zhì)量和轉(zhuǎn)動慣量等參數(shù);
④ Ok退出,即完成零件的物性修改,其它零件類推。
3)根據(jù)前面仿真分析方法對導入后的裝載機工作裝置進行仿真分析。4)測量輸出起升油缸的作用力,保存文件,退出系統(tǒng)。
第三篇:基于adams和matlab的一級倒立擺聯(lián)合仿真
基于PRO/E,ADAMS和MATLAB/SIMULINK的雙回路PID控制一級倒立擺聯(lián)合仿真
目錄
一、倒立擺簡介
1、概述
2、倒立擺分類
3、倒立擺控制方法
二、聯(lián)合仿真流程
三、基于PRO/E的一級倒立擺三維建模
四、基于ADAMS的一級倒立擺模型設(shè)計
五、ADAMS和MATLAB/SIMULINK的聯(lián)合仿真 六、一級倒立擺的雙回路PID控制策略
1、一級倒立擺的角度控制
2、一級倒立擺的雙閉環(huán)控制
3、一級倒立擺擺桿長度參數(shù)對控制策略的影響
七、問題總結(jié)
參考文獻
一、倒立擺簡介
1、概述
倒立擺控制系統(tǒng)是一個復雜的、不穩(wěn)定的、非線性系統(tǒng),是進行控制理論教學及開展各種控制實驗的理想實驗平臺。對倒立擺系統(tǒng)的研究能有效的反映控制中的許多典型問題:如非線性問題、魯棒性問題、鎮(zhèn)定問題、隨動問題以及跟蹤問題等。通過對倒立擺的控制,用來檢驗新的控制方法是否有較強的處理非線性和不穩(wěn)定性問題的能力。同時,其控制方法在軍工、航天、機器人和一般工業(yè)過程領(lǐng)域中都有著廣泛的用途,如機器人行走過程中的平衡控制、火箭發(fā)射中的垂直度控制和衛(wèi)星飛行中的姿態(tài)控制等。
倒立擺系統(tǒng)按擺桿數(shù)量的不同,可分為一級,二級,三級倒立擺等,多級擺的擺桿之間屬于自由連接(即無電動機或其他驅(qū)動設(shè)備)。
倒立擺的控制問題就是使擺桿盡快地達到一個平衡位置,并且使之沒有大的振蕩和過大的角度和速度。當擺桿到達期望的位置后,系統(tǒng)能克服隨機擾動而保持穩(wěn)定的位置。
圖1.1 一級倒立擺
2、倒立擺分類
(1)直線型倒立擺
它是最常見倒立擺系統(tǒng),也稱車擺裝置,根據(jù)目前的研究它又分為1,2,3,4級車擺,典型結(jié)構(gòu)圖如圖11.2所示,圖中以三級車擺為例,它是由可以沿直線導軌運動的小車以及一端固定于小車之上的勻質(zhì)長桿組成的系統(tǒng),小車可以通過轉(zhuǎn)動裝置由力矩電機、步進電機、直流電機或者交流伺服電機驅(qū)動,車的導軌一般有固定的行程,因而小車的運動范圍都是受到限制的。
圖1.2 直線型倒立擺
(2)環(huán)型倒立擺
環(huán)型倒立擺也稱擺桿式倒立擺,如圖1.3所示,圖中以二級為例,一般是由水平放置的擺桿和連在其端接的自由倒擺組成,原理上也可以看成是車擺的軌道為圓軌情況,擺桿是通過傳動電機帶動旋轉(zhuǎn)的。此擺設(shè)計好了可以擺脫普通車擺的行程限制,但是同時帶來了一個新的非線性因素:離心力作用。
圖1.3 環(huán)形倒立擺
(3)旋轉(zhuǎn)式倒立擺
環(huán)型擺也叫旋轉(zhuǎn)式倒立擺,但是這里的旋轉(zhuǎn)式倒立擺不同于第二種的環(huán)型擺,它的擺桿(旋臂)是在豎直平面內(nèi)旋轉(zhuǎn)的,而環(huán)型擺擺桿是在水平面旋轉(zhuǎn)的,如圖1.4所示。圖中倒立擺系統(tǒng)是單級旋轉(zhuǎn)倒立擺,將擺桿安裝在與電機轉(zhuǎn)軸相連的旋臂上,通過電機帶動旋臂的轉(zhuǎn)動來控制倒擺的倒立,整個系統(tǒng)復雜,不穩(wěn)定。
圖1.4 單級旋轉(zhuǎn)式倒立擺
(4)復合倒立擺系列
復合倒立擺為一類新型倒立擺,由運動本體和擺桿組件組成,其運動本體可以很方便的調(diào)整成三種模式,一是(2)中所述的環(huán)形倒立擺,還可以把本體翻轉(zhuǎn)90度,連桿豎直向下和豎直向上組成托擺和頂擺兩種形式的倒立擺。
3、倒立擺控制方法
控制器設(shè)計是倒立擺系統(tǒng)的核心內(nèi)容,因為倒立擺是一個絕對不穩(wěn)定的系統(tǒng),為了實現(xiàn)倒立擺穩(wěn)定性控制并且可以承受一定的干擾,需要給系統(tǒng)設(shè)計控制器,目前典型的控制器設(shè)計理論有: a.PID控制。通過機理分析建立動力學模型,使用狀態(tài)空間理論推導出非線性模型,并在平衡點處進行線性化得到系統(tǒng)的狀態(tài)方程和輸出方程,從而設(shè)計出PID控制器實現(xiàn)控制。
b.狀態(tài)反饋控制。使用狀態(tài)空間理論推導出狀態(tài)方程和輸出方程,應(yīng)用狀態(tài)反饋實現(xiàn)控制“如劉珊中等應(yīng)用狀態(tài)反饋和Kalman濾波相結(jié)合的方法,對二級倒立擺平衡系統(tǒng)進行控制。
c.利用云模型實現(xiàn)對倒立擺的控制。用云模型構(gòu)成語言值,用語言值構(gòu)成規(guī)則,形成一種定性的推理機制。
d.模糊控制。模糊控制是采用模糊化,模糊推理,解模糊運算等的模糊控制方法。其主要工作是模糊控制器的設(shè)計?,F(xiàn)以倒立擺控制來簡單說明模糊控制器設(shè)計的一般方法。以擺桿的傾角和速度作為輸入變量”可以將傾角描述成:向左傾角大;中;小;向右傾角小;中;大。速度描述成:倒得非???快;慢;靜止;升得慢;快;非常決。它們都可以用模糊語言變量來表示用類似的模糊集合可以對控制小車運動的輸出進行定義。接著定義某些隸屬函數(shù),這個安排隸屬度的過程就是對變量實現(xiàn)模糊化的過程“接著是建立一系列的模糊規(guī)則,如:如果擺桿向左傾斜大并倒的非常快,那么向左作快運動;如果擺桿向左傾斜大并升的慢,那么向左作慢運動,等等。最后,模糊輸出被分解成可以加到小車上的確切的驅(qū)動電壓,這個過程為解模糊判決。此外,還有對倒立擺的雙閉環(huán)模糊控制方案。
e.神經(jīng)網(wǎng)絡(luò)控制。神經(jīng)網(wǎng)絡(luò)能夠任意充分地逼近復雜的非線性關(guān)系,它能夠?qū)W習和適應(yīng)嚴重不確定性系統(tǒng)的動態(tài)特性,所有定量或定性的信息按等勢分布儲存與網(wǎng)絡(luò)內(nèi)的神經(jīng)元,有很強的魯棒性和容錯性,也可將Q學習算法和BP神經(jīng)網(wǎng)絡(luò)有效結(jié)合,實現(xiàn)狀態(tài)未離散化的倒立擺的無模型學習控制。以及楊振強等為解決模糊神經(jīng)網(wǎng)絡(luò)在控制多變量系統(tǒng)時的規(guī)則組合爆炸問題,提出用狀態(tài)變量合成模糊神經(jīng)網(wǎng)絡(luò)控制倒立擺。
f.自適應(yīng)控制。主要為倒立擺設(shè)計各種自適應(yīng)控制器。上述控制算法大都針對倒立擺工作在平衡點的穩(wěn)定控制”本論文設(shè)計的控制器首先是能實現(xiàn)倒立擺的起擺,在擺起到平衡位置附近時再切換至穩(wěn)定控制。
二、聯(lián)合仿真流程
本文以一級倒立擺為研究對象,建立的倒立擺由軌道,滑塊,擺桿和轉(zhuǎn)軸組成,滑塊在軌道上做往復的直線運動,擺桿繞滑塊做轉(zhuǎn)動。具體的聯(lián)合仿真流程如下:
1、在PRO/E軟件里建立上述各個零件的三維模型,然后進行裝配。裝配后的組件另存為x_t文件,輸入到ADAMS里。
2、將PRO/E的生成的三維模型導入ADAMS中,在ADAMS中定義各零件的質(zhì)量,施加固定副、移動副和轉(zhuǎn)動副,然后建立輸入和輸出的狀態(tài)變量(輸入為作用在滑塊上的水平力,輸出為滑塊的位移和擺桿相對于豎直方向的角度),最后將生成的adm文件導出到MATLAB。
3、將ADAMS生成的倒立擺模型導入MATLAB,建立控制模型(采用PID雙閉環(huán)的控制方法),設(shè)置好參數(shù)之后進行聯(lián)合仿真。
三、基于PRO/E的一級倒立擺三維建模
1、在PRO/E中建立一級倒立擺的三維模型,擺桿的初始位置為豎直方向。
2、在組裝零件時需要注意,為了保證倒立擺模型導入ADAMS里面之后位置正確(即擺桿擺動平面為X-Y平面),需要使導軌安裝的長度方向沿組件默認坐標軸的x軸方向,其中心與組件坐標軸中心重合。
3、建立倒立擺之后,保存副本,選擇x_t文件格式保存。
圖3.1 一級倒立擺的PRO/E模型
四、基于ADAMS的一級倒立擺模型設(shè)計
1、將PRO/E生成的x_t文件導入ADAMS中,選擇file-import,文件類型選擇x_t,找到PRO/E的文件導入。導入的文件如下圖所示,可以看到,擺桿的運動平面在x-y平面內(nèi),軌道的質(zhì)心與ADAMS的默認坐標軸原點重合。圖4.1 導入ADAMS的倒立擺三維模型
2、設(shè)置文件的保存路徑。為了避免PRO/E文件導入和MATLAB程序運行失敗,我們將ADAMS的保存路徑設(shè)在根目錄下,文件名為英文字符,PRO/E的所有文件放入此目錄下。
3、將導入的PART2,PART3,PART4和PART5分別命名為guidao,huakuai,baigan和zhou。然后定義各零件質(zhì)量,材料選擇steel.4、添加約束。這里需要添加的約束有三個:
(1)ground和guidao之間的固定副,用來固定軌道。
圖4.2 固定副定義界面
圖4.3 固定副
(2)huakuai和baigan之間的轉(zhuǎn)動副,保證擺桿相對滑塊作轉(zhuǎn)動。
圖4.4 轉(zhuǎn)動副定義界面
圖4.5 轉(zhuǎn)動副(3)guidao和huakuai之間的移動副,保證滑塊沿軌道作水平運動。
圖4.6 移動副定義界面
圖4.7 移動副
5、定義作用力。初始力作用在滑塊上,方向選擇與擺桿偏移方向一致。
圖4.8 滑塊上的水平作用力
6、建立輸入和輸出狀態(tài)變量。建立三個system elements,包括輸入變量(force),輸出變量(angle,position)。(1)Force的參數(shù)設(shè)為零,由MATLAB輸入。
圖4.9 定義狀態(tài)變量force(2)Angle為擺桿距離豎直方向的角度,使用AZ函數(shù)測量。選取的參考點為擺桿上的MARKER_16和滑塊上的MARKER_17。
圖4.10 定義狀態(tài)變量angle
(3)Position為滑塊質(zhì)心到全局坐標原點的距離。位移的測量值使用DZ函數(shù)。需要注意的是,由于軌道在PRO/E 中的坐標軸與ADAMS的默認坐標系不一致,所以要修改MARKER_20以保持和滑塊的質(zhì)心坐標一致。修改方式見下圖的orientation參數(shù)欄。
圖4.11 定義狀態(tài)變量position
圖4.12MARKER點定義界面
(4)完成狀態(tài)變量的設(shè)置后,需要將force與上面建立的作用力SFORCE_1關(guān)聯(lián),使用函數(shù)VARVAL。
圖4.13 SFORCE_1與force關(guān)聯(lián)
7、創(chuàng)建輸出文件。這一步我們要創(chuàng)建一個可以輸入到MATLAB的文件。(1)首先要創(chuàng)建輸入和輸出元素,選擇build—-data elements---plant---plant input,設(shè)置輸入文件名和變量名。輸出元素同理。
圖4.14 創(chuàng)建plant input
圖4.15 創(chuàng)建plant output(2)打開controls---plant export New controls plant一欄中填入inverted_pendulum,file prefix同理。輸入和輸出信號選擇剛才建立的兩個變量。Target software選擇MATLAB。其他選項默認。點擊OK即可。這樣就會有相關(guān)的文件在我們最初設(shè)置的保存路徑中生成。
圖4.16 設(shè)置ADAMS和MATLAB接口
圖4.17 ADAMS輸出文件
這一步完成之后就完成了ADAMS里的建模。下圖為倒立擺的完成模型。
圖4.18 ADAMS的倒立擺最終模型
五、ADAMS和MATLAB/SIMULINK的聯(lián)合仿真
完成ADAMS建模之后,我們將輸出的文件導入到MATLAB里進行仿真。
使用ADAMS和MATLAB/SIMULINK的聯(lián)合仿真有一個好處,即不用對物理模型進行分析,再建立傳遞函數(shù)。ADAMS導出的模型直接包含其所有的力學特性,更加方便進行相關(guān)控制。聯(lián)合仿真的步驟:
1、將MATLAB的當前文件夾設(shè)為ADAMS的文件夾,然后在命令窗口輸入inverted_pendulum(即ADAMS輸出的文件名),會導入倒立擺的參數(shù)和變量。最后輸入adams_sys指令,會彈出一個SIMULINK的仿真窗口,我們可以在里面添加控制模塊進行倒立擺仿真。
圖5.1 MATLAB導入ADAMS文件命令
圖5.2 生成的adams_sys
2、MATLAB控制方法設(shè)計。
在這里我們采用雙閉環(huán)的PID控制方法,一路是角度控制,一路是位移控制。
首先給倒立擺系統(tǒng)一個擾動,這里用階躍信號實現(xiàn)(持續(xù)時間0.1秒,幅值為1),使系統(tǒng)不穩(wěn)定,然后通過角度和位移反饋控制系統(tǒng),達到穩(wěn)態(tài)。擺桿角度給定值設(shè)定為0度,位移給定值設(shè)為0,分別與模型輸出的實際角度和實際位移進行比對,差值輸入到PID中進行反饋控制,控制的結(jié)果輸入到force接口,實現(xiàn)系統(tǒng)的控制。建立的模塊圖如下:
圖5.3 MATLAB/SIMULINK的倒立擺PID控制模塊圖
3、動態(tài)仿真。先確定PID參數(shù)(PID參數(shù)設(shè)置下一章會講到)。然后設(shè)置adams sub模塊參數(shù),將animation mode改為interactive,communication interval設(shè)為0.005。最后將仿真時間設(shè)為10秒,開始仿真。仿真時會打開ADAMS軟件,動畫演示倒立擺的平衡控制過程。
圖5.4聯(lián)合仿真時調(diào)用的ADAMS界面 六、一級倒立擺的PID控制策略
1、一級倒立擺的角度控制
前面我們提到了對一級倒立擺的控制目標有擺角和滑塊位移,下面先對角度控制的PID參數(shù)進行設(shè)置,然后再加上位移控制環(huán)。
首先使用PI調(diào)節(jié),調(diào)節(jié)比例參數(shù)使系統(tǒng)出現(xiàn)震蕩,然后加上積分環(huán)節(jié)進行微調(diào),最后取Kp=20,Ki=0.1,系統(tǒng)的擺角響應(yīng)曲線如下:
10.80.60.40.20-0.2-0.4-0.6-0.800.511.522.533.544.55圖6.1 采用PI控制方案的角度響應(yīng)曲線 從輸出曲線可以看出,盡管PI的控制作用總是趨于消除穩(wěn)態(tài)誤差,但由于積分環(huán)節(jié)的缺陷而延緩了響應(yīng)速度,所以不能及時地將超調(diào)遏制住,控制效果也就不怎么好了。
基于上述問題,可以加入微分環(huán)節(jié)(相當于加入了角速度反饋),參數(shù)設(shè)置為Kp=20,Ki=0.1,Kd=3。進行動態(tài)仿真后,得到的角度響應(yīng)曲線如下。
0.035
0.030.0250.020.0150.010.0050-0.00500.511.522.533.544.55圖6.2 采用PID控制方案的角度響應(yīng)曲線
可以看到加入微分環(huán)節(jié)后,系統(tǒng)的動態(tài)特性得到了很大的改善,系統(tǒng)受到0.1s的擾動后,在0.6s左右就達到了穩(wěn)態(tài),而且穩(wěn)態(tài)精度也大大提高。
但是由于角度有穩(wěn)態(tài)誤差的存在,所以不加位置反饋控制的話,滑塊會一直向一個方向偏移,如圖6.4所示為滑塊的位移曲線。
-4x 10420-2-4-611.051.11.15圖6.3 采用PID控制方案后角度的穩(wěn)態(tài)誤差
500-50-100-150-200-250-300
00.511.522.533.544.55圖6.4 采用PID控制方案的位移響應(yīng)曲線
2、一級倒立擺的雙閉環(huán)控制
在角度反饋的基礎(chǔ)上,加入位置反饋。由于兩路反饋并不是相互獨立的,所以單單設(shè)置位移的PID參數(shù)必定會影響到角度的反饋。所以這里PID參數(shù)的設(shè)置思想是,先調(diào)好角度反饋,然后根據(jù)角度的穩(wěn)態(tài)誤差設(shè)定位移的PID參數(shù),使兩路的反饋可以將這一穩(wěn)態(tài)誤差抵消,最后微調(diào)兩路的參數(shù)優(yōu)化控制效果。經(jīng)過調(diào)試,確定角度反饋的PID參數(shù)為Kp=40,Ki=0.02,Kd=10;位移反饋的PID參數(shù)為Kp=-0.04,Ki=-0.01,Kd=-0.02。經(jīng)過仿真后,得到的擺桿擺角和滑塊位移的響應(yīng)曲線如下
0.030.020.010-0.01-0.02-0.03012345678910圖6.5 雙回路PID控制的角度響應(yīng)曲線(L=500mm)
50-5-10-***910圖6.6 雙回路PID控制的位移響應(yīng)曲線(L=500mm)
雙回路控制的平衡時間比單獨的角度控制要長,但是在2s左右也基本達到了平衡,控制效果很好。
3、一級倒立擺擺桿長度參數(shù)對控制策略的影響
之前我們建立的一級倒立擺模型的擺桿長度是L=500mm,下面將擺桿長度設(shè)為L=250mm,分析上面PID的控制策略對該系統(tǒng)動態(tài)響應(yīng)的影響。
使用PRO/E對一級倒立擺重新建模,將擺桿長度設(shè)為250mm,然后將模型導入到ADAMS中,完成系統(tǒng)力學定義后導入MATLAB進行仿真。
系統(tǒng)的控制策略仍采用雙回路的PID控制。這里將上一節(jié)得到的角度和位移PID參數(shù)輸入到此模型,觀察其動態(tài)響應(yīng)與之前的模型有何不同。
經(jīng)過聯(lián)合仿真,得到的角度和位移響應(yīng)曲線如下
0.0150.010.0050-0.005-0.01012345678910圖6.7雙回路PID控制的角度響應(yīng)曲線(L=250mm)
420-2-4-6-8
012345678910圖6.8雙回路PID控制的位移響應(yīng)曲線(L=250mm)
分析:
角度響應(yīng):L=500模型的超調(diào)量和二次超調(diào)量分別為0.025和0.02,平衡時間大概為2.5s;L=250模型的超調(diào)量和二次超調(diào)量分別為0.015和0.008,平衡時間為4.5s。
位移響應(yīng):L=500模型的超調(diào)量和二次超調(diào)量分別為7和13,平衡時間為6s;L=250模型的超調(diào)量和二次超調(diào)量分別為2和7,平衡時間為8s。
可以看出來,L=250模型要比L=500模型容易穩(wěn)定,即在受到相同的擾動狀況下,使用較小的PID參數(shù)就可以達到平衡。
七、問題總結(jié)
本文利用PRO/E、ADAMS和MATLAB軟件成功地對一級倒立擺控制系統(tǒng)進行了仿真分析.在仿真過程中不需要推導機械系統(tǒng)的復雜微分方程,直接用ADAMS建立的虛擬模型進行分析,大大方便了建模過程.而且通過ADAMS軟件建立的虛擬模型能更好地接近實際物理模型,與那些近似線性化的簡易數(shù)學模型相比,這為我們以后的物理樣機試驗提供了更為可靠的依據(jù)。
在聯(lián)合仿真過程中,遇到了一些問題:
1、PRO/E導入ADAMS會有模型位置放錯的情況,這個時候需要保證兩個軟件里設(shè)定的坐標軸一致。
2、對于各零件的MARKER點局部坐標和ADAMS全局坐標不一樣情況,需要修改orientation,否則會出現(xiàn)測量錯誤的情況。
3、在使用角度測量函數(shù)AZ和DZ時,如果將FROM MARKER 和TO MARKER位置搞反的話,后面輸出的角度值可能為負,后面的PID參數(shù)也隨之改變。
4、使用PID調(diào)節(jié),發(fā)現(xiàn)如果時間足夠長的話,倒立擺不能保持位置上的穩(wěn)定,滑塊也會越走越遠,直到脫離軌道。這是因為使用PID控制角度時,總會有微小的穩(wěn)態(tài)誤差,這個誤差最終會導致位置上的不平衡。
5、本文PID參數(shù)的確定采用的是試湊法,即通過控制經(jīng)驗和多次系統(tǒng)調(diào)試來確定參數(shù),往往比較繁瑣,難以達到期望的精度。而且雙回路控制比單回路控制的難度更大。這種情況下可以采用極點配置法或擴充臨界比例法等。
參考文獻
1、范成建等(2006).虛擬樣機軟件MSC.ADAMS應(yīng)用與提高.北京市, 機械工業(yè)出版社.2、賈長治,殷軍輝(2010).MD ADAMS虛擬樣機從入門到精通.北京市, 機械工業(yè)出版社.3、姜學軍(2009).計算機控制技術(shù).北京市,清華大學出版社.4、應(yīng)再恩,平雪良.(2012).“基于ADAMS和MATLAB的雙回路PID控制倒立擺聯(lián)合仿真.” 機械傳動(08): 64-67.5、楊世勇,徐莉蘋.(2007).“單級倒立擺的PID控制研究.” 控制工程(S1): 23-24+53.6、肖力龍(2007).直線一級倒立擺起擺與穩(wěn)擺控制研究及控制系統(tǒng)設(shè)計, 中南大學.碩士: 77.
第四篇:關(guān)于ADAMS重型自卸車舉升機構(gòu)的仿真優(yōu)化研究論文
引 言
近年來,隨著經(jīng)濟的發(fā)展,市場對重型自卸車的需求量大大增加,這類自卸車廣泛應(yīng)用于使用條件比較惡劣的礦山工地,舉升機構(gòu)是自卸車的核心機構(gòu),設(shè)計時既要考慮運動學問題,又要考慮機構(gòu)的強度問題。若舉升機構(gòu)設(shè)計不當,容易發(fā)生結(jié)構(gòu)的早期斷裂現(xiàn)象。自卸車的舉升機構(gòu)可分為直推式和連桿組合式兩大類。直推式設(shè)計簡單,易于計算,但油缸行程長,一般采用多級油缸,成本高。連桿組合式油缸行程短,可采用單級油缸,制造工藝簡單,機構(gòu)經(jīng)優(yōu)化后可得到較小的油缸力曲線,但由于其結(jié)構(gòu)復雜,設(shè)計計算比較困難。
傳統(tǒng)的設(shè)計方法是采用“作圖法” ,效率低且精度差。近來出現(xiàn)利用計算機編制優(yōu)化程序進行設(shè)計的一些方法,計算精度得到了提高,但程序一般只針對一種類型的舉升機構(gòu),程序通用性差而調(diào)試工作量大,如何保證程序的可靠性也是令人頭疼的問題。隨著CAE技術(shù)的成熟,虛擬樣機技術(shù)得到了廣泛應(yīng)用,工程技術(shù)人員可以利用CAD軟件建立三維機構(gòu)模型,在CAE軟件中對其施加鉸鏈及運動約束,模擬現(xiàn)實中的機構(gòu)運動并進行仿真優(yōu)化,得到所需的設(shè)計數(shù)據(jù),精確度高并大大縮短開發(fā)周期,降低了成本。
采用世界一流的多體動力學仿真軟件—— ADAM S的虛擬樣機技術(shù),對某汽車廠重型自卸車的浮動油缸式舉升機構(gòu)進行仿真優(yōu)化研究,目的是對原有機構(gòu)進行優(yōu)化,在給定舉升質(zhì)量和滿足最大舉升角的前提下,改變機構(gòu)尺寸,使油缸舉升力最小,降低油缸的制造成本。虛擬樣機的建立
1.1 建立模型
ADAMS軟件的建模能力不強,虛擬樣機的三維模型可利用Catia、UG等三維CAD軟件建立,再導入ADAMS軟件中。本次設(shè)計為了簡化模型、加快設(shè)計進度,在ADAM S直接建立圖1所示的抽象模型,并不影響計算結(jié)果。
長方體為裝載貨物的車箱,總質(zhì)量為40 t,假設(shè)在工作過程中總質(zhì)量不發(fā)生變化;A 為后鉸鏈點, BD為拉桿, CE為油缸, DEF為三角板。A~ F 點均為圓柱副連接,油缸CE由兩個連桿組成,相對運動為滑動副,施加平移驅(qū)動。施加運動副時,要注意其方向正確性并不得有多余約束,否則不能完成運動仿真。
要找到一個最佳位置,使油缸舉升力最小,并滿足自卸車其它方面的要求。各點的初始位置可以由原車型各點的設(shè)計位置來確定, A 點為原點。
1.2 虛擬樣機的仿真
模型建立后進行一次仿真,油缸行程按850 mm,輸出油缸舉升力隨活塞行程的變化曲線(見圖2)。油缸舉升力最大值為(6.88× 105)N.1.3 模型的參數(shù)化
進行優(yōu)化要定義設(shè)計變量,設(shè)計變量的值是可以改變的。以B~ F 點的x、y 坐標作為設(shè)計變量,當各點的坐標變化時,桿件和結(jié)構(gòu)尺寸也發(fā)生相應(yīng)的改變,系統(tǒng)自動修改模型,不需要人工干預(yù),提高了優(yōu)化效率。
定義設(shè)計變量的值時要注意它們的取值范圍,這個取值范圍取決于車箱底架及副車架的結(jié)構(gòu)布置,并不與舉升機構(gòu)產(chǎn)生干涉。將定義好的設(shè)計變量代入各點坐標中,即完成了虛擬樣機的參數(shù)化過程。
1.4 建立約束條件
為了使自卸車能將貨物卸干凈,舉升角應(yīng)大于貨物的安息角。該型自卸車主要用于運載煤炭,煤炭的安息角為27°~ 45°,設(shè)計時最大舉升角取50°,在優(yōu)化過程中需要滿足這一約束條件。定義約束條件時首先定義一個“測量”(取名ME A_ AN GL E)以獲得仿真過程中的舉升角.優(yōu)化計算
前述工作完成后便可進行優(yōu)化分析。在滿足約束條件的前提下,優(yōu)化程序在設(shè)計變量的取值范圍內(nèi)自動對其進行調(diào)整,最終得到使油缸力最小的設(shè)計變量值。軟件ADAMS /View 提供了一個友好的用戶界面,可以輸出各種力、位移、速度、加速度等曲線,便于用戶直觀了解在優(yōu)化過程中約束條件、目標函數(shù)等“測量”的變化情況。
本次優(yōu)化涉及十個設(shè)計變量,要在一次計算中同時對這么多的設(shè)計變量進行優(yōu)化,往往由于計算過程中各設(shè)計變量的取值產(chǎn)生矛盾,而使計算失敗。因此,對于這種設(shè)計變量較多的情況,應(yīng)先對部分設(shè)計變量進行優(yōu)化,得到一個優(yōu)化結(jié)果,再對其它設(shè)計變量進行優(yōu)化。
為了確定第一次優(yōu)化的設(shè)計變量,需要對每一個設(shè)計變量進行分析,研究其敏感度,即對目標函數(shù)的影響程度,選擇最高的變量作為第一次優(yōu)化的設(shè)計變量結(jié)束語
本次優(yōu)化的結(jié)果,確定了關(guān)鍵點的坐標,也就確定了機構(gòu)的最佳尺寸。ADAMS仿真的另一個應(yīng)用是求出支點(A、B、C、F 點)的反力,為車架和車箱的結(jié)構(gòu)計算提供載荷條件。而舉升機構(gòu)的進一步有限元計算也可以在ADAMS中進行,這時要建立機構(gòu)的實體模型,通過CAE軟件(如Nastran、AN SYS等)轉(zhuǎn)換為中性文件,再導入ADAMS中計算。
第五篇:基于ADAMS與MATLAB的倒立擺聯(lián)合仿真實驗
基于ADAMS與MATLAB的倒立擺聯(lián)合仿真實驗
一、實驗?zāi)康?/p>
在傳統(tǒng)的機電一體化研究設(shè)計過程中,機械工程師和控制工程師雖然在共同設(shè)計開發(fā)一個系統(tǒng),但是他們各自都需要建立自己的模型,然后分別采用不同的分析軟件,對機械系統(tǒng)和控制系統(tǒng)進行獨立的設(shè)計、調(diào)試和試驗,最后進行機械系統(tǒng)和控制系統(tǒng)各自的物理樣機聯(lián)合調(diào)試,如果發(fā)現(xiàn)問題又要回到各自的模型中分別修改,然后再聯(lián)合調(diào)試,顯然這種方式費時費力。
基于多領(lǐng)域的建模與聯(lián)合仿真技術(shù)很好的解決了這個問題,為機械和控制系統(tǒng)進行聯(lián)合分析提供了一種全新的設(shè)計方法。機械工程師和控制工程師就可以享有同一個樣機模型,進行設(shè)計、調(diào)試和試驗,可以利用虛擬樣機對機械系統(tǒng)和控制系統(tǒng)進行反復聯(lián)合調(diào)試,直到獲得滿意的設(shè)計效果,然后進行物理樣機的建造和調(diào)試。
ADAMS與MATLAB是機械系統(tǒng)仿真和控制系統(tǒng)仿真領(lǐng)域應(yīng)用較為廣泛的軟件,其中ADAMS為用戶提供了強大的建模、仿真環(huán)境,使用戶能夠?qū)Ω鞣N機械系統(tǒng)進行建模、仿真和分析,具有十分強大的運動學和動力學分析功能;而MATLAB具有強大的計算功能、極高的編程效率及模塊化的建模方式,因此,把ADAMS與MATLAB聯(lián)合起來仿真,可以充分將兩者的優(yōu)勢相結(jié)合,將機械系統(tǒng)仿真分析同控制系統(tǒng)設(shè)計有機結(jié)合起來,實現(xiàn)機電一體化的聯(lián)合分析。
本實驗以倒立擺為例,進行ADAMS與MATLAB的聯(lián)合仿真,對倒立擺的運動性能和運動規(guī)律進行分析。
二、實驗方法
軟件環(huán)境:MD ADAMS R3,MATLAB R2009b 2.1 建立倒立擺的動力學模型
啟動ADAMS/View模塊彈出如圖1所示對話框,建立小車及擺桿模型。首先選擇“Create a new model”選項,創(chuàng)建一個新的模型,將該文件保存在相應(yīng)的文件夾下,本實驗將結(jié)果保存在E:daolibai_adams文件夾下,將文件名取為“daolibai_adams”,其余選項保持默認。注意,在ADAMS中路徑名和文件名最好采用英文字符,否則有可能在運行的過程中出現(xiàn)意想不到的錯誤。
圖1 啟動ADAMS/View模塊
進入ADAMS/View界面后,需要對相關(guān)參數(shù)進行設(shè)置。選擇菜單欄中的“Settings→Working Grid”選項,彈出如圖2所示的對話框,設(shè)置網(wǎng)格的大小。將“Spacing”設(shè)置為X:10mm,Y:10mm,其余參數(shù)保持默認。在“Settings”選項中還可以設(shè)置圖標的大小,單位等等參數(shù),在本實驗中這些參數(shù)都保持默認即可。
圖2 設(shè)置網(wǎng)格的大小
與此同時,單擊菜單欄“View”選項下的“Coordinate Window”(或者按下鍵盤上的F4按鈕),如圖3所示。可隨時在窗口中觀察鼠標的當前空間坐標位置,方便我們進行建模。
圖3 打開鼠標當前空間位置觀察窗口
右鍵點擊ADAMS建模工具箱中的圖標,選擇工具Box,在視圖中(0,0,0)處建一個長、寬、高分別為30cm,20cm,20cm的長方體代替小車模型,如圖4所示。
圖4 長方體尺寸設(shè)置
圖5 在視圖中建立的長方體前視圖
長方體建立完畢后,需要進一步在視圖中調(diào)整其位置。在當前視角下,點擊工具箱中的圖標,進入如圖6所示的界面。在Distance選項中輸入15cm,選擇長方體,然后點擊向左的箭頭,小車模型即向左平移15cm。單擊工具箱中的按鈕,即可返回工具箱主界面。點擊圖標,切換到右視角視圖,再次運用按鈕,在Distance選項中輸入10cm,選擇長方體,然后點擊向右的箭頭,將小車模型向右平移10cm,如圖7所示。
圖6 將小車模型向左平移15cm
圖7 將小車模型向右平移10cm
小車模型位置修改完畢后,右鍵點擊小車模型,選擇Rename,將模型的名稱修改為xiaoche,如圖8所示。與此同時,在右鍵菜單中選擇Modify,將小車的質(zhì)量修改為0.5KG,其修改方法如圖9所示。
圖8 修改模型名稱
圖9 修改小車模型的質(zhì)量
至此,小車模型及參數(shù)設(shè)置完畢,接下來建立擺桿的模型。在建模工具箱中選擇(Cylinder)工具建立擺桿模型,其參數(shù)設(shè)置如圖10所示。
圖10 擺桿參數(shù)的設(shè)置
擺桿參數(shù)設(shè)置完畢后,沿小車垂直向上的方向建立該圓柱體,建好后單擊右鍵修改其特性參數(shù),將部件名稱修改為baigan,將擺桿質(zhì)量修改為0.2kg,轉(zhuǎn)動慣量修改為0.006kg·㎡。建好后,運用工具箱中的順時針旋轉(zhuǎn)5°,建完后的模型如圖11所示。
工具,將擺桿繞端點
圖11 倒立擺模型前視圖與三維視圖
倒立擺的三維模型建立好后,我們需要為模型添加相應(yīng)的運動副和運動。小車與地面用平移副約束,右鍵單擊圖標,在彈出菜單中選擇工具,添加方式選擇2 Bod-1 Loc方式,分別選擇小車和大地,在小車質(zhì)心處添加水平方向的平移約束副,如圖12。
圖12 在小車與大地之間添加移動副
擺桿與小車之間存在旋轉(zhuǎn)運動,故需要在小車與擺桿之間添加一個轉(zhuǎn)動副。單擊工具中的圖標,添加方式選擇2 Bod-1 Loc方式,分別選擇擺桿和小車,在擺桿與小車的鉸接處建立旋轉(zhuǎn)副,如圖13所示。
圖13 在擺桿與小車之間建立旋轉(zhuǎn)副JOINT_2
倒立擺模型的約束添加完畢之后,我們可以對模型進行運動測試。點擊工具,進入運動仿真測試對話框,設(shè)置仿真時間為1秒,步長為1000,如圖14所示。
圖14 運動仿真參數(shù)設(shè)置
點擊按鈕開始運動仿真測試,可以看到小車沿著水平方向作直線運動,擺桿繞著鉸接點作旋轉(zhuǎn)運動。
2.2 定義倒立擺機械系統(tǒng)的輸入輸出變量
1)定義輸入變量
本實驗中需要在ADAMS中定義一個狀態(tài)變量接收控制小車運動的水平力。選擇Build菜單下的System Elements創(chuàng)建一個名為controlforce的狀態(tài)變量,如圖15所示。
圖15 創(chuàng)建輸入狀態(tài)變量
由圖15可以看出F(time,?)后面輸入欄中的數(shù)值為0,表示該控制力的數(shù)值將從控制軟件的輸出獲得。
給小車定義一個水平力,單擊ADAMS工具箱中的工具,選擇Body Moving的建模方式,一次選擇小車質(zhì)心作為力的作用點,選擇水平向右作為其加載方向(如圖16),這樣該水平力將一直隨著小車的移動而移動。
圖16 為小車添加水平方向作用力
上述過程完成以后,右鍵單擊該水平力,選擇Modify,將其函數(shù)值定義為VARVAL(.daolibai_adams.controlforce),以實時從狀態(tài)變量controlforce中接收力的數(shù)值,如圖17。
圖17 函數(shù)值的定義
2)定義輸出變量
定義輸出變量的方法與定義輸入變量的方法相同,定義ADAMS狀態(tài)變量以輸出動力學模型的運動狀態(tài)至控制軟件,本實驗就是要輸出擺桿的擺角。選擇Build菜單下的System Elements創(chuàng)建一個名為rotateangle的狀態(tài)變量,選擇擺桿的上端點和小車的鉸接點出的MARKER點為擺桿繞Z軸旋轉(zhuǎn)運動的參考點,如圖18所示。
圖18 定義輸出變量
其中,在F(time,?)后面的文本輸入欄輸入擺桿擺角表達式AZ(MARKER_11,MARKER_12),AZ函數(shù)用來測量繞Z軸旋轉(zhuǎn)的角度,本實驗中即表示擺桿繞著Z軸旋轉(zhuǎn)的角度。利用ADAMS工具箱中的工具,在擺桿的上端點創(chuàng)建一個測點MARKER_11,在小車上創(chuàng)建測點MARKER_12,此點為小車與擺桿的鉸接點。設(shè)置完畢后單擊OK按鈕保存設(shè)置。3)將狀態(tài)變量指定為輸入/輸出變量
上述狀態(tài)變量定義完成之后,還需要將定義好的狀態(tài)變量指定為輸入或輸出變量。
指定狀態(tài)變量controlforce為輸入變量。單擊主菜單Build→Data Elements→Plant→Plant Input→New后,彈出輸入變量定義對話框,如圖19所示。將Variable Name欄中輸入controlforce,然后單擊OK按鈕即完成設(shè)置。
圖19 輸入變量定義對話框
指定狀態(tài)變量rotateangle為輸入變量。單擊主菜單Build→Data Elements→Plant→Plant Output→New后,彈出輸入變量定義對話框,如圖20所示。將Variable Name欄中輸入rotateangle,然后單擊OK按鈕即完成設(shè)置。
圖20 輸出變量定義對話框 4)導出ADAMS模型
通過以上工作,已經(jīng)在ADAMS機械系統(tǒng)模型中定義了同控制系統(tǒng)交互的相關(guān)狀態(tài)變量和函數(shù),接下來需要利用ADAMS/Controls模塊將這些狀態(tài)變量定義為輸入輸出信號,并將相關(guān)信息導出,以便和其他控制程序連接。
單擊Controls菜單下的Plant Export子菜單,彈出如圖21所示的設(shè)置窗口。將輸出文件名修改為test123;在輸入信號定義欄中,單擊From Input按鈕后,彈出數(shù)據(jù)庫瀏覽窗口,選擇定義的PINPUT_1為輸入項,雙擊后,定義的狀態(tài)變量controlforce將自動出現(xiàn)在輸入信號一欄中,同理,輸出信號的設(shè)置方法同上。目標控制軟件下拉菜單可以根據(jù)需要選取,本實驗?zāi)繕塑浖x為MATLAB,其他選項保持默認。單擊OK按鈕,ADAMS將導出*.m文件,同時產(chǎn)生調(diào)用ADAMS/Solver的cmd文件和*.adm的ADAMS模型文件。
圖21 ADAMS變量導出設(shè)置 上述過程完成后,MATLAB已經(jīng)可以讀取ADAMS模型的相關(guān)信息了。
2.3 在MATLAB/Simulink中導入ADAMS模型
1)變量的導入
啟動MATLAB后,在命令窗口中輸入導出的ADAMS模型名稱test123,在MATLAB窗口將出現(xiàn)如下信息:
>> clear all >> test123 ans = 26-Jun-2013 08:53:34 %%% INFO : ADAMS plant actuators names : 1 controlforce %%% INFO : ADAMS plant sensors names : 1 rotateangle 在MATLAB命令提示符下輸入who命令,顯示文件中定義的變量列表,在MATLAB命令窗口中返回如下結(jié)果:
Your variables are: ADAMS_cwd ADAMS_mode ADAMS_solver_type arch ADAMS_exec ADAMS_outputs ADAMS_static flag ADAMS_host ADAMS_pinput ADAMS_sysdir machine ADAMS_init ADAMS_poutput ADAMS_uy_ids temp_str ADAMS_inputs ADAMS_prefix ans topdir 可以選擇以上顯示的任何一個變量名,檢驗變量,例如,如果輸入ADAMS_outputs,則MATLAB將顯示在ADAMS中定義的輸出變量:
ADAMS_outputs = Rotateangle 注意:ADAMS導出的文件必須置于MATLAB工作目錄下,即ADAMS與MATLAB共用同一個工作目錄,否則上述過程不能進行。與此同時,還要把ADAMS/win32文件夾下的“adams_plant.mexw32”及ADAMS/Controls/win32/文件夾下的“plant.lib”放在ADMAS與MATLAB的共用工作目錄下。這兩個文件是adams_sub模塊的核心。ADAMS提供一個S函數(shù),用于ADAMS和simulink聯(lián)合仿真的調(diào)度和通信,如果simulink找不到它,聯(lián)合仿真就不能進行。2)ADAMS模塊的導入
在MATLAB命令窗口中輸入“adams_sys”命令,即可導入ADAMS模塊,如圖22所示。
圖22 adams_sys模塊
3)仿真參數(shù)的設(shè)置
點擊圖22中的adams_sys模塊,即可進入adams_sub模塊,如圖23所示。
圖23 adams_sub模塊 點擊圖23中的MSC.Software模塊,彈出如圖24所示的對話框,在對話框中設(shè)置如下參數(shù):
圖24 仿真參數(shù)的設(shè)置
將聯(lián)合仿真的通信間隔Communication Interval選項設(shè)置為0.001,該選項定義了ADAMS與MATLAB/Simulink交換數(shù)據(jù)的通信間隔,調(diào)整該參數(shù)將控制聯(lián)合仿真的速度,并影響計算的速度。
將simulation mode選項設(shè)置為continuous,即連續(xù)仿真模式。其余參數(shù)保持默認,單擊OK按鈕,保存參數(shù)設(shè)置。3)聯(lián)合仿真分析
在MATLAB/Simulink中建立如下控制框圖(圖25),設(shè)置仿真時間為5s。
圖25 聯(lián)合仿真控制框圖
點擊start命令,開始進行聯(lián)合仿真,幾秒鐘后,將彈出一個DOS窗口,顯示ADAMS在聯(lián)合仿真分析中的各種數(shù)據(jù)。聯(lián)合仿真結(jié)束后,仿真結(jié)果既可以在MATLAB/Simulink中查看,也可以在ADAMS后處理器中查看。圖26和圖27分別為Simulink模型中示波器輸出的擺桿擺角隨時間變換曲線和輸入力矩隨時間變化曲線。
圖26 擺桿擺角隨時間變化曲線 圖27 輸入力矩隨時間變化曲線
一、實驗結(jié)果
由圖26和圖27可以看出,擺桿的擺角在輸入力矩的作用下,轉(zhuǎn)角由0逐漸增大,當?shù)竭_最大擺角(5°)時,保持不變。