摘 "要 "針對機械手教學過程中的動力學問題,以一個三桿機械手為例,利用Simscape模塊庫進行仿真教學建模,并詳細介紹其基本組成模塊,根據(jù)機械手的結構簡圖可直接建立物理仿真模型,通過仿真結果可直接觀察到各桿臂的運動軌跡及各關節(jié)的運動參數(shù)。
關鍵詞 "MATLAB;Simscape;機械手;仿真試驗
中圖分類號:G642.423 " "文獻標識碼:B
文章編號:1671-489X(2022)02-0041-03
Application of MATLAB/Simscape in Manipulator Simu-lation Teaching//QIN Zhiying, ZHAO Jifu, ZHAO Yuejing, LU Zian, WANG Wei
Abstract "Aiming at the dynamics problem in the manipulator
teaching process, taking a three-bar manipulator as an exam-ple, the Simscape module library is used for simulation tea-
ching modeling, and its basic components are introduced in detail, according to the structure diagram of the manipulator can be directly set up simulation model, through the simula-tion results can be directly observed the lever arm of the tra-jectory and motion parameters of each joint.
Key words "MATLAB; Simscape; manipulator; simulation experiment
0 "引言
機械手是自動化生產(chǎn)過程中逐漸出現(xiàn)的一種新型工業(yè)設備,隨著《中國制造2025》的提出,工業(yè)機械手成為智能制造必不可少的設備,而社會上操作維護機械手的技術人員相對緊缺,故各高校紛紛開設機器人相關課程[1]。機械手的運動軌跡規(guī)劃和控制策略研究是機器人課程教學中的重要環(huán)節(jié),通常利用公式推導、求解微分方程以及畫圖等方法對其進行求解,過程較為煩瑣且容易出錯,不利于學生理解,所以可將計算機仿真技術應用在機械手教學上[2]。
隨著科學技術和教育現(xiàn)代化的快速發(fā)展,計算機仿真模擬教學以其效率高、互動性強等特點越來越受到國內(nèi)高校的重視[3]。本文以三桿機械手為例,介紹使用MATLAB/Simulink中Simscape下的Multibody子模塊庫建立其仿真教學模型的過程。Simulink是MATLAB最重要的仿真工具之一,提供了可視化的人機交互環(huán)境,仿真模型由方框圖表示,與傳統(tǒng)的仿真軟件用微分方程和差分方程相比,具有更直觀、方便、靈活的特點,能夠更好地幫助學生理解問題,提高課堂效率[4-5]。
1 "機械手結構
機械手結構一般由多個桿件通過鉸鏈連接起來。如圖1所示一個三桿機械手,設A點為坐標原點,AB、BC和CD桿長度為l1=l2=l3,初始位置如圖中所示,BC桿與Y軸的夾角a=45°。假設AB、BC和CD桿的質量均勻分布,可求得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工具箱下的多體結構模塊Multibody建立教學仿真模型。如圖2所示,Ground
模塊、BodyAB模塊、BodyBC模塊和BodyCD模塊分別代表地、連桿AB、連桿BC和連桿CD,它們之間分別通過鉸鏈模塊RevoluteA,RevoluteB和RevoluteC連接,各個關節(jié)通過From Workspace模塊和Joint Actuator模塊提供驅動力。另外,為了得到各個關節(jié)的運動參數(shù),在每個鉸鏈模塊處都設置了關節(jié)傳感器模塊Joint Sensor,由此可測得每個關節(jié)處的速度、加速度等參數(shù),并通過示波器模塊Scope顯示出來。仿真模型模塊介紹如下。
2.1 "基本組成模塊
Ground模塊表示絕對坐標系中的靜止地面點,將其連接到關節(jié)會阻止該關節(jié)的一側移動,每個有效的模型必須至少有一個Ground模塊,且必須將其中一個連接到Machine Environment模塊。Body模塊表示具有可以自定義屬性的剛體,必須定義的屬性包括剛體的端點坐標和重心坐標等,還可改變顯示剛體的幾何顏色信息。如圖3所示,在屬性框內(nèi)分別輸入各桿的端點及其重心的坐標,由于各點坐標都是絕對坐標,故均選擇“world”選項即可。
Revolute模塊可使兩個物體圍繞之間的軸進行旋轉,有單個旋轉自由度,旋轉方向符合右手法則。旋轉關節(jié)是Multibody的原始關節(jié)之一,必須將關節(jié)模塊連接到兩個且僅兩個Body塊,即基座和從動塊。在參數(shù)設置界面將Number of sensor/ actuator ports設置為2,則會多出兩個接口用來連接Joint Actuator和Joint Sensor模塊。
2.2 "驅動和傳感器模塊
Joint Actuator模塊可以把與時間相關的力、扭矩或運動輸入關節(jié),兩個物體之間的連接表示物體之間的相對自由度。若運動是平移的,則該模塊需要輸入位置、速度和加速度信號;若運動是旋轉的,則該模塊需要輸入角度、角速度和角加速度信號。Joint Sensor模塊可用來測量關節(jié)處指定參考坐標系中沿某一旋轉軸(或關于球形單元的樞軸點)的運動,包括關節(jié)塊中關節(jié)單元的位置、速度或加速度,還可測量接頭上的反作用力和扭矩等。在每個Revolute模塊處都連接一個Joint Sensor模塊,用于監(jiān)測機械手運動過程中各個關節(jié)的運動參數(shù)。Body Sensor模塊用來監(jiān)測剛體塊的運動,將Body Sensor連接到想要監(jiān)測的Body模塊上,可以測量該Body模塊相對于原點的運動位移、運動方向、速度和加速度大小等運動參數(shù)。本文將Body Sensor模塊連接到D端,用于監(jiān)測機械手執(zhí)行端的運動軌跡。
2.3 "輸入和輸出模塊
From Workspace模塊可以從MATLAB的工作空間內(nèi)讀取信號數(shù)據(jù)并將其輸入模型中,采用關節(jié)空間三次多項式軌跡規(guī)劃法,公式如下:
θ(t)=c0+c1t+c2t2+c3t3
根據(jù)已知的各關節(jié)起始點和終止點的位置和角度,求出三次多項式軌跡函數(shù)的四個系數(shù)[6]。Scope模塊可將模擬過程中所監(jiān)測的連續(xù)或離散信號顯示出來,支持Simulink所有數(shù)據(jù)類型,維度包括標量、一維(矢量)、二維(矩陣)和多維,可根據(jù)信號數(shù)量自動調節(jié)多通道顯示。需要注意的是,當連接到一個恒定信號時,Scope模塊可能顯示一個單點。在每個Joint Sensor模塊后都連接一個Scope模塊,用于顯示機械手姿態(tài)變化時各關節(jié)的運動參數(shù)。
3 nbsp;仿真試驗結果
為得到仿真效果,需設置Env屬性中的Visua-lization(可視化)選項,在Open configuration parameter中選擇Animate machine during simu-lation選項,得到仿真效果如圖4所示。運行后雙擊Scope模塊可查看機械手每個關節(jié)處所測得的速度、加速度、角加速度等運動參數(shù)。圖5和圖6分別表示關節(jié)A處旋轉角度和角速度隨時間變化的曲線,可設置Joint Sensor模塊選擇測量其他運動參數(shù)并得到相應的曲線。圖7為Body Sensor模塊測得的機械手執(zhí)行端D的運動位移變化曲線。
4 "結論
針對MATLAB/Simscape工具箱,介紹Multi-body模塊庫的基本組成模塊,并介紹利用模塊庫建立機械手物理仿真模型進行動力學分析的仿真教學。與傳統(tǒng)的圖解法相比,此方法簡單有效,不需要進行復雜公式求解,就可以很直觀地觀察到機構的運動狀況,并得出相關的運動參數(shù),還可以通過改變不同的仿真參數(shù),得到不同類型的運動效果,形象地向學生展示出機械手的運動軌跡和各關節(jié)運動參數(shù),大大提高了教學質量。
參考文獻
[1] 楊波.基于MELFA_Works的三菱機械手在仿真教學
的應用[J].自動化應用,2018(11):69-70.
[2] 王胤,楊慶.仿真教學系統(tǒng)在專業(yè)課程教學中的應
用與探索[J].教育現(xiàn)代化,2019(61):165-169.
[3] 趙海濱,劉沖,陸志國,等.MATLAB_Simulink軟件
在機器人實驗教學中的應用[J].中國教育技術裝備,
2018(12):125-126,131.
[4] 高勝靈,胡松啟.基于Matlab/Simulink的導彈六
自度彈道仿真系統(tǒng)設計[J].科學技術與工程,
2011(1):29-34.
[5] 閆小軍,陳夏玲.例談Simulink在物理教學中的應
用[J].中國教育技術裝備,2019(3):48-51.
[6] 李建剛,尹文慶,胡飛,等.基于MATLAB/Simulink
的取苗機械臂運動軌跡仿真[J].中國制造業(yè)信息化,
2009(15):27-29,34.