GetRobotInsidePlane関数

進入検出平面に進入しているロボットを返します。

書式
GetRobotInsidePlane(平面番号)

パラメーター

平面番号
状態を返す進入検出平面の番号(1~15の整数)を指定します。

戻り値
平面番号で指定された進入検出平面に進入しているロボットをビットで返します。

ビット0がロボット1で以降順番にビット15がロボット16です。

ロボットで進入検出平面が設定されていない場合は、該当ビットは常に0になります。

例えば、ロボット1とロボット3が平面に進入している場合はビット0とビット2がOnするので5を返します。

参照
InsidePlane関数, Plane

GetRobotInsidePlane関数使用例
下記はGetRobotInsidePlane関数を使用したプログラムです。

進入検出平面に1台もロボットが進入していない状態を待ちます。

Function WaitNoPlane

  Wait GetRobotInsidePlane(1) = 0

進入検出平面にロボット2だけが進入している状態を待ちます。

Function WaitInPlaneRobot2

  Wait GetRobotInsidePlane(1) = &H2

下記のプログラムは、動作命令の並列処理内で使用する例です。動作実行中に特定の進入検出平面に進入した時にI/Oをオンします。コントローラーに接続しているロボットが1台のケースです。

Function Main
   Motor On
   Power High
   Speed 30; Accel 30, 30

   Go P1 !D0; Wait GetRobotInsidePlane(1) = 1; On 1!

Fend

注意


D0を必ず記述してください。