基于Solidworks與Matlab的碼垛機(jī)器人動(dòng)力學(xué)仿真

2014-11-19 褚金錢 沈陽(yáng)自動(dòng)化研究所

  動(dòng)力學(xué)是高速碼垛機(jī)器人設(shè)計(jì)過(guò)程中必須考慮的問(wèn)題,但要建立機(jī)器人精確的動(dòng)力學(xué)模型比較困難。通過(guò)Solidworks 建立機(jī)器人實(shí)體模型,并將其導(dǎo)入Matlab 中,在仿真環(huán)境中調(diào)整相應(yīng)參數(shù),得到機(jī)器人的動(dòng)力學(xué)仿真模型,再利用Simulink 添加控制模塊、驅(qū)動(dòng)模塊(Joint Actuator)和檢測(cè)模塊(Joint Sensor)建立完整的仿真模型,通過(guò)兩者的結(jié)合進(jìn)行機(jī)器人動(dòng)力學(xué)仿真分析。結(jié)果表明,運(yùn)用Solidworks 與Matlab 聯(lián)合仿真,可以縮短設(shè)計(jì)周期、形象直觀的模擬機(jī)器人的三維運(yùn)動(dòng)情況,有效的獲取其動(dòng)力學(xué)特性參數(shù)。

  引言

  碼垛機(jī)器人是一種專業(yè)化、集成化的工業(yè)設(shè)備,具有結(jié)構(gòu)簡(jiǎn)單、性能可靠、操作方便、適用性強(qiáng)、編組方式靈活等特點(diǎn),能滿足食品、化工、醫(yī)藥包裝等行業(yè)對(duì)各種形狀成品進(jìn)行裝箱和碼垛的要求,在物流自動(dòng)化技術(shù)領(lǐng)域得到廣泛應(yīng)用。機(jī)器人通常作為包裝線的后續(xù)設(shè)備,將包裝袋按照預(yù)定的編組方式、逐個(gè)逐層碼放在托盤或箱體內(nèi),提高生產(chǎn)能力和轉(zhuǎn)運(yùn)能力。

  對(duì)虛擬機(jī)械系統(tǒng)進(jìn)行動(dòng)力學(xué)分析時(shí),傳統(tǒng)的分析軟件(如ADAMS) 能輸出位移、速度、加速度和反作用力曲線,還可以用于預(yù)測(cè)機(jī)械系統(tǒng)的性能、運(yùn)動(dòng)范圍、碰撞檢測(cè)、峰值載荷,仿真精度和可靠性都很高,但是其在幾何建模、控制系統(tǒng)設(shè)計(jì)上明顯不足。

  文章利用Solidworks 軟件強(qiáng)大的建模功能建立三維實(shí)體模型,轉(zhuǎn)化成XML 格式文件導(dǎo)入MATLAB 中并結(jié)合MATLAB 對(duì)動(dòng)態(tài)系統(tǒng)進(jìn)行建模、仿真和分析的Simulink 軟件包,根據(jù)工作要求合理設(shè)計(jì)控制系統(tǒng)、靈活編寫各種控制程序,預(yù)先對(duì)動(dòng)態(tài)系統(tǒng)進(jìn)行仿真分析,從而在形成實(shí)際機(jī)器人系統(tǒng)之前能適時(shí)修正,以減少系統(tǒng)反復(fù)修改的時(shí)間實(shí)現(xiàn)高效開(kāi)發(fā)的目的。

  本文以沈陽(yáng)新松機(jī)器人自動(dòng)化股份有限公司開(kāi)發(fā)設(shè)計(jì)的四自由度關(guān)節(jié)型碼垛機(jī)器人為研究對(duì)象,運(yùn)用Solidworks 軟件建立碼垛機(jī)器人的三維實(shí)體模型,利用Solidworks 和Matlab 的軟件接口將簡(jiǎn)化后的機(jī)器人模型導(dǎo)入Matlab 中,并進(jìn)行動(dòng)力學(xué)聯(lián)合仿真,即可獲得機(jī)器人按預(yù)定加速度、速度沿預(yù)定軌跡運(yùn)動(dòng)時(shí)各關(guān)節(jié)的動(dòng)力學(xué)特性參數(shù),據(jù)此來(lái)分析機(jī)器人的靜、動(dòng)態(tài)特性,為后續(xù)的運(yùn)動(dòng)控制、動(dòng)態(tài)性能提高以及優(yōu)化設(shè)計(jì)提供有力理論依據(jù),縮短產(chǎn)品開(kāi)發(fā)周期。

