押付け移動オブジェクトのプロパティー設定ガイドライン
Step 1. 基本情報を設定する
基本情報に関するプロパティー(Name, Description, Enabled, StepID, AbortSeqOnFail) を設定します。
プロパティー | 説明, 設定指針 |
---|---|
Name | フォースガイドオブジェクトの名前を設定します。 固有の名前を設定します。 |
Description | フォースガイドオブジェクトの説明を設定します。 動作の説明などを記述できます。任意の文字列を設定します。 |
Enabled | フォースガイドオブジェクトを実行するかどうかを設定します。 |
True : 通常の場合 | |
False : 別のフォースガイドオブジェクトを代わりに実行する場合など、フォースガイドオブジェクトを実行しない場合 | |
StepID | フォースガイドオブジェクト実行中のStepIDです。 任意のIDを設定します。 StepIDとは、ログデータに記録されるIDです。ログデータが、どの工程に対応するかを、理解しやすくするためのものです。 フォースガイドシーケンスのAutoStepIDがFalseの場合に適用されます。 |
AbortSeqOnFail | フォースガイドオブジェクトが失敗したときにフォースガイドシーケンスを終了するか継続するかを設定します。 |
True : 通常の場合 フォースガイドシーケンスを終了します。 | |
False : フォースガイドシーケンス中に失敗したときのリカバリー動作を含んでいる場合や、失敗してもフォースガイドシーケンスを継続可能な場合 |
Step 2. 開始前のI/O処理を設定する
フォースガイドオブジェクト開始前のI/O処理に関するプロパティー(IOPreprocEnabled, IOPreprocOutputBit, IOPreprocOutputStatus)を設定します。
プロパティー | 説明, 設定指針 |
---|---|
IOPreprocEnabled | フォースガイドオブジェクト開始時に出力ビットを操作するかどうかを設定します。 出力ビットは1個のみ操作可能です。複数の出力ビットを操作する場合は、SPEL関数オブジェクトを使用してください。 |
False : 通常の場合 | |
True : 周辺装置を動作/停止させるなど、出力ビットを操作する場合 | |
IOPreprocOutputBit | フォースガイドオブジェクト開始時に操作する出力ビットを指定します。 |
IOPreprocOutputStatus | フォースガイドオブジェクト開始時に出力ビットをオンするかオフするかを設定します。 出力する状態を指定します。 |
Step 3. 移動動作を設定する
移動に関するプロパティー(MotionTrajectory, AccelS, AccelR, SpeedS, SpeedR, CPEnabled)を設定します。
プロパティー | 説明, 設定指針 |
---|---|
MotionTrajectory | 移動させる軌道の種類を設定します。 |
Straight : 直線動作させたい場合 | |
Arc : 曲線動作させたい場合 | |
MultiStraight : 複数のポイントを連続で直線動作させたい場合 | |
MultiStraightCP : 複数のポイントを、軌道をつなげながら連続で直線動作させたい場合 | |
AccelS AccelR | 移動時の加速度を設定します。 AccelS: 並進加速度 AccelR: 回転角加速度 実際の加速度は、力制御機能によって補正されます。 |
SpeedS SpeedR | 移動時の並進速度を設定します。 SpeedS: 並進速度 SpeedR: 回転角速度 実際の速度は、力制御機能によって補正されます。 |
SpeedRPriority | 移動時にSpeedRプロパティーを優先させるかを設定します。 ポイント間の姿勢変化が移動距離に対して大きい場合、SpeedSプロパティーを使って動作すると、加速度エラーになることがあります。 AutoDistOrientRatioは、ポイント間の移動距離と姿勢変化から、自動的にSpeedRプロパティーを使うかを決定します。AutoDistOrientRatioを選択することを推奨します。 SpeedSプロパティー、またはSPeedRプロパティーに固定する場合は、DisabledまたはEnabledを選択します。 Disabled: 常にSpeedSプロパティーを使用する場合 Enabled: 常にSpeedRプロパティーを使用する場合 |
CPEnabled | パスモーションによって、押付け移動オブジェクトの軌道と、次のフォースガイドオブジェクトの軌道をつなげるかどうかを設定します。 True : 複数の押付け移動オブジェクトによって、複雑な軌道をつなげながら動作させる場合 |
Step 4. 目標位置を設定する
移動する軌道に関するプロパティー(DestType, DestPoint, MidPoint, RelativeOrient, RelativeRobotLocal, DestRelativeX, …, DestRelativeW, MidRelativeX, …, MidRelativeW)を設定します。
プロパティー | 説明, 設定指針 |
---|---|
DestType | 目標位置の指定方法を設定します。 力制御機能を使ったとき、ロボットの位置は、力によって補正されます。そのため、位置決めされた位置からの相対移動量で目標位置を指定することを推奨します。 RobotPoint : 指定するポイントへ移動する場合 Relative : 相対移動量を指定する場合 |
DestPoint | 目標位置を示すポイントを設定します。 MotionTrajectoryでStraightを選択した場合: 下図のように、フォースガイドオブジェクト開始位置から目標位置に向かう直線を移動します。 |
MidPoint | MotionTrajectoryがArcのときの、中継位置を示すポイントを設定します。 下図のように、中継位置を通って、目標位置へ向かう曲線を移動します。 |
RelativeOrient | 相対移動の基準とする座標系方向を設定します。 |
BaseかLocalを指定した場合: 外から見て、常に一定の方向に動作します。 下図は、Baseを設定した例です。例えば-Z方向に移動する場合、ロボット手先の姿勢が変わっても、常に鉛直下向き方向(ベース座標系の-Z方向)に移動します。(黒い矢印はロボットの動く方向を示します。) ベース座標系と異なる方向に移動したい場合は、ローカル座標系で指定します。 | |
Toolを指定した場合: 開始時の姿勢に合わせて、移動方向が変化します。 下図は、Toolを設定した例です。例えば+Z方向に移動した場合、開始時のロボット手先の姿勢にしたがって、移動方向が変わります。 | |
Base, Local: フォースガイドオブジェクト開始時の、ロボットの姿勢が変わっても、外から見て、常に一定の方向に移動したい場合 | |
Tool: ロボットの姿勢に合わせた方向に移動したい場合 | |
RelativeRobotLocal | RelativeOrientでLocalを指定したときに使用するローカル座標系番号を指定します。 |
DestRelativeX DestRelativeY DestRelativeZ DestRelativeU DestRelativeV DestRelativeW | フォースガイドオブジェクト開始位置から目標位置までの各方向の相対移動量を指定します。 下図のように、RelativeOrientで指定した座標系における移動量を指定します。 |
MidRelativeX MidRelativeY MidRelativeZ MidRelativeU MidRelativeV MidRelativeW | フォースガイドオブジェクト開始位置から中継位置までの各方向の相対移動量を指定します。 下図のように、RelativeOrientで指定した座標系における移動量を指定します。 |
StartPoint EndPoint | フォースガイドオブジェクトの連続動作開始位置と、終了位置を示すポイントを設定します。 下図のように、StartPointにP1、EndPointにP3を設定した場合、P1, P2, P3の順で連続移動させます。 |
Step 5. 力制御機能を設定する
力制御機能に関するプロパティー(Fx_ControlMode, …, Tz_ControlMode, Fx_PressForce, …, Tz_PressForce, Fx_Firmness, …, Tz_Firmness, CFEnabled)を設定します。
プロパティー | 説明, 設定指針 |
---|---|
Fx_ControlMode Fy_ControlMode Fz_ControlMode Tx_ControlMode Ty_ControlMode Tz_ControlMode | 各方向に対する力制御機能のモードです。 Press+ : 各軸の正方向にロボットが移動して押し付けます。 Press- : 各軸の負方向にロボットが移動して押し付けます。 Followを指定した方向: 力制御機能によって倣います。 Disabledを指定した方向: 力制御機能が無効になります。 押し付ける方向のControlModeを、Press+またはPress-にします。 倣いたい方向のControlModeをFollowにします。 1つ以上の方向をDisabled以外にしなければなりません。 |
Fx_PressForce Fy_PressForce Fz_PressForce Tx_PressForce Ty_PressForce Tz_PressForce | 各方向に加える力またはトルクを設定します。 ControlModeがPress+またはPress-の場合に使用されます。 ControlModeがPress+の場合: 負の値を設定します。 ControlModeがPress-の場合: 正の値を設定します。 嵌合や組み立て作業では、 Fx, Fy, Fzに、3~5[N]、または-3~-5[N]の力を使うことが多いです。ただし、作業やワークによって最適値は変化します。 |
Fx_Firmness Fy_Firmness Fz_Firmness Tx_Firmness Ty_Firmness Tz_Firmness | 各方向に対する力制御機能の硬さを設定します。 大きい値を設定した場合: 硬くなり、反応が遅くなります。 小さい値を設定した場合: 柔らかくなり、反応が早くなりますが、振動的になる場合があります。 |
CFEnabled | 次のフォースガイドオブジェクトまで、力制御機能を継続するかどうかを設定します。 False : 通常の場合 力制御機能を1度オフしてから、次のフォースガイドオブジェクトを実行します。 True : 接触後、力を一定に保ち続けたまま、次のフォースガイドオブジェクトを開始したい場合 |
ControlModeは、シミュレーター機能によって設定状態を確認できます。
有効にした方向以外がグレイアウト表示された座標系が表示されます。ただし、ロボットは、現在位置を基に表示されます。フォースガイドオブジェクトを実行する位置姿勢にした状態で確認してください。
シミュレーター機能による表示方法は、次のマニュアルを参照してください。
"Epson RC+ 8.0 ユーザーズガイド - シミュレーター - 機能説明"
Step 6. 終了条件の基本情報を設定する
終了条件の組み合わせに関するプロパティー(EndCheckOperator)を設定します。
プロパティー | 説明, 設定指針 |
---|---|
EndCheckOperator | 力, 位置, I/Oに関する終了条件の組み合わせ方を指定します。 |
AND : 使用する全ての条件を満たしたとき終了する場合 | |
OR : 1つ以上の条件を満たしたとき終了する場合 |
Step 7. 力に関する終了条件を設定する
力の終了条件に関するプロパティー(ForceCheckEnabled, ForceCheckMode, ForceCheckPolarity, PressCheckTolF, PressCheckTolT, FollowCheckTolF, FollowCheckTolT, HoldTimeThresh)を設定します。
プロパティー | 説明, 設定指針 |
---|---|
ForceCheckEnabled | 力に関する終了条件を有効にするかどうかを設定します。 True : 力に関する終了条件を有効にする場合 |
ForceCheckMode | 判定の対象とする方向です。 |
Press : 押し付け方向のみを判定対象とします。 ControlModeで指定した方向(Press+, Press-)を判定対象とします。 | |
PressFollow : 押し付け方向と倣い方向を判定対象とします。 ControlModeで指定した方向(Press+, Press-, Follow)を判定対象とします。 | |
ForceCheckPolarity | 力に関する終了条件の極性です。 |
Inside : 通常指定します。 範囲内になることを条件とします。 | |
Outside : 範囲外になることを条件とします。 押し付け状態で開始して押し付け状態が解除されたことを終了条件とするなど、特殊な終了条件を使用する場合にOutsideを使用することがあります。 | |
PressCheckTolF PressCheckTolT | 力に関する終了条件の、押し付け方向の範囲です。終了条件とする範囲を設定します。 PressCheckTolFがFx, Fy, Fzに、 PressCheckTolTがTx, Ty, Tzに適用されます。 Fx, Fy, Fz のControlModeで指定した方向(Press+, Press-)の力が、PressForce±PressCheckTolFの範囲に入ることを監視します。 Tx, Ty, Tz のControlModeで指定した方向(Press+, Press-)のトルクが、PressForce±PressCheckTolTの範囲に入ることを監視します。 下図は、PressCheckTolFのイメージです。 |
FollowCheckTolF FollowCheckTolT | 力に関する終了条件の、倣い方向の範囲を設定します。 FollowCheckTolFがFx, Fy, Fzに、 FollowCheckTolTがTx, Ty, Tzに適用されます。 Fx, Fy, Fz のControlModeでFollowを指定した方向の力が、±FollowCheckTolFの範囲に入ることを監視します。 Tx, Ty, Tz のControlModeでFollowを指定した方向のトルクが、±FollowCheckTolTの範囲に入ることを監視します。 下図は、FollowCheckTolFのイメージです。 |
HoldTimeThresh | 終了条件を満たしたと判定する継続時間を設定します。 下図のように、指定した条件がHoldTimeThreshで指定した時間の間継続したとき、終了条件を満たしたと判定します。 通常は“0”を設定します。 次に実行するフォースガイドオブジェクトの動作が安定しない場合に、整定したことを確認するための時間を設定します。 終了条件を一時的に無効にして実行したときの実際の結果から、時間を決定することを推奨します。 |
Step 8. 位置に関する終了条件を設定する
位置の終了条件に関するプロパティー(PosCheckEnabled, PosCheckType, PlaneNumber, PlaneEndCond, PlaneRelativeOrg, PlaneRelativeX, PlaneRelativeY, PlaneRelativeZ, PlaneRelativeOrient, PlaneAxes, PlaneRelativeRobotLocal)を設定します。
プロパティー | 説明, 設定指針 |
---|---|
PosCheckEnabled | 位置に関する終了条件を有効にするかどうかを設定します。 |
True : 位置に関する終了条件を有効にする場合 | |
False : 位置に関する終了条件を無効にする場合 | |
PosCheckType | 位置に関する終了条件の種類を選択します。 |
RobotPlaneを選択した場合: 設定されているPlaneを終了条件の基準とします。 下図のように、Robotの位置姿勢に関わらず、一定の位置を基準とした終了条件を設定する場合に使用します。 | |
RelativePlaneを選択した場合: フォースガイドシーケンスを実行するたび、現在位置からの相対位置にPlaneを作成して位置の終了条件とします。 下図のように、開始時の位置姿勢に合わせて終了条件とする位置を変更する場合に使用します。 | |
PlaneNumber | 位置の終了条件に使うPlane番号を設定します。 |
PosCheckTypeがRobotPlaneの場合: 指定した番号のPlaneを基準とした終了条件が設定されます。 | |
PosCheckTypeがRelativePlaneの場合: フォースガイドシーケンスを実行するたび、指定した番号に新しくPlaneを設定します。 空いているPlane番号を設定してください。 | |
PlaneEndCond | 位置の終了条件とする状態を設定します。 平面に入った状態(Inside)と出た状態(Outside)のどちらかを終了条件として設定します。 設定した状態になったとき、位置の終了条件を満たしたと判定します。 平面に入った状態: 平面の+Z方向に位置する状態です。 |
PlaneRelativeOrg | 平面の原点位置までのオフセット量を、どの座標系方向を基準に表現するかを設定します。 下図左は、Baseを設定した例です。 ベース座標系を基準として相対距離を指定します。 PlaneRelativeZに負の値が設定された例となります。 下図右は、Toolを設定した例です。 ツール座標系を基準として相対距離を指定します。 PlaneRelativeZに正の値が設定された例となります。 ローカル座標系やツール座標系は、その方向のみ参照され、原点位置は影響しません。 ロボットの動作方向に終了条件とする位置を設定するため、通常は、フォースガイドシーケンスのForceOrientと一致する値を設定します。 |
PlaneRelativeX PlaneRelativeY PlaneRelativeZ | 現在位置から平面の原点位置までの各方向のオフセット量を設定します。 方向は、PlaneRelativeOrgで指定した座標系の方向になります。 |
PlaneRelativeOrient | 平面方向の基準とする座標系を設定します。 下図左は、Baseを設定した例です。 フォースガイドオブジェクト開始時のロボットの姿勢に関わらず、平面の基準とする方向がベース座標系と一致します。 下図右は、Toolを設定した例です。 フォースガイドオブジェクト開始時のロボットの姿勢に合わせて、平面の基準とする方向が変化します。 ロボットの動作方向に垂直な面を終了条件とするため、通常は、フォースガイドシーケンスのForceOrientと一致する値を設定します。 |
PlaneAxes | 平面方向を設定します。 PlaneRelativeOrientで指定した座標系を基準として、PlaneAxesで指定した方向に平面が設定されます。 下図は、PlaneRelativeOrientでBaseを指定した例です。 左はPlaneAxesでXYを、右はPlaneAxesでYZを指定した例です。 通常、動作方向に垂直な平面の方向を設定します。 |
PlaneRelativeRobotLocal | PlaneRelativeOrgとPlaneRelativeOrientがLocalのときに使用するローカル座標系番号を指定します。 通常、フォースガイドシーケンスのRobotLocalと一致する値を設定します。 |
Step 9. I/Oに関する終了条件を設定する
I/Oの終了条件に関するプロパティー(IOCheckEnabled, IOCheckInputBit, IOCheckInputStatus)を設定します。
プロパティー | 説明, 設定指針 |
---|---|
IOCheckEnabled | I/Oに関する終了条件を有効にするかどうかを設定します。 True : I/Oに関する終了条件を有効にする場合 |
IOCheckInputBit | 終了条件として監視する入力ビットを指定します。 |
IOCheckInputStatus | 終了条件とする入力ビットの状態を設定します。 IOCheckInputBitで指定した入力ビットが、IOCheckInputStatusで指定した状態になったとき、終了条件を満たしたと判定します。 |