基于MATLAB和ADAMS联合仿真的工业机器人建模
2022-08-31戎新萍徐海璐房剑飞
戎新萍,徐海璐,韩 雪,房剑飞
(南京工业大学浦江学院 机电学院,南京 211200)
0 引言
工业机器人是一个错综复杂的动力学系统,是先进制造技术和自动化装备的典型代表[1~3]。它由多个关节和多个连杆组成,且大多数为串联型,使用的是谐波减速器,这势必造成机器人在运行过程中或运行过程后产生振动,进而降低末端执行器的位置精度[4,5]。
MATLAB/Simulink是一个模块化、模型化的系统动态仿真坏境,不仅可以利用其搭建系统仿真模型,还可以加入相关算法进行进一步的理论控制研究[6]。本文借助Simulink仿真软件搭建了工业机器人的仿真模型,并与SolidWorks和ADAMS相结合建立的工业机器人虚拟样机相比较,来验证此工业机器人Simulink仿真模型的准确性。
1 工业机器人虚拟样机的建立
SolidWorks三维软件具有很强大的建模能力,但其动态仿真能力较弱,而ADAMS软件功能恰好相反[7]。可将两者有效结合,建立出工业机器人的虚拟样机。
1.1 SolidWorks三维结构建模
本文所研究的对象为6自由度的关节型工业机器人,此机器人类似人的手臂,通常由基座、转台、大臂、小臂,和末端执行器等几部分组成。其结构原理示意图如图1所示。图1所示的位姿是此工业机器人的初始位姿,腰关节的坐标系O1-x1y1z1相当于原点坐标系O-xyz的坐标为(45,-180,400)。
图1 工业机器人的结构原理示意图
此6自由度的工业机器人有6个关节,均为转动关节。其中,腰关节、肩关节和肘关节是决定末端执行器位置的主要因素,而其余3个关节决定末端执行器的姿态,对其位置影响较小,且这3个自由度都采用的齿轮减速器,对抑制振动的影响也较小[8,9]。所以,可忽略末端执行的3个自由度,此6自由度的工业机器人就被简化成只有腰关节、肩关节和肘关节的3自由度工业机器人,且忽略摩擦力对关节的影响。首先,依据此工业机器人的说明材料、实物测绘来获取尺寸参数;然后,利用SolidWorks三维软件绘制各零件的零件图,定义零件属性;最后,根据工业机器人的装配关系对各个零件进行装配。此工业机器人的SolidWorks三维结构图如图2所示。
图2 工业机器人三维结构图
1.2 ADAMS仿真分析
ADAMS是虚拟样机分析软件,具有强大的动力学和运动学仿真能力,能够方便地实现多刚体的运动仿真,但其自身的三维建模能力较弱[10]。可将SolidWorks建模软件绘制好的工业机器人装配图另存为parasolid格式,然后导入到ADAMS仿真软件中,如图3所示。
图3 工业机器人的ADAMS仿真图
然后添加约束和驱动,由于忽略了末端执行器的3个自由度,所以此3个转动关节的驱动力都为0,而腰关节、肩关节和肘关节的驱动力分别为10°/s、5°/s、10°/s,仿真时间为8秒。末端执行器的位置的ADAMS仿真结果图如图4所示。腰关节驱动力矩的大小主要取决于其上摩擦力的大小,不予研究。肩关节和肘关节的ADAMS驱动力矩仿真结果图如图5所示。
图4 末端执行器ADAMS仿真结果图
图5 各关节驱动力矩ADAMS仿真结果图
根据工业机器人的结构原理示意图可知,末端执行器位置的理论计算公式为:
末端执行器位置的ADAMS仿真结果值和理论计算值对比如表1-表3所示。时间的单位为s,长度的单位为mm。观察表1-表3发现,末端位置仿真值的最大误差为±2mm,最大相对误差为0.23%,误差值相对来说非常小,ADAMS的位置仿真值几乎接近于理论值。所以ADAMS的仿真值可作为此工业机器人各参数的理论参考值。
表1 末端x位置ADAMS仿真值和理论值对比表
表2 末端y位置ADAMS仿真值和理论值对比表
表3 末端z位置ADAMS仿真值和理论值对比表
2 MATLAB/Simulink仿真建模
MATLAB/Simulink具有很强的仿真、理论计算能力,仿真模型建好之后,可加入相关算法,进行理论控制研究。本文借助Simulink仿真软件搭建工业机器人精确的仿真模型,为后期的解耦、振动抑制控制算法作铺垫。Simulink中的SimMechanics模块提供大量对应实际系统的元件,能方便地搭建好工业机器人的仿真模型。由SimMechanics模块搭建的工业机器人仿真模型如图6所示。
图6 工业机器人的Simulink仿真模型图
由于腰关节的坐标相对于原点坐标为(45,-180,400),所以在设置大地环境时,将大地坐标改为腰关节的参考坐标。由于关节中的减速装置、电机、法兰等机构都有相应的质量,而Simlink中的关节是没有质量的,所以需要将实际关节的质量等效到连杆刚体中。如果通过数值运算,将会非常繁琐,且容易出错。可利用SolidWorks中“质量属性”功能来获得等效后的连杆刚体质量的质心位置、惯性张量等参数,如图7所示。根据“质量属性”值设置Simulink中连杆刚体的参数,并在关节处加上驱动力,腰关节、肩关节和肘关节的驱动力也分别为10°/s、5°/s、10°/s,仿真时间为8秒,末端执行器位置的Simulink仿真结果图如图8所示,肩关节、肘关节的驱动力矩图如图9所示。
图7 连杆刚体质量等效
图8 末端执行器位置的Simulink仿真结果图
图9 肩关节、肘关节的驱动力矩图
3 仿真分析
在ADAMS和Simulink中各自建好工业机器人仿真模型之后,施加相同的驱动力和仿真时间。由前文分析可知,ADAMS建立的工业机器人虚拟样机可作为理论的参考值,将Simulink的仿真结果与虚拟样机的理论参考值相比较,如图10所示。从图中可以看出末端执行器位置的最大绝对误差为9mm,最大相对误差为0.89%;肩关节和肘关节的驱动力矩最大绝对误差为1.5N·m,最大相对误差为1.1%,误差值相对来说非常小。所以,利用Simulink仿真软件搭建的此工业机器人的仿真模型误差很小,准确度较高,可在此软件上再加入算法,作进一步的控制研究。
图10 Simulink与ADAMS仿真结果对比图
4 结语
仿真技术是机器人领域中的一个重要部分,通过仿真来研究机器人的各种性能和特点已经是机器人理论研究必要的方法之一。为了保证在Simulink仿真平台上所搭建工业机器人仿真模型的准确性,本文先利用SolidWorks三维软件按照1:1的比例绘制此工业机器人的三维结构模型,然后将此三维模型导入到ADAMS中,建立了此工业机器人的虚拟样机,再加入相应的约束和驱动力进行动态仿真,得到末端执行器的运行位置图和关节驱动力矩图,并与理论结果相比较;最后在Simulink仿真平台上利用SimMechanics模块搭建此工业机器人的仿真模型,并设置仿真环境及刚体参数,施加驱动得到的末端运行位置图和关节驱动力矩图,并将此仿真结果与ADAMS中的仿真结果作比较。仿真结果表明,利用Simulink搭建工业机器人的仿真模型接近于真实模型,即此模型较为准确,可在Simulink仿真软件上进行进一步的理论控制研究。