Box

進入検出エリアの設定と表示をします。

書式
(1) Box エリア番号 [, ロボット番号], X軸下限位置, X軸上限位置, Y軸下限位置, Y軸上限位置, Z軸下限位置, Z軸上限位置 [ ローカル番号]
(2) Box エリア番号, ロボット番号, X軸下限位置, X軸上限位置, Y軸下限位置, Y軸上限位置, Z軸下限位置, Z軸上限位置, リモート出力論理 [ ローカル番号]
(3) Box エリア番号, ロボット番号
(4) Box

パラメーター

エリア番号
設定するエリアの番号を1~15の整数値で指定します。
ロボット番号
設定するロボットの番号を整数値で指定します。(1) の書式で省略した場合、現在選択されているロボットが対象となります。(2), (3) の書式では、省略できません。
X軸下限位置
設定するエリアの下限位置のX座標値 (実数)を、数値または式で指定します。
X軸上限位置
設定するエリアの上限位置のX座標値 (実数)を、数値または式で指定します。
Y軸下限位置
設定するエリアの下限位置のY座標値 (実数)を、数値または式で指定します。
Y軸上限位置
設定するエリアの上限位置のY座標値 (実数)を、数値または式で指定します。
Z軸下限位置
設定するエリアの下限位置のZ座標値 (実数)を、数値または式で指定します。
Z軸上限位置
設定するエリアの上限位置のZ座標値 (実数)を、数値または式で指定します。
リモート出力論理
On | Off
リモート出力の論理を設定します。Box進入時にI/O出力をOnしたい場合には、Onを設定、Box進入時にI/O出力をOffしたい場合には、Offを設定します。パラメーターを 省略した場合は、Onが設定されます。
ローカル番号
ローカル座標系番号 (0から15)を指定します。
番号の前に、必ず"/LOCAL"をつけてください。パラメーターを省略した場合は、ローカル座標系番号0が設定されます。

結果

  • (3)の書式で指定すると、指定したエリア番号のエリア設定を表示します。
  • (4)の書式で指定すると、現在選択されているロボットの設定されているすべてのエリア設定を表示します。

解説
Boxは、進入検出エリアを設定します。進入検出エリアを設定すると、現在選択しているツールに基づいて算出される手先位置が、設定した進入検出エリア内に入っているかどうかを検出することができます。進入検出エリアはロボットのベース座標系、またはローカル番号で指定されたローカル座標系上に設定され、指定座標系のX, Y, Z各軸に指定された下限位置と上限位置の間が進入検出エリアとなります。

進入検出エリアを設定すると、コントローラーの起動中はロボットのモーターパワーの状態に関わらず常に検出処理が実行されます。

進入検出の結果は、GetRobotInsideBox関数, InsideBox関数を使っていつでも取得できます。またWaitコマンドの待ち条件式としてGetRobotInsideBox関数を利用することができます。また、検出結果をI/Oに出力するようにリモート出力設定することもできます。

複数のロボットで1つのエリアを共有するには、それぞれのロボット座標から見たエリアを定義する必要があります。

記号 説明
a X, Y, Z軸下限位置
b X, Y, Z軸上限位置

Robot 1から見たBox1の設定

Box 1, 1, 100, 200, 0, 100, 0, 100

X, Y, Z軸下限位置の座標が(100, 0, 0) でX, Y, Z軸上限位置の座標が (200, 100, 100)

Robot 2から見たBox1の設定

Box 1, 2, -200, -100, 0, 100, 0, 100

X, Y, Z軸下限位置の座標が(-200, 0, 0) でX, Y, Z軸上限位置の座標が (-100, 100, 100)

ロボットパラメーターデータは、コントローラー内のコンパクトフラッシュに格納されています。このため、本コマンドを実行するとコンパクトフラッシュへの書き込みが発生します。頻繁なコンパクトフラッシュへの書き込みは、コンパクトフラッシュの寿命に影響します。本コマンド実行を必要最小限にとどめることを推奨します。

注意


  • 各座標軸に進入検出エリアの設定をオフにする

    各座標軸に設定をオフすることができます。例えば、Z軸の設定だけをオフにするためには、Z軸下限位置およびZ軸上限位置を "0"に設定してください。例: Box 1, 200, 300, 0, 500, 0, 0

    この場合、XYの2次元平面に進入しているかどうかを判別します。

  • 進入検出エリアのデフォルト

    Box のデフォルトは、 "0, 0, 0, 0, 0, 0"です。 (進入検出エリアの設定は、オフになります。)

  • ツール選択

    進入検出は、現在選択しているツールで行います。したがって、ツールの選択を変更した場合、ロボットが動作していないのにエリア内からエリア外、またはその逆となるケースがあります。

  • 付加軸

    付加軸 (走行軸含む) S, T軸を持つロボットの場合設定される進入検出平面は、付加軸の位置には依存しません。ロボットのベース座標系を基準に設定されます。


ヒント

  • Boxをロボットマネージャーで設定する

    RC+ では、[ツール]メニュー-[ロボットマネージャー]の[進入検出エリア]パネルからBox値を設定できます。

参照
BoxClr, BoxDef, GetRobotInsideBox, InsideBox, Plane

Box使用例
[例1] 下記はコマンドウィンドウからBox値を設定し、値を表示する簡単な操作例です。

> Box 1, -200, 300, 0, 500, -100, 0

> Box
Box 1: 1, -200.000, 300.000, 0.000, 500.000, -100.000, 0.000, ON /LOCAL0

[例2] 下記はローカル番号に1, 2を指定してBox値を設定する簡単なプログラムです。

Function SetBox

   Integer i

   Box 1, -200, 300, 0, 500, -100, 0 /LOCAL1

   i = 2
   Box 2, 100, 200, 0, 100, -200, 100 /LOCAL(i)

Fend