DOBOT Magicianには、操作の後に自動的にアームが向かう移動先が、2箇所あります。
1つは、DOBOT Magicianの電源ボタンを操作して本体の電源を落したときに、電源が切れる前に自動的にアームが向かう「格納位置」で、もう1つは、homingと呼ぶキャリブレーション動作を行った後に、自動的にアームが向かう「ホームポジション」です。
「格納位置」は変更できませんが、「ホームポジション」は設定により変更できます。
本稿では、(1)ホームポジションの変更が有効な場面を説明後、(2)具体的な変更方法と、(3)変更したホームポジションをデフォルトの設定に戻す方法について、説明します。
内容
1.ホームポジションの変更が有効な場面
1.1 homingとは?
homingとは、DOBOT Magician起動直後や、アームが障害物に衝突して位置ずれ(脱調)が発生した場合に必要な、キャリブレーション動作のことです。
homingを実行するには、DobotStudioの操作でDOBOT Magicianに接続後、GUIの右上の赤いボタン(Emergency Stop)の隣にある「Homeボタン」を押すか、あるいは、Blockly や C++、Python などのプログラムで、「HOMEブロック」や、Dobot APIの「SetHOMECmd」を実行します。
1.2 homingとホームポジション
homing実行時、ロボットアームは、台座周りを時計回りに旋回して、突き当たったところからホームポジション(通常は、アームが正面を向いた状態の(250,0,0,0)の座標位置)に向かい、しばらく微動した後、キャリブレーションが完了します。
1.3 ホームポジションを変更するケース1:機材との干渉の回避
homingの一連の動作は変更ができないため、旋回時やホームポジションに向かう途中に障害物がないよう、場所を確保しなければなりません。
しかし、一般には、ロボットアームの周りには、ロボットアームと組み合わせて作業するための機材やケースなどが固定位置に置かれていて、homing実行時のみ場所を空ける、ということが困難な場合があります。
旋回動作時に機材と干渉することを防ぐためには、アームを折りたたんだ位置に引っ込めておく(手動で、もしくは、移動命令により移動させておく)ことで対応し、その後のホームポジションに向かう動作については、「ホームポジション」を変更して、機材との干渉を防ぐ必要があります。
1.4 ホームポジションを変更するケース2:時間短縮・磨耗防止
また、もう1つのホームポジション変更のケースとしては、homingの時間をできるだけ短縮したり、homingの繰り返しによるモータの磨耗をできるだけ防ぎたい、という理由によるものです。
一種のテクニックとなりますが、ロボットアームを動作させる範囲が、旋回方向の角度で90度以内である、などのように限られる場合には、ホームポジションをロボットアームの正面に置かず、homingで旋回する側に置くことで、homingの旋回量を減らすことができます。これにより、homingからの復帰時間を短縮でき、旋回によるモータの磨耗を多少なりとも減らすことができます。
2.ホームポジションの変更方法
ホームポジションの変更は、DobotStudioのTeaching&Playbackの画面にて次の手順で行います。
(1) DobotStudioでTeaching&Playbackの画面を開き、アーム先端のボタンを押して、ダイレクトティーチによりホームポジションに設定したい位置を1つ(一行)記録する。
(2) 記憶させた行をマウスで右クリックし、開いたメニュー中の”SetHome”を選択する。
これで、ホームポジションが変更されたはずですので、HOMEボタンを押してhomingを実行後の位置を確認ください。
なお、DobotStudioを使わず、Dobot APIのSetHOMEParamsを使うことも可能です。
3.ホームポジションをデフォルト設定に戻すには
何らかのトラブル等で、ホームポジションとして変な位置が設定されてしまった場合や、設定したホームポジションをデフォルトの位置に戻したい場合には、(250,0,0,0) をホームポジションに指定します。
DobotStudioのTeaching&Playback画面にて、任意の位置を1行記憶させた後、その行のx,y,z,rの値をそれぞれダブルクリックして編集し、250,0,0,0に変更します。
変更した行をマウスで右クリックし、開いたメニュー中の”SetHome”を選択することで、デフォルトの位置がホームポジションに設定されます。
4. 補足
ホームポジションを変更した場合、動作精度に影響が出ることが考えられますので、ロボットアームの仕様に記載されている精度が保たれない可能性があります。
精度が重要な意味を持つ適用分野においては、ホームポジションを変更した場合の精度への影響を十分に評価した上でご使用ください。