張 卓,馮海杰,鄧振杰
(廣東科學(xué)技術(shù)職業(yè)學(xué)院 機(jī)器人學(xué)院,廣東 珠海 519090)
Simscape Multibody是集成在Matlab/Simulink為三維機(jī)械系統(tǒng)(例如機(jī)器人)提供多體仿真環(huán)境的擴(kuò)展工具箱[1]。通過(guò)工具箱可以構(gòu)建剛體、關(guān)節(jié)、傳感器等模塊的連接關(guān)系,從而對(duì)機(jī)械動(dòng)力系統(tǒng)進(jìn)行建模,也可以在模型中導(dǎo)入包括質(zhì)量、慣性、三維幾何圖形等屬性的CAD組件,自動(dòng)生成三維動(dòng)畫(huà)。
SCARA是現(xiàn)代工業(yè)中廣泛應(yīng)用的一種機(jī)器人,第一臺(tái)SCARA機(jī)器人于1978年由日本山梨大學(xué)研制[2]。由于SCARA采用RRPR型結(jié)構(gòu)(Revolute Revolute Prismatic Revolute),其具有結(jié)構(gòu)緊湊、高速度、高精度等優(yōu)勢(shì),常用于執(zhí)行速度和精度要求較高的輕量型作業(yè),如產(chǎn)品質(zhì)量檢測(cè)、螺絲擰緊、電子元件組裝、鉆孔、攻絲、倒角、去毛刺、拋光等。近年來(lái),國(guó)內(nèi)外學(xué)者針對(duì)SCARA的各項(xiàng)性能指標(biāo)已經(jīng)進(jìn)行了較為全面的研究,文獻(xiàn)[3]對(duì)四自由度SCARA的正、逆運(yùn)動(dòng)學(xué)進(jìn)行了研究;文獻(xiàn)[4]使用Solidworks和Simmechanics(較早版本的Multibody)對(duì)SCARA機(jī)器人進(jìn)行建模和動(dòng)力學(xué)仿真;文獻(xiàn)[5]通過(guò)研究大量文獻(xiàn)資料,總結(jié)了用于量化機(jī)器人動(dòng)作和性能的各種指標(biāo)的范圍和優(yōu)缺點(diǎn)。
本文的主要工作是對(duì)SCARA建模與運(yùn)動(dòng)控制仿真方法進(jìn)行了完善與優(yōu)化。建模和仿真主要分為3個(gè)階段,首先,利用Multibody工具創(chuàng)建SCARA動(dòng)力學(xué)模型;然后導(dǎo)入CAD組件;最后進(jìn)行仿真,輸出動(dòng)態(tài)參數(shù)。
利用Solidworks等CAD設(shè)計(jì)軟件可以繪制SCARA模型,參考IRB910-450型SCARA機(jī)器人,得到SCARA模型如圖1所示。其參數(shù)見(jiàn)表1。
表1 IRB910-450參數(shù)值
圖1 SCARA結(jié)構(gòu)正視圖
Multibody是基于Matlab/Simulink的多體運(yùn)動(dòng)機(jī)構(gòu)仿真工具箱。Multibody可以通過(guò)連接并設(shè)置剛體、關(guān)節(jié)、約束、力元等條件來(lái)進(jìn)行多體運(yùn)動(dòng)機(jī)構(gòu)建模,可以通過(guò)導(dǎo)入CAD組件并在Mechanics Explorer中自動(dòng)生成三維動(dòng)畫(huà),使仿真輸出更加形象與直觀??梢詫CARA機(jī)器人機(jī)構(gòu)拆解為3類(lèi)功能模塊:仿真環(huán)境、機(jī)器人轉(zhuǎn)動(dòng)關(guān)節(jié)和機(jī)器人滑動(dòng)關(guān)節(jié)。
仿真環(huán)境模塊組成如圖2所示,此功能模塊包括世界參考坐標(biāo)系、仿真參數(shù)配置以及解法器,是Multibody的基本配置。
圖2 仿真環(huán)境模塊
機(jī)器人轉(zhuǎn)動(dòng)關(guān)節(jié)如圖3所示,此功能模塊包括剛體坐標(biāo)系變換、轉(zhuǎn)動(dòng)關(guān)節(jié)和關(guān)節(jié)零部件,在轉(zhuǎn)動(dòng)關(guān)節(jié)中輸入扭矩tin,可以獲得關(guān)節(jié)的轉(zhuǎn)動(dòng)角度q、角速度w、角加速度b以及輸出扭矩tout。
圖3 機(jī)器人轉(zhuǎn)動(dòng)關(guān)節(jié)模塊
機(jī)器人滑動(dòng)關(guān)節(jié)如圖4所示,此功能模塊構(gòu)成與機(jī)器人轉(zhuǎn)動(dòng)關(guān)節(jié)相似,包括剛體坐標(biāo)系變換、滑動(dòng)關(guān)節(jié)和關(guān)節(jié)零部件,在滑動(dòng)關(guān)節(jié)中輸入力fin,可以獲得關(guān)節(jié)的滑動(dòng)距離p、速度v、加速度a以及輸出力fout。
圖4 機(jī)器人滑動(dòng)關(guān)節(jié)模塊
上述功能模塊中,端口Conn表示世界參考坐標(biāo)系的原點(diǎn),端口B表示模塊的基礎(chǔ)坐標(biāo)系,端口F表示模塊的跟隨坐標(biāo)系,關(guān)節(jié)的輸入扭矩或力由控制器給定,各項(xiàng)輸出則用于反饋給控制器并由信號(hào)采集模塊將數(shù)據(jù)傳遞至Matlab Workspace進(jìn)行數(shù)據(jù)分析。
根據(jù)上述結(jié)論,利用上述功能模塊容易得到SCARA動(dòng)力學(xué)模型,如圖5所示。其中Base為機(jī)器人基座(可連接外軸模塊)、Link1-4為機(jī)器人剛體組件(Link4可連接治具模塊以及載荷模塊)。
將圖1所示CAD模型導(dǎo)入圖5所示仿真模型,可以在Mechanics Explorer中得到帶有動(dòng)力學(xué)參數(shù)的SCARA模型,如圖6所示。
圖5 利用功能模塊建立SCARA機(jī)器人模型
圖6 帶有動(dòng)力學(xué)參數(shù)的SCARA模型
為使該SCARA模型可以進(jìn)行運(yùn)動(dòng)仿真,SCARA模型外圍至少應(yīng)當(dāng)包含軌跡規(guī)劃模塊和控制器模塊,為了對(duì)仿真結(jié)果進(jìn)行分析,還應(yīng)當(dāng)包含信號(hào)采集模塊。各個(gè)模塊的信號(hào)關(guān)系如圖7所示。模型提供了豐富的接口,整體采用模塊化的建模方法,使得其能夠重復(fù)高效使用,便于擴(kuò)展算法模塊和創(chuàng)建機(jī)器人模型結(jié)構(gòu)。軌跡規(guī)劃模塊可以通過(guò)添加不同的插值算法生成機(jī)器人動(dòng)態(tài)目標(biāo)參數(shù),可以將動(dòng)態(tài)參數(shù)傳遞給控制器以驗(yàn)證控制算法的有效性,也可以將目標(biāo)參數(shù)直接傳遞給機(jī)器人從而獲得機(jī)器人各個(gè)關(guān)節(jié)的所需實(shí)時(shí)扭矩或力(需要簡(jiǎn)單修改機(jī)器人關(guān)節(jié)模塊,以旋轉(zhuǎn)關(guān)節(jié)為例,修改后的關(guān)節(jié)模型如圖8所示),用以驗(yàn)證該軌跡參數(shù)的可實(shí)現(xiàn)性??刂破髂K依照算法計(jì)算得出需要為每一個(gè)關(guān)節(jié)添加的驅(qū)動(dòng)信號(hào),可以通過(guò)仿真驗(yàn)證控制算法的有效性。故該模型實(shí)際上提供了一個(gè)可以用于機(jī)器人軌跡規(guī)劃以及運(yùn)動(dòng)控制算法研究的仿真平臺(tái),且具有較高的通用性。
圖7 SCARA模型信號(hào)關(guān)系示意圖
圖8 輸入信號(hào)為目標(biāo)動(dòng)態(tài)參數(shù)的機(jī)器人轉(zhuǎn)動(dòng)關(guān)節(jié)模塊
在關(guān)節(jié)空間中對(duì)機(jī)器人各關(guān)節(jié)角度(距離)變量進(jìn)行線型插值軌跡規(guī)劃,在控制器模塊使用PID控制,利用Tune功能設(shè)置系統(tǒng)響應(yīng)時(shí)間和暫態(tài)特性獲得的參數(shù)進(jìn)行仿真,可以得到全部仿真數(shù)據(jù),同時(shí)在Mechanics Explorer自動(dòng)生成機(jī)器人運(yùn)動(dòng)的三維可視動(dòng)畫(huà)。根據(jù)信號(hào)采集模塊輸出數(shù)據(jù),利用Matlab進(jìn)行繪圖,SCARA模型在PID控制下,針對(duì)關(guān)節(jié)空間線型插值軌跡進(jìn)行的運(yùn)動(dòng)過(guò)程仿真結(jié)果如圖9所示(SCARA所規(guī)劃的軌跡為機(jī)器人末端執(zhí)行器由起點(diǎn)出發(fā),經(jīng)過(guò)進(jìn)出點(diǎn)1后抵達(dá)工作點(diǎn)1,再返回進(jìn)出點(diǎn)1,然后經(jīng)過(guò)進(jìn)出點(diǎn)2后抵達(dá)工作點(diǎn)2,再返回進(jìn)出點(diǎn)2,仿真結(jié)束)。
圖9 SCARA目標(biāo)軌跡與運(yùn)動(dòng)仿真軌跡
本文提出了一種利用Simscape Multibody對(duì)SCARA機(jī)器人進(jìn)行模塊化建模和運(yùn)動(dòng)控制仿真的方法。針對(duì)SCARA機(jī)器人,通過(guò)設(shè)定機(jī)器人關(guān)鍵結(jié)構(gòu)參數(shù),并將CAD模型導(dǎo)入,可以得到SCARA動(dòng)力學(xué)模型。然后通過(guò)集成軌跡規(guī)劃、控制器和數(shù)據(jù)采集功能模塊,完成該SCARA運(yùn)動(dòng)仿真模型。
該模型利用Multibody簡(jiǎn)化了機(jī)器人動(dòng)力學(xué)建模過(guò)程,具備一定的通用性,易擴(kuò)展,可以通過(guò)改變或增減關(guān)節(jié)組合創(chuàng)建其他型號(hào)的機(jī)器人動(dòng)力學(xué)模型。模型的運(yùn)動(dòng)控制仿真通過(guò)Mechanics Explorer自動(dòng)生成動(dòng)畫(huà),可以準(zhǔn)確輸出機(jī)器人運(yùn)動(dòng)狀態(tài)。通過(guò)數(shù)據(jù)采集模塊獲取動(dòng)態(tài)參數(shù),同時(shí)提供了機(jī)器人軌跡規(guī)劃模塊和控制器模塊(該模型不包含電機(jī),控制器模塊輸出驅(qū)動(dòng)信號(hào)為轉(zhuǎn)矩或角位移,可以使用文獻(xiàn)[6]的方法在控制器模塊中添加伺服電機(jī)仿真模塊)的接口,便于進(jìn)行機(jī)器人軌跡規(guī)劃或運(yùn)動(dòng)控制算法等方面的后續(xù)研究。