AIO_TrackingSet

距離追従機能の設定を行います。

書式
(1) AIO_TrackingSet
チャンネル番号, 計測値と距離の変換係数, 距離0mmの測定値, 追従可能範囲の下限値, 追従可能範囲の上限値 [,追従可能範囲外での動作 [,距離追従を行う軸]]
(2) AIO_TrackingSet
チャンネル番号

パラメーター

チャンネル番号
使用する距離センサーが接続されているアナログI/Oのチャンネル番号を1~8の整数値で指定します。
計測値と距離の変換係数
距離センサーの計測値(V, mA)を、距離(mm)に変換する係数です。0をのぞく-500~500の実数で指定します。(単位: mm/V, mm/mA)
距離0mmの測定値
距離(変位計の場合: 変位量)が、0mmのときの電圧、または電流値を、下記の範囲の実数で指定します。(単位: V, mA)
アナログI/O基板の入力レンジ設定の範囲内の値を設定します。

入力レンジ設定 最小値 最大値
±10.24 V -10.24 V 10.24 V
±5.12 V -5.12 V 5.12 V
0-5.12 V 0 V 5.12 V
0-10.24 V 0 V 10.24 V
0-24 mA 0 mA 24 mA
追従可能範囲の下限値
追従可能範囲の下限値は、距離追従機能実行時に許容する変位量の下限値です。下限値は-300~300の実数で指定します。(単位: mm)
距離センサーの測定可能範囲の下限値より大きな値を指定してください。追従可能範囲の下限値は、追従可能範囲の上限値より小さい値を指定します。
追従可能範囲の上限値
追従可能範囲の上限値は、距離追従機能実行時に許容する変位量の上限値です。上限値は-300~300の実数で指定します。(単位: mm)
距離センサーの測定可能範囲の上限値より小さな値を指定してください。追従可能範囲の上限値は、追従可能範囲の下限値より大きい値を指定します。
追従可能範囲外での動作
追従可能範囲(上記、下限値から上限値の間)外の場合に、ロボットの動作を停止するか、継続するかを0~1の整数で指定します。省略可能です。省略された場合は、"0"が設定されます。定数は以下の通りです。
定数 内容
AIOTRACK_ERRSTOP 0 追従可能範囲外でロボットがエラー停止します。
AIOTRACK_CONTINUE 1 追従可能範囲外でロボットの動作を継続します。
距離追従を行う軸
距離追従を行う軸を0~5の整数で指定します。使用する距離センサーの計測方向と一致する軸を指定してください。
省略可能です。省略された場合は、"2"が設定されます。定数は以下の通りです。
定数 内容
AIOTRACK_TOOL_X 0 Tool座標X軸
AIOTRACK_TOOL_Y 1 Tool座標Y軸
AIOTRACK_TOOL_Z 2 Tool座標Z軸
AIOTRACK_ECP_X 3 ECP座標X軸
AIOTRACK_ECP_Y 4 ECP座標Y軸
AIOTRACK_ECP_Z 5 ECP座標Z軸

3~5は、外部制御点動作(ECP)オプションが有効である場合のみ指定可能です。

結果
書式2の場合は、現在の設定値をコンソールに表示します。

以下は、上記パラメーター名とコンソールで表示するパラメーター名の対応表です。

パラメーター名 コンソール表示名
計測値と距離の変換係数 ScaleFactor
距離0mmの測定値 RefVoltage
追従可能範囲の下限値 ThresholdMin
追従可能範囲の上限値 ThresholdMax
追従可能範囲外での動作 OutOfRangeMode
距離追従を行う軸 TrackingAxis

表示例は以下の通りです。

例1: チャンネル番号1が設定されている場合
Ch1: ScaleFactor 1.000[V/mm or mA/mm] RefVoltage 0.000 [V or mA] ThresholdMin -10.000[mm] ThresholdMax 10.000[mm] OutOfRangeMode AIOTRACK_ERRSTOP TrackingAxis AIOTRACK_TOOL_Z

例2: チャンネル番号1が設定されていない場合
Ch1: Undefined

解説
AIO_TrackingSetは、距離追従機能のパラメーターを設定します。設定するパラメーターは、使用する距離センサーや本機能を実施する環境によって決まります。コントローラー電源投入後、AIO_TrackingStart実行前に必ずAIO_TrackingSetを実行する必要があります。設定したパラメーターは、ロボットコントローラーの電源OFF、または再起動まで値を保持します。

