工程案例—機(jī)器人Adams虛擬實(shí)驗(yàn)詳細(xì)步驟_第1頁(yè)
工程案例—機(jī)器人Adams虛擬實(shí)驗(yàn)詳細(xì)步驟_第2頁(yè)
工程案例—機(jī)器人Adams虛擬實(shí)驗(yàn)詳細(xì)步驟_第3頁(yè)
工程案例—機(jī)器人Adams虛擬實(shí)驗(yàn)詳細(xì)步驟_第4頁(yè)
工程案例—機(jī)器人Adams虛擬實(shí)驗(yàn)詳細(xì)步驟_第5頁(yè)
已閱讀5頁(yè),還剩19頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、.ADAMS軟件簡(jiǎn)介虛擬樣機(jī)仿真分析軟件ADAMS(AutomaticDynamicAnalysisofMechanicalSystem)是對(duì)機(jī)械系統(tǒng)的運(yùn)動(dòng)學(xué)與動(dòng)力學(xué)進(jìn)行仿真的商用軟件,由美國(guó)MDI(MechnicalDynamicsInc.)開(kāi)發(fā),在經(jīng)歷了12個(gè)版本后,被美國(guó)MSC公司收購(gòu)。ADAMS集建模、計(jì)算和后處理于一體,ADAMS有許多個(gè)模塊組成,基本模塊是View模塊和Postprocessi塊,通常的機(jī)械系統(tǒng)都可以用這兩個(gè)模塊來(lái)完成,另外在ADAMS中還針對(duì)專業(yè)領(lǐng)域而單獨(dú)開(kāi)發(fā)的一些專用模塊和嵌入模塊,例如專業(yè)模塊包括汽車模塊ADAMS/Car、發(fā)動(dòng)機(jī)模塊ADAMS/Engine、

2、火車模塊ADAMS/Rail、飛機(jī)模塊ADAMS/Aircraft等;嵌入模塊如振動(dòng)模塊ADAMS/Vibration、耐久性模塊ADAMS/Durability、液壓模塊ADAMS/Hydraulic、控制模塊ADAMS/Control和柔性體模塊ADAMS/AutoFlex等網(wǎng)。1.1 ADAMS軟件概述ADAMS是以計(jì)算多體系統(tǒng)動(dòng)力學(xué)(ComputationalDynamicsofMultibodySystem為基礎(chǔ),包含多個(gè)專業(yè)模塊和專業(yè)領(lǐng)域的虛擬樣機(jī)開(kāi)發(fā)系統(tǒng)軟件,利用它可以建立復(fù)雜機(jī)械系統(tǒng)的運(yùn)動(dòng)學(xué)和動(dòng)力學(xué)模型,其模型可以是剛體的,也可以是柔性體,以及剛?cè)峄旌象w模型。如果在產(chǎn)品的概念設(shè)

