工业机器人孪生映射模型建模方法研究
2023-06-10王振威张振山
王振威, 张振山
(上海工程技术大学机械与汽车工程学院, 上海 201620)
1 引言(Introduction)
由于数字孪生技术能够实现对物理实体全生命周期运行状态的忠实映射[1],对提高设备智能化水平具有重要意义,因此各大企业纷纷对数字孪生技术的落地应用进行了研究[2-3]。目前,数字孪生技术在机器人领域的落地应用受到了广泛关注,但仍处于起步阶段。刘怀兰等[4-5]构建了数字孪生车间中工业机器人虚实驱动系统,并提出一种使用基于值的离散事件系统规范(VDEVS)对行为模型进行描述的方法,精确地描述了虚拟实体的行为。CHEN等[6]将大数据与理论建模方法结合,建立数控机床孪生模型对数控机床进行健康评估。徐健等[7]基于数字孪生技术,解决了工业装配机器人复杂作业编程耗时耗力、准确性差等问题。综上所述,虽然数字孪生在工业机器人上的研究取得了一定成果,但是大部分研究集中在孪生架构的建立及应用方面,对于构建孪生模型与物理实体之间的映射模型的建模方法研究相对较少。
因此,本文结合工业机器人自身特性及实际应用需求,构建了工业机器人数字孪生系统架构,并从几何、运动、振动3个维度构建了工业机器人孪生映射模型,依次对各个维度模型进行了具体实现。基于Unity3D搭建了孪生空间,并以六轴工业机器人为例,对所构建的映射模型进行验证。
2 工业机器人数字孪生系统构建(Construction of digital twin system for industrial robots)
参考数字孪生五维架构[8-9],本文构建的工业机器人数字孪生架构如图1所示,该框架由物理空间、孪生数据、孪生空间、连接及系统应用5个部分组成。物理空间主要包括机器人本体及各类传感器,是数字孪生系统的基础,也是构建数字孪生模型的先决条件,承担着为系统运行提供数据信息的重要作用,是数字孪生技术的服务对象;孪生数据是设备数据库、传感数据库、故障数据库、环境数据库及诊断模型库的集成,用以连接并驱动其余各部分。孪生空间包括服务器和由映射模型建立的孪生模型,是对物理实体的忠实映射。连接则是实现孪生空间与物理空间之间数据传输通信的核心,集成了各类通信协议及数据处理算法。系统应用是数字孪生系统的集成展示,对所涉及的各类数据、模型、算法、仿真数据进行封装,从而实现对工业机器人实时运行状态监测、系统仿真、故障诊断及健康评估等功能。
图1 工业机器人数字孪生五维架构Fig.1 Five-dimensional architecture of digital twin for industrial robots
3 工业机器人孪生映射模型建模(Twin mapping model modeling of industrial robot)
工业机器人孪生映射模型是实现孪生模型对物理实体忠实映射的关键,由几何映射、运动映射和振动映射组成,如图2所示。几何映射是对物理实体外形的忠实映射,运动映射是实现孪生模型与物理实体同步运动的核心,振动映射则描述了物理实体在运行过程中产生的振动。
(a)几何映射
(b)运动映射
(c)振动映射图2 工业机器人孪生映射模型Fig.2 Twin mapping model of industrial robot
3.1 建立几何模型
孪生模型需要在“形”上与物理实体保持统一,即需要建立高保真的几何模型,几何模型构建流程图如图3所示。
图3 几何模型构建流程Fig.3 Construction process of geometric model
通过建模软件SOLIDWORKS建立三维模型,并设置单位及坐标系,由于模型无法从SOLIDWORKS软件中直接导入Unity3D中,因此需先将其转换为x_t格式再导入3ds Max中。
为了保证孪生模型在“形”上与实际工业机器人一致,则需要添加与实际相符的纹理材质进行渲染。模型从3ds Max直接导入Unity3D中存在大量冗余信息和大量三角面片数,虽然面片数越多,模型越精确,但是会极大地影响系统的运行效率。因此,需要在不影响用户视觉体验的前提下对模型进行优化处理,删除不必要的三角面片,提高运行效率,最后以FBX格式导入Unity3D中。
经处理后的模型导入Unity3D后,虽然保留了原有装配部件的相对位置,但是装配关系不会保留,此时某个手臂运动并不会影响其他部分的运动,而工业机器人是一个具有联动性的设备,任一手臂运动都会影响其他部分,例如大臂转动后,其余各关节都会随之发生转动;在Unity3D中,这一联动性由模型之间的父子关系体现,即子物体的运动不会影响父物体的运动,而父物体的运动会影响子物体的运动,因此需要在Unity3D中重新设置父子关系。
3.2 运动映射建模
孪生模型不仅包括简单的几何映射,也需要在运动机理上实现物理实体与孪生模型的映射,本文的研究对象是库卡(KUKA)机器人有限公司生产的KR3-R540工业机器人,如图4所示。机器人本体由底座、腰部、大臂、肘部、小臂和腕部组成,各部分依次通过连杆连接。对于六轴工业机器人而言,通过伺服电机驱动关节旋转从而带动各连杆运动;而在Unity3D中模型的旋转是通过改变物体的关节角度值实现的,因此对于运动机理的映射,本文基于改进DH法(M-DH)法建立正向运动学方程,通过机器人控制器采集关节编码器的角度,并作为模型的输入,以此得到末端执行器的位姿,实现孪生模型对物理实体运动层次的忠实映射。
图4 六轴工业机器人结构图Fig.4 Structure diagram of six-axis industrial robot
机器人连杆参数见表1,其中αi表示机械臂第i杆扭角,ai表示机械臂第i杆长度,θi为机械臂i与i+1杆之间的夹角,di表示机械臂第i与i+1杆之间距离。
表 1 KR3-R540 M-DH参数表Tab.1 KR3-R540 M-DH parameter table
M-DH法的通用齐次变换矩阵如公式(1)所示:
(1)
根据坐标变换理论,将各个连杆矩阵连乘即可得到0T6,如公式(2)所示。将采集到的机械臂各关节角度数据θi代入公式(2),即可求得其在空间的位置数据和姿态数据,完成“以实控虚”的功能。
(2)
公式(2)中,n=[nxnynz]T、o=[oxoyoz]T和a=[axayaz]T分别表示机械臂末端执行器坐标系x、y和z轴在基坐标系{X0,Y0,Z0}中表示的单位矢量,P=[pxpypz]T为末端执行器坐标系相对于基坐标原点的位置矢量。为了简化表达形式,令ci=cosθi,si=sinθi,P的具体表达形式如公式(3)所示:
(3)
当关节角变量θ=(θ1,…,θ6)为已知时,可通过采集机器人各关节角度值,并将其代入公式(3)中,驱动孪生模型运动,以此实现与物理实体同步运动。
3.3 振动映射建模
工业机器人故障状态实时监测对于提高系统智能化水平具有重要意义,一般针对机器人振动信号进行故障诊断,但传感器布置烦琐,并且传感器的额外质量也可能对工业机器人关节性能退化的计算结果产生影响[10]。由于数字孪生技术是对设备全生命周期的忠实映射,因此可有效地解决以上问题。通过构建机器人振动机理模型可有效地获取关节振动信息,同时避免了由环境产生的噪声干扰。
工业机器人在作业过程中产生振动通常有两个主要原因:臂杆柔性与关节柔性,其中臂杆柔性相对于后者,影响更小,并且由于工业机器人一般处于长时间连续运行,关节很容易因机械疲劳使其刚度下降,导致机器人产生抖动[11],因此本文构建考虑关节柔性的工业机器人动力学模型。一般而言,可将机器人关节等效为介于电机转子和下一连杆之间的线性弹簧,如图5所示。图5中,βi和τmi为电机输出转角和电机驱动力矩,Ni为减速器传动比,θi为连杆转动角度,ki为柔性关节刚度,则经过减速器后的转角qi和力矩τoi如公式(4)所示:
图5 柔性关节示意图Fig.5 Schematic diagram of flexible joint
(4)
设关节转动惯量为J,均质臂杆长度为L,质量为m,采用速比折合的方法,将主动轴的转动惯量和输入力矩折合至从动轴中,则关节等效转动惯量为J1=JmiNi2,同时刚性臂杆的转动惯量为J2=mL2/3。设广义坐标为[θ1,θ2,…,θ6,q1,q2,…,q6],并基于拉格朗日法建立考虑关节柔性的机器人动力学模型,如公式(5)所示:
(5)
设初始时刻,即t=0时刻机器人状态如公式(6)所示:
(6)
联立公式(5)和公式(6)可得到:
(7)
对公式(7)连续积分两次可得公式(8):
(8)
连解公式(5)和公式(8)即可求得关于θ的二阶常系数非齐次线性方程,如公式(9)所示:
(9)
二阶非齐次线性方程的特解表达式θ*和通解表达式θ如公式(10)和公式(11)所示:
θ*=b0t2+b1t+b2
(10)
θ=c1cosβt+c2sinβt+θ*
(11)
(12)
将公式(11)带入公式(10)中,即可求出关于θ的通解表达式,再将其代入公式(8)和公式(9)中,即可求出关于q(t)和θ(t)的表达式,分别如公式(13)和公式(14)所示:
(13)
(14)
在常力矩驱动下的关节位移振动可由电机转子经减速器后的角度和连杆角度之差表征,表达式如公式(15)所示:
(15)
(16)
(17)
由公式(17)可知此时机械臂系统正在做加速度为σoi/(J1+J2)的匀加速运动,与一般刚性关节系统运动特性符合,故本文所建立的振动模型正确。
4 实例验证(Real case verification)
4.1 运动映射实例验证
采用KUKA机器人作为研究对象,以工业机器人搬运作业场景为例,搭建物理环境,如图6(a)所示。基于Unity3D开发了工业机器人数字孪生原型系统,并搭建了孪生空间,如图6(b)所示。实验步骤如下。
(a)实验平台
(b)孪生空间
(c)实测轨迹图6 “虚实同步”试验验证Fig.6 Test verification of ″virtual and real synchronization″
步骤1:通过套接字通信(Socket)建立孪生空间与物理空间之间的连接。
步骤2:启动控制器程序,连接至Socket服务器并开始运动。
步骤3:孪生系统通过Socket通信接收到关节编码器反馈值,作为机理模型输入用于驱动孪生模型同步运动。
步骤4:在机器人关节处安装加速度传感器,通过信号采集器与分析仪采集机器人关节在运动过程中的振动信号。
步骤5:将实测数据与机理模型输出值进行对比验证,测试孪生系统的可行性及有效性。
通过实验可知,本文所构建的工业机器人数字孪生系统能够完成物理实体与孪生模型的“虚实同步”功能。启动监听功能后,孪生模型能够跟随物理实体同步运动,用户可在UI界面上读取当前机器人各轴转动角度及孪生模型位置数据,将测得的工业机器人实际位置数据拟合成一条曲线,如图6(c)所示。同时,利用Trail Renderer组件可以直观地观察到工业机器人末端的运动轨迹,物理实体运动轨迹与孪生模型运动轨迹基本一致。系统运行过程中无明显延迟,孪生模型能够较好地与物理实体同步运动。
4.2 振动映射实例验证
本文以末端关节的实测加速度信号对所建立的振动模型进行验证,通过加速度传感器和信号采集器与分析仪采集末端关节加速度信号,如图7所示。
图7 振动信号数据采集Fig.7 Vibration signal data acquisition
将实测信号和由孪生模型产生的振动信号叠加对比,结果如图8所示。可以看到,振动模型与实测振动结果在时域上大致吻合,验证了本文所建立的考虑关节柔性的机器人振动模型的有效性,而其中存在部分偏差可能是由于实测环境存在环境的噪声干扰导致的。
图8 孪生数据与实测数据时域对比Fig.8 Time domain comparison between twin data and measured data
5 结论(Conclusion)
本文以工业机器人为对象,结合数字孪生技术,从物理空间、孪生数据、孪生空间、系统应用及连接5个部分,建立了工业机器人数字孪生五维架构。提出了一种孪生映射模型建模方法,从几何、运动、振动3个维度实现了孪生模型对物理实体的忠实映射。此外,通过实例验证了本文所建立的孪生映射模型的有效性,为数字孪生技术在工业机器人的落地应用,以及构建工业机器人孪生模型与物理实体之间的映射模型提供了参考。