準確度優先模式 跟蹤延遲取得

於傳送帶跟蹤的準確度優先模式下,將取得機器人的跟蹤延遲並予以校正,以提高跟蹤工件的準確度。

為取得跟蹤延遲,建議於事前執行以下跟蹤延遲取得動作。如選擇不設定取得動作之所得校正值,則可能導致準確度及經過時間的惡化。

跟蹤延遲取得動作

進行跟蹤延遲取得動作時,機器人將如下圖所示,由動作開始位置移動至下游範圍,並取得傳送帶運送方向的校正量[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的設定值、上下游範圍的設定、動作開始位置、傳送帶速度。