Jump3, Jump3CP

アームを3次元ゲート動作で移動します。

Jump3は、2つのCP動作と1つのPTP動作の組み合わせです。

Jump3CPは、3つのCP動作の組み合わせです。

書式
(1) Jump3 退避座標, 接近開始座標, 目標座標 [, Cアーチ番号] [, CP] [, LJM [, 姿勢フラグ選択]] [, Sense | Till | Find] [, !並列処理!] [, SYNC]

(2) Jump3CP 退避座標, 接近開始座標, 目標座標 [, ROT] [, Cアーチ番号] [, CP] [, LJM [, 姿勢フラグ選択]] [, Sense | Till | Find] [, !並列処理!] [, SYNC]

パラメーター

退避座標
現在位置より上の退避点をポイント指定します。
接近開始座標
目標座標より上の接近開始点をポイント指定します。
目標座標
動作の到達する目標座標をポイント指定します。
ROT
ツール姿勢変化を優先させて、動作の速度、加減速度を決めます。省略可能です。
アーチ番号
アーチ番号は、Jump3命令のアーチ型動作を決める、アーチテーブルを指定します。アーチ番号の頭には、必ず大文字「C」をつけてください。 (有効値はC0~C7です。) アーチ番号は省略可能です。
CP
パスモーションを指定します。省略可能です。
LJM
待避座標, 接近座標, 目標座標をLJM関数で変換します。省略可能です。
姿勢フラグ選択
LJM関数に与える姿勢フラグ選択パラメーターを指定します。省略可能です。
Sense | Till | Find
Sense、TillまたはFind式を記述します。省略可能です。

Sense | Till | Find
Sense Sw(式) = {On | Off}
Till Sw(式) = {On | Off}
Find Sw(式) = {On | Off}
!並列処理!
Jump3、Jump3CP命令に並列処理ステートメントを追加し、動作中にI/Oやその他のコマンドを実行できます。省略可能です。
SYNC
動作コマンドを予約します。SyncRobotsによる動作開始まで、ロボットは動作しません。

解説
アームを現在位置から目標座標まで3次元ゲート動作で移動します。3次元ゲート動作は、退避動作、スパン動作、そして接近動作から成り立っています。現在位置から退避座標までの退避動作はCP動作です。退避座標から接近開始座標までのスパン動作は、Jump3の場合はPTP動作で、Jump3CPの場合はCP動作です。接近開始座標から目標座標までの接近動作は、CP動作になります。

記号 説明
a 現在位置
b 退避動作 CP
c 退避座標
d スパン動作 PTP/CP
e 接近開始座標
f 接近動作 CP
g 目標座標

アーチ動作は、アーチ番号の設定によって行います。

Jump3およびJump3CP のアーチ動作は下図に示すとおりです。

退避距離はArch上昇距離よりも長く、接近距離はArch下降距離よりも長くしてください。

記号 説明
a 退避距離
b Arch上昇距離
c 退避座標
d 接近開始座標
e 接近距離
f Arch下降距離

Jump3CPの速度と加減速度はそれぞれSpeedSとAccelSの設定値を使用します。速度と加減速度の関係については、"注意"の"Jump3, Jump3CPをCPとともに用いる"を参照してください。ただし、ROT修飾パラメーターを指定しているときの速度と加減速度はそれぞれSpeedRとAccelRの設定値を使用します。この場合、SpeedSとAccelSの設定値は無効となります。

ロボットのツール先端位置を、特定の座標に固定したままツール姿勢のみを変化させようとした場合や、ツール先端の移動距離に対してツール姿勢変化が大きい場合、ツール姿勢変化速度が著しく速くなる恐れがあります。これを防ぐため、ツール姿勢変化速度が大きい場合に自動で動作速度を制限する機能が働きます。

CP動作時のツール姿勢変化速度の上限値を手動で設定したい場合は、SpeedRLimitationをオンにしてください。SpeedRLimitationをオンにした場合、CP動作時のツール姿勢変化速度が設定したSpeedRを超える場合は、ツール姿勢変化速度がSpeedRになるように動作速度を制限します。ツール姿勢変化速度が設定したSpeedRを超えない場合は、設定したSpeedSで動作します。ツール姿勢変化速度の上限値はSpeedRであらかじめ設定してください。

