Universal Robots社のURロボットは世界で最も売れている協働型ロボットである。人気のポイントは従来型の産業用ロボットと異なり、人と接触しても安全性が高いために、ロボットを安全柵の中に入れなくても使えることである。

 URロボットは、前回解説したRethink Robotics社のSawyerロボットのように、アームを手で軽く動かすことはむつかしそうだが、大まかには動かせるので、残りの細かい位置・姿勢の設定だけをTeaching Pendantでやればよい。

 今回のテーマはUR ロボットのアカデミーのWebサイトで学ぶことができる。
 
 独特なロボット言語体系を持つが、命令言語を直接打ち込むのではない。ノートパッド型のティーチングペンダントで命令ボタンなどを選択しながら、アームを動かして設定したい位置姿勢などを記憶させ、プログラムを完成させる。文字入力にはウェート時間や負荷質量などがある。UR社ではストレートフォワードなプログラミング方法だと宣伝している。理解しやすいと思う。

 プログラミングは下図1のようなempty(空の)プログラムから始まる。   

              図1teaching2-1.jpg

 次に、Moveボタンを押すと、Move命令と仮の移動目標位置がWaypointとして表示される(図2)。WaypointがMove命令と同行ではなく、一段下にインデントされて配置されのが特徴である。ロボットアームを手で動かすか、またはティーチングペンダントを使って最初のWaypointまで動かしてOKボタンを押すと、仮のWaypointが実際のWaypoint_1に変更される。同じMove命令(Movej,Movel,Movep,Movec)が続く場合は、Move命令は省略してWaypoint(Waypoint_1,Waypoint_2,...)だけが並ぶのが特徴である(図3)。

             図2

panel2_2.jpg

 同様にして、最後の点までを記憶させてゆく(図3)。

             図3


UR_Robot_Panel_2_5.jpg

 次に、Waypoint_2で品物を把持させたければ、Waypoint_2に移動した後にハンドを閉じる命令

  Set TO[0]=On

 を設定して、ハンドを閉じ品物を掴む。把持すればハンドに品物の質量が負荷されるので、Set命令の設定テーブルの中で

   Set the total payload to 1.6 kg

 として指定し、負荷質重を外力(外乱)と間違えないようにする(図4)。

             図4

panel3.jpg

 次に、ハンドが品物を掴むまでにかかる時間を Wait命令で

   Wait 1.0 second 

として、Waypoint_2で確実に品物を把持してから、MoveLでWaypoint_3(図5)へ移動するようにする。

             図5

teaching6.jpg

 

 

 協働ロボットの多くは、人が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
intera5-pick&place2.jpg
                 表1
Intera5_Actionand Logic.jpg
                 表2
Intera5_Service and Error.jpg
               図2
 テーブルに置かれた部品をカメラで見て掴み、所定の場所に搬送するプログラム。図1のPick sequenceアイコンの後にカメラを位置決めするMove Toアイコンとビジョンで計測するVision sequenceアイコンを追加するだけでよいので、簡単である。
Intera5_Viz.pick.jpg
              図3
  メモリ部品を掴んで電子基板に組み付ける作業。メモリ部品を運んで組み付け位置に接触させて、更に一定の力で押し付けて組みつける作業。
 ピッキングのシーケンスは簡単化のために非表示(+印=省略)になっている。Place sequenceアイコン の次にContactポイントへのAproachとPlaceアイコンに続いてContact mode への切り替えアイコン、Contact検出のアイコンやWaitのアイコンが追加されている。
Intera_force.application.jpg
細かい作業の設定がすべて明示されるので、慣れれば解りやすいかもしれない。
 
 

 ドイツのスタートアップ企業のKBee社が7軸の協働ロボットを発表した。特徴はKUKA社の7軸協働ロボットiiWaに似ているが、価格が120万円と安く、iiWaの約1/8であることだ。iiWaは特に価格が高かったので、FRANKA EMIKAの低価格は驚きである。