3、計(jì)階段就采取ADAMS進(jìn)行輔助分析,就可以在建造真實(shí)的物理樣機(jī)之前,對(duì)產(chǎn)品進(jìn)行各種性能測(cè)試,達(dá)到縮短開(kāi)發(fā)周期、降低開(kāi)發(fā)成本的目的。ADAMS,即機(jī)械系統(tǒng)動(dòng)力學(xué)自動(dòng)分析(AutomaticDynamicAnalysisofMechanicalSystems該軟件是美國(guó)MDI公司(MechnicalDynamicsInc.)開(kāi)發(fā)的虛擬樣機(jī)分析軟件。目前,ADAMS已經(jīng)被全世界各行各業(yè)的數(shù)百家主要制造商采用。根據(jù)1999年機(jī)械系統(tǒng)動(dòng)態(tài)分析軟件國(guó)際市場(chǎng)份額的統(tǒng)計(jì)資料,ADAMS軟件銷售總額近八千萬(wàn)美元、占據(jù)了51%的份額。ADAMS軟件使用交互式圖形環(huán)境和零件庫(kù)、約束庫(kù)、力庫(kù),創(chuàng)建完全參數(shù)化的機(jī)械系統(tǒng)

4、幾何模型,其求解器采用多剛體系統(tǒng)動(dòng)力學(xué)理論中的拉格朗日方程方法,建立系統(tǒng)動(dòng)力學(xué)方程,對(duì)虛擬機(jī)械系統(tǒng)進(jìn)行靜力學(xué)、運(yùn)動(dòng)學(xué)和動(dòng)力學(xué)分析,輸出位移、速度、加速度和反作用力曲線。ADAMS軟件的仿真可用于預(yù)測(cè)機(jī)械系統(tǒng)的性能、運(yùn)動(dòng)范圍、碰撞檢測(cè)、峰值載荷以及計(jì)算有限元的輸入載荷等。ADAMS一方面是虛擬樣機(jī)分析的應(yīng)用軟件,用戶可以運(yùn)用該軟件非常方便地對(duì)虛擬機(jī)械系統(tǒng)進(jìn)行靜力學(xué)、運(yùn)動(dòng)學(xué)和動(dòng)力學(xué)分析。另一方面,又是虛擬樣機(jī)分析開(kāi)發(fā)工具,其開(kāi)放性的程序結(jié)構(gòu)和多種接口,可以成為特殊行業(yè)用戶進(jìn)行特殊類型虛擬樣機(jī)分析的二次開(kāi)發(fā)工具平臺(tái)。ADAMS軟件有兩種操作系統(tǒng)的版本:UNIX版和WindowsNT/2000版。1.

5、2 用戶界面模塊(ADAMS/View)ADAMS/View是ADAMS系列產(chǎn)品的核心模塊之一,采用以用戶為中心的交互式圖形環(huán)境,將圖標(biāo)操作,菜單操作,鼠標(biāo)點(diǎn)擊操作與交互式圖形建模,仿真計(jì)算,動(dòng)畫(huà)顯示,優(yōu)化設(shè)計(jì),X-Y曲線圖處理,結(jié)果分析和數(shù)據(jù)打印等功能集成在一起。ADAMS/View采用簡(jiǎn)單的分層方式完成建模工作。采用Parasolid內(nèi)核進(jìn)行實(shí)體建模,并提供了豐富的零件幾何圖形庫(kù),約束庫(kù)和力/力矩庫(kù),并且支持布爾運(yùn)算,支持FORTRAN/77和FORTRAN/90中的函數(shù)。除此之外,還提供了豐富的位移函數(shù),速度函數(shù),加速度函數(shù),接觸函數(shù),樣條函數(shù),力/力矩函數(shù),合力/力矩函數(shù),數(shù)據(jù)元函數(shù),

6、若干用戶子程序函數(shù)以及常量和變量等3。自9.0版后,ADAMS/View采用用戶熟悉的Motif界面(UNIX系統(tǒng))和Windows界面(NT系統(tǒng)),從而大大提高了快速建模能力。在ADAMS/View中,用戶利用TABLEEDITOR,可像用EXCEL一樣方便地編輯模型數(shù)據(jù),同時(shí)還提供了PLOTBROWSER和FUNCTIONBUILDER工具包。DS(設(shè)計(jì)研究),DOE(實(shí)驗(yàn)設(shè)計(jì))及OPTIMIZE(優(yōu)化)功能可使用戶方便地進(jìn)行優(yōu)化工作。ADAMS/View有自己的高級(jí)編程語(yǔ)言,支持命令行輸入命令和C+語(yǔ)言,有豐富的宏命令以及快捷方便的圖標(biāo),菜單和對(duì)話框創(chuàng)建和修改工具包,而且具有在線幫助功能

7、。ADAMS/View模塊界面如圖1.1所示>ADAIR/Tiar?OOIiT0,0;回區(qū)I圖1.1ADAMS/View界面ADAMS/View新版采用了改進(jìn)的動(dòng)畫(huà)/曲線圖窗口,能夠在同一窗口內(nèi)可以同步顯示模型的動(dòng)畫(huà)和曲線圖;具有豐富的二維碰撞副,用戶可以對(duì)具有摩擦的點(diǎn)-曲線,圓-曲線,平面-曲線,以及曲線-曲線,實(shí)體-實(shí)體等碰撞副自動(dòng)定義接觸力;具有實(shí)用的Parasolid輸入腑出功能,可以輸入CAD中生成的Parasolid文件,也可以把單個(gè)構(gòu)件,或整個(gè)模型,或在某一指定的仿真時(shí)刻的模型輸出到一個(gè)Parasolid文件中;具有新型數(shù)據(jù)庫(kù)圖形顯示功能,能夠在同一圖形窗口內(nèi)顯示模型的拓?fù)?/p>

8、結(jié)構(gòu),選擇某一構(gòu)件或約束(運(yùn)動(dòng)副或力)后顯示與此項(xiàng)相關(guān)的全部數(shù)據(jù);具有快速繪圖功能,繪圖速度是原版本的20倍以上;采用合理的數(shù)據(jù)庫(kù)導(dǎo)向器,可以在一次作業(yè)中利用一個(gè)名稱過(guò)濾器修改同一名稱中多個(gè)對(duì)象的屬性,便于修改某一個(gè)數(shù)據(jù)庫(kù)對(duì)象的名稱及其說(shuō)明內(nèi)容;具有精確的幾何定位功能,可以在創(chuàng)建模型的過(guò)程中輸入對(duì)象的坐標(biāo),精確地控制對(duì)象的位置;多種平臺(tái)上采用統(tǒng)一的用戶界面,提供合理的軟件文檔;支持WindowsNT平臺(tái)的快速圖形加速卡,確保ADAMS/View的用戶可以利用高性能OpenGL圖形卡來(lái)提高軟件的性能;命令行可以自動(dòng)記錄各種操作命令,進(jìn)行自動(dòng)檢查。1.3 求解器模塊(ADAMS/Solver)AD