注意


  • LimZは、Jump3 およびJump3CPには影響しません。

    スパン動作は、必ずしも座標系のZ軸に垂直とは限らないため、LimZは、Jump3およびJump3CPには影響しません。

  • Jump3のスパン動作はPTP動作です。

    PTP動作はその軌跡が予測しにくいため、ロボット本体や周辺装置との干渉に十分注意してください。

  • Jump3, Jump3CPをCPとともに用いる

    CPパラメーターを使うと、動作命令は減速開始と同時に制御を次のステートメントに移します。これは、ユーザーがいくつかの動作命令をつなげ、連続した動作を一定の速度で行わせたいときに便利です。CP指定なしのJump3命令, Jump3CP命令では、アームは必ず減速して、指定された目標座標に停止します。

  • Jump3のPass機能

    接近動作量が0のJump3にCPパラメーターをつけた場合、そのJump3のスパン動作が減速停止することなく、直後に続くPTP動作と滑らかに接続できます。

    また、直前のPTP動作命令にCPパラメーターをつけた場合、退避動作量が0のJump3は、そのPTP動作が減速停止することなく、Jump3のスパン動作と滑らかに接続できます。

    これは、通常のJump3のスパン動作 (1つのPTP動作)を、いくつかのPTP動作が滑らかに接続する動作に置きかえたい場合に便利です。

  • Jump3CPのPass機能

    接近動作量が0のJump3CPにCPパラメーターをつけた場合、そのJump3CPのスパン動作が減速停止することなく、直後に続くCP動作と滑らかに接続できます。

    また、直前のCP動作命令にCPパラメーターをつけた場合、退避動作量が0のJump3CPは、そのCP動作が減速停止することなく、Jump3CPのスパン動作と滑らかに接続できます。

    これは、通常のJump3CPのスパン動作 (1つのCP動作)を、いくつかのCP動作が滑らかに接続する動作に置きかえたい場合に便利です。

    (例1)

    Jump3 P1,P2,P2 CP
    Go P3,P4 CP
    Jump3 P4,P5,P5+tlz(50)
    

    (例2)

    Jump3CP P1,P2,P2 CP
    Move P3,P4 CP
    Jump3CP P4,P5,P5+tlz(50)
    

  • Jump3, Jump3CPをLJMとともに用いる

    LJMパラメーターを使うと、LJM関数を使用するプログラムを簡略化できます。

    例えば、

    P11 = LJM(P1, Here, 2)
    P12 = LJM(P2, P11, 2)
    P13 = LJM(P3, P12, 2)
    Jump3 P11, P12, P13
    

    という4行のプログラムを

    Jump3 P1, P2, P3 LJM 2
    

    という1行のプログラムに置き換えることができます。

    LJMパラメーターは垂直6軸型ロボット (Nシリーズを含む)、およびRSシリーズロボットで有効です。

    Jump3CPはスパン動作が直線 (CP)動作のため途中で手首姿勢を切り替えることができません。そのため手首姿勢の切り替えの可能性があるLJM関数の姿勢フラグ選択 (LJM 1)は使用しないでください。


アーチ使用時の重要事項
アーチモーションは、動作の合成を軌跡制御上で行うため、実際の軌跡を保証できるものではありません。動作速度やアームの動き方によってその軌跡は変化します。実際の軌跡は、作業で使用する実速度と姿勢で確認してください。

  • 同じ位置で、同じ[Cアーチ番号]を持つJump3命令を実行しても、高速動作時と比較して低速時の軌跡は低くなります。したがって、高速で障害物に衝突しないことを確認しても、低速で動作すると衝突する可能性がありますので注意してください。

  • 低速動作時より高速動作の方が、合成なしの退避移動量が増え、合成なしの接近移動量が減る傾向にあります。期待した移動距離が出ない場合は、速度や減速度を下げるか、接近距離を長めに設定してください。

  • 同じ距離の動作であっても、アームの動き方によって軌跡は変化します。

起こりやすいエラー

  • 退避動作 (接近動作)とスパン動作で、主に動作する関節が同じ場合

    Jump3, Jump3CPコマンドでアーチモーションを実行中に、異常加速度エラーが発生することがあります。これは、退避動作 (接近動作)とスパン動作で、主に動作する関節が同じ場合に特に顕著となります。このような場合は、Jump3の場合はAccel命令で、Jump3CPの場合はAccelS命令でスパン動作の加減速度を下げることにより回避してください。また、動作姿勢によっては、AccelS命令で退避動作 (接近動作)の加減速度を下げることが有効な場合もあります。

参照
Accel, Arc, Arc3, Arch, Go, JS関数, JT関数, P# (2. ポイント指定), Pulse, Sense, Speed, Stat関数, Till

Jump3使用例

'スカラロボットのJumpのように動作する垂直6軸型ロボット (Nシリーズを含む)の動作
Jump3  Here :Z(100), P3 :Z(100), P3

'Zツール座標を使用した退避動作と接近動作
Jump3  Here -TLZ(100), P3 -TLZ(100), P3

'Zベース座標を使用した退避動作とZツール座標を使用した接近動作
Jump3  Here +Z(100), P3 -TLZ(100), P3

Tool1で退避動作を行い、Tool2で接近動作を行う例

Arch 0,20,20
Tool 1
Go P1

P2 = P1 -TLZ(100)
Tool 2
Jump3 P2, P3-TLZ(100), P3 C0