ツールオフセットの構成
ツールオフセットを設定することにより、キネマティクスのフランジ座標系(XYZ)とキネマティクスのTCP座標系(X'Y'Z ')の間のオフセットを設定できます。このツールオフセットは、後続のすべての動きに作用します。

TCP:ツールセンターポイント
ツールオフセットはシフトによって指定されます v=(x,y,z)
とローテーション r=(A,B,C)
ZYZオイラー角で。シフトと回転は、キネマティクスのフランジ座標系を基準にして表されます。
ツールオフセットを設定すると、現在のキネマティクスと互換性がなくなる場合があります。その結果、ツールオフセットによってキネマティクスが方向を達成できなくなる可能性があります。この状況では、エラーが発生し、ツールオフセットは無視されます。たとえば、キネマティクスのZ方向にツールオフセットを設定できます。 Kin_Scara2_Z
一方、X方向またはY方向の部品のオフセットはエラーになります。運動学にこのような制限がある場合は、 運動学。
機能ブロック:SMC_GroupSetTool
機能ブロックは、入力で指定された工具オフセットを構成します ToolOffset
(タイプ MC_COORD_REF
)軸グループの場合。ただし、軸グループが状態にある限り GroupDisabled
また GroupErrorStop
、 いいえ ツールオフセットを設定できます。
ツールが現在のキネマティクスと互換性がない場合、POUはエラーを発行します SMC_AXIS_GROUP_TOOL_OFFSET_INCOMPATIBLE_WITH_KINEMATICS
。このエラーは、インターフェイスが ISMKinematicsWithOrientationImage
キネマティクスの説明には実装されていません。
機能ブロック:SMC_GroupReadTool
この機能ブロックは工具オフセットを読み取ります:出力 ToolOffset
(タイプ MC_COORD_REF
)。このプロセスでは、入力 ReadMode
アクティブな移動のツール、最後にコマンドされた移動、または軸グループに現在設定されているツールを読み取るかどうかを決定します。
互換性のあるキネマティクス
すべてのキネマティクスがすべてのツールオフセットをサポートしているわけではありません。次のリストは、どのツールがどのキネマティクスに適しているかを示しています。
キネマティクス | 互換性のあるツール |
---|---|
SCARA2キネマティクス | Z方向に位置がオフセットされ、方向がオフセットされている工具 |
SCARA3キネマティクス | すべてのツール |
極運動学 | Z方向に位置がオフセットされ、方向がオフセットされている工具 |
3軸多関節ロボット | 方向にオフセットがある工具 |
6軸多関節ロボット | すべてのツール |
4軸パレタイザー | すべてのツール |
バイポッド | すべてのツール |
5軸ガントリー | すべてのツール |
ガントリーシステム | すべてのツール |
Hガントリーシステム | すべてのツール |
Tガントリーシステム | すべてのツール |
ロータリーまたはリニア三脚 | すべてのツール |
ヒント
キネマティックシステムに方向の3自由度がない場合は、すべてのツールオフセットに互換性があるとは限りません。
カスタムキネマティクスの場合
ツールオフセットでカスタムキネマティクスを使用するには、 ISMKinematicsWithOrientationImage
インターフェース。カスタム位置運動学にツールオフセットを追加するには、まずインターフェースを実装する必要があります。 ISMPositionKinematics2
。
インターフェイス:ISMKinematicsWithOrientationImage
キネマティックインターフェースはメソッドを提供します GetFlangeOrientationImage
変数を使って mR_Flange
データ型の SMC_Matrix3
、フランジのコマンドされた方向が含まれています。結果として、メソッドは可能な結果の方向を返します oriInfo
データ型として OrientationSpace
。
インターフェイスの動作
特に、指令された方向でのフランジの方向がわかっている場合、
dof = zero
返され、mOriZero
既知の方向に設定されます。オリエンテーションの場合
R
フランジのは、フォームで部分的にしか知られていませんR*vU = vRot
(どこvU
とvRot
既知の単位ベクトルです)、dof = one
が返されます。mOriZero
到達可能なスペースの方向に設定されます。さもないと、
dof = three
が返されます。
計算された方向を考慮してフランジ位置を一意に計算できる場合、指定されたツールオフセットはキネマティクスと互換性があります。これは、計算された方向がキネマティクスによって達成できる場合に常に当てはまります。ツールオフセットは、すべての方向に到達できない場合にのみ互換性がない可能性があります。また、その方法が GetFlangeOrientationImage
戻り値 dof = zero
、その後、すべてのツールオフセットに互換性があります。メソッドが返す場合 dof = one
、次に工具位置オフセットのみ v_off
単位ベクトルに平行 vU
互換性があります。この場合、 R*v_off = R*vU*x = vRot*x
方向行列の未知の部分に依存しません R
。これには、次のような工具オフセットも含まれます。 v_off = 0
(ここで、x = 0)。もしも dof = three
が返されると、x / y / zにオフセットのない位置シフトのみが互換性があります。
実装上の注意
インターフェイスを実装する
ISMOrientationKinematicsWithOriImage2
オリエンテーションキネマティクス用。次に、ツールオフセットを使用して、方向キネマティクスと位置キネマティクスを結合できます。インターフェイスにはメソッドがありますGetOrientationImage2
変数を使ってVAR_IN_OUT CONSTANT mR_Flange
データ型のSMC_Matrix3
、フランジのコマンドされた方向が含まれています。メソッドは
csTool
とoriinfo
データ型OrientationSpace
方向運動学の基本座標系で。さらに、メソッドはに戻ります
bActive
からの自由度かどうかorinfo
アクティブです(TRUE
)またはパッシブ(FALSE
)。
アクティブな自由度の例: Kin_CAxis
。 z軸を中心とした回転は、方向運動学軸によって制御されます。
受動的な自由度の例: Kin_Wrist2
。残りの自由度は、ユーザーがプログラムした方向を指すZ軸を中心としたX / Yの回転です。
重要
工具交換時の最後の指令動作と新動作の両方がCP動作(直線動作または回転動作)の場合、後続動作のバッファモードを以下から変更します。 Blending
また Aborting
に Buffered
。
重要
後に新しい工具オフセットを設定する場合 MC_GroupInterrupt
と前に MC_GroupContinue
、その後、古いツールオフセットが中断された動きに使用されます。新しいツールオフセットは、後で命令される移動にのみ使用されます。
重要
キネマティクスが変更されたとき(MC_SetKinTransform
)、ツールオフセットがリセットされます(シフトなし、回転なし)。