MotionLimited ステータス
適用
フォースコントロールオブジェクトFC#
解説
直前の力制御機能の実行中に次の速度または加速度のうち、どの速度または加速度により制限されたかを返します。
最大ジョイント速度 | 最大ツール位置変化速度 | 最大ツール姿勢変化速度 |
最大ジョイント加速度 | 最大ツール位置変化加速度 | 最大ツール姿勢変化加速度 |
用法
FGet Object.MotionLimited, iVar
Object
オブジェクト名
オブジェクトは、FC(数値), FC(ラベル)のどちらかとして指定します。iVar
プロパティーの値を示すInt32型、またはInt64型変数
値
Bit | 結果 |
---|---|
0 | 最大ツール位置変化速度 |
1 | 最大ツール位置変化加速度 |
2 | 最大ツール姿勢変化速度 |
3 | 最大ツール姿勢変化加速度 |
4 | J1最大ジョイント速度 |
5 | J1最大ジョイント加速度 |
6 | J2最大ジョイント速度 |
7 | J2最大ジョイント加速度 |
8 | J3最大ジョイント速度 |
9 | J3最大ジョイント加速度 |
10 | J4最大ジョイント速度 |
11 | J4最大ジョイント加速度 |
12 | J5最大ジョイント速度 |
13 | J5最大ジョイント加速度 |
14 | J6最大ジョイント速度 |
15 | J6最大ジョイント加速度 |
各Bitの値
0: 制限なし
1: 制限あり
詳細説明
直前の力制御機能の実行中に次の速度または加速度のうち、どの速度または加速度により制限されたかを返します。
最大ジョイント速度 | 最大ツール位置変化速度 | 最大ツール姿勢変化速度 |
最大ジョイント加速度 | 最大ツール位置変化加速度 | 最大ツール姿勢変化加速度 |
力制御機能の実行中に1度でも制限されたものは“1”になります。
制限されたかどうかによって、処理を分岐させる場合に使用します。
MotionLimitedステータスは、0~65535(16進数FFFF)までの値を返します。そのためInteger型で扱える範囲を超える場合があります。Int32型、またはInt64型変数を使用してください。
使用例
Move動作中に制限されたかどうかによって、分岐処理を行う例です。
Function motionLimitedTest
Int64 Result
FSet FCS1.Orientation, FG_TOOL ' フォース座標データの設定
FSet FC1.CoordinateSystem, FCS1 ' フォース座標データを指定
FSet FC1.Fx_Spring, 0 ' Fxの仮想弾性係数を設定
FSet FC1.Fx_Damper, 1 ' Fxの仮想粘性係数を設定
FSet FC1.Fx_Mass, 10 ' Fxの仮想慣性係数を設定
FSet FC1.Fx_Enabled, True ' Fxの力制御を有効に設定
FSet FC1.LimitAccelS, 5 ' ジョイントの最大加速度を5[mm/sec^2]に設定
AccelS 2 ' CP動作の加速度を2[mm/sec^2]に設定
Move P0 FC1 ' 力制御機能を有効にしたMove動作
FGet FC1.MotionLimited, Result ' 制限結果を取得
If Result <> 0 Then ' 動作が制限されているとき
-
-
-
EndIf
-
-
-
Fend
参照
フォースコントロールオブジェクトFC#, LimitSpeedSRJプロパティー, LimitAccelSRJプロパティー