9、AMS/Solver是ADAMS系列產(chǎn)品的核心模塊之一,是ADAMS產(chǎn)品系列中處于心臟地位的仿真器。該軟件自動(dòng)形成機(jī)械系統(tǒng)模型的動(dòng)力學(xué)方程,提供靜力學(xué),運(yùn)動(dòng)學(xué)和動(dòng)力學(xué)的解算結(jié)果。ADAMS/Solver有各種建模和求解選項(xiàng),以便精確有效地解決各種工程應(yīng)用問(wèn)題。ADAMS/Solver可以對(duì)剛體和彈性體進(jìn)行仿真研究。為了進(jìn)行有限元分析和控制系統(tǒng)研究,用戶除要求軟件輸出位移,速度,加速度和力外,還可要求模塊輸出用戶自己定義的數(shù)據(jù)。用戶可以通過(guò)運(yùn)動(dòng)副,運(yùn)動(dòng)激勵(lì),高副接觸,用戶定義的子程序等添加不同的約束。用戶同時(shí)可求解運(yùn)動(dòng)副之間的作用力和反作用力,或施加單點(diǎn)外力。ADAMS/Solver新版中對(duì)校正

10、功能進(jìn)行了改進(jìn),使得積分器能夠根據(jù)模型的復(fù)雜程度自動(dòng)調(diào)整參數(shù),仿真計(jì)算速度提高了30%;采用新的S12型積分器(StabilizedIndex2intergrator),能夠同時(shí)求解運(yùn)動(dòng)方程組的位移和速度,顯著增強(qiáng)積分器的魯棒性,提高復(fù)雜系統(tǒng)的解算速度;采用適用于柔性單元(梁,襯套,力場(chǎng),彈簧-阻尼器)的新算法,可提高S12型積分器的求解精度和魯棒性;可以將樣條數(shù)據(jù)存儲(chǔ)成獨(dú)立文件使之管理更加方便,并且spline語(yǔ)句適用于各種樣條數(shù)據(jù)文件,樣條數(shù)據(jù)文件子程序還支持用戶定義的數(shù)據(jù)格式;具有豐富的約束摩擦特性功能,在Translational,Revolute,Hooks,Cylindrical,

11、Spherical,Universal等約束中可定義各種摩擦特性。1.4 后處理模塊(ADAMS/PostProcessor)MDI公司開(kāi)發(fā)的后處理模塊ADAMS/Postprocessor,用來(lái)處理仿真結(jié)果數(shù)據(jù),顯示仿真動(dòng)畫(huà)等。既可以在ADAMS/View環(huán)境中運(yùn)行,也可脫離該環(huán)境獨(dú)立運(yùn)行。后處理的操作界面如圖1.2所示。ADAMS/PostProcessor的主要特點(diǎn)是:采用快速高質(zhì)量的動(dòng)畫(huà)顯示,便于從可視化角度深入理解設(shè)計(jì)方案的有效性;使用樹(shù)狀搜索結(jié)構(gòu),層次清晰,并可快速檢索對(duì)象;具有豐富的數(shù)據(jù)作圖,數(shù)據(jù)處理及文件輸出功能;具有靈活多變的窗口風(fēng)格,支持多窗口畫(huà)面分割顯示及多頁(yè)面存儲(chǔ);多視

12、窗動(dòng)畫(huà)與曲線結(jié)果同步顯示,并可錄制成電影文件;具有完備的曲線數(shù)據(jù)統(tǒng)計(jì)功能:如均值,均方根,極值,斜率等;具有豐富的數(shù)據(jù)處理功能,能夠進(jìn)行曲線的代數(shù)運(yùn)算反向,偏置,縮放,圖1.2ADAMS/PostProcessor界面編輯和生成Bode圖等;為光滑消隱的柔體動(dòng)畫(huà)提供了更優(yōu)的內(nèi)存管理模式;強(qiáng)化了曲線編輯工具欄功能;能支持模態(tài)形狀動(dòng)畫(huà),模態(tài)形狀動(dòng)畫(huà)可記錄的標(biāo)準(zhǔn)圖形文件格式有:*gif,*.jpg,*.bmp,*.xpm,*.avi等;在日期,分析名稱,頁(yè)數(shù)等方面增加了圖表動(dòng)畫(huà)功能;可進(jìn)行幾何屬性的細(xì)節(jié)的動(dòng)態(tài)演示。ADAMS/PostProcessor的主要功能是為觀察模型的運(yùn)動(dòng)提供了所需的環(huán)境,用

