押付け探りオブジェクトのプロパティー設定ガイドライン

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. 探り動作を設定する
探り動作に関するプロパティー(ProbeTrajectory, ProbeDetectType, AccelS, SpeedS, SpiralDiam, SpiralPitch, DestRelativeX, DestRelativeY, DestRelativeZ)を設定します。

プロパティー
説明, 設定指針
ProbeTrajectory

探る軌道を設定します。

検出対象により下記から選択します。

螺旋軌道 : 検出対象が穴の場合
直線軌道 : 検出対象が障害物の場合
Straight : 指定直線上に対象があることが分かっている場合
Spiral : 指定直線上に対象がない場合
ProbeDetectType

検出する対象物を設定します。

穴と、障害物を選択できます。

障害物とは、探る面上にある凸形状です。

AccelS

移動時の並進加速度を設定します。

実際の並進加速度は、力制御機能によって補正されます。

SpeedS

移動時の並進速度を設定します。

実際の並進速度は、力制御機能によって補正されます。

SpiralDiam

SpiralPitch

螺旋軌道の直径とピッチを設定します。

画像

SpiralDiam :

開始位置からバラツキを含めた検出対象の位置までの距離の最大値に、マージンを含めた値を設定します。

例: 最大値を1.1倍した数値

SpiralPitch :

対象物を通り過ぎないように設定します。

穴を検出する場合は、最小隙間よりも小さい値を設定します。

DestRelativeX

DestRelativeY

DestRelativeZ

フォースガイドオブジェクト開始位置から目標位置までの各方向の相対移動量を設定します。

下図のように、フォースガイドシーケンスのForceOrientで指定した座標系における移動量を指定します。

画像

Step 4. 力制御機能を設定する
力制御機能に関するプロパティー(PressOrient, PressForce, PressFirmnessF, CFEnabled)を設定する。

プロパティー
説明, 設定指針
PressOrient

押付ける方向です。探る面に垂直な方向を指定します。

指定した方向に押し付けながら、Step3で指定した軌道を移動して検出対象を探ります。

PressForce

押付ける力を設定します。

PressOrientが正方向の場合: 負の値を入力します。

PressOrientが負方向の場合: 正の値を入力します。

通常、3~5N程度を使用しますが、お客様のワークが許容する値にしてください。

値が小さ過ぎる場合、探る面から離れることがあります。

PressFirmnessF

押付け方向の力制御機能の硬さを設定します。

値が大きくなると、硬くなり、反応が遅くなります。

小さくすると、柔らかくなり、反応が早くなりますが、振動的になる場合があります。

CFEnabled 次のフォースガイドオブジェクトまで、力制御機能を継続するかどうかを設定します。

False : 通常の場合

力制御機能を1度オフしてから、次のフォースガイドオブジェクトを実行します。

True : 対象物を検出しても、力を一定に保ち続けたまま、次のフォースガイドオブジェクトを開始したい場合

次のフォースガイドオブジェクトは、ContactOrientで選択した方向の力制御を継続しなければなりません。

Step 5. 終了条件の基本情報を設定する
終了条件の組み合わせに関するプロパティー(EndCheckOperator)を設定します。

プロパティー
説明, 設定指針
EndCheckOperator

力と位置に関する終了条件の組み合わせ方を指定します。

AND : 両方の条件を満たしたとき終了する場合

OR : 1つ以上の条件を満たしたとき終了する場合

Step 6. 力に関する終了条件を設定する
力の終了条件に関するプロパティー(ForceCheckEnabled, ProbeDetectThresh)を設定します。

プロパティー
説明, 設定指針
ForceCheckEnabled

力に関する終了条件を有効にするかどうかを設定します。

押付け探りオブジェクトでは、ForceCheckEnabledとPosCheckEnabledを1つ以上有効にしなければなりません。

True : 力に関する終了条件を有効にする場合

ProbeDetectTypeがObstacleの場合に選択します。

ProbeDetectTypeがHoleの場合は、必要に応じてTrueを選択します。

ProbeDetectThresh 対象を検出したと判定する閾値を設定します。

ProbeDetectTypeがHoleの場合:

PressOrientで指定した方向の力に対する閾値です。

PressOrientが正方向の場合:

負の値を設定します。

PressOrientが負方向の場合:

正の値を設定します。

下記グラフは、PressOrientで負方向を指定した例です。

"探る面上で押し付けている間は力がかかりますが、穴の位置に移動すると非接触状態になるため、力の絶対値が小さくなります。

画像

ProbeDetectTypeがObstacleの場合:

PressOrientで指定しない2方向の二乗和平方根に対する閾値です。

正の値を設定します。

下記グラフは、PressOrientで-Fzを指定した例です。

"Fxと探り中は、探る面に対する摩擦によって小さい力が検出され、障害物に接触すると大きな力が検出されます。

画像

穴を検出する場合:

通常“0”を指定します。

穴上に移動しても力が “0”にならない場合:

探り中の力の絶対値に対して十分小さい値を設定します。

障害物を検出する場合:

探り中の力に対して十分大きく接触時の力より小さな値を設定します。

Step 7. 位置に関する終了条件を設定する
位置の終了条件に関するプロパティー(PosCheckEnabled, PosCheckType, PlaneNumber, PlaneEndCond, PlaneRelativeOrg, PlaneRelativeX, PlaneRelativeY, PlaneRelativeZ, PlaneRelativeOrient, PlaneAxes, PlaneRelativeRobotLocal)を設定します。

プロパティー
説明, 設定指針
PosCheckEnabled

位置に関する終了条件を有効にするかどうかを設定します。

押付け探りオブジェクトでは、ForceCheckEnabledとPosCheckEnabledを1つ以上有効にしなければなりません。

ProbeDetectTypeがHoleの場合に使用することがあります。

通常、Obstacleの場合は使用しません。

穴を見つける場合、下図の様に探る面から一定距離穴方向に進んだことを終了条件とすることができます。

画像

True : 位置に関する終了条件を有効にする場合

PosCheckType 位置に関する終了条件の種類を選択します。

RobotPlaneを選択した場合:

設定されているPlaneを終了条件の基準とします。

下図のように、Robotの位置姿勢に関わらず、一定の位置を基準とした終了条件を設定する場合に使用します。

画像

RelativePlaneを選択した場合:

フォースガイドシーケンスを実行するたび、現在位置からの相対位置にPlaneを作成して位置の終了条件とします。

下図のように開始時の位置姿勢に合わせて終了条件とする位置を変更する場合に使用します。

画像

PressProbeでは、RelativePlaneを使うことを推奨します。
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を指定した例です。

画像

通常、PressProbeではPressOrientで指定した方向に垂直な平面を指定します。

PlaneRelativeRobotLocal

PlaneRelativeOrgと、PlaneRelativeOrientがLocalのときに使用するローカル座標系番号を指定します。

通常、フォースガイドシーケンスのRobotLocalと一致する値を設定します。