傳送帶追蹤動作(感測器追蹤)

下一步,來建立使用感測器的傳送帶追蹤動作。

機器人透過Pick & Place將在感測器所偵測物件上流動的工件(零件)移動至工作台。

步驟概要

  1. 建立虛擬控制器並設定機器人
  2. 建立專案
  3. 新增相當於工件(零件)的物件
  4. 新增並設定相當於工作台的物件
  5. 新增並設定傳送帶物件
  6. 進行傳送帶物件的供應設定與確認
  7. 新增並設定偵測區域物件

到此為止與以下所述步驟相同。

傳送帶單獨動作

以下為追蹤動作的步驟。

  1. 新增傳送帶追蹤設定
  2. 執行並設定傳送帶校準
  3. 建立並執行程式

步驟詳細說明

  1. 準備

    步驟概要中的步驟5之前與以下所述步驟相同,因此省略。

    傳送帶單獨動作

    以下說明不同之處。

    1. 新增相當於感測器的偵測區域物件"DetectionArea_1",並進行以下設定。

      • 位置設定(Position X, Y, Z): 400, -300, 125
      • 姿勢設定(Rotation Z): 90

    2. 設定傳送帶追蹤。設定如下。

      1. 在Epson RC+ 8.0功能表 - [設置] - [系統配置]的[控制器] - [傳送帶編碼器]中,確認已新增編碼器。

      2. 在Epson RC+ 8.0功能表 - [工具] - [傳送帶跟蹤]中,新增傳送帶追蹤設定。

      3. 在[類型]中選擇[感測器]。

      4. 對傳送帶物件進行以下設定。

        • 將"Operation"屬性設為"LinkTracking"
        • 將"Conveyor ID"屬性設為"1"

    3. 執行傳送帶校準。
      關於模擬器上的傳送帶校準,請參閱以下內容。

      機器人物件屬性 - "傳送帶校準"

      依照以下步驟進行簡易校準。

      1. 在佈局樹狀目錄中,展開機器人節點下的"Conveyor Tracking"節點。

      2. 在"Conveyor 1"上點擊滑鼠右鍵,然後點擊[使用模擬器校準]。

      3. 將"Conveyor Origin"、"Upstream Limit"、"Downstream Limit"各屬性的"Visible"屬性設為"True"。

      4. 確認傳送帶原點、上游極限、下游極限的顯示。

    4. 進行防止重複登錄的設定。
      開啟Epson RC+ 8.0功能表 - [工具] - [傳送帶跟蹤],將防止工件重複登錄的距離設定為"200mm"。

    5. 進行觸發設定。

      • 在偵測區域物件中進行以下設定。

        • 感測器設定(Sensor - IO Type): Output
        • 感測器設定(Sensor - IO Number): 10
        • 感測器設定(Sendor – Duration): 0.30

      • 在傳送帶物件中進行以下設定。

        • 觸發IO設定(Operation - Trigger IO): 10
          設定與偵測區域物件的IO Number所設定值相同的"10"。

  2. 建立程式

    將以下程式建立為Main.prg。

    Function main
        SimSet Conveyor_1.ClearSupply
    
        Motor On
        Power High
        Speed 100
        Accel 100, 100
    
        Cnv_Mode 1, 1
        Cnv_Accel 1, 2000
        Cnv_QueRemove 1, All
    
        Integer i
        String name$
    
        Xqt SensorDetection
    
        TmReset 0
        SimSet Conveyor_1.Start
    
        For i = 1 To 10
            Wait Cnv_QueLen(1, CNV_QUELEN_PICKUPAREA) > 0
    
            Jump Cnv_QueGet(1, 0) +Z(51)
    
            SimGet robot1.NearestObjToTool(0), name$
            SimSet robot1.Pick, name$
    
            Jump Here :X(550) :Y(i * 60 - 320)
    
            SimSet robot1.Place, name$, Table
    
            Cnv_QueRemove 1, 0
        Next
    
        SimSet Conveyor_1.Stop
        Quit SensorDetection
    
        Print "Finished, ", Tmr(0), "[s]"
    Fend
    
    Function SensorDetection
        Double LPulse
        Cnv_QueRemove 1, All
        LPulse = Cnv_LPulse(1)
    
        Do
            If LPulse <> Cnv_LPulse(1) Then
                Cnv_QueAdd 1, Cnv_Point(1, -20, 0)
                LPulse = Cnv_LPulse(1)
            EndIf
        Loop
    Fend
    
    
  3. 執行程式

    1. 點擊工具條的[打開運行窗口]按鈕,顯示[運行]視窗。

    2. 在Run視窗中選擇函數"main",然後點擊[開始]按鈕。

    3. 請確認與傳送帶單獨動作不同,傳送帶不會停止,工件(零件)會由機器人進行Pick & Place。