APP下载

基于NX二次开发的自动点焊工位仿真与建模环境交互的研究

2020-09-25李正杰雷玉成

焊接 2020年4期
关键词:焊枪点焊二次开发

李正杰, 雷玉成

(江苏大学,江苏 镇江 212013)

0 前言

在全自动白车身焊接生产线中,设计开放式柔性总拼点焊这种焊接机器人[1]分布较为密集的工位时,必须根据机器人的动态仿真[2]结果进行干涉检查,从而进行设计优化。

Tecnomatix是SIEMENS PLM Software提供的数字化制造解决方案,通过将制造规划包括从工艺布局规划和设计,工艺过程仿真和验证到制造执行与产品设计连接起来,实现在3D的环境下进行制造工艺过程的设计。SIEMENS NX软件是集成产品设计、工程与制造于一体的解决方案,具有先进的概念设计、三维建模功能。

NX与Tecnomatix均采用三维笛卡尔坐标系下的世界坐标系作为原点基准,并且可以访问*.CSV格式文件,也有共同的3D数据格式*.jt,为NX与Tecnomatix的交互提供了前提条件。

Tecnomatix环境中干涉状态容易获得,但建模功能并不突出,NX 3D建模软件无法直接进行机器人动态焊接仿真,不利于保证设计质量,缩短设计周期。为此该文根据SIEMENS NX函数库[3],结合visual stu-dio 2012开发工具开展实现动态仿真结果批量导入建模环境进行交互的NX二次开发[4-6]工作。

1 Tecnomatix 工具坐标系变换分析

在Tecnomatix中定义仿真机器人的工具坐标系(Tool control frame,TCF)[7]。对机器人进行示教得到机器人的焊接轨迹[8],也就是TCF的位置与姿态。TCF的设置如图1所示,在伺服焊枪的电极帽顶端。+Z方向由静电极臂指向动电极臂,+X方向为机器人的前进方向。

图1 TCF设置示意图

通过示教机器人TCF到达焊点处之后再根据干涉情况进行位姿调整。首先,因为焊点的位置也就是相对绝对坐标系的X,Y,Z值是已知的,所以就得到该焊点处相应的TCF的位置。然后,通过绕X,Y,Z轴的旋转来调整TCF的姿态,继而可以得到相应的旋转角度。对于这种现象,可以引用机器人运动学中齐次变换[9]的理论来分析工作坐标系相对于绝对坐标系的变换情况。

1.1 基本旋转矩阵推导

假设坐标系OabsXabsYabsZabs按照右手定则,绕+Z轴逆时针旋转θ角,得到新坐标系OwcsXwcsYwcsZwcs如图2所示,将其各轴投影到原坐标系的坐标轴上而建立旋转矩阵Rabswcs。得出各相对两坐标轴单位向量的点积列表如式(1)所示,旋转矩阵如式(2)所示。式(2)矩阵也称为基本旋转矩阵,引入更具描述性的符号RZ,θ来表示。同理,绕Xabs轴和Yabs轴转动的基本旋转矩阵如式(3)与式(4)所示。

图2 构建坐标系示意图

(1)

(2)

(3)

(4)

1.2 相对于当前坐标系的旋转矩阵推导

如图3所示,旋转矩阵R为分别绕Xwcs0轴旋转α角, 绕Ywcs0轴旋转β角,绕Zwcs0轴旋转θ角叠加的结果。根据矩阵运算理论,矩阵相乘不满足交换律,因此必须遵循旋转序列执行的顺序,也必须严格要求对应的旋转矩阵相乘的顺序。

图3 相对于当前坐标系旋转叠加过程示意图

1.3 相对于固定坐标系的旋转矩阵推导

Tecnomatix中的仿真数据均是相对固定坐标系旋转给出,上面的旋转叠加公式并不适用,可引用相似变换理论推导出。

(5)