640_FRANKA_EMIKA-495x400.jpg

  どのようにして低価格化したのか? 一つには、iiWaを参考にしているため開発費が安く済んだことが大きいだろう。FRANKA EMIKAはiiWaの原型であるLWR(Light Weight Robot)を開発したDLR(German Aerospace Center)の出身のメンバーが創業した会社である。

 二つには各ジョイントがモジュール化(モータ、減速機、エンコーダ、トルクセンサが一体化)され、組み立ての80%がロボットでできるようにしたこと。

 今一つは、インクレメンタルエンコーダを使っているのではないか? ビデオの中で、ゼロイングのような動作が見られる。Universal Robots社も最初はインクレメンタルエンコーダで発売し、後にアブソリュートエンコーダに変更した例もある。 その他、動作指示はすべてノートパソコンから行い、ティーチング・ペンダントを使わないことで価格を下げている。

Franka EmikaとKUKA iiWaとの性能比較

 

単位

FRANKA EMIKA

KUKA iiWa

ロボット質量

kg

15.8

22

可搬質量

kg

3

7

自由度

軸数

7

7

リーチ

mm

800

800

位置再現精度

±mm

0.1

0.1

最高速度

m/sec

2.5

      1

 
動作のビデオを見る限り、スムースで精度の高い動きをしている。ただ、協働ロボットの問題点として、「加減速度が小さい」ことはどうしてもある。これは作業速度を遅くするが、安全性とのトレードオフで、やむを得ない。

ユニークな プログラミング方法
 最大の特徴は、スマートフォン世代に使いやすそうな、「アプリケーション(単位作業)を表すアイコンを並べて仕事をプログラム(構成)する」やりかたであろう。下図に於いて、アプリケーションのアイコン群が画面下にまとめられていて、作業構成に必要なアプリケーションのアイコンを指でドラッグして上部のプログラムライン上にドロップする(ビデオ1参照)。作業の意図が一目瞭然なので作りやすく、かつ理解しやすいと思われる。アプリケーションはクラウドに蓄積されていて、ダウンロードして使う。
 
FRANKA-DESK_swoosh1.jpg
 アプリケーションのアイコンを並べ終わったら、今度はロボットアームを手で案内しながら、一連の作業を実際にやって見せる(demonstrate)。 この時、必要ならば個々の作業を代表するアプリケーションのアイコンを開いて、詳細を設定してゆく(一連の作業の説明サイトビデオ1ビデオ2も参照)。これですべてのティーチング作業が終了するとのことである(追記2018.07.09参照)。確かに直感的で、ティーチングしやすいと思われる。
 一つのアプリケーションのアイコンがどのくらいの作業を含んでいるかを観られるビデオがあったので、ここに参照しておく。一つのアプリケーションのアイコンから数ステップの動作が作られている。アプリケーションは位置データなどが入っていないプログラムであり、demonstrationまたはtrainのフェーズで実データを入れてゆく
 開発者が主張している「従来のロボットには無かった新しい機能」として、別のプログラムで作られたアプリケーションが新しいプログラムで使える点である。このようなアプリはクラウドからダウンロードして使う。
 ロボットのiPhone化を目指しているとのこと。
 人との協働を実現するために、ロボットには何が求められるのか。「理想的なロボットは、『iPhone』のように誰もが直感的に使えて、誰もがプログラミングできるもの」――。そう語るのは、開発関係者のドイツのハノーバー大学自動制御研究所所長であるSami Haddadin氏だ。
 これからのロボット・プログラミングで、代表的な一つモデルになると思われる。具体的には次回に、ユニバーサルロボット社やRethink Robotics社の同様な試みと比較して考察する。

 追記2018.07.09
 Franka Emikaの動作のプログラミング方法はユニークで2017年度のGerman Innovation Awardを受賞している。受賞内容の記述の中から自己学習型(Learn by watching)プログラミングに関する説明を下記に引用(英文)する。
 The system is extremely easy to operate and requires no previous programming knowledge since the robots learn by 'watching'. One only need demonstrate the activities the robot is to perform. The machine learns the activity and can also use the acquired knowledge for other challenges -- a skill conventional industrial robots do not have. To make programming as simple as possible, the nominees have also developed an innovative programming and operating concept. With it, tasks and sequences of motion can be broken down visually into small program modules, so-called robot apps. They make using robots as easy as using a smart phone -- and opens up a wide range of new potential applications from which even small and medium-sized businesses stand to profit.

 ロボット技術を進化させるために、目標機能を設定して、性能の高さを競うというのは、第1回Amazon Picking Challenge で見たように有効な方法であり、来年には第2回が予想され、性能の大幅なアップが期待される。

 同様なRobotic競技会には、米国Darpa(米国防総省高等研究計画局)主催のGrand Challenge(→Urban Challenge、当Webの2008.4.28参照)が有名である。 無人走行自動車のUrban Challengeは2004年から行われ、数回の実施を経て、「無人走行自動車のためのハードウェアやソフトウェアの基本技術」の開発を終了した。現在は個々のメーカが市販自動車の実用化を目指してしのぎを削っている。


 また、2足歩行ロボットの開発を目標とするDarpa Robotic Challengeが2012~2015におこなわれ、世界各国の研究者がロボット開発に参加し、ロボットの完成度を高めてきた。現状ではまだまだ安定歩行、速度の面で未完成と思っていたが、最近、Google傘下のBoston Dynamics社が完成度の高い2足歩行のビデオを発表(日刊工業新聞、ニューススイッチ参照)し、驚いている。競技会で得られた知見を取り入れて再開発したものと思われ、Robotics競技会の有効性を思い知らせられた。

