基于ADAMS的路锥收放机械手虚拟样机建模与仿真分析
2013-08-26崔龙飞仲冰冰孟庆爱
崔龙飞,张 龙,仲冰冰,孟庆爱
(南京理工大学机械工程学院,江苏 南京 210094)
0 引言
新一代自动路锥收放车采用机械手执行收放路锥任务,要在车辆川流不息的高速公路上工作,机械手的运动轨迹需要进行精确的规划,运动过程需要进行仿真分析。采取ADAMS进行辅助分析,可以在建造真实的物理样机之前,对机械手进行各种性能测试,达到缩短开发周期、降低开发成本的目的[1]。
1 机械手的结构参数
路锥收效机机械手的建模与仿真的流程如图1所示。
图1 路锥收放机械手仿真分析流程
路锥收放机械手是四自由度串联结构机械手,它由4个旋转关节构成。参照人体结构,机械手的4个关节分别为腰关节、肩关节、肘关节和腕关节。其中前3个关节确定手腕参考点位置,腕关节确定手的姿态,如图2所示。腰关节与肩关节距离d1=200mm,大臂长度a2=660mm,小臂长度a3=300 mm,第4关节到末端执行器夹持中心的距离a4=150mm。在末端执行器夹持中心建立坐标系,各关节坐标系按D-H位姿变换进行建立,机械手连杆的坐标系如图2所示。各关节的运动变量都是绕着各自坐标系Z轴的转角。
机械手的三维模型如图3所示。全自动路锥收放车在行驶过程中,悬挂于车一侧的导杆将路锥拨倒,并限制在导杆内运动。到达指定位置后,机械手末端执行器夹持住路锥底面一侧,将其先沿直线提升到高于车厢的高度,腰关节回转180°将路锥放到自动传送装置,进行路锥的排列,放路锥的过程正好相反。
图2 机器人连杆坐标系
图3 机械手实体模型
2 Matlab解算各个关节数据
2.1 机械手执行器期望轨迹
路锥收放机械手在工作过程中,由于考虑来往行驶的车辆以及车身结构等外在因素的限制,必须对手部的工作路径和方式作出一定的约束。如图4所示,路径规划为:末端执行器夹持中心与腰关节转轴的垂直距离为0.475m,机械手从底部(A点)抓住路锥后近似竖直上升1m(B点),然后腰关节再旋转180°,与此同时将路锥放低,落到指定位置(C点)。机械手放路锥的过程相反,因此,重点研究收锥的过程。
图4 机械手末端预期轨迹
2.2 Matlab轨迹规划及反解各关节运动参数
在对上述规划轨迹进行仿真前,先输入机械手的参数,建立机械手的Matlab数值模型,连杆命令中前四个元素依次为α,a,θ,d,和上文连杆D-H参数一致。命令如下:
按预定轨迹进行仿真,在Matlab模型中,原点坐标系建立在腰关节处。在机械手上升阶段采用直角空间规划,调用Robotics Toolbox工具箱中提供的ctraj函数[2]。末端执行器夹持中心从起始点A上升到最高点B,回转阶段采用关节空间规划,调用jtraj函数,夹持中心从最高点B运动到传送装置上C点。其中,A到B,B到C的各关节变量,根据齐次变换矩阵求得,以下为仿真部分主要程序。
t=0:0.001:2;%产生时间向量
pp=ctraj(pA,pB,length(t));%pA 点位置,pB点位置,调用函数构件A到B的轨迹
ct=ikine(r1,pp);%求出由机械手坐标系的笛卡尔空间到关节空间的逆变,以反解各关节转角
qqd1=jtraj(qB,qC,t);%B位置到C位置关节空间规划构建轨迹,得到各关节运动参数
然而末端执行器从A点到B点采用的笛卡尔空间规划,其插值方法并不满足初始和终止速度、加速度均为0,因而规划出来的轨迹,即pp三维矩阵不利于控制系统的设计,因此,对该矩阵中Z方向的向量进行修正,采用五次多项式插值,得到数据返回到pp矩阵中,再使用ikine函数反解出各关节运动参数。B点到C点采用关节空间规划,调用的jtraj函数采用的是7次多项式插值法,默认初始和终止速度、加速度均为0。从而避免了位置、速度和加速度的突变[3]。
通过以上仿真,得到机械手各个关节角度随时间变化的曲线,如图5所示,上升阶段和回转阶段各用时间2s,观察到机械手由A运动到C时各个关节的运动情况,且各个关节运动情况均为正常,各连杆没有运动错位的情况,从而验证了所有连杆参数的合理性。
图5 各关节角度-时间参数曲线
3 机械手的ADAMS模型与仿真
利用Robotics Toolbox求解得到了机械手各关节的角位移曲线,导入ADAMS中驱动虚拟样机运动,分析机械手的各关节速度、加速度和驱动力矩。
3.1 ADAMS/VIEW环境下建立仿真模型
在SolidWorks中建立的四自由度机械手的三维模型,输出parasolid格式,将其导入到ADAMS中。接下来对导入模型和仿真环境进行一些必要的设置和修改。
3.1.1 修改仿真环境
模型导入成功以后,首先把重力方向和单位设置正确,然后对机械手各零部件重新命名如下:Axis,Waist,Arm1,Arm2和hand分别表示机座、腰部、大臂、小臂和末端执行器,便于寻找、提高工作效率。赋予几何材质,ADAMS会根据输入的密度和零件的几何尺寸,计算质量和惯性矩。
3.1.2 添加约束
根据各零件之间不同运动副赋予相应的约束,机械手模型中机座与groud通过固定副固连在一起,伺服电机固连于相应的构件上,腰部、大臂、小臂和手之间用转动副连接。
3.1.3 添加驱动
根据机构运动类型的不同,ADAMS可以定义连续函数、步进函数、谐波函数、齿条和表达式等驱动方式。将4个关节角位移数据,以实验数据的形式导入ADAMS,建立4条样条曲线spline1~spline4,然后给各个关节转动副添加驱动Motion,驱动的大小以spline函数形式定义,选用三次样条曲线拟合(CUBSPL)函数,精确地把数据添加到对应的驱动Motion中去,以驱动各关节运动[1]。其中CUBSPL函数的表达式为:
CUBSPL(1st_Indep_Var,2nd_Indep_Var,Spline_Name,Deriv_Order)
1st_Indep_Var为第1自变量,可以为时间time也可以为距离的函数,这里以时间为自变量;2nd_Indep_Var为第2自变量,这里为0;Deriv_Order为插值点的微分阶数,1表示1次导数,这里取0值。则函数表达式为CUBSPL(time,0,Spline_j,0),j取1~4。
至此,建立了路锥收放机械手在ADAMS环境下的完整仿真模型[4-6],然后进行仿真时间和仿真总步数或仿真步长的定义,由于使用CUBSPL(time,0,Spline_j,0)作为 Motion的函数,所以仿真时间应和样条曲线时间一致,即取为4s,总步数取为2000。
3.2 仿真分析
ADAMS/View提供了一些常用的默认输出,这些输出在进行仿真分析以后,会自动产生,同时允许采用测量和指定输出的方式自定义一些特殊的仿真输出。另外ADAMS还有专门的仿真后处理模块,运行过仿真计算以后,就可以计算处理运动副上的位移、速度、加速度、作用力和作用力矩等数据,以及与构件固连的Marker点的位移速度和加速度等数据[1,7]。
3.2.1 运动轨迹验证
ADAMS仿真结果可以根据需要调用,输出所需的数据曲线和动画,从而能够清晰地看到机械手整个收锥的过程中的运动规律,可以将构件运动中的速度突变,抖动等一系列问题反映出来,交互地进行结构参数的的调整与改进。仿真时间为4s,步数为2000,进行仿真,使用ADAMS/VIEW中的Review/Create Trace Spline功能,创建末端运动轨迹曲线,如图6所示,以此来验证机械手末端执行器是否按照预定轨迹运动。另外,机械手将路锥提升1 m,回转到指定位置,但是上升阶段Y轴方向有微小的偏差,经测量,最大偏差为41mm,由于路锥距离车200mm,不会产生任何影响,轨迹是合理的[3]。
图6 ADAMS中路锥的运动轨迹
3.2.2 结果分析
利用Measure工具和后处理程序,测量机械手各关节的运动学和动力学参数,以及分析末端执行器的速度的稳定性。各关节的转矩、角速度和角加速度曲线如图7~图10所示。
图7 腰关节角速度、角加速度和扭矩曲线
图8 肩关节角速度、角加速度和扭矩曲线
图9 肘关节角速度、角加速度和扭矩曲线
图10 腕关节角速度、角加速度和扭矩曲线
从图7~图10可以看出,角速度、角加速度初始值和终止值均为0,力矩曲线除了腕关节起始有局部的微小波动外,其他都是平滑过渡。在机械手的设计中,这些动力学性能直接影响到机械手的控制与使用,机械手在一定负载下达到一定的关节运动状态,研究其各关节的受力状态,需求出关节所承受的力和力矩,其中关节的驱动力矩是驱动系统设计的依据,而其他约束力则是关节及连杆设计的依据[8-9]。
路锥收放机械手各关节为回转关节,研究其动力学即研究各关节运动与驱动力矩之间的关系。仿真得到的这些驱动力矩与运动参数是各驱动器、减速器、传感器选型与匹配的基本参考依据。同时,各关节的实际驱动力矩都需大于仿真过程中的力矩峰值,才能满足驱动要求。
在整个仿真过程中,路锥质心在X轴,Y轴和Z轴上的运动速度如图11所示。
图11 路锥质心的运动速度
由图11可知,末端执行器末端的各方向上速度无突变,平滑过渡。虽然路锥在前2s上升阶段Y轴方向上速度虽有微小的变化,但变化很小,并不影响机械手的运动性能和平稳性,这也证实了路径规划的合理性[10]。
4 结束语
运用SolidWorks建立虚拟样机,利用Matlab强大的数学解算功能进行轨迹规划,解算关节数据,导入ADAMS中进行联合仿真。通过仿真动画直观地观察到机械手的工作过程,对末端执行器的运动轨迹进行验证,虽然得到的轨迹与期望的轨迹局部有微小的偏差,但是轨迹平滑,末端执行器的速度曲线平滑,能够完成预期的任务。利用Measure工具和后处理程序测量机械手各关节的运动参数和承受的力矩,清晰地反映出各关节运动与驱动力矩之间的关系,为各驱动器、减速器、传感器选型与匹配提供基本参考依据,获得了整体动态性能,达到了减少研究人员的计算量和提高工作效率的目的。
[1]郭卫东.虚拟样机技术与ADAMS应用实例教程[M].北京:北京航空航天大学出版社,2008.
[2]Coke P I.A robotic toolbox for Matlab[J].IEEE Robotics and Automation Magazine,1996,3(1):24-32.
[3]王 姣.钢丝网架焊接机械手的运动轨迹规划及运动学分析研究[D].武汉:武汉理工大学,2011.
[4]应 灿,翟敬梅,张 铁.变位焊接机械手系统的运动建模与分析[J].机床与液压,2012,40(13):143-146.
[5]刘丽凤.基于UG和ADAMS的六自由度机械手三维实体动画仿真[J].机电技术,2010,(1):45-47.
[6]林砺宗,藩大亨,傅招国,等.基于ADAMS的六自由度液压动感平台建模及运动学仿真[J].机床与液压,2012,40(13):166-169.
[7]万海波.五自由度机械手运动性能及动力学分析与仿真[D].天津:河北工业大学,2007.
[8]方深玮.基于ADAMS的机械手动力学仿真研究[D].北京:北京邮电大学,2009.
[9]孙克新.空间机械手动力学分析与控制仿真[D].哈尔滨:哈尔滨工业大学,2006.
[10]吴艳荣,金国光,李东福.基于ADAMS的变胞机构动力学仿真[J].机械设计与制造,2007,(5):91-92.