APP下载

基于ADAMS的六自由度串联机器人运动学仿真研究

2019-04-28黄维刚

重型机械 2019年2期
关键词:运动学连杆约束

李 飞,黄维刚,梁 鹏

(西安航天精密机电研究所,陕西 西安 710100)

0 前言

六自由度机器人操作臂一般是由一系列连杆通过转动或移动关节串联而成。相应的,其具有多个输入和输出,存在着错综复杂的耦合关系及非线性关系。机器人运动学的研究一般包含正运动学与逆运动学两类,其具体描述机器人各个关节角度与末端的位姿关系,在不考虑各关节受力、力矩、质量等情况下,得到各关节位移、速度、加速度等参量同时间的数值关系[1-3]。

运动学问题不仅是机器人动力学分析的基础,对于机器人运动空间、运动控制、轨迹规划、离线编程等问题的研究也提供了依据。机器人运动学研究,主要是通过建立D-H坐标系,再进行大量的矩阵运算来进行各关节角度的计算。并借助仿真软件ADAMS建立六自由度机器人虚拟样机模型,可完成运动学问题的仿真研究。

1 ADAMS的求解运动学原理

一个系统通常由多个构件组成,各个构件之间存在某些运动的约束关系,可将这些约束分为几个常用的基本约束和运动副。模拟系统的真实运动情况,需要在构件间抽象出相应的运动副;要使系统能够运动起来,还需要在运动副上添加驱动及载荷[4]。根据运动副所建立的约束方程的右边等于零,而根据驱动建立的约束方程的右边等于驱动规律。

在ADAMS中,在模型上定义的驱动是将运动副未约束的其他自由度做进一步约束。驱动实际也是一种约束,只不过这种约束是确保两个构件按照确定的规律运动,这种约束是时间的函数[5-6]。系统有确定位形的充要条件是自由度数等于驱动的数目。如果系统还有未约束的自由度,则对于未约束住的自由度会在重力和其他载荷的作用下进行动力学计算,有确定位形的自由度会进行运动学计算。

对于一个实际的机械系统,假若运动副的约束方程数为nh,则用系统广义坐标矢量表示运动学约束方程组为

(1)

对于只含有完整约束的系统,系统的自由度数等于系统坐标数nc减去系统独立的约束方程组nh。为了使系统具有确定位形,假设系统施加的驱动约束数为S,驱动约束方程为ΦD(q,t),并且通常作用下,驱动约束是系统广义坐标和时间的函数。可得[7-8]

DOF=nc-nh=S

(2)

ΦD(q-t)=0

(3)

由式(1)表示的系统运动学约束和式(3)表示的驱动约束组合成系统所受的全部约束

(4)

式(4)为nc个广义坐标的nc个非线性方程组,其构成了系统的位置方程[9-11],求解此式,就可得到系统任意时刻的广义坐标位置q(t)。

2 六自由度串联机器人运动学模型

2.1 六自由度串联机器人结构

图1所示的机器人由J1至J6共6个转动关节串联构成,每个关节由交流伺服电机驱动。在运动控制系统的作用下,各个关节按照预定空间轨迹路径运动,末端执行器实现特定的功能。

图1 机器人关节外形图

2.2 运动学模型的建立

六自由度串联型工业机器人本体可看做是不同特征的连杆所构成的一个复杂的多刚体系统空间结构。在运动学分析过程中,利用D-H参数法可确定出用于表示连杆本身特征,以及表示连杆与相邻连杆间连接关系的4个参数:杆件长度,杆件扭角,关节距离,关节转角[12],建立起如图2所示的连杆结构示意图。表1为机器人D-H参数表。

图2 机器人连杆结构示意图

序号连杆长度/mm连杆扭角/(°)关节距离/mm初始转角/(°)关节转角范围/(°)1220902770±17026140090-150~+9031609000-90~+1504090611.50±18050-90090+45~-2256001240±360

3 六自由度串联机器人运动学仿真

3.1 仿真模型的建立与验证

建立六自由度串联机器人虚拟样机模型,必先进行CAD建模。考虑到建模的便捷性,本文借助SolidWorks三维软件进行CAD模型的建立。再将模型转化为Parasolid格式导入ADAMS软件中,其中各零部件质量及转动惯量等物理参数可由CAD模型计算获得或用物理实体模型实测后输入得到。

对导入的模型6个关节处添加运动副约束,在底座与大地之间添加固定副,并添加重力加速度。此时需要对仿真模型进行检查,防止隐含错误,具体方法:可利用软件自身的模型自检工具,利用tools/model verify命令启动自检,系统会反馈自检信息对话框,如图3所示,框中具体呈现了模型包含的部件数、约束的类别与个数、系统的自由度数及模型的检查内容结果信息。再设置适当的步长和仿真时间,检验模型在自身重力作用下各零件的运动状态及零件之间的连接状况,保证模型准确无误[13-15]。图4为定义完成的六自由度串联机器人虚拟样机模型。