Atlas.jpg

 このような中、日本でも産業用ロボットの進化をメーカが単独で開発するのではなく、広く大学やベンチャーなどの研究能力を活用しようとする動きが始まっている。産業用ロボットの現状の能力は、すでに数十年前から変わっておらず、さらに進化が求められている。 先回のブログで紹介したAmazon Picking Challengeは、作業内容を明確にした作業実現コンテストであり、その過程で開発項目が明確になり、新しいソフトウェアやキーデバイスの開発が進むと期待できる。

 デンソーウェーブや川崎重工はロボットアームのサーボ部分に、ROS経由で、直接アクセスできるロボットアームを販売する予定とのことである(下写真)。研究者はROSの下で開発されているソフトウェアを自由に組み合わせたり、新しく追加したりして、ロボットの新しい能力を実現しやすくなる。

 日本もAmazonやDarpaのように、Challengeテーマを設定し、ロボット機能の開発をスピードアップさせる試みをやってはどうか?

双腕cobotta.jpg

デンソーウェーブ製 双腕型Cobotta

 C3131028-2[1].jpg

川崎重工業製 7軸ロボット

位置制御を主体とする従来型の産業用ロボットは、人が作業環境を整え、ロボットの軌跡を厳密に教えることで作業をすることができた(カメラによる位置補正を含める)。このようなやり方でも現実の電気機器や自動車部品などの組み付けラインの中で、世界でも数万台以上のロボットが仕事をしている。

 一方、人手でないとできない作業を含む生産ラインまたはセルの自動化がまだ残っている。そこでは作業員とロボットが協調して仕事をすることになる。この場合にはロボットの隣りで人が作業できるように、安全なロボット(万が一、人と接触しても人を傷つけない)が必要となる。

 このようなロボットはすでにいろいろ製品化されてきており、当ブログでも紹介してきた。しかし、安全なロボットアームのハードウェアは、ほぼ開発が終了したと思われるに対して、ロボットが機能を発揮する具体的なソフトウェアに関しては、開発はこれからという段階と思われる。

 ロボットのソフトウェアといっても、ロボットアームを動かしたり、視覚認識をするミドルウェアの開発研究は進んでおり、これらがOpen sourceで提供されるROS(Robot Operating System、Open Source Robotics Fundationが管理する)が有名である。 ライブラリは、移動、視覚認識、音声認識、通信、ツール類、その他も含めると、その数は数千にも達していると言われる。

 開発がこれからという意味は、従来のロボット(アーム、視覚、触覚など)を使ってする作業が比較的単純なものに限られているということである。

 例えば、AmazonがAmazon Picking Challengeで2015年から開始した、「棚から目的とする品物を選び、取り出して、箱に収める」などの仕事(下の写真参照)では、品物ごとに変わるPicking作業をセンサ情報を参照して自動生成している。ChallengeではROSの上などに適応的なソフトウェアを試作し作業能力を競っているが、最優秀賞を受賞したチームの場合でさえ、作業速度が極端に遅く、まったく実用にならないというのが現状である(ENGADGET,Amazon crowns winner of first warehouse robot challengeを参照)。

amazon-picking-winner-jt[1].jpg

 しかし、遅いとはいえ、不定形な重なり合った品物を視覚で認識して、一つ一つピッキングできており、ソフトウェア技術が少しづつ進歩していると想像される。