精度优先模式 获取跟踪延迟

通过在传送带跟踪精度优先模式下获取机器人的跟踪延迟并进行补偿,可高精度地跟踪工件。

要获取跟踪延迟时,建议事先实施下述跟踪延迟获取动作。未设置基于获取动作的补偿值时,可能会对精度或经过的时间造成不良影响。

跟踪延迟获取动作

如下图所示,跟踪延迟获取动作是指机器人从动作开始位置动作到下游范围,以获取传送带搬送方向的补偿量[mm]。

可通过执行以下所示的样本程序实施该动作。

实施之前,请进行以下设置。

  • 实施传送带校准
  • 将Accel、Speed、Tool等设为与实际运行相同的设置
  • 将传送带跟踪动作的开始位置设为P0并进行示教
  • 对动作所需的2点进行示教
    • 第1点:机器人动作开始位置
    • 第2点:传送带上的跟踪位置
  • 按照与实际运行相同的速度进行传送带动作

要点


  • 根据已示教的跟踪位置的传送带宽度方向坐标与高度方向坐标进行获取动作。请设为与实际运行时接近的设置。
  • 补偿值因传送带速度、机器人的加速度、速度、姿势等而异。要变更这些设置时,建议重新进行跟踪延迟获取动作。
  • 该程序适合对虚拟队列进行动作,因此无需送入实际工件。
Function Cnv_Adjust_measure

  '移动到机器人动作开始位置
  Motor On
  Go P0

  Power High
  Speed 100
  Accel 100, 100
  Cnv_Accel 1, 2000

  '检查传送带运行
  If Cnv_Speed(1) < 0.1 Then
    Print "传送带未运行"
    Exit Function
  EndIf

  '将虚拟工件注册到队列中
  Cnv_QueRemove 1, All                   '清除队列
  Cnv_Trigger (1)                        '锁存传送带脉冲
  Cnv_QueAdd 1, XY(0, CY(P1@Cnv(1)), CZ(P1@Cnv(1)), CU(P1@Cnv(1)), 0, 0) /CNV(1)
   '基于P1将虚拟工件注册到队列

  Wait Cnv_QueLen(1, CNV_QUELEN_PICKUPAREA) > 0
  '在队列进入拾取区域内之前待机
  Cnv_Adjust 1, On                       '将补偿获取动作标志设为On

  '执行动作
  Go Cnv_QueGet(1,0)                     '使用SCARA机器人时
  'Go Cnv_Queget(1,0):U(90):V(0):W(180)  '使用6轴机器人时

  Do
  Wait 0.02
  Loop Until (CX(RealPos@CNV(1)) >= Cnv_Downstream(1))
  '等待到达下游限位

  Go here                                '机器人停止
  Cnv_QueRemove 1, All                   '对队列进行初始化
  Cnv_Adjust 1, Off                      '将补偿获取动作标志设为Off
  motor off

  '输出已获取补偿值的结果
  If Cnv_AdjustGet(1, 0) = 2 then
  Print "无法正确获取补偿值"
  Else
    Print "动作结果=", Cnv_AdjustGet(1, 0)
    Print "补偿量 =", Cnv_AdjustGet(1, 1)

  EndIf
Fend

要点


  • 如果切断控制器的电源,补偿值则会被重置。请在要使用的程序中利用Cnv_AdjustSet设置已获取的补偿值。要记录已获取的补偿值时,可通过添加下述程序将文件保存到Project文件夹内。

    Integer fileNum; String filename$
    fileNum = FreeFile
    filename$ = "文件名"
    AOpen filename$ As #fileNum
    Print #fileNum,Cnv_AdjustGet(1,1)
    Close #fileNum
    
  • 动作结果不是“1”时,可能是机器人在拾取区域内没有追上工件或补偿值获取动作超过100秒。请重新评估Accel或Speed的设置值、上下游范围设置、动作开始位置、传送带速度。