工业机器人具有很高的可重复性,但不准确,因此可以通过机器人校准来提高工业机器人的精度。机器人的标称精度取决于机器人的品牌和型号。通过机器人校准,您可以将机器人精度提高2到10倍。
(可选)球杆测试(循环测试)或ISO9283可以执行路径精度测试以快速验证机器人的精度。
校准机器人需要测量系统。RoboDK可用于校准机器人以及生成准确的机器人程序(包括过滤程序和使用RoboDK的离线编程引擎)。RoboDK还可以用于通过球杆测试或机器人铣削在校准前后测试机器人的精度。
机器人校准可以显着提高离线编程机器人的准确性,该离线编程也称为离线编程(OLP)。经过校准的机器人比未经校准的机器人具有更高的绝对和相对定位精度。
视频:以下视频显示了使用激光跟踪仪测量系统校准KUKA机器人的校准过程https://www.youtube.com/watch?v=DWSqZAFaJ2I。
注意:此处提供更多信息https://www.robodk.com/robot-calibration#tab-lt
要安装RoboDK并正确执行机械手校准,需要以下各项:
1.一个或多个工业机器人手臂
2.测量系统:任何激光跟踪仪(例如Leica,API或Faro)和光学CMM(例如Creaform的C-Track立体相机)都可以工作
3.必须安装RoboDK软件,并且需要适当的许可证来进行机器人校准测试。对于网络许可证,需要互联网连接才能检查许可证。要安装或更新RoboDK进行机器人校准:
a.从下载部分下载RoboDK
https://robodk.com/download
b.设置测量系统的驱动程序(最新的Leica跟踪仪不需要)
解压并复制子文件夹到:
C:/ RoboDK / api /
API激光跟踪器:https://robodk.com/downloads/private/API.zip(OTII和Radian跟踪器)。
法鲁激光跟踪仪:https://robodk.com/downloads/private/Faro.zip(所有法鲁跟踪器)
徕卡激光跟踪仪:https://robodk.com/downloads/private/Leica.zip(所有Leica Tracker)。
4.使用激光跟踪仪时,应将一个或多个目标连接到机器人工具。在安装工具期间,请确保避免将目标放置在轴6附近。否则,将无法正确识别机器人法兰的位置。
注意:具有用于机器人校准的特殊工具板是可选的。最好使用与制造/生产相同的工具(相同的工具有效载荷和重心)来校准机器人。可以将一个SMR附加到机器人工具上进行校准。该工具(TCP)然后可以自校准使用机器人精度(请确保使用机器人关节而非姿势来校准TCP)
5.
建议在开始进行测量之前,在RoboDK中创建机器人设置的虚拟环境(离线设置)。本节说明如何离线准备RoboDK站。仅在安装了RoboDK的计算机上,才可以在拥有机器人和跟踪器之前完成此操作。
RoboDK校准设置示例可以从以下文件夹下载:
https://www.robodk.com/downloads/calibration/
如果您已有离线单元,请跳过本节。参考框架和工具框架可以近似估计。下图显示了一个样本站。
注意:入门部分提供了有关创建新RoboDK工作站的更多信息。
RoboDK工作站是存储虚拟环境工作站和校准信息的位置。工作站将另存为RDK文件。请按照以下步骤创建用于从头开始进行机器人校准的机器人工作站(视频预览:https://youtu.be/Nkb9uDamFb4):
1.选择机器人:
a.选择文件➔打开在线图书馆。在线图书馆将显示在RoboDK中。
b.使用过滤器按品牌,有效载荷等查找机器人
c.选择下载,该机械手应自动出现在工作站中。
d.或者,从以下位置分别下载机械手文件(扩展名.robot文件)http://www.robodk.com/library并使用RoboDK打开它们。
2.为虚拟工作站建模
a.通过选择程序来添加参考系➔添加参考框架。
i. 必须相对于机器人基础框架添加一个“测量参考”框架。
ii. 关于我们刚刚添加的“度量参考”,必须添加一个“跟踪参考”。
iii. 可以相对于“测量参考”框架添加一个附加的“工具参考”,以可视化跟踪器看到的工具的位置。
秘诀1:拖放树中的项目以重建现实世界中存在的依赖项。例如,跟踪器参考必须相对于“测量参考”放置。
秘诀2:分别按住ALT键和SHIFT + ALT键,大约移动任何参考框架或工具框架。或者,双击参考系并输入正确的坐标。
秘诀3:使用项目树上的F2键重命名任何对象。
b.添加工具对象(支持STL,IGES和STEP文件格式)并将其拖放到机械手(在项目树中),这会将对象转换为工具。更多可用信息这里。
➔
可选:选择程序➔添加空工具添加要在站点中可视化的任何TCP(以检查冲突或其他)。设置TCP的近似值:
i. 双击新工具。
ii. 设置TCP近似值。您可以使用右侧的两个按钮一次复制/粘贴6个值。
iii. 建议使用“ CalibTool id”重命名用于校准的TCP,其中id是校准目标编号。
c.使用菜单“文件”添加其他3D CAD文件(STL,IGES,STEP,SLD等)以对虚拟工作站进行建模➔打开…或者,将文件拖放到RoboDK的主窗口。
秘诀1:导入测量工作空间的3D文件并将其命名为“工作空间”,以便在跟踪器的工作空间内生成机器人测量结果。或者,如果我们不想限制跟踪器工作空间内的测量,则将工作空间设置为不可见。下一节将提供更多信息。
秘诀2:可以选择CTRL + ALT + Shift + P来阻止导出在RoboDK中导入的机密3D文件。
3.在工作站中添加校准模块:
a.选择菜单实用程序➔机器人校准。
b.选择激光跟踪器。
然后,将出现以下窗口。
此窗口现在可以关闭。我们可以随时通过双击机器人校准站项目来打开它。
提示:要仅校准机器人的原位(也称为“主控”或“归位”),请选择“校准”。参数。在校准设置上,然后选择“ Mastering / Home(16)”。否则,将其保留为Complete,这是默认使用的校准类型,可以进一步提高准确性。
4.保存电台。
a.选择文件➔保存站。
b.提供一个文件夹和一个文件名。
c.选择保存。将会生成一个新的RDK文件(RoboDK工作站文件)。
通过打开RDK文件(在Windows上双击该文件),我们可以随时恢复站的修改。
仔细检查以下详细信息很重要:
1.校准工具被命名为“ CalibTool id”,并且ID是从1开始的数字(如果有3个校准工具,则必须具有“ CalibTool 1”,“ CalibTool 2”和“ CalibTool 3”。
2.Measurements参考框架直接取决于机器人底座。
重要:如果要恢复轴1的原始位置,则测量参考框架的方向必须与机器人相似。我们必须能够使用3个点以非常可重复的方式测量该参考框架。有关更多信息,请参见附件I。
现在,我们可以使用此参考框架的估计值。
3.跟踪器参考直接取决于测量参考。跟踪器参考必须是激光跟踪器相对于测量参考的近似位置。
4.工作站中存在机器人校准项目,并且我们计划进行的所有测量都不会发生碰撞,并且激光跟踪仪可以看到(为每组测量选择显示)。
5.如果要自动检查冲突,则必须在每个要用来检查冲突的对象中使用名称标签“ collision”。建议使用比校准的工具大25%的工具进行碰撞检查,以安全地避免碰撞。
成功完成机器人校准需要四组测量:
1.基本设置:需要六个测量(或更多)移动轴1和2来相对于机器人放置校准参考。在校准设置窗口中选择显示,机器人将沿着序列移动。
2.工具设定:需要七次或更多次测量以校准工具法兰和工具目标(移动轴5和6)。选择显示,机器人将沿着序列移动。
3.校准测量:校准机器人需要60次或更多次测量。这些测量值可以随机放置在机器人工作区中,并且不会与周围物体碰撞。
4.验证测量(可选):可以使用任意数量的测量值来验证机器人的准确性。这些测量仅用于验证机器人的准确性,而不能用于校准机器人。
RoboDK自动生成前两组测量值。选择显示,机器人将按照顺序进行操作(如下图所示)。如果需要更改顺序,请选择测量,然后通过选择导出数据将校准测量导出为CSV文件。可以使用Excel工作表编辑此文件,然后单击“导入数据”重新导入。
重要:CSV文件的第一行必须保持不变。
可以使用以下宏脚本生成最后两组测量值(校准和验证)创建度量。当我们启动机器人校准项目时,此宏脚本会自动添加到工作站。双击该宏以执行它。此宏是一个Python程序,可指导用户定义以下设置:
● 测量数量:生成的测量数量。默认情况下,使用80次测量,因为机器人校准至少需要60次测量。
● 参考位置:参考位置必须是机器人在工具面对带有可见目标的跟踪器的位置。
● 关节极限:必须提供关节的上下极限。
● 笛卡尔极限:我们可以提供相对于机器人参考系的笛卡尔极限(X,Y,Z值)。
该脚本会自动生成测量值,使工具面向跟踪器并遵守关节和笛卡尔约束。在参考位置面向跟踪器的方向允许围绕工具旋转+/- 180度。此外,关节运动的顺序没有冲突,并且在测量工作空间内(如果将工作空间设置为可见)。下图显示了在自动序列开始之前向用户提供的摘要。完成序列最多可能需要5分钟。
如果需要,我们可以通过右键单击“创建测量”脚本并选择“编辑”脚本来修改脚本,然后修改算法的其他参数。该脚本会自动将用户输入保存为工作站参数。我们可以通过右键单击测站并选择测站参数来查看,编辑或删除这些设置,如下图所示。
算法完成后,将弹出一条新消息。我们可以选择“校准”以将60个测量值用于机器人校准。我们可以重新执行相同的脚本以生成另一组测量值以进行验证。此步骤是可选步骤,但建议进行80次测量以进行验证。
最后,还可以通过选择“导入数据”(在“测量”菜单中)来导入手动选择的配置。我们可以将CSV或TXT文件导入为Nx6矩阵,其中N是配置数。
需要将激光跟踪仪和机器人连接到计算机以自动执行测量过程。如果我们移动激光跟踪仪,还建议通过三个点测量参考系(如果要恢复轴1的原始位置,请执行此步骤,请参见附件二欲获得更多信息)。
如下图所示,需要至少安装一个SMR目标(建议三个或更多)。如果必须移动激光跟踪仪,则使用3个嵌套作为参考框架也很方便。
必须依次完成以下小节,以准备开始进行测量。
需要激光跟踪器的IP才能正确设置与RoboDK的通信。请按照以下步骤验证与激光跟踪器的通信:
a.选择菜单«连接➔连接激光跟踪器»。应该会打开一个新窗口。
b.设置激光跟踪器的IP。
c.点击“连接”按钮。
如果连接成功,您应该会看到一条绿色消息,显示“就绪”。窗口可以关闭,连接将保持活动状态。
要正确设置与RoboDK的通信,需要机械手的IP(或RS232连接的COM端口号)。请按照以下步骤验证与机器人的通信:
1.选择连接➔连接机器人。将会出现一个新窗口。
2.设置机械手的IP和端口(如果通过RS232进行连接,则设置COM端口)。
3.单击连接按钮。
4.如果出现任何问题,请参考附录。
注意:有关更多信息,请参见程序部分。
如果连接成功,您应该会看到一条绿色消息,显示就绪。如果选择“获取当前关节”,则虚拟机器人的位置应与真实机器人的位置完全匹配。或者,选择“移至当前关节”以将机器人移至模拟器中设置的当前位置。窗口可以关闭,连接将保持活动状态。
重要:如果选择“获取当前关节”和“移动到当前关节”,则虚拟机器人的位置应与真实机器人的位置完全匹配。如果不是这种情况,某些机械手设置可能不正确。
建议测量连接到机器人底座的校准参考框架,如果我们要在校准过程中移动跟踪器或比较两个机器人校准,这将很有帮助。校准参考系必须由3个有形点定义。
如果我们不打算相对于机器人移动跟踪器,或者不需要恢复轴1的原始位置,则可以跳过此步骤。在这种情况下,将使用激光跟踪器的参考。
重要注意:如果要恢复轴1的原始位置,此步骤很重要。有关更多信息,请参见附录III。
每次移动激光跟踪仪时,我们都应遵循以下步骤:
1.选择连接➔连接激光跟踪仪。
2.设置激光跟踪器的IP并选择连接(如果未连接激光跟踪器)。
3.如图所示,设置校准参考和跟踪器参考。校准参考也称为“测量参考”。
4.选择设置基准目标。
RoboDK将指导用户使用下图所示的菜单。程序完成后,激光跟踪器的位置将相对于校准参考自动更新。
机器人校准分为4个步骤。每个步骤都需要进行一组测量。必须遵循以下四个步骤:
1.基本参考测量值(3分钟)。
2.刀具参考测量(3分钟)
3.校准测量(7分钟,60次测量)
4.验证测量(7分钟,60次测量)。
以下视频显示了如何在20分钟内执行此校准:https://www.robodk.com/robot-calibration#tab-lt。验证测量值(第4步)对于校准机器人不是强制性的,但是它们提供了准确性结果的客观观点。也可能会看到在一个区域内校准机器人并在另一个区域内进行验证的影响。
为四组测量中的每组选择按钮测量。这将打开一个新窗口,该窗口允许进行新测量以及以文本文件(csv或txt格式)导入和导出现有测量。
如果我们对所有6次测量都测量相同的目标,则可以在工具法兰上的任何位置执行这些测量。要开始测量,请在“基本设置”部分中选择“测量”。将打开以下窗口。然后,选择“开始测量”,然后机器人将按顺序进行计划的测量。
提示: 双击测量以从该位置继续测量。
测量完成后关闭窗口,并且测量参考框架将相对于机器人基础框架进行更新。如果未选择任何参考框架,则可以添加参考(选择“程序”➔添加参考框架)并将其放在机器人基础参考下(在项目树中拖放)。
摘要将显示相对于校准参考系的位置和方向或机器人参考系([x,y,z,w,p,r]格式,单位为mm和弧度)
1-6测量可以在工具法兰上的任何位置执行,只要我们为6次测量测量相同的目标即可。此后,我们要测量的每个TCP都会为同一个TCP添加一个测量,在这种情况下,我们有3个TCP,因此总计6 + 3 = 9个测量。我们可以双击一个测量以从该位置继续测量。
像上一节一样:在“工具设置”部分中选择“测量”。将打开以下窗口。选择开始测量,机器人将按顺序进行计划的测量。双击测量以从该位置继续测量。
该步骤完成后,摘要将显示已校准的TCP。TCP的定义(在下图“ CalibTool 1”中)将自动更新。如果我们没有选择任何TCP,则可以添加一个新的TCP(选择“程序➔添加空工具”),然后选择“重新计算”。将出现一个新窗口,我们必须根据进行测量的顺序选择工具的“ id”。我们可以重复相同的过程来更新所需的TCP(在本例中为3个TCP)。如果工具名称以数字结尾,则将自动检测该工具的ID。
在“校准”部分中选择“测量”。将打开以下窗口。然后,选择“开始测量”,机器人将按顺序进行计划的测量。双击测量以从该位置继续测量。
测量完成后,关闭窗口。机器人将自动校准,如果没有问题,它将显示以下消息。
最后,绿色屏幕将显示一些有关校准测量的统计数据,以及这些测量的精度提高了多少。
我们不应该使用与校准机器人相同的测量值来验证机器人的精度,因此,建议采取其他测量方法来验证精度(对精度结果有更客观的认识)。
必须遵循相同的校准程序才能进行验证测量。摘要将显示验证统计信息。见以下结果部分欲获得更多信息。
校准完成后,我们可以通过阅读RoboDK提供的统计数据来分析准确性的提高。要显示这些统计信息,请打开机器人校准窗口(双击图标“机器人校准”)。验证部分的摘要窗口将显示校准前(标称运动学)和校准后(校准后的运动学)的错误。提供了两个表,一个表显示有关位置误差的统计信息,另一个表显示距离误差:
● 位置误差:位置误差是机器人相对于参考系可以达到的一点精度。
● 距离误差:距离误差是通过测量成对点的距离误差获得的。将机器人看到的两点之间的距离(使用校准的运动学方法获得)与测量系统看到的距离(物理测量)进行比较。所有组合都考虑在内。如果我们进行了315次测量,则将得到315x315 / 2 = 49455的距离误差值。
提供的统计信息是平均误差,标准偏差(std)和最大误差。还提供了平均值加标准偏差的三倍,这对应于所有测量的99.98%的预期误差(如果考虑到误差遵循正态分布)。
选择显示统计数据,两个直方图将显示校准前后的误差分布,一个直方图表示位置精度,另一个直方图显示距离精度。下图对应于此示例中使用的315个验证测量。
最后,我们可以选择制作报告,然后将生成包含本节中介绍的信息的PDF报告。
校准机器人后,我们可以使用不同的方法来进行机器人校准:
● 过滤现有程序:修改程序中的所有机器人目标,以提高机器人的准确性。可以手动完成,也可以使用API。
● 使用RoboDK进行离线编程可生成准确的程序(已过滤生成的程序,包括使用API生成的程序)。
要手动过滤现有程序,请执行以下操作:将机器人程序文件拖放到RoboDK的主屏幕中(或选择“文件”➔打开),然后选择仅过滤。该程序将被过滤并保存在同一文件夹中。过滤器摘要将提及使用过滤算法是否存在任何问题。如果要在RoboDK中进行仿真,我们还可以选择导入程序。如果程序具有任何依赖项(工具框架或基本框架定义,子程序等),它们必须位于导入第一个程序的相同目录中。
一旦将程序导入RoboDK中,就可以以绝对精度或绝对精度重新生成程序。在RoboDK的主要精度设置(工具➔选件➔准确性),我们可以决定是否要始终使用精确的运动学来生成程序,是否要每次询问或是否要使用当前的机器人运动学。可以通过右键单击机器人并激活/禁用“使用精确运动学”标签来更改当前的机器人运动学。如果处于活动状态,我们将看到一个绿色的点,如果未处于活动状态,我们将看到一个红色的点。
给定已校准的机器人,可以使用RoboDK过滤完整的程序,而使用 筛选程序 呼叫:
机器人。筛选程序(file_program)
库的“宏”部分中提供了一个名为FilterProgram的宏示例。以下代码是使用RoboDK API过滤程序的Python脚本示例。
从 机器人链接 进口 * #与RoboDK通信的API
从 罗布德克 进口 * #基本矩阵运算
进口 操作系统 #路径操作
#获取当前工作目录
CWD = 操作系统。路径。目录名(操作系统。路径。真实路径(__文件__))
#启动RoboDK(如果未运行)并链接到API
RDK = Robolink()
#可选:提供以下参数以在后台运行
#RDK = 机器人链接(args ='/ NOSPLASH / NOSHOW / HIDDEN')
#获取已校准的测站(.rdk文件)或机械手文件(.robot):
#提示:校准后,右键单击机器人,然后选择“另存为.robot”
标定档案 = CWD + '/KUKA-KR6.rdk'
#获取程序文件:
file_program = CWD + '/Prog1.src'
#加载RDK文件或机械手文件:
calib_item = RDK。添加文件(标定档案)
如果 不 calib_item。有效():
提高 例外(“加载时出错” + 标定档案)
#检索机械手(如果只有一个机械手,则不会弹出窗口):
机器人 = RDK。ItemUserPick(“选择要过滤的机器人”, ITEM_TYPE_ROBOT)
如果 不 机器人。有效():
提高 例外(“未选择机器人或不可用”)
#激活精度
机器人。setAccuracyActive(1个)
#过滤程序:这将自动保存程序副本
#根据机器人品牌使用重命名的文件
状态, 摘要 = 机器人。筛选程序(file_program)
如果 状态 == 0:
打印(“程序过滤成功”)
打印(摘要)
calib_item。删除()
RDK。关闭RoboDK()
其他:
打印(“程序筛选失败!错误代码:%i” % 状态)
打印(摘要)
RDK。ShowRoboDK()
以下代码是一个示例Python脚本,该脚本使用RoboDK API来过滤目标(姿势目标或联合目标), FilterTarget命令:
pose_filt,关节= robot.FilterTarget(nominal_pose,estimated_joints)
如果第三方应用程序(不是RoboDK)使用姿势目标生成机器人程序,则此示例很有用。
注意:如果使用API自动生成程序,则不需要这样做。
从 机器人链接 进口 * #与RoboDK通信的API
从 罗布德克 进口 * #基本矩阵运算
定义 XYZWPR_2_Pose(y):
返回 KUKA_2_Pose(y) #将X,Y,Z,A,B,C转换为姿势
定义 姿势_2_XYZWPR(姿势):
返回 姿势_2_KUKA(姿势) #将姿势转换为X,Y,Z,A,B,C
#启动RoboDK API并检索机械手:
RDK = 机器人链接()
机器人 = RDK。项目('', ITEM_TYPE_ROBOT)
如果 不 机器人。有效():
提高 例外(“机器人不可用”)
pose_tcp = XYZWPR_2_Pose([0, 0, 200, 0, 0, 0]) #定义TCP
pose_ref = XYZWPR_2_Pose([400, 0, 0, 0, 0, 0]) #定义参考框架
#更新机械手TCP和参考框架
机器人。setTool(pose_tcp)
机器人。setFrame(pose_ref)
#对于SolveFK和SolveIK(正向/反向运动学)非常重要
机器人。setAccuracyActive(假) #精度可以为开或关
#在关节空间中定义名义目标:
关节 = [0, 0, 90, 0, 90, 0]
#计算关节目标的机器人标称位置:
pose_rob = 机器人。SolveFK(关节) #机器人法兰与机器人底座
#计算pose_target:相对于参考帧的TCP
pose_target = v(pose_ref)*pose_rob*pose_tcp
打印(“目标未过滤:”)
打印(姿势_2_XYZWPR(pose_target))
joints_approx = 关节 #joints_approx必须在20度以内
pose_target_filt, real_joints = 机器人。FilterTarget(pose_target, 关节)
打印(“目标已过滤:”)
打印(real_joints。列出())
打印(姿势_2_XYZWPR(pose_target_filt))
一旦对机器人进行了校准,我们通常需要RoboDK来过滤程序,因此,需要RoboDK许可证(基本的OLP许可证足以在机器人被校准后生成准确的机器人程序)。过滤程序意味着要考虑所有校准参数(约30个参数),更改/优化程序中的目标以提高机器人的精度。
或者,我们可以仅校准关节偏移量以及基础和工具参考框架(4个关节偏移参数,基础框架为6个参数,工具框架为6个参数)。校准的准确性不如我们使用默认的完整校准,但它可能允许在机器人控制器中输入某些参数,而不依赖RoboDK生成机器人程序。
要仅对关节偏移进行校准,我们必须选择Calib。参数按钮,然后是Mastering按钮(在机械手校准菜单内)。
选择“制作母带程序”后,将出现一个新窗口。在此窗口中,我们可以选择要考虑创建新的原始位置的轴。
“制作母带程序”按钮将出现在机器人校准窗口中。选择此按钮以生成一个程序,该程序会将机器人带到新的原始位置。将其传送到机器人并执行,然后必须记录新的原始位置。
重要:需要特别注意恢复轴1和轴6的原始位置,有关更多信息,请参见附录。
如果连接了机器人和PC,我们可以右键单击该程序并选择发送程序给机器人自动将程序发送给机器人。否则,我们可以选择生成机器人程序查看原始位置的新关节值。
重要:如果我们更改了机器人的控制参数(原始位置),但仍要使用完整的校准(过滤器程序),则必须再次进行校准测量(并进行验证,如果有的话)并重新校准。在这种情况下,我们可以使用RoboDK过滤程序或从头开始生成程序(通过CAM文件:APT,G代码等)。
例如,我们必须按照以下步骤更新Motoman机器人的原位。
重要:我们不应两次运行此过程。否则,我们将设置其他原始位置。
我们必须首先运行程序“ MASTERING”,以将机器人移至新的原始位置。
程序进入控制器后,我们必须以“管理模式”登录(Motoman机器人的密码通常为99999999),并且我们必须处于示教模式。下图显示了必须遵循的步骤。
确保更新所有机器人关节的原始位置。
设置原始位置后,我们必须删除将机器人带到新的原始位置的机器人程序。
重要:我们不应两次执行此过程。
RoboDK提供了一些实用程序来校准参考框架和工具框架。可以从实用程序中访问这些工具➔校准参考框架和公用事业➔校准工具架分别。
要校准参考框架或工具框架(分别也称为用户框架和TCP),我们需要一些接触3个或更多点的机器人配置,这些机器人配置可以是关节值或直角坐标(在某些情况下带有方向数据)。建议使用关节值而不是笛卡尔坐标,因为这样更容易检查RoboDK中的实际机器人配置(通过将机器人关节复制粘贴到RoboDK主屏幕中)。
重要:校准机器人后,强烈建议使用关节值代替直角坐标。如果我们使用关节值,则会考虑机器人的精度以更精确地教导TCP。
选择实用程序➔校准工具使用RoboDK校准TCP。我们可以使用不同的方向根据需要使用任意数量的点。更多的点和较大的方向变化会更好,因为我们将获得更好的TCP估计以及TCP错误的估计。
注意:有关更多信息,请参见提示部分。
以下两个选项可用于校准TCP:
● 通过用不同方向的TCP触摸一个固定点。
● 通过使用TCP接触平面(例如测头)。
如果需要校准测头或主轴,建议通过触摸平面参考进行校准。此方法对于用户错误更稳定。
如果TCP是球形的,则将球的中心计算为新的TCP(不必提供球的直径)。
必须按照以下步骤用平面校准TCP(如图所示):
1.选择需要校准的工具。
2.选择校准方法➔“乘飞机校准XYZ”。
3.使用“接头”选择校准。
4.选择正在使用的机器人。
5.选择我们将用于TCP校准的配置数量(建议采用8种或更多配置)。
6.选择参考平面的估计值。如果参考平面不平行于机器人XY平面(来自机器人参考),我们必须在±20度内添加该参考平面的估计值。该平面的位置并不重要,而只是方向。
7.我们可以开始填写联合值表。我们可以手动填充它,也可以使用按钮进行复制/粘贴(如图所示)。我们还可以使用“获取Jx”按钮从模拟器中的机器人获取当前关节值。如果要从连接到机器人的真实机器人获取关节,则必须首先从机器人连接菜单中选择“获取当前关节”(有关将机器人与RoboDK连接的更多信息,请参见附件图像或附录)。强烈建议保留用于校准的关节的单独副本(例如,文本文件)。
8.填满表格后,我们将在窗口末尾看到新的TCP值(X,Y,Z)为“ Calibrated TCP”。我们可以选择“更新”,新的TCP将在RoboDK站中更新。使用此方法无法找到探头的方向。
9.我们可以选择“显示错误”,然后将看到每个配置相对于所计算的TCP的错误(这是所有配置的平均值)。如果一个配置的错误比其他配置大,我们可以删除它。
10. 我们必须在真实的机器人控制器中手动更新值(仅X,Y,Z)。如果此TCP将用于RoboDK生成的程序中,则无需更新机器人控制器中的值。
选择实用程序➔校准参考校准参考框架。可以使用不同的方法设置参考系。在该图的示例中,参考框架由三个点定义:点1和2定义X轴方向,点3定义正Y轴。
重要:建议在校准参考系之前使用关节目标并激活机器人精度,因为机器人手臂的精度将有助于更好地定义参考系。
注意:有关参考帧校准的更多信息,请参见提示部分。
如果要恢复轴1和6的主控/原点值,则必须特别注意。这些值与轴1的机器人基础框架和轴6的TCP参考直接相关。因此,必须进行外部测量正确设置这些值。在校准菜单中选择“制作母带程序”后,将显示此窗口。
必须遵循以下两个步骤才能正确设置这两个轴的控制参数。
我们必须使用参考目标来正确设置轴6的“原始”位置。角度偏移将是工具法兰围绕Z轴的旋转,以最佳方式将已知的测量TCP(X,Y,Z)拟合到已知值。 TCP参考。所测量的TCP(请参见下图)是在校准过程的第二步中测量的TCP之一。参考TCP是与使用的校准工具的TCP之一相对应的已知参考。
理想情况下,参考TCP必须由CMM相对于工具法兰进行测量(最好使用机器人工具法兰的副本)。或者,我们可以使用新的机器人第一次测量(校准过程的第二步)TCP,并使用一个测得的TCP作为参考。使用销钉和/或适当的工具法兰参考点很重要,以确保将末端执行器始终放置在同一位置。
如果要将轴1与真实的机器人基础框架对齐,则必须在开始进行机器人校准之前正确测量三个基础目标。必须选择这些基本目标,以便可以相对于机器人找到参考系。
轴1的“起始”位置直接取决于三个基本目标以及机器人基本设置。机器人基础设置是第一步校准,其中通过移动和测量轴1和2相对于机器人基础框架放置测量系统的基础框架。
可以通过按“设置基本目标”来设置测量系统的基本目标(参见下图)。这是3个测量值,它们将定义所需的机器人参考系(前2个测量值定义X轴,第三个点定义为正Y轴)。我们应该使用与机器人基座相关的适当参考点,以便此过程可重复。
关节1的校正角将是通过3个点测得的基本参考的X轴与通过移动机器人轴1和2测得的基本参考之间的夹角。通过触摸树点获得的基本参考。
机器人校准需要从具有测量系统的机器人中进行测量。要进行这些测量,需要与计算机通信的Faro激光跟踪仪。通过可在控制台模式下运行的驱动程序exe文件完成通信。
例如,Faro提供了一个免费的应用程序,称为“ Tracker Utilities”。此应用程序可以初始化激光跟踪仪并执行一些运行状况检查等。
要初始化跟踪器,我们应该启动“ Tracker Utilities”应用程序,使用跟踪器IP连接,然后选择“启动检查”。跟踪器初始化时,我们应在初始化之前将一个1.5英寸SMR目标物置于“起始”位置。否则,初始化后绿灯将闪烁,并且测量将无效。
初始化完成后,我们应阅读“启动完成”消息,如下图所示。
如果我们在跟踪器上遇到问题,可以通过按“运行状况检查...”来运行一些运行状况检查。接下来的两个图像分别显示成功检查和失败检查。有时,重新连接电缆并重新启动激光跟踪仪后,问题便会解决。
注意:建议不定期执行追踪器自我补偿。该补偿使用跟踪器头中的一些参考点来自动校准测量系统。另外,我们可以运行一些角度精度检查来验证激光跟踪仪的精度。
最后,我们可以使用“测量板”进行一些测量。激光跟踪仪可以跟随目标并以1000 Hz的频率测量XYZ位置。如果我们为每个点设置1个样本并连续触发,则跟踪器将每秒在CSV文件中记录1000次测量。
我们可以使用此功能来测量机器人路径,并使用RoboDK的路径准确性检查来检查路径的准确性,速度和加速度。