图3 自检信息对话框

3.2 末端轨迹的定义与关节角度的求解

在机器人末端添加一般点驱动,利用多自由度驱动功能,定义三个平动驱动及三个旋转驱动。选择四个空间位置点A1(989,21,1133);B1(1102,-178,833);C1(797,-134,783);D1(850,171,699)。机器人末端在8 s内依次遍历四个点并回到起始点,即定义路径S为A1-B1-C1-D1-A1。

图4 机器人虚拟样机模型

图5 末端轨迹S的定义

对于末端路径的设定,可利用软件函数库中的三次多项式逼近Heaviside阶跃函数,也即Step函数[16-18]。末端点X、Y、Z三个位置坐标随时间的变化定义为:

TraX: disp(time)=STEP(time,0,0,2,-350)+STEP(time,2,0,4,50)+STEP(time,4,0,6,-134)+STEP(time,6,0,8,434);

TraY: disp(time)=STEP(time,0,0,2,-155)+STEP(time,2,0,4,-44)+STEP(time,4,0,6,349)+STEP(time,6,0,8,-150);

TraZ: disp(time)=STEP(time,0,0,2,192)+STEP(time,2,0,4,-305)+STEP(time,4,0,6,252)+STEP(time,6,0,8,-139);

Rot X=Rot Y=Rot Z=0*time;

设置仿真运行时间8 s,步长800步,每两点之间用时2 s,通过轨迹跟踪功能,可显示出机器人末端变化轨迹S,如图5所示。利用软件后处理模块中的测量功能,将仿真得到的运动曲线转化为六个驱动轴的运动样条函数,由此完成了机器人运动学的逆向求解过程。图6为六个转轴角度随时间变化曲线。可以看出J1~J6关节角度随时间连续变化,平顺无剧烈抖动,机器人运动过程平稳无冲击。

图6 J1~J6关节转角变化曲线

3.3 关节角度的验证与末端轨迹的测量

在后处理模块中,可将图6各轴位移时间曲线转化为spline样条曲线,机器人J1~J6曲线分别命名为spline1,spline2,spline3,spline4,spline5,spline6。

利用AKISPL(a,b,spline name,c)函数对各样条形数据按照Akima插值方法进行微分计算,并返回一个样条型数据[19-22]。其中,a、b是代表两个独立变量,c表示为微分的阶次,可取0、1或2。此时,定义a为time,b和c都取为0。最终定义机器人J1轴的驱动函数如下:

AKISPL(time, 0, SPLINE_1, 0)*(-1d)

其余轴定义方式与J1轴相同。其中,添加“*(-1d)”表示角位移的单位为度。

再将机器人末端的点驱动移除掉,重新运行仿真,即由定义所有关节的驱动函数,仿真得到了机器人末端的运动轨迹,完成了机器人运动学的正解。给定仿真时间8 s,步数800步,测量得到机器人末端空间轨迹曲线S’并导入进后处理模块,对比手臂末端一般点驱动的轨迹曲线S,可以发现S’与S很好的重合一起了。后处理模块下将两条曲线做减法,可得出数据最大误差为6.1475×10-8,可以看出数值很小,可忽略不计。

图7为机器人末端指定的Market点在X、Y、Z方向上的位移及速度随时间变化曲线。由图7看出,在关节样条函数驱动条件下,机器人末端能根据规划的路径运动到各规划点。轨迹规划的结果表明运用该样条函数进行轨迹规划满足机器人运动的连续性、平稳性,并保证了关节空间角位移、角速度的连续性。体现了运用样条函数进行机器人轨迹规划的优点。

图7 末端Market点X、Y、Z方向位移、速度随时间变化曲线

4 结论

本文建立了基于ADAMS的六关节串联机器人虚拟样机,并进行了运动学分析。其结果表明:通过ADAMS仿真,可方便、快捷、准确的进行机器人运动学正、反解算,直观了解机器人运动过程中的各连杆、各关节及末端执行器的运行状态,为机器人轨迹规划、动力学分析及离线编程、物理样机实验等提供了依据。

猜你喜欢

运动学连杆约束
“碳中和”约束下的路径选择
某发动机连杆螺栓拧紧工艺开发
基于MATLAB的6R机器人逆运动学求解分析
约束离散KP方程族的完全Virasoro对称
基于D-H法的5-DOF串并联机床运动学分析
基于运动学原理的LBI解模糊算法
适当放手能让孩子更好地自我约束
连杆的运动及有限元分析
一种连杆、杠杆撬断浇口的新型模具设计
双足机器人运动学分析与仿真