AIO_TrackingStart
距離追従機能を開始します。
書式
AIO_TrackingStart チャンネル番号,ProportionalGain [,IntegralGain [,DifferentialGain]]
パラメーター
- チャンネル番号
- 使用する距離センサーが接続されているアナログI/Oのチャンネル番号を1~8の整数値で指定します。
- ProportionalGain
- 距離追従機能の比例ゲインを、0をのぞく50以下の正の実数で指定します。ロボット移動速度やワークの形状などにより最適値が変わるため、使用環境に応じて設定が必要です。
- IntegralGain
- 距離追従機能の積分ゲインを、100以下の正の実数で指定します。省略可能です。省略された場合は、"0"が設定されます。距離追従精度を上げる場合は、積分ゲインを調整してください。
- DifferentialGain
- 距離追従機能の微分ゲインを、100以下の正の実数で指定します。省略可能です。省略された場合は、"0"が設定されます。距離追従精度を上げる場合は、微分ゲインを調整してください。
解説
距離追従機能は、アナログI/Oに接続された距離センサーの計測値を使って、ロボットとワークの距離を一定に保持するようにロボットを制御する機能です。
制御するロボットの軸方向は、AIO_TrackingSetのパラメーター"距離追従を行う軸"で指定した1つの軸です。保持する距離を"基準値"とすると、本コマンドが実行されたとき、距離センサーで計測した距離が基準値となります。
距離追従機能は、AIO_TrackingStart実行により開始され、AIO_TrackingEnd実行で終了します。AIO_TrackingEndを実行するまでは、距離追従機能が動作し続けます。距離追従機能を使用しない場合は、直ちにAIO_TrackingEnd を実行し、距離追従機能を終了してください。
AIO_TrackingSetが実行される前に、AIO_TrackingStartを実行した場合はエラーになります。必ずAIO_TrackingSet実行後、AIO_TrackingStartを実行してください。
距離追従機能が使えるロボットタイプは、水平多関節型(RSシリーズを含む)と垂直6軸型(Nシリーズを含む)です。
距離追従機能実行中に、ロボットは動作できますが、CP動作に限定されます。PTP動作はできません。
距離追従機能実行中に特異点近傍を通過した場合は、エラーになります。
以下のコマンドは距離追従機能実行中に実行できません。
| MOTOR OFFになるコマンド | Motor off, SFree |
| PTP動作コマンド | BGo, Go, JTran, Jump, Jump3, Jump3CP, JumpTLZ, Pass, Ptran, Pulse, TGo |
| 力覚制御実行コマンド | FCKeep, FC付き動作命令, FS#.Reset, FS.Reboot |
| トルク制御実行コマンド | TC |
| コンベヤートラッキング実行コマンド | 動作命令 + Cnv_QueGet |
| VRT実行コマンド | VRT, VRT_CPMotion |
| 設定変更コマンド | AIO_TrackingSet, Arm, ArmSet, Base, Calib, CalPls, ECP, ECPSet, Hofs, Inertia, MCal, Power, TLSet, Tool, Weight (AIO_TrackingSet, ArmSet, ECPSet, TLSetは、使用中の番号に関する変更のみエラーになります。) |
| その他 | Brake, Here, Home, VCal, WaitPos |
ProportionalGain, IntegralGain, DifferentialGainの設定
ProportionalGainは、設定する値を大きくするほど、ロボットが速く追従します。ただし、値が大き過ぎるとロボットが速く動作して、エラーが発生することがあります。
IntegralGainとDifferentialGainは、省略可能です。補正精度を上げる場合は、設定が必要です。
適切な値を設定しないと、ロボットが高速で動作したり、発振したりする場合があります。
各ゲインの設定方法は、以下のマニュアルを参照してください。
"Epson RC+ ユーザーズガイド - 距離追従機能"
注意
ProportionalGain, IntegralGain, DifferentialGainは、大きすぎる値を設定した場合、ロボットが意図しない動作をする場合があります。
各パラメーターは、段階的に大きな値に変更してくだい。1度に大きな値に変更すると、ロボットが意図しない動作をすることがあり、大変危険です。
異常な動作をした場合には、すぐに非常停止ボタンを押してください。
参照
AIO_TrackingSet, AIO_TrackingEnd, AIO_TrackingOn関数
AIO_TrackingStart使用例
P1を動作開始位置とし、P2を経由してP3を動作終了位置として、距離追従機能を使用してロボットが移動するプログラムの例です。
注意
使用例で設定しているパラメーターは参考値です。
設定したパラメーターや動作環境によっては作業が成功しない場合や、振動的な動作をする場合があります。
また、異常な動作をした場合には、すぐに非常停止ボタンを押してください。
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,1,0,0 ' 距離追従機能の開始
Move P2 ' P2まで距離追従機能実行しながら移動
Move P3 ' P3まで距離追従機能実行しながら移動
AIO_TrackingEnd ' 距離追従機能の終了
Motor Off
Fend