在进行编程前,需要设定好工具数据tooldata,工件坐标wobjdata和负荷数据loaddata.

工具数据 tooldata 的设定

工具数据tooldata用于描述安装在机器人第六轴的工具的TCP,质量,重心等参数;

默认工具tool0的工具中心点Tool Center Point,即TCP位于法兰盘的中心。

工具是独立于机器人的,有了TCP,实际应用可以以TCP为原点来建立一个空间直角坐标系;

首先,在机器人工作范围内找到一个非常精确的固定点作为参考点;
在工具上确定一个参考点(最好是工具的中心点)
手动操作机器人移动工具上的参考点,以4种以上不同的机器人姿态,尽可能的让参考点与固定点刚好碰上,为了获得更准确的TCP,下面的例子会使用6点法进行操作,第4点是工具的参考点垂直与固定点,第5点是参考点从固定点向将要设定为TCP的X方向移动,第6点是工具参考点从固定点向将要设定为TCP的Z方向移动;
TCP取点数量的区别:4点法,不改编tool0的坐标方向;5点法,改变tool0的Z方向;6点法,改编tool0的X和Z方向(在焊接应用最为常用)。前3个点的姿态相差尽量大些,这样有利于TCP的精度提高。

示例

  1. 示教器,选择手动操纵;

  2. 选择工具坐标;

  3. 新建一个名为tool1的工具坐标:
    20210707152808

  4. 编辑tool1,选择定义

  5. 选择TCP和Z,X,使用6点法设定TCP;
    20210707153310

  6. 手动操作,使工具参考点靠上固定点,作为第一个点,单击修改位置,将点1位置记录下来:

    20210707154806

  7. 改变姿态,使用同样的方式设定第2个点:

    20210707154848

  8. 改变姿态,使用同样的方式设定第3个点:

    20210707154913

  9. 第4个点的位置必须让工具参考点垂直靠上固定点:

    20210707154731

    这个实际在RobotStudio虚拟操作对新手来说比较困难,摸索了一下:先使用示教器,将工具调整到垂直(不需要接触到固定点),然后使用Freehand下的手动线性来拖动工具靠上固定点(期间可以使用不通的视图角度确认),手动线性模式下,可以一直保证工具垂直:
    20210714104217

  1. 在第4个点的垂直姿态下,移动工具TCP的+X方向,记录下的位置即为第5个点:

    20210707154453

  2. 工具参考点以点4垂直姿态从固定点移动到工具TCP的+Z方向,记录下的位置即为第6个点:

    20210707154652

  3. 点击确定完成设定,自动校验误差,确认工具坐标是否建立的准确;

  4. 选中tool1,编辑选择更改值,此页面显示的内容即TCP定义时生成的数据;

  5. 根据实际情况,设定工具的质量mass(单位kg)和中心位置数据(此重心是基于tool0的偏移值,单位mm),确定后完成;

  6. 选择tool1,然后确定

  7. 动作模式选定为重定位,坐标系选定为工具,工具坐标选定为tool1.

  8. 手动操作将工具参考点靠上固定点,在重定位的模式下,手动操纵机器人,如果TCP设定精确的话,可以看到不论机器人如何改编姿态,参考点与固定点始终保持接触。

工件坐标 wobjdata 设定

  1. 在手动操作界面,进入工件坐标新建一个工件坐标数据,并对属性进行设定:
    20210710110721

  2. 选定新建的工件坐标,在编辑菜单里,选择定义用户方法选择3点,对工件坐标进行3点设定:
    20210710111117

  3. 手动操作机器人的工具参考点靠近工件坐标定义的X1点,单击修改位置记录X1位置:
    20210710111351

  4. 使用同样的方式记录X2的位置:
    20210710111456

  5. 最后记录Y1的位置:
    20210710111551

  6. 对自动生成的工件坐标数据进行确认
    20210710111828

**关于工件坐标 wobjdata **:

  • 工件坐标对应工件,它定义工件相对于大地坐标(或其它坐标)的位置。机器人可以拥有若干工件坐标系,或者表示不同工件,或者表示同一工件在不通位置的若干副本;
  • 对机器人进行编程时,就是在工件坐标中创建目标和路径;
  • 重新定位工作站中的工件时,只需要更改工件坐标的位置,所有路径即可随之更新;
  • 允许操作以外轴或传送导轨移动工件,因为整个工件可连同其路径一起移动;