13、戶可以向前,向后播放動(dòng)畫(huà),隨時(shí)中斷播放動(dòng)畫(huà),而且可以選擇最佳觀察視角,從而使用戶更容易地完成模型排錯(cuò)任務(wù);為了驗(yàn)證ADAMS仿真分析結(jié)果數(shù)據(jù)的有效性,可以輸入測(cè)試數(shù)據(jù),并測(cè)試數(shù)據(jù)與仿真結(jié)果數(shù)據(jù)進(jìn)行繪圖比較,還可對(duì)數(shù)據(jù)結(jié)果進(jìn)行數(shù)學(xué)運(yùn)算,對(duì)輸出進(jìn)行統(tǒng)計(jì)分析;用戶可以對(duì)多個(gè)模擬結(jié)果進(jìn)行圖解比較,選擇合理的設(shè)計(jì)方案;可以幫助用戶再現(xiàn)ADAMS中的仿真分析結(jié)果數(shù)據(jù),以提高設(shè)計(jì)報(bào)告的質(zhì)量;可以改變圖表的形式,也可以添加標(biāo)題和注釋;可以載入實(shí)體動(dòng)畫(huà),從而加強(qiáng)仿真分析結(jié)果數(shù)據(jù)的表達(dá)效果;還可以實(shí)現(xiàn)在播放三維動(dòng)畫(huà)的同時(shí),顯示曲線的數(shù)據(jù)位置,從而可以觀察運(yùn)動(dòng)與參數(shù)變化的對(duì)應(yīng)關(guān)系。1.5 控制模塊(ADAMS/Co

14、ntrols)ADAMS/Controls是ADAMS軟件包中的一個(gè)集成可選模塊。在ADAMS/Controls中,設(shè)計(jì)師既可以通過(guò)簡(jiǎn)單的繼電器,邏輯與非門,阻尼線圈等建立簡(jiǎn)單的控制機(jī)構(gòu),也可利用通用控制系統(tǒng)軟件(如MATLAB,MATRIX,EASY5)建立的控制系統(tǒng)框圖,建立包括控制系統(tǒng),液壓系統(tǒng),氣動(dòng)系統(tǒng)和運(yùn)動(dòng)機(jī)械系統(tǒng)的仿真模型。在仿真計(jì)算過(guò)程中,ADAMS采取兩種工作方式:其一,機(jī)械系統(tǒng)采用ADAMS解算器,控制系統(tǒng)采用控制軟件解算器,二者之間通過(guò)狀態(tài)方程進(jìn)行聯(lián)系;其二,利用控制軟件書(shū)寫(xiě)描述控制系統(tǒng)的控制框圖,然后將控制框圖提交給ADAMS,應(yīng)用ADAMS解算器進(jìn)行包括控制系統(tǒng)在內(nèi)的復(fù)

15、雜機(jī)械系統(tǒng)虛擬樣機(jī)的同步仿真計(jì)算。這樣的機(jī)械-控制系統(tǒng)的聯(lián)合仿真分析過(guò)程可以用于許多領(lǐng)域,例如汽車自動(dòng)防抱死系統(tǒng)(ABS),主動(dòng)懸架,飛機(jī)起落架助動(dòng)器,衛(wèi)星姿態(tài)控制等。聯(lián)合仿真計(jì)算可以是線性的,也可以是非線性的。使用ADAMS/Controls的前提是需要ADAMS與控制系統(tǒng)軟件同時(shí)安裝在相同的工作平臺(tái)上。二.典型機(jī)器人虛擬實(shí)驗(yàn)1.2.0 串聯(lián)機(jī)器人在ADAM中用連桿模擬機(jī)械臂,對(duì)兩自由度的機(jī)械臂分別進(jìn)行運(yùn)動(dòng)學(xué)分析、動(dòng)力學(xué)分析及機(jī)械臂的軌跡規(guī)劃。(1) 運(yùn)動(dòng)學(xué)分析下面是建立模型并對(duì)模型進(jìn)行設(shè)置分析的詳細(xì)過(guò)程。啟動(dòng)ADAMS/View,在歡迎對(duì)話框中選擇新建模型,模型取名為Robot_arm,并

16、將單位設(shè)置為MMKS,然后單擊OK。打開(kāi)坐標(biāo)系窗口。按下F4鍵,或者單擊菜單【ViewCoordinateWindow后,打開(kāi)坐標(biāo)系窗口。當(dāng)鼠標(biāo)在圖形區(qū)移動(dòng)時(shí),在坐標(biāo)窗口中顯示了當(dāng)前鼠標(biāo)所在位置的坐標(biāo)值。(3)創(chuàng)建機(jī)械臂關(guān)節(jié)1(連桿)。單擊連桿按鈕夕,勾選連桿的長(zhǎng)、寬、深選項(xiàng),分別將其設(shè)置為300mm、40mm、10mm,如圖2,1所示。在圖形區(qū)單擊鼠標(biāo)左鍵,然后將連桿拖至水平位置時(shí),在單擊鼠標(biāo)左鍵。(4)在連桿的右端打孔。在幾何建模工具欄單擊打孔按鈕,將半徑Radius設(shè)置為10mm,深度設(shè)置為10mm,如圖2,2所示。然后在圖形區(qū)模型附近單擊鼠標(biāo)左鍵,在與XY平面垂直的表面上單擊鼠標(biāo)左鍵。

