PF_ActivePart

マルチパーツ動作時に、アクティブパーツを切り替えます。PF_ActivePartステートメントは、現在どのパーツを処理すべきかをシステムに伝えます。システムは、PF_ActivePartで指定されたパーツをロボットがピックアップできるように、部品を振動させたり、供給したりします。

書式
PF_ActivePart パーツID

パラメーター

  • パーツID
    パーツID (整数値1~32)を指定します。

戻り値
なし

解説
マルチパーツ動作時は、PF_Startステートメントの第1引数のパーツIDが最初のアクティブパーツです。別のパーツを使用したい場合は、PF_ActivePartステートメントを使用してアクティブパーツを切り替えることができます。システムは、アクティブパーツに対して動作 (フィーダー振動パラメーターの使用、ホッパーからの部品供給など)を行います。
PF_ActivePartステートメントは、通常はPF_Robotコールバック関数を終了する前に設定されます。
Part Feeding動作プロセスが開始していない場合は、本コマンドを実行しても何も起こりません。
マルチパーツ動作でないとき (PF_Startの実行時にIDを1個のみ指定した場合)、本コマンドを実行しても何も起こりません。
マルチパーツ動作で指定しなかったパーツIDを指定した場合、本コマンドを実行しても何も起こりません。
仮想コントローラーおよびコマンドウィンドウからは実行できません。

使用例
この例では、PF_ActivePartを使用して、パーツ1とパーツ2を切り替える方法を示します。

Function PF_Robot(PartID As Integer) As Integer
   Select PartID
       Case 1
           If PF_QueLen(1) > 0 Then
               MemOn PartsToPick1
               Wait MemSw(PartsToPick1) = Off
               PF_ActivePart 2 'Switch to Part 2
           Else
               PF_ActivePart 1 'Part 1 is still needed
           EndIf
       Case 2
           If PF_QueLen(2) > 0 Then
               MemOn PartsToPick2
               Wait MemSw(PartsToPick2) = Off
               PF_ActivePart 1 'Switch to Part 1
           Else
               PF_ActivePart 2 'Part 2 is still needed
           EndIf
   Send
   PF_Robot = PF_CALLBACK_SUCCESS
Fend