MATLAB/Simscape在機械手仿真教學(xué)的應(yīng)用
時間:2022-07-28 10:59:33
導(dǎo)語:MATLAB/Simscape在機械手仿真教學(xué)的應(yīng)用一文來源于網(wǎng)友上傳,不代表本站觀點,若需要原創(chuàng)文章可咨詢客服老師,歡迎參考。
摘要:針對機械手教學(xué)過程中的動力學(xué)問題,以一個三桿機械手為例,利用Simscape模塊庫進行仿真教學(xué)建模,并詳細介紹其基本組成模塊,根據(jù)機械手的結(jié)構(gòu)簡圖可直接建立物理仿真模型,通過仿真結(jié)果可直接觀察到各桿臂的運動軌跡及各關(guān)節(jié)的運動參數(shù)。
關(guān)鍵詞:matlab;simscape;機械手;仿真試驗
機械手是自動化生產(chǎn)過程中逐漸出現(xiàn)的一種新型工業(yè)設(shè)備,隨著《中國制造2025》的提出,工業(yè)機械手成為智能制造必不可少的設(shè)備,而社會上操作維護機械手的技術(shù)人員相對緊缺,故各高校紛紛開設(shè)機器人相關(guān)課程[1]。機械手的運動軌跡規(guī)劃和控制策略研究是機器人課程教學(xué)中的重要環(huán)節(jié),通常利用公式推導(dǎo)、求解微分方程以及畫圖等方法對其進行求解,過程較為煩瑣且容易出錯,不利于學(xué)生理解,所以可將計算機仿真技術(shù)應(yīng)用在機械手教學(xué)上[2]。隨著科學(xué)技術(shù)和教育現(xiàn)代化的快速發(fā)展,計算機仿真模擬教學(xué)以其效率高、互動性強等特點越來越受到國內(nèi)高校的重視[3]。本文以三桿機械手為例,介紹使用MATLAB/Simulink中Simscape下的Multibody子模塊庫建立其仿真教學(xué)模型的過程。Simulink是MATLAB最重要的仿真工具之一,提供了可視化的人機交互環(huán)境,仿真模型由方框圖表示,與傳統(tǒng)的仿真軟件用微分方程和差分方程相比,具有更直觀、方便、靈活的特點,能夠更好地幫助學(xué)生理解問題,提高課堂效率[4-5]。
1機械手結(jié)構(gòu)
機械手結(jié)構(gòu)一般由多個桿件通過鉸鏈連接起來。如圖1所示一個三桿機械手,設(shè)A點為坐標原點,AB、BC和CD桿長度為l1=l2=l3,初始位置如圖中所示,BC桿與Y軸的夾角a=45°。假設(shè)AB、BC和CD桿的質(zhì)量均勻分布,可求得B點的坐標為(0,l1,0),AB桿的重心坐標為(0,l1/2,0)。同理,C端坐標為(l1sina,l1+l2cosa,0),BC桿重心坐標為(l2sina/2,l1+l2cosa/2,0),D端坐標為(l2sina+l3,l1+l2cosa,0),CD桿重心坐標為(l2sina+l3/2,l1+l2cosa,0)。
2物理仿真模型的建立
現(xiàn)利用Simscape工具箱下的多體結(jié)構(gòu)模塊Multibody建立教學(xué)仿真模型。如圖2所示,Ground模塊、BodyAB模塊、BodyBC模塊和BodyCD模塊分別代表地、連桿AB、連桿BC和連桿CD,它們之間分別通過鉸鏈模塊RevoluteA,RevoluteB和RevoluteC連接,各個關(guān)節(jié)通過FromWorkspace模塊和JointActuator模塊提供驅(qū)動力。另外,為了得到各個關(guān)節(jié)的運動參數(shù),在每個鉸鏈模塊處都設(shè)置了關(guān)節(jié)傳感器模塊JointSensor,由此可測得每個關(guān)節(jié)處的速度、加速度等參數(shù),并通過示波器模塊Scope顯示出來。仿真模型模塊介紹如下。
2.1基本組成模塊
Ground模塊表示絕對坐標系中的靜止地面點,將其連接到關(guān)節(jié)會阻止該關(guān)節(jié)的一側(cè)移動,每個有效的模型必須至少有一個Ground模塊,且必須將其中一個連接到MachineEnvironment模塊。Body模塊表示具有可以自定義屬性的剛體,必須定義的屬性包括剛體的端點坐標和重心坐標等,還可改變顯示剛體的幾何顏色信息。如圖3所示,在屬性框內(nèi)分別輸入各桿的端點及其重心的坐標,由于各點坐標都是絕對坐標,故均選擇“world”選項即可。Revolute模塊可使兩個物體圍繞之間的軸進行旋轉(zhuǎn),有單個旋轉(zhuǎn)自由度,旋轉(zhuǎn)方向符合右手法則。旋轉(zhuǎn)關(guān)節(jié)是Multibody的原始關(guān)節(jié)之一,必須將關(guān)節(jié)模塊連接到兩個且僅兩個Body塊,即基座和從動塊。在參數(shù)設(shè)置界面將Numberofsensor/actuatorports設(shè)置為2,則會多出兩個接口用來連接JointActuator和JointSensor模塊。
2.2驅(qū)動和傳感器模塊
JointActuator模塊可以把與時間相關(guān)的力、扭矩或運動輸入關(guān)節(jié),兩個物體之間的連接表示物體之間的相對自由度。若運動是平移的,則該模塊需要輸入位置、速度和加速度信號;若運動是旋轉(zhuǎn)的,則該模塊需要輸入角度、角速度和角加速度信號。JointSensor模塊可用來測量關(guān)節(jié)處指定參考坐標系中沿某一旋轉(zhuǎn)軸(或關(guān)于球形單元的樞軸點)的運動,包括關(guān)節(jié)塊中關(guān)節(jié)單元的位置、速度或加速度,還可測量接頭上的反作用力和扭矩等。在每個Revolute模塊處都連接一個JointSensor模塊,用于監(jiān)測機械手運動過程中各個關(guān)節(jié)的運動參數(shù)。BodySensor模塊用來監(jiān)測剛體塊的運動,將BodySensor連接到想要監(jiān)測的Body模塊上,可以測量該Body模塊相對于原點的運動位移、運動方向、速度和加速度大小等運動參數(shù)。本文將BodySensor模塊連接到D端,用于監(jiān)測機械手執(zhí)行端的運動軌跡。
2.3輸入和輸出模塊
圖5關(guān)節(jié)A角度變化曲線圖5關(guān)節(jié)A角度變化曲線圖6關(guān)節(jié)A角速度變化曲線圖6關(guān)節(jié)A角速度變化曲線圖7D端位移變化曲線圖7D端位移變化曲線FromWorkspace模塊可以從MATLAB的工作空間內(nèi)讀取信號數(shù)據(jù)并將其輸入模型中,采用關(guān)節(jié)空間三次多項式軌跡規(guī)劃法,公式如下:θ(t)=c0+c1t+c2t2+c3t3根據(jù)已知的各關(guān)節(jié)起始點和終止點的位置和角度,求出三次多項式軌跡函數(shù)的四個系數(shù)[6]。Scope模塊可將模擬過程中所監(jiān)測的連續(xù)或離散信號顯示出來,支持Simulink所有數(shù)據(jù)類型,維度包括標量、一維(矢量)、二維(矩陣)和多維,可根據(jù)信號數(shù)量自動調(diào)節(jié)多通道顯示。需要注意的是,當(dāng)連接到一個恒定信號時,Scope模塊可能顯示一個單點。在每個JointSensor模塊后都連接一個Scope模塊,用于顯示機械手姿態(tài)變化時各關(guān)節(jié)的運動參數(shù)。
3仿真試驗結(jié)果
為得到仿真效果,需設(shè)置Env屬性中的Visua-lization(可視化)選項,在Openconfigurationparameter中選擇Animatemachineduringsimu-lation選項,得到仿真效果如圖4所示。運行后雙擊Scope模塊可查看機械手每個關(guān)節(jié)處所測得的速度、加速度、角加速度等運動參數(shù),如圖5和圖6分別表示關(guān)節(jié)A處旋轉(zhuǎn)角度和角速度隨時間變化的曲線,可設(shè)置JointSensor模塊選擇測量其他運動參數(shù)并得到相應(yīng)的曲線。圖7為BodySensor模塊測得的機械手執(zhí)行端D的運動位移變化曲線。
4結(jié)論
針對MATLAB/Simscape工具箱,介紹了Multi-body模塊庫的基本組成模塊,并介紹了利用模塊庫建立機械手物理仿真模型進行動力學(xué)分析的仿真教學(xué)。與傳統(tǒng)的圖解法相比,此方法簡單有效,不需要進行復(fù)雜公式求解,就可以很直觀地觀察到機構(gòu)的運動狀況,并得出相關(guān)的運動參數(shù),還可以通過改變不同的仿真參數(shù),得到不同類型的運動效果,形象地向?qū)W生展示出機械手的運動軌跡和各關(guān)節(jié)運動參數(shù),大大提高了教學(xué)質(zhì)量。
參考文獻
[1]楊波.基于MELFA_Works的三菱機械手在仿真教學(xué)的應(yīng)用[J].自動化應(yīng)用,2018(11):69-70.
[2]王胤,楊慶.仿真教學(xué)系統(tǒng)在專業(yè)課程教學(xué)中的應(yīng)用與探索[J].教育現(xiàn)代化,2019(61):165-169.
[3]趙海濱,劉沖,陸志國,等.MATLAB_Simulink軟件在機器人實驗教學(xué)中的應(yīng)用[J].中國教育技術(shù)裝備,2018(12):125-126,131.
[4]高勝靈,胡松啟.基于Matlab/Simulink的導(dǎo)彈六自度彈道仿真系統(tǒng)設(shè)計[J].科學(xué)技術(shù)與工程,2011(1):29-34.
[5]閆小軍,陳夏玲.例談Simulink在物理教學(xué)中的應(yīng)用[J].中國教育技術(shù)裝備,2019(3):48-51.
[6]李建剛,尹文慶,胡飛,等.基于MATLAB/Simulink的取苗機械臂運動軌跡仿真[J].中國制造業(yè)信息化,2009(15):27-29,34.
作者:秦志英 趙季福 趙月靜 路子安 王偉