17、然后修改孔的位置,在孔附近單擊鼠標(biāo)右鍵,選擇【HOLE_1一【Modify,在彈出的對(duì)話框中,將Center的坐標(biāo)值設(shè)置成(300,0.0,5.0),如圖2,3所示。(5)用(3)的方法在關(guān)節(jié)1右端孔中心處創(chuàng)建關(guān)節(jié)2,如圖2,4所示。然后再將關(guān)節(jié)2向內(nèi)側(cè)平移10mm。2.2孔設(shè)置關(guān)節(jié)模型(6)添加約束。在關(guān)節(jié)1的左端與大地之間添加轉(zhuǎn)動(dòng)副,在關(guān)節(jié)1與關(guān)節(jié)2結(jié)合處添加轉(zhuǎn)動(dòng)副。單擊工具欄中的旋轉(zhuǎn)副按鈕,并將創(chuàng)建旋轉(zhuǎn)副的選項(xiàng)設(shè)置為2Bod-1Loc和NormalGrid,然后在圖形區(qū)單擊關(guān)節(jié)1和大地,之后需要選擇一個(gè)作用點(diǎn),將鼠標(biāo)移動(dòng)到關(guān)節(jié)1的Markerl處出現(xiàn)center信息時(shí),按下鼠標(biāo)左鍵后就可

18、以創(chuàng)建旋轉(zhuǎn)副,旋轉(zhuǎn)副的軸垂直于工作柵格。然后用同樣的方法創(chuàng)建關(guān)節(jié)1與關(guān)節(jié)2之間的旋轉(zhuǎn)副,如圖2.5所示。創(chuàng)建旋轉(zhuǎn)副(7)添加驅(qū)動(dòng)。在運(yùn)動(dòng)副1(Joint1)和運(yùn)動(dòng)副2(Joint2)上分別添加旋轉(zhuǎn)驅(qū)動(dòng)。單擊主工具欄的旋轉(zhuǎn)驅(qū)動(dòng)按鈕包,然后在選擇上面創(chuàng)建的旋轉(zhuǎn)副1,然后在圖形區(qū)單擊鼠標(biāo)右鍵,在快捷菜單中中選擇Modify,在編輯對(duì)話框中將驅(qū)動(dòng)函數(shù)設(shè)置為40d*sin(time),如圖2.6所示。用同樣的方法在旋轉(zhuǎn)副2上創(chuàng)建旋轉(zhuǎn)驅(qū)動(dòng),并將驅(qū)動(dòng)函數(shù)設(shè)置為15d*time*(-1)。旋轉(zhuǎn)驅(qū)動(dòng)設(shè)置(8)運(yùn)行仿真計(jì)算。單擊主工具欄的仿真計(jì)算按鈕,將仿真類型設(shè)置為Kinematic,仿真時(shí)間EndTime設(shè)置

19、為25,仿真步數(shù)Steps設(shè)置為500,然后單擊運(yùn)行按鈕進(jìn)行仿真計(jì)算。(9)繪制運(yùn)動(dòng)軌跡。單擊菜單【Review】一CreateTraceSpline,然后選擇關(guān)節(jié)2右端點(diǎn)Marker4,再選擇關(guān)節(jié)1與大地的較接點(diǎn),鼠標(biāo)移動(dòng)到Jointl處,單擊鼠標(biāo)右鍵,在彈出對(duì)話框中選擇ground,單擊OK創(chuàng)建運(yùn)動(dòng)軌跡,如圖2.7所示。末端運(yùn)動(dòng)軌跡(10)結(jié)果后處理。按下鍵盤(pán)上的F8鍵,界面將從View模塊直接進(jìn)入到PostProcesS真塊,后處理,雋塊界面如圖2.8所示。后處理模塊界面在后處理模塊,通過(guò)菜單View一【LoadAnimation)可以載入動(dòng)畫(huà)。在仿真動(dòng)畫(huà)中可以播放兩種動(dòng)畫(huà),一種是在時(shí)間