以Owcs0Xwcs0Ywcs0Zwcs0为固定坐标系,绕Zwcs0轴基本旋转RZ,θ,经相似变换在新坐标系Owcs1Xwcs1Ywcs1Zwcs1中表示如式(6)所示:

(6)

绕Ywcs0轴旋转叠加的结果如式(7):

(7)

经过相似变换后在新坐标系Owcs1Xwcs1Ywcs1Zwcs1中表示为,绕Xwcs0轴旋转叠加表示如式(8)所示:

(8)

式(9)为旋转矩阵Rwcs0wcs3表示固定坐标系Owcs0Xwcs0Ywcs0Zwcs0分别绕Xwcs0轴旋转α角,绕Ywcs0轴旋转β角 ,绕Zwcs0轴旋转θ角的推理表达式。叠加过程如图4所示,Owcs0Xwcs0Ywcs0Zwcs0为原始坐标系,Owcs1Xwcs1Ywcs1Zwcs1为分别旋转后的新坐标系,Owcs2Xwcs2Ywcs2Zwcs2为旋转叠加后的最终坐标系。

图4 相对于固定坐标系旋转叠加过程示意图

(9)

2 批量导入仿真数据程序开发

将Tecnomatix中机器人的TCF位姿数据以及对应坐标系的焊枪3D数据的导入这一过程虽然可以由设计者可手动从Tecnomatix中逐个导入仿真数据但效率低且极易出错。文中利用相似变换理论开发了旋转矩阵的程序算法,基于C++平台的NX二次开发系统框图如下图5所示。基于C++平台创建可访问的程序架构并生成用户界面。Application用来存放UI BLOCK对话框设计生成的.dll文件和通过对主程序编译生成的.dll文件,Source用来存放源程序,Startup用来存放菜单*.men文件。

图5 基于C++平台的NX二次开发系统框图

图6为主程序开发流程图,NX开发向导创建环境,UI Block对话框设计自动生成代码,旋转矩阵函数写入,批量导入part文件。访问矩阵,创建坐标系和导入部件的实现通过调用UFUN函数UF_CSYS_create_matrix,UF_CSYS_create_csys,UF_PART_import。文中以NX6之前版本UI样式编辑器来显示界面设计结果,如图7所示。

图6 主程序开发流程图

图7 UI BLOCK界面设计对话框

3 程序算法验证

在Tecnomatix中示教完机器人的路径之后可以直观的获得TCF的位姿X,Y,Z,RX,RY,RZ的数值并导出,干涉点坐标如图8所示,整理成*.CSV文件,并在NX中按图7导入,便可进行直观地检验焊枪与夹具等干涉轨迹演示,如图9所示为未导入仿真结果之前的环境,图10为导入仿真结果之后的状态。

图8 完成机器人示教后的TCP位姿图

图9 未导入仿真结果环境示意图

图10 导入仿真结果环境示意图

4 结论

(1)针对焊接机器人分布十分密集的自动点焊工位,借助NX的二次开发,成功实现将Tecnomatix平台下仿真结果导入到NX设计环境,从设计端分析自动点焊焊接轨迹的合理性并进行准确的模型修正。

(2)仿真数据与设计数据的成功结合,在设计端获得焊枪与其他装备的干涉状况这一现象验证了针对NX二次开发程序具有较好的实用性和可靠性。

(3)解决了Tecnomatix仿真软件在检测出问题后无法进行3D图形的修改,而NX 3D建模软件中不方便进行动态仿真检测干涉状态的问题。

猜你喜欢

焊枪点焊二次开发
基于Solidworks 的蓝莓采摘车焊枪夹持机构设计
热成型零件点焊对碰撞的影响
微型电磁继电器铁芯组点焊工艺参数的仿真优化
浅谈Mastercam后处理器的二次开发
Arplas焊在白车身制造中的应用研究
基于动态电阻曲线实现电阻点焊的自适应控制
关于焊接空间的一种计算方法
智能化焊接制造设备
例谈课本习题的“二次开发”
汽车点焊模型有限元分析的发展及其应用