ネジ締めオブジェクト
ネジ締めオブジェクトは、指定方向に指定の力で押し付けながら、ネジ締めを行うフォースガイドオブジェクトです。
上図は、ネジ締めオブジェクトの動作のイメージです。非接触状態から実行して、白い矢印方向で示すネジ締め方向に移動します。接触状態になってからは、黄色い矢印方向で示すネジ締め方向に、一定の押し付け力でネジ締めを行います。
ネジ締めオブジェクトは、ドライバーのネジ締め完了信号と力と位置に関する終了条件が使用できます。各終了条件は必ず使用されます。
各終了条件の成功条件を全てが満たされた場合: ネジ締めオブジェクトの実行を終了し成功したと判定して、次のフォースガイドオブジェクトへ進みます。ネジ締め直し動作を有効にした場合は、ネジ締め直しオブジェクトを飛ばして、その次のオブジェクトへ進みます。
各終了条件の失敗条件を1つでも満たされた場合: ネジ締めオブジェクトの実行を終了し失敗したと判定して、フォースガイドシーケンスの実行を中断します。ネジ締め直し動作を有効にした場合は、ドライバーのネジ締め完了信号を受け取り、かつ、位置の終了条件の失敗条件を満たしたときに、ネジ締めオブジェクトの実行を終了しネジが噛んだと判断して、ネジ締め直しオブジェクトへ進みます。
終了条件 | 成功条件 |
---|---|
ネジ締め完了信号に関する終了条件 | ドライバーからネジ締め完了信号を受け取ること |
位置に関する終了条件 | PressOrientで指定した軸方向の、フォースガイドオブジェクト開始位置からの移動距離がApproachDist+ScrewLength±DistCheckTolの範囲に入ること |
終了条件 | 失敗条件 |
---|---|
ネジ締め完了信号に関する終了条件 | フォースガイドオブジェクト開始位置から、ApproachDistとInsertDepthで指定した分移動したが、ドライバーからネジ締め完了信号を受け取れないこと |
位置に関する終了条件 | ネジ締め完了信号を受け取る前に、以下を満たすこと ネジ締め完了信号を受け取る前に、以下を満たすこと PressOrientで指定した軸方向の、フォースガイドオブジェクト開始位置からの移動距離がApproachDist+InsertDepth+DistCheckTolを超えること または、ネジ締め完了信号を受け取った場合に、以下を満たすこと PressOrientで指定した軸方向の、フォースガイドオブジェクト開始位置からの移動距離がApproachDist+InsertDepth-DistCheckTolに達していないこと |
力に関する終了条件 | PressOrientで指定した軸方向の、押し付け力がCollisionForceThreshで設定した値を超えること |
ネジ締めオブジェクトのプロパティーガイドライン
Step 1. 基本情報を設定する
基本情報に関するプロパティー (Name, Description, StepID, AbortSeqOnFail) を設定します。
プロパティー | 説明, 設定指針 |
---|---|
Name | フォースガイドオブジェクトの名前を設定します。 固有の名前を設定します。 |
Description | フォースガイドオブジェクトの説明を設定します。 動作の説明などを記述できます。任意の文字列を設定します。 |
StepID | フォースガイドオブジェクト実行中のStepIDです。 任意のIDを設定します。 StepIDとは、ログデータに記録されるIDです。ログデータが、どの工程に対応するかを、理解しやすくするためのものです。 フォースガイドシーケンスのAutoStepIDがFalseの場合に適用されます。 |
AbortSeqOnFail | フォースガイドオブジェクトが失敗したときにフォースガイドシーケンスを終了するか継続するかを設定します。 |
True : 通常の場合 フォースガイドシーケンスを終了します。 | |
False : フォースガイドシーケンス中に失敗したときのリカバリー動作を含んでいる場合や、失敗してもフォースガイドシーケンスを継続可能な場合 |
Step 2. 移動動作を設定する
移動に関するプロパティー (AccelS, SpeedS)を設定します。
プロパティー | 説明, 設定指針 |
---|---|
AccelS | 移動時の並進加速度を設定します。 シーケンスウィザードで設定した、ドライバー回転速度とネジのリード長から自動で設定されます。ネジ締めが上手くいかない場合は、値を変更することができます。 実際の加速度は、力制御機能によって補正されます。 |
SpeedS | 移動時の並進速度を設定します。 シーケンスウィザードで設定した、ドライバー回転速度とネジのリード長から自動で設定されます。ネジ締めが上手くいかない場合は、値を変更することができます。 実際の速度は、力制御機能によって補正されます。 |
Step 3. 目標位置を設定する
移動する軌道の目標位置に関するプロパティー(ApproachDist,ScrewLength)を設定します。
プロパティー | 説明, 設定指針 |
---|---|
ApproachDist | フォースガイドオブジェクト開始位置から、ネジ穴の上面までのアプローチ距離を設定します。 下図のように、アプローチ距離は緑色の点で示すフォースガイドオブジェクトを開始したときの把持しているネジの端点と、ネジ穴の上面までの1の距離です。 できるだけアプローチ距離が短くなるように、動作開始位置を教示してください。力制御機能は位置制御と比べて速度が遅いため、アプローチ距離が長いほどサイクルタイムが遅くなります。 |
ScrewLength | ネジの長さを設定します。 ApproachDistの図のように、ScrewLengthは2の長さです。 |
Step 4. 力制御機能を設定する
力制御機能に関するプロパティー(PressOrient, PressForce, PressFirmnessF, FollowOrient, FollowFirmnessF)を設定する。
プロパティー | 説明, 設定指針 |
---|---|
PressOrient | ネジ締めする方向を設定します。 ロボットは指定方向へ移動します。 |
PressForce | ネジ締め方向に加える押し付け力を設定します。 PressOrientが正方向の場合: 負の値を入力します。 PressOrientが負方向の場合: 正の値を入力します。 |
PressFirmnessF | ネジ締め方向の力制御機能の硬さを設定します。 |
大きい値を設定した場合: 硬くなり、反応が遅くなります。 | |
小さい値を設定した場合: 柔らかくなり、反応が早くなりますが、振動的になる場合があります。 | |
FollowOrient | PressOrientの方向以外に、倣いながら移動する方向です。 PressOrientにしたがって自動で変化します。読み取り専用です。変更できません。 |
FollowFirmnesF | ネジ締め方向以外の並進方向の力制御機能の硬さを設定します。 |
大きい値を設定した場合: 硬くなり、反応が遅くなります。 | |
小さい値を設定した場合: 柔らかくなり、反応が早くなりますが、振動的になる場合があります。 |
Step 5. 力に関する終了条件を設定する
力の終了条件に関するプロパティー(CollisionForceThresh)を設定します。
プロパティー | 説明, 設定指針 |
---|---|
CollisionForceThresh | ネジ締め動作中、ネジがネジ穴以外に衝突したと検知する力を設定します。 押し付け力が設定した値を超えた場合、失敗となります。 押し付け力は、ネジとネジ穴とで生じる摩擦力などによってPressForceの値より大きくなる可能性があるため、PressForceで設定した力より十分大きい値にしてください。 |
Step 6. 位置に関する終了条件を設定する
位置の終了条件に関するプロパティー (DistCheckTol)を設定します。
プロパティー | 説明, 設定指針 |
---|---|
DistCheckTol | 位置に関する終了条件の、ネジ締め方向の範囲を設定します。 PressOrientで指定されている方向の、動作開始位置からの移動距離が、ApproachDist+ScrewLength±DistCheckTolの範囲に入ることを監視します。 下図がDistCheckTolのイメージです。 |
ネジ締めオブジェクトのプロパティー詳細
- Nameプロパティー
フォースガイドオブジェクトに割りあてる固有の名前を設定します。
ネジ締めシーケンスを作成すると、自動的に名前が割りあてられます。自動的に割りあてられる名前は、ScrewTighten01のように、ScrewTightenの後ろに数字が組み合わせられます。
名前は、変更できます。最大16文字まで指定できます。半角英数字と“_” (アンダースコア)が使用できます。先頭の文字を数字にすることはできません。
- Descriptionプロパティー
フォースガイドオブジェクトの説明を設定します。任意の文字列を255文字まで指定できます。
- StepIDプロパティー
フォースガイドオブジェクト実行中のStepIDを指定します。AutoStepIDがFalseの場合のみ使用されます。
デフォルト: フォースガイドシーケンスとフォースガイドオブジェトの番号から自動設定されます。値最小値 0 最大値 32767
- AbortSeqOnFailプロパティー
フォースガイドオブジェクト失敗時の処理を指定します。
Trueを指定した場合、フォースガイドオブジェクトが失敗したとき、フォースガイドシーケンスを終了し、次のSPELステートメントへ進みます。
Falseを指定した場合、フォースガイドオブジェクトが失敗しても、フォースガイドシーケンスを終了せず、次のフォースガイドオブジェクトへ進みます。
失敗した場合のリカバリー処理をフォースガイドシーケンス内に含める場合などフォースガイドシーケンスを継続したい場合に使用します。
デフォルト: True値説明True フォースガイドオブジェクト失敗時、シーケンスを終了します。 False フォースガイドオブジェクト失敗時、次のフォースガイドシーケンスを開始します。
- SpeedSプロパティー
フォースガイドオブジェクト実行中の速度を指定します。
ネジ締めシーケンスを作成すると、シーケンスウィザードで設定した、ドライバー回転速度とネジのリード長から自動で設定されます。
ただし、この設定値は設定された軌道に関する速度となるため、実際の速度は力制御機能によって補正されます。
デフォルト: 5値 (単位: [mm/sec])最小値 0.1 最大値 200
- AccelSプロパティー
フォースガイドオブジェクト実行中の加速度を指定します。
ネジ締めシーケンスを作成すると、シーケンスウィザードで設定した、ドライバー回転速度とネジのリード長から自動で設定されます。
ただし、この設定値は設定された軌道に関する加速度となるため、実際の加速度は力制御機能によって補正されます。
デフォルト: 50値 (単位: [mm/sec2])最小値 1 最大値 2000
- ApproachDistプロパティー
フォースガイドオブジェクト開始位置から、挿入作業開始位置までの移動距離を指定します。
できるだけ移動距離が短くなるように、動作開始位置を教示してください。力制御機能は位置制御と比べて速度が遅いため、移動距離が長いほどサイクルタイムが遅くなります。
デフォルト: 10値 (単位: [mm])最小値 0 最大値 50
- ScrewLengthプロパティー
ネジの長さを指定します。
デフォルト: 10値 (単位: [mm])最小値 1 最大値 100
- PressOrientプロパティー
フォースガイドシーケンスのForceOrientで指定した座標系における、ネジ締め作業の動作方向を指定します。
デフォルト: +Fz値説明+Fx 指定座標系の+Fx方向に動作方向を指定します。 -Fx 指定座標系の-Fx方向に動作方向を指定します。 +Fy 指定座標系の+Fy方向に動作方向を指定します。 -Fy 指定座標系の-Fy方向に動作方向を指定します。 +Fz 指定座標系の+Fz方向に動作方向を指定します。 -Fz 指定座標系の-Fz方向に動作方向を指定します。
- PressForceプロパティー
フォースガイドオブジェクト動作中の、フォースガイドオブジェクトのPressOrientで指定した動作方向への押し付け力を指定します。PressOrientが+Fx, +Fy, +Fzの場合
値 (単位: [N])最小値 -50 最大値 0 デフォルト: -4
PressOrientが-Fx, -Fy, -Fzの場合
値 (単位: [N])最小値 0 最大値 50 デフォルト: 4
- PressFirmnessFプロパティー
フォースガイドオブジェクト動作中のフォースガイドオブジェクトのPressOrientで指定した動作方向の力制御機能に関する硬さを指定します。
PressFirmnessFの値が大きくなると、動作方向の力制御機能が硬くなり、力の変化への応答が遅くなりますが、発振しにくくなります。
PressFirmnessFの値が小さくなると、動作方向の力制御機能が柔らかくなり、力の変化への応答が早くなりますが、発振しやすくなります。
デフォルト: 2値最小値 0.1 最大値 10
- FollowOrientプロパティー
ネジ締め作業に設定されている、並進の倣い方向です。
本プロパティーはフォースガイドオブジェクトのPressOrientで指定した動作方向から自動で設定されます。変更できません。
デフォルト: FxFy値説明FyFz FyFz方向に倣います。 FxFz FxFz方向に倣います。 FxFy FxFy方向に倣います。
- FollowFirmnessFプロパティー
フォースガイドオブジェクト動作中の、倣う方向の力の力制御機能に関する硬さを指定します。
FollowFirmnessFの値が大きい場合: 倣う方向の力の力制御機能が硬くなり、力の変化への応答が遅くなりますが、発振しにくくなります。
FollowFirmnessFの値が小さい場合: 倣う方向の力の力制御機能が柔らかくなり、力の変化への応答が早くなりますが、発振しやすくなります。
デフォルト: 1値最小値 0.1 最大値 10
- CollisionForceThreshのプロパティー
ネジ締め動作中、ネジがネジ穴以外に衝突したと検知する力を設定します。
PressForceで設定した力より十分大きい値にしてください。PressOrientが+Fx, +Fy, +Fzの場合
値 (単位: [N])最小値 -100 最大値 -10 デフォルト: -30
PressOrientが-Fx, -Fy, -Fzの場合
値 (単位: [N])最小値 10 最大値 100 デフォルト: 30
- DistCheckTolプロパティー
作業が終了したときに、動作開始位置から移動した距離の成功条件となる範囲を指定します。
ApproachDist + ScrewLength ± DistCheckTolの範囲を成功条件とします。
デフォルト: 1値最小値 0.01 最大値 10
ネジ締めオブジェクトのリザルト詳細
- EndStatusリザルト
実行した結果です。
以下の冒頭に記載されている「成功条件」を満たした場合、成功となります。
ネジ締めオブジェクト値説明Passed フォースガイドオブジェクトが成功した。 Failed フォースガイドオブジェクトが失敗した。 NoExec フォースガイドオブジェクトが実行されなかった。 Aborted フォースガイドオブジェクトの実行中に停止した。 FailedCont フォースガイドオブジェクトは失敗したが、次のフォースガイドオブジェクトを実行した。
- Timeリザルト
実行にかかった時間です。
単位: [sec]
- EndForcesリザルト
フォースガイドオブジェクト終了時の力やトルクです。Fx, Fy, Fz, Tx, Ty, Tzそれぞれの値を取得します。
単位: Fx, Fy, Fz [N] / Tx, Ty, Tz [N・mm]
- EndPosリザルト
フォースガイドオブジェクト終了時の位置姿勢です。X, Y, Z, U, V, Wそれぞれの値を取得します。
単位: X, Y, Z [mm] / U, V, W [deg]
- AvgForcesリザルト
フォースガイドオブジェクト実行中の力やトルクの平均値です。Fx, Fy, Fz, Tx, Ty, Tzそれぞれの値を取得します。
単位: Fx, Fy, Fz [N] / Tx, Ty, Tz [N・mm]
- PeakForcesリザルト
フォースガイドオブジェクト実行中の力やトルクのピーク値です。ピーク値は、絶対値が一番大きな値です。Fx, Fy, Fz, Tx, Ty, Tzそれぞれの値を取得します。
単位: Fx, Fy, Fz [N] / Tx, Ty, Tz [N・mm]
- TriggeredForcesリザルト
終了条件を満たした時の力やトルクです。Fx, Fy, Fz, Tx, Ty, Tzそれぞれの値を取得します。
単位: Fx, Fy, Fz [N] / Tx, Ty, Tz [N・mm]
- TriggeredPosリザルト
終了条件を満たした時の位置姿勢です。X, Y, Z, U, V, Wそれぞれの値を取得します。
単位: X, Y, Z [mm] / U, V, W [deg]
- PosCondOKリザルト
位置に関する終了条件を満たしたかどうかを示します。値説明True 位置に関する終了条件を満たした。 False 位置に関する終了条件を満たさなかった。
- IOCondOKリザルト
I/Oに関する終了条件を満たしたかどうかを示します。値説明True I/Oに関する終了条件を満たした。 False I/Oに関する終了条件を満たさなかった。
- PosLimitedリザルト
位置の制限範囲を超えたかどうかを示します。値説明True 位置の制限範囲を超えた。 False 位置の制限範囲を超えなかった。
- ForceLimitedリザルト
力の制限範囲を超えたかどうかを示します。値説明True 力の制限範囲を超えた。 False 力の制限範囲を超えなかった。