20、域內(nèi)進(jìn)行的運(yùn)動(dòng)學(xué)和動(dòng)力學(xué)仿真計(jì)算動(dòng)畫(huà);另一種是在頻率域內(nèi)的,播放通過(guò)現(xiàn)行化或者在震動(dòng)模塊中的計(jì)算模型的振型動(dòng)畫(huà)。單擊播放按鈕后開(kāi)始播放動(dòng)畫(huà),如果在播放同時(shí)按下記錄按鈕©,在播放動(dòng)畫(huà)的同時(shí)也將動(dòng)畫(huà)保存到動(dòng)畫(huà)文件中,動(dòng)畫(huà)文件位于ADAMS的工作目錄下。在后處理模塊中,通過(guò)菜單【View】一【LoadPlot,通過(guò)選擇相應(yīng)的選項(xiàng),繪制出相應(yīng)的結(jié)果曲線。如果2.9、2.10所示,分別繪制出機(jī)械臂末端點(diǎn)的速度曲線和加速度曲線。(m(0/u1e).£?3q-*400.0200.0100000-1000-300.0-200030300.05.0Analysis:LastRun10,015

21、.0Time(sec)20,025.02009-C7'3016:41:41500.0400.0robot_am.MARKER_1ZTransiationaLVelocity.X.markerIZTranslatlonalVelacIfr.Y2.9機(jī)械臂末端速度曲線(FuaG/UJE)匚口虧五星動(dòng)力學(xué)分析創(chuàng)建機(jī)械臂模型。按照2.1.1節(jié)的(1)(6)步創(chuàng)建同樣的機(jī)械臂,并添加運(yùn)動(dòng)副約束。添加驅(qū)動(dòng)。與運(yùn)動(dòng)分析不同,動(dòng)力學(xué)分析添加的驅(qū)動(dòng)為單分量力矩。單擊工具欄上的單分量力矩選項(xiàng)0,將選項(xiàng)設(shè)置為SpaceFixedNormaltoGrid和Constant然后勾選Torque項(xiàng)并輸入4000,

22、然后在圖形區(qū)單擊關(guān)節(jié)1,再在其上單擊任何一點(diǎn)。用同樣的方法添加關(guān)節(jié)2的驅(qū)動(dòng),并將其值設(shè)置為-100,如圖2.11所示。(3)運(yùn)動(dòng)學(xué)計(jì)算仿真。單擊菜單【Simulate1一【IteractiveControls,打開(kāi)交互式仿真控制對(duì)話框,在對(duì)話框中將仿真時(shí)間EndTime設(shè)置為2,仿真步數(shù)Steps設(shè)置為500,仿真類型Type設(shè)置為Dynamic,單擊仿真計(jì)算按鈕,觀看仿真動(dòng)畫(huà),模型將在重力和驅(qū)動(dòng)力矩作用下運(yùn)動(dòng)。(4)繪制運(yùn)動(dòng)軌跡。單擊菜單【Review】一CreateTraceSpline,然后選擇關(guān)節(jié)2右端點(diǎn)Marker4,再選擇關(guān)節(jié)1與大地的較接點(diǎn),鼠標(biāo)移動(dòng)到Joint1處,單擊鼠標(biāo)右鍵

23、,在彈出對(duì)話框中選擇ground,單擊OK創(chuàng)建運(yùn)動(dòng)軌跡,如圖2.12所示。2.12機(jī)械臂末端運(yùn)動(dòng)軌跡(5)結(jié)果后處理。在后處理模塊,通過(guò)菜單【View一LoadAnimation可以載入動(dòng)畫(huà)。單擊播放按鈕后開(kāi)始播放動(dòng)畫(huà),在播放同時(shí)按下記錄按鈕©,將動(dòng)畫(huà)保存到動(dòng)畫(huà)文件中。在后處理模塊中,通過(guò)菜單View一【LoadPlot,通過(guò)選擇相應(yīng)的選項(xiàng),繪制出相應(yīng)的結(jié)果曲線。如果2.13、2.14所示,分別繪制出機(jī)械臂末端點(diǎn)的速度曲線和加速度曲線。Analysis:LastRunTime(sec)2009-07-3016;41412.13機(jī)械臂末端速度曲線軌跡規(guī)劃本例將建立在ADAMS/View

24、中用ControsTooMts建立控制系統(tǒng),通過(guò)PID環(huán)節(jié)進(jìn)行控制,控制對(duì)象是作用在每個(gè)關(guān)節(jié)單分量力矩,使機(jī)械臂的末端運(yùn)動(dòng)軌跡為圓。因?yàn)殛P(guān)節(jié)1的一端與大地(Ground)原點(diǎn)較接,因此將圓的方程設(shè)為(x-550)2+y2=502,用參數(shù)形式表示就是x=550+50*cos(t),y=50*sin(t),要使關(guān)節(jié)2的末端運(yùn)動(dòng)軌跡按指定的軌跡運(yùn)動(dòng),這時(shí)需要通過(guò)軌跡方程計(jì)算出兩個(gè)關(guān)節(jié)的關(guān)節(jié)變量,然后將這兩個(gè)關(guān)節(jié)變量作為控制系統(tǒng)模型的關(guān)節(jié)輸入。用MATLAB編程,計(jì)算兩關(guān)節(jié)變量,用到的函數(shù)是求解非線性方程組的函數(shù)fsolve,設(shè)91,2分別為關(guān)節(jié)1和關(guān)節(jié)2的角位移,l1,l2為兩關(guān)節(jié)的長(zhǎng)度,非線性方程

