PF_Start / PF_Start函數

啟動指定零件的Part Feeding程序。

格式
PF_Start 零件ID1 [, 零件ID2 [, 零件ID3 [, 零件ID4] ] ]
PF_Start (零件ID1 [, 零件ID2 [, 零件ID3 [, 零件ID4] ] ])

參數

  • 零件ID
    指定零件ID(整數值1~32)。作為引數使用變數且不指定零件ID時,將數值設為0。

傳回值

描述
在啟動PF_Start前,請執行以下處理。
關於執行方法,請參閱使用範例。

  • 選擇使用的機器人
  • 設定機器人(Power、Speed、Accel等)
  • 馬達On
  • 若要輸出日誌,則執行PF_InitLog

執行PF_Start,將會生成新任務(任務編號32),並啟動Part Feeding程序。
讓呼叫源恢復控制,不等待Part Feeding程序結束。

在以下條件下會出現錯誤,並執行Status回呼函數。不會啟動Part Feeding程序。

條件 Status回呼函數的引數Status值

零件ID不存在

嘗試使用不同送料器的零件開始多種零件運作

重複設定零件ID

PF_STATUS_BAD_ID
零件的參數設定無效 PF_STATUS_BAD_PARAMETER
送料器校準未完成 PF_STATUS_CAL_NOT_COMPLETE
零件已停用 PF_STATUS_PARTNOTENABLED
送料器已被使用 PF_STATUS_FEEDERINUSE_ERROR
發生系統錯誤 PF_STATUS_ERROR
  • 多台送料器運作
    不同送料器的零件可以同時執行Part Feeding程序。例如,若零件1屬於送料器1,零件2屬於送料器2,則可以在執行PF_Start 1後執行PF_Start 2。
    PF_Start會為每個送料器建立任務。任務編號從「32」開始,每次執行PF_Start時編號減1。使用的任務編號取決於送料器編號。
    送料器編號 任務編號
    1 32
    2 31
    3 30
    4 29

各回呼函數(PF_Robot、PF_Control、PF_Status、PF_Vision、PF_MobileCam)在與建立PF_Start的相同任務中執行。
T/VT系列控制器最多可同時控制2台送料器。若嘗試使用3台或更多送料器運作,將發生「錯誤7731:超過控制器類型的最大同時送料器數量」。

  • 多種零件運作
    執行多種零件運作時,在引數中指定多個零件ID。最多可指定4個零件ID。此時,送料器會使用以PF_Start中第1個引數指定的零件ID(主動零件)的校準參數進行運作。若要切換主動零件,則使用PF_ActivePart命令。
    多種零件運作只能指定屬於同一送料器的零件。指定不同送料器的零件執行PF_Start時,會發生錯誤,並以PF_STATUS_BAD_ID呼叫PF_Status回呼函數。
    多種零件運作中,1個送料器最多可使用2台機器人。在使用3台或更多機器人的設定下執行PF_Start時,會發生錯誤,並以PF_STATUS_**呼叫PF_Status回呼函數。

  • 其他注意事項
    執行Part Feeding程序時,無法對同一送料器重新執行Part Feeding程序。例如,在零件1和零件2均屬於送料器1時,若在執行PF_Start 1後執行PF_Start 2,則會發生錯誤,並以PF_STATUS_FEEDERINUSE_ERROR呼叫PF_Status回呼函數。已執行的PF_Start會繼續處理。
    請從一般任務執行PF_Start。從背景任務執行時會發生錯誤。
    無法從虛擬控制器及命令視窗執行。

使用範例

Robot 1  
Motor On  
Power High  
Speed 100  
Accel 100, 100  
LimZ -80.0  
  
PF_InitLog("C:\log.csv", True)  
PF_Start(1)