協働ロボットの多くは、人がzero gravity状態のロボットアームを手で案内してアームに取り付けたツール(ハンド)の位置姿勢や動作などを教示する(Teach by demonstration)。触れるという特徴を生かしている。触れられないロボットでは使えない方法である。 少々、教示位置がずれてもアームがコンプライアントなので相手に倣って位置決めできる。これだけで従来の位置制御型ロボットよりも大幅にティーチングが簡単になった。また、アームが人に衝突しても安全が確保されるので、安全柵の必要がなくなり、設置スペースが少なくて済む。結果的に、ロボット導入費用も下がる。
一方、位置姿勢だけでなく手先に発生させる任意方向への力やトルク、剛性(コンプライアンス)なども制御するので、プログラミングが困難になりやすい。例えば、ワークを持つとワークの重量とロボットへの外力とがロボットには区別がつかない。また、アームがコンプライアントのためアーム位置がずれる。これらを防ぐためにワークの把持と解放に合わせて、アームに負荷荷重を教えてやらなくてはならない。
Rethink Robotics社の協働ロボットSawyerは全ての関節にトルクセンサを内蔵し、二次元視覚センサを手先に内蔵する7関節のロボットである。
Sawyerのユニークな教示システムIntera5について以下で紹介しよう。詳しくは[Rethink Robotics Training Intera Basics Course 1]のビデオトレーニングをWebで参照してほしい。
SawyerロボットのIntera 5の教示システム
Intera5は基本的には、下図に示すように、機能を示すアイコンをツリー状に並べて作業プログラムを構成する。産業用ロボットの使われ方は殆どがシーケンス作業であるので、このシーケンスツリー表現方式が合理的ではある。各アイコンの機能を表1、表2に示した。アイコンツリー上での実行の順序は左から右へ、上から下への順で行われる。ロボットの現在の位置姿勢や動きは、シーケンスツリーの右側のCAD画像で表示される(実ロボットの動きが同時に表示される)。
図1はpick & placeのプログラム例である。pick & place程度のプログラムであれば、アームをzero gravity制御(フローティング)にしてアームを手で動かしてpick & placeをさせるだけで、プログラムツリーが自動的に生成される(Rethink Robotics社のビデオ参照のこと.)。後でのプログラム修正は、搬送部品の質量設定くらいか?
ツリー上のいずれかのアイコンをダブルクリックすると、そのアイコンの設定条件が表示される。アイコンの名前や設定条件の変更や、新しいアイコンの追加や削除も、アーム上のスイッチやダイヤルか、またはパソコンから容易にできる(Actionボタン群やServiceボタン群から適当なアイコンをツリーの必要場所にdrag & doropする)。実行中のアイコンは緑色に変わるので、シーケンスを目で追いやすく、デバッグがやりやすい。編集中のアイコンは茶色で表示される。
図1
表1
表2
図2
テーブルに置かれた部品をカメラで見て掴み、所定の場所に搬送するプログラム。図1のPick sequenceアイコンの後にカメラを位置決めするMove Toアイコンとビジョンで計測するVision sequenceアイコンを追加するだけでよいので、簡単である。
図3
メモリ部品を掴んで電子基板に組み付ける作業。メモリ部品を運んで組み付け位置に接触させて、更に一定の力で押し付けて組みつける作業。
ピッキングのシーケンスは簡単化のために非表示(+印=省略)になっている。Place sequenceアイコン の次にContactポイントへのAproachとPlaceアイコンに続いてContact mode への切り替えアイコン、Contact検出のアイコンやWaitのアイコンが追加されている。
細かい作業の設定がすべて明示されるので、慣れれば解りやすいかもしれない。