ロータリージョイントとモジュロ軸
注記
SoftMotion 4.12.0.0以降、軸グループ内のモジュロ軸がサポートされています。
モジュロ軸は、キネマティクスのスイベルジョイントでのみ許可されます。これらは、そのためのスイベルジョイントです SMKinematicWithInfo.GetAxisProperties
値を返します props.eType = Axis_Type.Rotary
。モジュロ軸が線形ジョイントまたは実装されていないキネマティックに使用される場合 ISMKinematicWithInfo
、 それから MC_GroupEnable
を返します SMC_MODULO_AXIS_FOR_NON_ROTARY_JOINT
エラー。モジュロ軸が使用され、運動学がスイベルジョイントの範囲を制限する場合、 MC_GroupEnable
を返します SMC_MODULO_AXIS_FOR_LIMITED_ROTARY_JOINT
エラー。
モジュロ軸は、モジュロ周期が360°の場合にのみサポートされます。この理由は、スイベルジョイントに接続された軸は、1つの技術単位[u]が1つの角度[°]に対応するように構成する必要があるためです。 1周期は、1回転に対応する必要があります。 360°以外の周期のモジュロ軸が使用されている場合、 MC_GroupEnable
を返します SMC_MODULO_AXIS_PERIOD_NOT_360
エラー。
バージョン4.12.0.0以降、 SoftMotion のみをサポートします shortest
モード(MC_DIRECTION)。これは、モジュロ軸の距離と方向が、軸の開始位置にできるだけ近くなるように選択されることを意味します。たとえば、方向軸が移動の開始時にa2 = 30°にあり、ターゲット位置でa2 = 290°にある場合、位置a2 = 290°–360°= –70°が選択され、軸が移動します。正の方向に260°移動するのではなく、負の方向に100°移動します。