以下は、パラメーターの詳細な説明です。

計測値と距離の変換係数
+1Vあたり+2mmの変位を表す距離センサーの場合、変換係数は2です。このとき、+2mmは距離が長くなる方向への変位です。変位計では、距離が短くなる方向の変位に対して電圧が正に設定されている場合があります。その場合は、変換係数は負の値となります。
距離0mmの測定値
距離センサー、特に変位計は、商品ごとに距離0mmのときの電圧、または電流値が異なります。また、ユーザーの設定で、距離0mmのときの電圧、または電流値を任意に設定できるものもあります。使用している距離センサーの設定に応じて値を指定してください。距離(または変位量)が、0mmのときに距離センサーの出力電圧が0Vの場合、本パラメーターは "0"です。
追従可能範囲の上,下限値
アプリケーションで許容されるばらつきに応じて、上下限値を設定します。 設定する値は、必ず距離センサーの測定可能範囲内の値に設定してください。距離センサーの測定可能範囲は、各センサーやユーザーの設定により異なります。距離追従機能実施前に、必ず確認してください。本パラメーターが、距離センサーの測定可能範囲外に設定された場合は、距離追従機能が正しく動作できず、ロボットが意図しない動作をする場合があります。
追従可能範囲外での動作
以下の図は、ToolのZ方向に対して距離追従機能を実施したときに、"追従可能範囲外での動作"パラメーターの設定を"0"にした場合と、"1"にした場合でのロボットの移動軌跡を示しています。
  • P1: 距離追従開始位置
  • P2: 目標位置

A点で計測範囲外になり、B点で計測範囲内に戻る対象物を図示しています。

距離追従機能は、機能を開始する位置P1でのTool Z方向の測定値(変位量)を基準値として、常に測定値が基準値になるようにロボットを制御します。そのため、P1からP2へ移動したとき、P1から点Aまでは測定値が一定になるようにロボットが移動します。

点Aに到達したとき、"0"が設定されている場合は、ロボットはA点でエラー停止します。"1"が設定されている場合は、点AからP2に向かって移動を継続します。ただし、追従可能範囲外のため、追従しません。点Bからは追従可能範囲内に入るため、P1から点Aまでと同様に測定値が一定になるようにロボットが移動します。

0: 範囲外でロボット動作停止 1: 範囲外でロボット動作継続
  • a: 距離追従機能 有効
  • b: 範囲外、距離追従機能 無効

"1"を設定した場合の追従可能範囲外でのロボット動作は、開始位置(P1)から、目標位置(P2)に向かってCP動作する軌道を移動します。以下の図では、追従可能範囲外である点A-B間の軌道が、P1-P2間の軌道と平行になります。点Bに到達後は、追従可能範囲内となるため、計測値を基準値にするロボットの制御が働き、急にロボットが移動する場合があります。

0: 範囲外でロボット動作停止 1: 範囲外でロボット動作継続

注意

各パラメーターが正しく設定されていない場合は、 AIO_TrackingStartが実行されたとき、ロボットが意図しない動作をする場合があります。

使用する機器や実施環境に応じて適切に設定してください。

異常な動作をした場合には、すぐに非常停止ボタンを押してください。

参照
AIO_TrackingStart, AIO_TrackingEnd, AIO_TrackingOn関数

AIO_TrackingSet使用例
P1を動作開始位置とし、P2を動作終了位置として、距離追従機能を使用してロボットが移動するプログラムの例です。

注意

使用例で設定しているパラメーターは参考値です。

設定したパラメーターや動作環境によっては作業が成功しない場合や、振動的な動作をする場合があります。

異常な動作をした場合には、すぐに非常停止ボタンを押してください。

Function Main
  Motor On
  Power High
  SpeedS 30
  AccelS 300,300

  Go P1    ' 開始位置P1に移動
  AIO_TrackingSet 1,1,0,-5,5,0,2    ' 距離追従機能の設定
  AIO_TrackingStart 1,5,5,5    ' 距離追従機能の開始
  Move P2    ' P2まで距離追従機能実行しながら移動
  AIO_TrackingEnd    ' 距離追従機能の終了
  Motor Off
Fend