将机械手与CodeSys中的运动学模型绑定
将机械手与CodeSys中的运动学模型绑定
本文将详细介绍如何将工业机械手与CodeSys中的运动学模型进行绑定,包括运动学模型的选择、机械手尺寸参数的对应关系以及需要注意的关键点。通过本文的指导,读者可以更好地理解和实现机械手的运动控制功能。
1.背景介绍
最近获得了一台工业机械手,虽然该机械手自带控制程序,但为了测试CodeSys的运动控制功能,我们需要将其与CodeSys中的运动学模型进行绑定。本文将详细介绍这一过程。
2.选定运动学模型
上图左侧展示了实物六轴机械手的机械结构及各个轴的旋转方向,右侧是CodeSys中的运动学模型:TRAFO.Kin_ArticulatedRobot_6DOF
。通过对比可以看出,物理机械手与运动学模型的每个关节的相对转动方向都是能够对应上的,因此CodeSys中的运动学模型可以用于实物六轴机械手的运动学控制。
3.机械手各尺寸的对应
在CodeSys中使用六轴机器人模型时,必须先配置好以下7个参数:d1、a1、a2、d3、a3、d4、d6。这些参数需要与现实世界的机械手尺寸对应,才能实现准确控制。
这7个参数的具体含义如下:
- d1:机械坐标系的XY平面到关节2(J2)轴线的Z方向距离。
- a1:关节2(J2)轴线到关节1(J1)轴线的X方向距离。
- a2:关节2(J2)轴线到关节3(J3)轴线的Z方向距离。
- d3:关节4(J4)轴线到关节1(J1)轴线的Y方向距离。
- a3:关节3(J3)轴线到关节4(J4)轴线的Z方向距离。
- d4:关节3(J3)轴线到关节5(J5)轴线的X方向距离。
- d6:法兰盘平面与关节5(J5)轴线的X方向距离。
结合实际机械手的尺寸及结构:
这7个参数的具体数值为:
- d1: 345
- a1: 20
- a2: 260
- d3: 0
- a3: 20
- d4: 280
- d6: 78
其中,d3为0是因为物理机械手的J4和J1的轴线位于同一平面内。
4.总结
4.1.选择正确的运动学模型
即使某些运动学模型的结构与实际物理机械手在视觉上有所不同,也可能只是某些距离为0而已。关键是要确保模型与实际机械手的结构能够对应上。
4.2.注意各个关节旋转的正方向
机械手出厂时可能已标注了各关节的旋转正方向,但在使用CodeSys时,需要按照CodeSys运动学模型指定的方向来规范各个轴。轴的旋转正方向可以根据示意图的箭头,按照右手螺旋法则确定。
4.3.编码器零点与机械零点的偏移修正
由于安装原因,机械手各轴的编码器零点可能与机械零点不完全对齐。这种偏差会导致运动学求解结果与实际位置产生较大差异。因此,需要通过软件对各轴的fOffsetPosition
进行偏差修正。这个补偿值可以通过测试确定,通常可以直接使用机械零点时轴的读数。