25、組為'x=l1*cos(01)+12*cos(日2)y=l1*sin(01)+l2*sin(02)MATLAB程序計(jì)算代碼如下:globalx1y1%命令文件t=0:pi/200:2*pi;x=550+50*cos(t);y=50*sin(t);temp=0,0'forn=1:401x1=x(n);y1=y(n);Q=fsolve('myfunfun',temp,optimset('Display','off);temp=Q;q1(n)=Q(1);q2(n)=Q(2);endfunctionq=myfunfun(p)%調(diào)用的函數(shù)文件glo

26、balx1y1qq1=p(1);qq2=p(2);q(1)=300*cos(qq1)+300*cos(qq1+qq2)-x1;q(2)=300*sin(qq1)+300*sin(qq1+qq2)-y1;計(jì)算完成后,矩陣q1里面保存的是關(guān)節(jié)1的角位移,矩陣q2里面保存的是關(guān)節(jié)2的角位移,然后再將這兩個(gè)關(guān)節(jié)變量以SPLINE的形式輸入到ADAMS中,作為模型的關(guān)節(jié)輸入。建立控制系統(tǒng)具體步驟如下:建立機(jī)械臂的模型,在兩個(gè)關(guān)節(jié)處分別添加單分量力矩,然后將數(shù)值設(shè)為00將MATLAB計(jì)算出的數(shù)據(jù)以Spline形式導(dǎo)入ADAMS。建立文本文檔保存在ADAMS工作目錄下,文檔中的存有兩列數(shù)據(jù):第一列為時(shí)間,第

27、二歹!J為q1矩陣。單擊菜單【File】一【Import】一TestDatd后,選中CreateSplines,然后在FileToRead輸入框中單擊鼠標(biāo)右鍵,在彈出的快捷菜單中選擇【Browse】在彈出的對(duì)話框中選擇相應(yīng)的文本文件,在IndependentColumnIndex中輸入1,表示默認(rèn)第一列為時(shí)間,然后單擊OK按鈕創(chuàng)建了SPLINE。如圖2.15所示。然后用同樣的方法導(dǎo)入關(guān)節(jié)2的數(shù)據(jù)。2.16導(dǎo)入數(shù)據(jù)文件建立SPLINES建立控制系統(tǒng)的輸入環(huán)節(jié)。單擊菜單【Build一ControlsToolkit一(StandardControlBlockd后,彈出創(chuàng)建控制環(huán)節(jié)工具包,在其中單擊輸

28、入環(huán)節(jié)按鈕L,將Name輸入框中的名稱修改為.Control_PID.joint1_input,單擊function輸入框后的按鈕,彈出函數(shù)構(gòu)造器,在其函數(shù)下拉表中選Spline項(xiàng),然后單擊Assist按鈕,彈出函數(shù)輔助對(duì)話框,在FirstIndependentVariable中輸入1,然后在SplineName中單擊鼠標(biāo)右鍵,在彈出快捷菜單中選擇【Spline一【Guesse*一SplineD,單擊OK按鈕,如圖2.16所示,然后單擊OK按鈕。SplineNameDerivativeOrderFirstIndependentVariableSecondIndependentVariableT

29、eKtParameterize.PIDcontrol:CreateFieldInfoSPLINE4XAki&aFittinglethodSPLINE1SPLINE_3Shortnames廣ACPickAssist.2.16建立輸入環(huán)節(jié)用同樣的方法再建立輸入環(huán)節(jié),將名稱改為.Control_PID.joint1.angl,在彈出的函數(shù)構(gòu)造器中選擇Displacement項(xiàng),然后在其下面的函數(shù)列表中,單擊Angleaboutz,單擊Assist按鈕,彈出函數(shù)輔助對(duì)話框,ToMaker輸入框中單擊鼠標(biāo)右鍵,在菜單中選擇【Marker】一【Pick】項(xiàng),然后單擊與旋轉(zhuǎn)副相關(guān)聯(lián)的PART_2.M

30、ARKER_3,用同樣方法為FromMarker輸入框市區(qū)旋轉(zhuǎn)副相關(guān)聯(lián)的ground.MARKER_4,單擊OK按鈕。創(chuàng)建比較環(huán)節(jié)。單擊控制環(huán)節(jié)工具包中的比較環(huán)節(jié)按鈕Z,將Name輸入框中的名字改為.Control_PID.sum1,在Input1輸入框中單擊鼠標(biāo)右鍵,在彈出的快捷菜單中選擇【controlsjnputl一【Guessed一(Joint1_input,在Input2輸入框中單擊鼠標(biāo)右鍵,在彈出的快捷菜單中選擇【controls_input】一【Guesses一【Joint1_angl,其他選項(xiàng)默認(rèn)。用同樣的方法建立關(guān)節(jié)2的比較環(huán)節(jié).Control_PID.sum2。創(chuàng)建PID環(huán)

31、節(jié)。單擊控制環(huán)節(jié)工具包中的PID按鈕,在Input輸入框中單擊鼠標(biāo)右鍵,在彈出的快捷菜單中選擇【controls_sunil一【Guesses一sum_1,在Input2輸入框中單擊鼠標(biāo)右鍵,在如出的快捷菜單中選擇【controlsjnputl一【Guesses一【Joint1_angl,其他選項(xiàng)默認(rèn),如圖2.17所示。用同作的方法建立關(guān)節(jié)2的PID控制樂(lè)節(jié)。Input:controls_gamDerivativeInput:control3_inputcontrolsjntegratorPGain:IGain:DGain:InitialConditioncontrols_lead_lagco

32、ntrols_low_passcontrols_pidcontrols_second_ordercontrals_sumcontrolsswitchPickBrowse.OKcontrolsJransferfunction卜TextParameterizeFieldInfo2.17創(chuàng)建PID環(huán)節(jié)將單分量力矩參數(shù)化。在圖形區(qū)雙擊單分量力矩的圖標(biāo),在彈出的編輯對(duì)話框中,單擊Function輸入框后的函數(shù)構(gòu)造器按鈕,在GettingObjectData下拉菜單中選擇Measures,然后在輸入框中單擊鼠標(biāo)右鍵,選擇【Runtme_Measur4-Guesses-pid_1,然后在單擊InsertOb

33、jectName按鈕,單"OK,如圖2.18所示。用同樣白法將關(guān)節(jié)2的單分量力矩與pid_2相關(guān)聯(lián)。GettingObjectDataMeasuresInsertObjectNamePlotPlotLimits.Verify2.18PID環(huán)節(jié)的輸出與單分量力矩相關(guān)聯(lián)PID控制環(huán)節(jié)的參數(shù)調(diào)節(jié)。單擊F8進(jìn)入后處理模塊中,在后處理模塊中將關(guān)節(jié)1與關(guān)節(jié)2的輸入角位移和輸出角位移進(jìn)行比較,然后修改PID環(huán)節(jié)的參數(shù),直至兩條曲線重合為止,如圖2.19,2.20所示。.76.5.4,32jq000-00000LcooPIDecontrol1,02_D3,04.05JTime(sec)氏。7J關(guān)節(jié)1

34、的位移調(diào)節(jié)曲線PID_contrul00spline2Jnputangljoint2關(guān)節(jié)2的位移調(diào)節(jié)曲線(8)繪制運(yùn)動(dòng)軌跡。單擊菜單【Review】一CreateTraceSpline,然后選擇關(guān)節(jié)2右端點(diǎn)Marker4,再選擇關(guān)節(jié)1與大地的較接點(diǎn),鼠標(biāo)移動(dòng)到Jointl處,單擊鼠標(biāo)右鍵,在彈出對(duì)話框中選擇ground,單擊OK創(chuàng)建運(yùn)動(dòng)軌跡,如圖2.21所示。2.21機(jī)械臂末端軌跡2.1.4基于ADAMS和MATLAB的聯(lián)合運(yùn)動(dòng)控制現(xiàn)在以MATLAB作為外部控制程序,仍以2.1.3節(jié)中的軌跡規(guī)劃為例,來(lái)說(shuō)明ADAMS與MATLAB的聯(lián)合控制過(guò)程。詳細(xì)過(guò)程如下:建立機(jī)械臂模型。按照2.1.1節(jié)(

35、1)(7)建立模型,并添加相應(yīng)的運(yùn)動(dòng)副,然后在兩個(gè)旋轉(zhuǎn)副位置分別添加單分量力矩。創(chuàng)建輸入狀態(tài)變量。單擊菜單【Build一SystemElements一(StateVariable一【New】,彈出創(chuàng)建狀態(tài)變量對(duì)話框。將Name輸入框改成Torquel,單擊OK按鈕,如圖2.22所示。用同樣的方法創(chuàng)建輸入狀態(tài)變量TorqueZ創(chuàng)建輸入狀態(tài)變量(3)將狀態(tài)變量與模型相關(guān)聯(lián)。在圖形區(qū)雙擊力矩圖標(biāo),打開(kāi)對(duì)話框如圖2.23所示,在Function中輸入VARVAL(Torque1),單擊OK按鈕后將狀態(tài)變量Torque1與單分量力矩關(guān)聯(lián)起來(lái),同樣將另一個(gè)單分量力矩與狀態(tài)變量關(guān)聯(lián)起來(lái)。狀態(tài)變量與模型關(guān)聯(lián)(

36、4)創(chuàng)建輸出狀態(tài)變量。單擊菜單【Build】一SystemElements一(StateVariable一New,彈出創(chuàng)建狀態(tài)變量對(duì)話框,如圖2.24所示。將Name輸入框修改成spline1,然后用上節(jié)提到的方法將該狀態(tài)變量與SPLINE1關(guān)聯(lián),單擊OK。然后再建立狀態(tài)變量angle1,然后在F(time尸輸入框中輸入表達(dá)式AZ(MARKER_1,MARKER_6),單擊OK。用同樣的方法倉(cāng)U建狀態(tài)變量spline2和angle2CreateStateVariable.*X創(chuàng)建輸出狀態(tài)變量(5)指定狀態(tài)變量為輸入輸出變量。單擊菜單【Build】一ControlsToolkit一(PlantInput!/PlantOutput1后彈出相應(yīng)的對(duì)話框,如圖2.25所示,然后添加相應(yīng)的輸入輸出變量即可完成定義。分別將Torque1、Torq

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論