我的理解是,一个机器人,如果对应多个工站,每个工站如果需要更换不同的治具(工件),那么,我们可以针对不通的治具,设定不同的工件坐标,这样,换线(换治具)的时候,就可以很方便的定位了(切换工件坐标)。

有效载荷 loaddata 设定

对应搬运应用的机器人,应该正确的设定

  • tooldata: 夹具的质量,重心;
  • loaddata: 搬运对象的质量和重心;
  1. 示教器界面菜单选择手动操作,再选择有效载荷新建并设定有效载荷数据的属性,单击初始值根据实际情况设定有效载荷数据:
    20210710124957

    20210710125148

  2. 有效载荷参数含义:
    20210710125340

  3. 添加loaddata至RAPID程序中:

    1. 进入程序编辑界面,选择Settings:
      20210710125836

    2. 选择Gripload指令:
      20210710130203

    3. load0变更为我们新建的load1即完成设定:
      20210710130336

调用例行程序(Service Routine):LoadIdentify

很多时候,我们并不知道工具工件的质量,重心等负荷数据,或者嫌麻烦,可以调用系统自带的例行程序LoadIdentify来自动测量和设置这些负荷数据。

  1. 手动状态下,打开程序编辑器,点击调试,**调用例行程序—**:
    20210714194706

  2. 选择LoadIdentify,再点击转到(其它例行程序后续再研究):
    20210714195127

  3. 开启电机(示教器使能)后,按运行按钮,提示如下画面,点击OK
    20210714200344

提醒运行程序的过程中,程序的指针会丢失,目前的路径也会清除。程序结束后,将PP指向main.按OK继续。

  1. 提醒是鉴别的是工具还是工件,我的理解是工具就是手臂上装的夹具,工件是夹具上有夹持工件,这里没有夹持工件,选择Tool
    20210714201038

  2. 接着提醒工具有没有安装到手臂上,手臂的轴在合适的位置:
    20210714201734

  3. 接着提醒确认tool名称是不是对的(不能是tool0,如果不对,重新设置为对tool后,再回到程序编辑器,按示教器运行按钮继续:
    20210714202223

  4. 接着问知不知道工具工件的质量,知道的话在定义loaddata的时候可以填写进去,本列选Unknow mass:
    20210714202620

  5. 确认配置的角度:这里不是太理解,大概是说要选择轴6的实际位置与 the coming ditto for the measurement movements.建议是+/-90度,最小是+/-30度,如果不是+/- 90度,可以选Other,然后填写实际角度:
    20210714203854

  6. 接着会自动检查手臂是不是在一个正确的位置,如果不在正确的位置,会要求拖动(jog)1个或几个轴到指定的位置(角度),粗略的就好。然后点击OK即可。如果还是不正确,手臂会自动的慢速移动到正确的位置,点击提示窗口的Move即可,我这边提示要求移动轴5到14度的位置:
    20210714205321

  7. 拖动的时候会显示角度,拖动后点击OK:
    20210714205235

  8. 可能还不正确,程序将慢速移动一些轴关节到精确的位置,点击MOVE来调整:
    20210714205727

  9. 接着提示说是否要求在正式高速运动之前先低速运动测试(避免撞击到物品和人,但这样会需要更长的时间),另外,如果接下来实际跑程序的时候,你计划选择的是人工全速模式,那这里就不需要要选低速先测试。这里我们选择NO,直接跑程序:
    20210714211833

  10. 提示切换到自动模式(需要重新回到程序编辑器,开启电机,重新按压示教器运行按钮,电机MOVE
    20210714212002

  11. 提示切换回手动模式,并降低速度(也可以不降低),重新开启电机,运行程序,之后再点击OK
    20210714212732

  1. 有时候电机显示安全防护停止状态,多试几次,显示电机开启后再运行程序。由于这里用的是仿真环境,所以最后提示没有真实的计算数值:
    20210714213412

  2. 但与正式环境的过程是一样的,点击OK后,会呈现最终的计算结果,并询问是否更新tool1的loaddata?,点击YES更新,保存数据到loaddata:
    20210714213925

  3. 也可以点击Analyze查看更多信息:
    20210714214039

  4. 最后将PP移动至Main:
    20210714214715

  5. 或者到程序编辑器调试里面将PP移至main:
    20210714214857

Summary

20210710133116