1、搭建Solidworks 與Matlab 聯(lián)合仿真平臺(tái)

  進(jìn)行機(jī)械系統(tǒng)設(shè)計(jì)時(shí),利用Solidworks 軟件強(qiáng)大的建模功能建立三維實(shí)體模型,轉(zhuǎn)換成XML 格式并導(dǎo)入Matlab 中進(jìn)行整理,利用Matlab 對(duì)動(dòng)態(tài)系統(tǒng)進(jìn)行建模、仿真和分析的Simulink 軟件包預(yù)先對(duì)動(dòng)態(tài)系統(tǒng)仿真,從而在形成實(shí)際機(jī)構(gòu)之前進(jìn)行適時(shí)的修正,以減少系統(tǒng)反復(fù)修改的時(shí)間實(shí)現(xiàn)高效開(kāi)發(fā)的目的。

  為實(shí)現(xiàn)Solidworks 與Matlab 的聯(lián)合仿真,需要在Solidworks 軟件中安裝Simmechanics link 插件,以建立Matlab 仿真接口。搭建仿真平臺(tái)的操作步驟如下:

  (1) 根據(jù)計(jì)算機(jī)的性能參數(shù)和Matlab 版本,從MathWorks 公司的官方網(wǎng)站上下載合適install addon.m 以及smlink. r2010b. win32 壓縮文件;

  (2) 根據(jù)smlink. r2010b. win32 壓縮包的安裝路徑,設(shè)置與之對(duì)應(yīng)的install addon ( 'D: \ software \Smlink \smlink. r2010b. win32. zip'),同時(shí)在Matlab 的workspace 中運(yùn)行該命令,即可完成在Matlab 里安裝Simmechanics link;

  (3) 使Matlab 成為自動(dòng)服務(wù)器。在Matlab 的workspace 運(yùn)行:regmatlabserver。為了檢查自動(dòng)服務(wù)器的運(yùn)行狀態(tài),可使用命令enable service( 'AutomationServer',true);

  (4) 安裝Solidworks 插件: 在Matlab 的workspace里運(yùn)行命令:smlink_linksw;

  (5) 在Solidwork 里建立三維模型,注意勾選“選項(xiàng)-插件-SimMechanics Link”(如圖1 所示)。待建模完成并保存* . SLDASM 后,另存為. xml 格式文件。

  (6) 向Matlab 中導(dǎo)入Solidworks 三維模型:mech_import ('Robot. xml'),運(yùn)行該命令即完成Matlab 建模過(guò)程,通過(guò)添加Simulink 模塊實(shí)現(xiàn)對(duì)機(jī)構(gòu)的控制、仿真分析等。

添加插件圖

圖1 添加插件圖

4、結(jié)論

  用Solidworks 與ADAMS 仿真時(shí),由于兩者均采用Parasolid 核心實(shí)體造型技術(shù),用Parasolid 格式導(dǎo)入ADAMS 的相對(duì)效果最好,零件保留其屬性顏色,與實(shí)物效果較接近,基本上可以滿足虛擬樣機(jī)的需要,但會(huì)使特征顏色以及面顏色丟失且表面質(zhì)量稍有下降。Solidworks /COSMOS Motion 用于建立運(yùn)動(dòng)機(jī)構(gòu)模型,跟蹤零件的運(yùn)動(dòng)軌跡,分析構(gòu)件中零件的速度、加速度、作用力、反作用力和力矩等,并用動(dòng)畫、圖形、表格等多種形式輸出結(jié)果,其分析結(jié)果可指導(dǎo)零件的結(jié)構(gòu)設(shè)計(jì)或調(diào)整零件的材料,但受加載控制信號(hào)限制而不能靈活控制其運(yùn)動(dòng)軌跡。在機(jī)械產(chǎn)品的開(kāi)發(fā)設(shè)計(jì)過(guò)程中,合理運(yùn)用Solidworks 與Matlab 的聯(lián)合仿真可快速建立虛擬樣機(jī)模型,根據(jù)工況需要靈活地規(guī)劃其運(yùn)動(dòng)軌跡以進(jìn)行動(dòng)力學(xué)分析,縮短設(shè)計(jì)周期、形象直觀的模擬機(jī)器人的三維運(yùn)動(dòng)。