基于叠加同步协作的多机器人离线编程的研究与实现
2018-03-26万鸾飞陈慧蓉
万鸾飞 陈慧蓉
(芜湖职业技术学院,安徽 芜湖 241006)
1 引言
随着科学技术的不断发展,工业机器人被大量地运用在自动化行业、航空航天行业等,大量的动态开放的加工环节代替了传统的加工方式,单个机器人的控制系统已经不能满足现代生产任务的需求[1-4],多机器人协作系统相比单机器人系统能快速完成复杂多变的工作任务,具有更强的优越性,因此,多机器人协作系统的研究和发展也成为世界各国关注的重要产业[4-5]。
与单机器人控制系统相比,多机器人系统示教编程较困难[6],编程程序周期长,因此迫切需要多机器人三维仿真与离线编程系统来解决这个问题。
OpenHRP(Open Architecture Humanoid Robotics Platform)是一个为机器人所开发的集成仿真平台[7],仿真功能可靠而强大。
2 多机器人系统的协作运动形式与分类
对运动协作,若参与协作的机器人之间没有相对运动则称为“耦合同步协作”,若参与协作的一部分机器人的执行器末端相对于某个或某几个机器人的执行器末端进行既定轨迹的运动称为“叠加同步协作”。图1是针对多机器人系统的协作运动的形式作出的分类。
图1 多机器人系统的协作分类
对于主从式的多机器人协作系统,按照图1所示的分类方式,每种协作的具体形式定义如下:
(1)并发协作。具有此类关系的机器人在各运动中保持独立运动的关系,相对位姿无制约[8]。
(2)耦合同步协作。具有此类关系的机器人在各运动中保持相同形式,协作中保持固定的相对位姿[9]。
(3)叠加同步协作。具有此类关系的机器人从机器人的运动轨迹要按照主机器人的运动叠加而来,主机器人运动保持独立[10]。
3 多机器人协作叠加运动学约束关系
3.1 叠加运动的运动学约束关系
叠加同步协作运动广泛应用于多机器人焊接、喷涂、装配等领域,由两台工业机器人组成的柔性化焊接系统的示例如图2所示。对于图2所示的多机器人协作系统,一般选择工件搬运机器人作为主机器人,焊接机器人作为从机器人。在整个协作焊接过程中,搬运机器人按照既定的轨迹运动,焊接机器人的运动跟随搬运机器人的运动,同时相对于被焊工件进行满足焊接要求的相对运动。
图2 双机器人焊接协作焊接系统示意图
探讨图2中所示的双机器人无夹具焊接协作过程,其中主机器人末端通过法兰安装工件,从机器人末端通过法兰安装焊枪,此时主机器人轨迹可独立确定,而从机器人轨迹不可以直接确定,从机器人在满足协同运动的同时需符合加工要求。通常情况下加工要求可以在工件坐标系下给出,由于主机器人末端的工件与末端没有相对运动,因此主机器人工件坐标系变换到末端坐标系只需要一个常量矩阵,主从机器人末端位姿之间的约束关系将是一个时变且由加工需求决定的约束关系。
假设mbPm(t)是主机器人末端在主机器人基坐标系下的变换矩阵[11],mePs(t)表示从机器人末端在主机器人末端坐标系里的加工要求[12],在t时刻从机器人在其基座标系下的齐次变换矩阵可表示为式(1)。
式中,sbHmb表示主机器人基坐标系到从机器人基坐标系的变换矩阵;mbHme(t)表示主机器人末端坐标系到主机器人基坐标系的变换矩阵。主机器人末端在主机器人基坐标系下的位姿可表示为
将式(2)代入式(1),可得
式(3)表示在叠加运动过程中主从机器人末端位姿之间的约束关系,式(3)也表明了从机器人轨迹sbPs(t) 仅由主机器人轨迹mbPm(t)和加工要求mePs(t)确定,式(3)为叠加运动轨迹规划建立了理论基础。
3.2 叠加运动算法
3.2.1 直线叠加直线运动
直线叠加运动指的是具有协作关系的机器人[13]在某一时刻同时开始直线运动,其中主机器人的末端进行直线运动,从机器人相对于主机器人的末端坐标系[14]进行直线运动,程序如图3所示。
图3 直线叠加直线运动
通过直线叠加直线运动OverlayMotionL2L()函数,给出主机器人基座标系与从机器人基坐标系的相对位姿,主机器人的直线起点、终点,从机器人相对于主机器人直线运动的起点和终点,求解出从机器人实际运动的直线轨迹。
3.2.2 直线叠加圆弧运动
直线叠加圆弧运动是指具有协作关系的机器人[15]在某一时刻同时开始运动,主机器人的末端运动轨迹独立,执行直线运动,从机器人相对于主机器人的末端进行圆弧运动,其运动轨迹是主机器人的直线运动叠加从机器人圆弧运动后的结果[16]。
图4 直线叠加圆弧运动
通过OverlayMotionC2L实现给出主机器人基坐标与从机器人基座标系的相对位姿,主机器人直线运动的起点、终点,从机器人圆弧运动的起点、中点和终点,求解出从机器人叠加后的运动轨迹。
4 直线叠加直线三维仿真
在规划直线叠加直线运动的仿真环境中,ER16_Clamp末端安装有抓手工具,ER16_Torch手持焊枪,首先,机器人均从初始位置行走至叠加运动的起点,ER16_Torch和ER16_Clamp的末端均接触到木板上的下端点;其次,ER16_Clamp运动一段直线后到达蓝色线段处,ER16_Torch相对于木板沿着边缘直线运动,到达木板的最上方的边缘处;最后,直线叠加直线运动结束后,机器人回到各自的初始位置。仿真图如图5所示。
5 直线叠加圆弧三维仿真
在规划直线叠加圆弧运动的仿真环境中,ER16_Clamp末端安装抓手工具,并绑定一个圆饼木板,ER16_Torch手持焊枪,首先,机器人均从初始位置行走至叠加运动的起点;其次,木板随着ER16_Clamp运动一段直线,ER16_Torch相对于木板沿着圆弧边缘运动;最后,直线叠加圆弧运动结束后,机器人回到各自的初始位置。仿真图如图6所示。
图6 直线叠加圆弧运动三维仿真图
6 结论
本文通过对多机器人协作过程中主从机器人叠加运动学约束关系的分析,规划了主从机器人直线叠加直线运动和直线叠加圆弧运动的算法,求解出主从机器人在直线叠加运动过程中的运动轨迹,通过ER16_Clamp和ER16_Torch协作仿真,得出多机器人直线叠加运动的三维仿真视图。