JP7342974B2 - 制御装置、学習装置、制御方法、及び制御プログラム - Google Patents

制御装置、学習装置、制御方法、及び制御プログラム Download PDF

Info

Publication number
JP7342974B2
JP7342974B2 JP2021571114A JP2021571114A JP7342974B2 JP 7342974 B2 JP7342974 B2 JP 7342974B2 JP 2021571114 A JP2021571114 A JP 2021571114A JP 2021571114 A JP2021571114 A JP 2021571114A JP 7342974 B2 JP7342974 B2 JP 7342974B2
Authority
JP
Japan
Prior art keywords
locations
robot device
fixed shape
deformed object
deformed
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2021571114A
Other languages
English (en)
Other versions
JPWO2021144886A1 (ja
Inventor
義也 柴田
千智 中島
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Omron Corp
Original Assignee
Omron Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Omron Corp filed Critical Omron Corp
Publication of JPWO2021144886A1 publication Critical patent/JPWO2021144886A1/ja
Application granted granted Critical
Publication of JP7342974B2 publication Critical patent/JP7342974B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F16ENGINEERING ELEMENTS AND UNITS; GENERAL MEASURES FOR PRODUCING AND MAINTAINING EFFECTIVE FUNCTIONING OF MACHINES OR INSTALLATIONS; THERMAL INSULATION IN GENERAL
    • F16HGEARING
    • F16H7/00Gearings for conveying rotary motion by endless flexible members
    • F16H7/24Equipment for mounting belts, ropes, or chains

Landscapes

  • Engineering & Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • General Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Manipulator (AREA)

Description

本発明は、制御装置、学習装置、制御方法、及び制御プログラムに関する。
近年、製造ライン等の製品を製造する場面において、部品の組付け等の何らかの作業を遂行するロボット装置の開発が進んでいる。このようなロボット装置を利用する際に、ベルト、シール等の作業中に形状が変化し得る変形物を作業の対象物として取り扱うことがある。例えば、特許文献1では、シート状のシールを把持して、目標物体の目標位置に当該シールを貼付するように構成されたロボットシステムが提案されている。具体的には、特許文献1で提案されるロボットシステムでは、撮像素子により得られる撮像画像においてシールの各端辺を検出し、曲面を表す二次式により検出された各端辺をフィッティングすることで、シールの形状を推定する。そして、推定された形状からシールの位置及び姿勢を算出し、算出されたシールの位置及び姿勢から把持部の速度を算出し、算出された速度で把持部を駆動することで、目標物体の目標位置にシールを移動させる。これにより、特許文献1で提案されるロボットシステムでは、シールを貼り付ける作業を遂行することができる。
特開2015-174172号公報
本件発明者らは、特許文献1のような従来の方法では、次のような問題点があることを見出した。すなわち、対象作業の動作をロボット装置に教示する場合、一般的には、作業の対象物の初期位置、目標状態等の条件が与えられる。その上で、ロボット装置を人手により直接的に動作させたり(ダイレクトティーチング)、ティーチングペンダントの利用、プログラミング等によりロボット装置の動作を作り込んだり、モーションプランニング等の自動計画の手法を利用したり等の様々な手法で、ロボット装置に実行させる動作指令の系列を生成する。基本的には、ロボット装置は、生成された動作指令の系列を再生することで、教示された対象作業の動作を実行する。
これに対して、ベルト、シール等の変形物は、運搬する等の作業の過程において、その形状を変化させる可能性がある。例えば、把持されたシールを運搬する間、把持された端辺以外の端辺(特に、把持された端辺と対角に配置された端辺)周辺の部分がはためいてしまうことがある。また、例えば、ベルトを把持している間、把持された箇所から垂れ下がる部分が揺れてしまうことがある。このような変形物の変形は、常に同じように生じるとは限らないため、対象作業を実行する際の不確定要素になってしまう。すなわち、ロボット装置に対象作業を実際に実行させる際とロボット装置に動作を教示した際とで、作業の対象物である変形物の状態が相違してしまう可能性がある。
実際の動作の際と教示の際とで変形物の状態が相違すると、作業の前提条件が異なってしまうため、教示により得られた動作指令の系列では、対象作業を正しく遂行することができなくなってしまう可能性が生じる。つまり、変形物の形状の変化は、作業失敗の要因となる。運搬速度を高める等の作業の速度を高めると、上記シールのはためき、ベルトの揺れ等の変形物の形状の変化が生じやすくなる。そのため、この変形物の形状の変化に起因する作業の失敗は、作業の速度を高めると特に生じやすくなる。
これに対応するため、画像センサ等のセンサによるフィードバックを与えて、環境に適するように動作系列を修正することが考えられる。しかしながら、フィードバックによる修正では、変形物が所望の形状になるように作業を停止したり、作業の速度を抑えたりすることが限界であり、運搬速度を高める等の作業の速度を高めることは困難である。したがって、従来の方法では、作業の対象物として変形物を取り扱う際に、作業の失敗確率を低減し、かつ作業の速度の向上を図ることは困難であった。
本発明は、一側面では、このような実情を鑑みてなされたものであり、その目的は、作業の対象物として変形物を取り扱う際に、当該作業の失敗確率を低減し、かつ作業の速度の向上を図るための技術を提供することである。
本発明は、上述した課題を解決するために、以下の構成を採用する。
すなわち、本発明の一側面に係る制御装置は、対象物の複数の箇所を支持することにより当該対象物を把持するように構成された把持機構を備えるロボット装置の動作を制御する制御装置であって、前記把持機構により変形物を把持した前記ロボット装置に対して、当該変形物の複数の箇所に力を作用させることで、当該変形物の少なくとも一部分を所定の固定形状に変化させる変形指令部と、前記ロボット装置に対して、前記固定形状に変化させた前記変形物の少なくとも一部分を作業の開始状態の姿勢に推移させる動作を実行させる位置決め指令部と、前記変形物の少なくとも一部分を前記所定の固定形状に変化させ、かつ前記開始状態の姿勢に推移させた後に、前記ロボット装置に対して、前記変形物を前記作業の目標状態に到達させるためのテンプレート動作を実行させる動作指令部と、を備える。
当該構成では、複数の箇所から作用する力により、変形物の少なくとも一部分を固定形状に変化させることで、この少なくとも一部分の剛性を高めることができる。これにより、この固定形状に変化させた変形物の少なくとも一部分で他の形状への変形が生じるのを抑えることができる。そのため、この少なくとも一部分において、対象の作業を実行する際の不確定要素を減らすことができ、これによって、対象の作業の失敗確率を低減することができる。加えて、固定形状に変化させることで剛性を高めた状態が維持されていれば、把持機構による変形物の運搬速度を上げても、この固定形状に変化させた少なくとも一部分において変形が生じるのを抑えることができる。そのため、対象の作業を実行する際の不確定要素を減らしたまま、作業の速度を上げることもできる。したがって、当該構成によれば、作業の対象物として変形物を取り扱う際に、作業の失敗確率を低減し、かつ作業の速度の向上を図ることができる。
上記一側面に係る制御装置において、前記変形指令部は、前記ロボット装置に対して、前記変形物の前記複数の箇所から作用させた力のつり合う点が前記固定形状の範囲内に入るように前記変形物の前記複数の箇所に力を作用させることで、前記変形物の少なくとも一部分を前記固定形状に変化させてもよい。当該構成によれば、作用させた力のつり合う点が固定形状の範囲内に入っていることで、変形物の固定形状を安定的に保つことができる。これにより、作業の失敗確率を低減し、かつ作業の速度の向上を適切に図ることができる。
上記一側面に係る制御装置において、前記動作指令部は、前記ロボット装置に対して、前記複数の箇所に前記力を作用させた状態を維持しながら、前記テンプレート動作を実行させてよい。当該構成によれば、ロボット装置に対してテンプレート動作を実行させている間も、変形物の少なくとも一部分を固定形状にすることで、変形物の形状についての不確定要素を減らすことができる。そのため、テンプレート動作の失敗確率を低減し、かつその速度の向上を図ることができる。
上記一側面に係る制御装置は、前記ロボット装置に対して、前記把持機構により前記変形物を把持させる把持指令部を更に備えてもよい。当該構成によれば、変形物を未把持のロボット装置に対して変形物の把持を指示する段階から作業を開始することができる。
上記一側面に係る制御装置において、前記変形物は、前記複数の箇所それぞれにそれぞれ設けられた複数の印を備えてよく、前記ロボット装置は、前記変形物の配置された作業環境を撮影するように配置された画像センサを更に備えてよく、前記把持指令部は、前記ロボット装置に対して、前記画像センサにより得られる撮影画像に基づいて、前記変形物の前記複数の印の設けられた箇所を前記把持機構に支持させることにより、前記把持機構で前記変形物を把持させてもよい。当該構成によれば、変形物に設けた複数の印に基づいて、把持機構による変形物を把持する動作の容易化を図ることができる。また、当該構成によれば、変形物の固定形状を安定的に保持可能な位置に印を設けることで、把持機構にその位置で変形物を支持させることができる。その結果、変形物の少なくとも一部分を固定形状に変化させる動作をロボット装置に対して実行させた後、把持機構において変形物の固定形状を安定的に保つことができる。これにより、作業の失敗確率を低減し、かつ作業の速度の向上を適切に図ることができる。
上記一側面に係る制御装置において、前記変形物は、紐状部材であってよく、前記把持機構は、前記紐状部材を二箇所で支持するように構成されてよく、前記変形物の複数の箇所に力を作用させることは、前記紐状部材を支持した二箇所から互いに相反する二方向に前記紐状部材を引っ張ることを含んでもよい。当該構成によれば、紐状部材に関する作業の失敗確率を低減し、かつその作業の速度の向上を図ることができる。
上記一側面に係る制御装置において、前記紐状部材は、ベルトであってよく、前記把持機構は、2つのグリッパを備えてよく、前記紐状部材を二箇所で支持することは、前記2つのグリッパそれぞれで前記ベルトを把持することにより構成されてよい。当該構成によれば、ベルトに関する作業の失敗確率を低減し、かつその作業の速度の向上を図ることができる。
上記一側面に係る制御装置において、前記作業は、複数のプーリに前記ベルトを組み付けることを含んでもよく、前記開始状態の姿勢に推移させることは、前記ベルトの前記固定形状に変化させた部分を前記複数のプーリのいずれか1つに接するように配置することを含んでもよい。当該構成によれば、複数のプーリにベルトを組み付ける作業の失敗確率を低減し、かつその作業の速度の向上を図ることができる。
また、本発明の一側面は、上記各形態に係る制御装置に制御されるロボット装置に対する動作指令を生成するための学習装置であってもよい。例えば、本発明の一側面に係る学習装置は、対象物の複数の箇所を支持することにより当該対象物を把持するように構成された把持機構を備えるロボット装置に動作を教示する学習装置であって、前記把持機構により変形物を把持した前記ロボット装置に対して、当該変形物の複数の箇所に力を作用させることで、当該変形物の少なくとも一部分を所定の固定形状に変化させる動作を教示する第1学習部と、前記ロボット装置に対して、前記固定形状に変化させた前記変形物の少なくとも一部分を作業の開始状態の姿勢に推移させる動作を教示する第2学習部と、前記変形物の少なくとも一部分を前記所定の固定形状に変化させ、かつ前記開始状態の姿勢に推移させた後に、前記ロボット装置に対して、前記変形物を前記作業の目標状態に到達させるためのテンプレート動作を教示する第3学習部と、を備える。
上記各形態に係る制御装置及び学習装置それぞれの別の態様として、本発明の一側面は、以上の各構成を実現する情報処理方法であってもよいし、プログラムであってもよいし、このようなプログラムを記憶した、コンピュータ等が読み取り可能な記憶媒体であってもよい。ここで、コンピュータ等が読み取り可能な記憶媒体とは、プログラム等の情報を、電気的、磁気的、光学的、機械的、又は、化学的作用によって蓄積する媒体である。また、本発明の一側面に係る制御システムは、上記いずれかの形態に係る制御装置及び学習装置により構成されてよい。
例えば、本発明の一側面に係る制御方法は、対象物の複数の箇所を支持することにより当該対象物を把持するように構成された把持機構を備えるロボット装置の動作を制御する情報処理方法であって、コンピュータが、前記把持機構により変形物を把持した前記ロボット装置に対して、当該変形物の複数の箇所に力を作用させることで、当該変形物の少なくとも一部分を所定の固定形状に変化させるステップと、前記ロボット装置に対して、前記固定形状に変化させた前記変形物の少なくとも一部分を作業の開始状態の姿勢に推移させる動作を実行させるステップと、前記変形物の少なくとも一部分を前記所定の固定形状に変化させ、かつ前記開始状態の姿勢に推移させた後に、前記ロボット装置に対して、前記変形物を前記作業の目標状態に到達させるためのテンプレート動作を実行させるステップと、を実行する、情報処理方法である。
また、例えば、本発明の一側面に係る制御プログラムは、対象物の複数の箇所を支持することにより当該対象物を把持するように構成された把持機構を備えるロボット装置の動作を制御するためのプログラムであって、コンピュータに、前記把持機構により変形物を把持した前記ロボット装置に対して、当該変形物の複数の箇所に力を作用させることで、当該変形物の少なくとも一部分を所定の固定形状に変化させるステップと、前記ロボット装置に対して、前記固定形状に変化させた前記変形物の少なくとも一部分を作業の開始状態の姿勢に推移させる動作を実行させるステップと、前記変形物の少なくとも一部分を前記所定の固定形状に変化させ、かつ前記開始状態の姿勢に推移させた後に、前記ロボット装置に対して、前記変形物を前記作業の目標状態に到達させるためのテンプレート動作を実行させるステップと、を実行させるための、プログラムである。
本発明によれば、作業の対象物として変形物を取り扱う際に、当該作業の失敗確率を低減し、かつ作業の速度の向上を図ることができる。
図1は、本発明が適用される場面の一例を模式的に例示する。 図2は、実施の形態に係るコントローラのハードウェア構成の一例を模式的に例示する。 図3は、実施の形態に係るロボット装置の一例を模式的に例示する。 図4Aは、実施の形態に係るコントローラの学習処理に関するソフトウェア構成の一例を模式的に例示する。 図4Bは、実施の形態に係るコントローラの制御処理に関するソフトウェア構成の一例を模式的に例示する。 図5は、実施の形態に係るコントローラの学習処理に関する処理手順の一例を例示する。 図6Aは、実施の形態に係るロボット装置に教示する動作の一例を模式的に例示する。 図6Bは、実施の形態に係るロボット装置に教示する動作の一例を模式的に例示する。 図6Cは、実施の形態に係るロボット装置に教示する動作の一例を模式的に例示する。 図6Dは、実施の形態に係るロボット装置に教示する動作の一例を模式的に例示する。 図6Eは、実施の形態に係るロボット装置に教示する動作の一例を模式的に例示する。 図6Fは、実施の形態に係るロボット装置に教示する動作の一例を模式的に例示する。 図6Gは、実施の形態に係るロボット装置に教示する動作の一例を模式的に例示する。 図7は、実施の形態に係るコントローラの制御処理に関する処理手順の一例を例示する。 図8は、他の形態に係る把持機構の一例を模式的に例示する。 図9は、他の形態に係る変形物の一例を模式的に例示する。
以下、本発明の一側面に係る実施の形態(以下、「本実施形態」とも表記する)を、図面に基づいて説明する。ただし、以下で説明する本実施形態は、あらゆる点において本発明の例示に過ぎない。本発明の範囲を逸脱することなく種々の改良や変形を行うことができることは言うまでもない。つまり、本発明の実施にあたって、実施形態に応じた具体的構成が適宜採用されてもよい。なお、本実施形態において登場するデータを自然言語により説明しているが、より具体的には、コンピュータが認識可能な疑似言語、コマンド、パラメータ、マシン語等で指定される。
§1 適用例
図1は、本実施形態に係るロボットシステムの適用場面の一例を模式的に例示する。図1に示されるとおり、本実施形態に係るロボットシステムは、コントローラ1及びロボット装置2を備える。
本実施形態に係るコントローラ1は、ロボット装置2に動作を教示するように構成されたコンピュータとして動作する。この教示の処理を実行するコントローラ1は、学習装置の一例である。ロボット装置2は、対象物の複数の箇所を支持することにより当該対象物を把持するように構成された把持機構30を備える。まず、コントローラ1は、把持機構30により変形物を把持したロボット装置2に対して、変形物の複数の箇所に力を作用させることで、変形物の少なくとも一部分を所定の固定形状に変化させる動作を教示する。次に、コントローラ1は、ロボット装置2に対して、固定形状に変化させた変形物の少なくとも一部分を作業の開始状態の姿勢に推移させる動作を教示する。そして、コントローラ1は、変形物の少なくとも一部分を所定の固定形状に変化させ、かつ開始状態の姿勢に推移させた後に、ロボット装置2に対して、変形物を作業の目標状態に到達させるためのテンプレート動作を教示する。
また、本実施形態に係るコントローラ1は、ロボット装置2の動作を制御するように構成されたコンピュータとしても動作する。この制御の処理を実行するコントローラ1は、制御装置の一例である。まず、コントローラ1は、把持機構30により変形物を把持したロボット装置2に対して、変形物の複数の箇所に力を作用させることで、変形物の少なくとも一部分を所定の固定形状に変化させる。次に、コントローラ1は、ロボット装置2に対して、固定形状に変化させた変形物の少なくとも一部分を作業の開始状態の姿勢に推移させる動作を実行させる。そして、コントローラ1は、変形物の少なくとも一部分を所定の固定形状に変化させ、かつ開始状態の姿勢に推移させた後に、ロボット装置2に対して、変形物を作業の目標状態に到達させるためのテンプレート動作を実行させる。
以上のとおり、本実施形態では、把持機構30により与えられる力により、変形物の少なくとも一部分を固定形状に変化させることで、この少なくとも一部分の剛性を高めることができる。これにより、この固定形状に変化させた変形物の少なくとも一部分で他の形状への変形が生じるのを抑えることができる。そのため、この少なくとも一部分において、対象の作業を実行する際の不確定要素を減らすことができ、これによって、対象の作業の失敗確率を低減することができる。加えて、固定形状に変化させることで剛性を高めた状態が維持されていれば、把持機構30による変形物の運搬速度を上げても、この固定形状に変化させた少なくとも一部分において変形が生じるのを抑えることができる。そのため、対象の作業を実行する際の不確定要素を減らしたまま、作業の速度を上げることもできる。したがって、本実施形態によれば、作業の対象物として変形物を取り扱う際に、作業の失敗確率を低減し、かつ作業の速度の向上を図ることができる。
更には、本実施形態によれば、固定形状が同じであれば、作業及び変形物が異なっても、それぞれの固定形状に変化させた部分を同じ形状の剛体として取り扱い可能であるため、教示した動作を他の場面にも転用可能である。したがって、教示した動作の再利用性を高め、ロボット装置2に動作を教示する作業の効率を高めることができる。また、本実施形態によれば、固定形状に変化させた部分は剛体として取り扱うことができ、この部分の変形を考慮しなくてもよくなるため、目標状態を容易に設定可能となる。そのため、ロボット装置2に動作を教示する作業を簡易化することができる。
なお、ロボット装置2の構成は、特に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。ロボット装置2は、例えば、垂直多関節ロボット、スカラロボット、パラレルリンクロボット、直交ロボット、協調ロボット等の1又は複数台のマニピュレータ(産業用ロボット)により構成されてよい。把持機構30の構成は、複数の箇所で対象物を支持可能であれば、特に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。把持機構30は、例えば、グリッパ、その他のロボットハンド等の1又は複数のエンドエフェクタにより構成されてよい。
変形物は、紐状部材、シート状部材、ボール、バネ等の幾何学的に形状が変化し得る物体である。作業の対象となる変形物の種類は、実施の形態に応じて適宜選択されてよい。固定形状は、複数の箇所から作用する力により、一時的に形状が固定された状態であって、運搬等の作業中に形状が変化しない又は変化し難い状態である。固定形状に変化させる変形物の範囲は適宜決定されてよい。固定形状に変化させる範囲は、変形物全体であってもよいし、変形物の一部分であってもよい。固定形状に変化させるために変形物に作用させる力の種類は、実施の形態に応じて適宜選択されてよい。作用させる力は、例えば、引張力、押圧力等であってよい。固定形状の形態は、変形物の種類、変化させる範囲、作用させる力の種類、遂行する作業の内容等に応じて適宜決定されてよい。なお、例えば、作用させる力よりも大きな力が作用した場合等の予期せぬ外力が作用した場合には、固定形状に変化させた部分が変形することは許容されてよい。
作業の開始状態は、テンプレート動作を開始する時点の状態である。目標状態は、テンプレート動作を実行した後に達成される状態である。テンプレート動作は、開始状態から目標状態まで作業の状態を推移させるための定型の動作である。テンプレート動作の内容は、特に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。コントローラ1は、1又は複数のテンプレート動作をロボット装置2に実行させてよい。これに応じて、1又は複数の開始状態及び目標状態が設定されてよい。各動作の教示には、例えば、人手により直接的に動作させる(ダイレクトティーチング)、人手による作り込み(例えば、ティーチングペンダントの利用、プログラミング等)、自動計画(例えば、モーションプランニング)等の方法が採用されてよい。
図1に示されるとおり、本実施形態では、ロボット装置2は、2台のマニピュレータ20を備える。各マニピュレータ20は、エンドエフェクタとしてグリッパ25を備えている。把持機構30は、これら2つのグリッパ25により構成される。ロボット装置2の遂行する作業は、ベルト4を対象部品5に組み付けることである。ベルト4は紐状部材の一例であり、紐状部材は変形物の一例である。組み付け先となる対象部品5は、2つのプーリ(51、52)を備えている。作業は、2つのプーリ(51、52)間にベルト4を組み付けることを含んでいる。本実施形態では、ロボット装置2の動作はカメラCAにより観測されており、カメラCAにより得られる撮影画像がロボット装置2の動作の制御にフィードバックされる。カメラCAは、画像センサの一例である。
§2 構成例
[ハードウェア構成]
<コントローラ>
図2は、本実施形態に係るコントローラ1のハードウェア構成の一例を模式的に例示する。図2に示されるとおり、本実施形態に係るコントローラ1は、制御部11、記憶部12、外部インタフェース13、入力装置14、出力装置15、及びドライブ16が電気的に接続されたコンピュータである。なお、図2では、外部インタフェースを「外部I/F」と記載している。
制御部11は、ハードウェアプロセッサであるCPU(Central Processing Unit)、RAM(Random Access Memory)、ROM(Read Only Memory)等を含み、プログラム及び各種データに基づいて情報処理を実行するように構成される。記憶部12は、メモリの一例であり、例えば、ハードディスクドライブ、ソリッドステートドライブ等で構成される。本実施形態では、記憶部12は、学習プログラム81、制御プログラム82、学習結果データ125等の各種情報を記憶する。
学習プログラム81は、ロボット装置2に動作を教示する後述の情報処理(図5)をコントローラ1に実行させるためのプログラムである。学習プログラム81は、当該情報処理の一連の命令を含む。学習結果データ125は、ロボット装置2に教示した動作に関する情報を示す。学習結果データ125は、学習プログラム81を実行した結果として生成される。制御プログラム82は、ロボット装置2の動作を制御する後述の情報処理(図7)をコントローラ1に実行させるためのプログラムである。制御プログラム82は、当該情報処理の一連の命令を含む。詳細は後述する。
外部インタフェース13は、例えば、USB(Universal Serial Bus)ポート、専用ポート等であり、外部装置と接続するためのインタフェースである。外部インタフェース13の種類及び数は、接続される外部装置の種類及び数に応じて適宜選択されてよい。本実施形態では、コントローラ1は、外部インタフェース13を介して、ロボット装置2に接続される。これにより、コントローラ1は、ロボット装置2の動作を制御可能に構成される。
ただし、ロボット装置2の動作を制御するための構成は、このような例に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。例えば、コントローラ1及びロボット装置2が通信インタフェースを備える場合、コントローラ1は、通信インタフェースを介してロボット装置2に接続されてよい。また、ロボット装置2に他の情報処理装置(例えば、他のコントローラ)が接続される場合、コントローラ1は、他の情報処理装置を介してロボット装置2に接続されてもよい。
入力装置14は、例えば、マウス、キーボード等の入力を行うための装置である。また、出力装置15は、例えば、ディスプレイ、スピーカ等の出力を行うための装置である。オペレータは、入力装置14及び出力装置15を利用することで、コントローラ1を操作することができる。
ドライブ16は、例えば、CDドライブ、DVDドライブ等であり、記憶媒体91に記憶されたプログラム等の各種情報を読み込むためのドライブ装置である。記憶媒体91は、コンピュータその他装置、機械等が、記憶されたプログラム等の各種情報を読み取り可能なように、当該プログラム等の情報を、電気的、磁気的、光学的、機械的又は化学的作用によって蓄積する媒体である。上記学習プログラム81及び制御プログラム82の少なくとも一方は、記憶媒体91に記憶されていてもよい。コントローラ1は、この記憶媒体91から、上記学習プログラム81及び制御プログラム82の少なくとも一方を取得してもよい。なお、図2では、記憶媒体91の一例として、CD、DVD等のディスク型の記憶媒体を例示している。しかしながら、記憶媒体91の種類は、ディスク型に限られなくてもよく、ディスク型以外であってもよい。ディスク型以外の記憶媒体として、例えば、フラッシュメモリ等の半導体メモリを挙げることができる。ドライブ16の種類は、記憶媒体91の種類に応じて任意に選択されてよい。
なお、コントローラ1の具体的なハードウェア構成に関して、実施形態に応じて、適宜、構成要素の省略、置換及び追加が可能である。例えば、制御部11は、複数のハードウェアプロセッサを含んでもよい。ハードウェアプロセッサは、マイクロプロセッサ、FPGA(field-programmable gate array)、DSP(digital signal processor)等で構成されてよい。記憶部12は、制御部11に含まれるRAM及びROMにより構成されてもよい。外部インタフェース13、入力装置14、出力装置15及びドライブ16の少なくともいずれかは省略されてもよい。コントローラ1は、複数台のコンピュータで構成されてもよい。この場合、各コンピュータのハードウェア構成は、一致していてもよいし、一致していなくてもよい。また、コントローラ1は、提供されるサービス専用に設計された情報処理装置の他、汎用のPC(Personal Computer)(例えば、デスクトップPC、タブレットPC等)、PLC(programmable logic controller)等であってもよい。
<ロボット装置>
図3は、本実施形態に係るロボット装置2を構成するマニピュレータ20のハードウェア構成の一例を模式的に例示する。
本実施形態に係るマニピュレータ20は、6軸の垂直多関節型の産業用ロボットであり、台座部200及び6つの関節部201~206を備えている。各関節部201~206は、サーボモータ(不図示)を内蔵していることで、各軸を中心に回転可能に構成されている。第1関節部201は、台座部200に接続されており、先端側の部分を台座の軸周りに回転させる。第2関節部202は、第1関節部201に接続されており、先端側の部分を前後方向に回転させる。第3関節部203は、リンク211を介して第2関節部202に接続されており、先端側の部分を上下方向に回転させる。第4関節部204は、リンク212を介して第3関節部203に接続されており、先端側の部分をリンク212の軸周りに回転させる。第5関節部205は、リンク213を介して第4関節部204に接続されており、先端側の部分を上下方向に回転させる。第6関節部206は、リンク214を介して第5関節部205に接続されており、先端側の部分をリンク214の軸周りに回転させる。第6関節部206の先端側には、エンドエフェクタとしてグリッパ25が取り付けられている。
各関節部201~206には、エンコーダ(不図示)が更に内蔵されている。エンコーダは、各関節部201~206の角度を測定するように構成されている。エンコーダの種類は、特に限定されなくてよく、実施の形態に応じて適宜選択されてよい。エンコーダの測定値は、各関節部201~206の角度を制御するのに利用される。各関節部201~206の角度を制御する方法は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。各関節部201~206の制御には、例えば、PID(Proportional-Integral-Differential)制御、PI制御等の公知の方法が採用されてよい。また、各関節部201~206の角度とグリッパ25の位置との間の変換は、順運動学及び逆運動学に基づいて行われてよい。
なお、マニピュレータ20のハードウェア構成は、このような例に限定されなくてもよい。マニピュレータ20の具体的なハードウェア構成に関して、実施の形態に応じて適宜、構成要素の省略、置換及び追加が可能である。例えば、マニピュレータ20は、制御量又はその他の属性を観測するために、エンコーダ以外のセンサを備えてもよい。一例として、マニピュレータ20は、触覚センサを更に備えてもよい。触覚センサは、グリッパ25に作用する力を検知するように適宜配置されてよい。この場合、触覚センサの測定データに基づいて、グリッパ25に過剰な力が作用しているか否かを検知することができる。マニピュレータ20の動作は、触覚センサの測定データに基づいて、グリッパ25に過剰な力が作用しないように制御されてよい。触覚センサは、グリッパ25に作用する力を測定可能な他のセンサ(例えば、トルクセンサ、圧力センサ等)に置き換えられてもよい。また、マニピュレータ20の軸数は、6軸に限られなくてもよく、実施の形態に応じて適宜選択されてよい。マニピュレータ20には、公知の産業用ロボットが採用されてよい。
[ソフトウェア構成]
(教示処理時)
図4Aは、本実施形態に係るコントローラ1の動作教示の情報処理に関するソフトウェア構成の一例を模式的に例示する。
コントローラ1の制御部11は、記憶部12に記憶された学習プログラム81をRAMに展開する。そして、制御部11は、RAMに展開された学習プログラム81に含まれる命令をCPUにより解釈及び実行して、各構成要素を制御する。これにより、図4Aに示されるとおり、本実施形態に係るコントローラ1は、把持学習部110、変形学習部111、位置決め学習部112、及びテンプレート学習部113をソフトウェアモジュールとして備えるコンピュータとして動作する。すなわち、本実施形態では、動作教示の情報処理に関する各ソフトウェアモジュールは、制御部11(CPU)により実現される。
把持学習部110は、ロボット装置2に対して、把持機構30により変形物を把持する動作を教示する。変形学習部111は、把持機構30により変形物を把持したロボット装置2に対して、変形物の複数の箇所に力を作用させることで、変形物の少なくとも一部分を所定の固定形状に変化させる動作を教示する。位置決め学習部112は、ロボット装置2に対して、固定形状に変化させた変形物の少なくとも一部分を作業の開始状態の姿勢に推移させる動作を教示する。この教示により、開始状態の位置決めが達成される。テンプレート学習部113は、変形物の少なくとも一部分を所定の固定形状に変化させ、かつ開始状態の姿勢に推移させた後に、ロボット装置2に対して、変形物を作業の目標状態に到達させるためのテンプレート動作を教示する。各教示の結果は、学習結果データ125として所定の記憶領域に保存される。
(制御処理時)
図4Bは、本実施形態に係るコントローラ1の制御処理に関するソフトウェア構成の一例を模式的に例示する。
コントローラ1の制御部11は、記憶部12に記憶された制御プログラム82をRAMに展開する。そして、制御部11は、RAMに展開された制御プログラム82に含まれる命令をCPUにより解釈及び実行して、各構成要素を制御する。これにより、図4Bに示されるとおり、本実施形態に係るコントローラ1は、把持指令部115、変形指令部116、位置決め指令部117、及びテンプレート指令部118をソフトウェアモジュールとして備えるコンピュータとして動作する。すなわち、本実施形態では、制御処理に関する各ソフトウェアモジュールも、制御部11(CPU)により実現される。
把持指令部115は、ロボット装置2に対して、把持機構30により変形物を把持する動作を実行させる。変形指令部116は、把持機構30により変形物を把持したロボット装置2に対して、変形物の複数の箇所に力を作用させることで、変形物の少なくとも一部分を所定の固定形状に変化させる動作を実行させる。位置決め指令部117は、ロボット装置2に対して、固定形状に変化させた変形物の少なくとも一部分を作業の開始状態の姿勢に推移させる動作を実行させる。テンプレート指令部118は、変形物の少なくとも一部分を所定の固定形状に変化させ、かつ開始状態の姿勢に推移させた後に、ロボット装置2に対して、変形物を作業の目標状態に到達させるためのテンプレート動作を実行させる。テンプレート指令部118は、動作指令部の一例である。各動作の制御には、上記教示の結果を示す学習結果データ125が利用されてよい。
(その他)
動作教示及び制御処理の各ソフトウェアモジュールに関しては後述する動作例で詳細に説明する。なお、本実施形態では、動作教示及び制御処理の各ソフトウェアモジュールがいずれも汎用のCPUによって実現される例について説明している。しかしながら、以上のソフトウェアモジュールの一部又は全部が、1又は複数の専用のプロセッサにより実現されてもよい。また、コントローラ1の動作教示及び制御処理に関するソフトウェア構成に関して、実施形態に応じて、適宜、ソフトウェアモジュールの省略、置換及び追加が行われてもよい。
§3 動作例
[教示処理]
図5は、本実施形態に係るコントローラ1の動作教示に関する処理手順の一例を示すフローチャートである。以下で説明する処理手順は、教示方法の一例である。ただし、以下で説明する処理手順は一例に過ぎず、各ステップは可能な限り変更されてよい。更に、以下で説明する処理手順について、実施の形態に応じて、適宜、ステップの省略、置換、及び追加が可能である。
(ステップS100)
ステップS100では、制御部11は、把持学習部110として動作し、ロボット装置2に対して、把持機構30により変形物を把持する動作を教示する。把持する動作の内容は、変形物の種類、把持機構30の構成等に応じて適宜決定されてよい。また、変形物が配置される所定の位置は、実施の形態に応じて適宜決定されてよい。
図6Aは、把持機構30により変形物を把持する動作の一例を模式的に例示する。本実施形態では、変形物は、ベルト4である。ベルト4は、無端ベルトであり、輪状に形成されている。ベルト4の種類は、特に限定されなくてよく、実施の形態に応じて選択されてよい。ベルト4は、例えば、ゴムベルト、歯付きベルト等であってよい。把持機構30は、2つのグリッパ25を備えることで、ベルト4を二箇所で支持可能に構成されている。変形物を把持することは、ベルト4を二箇所で支持することである。ベルト4を二箇所で支持することは、2つのグリッパ25それぞれによりベルト4を把持することにより構成される。ベルト4は、所定の位置に適宜配置されてよい。ベルト4の配置場所及び方法は、グリッパ25によりベルト4を把持可能であれば、特に限定されなくてよく、実施の形態に応じて適宜決定されてよい。本実施形態では、制御部11は、ロボット装置2に対して、把持機構30の2つのグリッパ25により、所定の位置に配置されたベルト4を二箇所で把持する動作を教示する。教示する動作には、各グリッパ25をベルト4の配置された位置まで移動する動作及び移動した後に、各グリッパ25を開閉して、ベルト4を支持(把持)する動作が含まれる。
動作の教示には、例えば、人手により直接的に動作させる(ダイレクトティーチング)、人手による作り込み(例えば、ティーチングペンダントの利用、プログラミング等)、自動計画(例えば、モーションプランニング)等の方法が採用されてよい。人手により動作を教示する場合、制御部11は、外部インタフェース13、入力装置14等を介してオペレータの入力又は操作を受け付けることにより、教示に係る動作の制御指令の系列を生成する。自動的に動作を教示する場合、制御部11は、モーションプランニング等の自動計画により、ロボット装置2の動作を伴いながら又はロボット装置2の動作をシミュレートしながら、教示に係る動作の制御指令の系列を生成する。自動計画には、画像センサ(カメラCA)、触覚センサ、トルクセンサ、圧力センサ等のセンサが用いられてよい。制御指令の形式は、特に限定されなくてよく、実施の形態に応じて適宜選択されてよい。制御指令は、例えば、把持機構30(各グリッパ25)の操作量により構成されてもよい。ステップS110以降の動作の教示についても同様である。
ここで、ベルト4は、2つの印41を備えている。印41の構成は、ベルト4のその他の部分(すなわち、印41の設けられていない部分)と区別可能であれば、特に限定されなくてよく、実施の形態に応じて適宜決定されてよい。印41の構成は、例えば、形状、色彩等を含んでよい。各印41は、ベルト4の少なくとも一部を固定形状に変化させるために力を作用させるベルト4の複数の箇所それぞれに設けられる。印41の数は、2つに限られなくてよく、実施の形態に応じて適宜決定されてよい。印41は、力を作用させる候補の位置に設けられてよい。また、複数の印41のうちの一部の構成と他の構成とは異なっていてもよい。
これに応じて、ロボット装置2は、カメラCAを備えている。カメラCAは、ベルト4の配置された作業環境を撮影するように配置される。得られる撮影画像が印41の位置特定に利用可能であれば、カメラCAの種類は、特に限定されなくてよく、実施の形態に応じて適宜選択されてよい。カメラCAは、例えば、一般的なRGBカメラ、深度カメラ、赤外線カメラ等であってよい。制御部11は、制御部11は、ロボット装置2に対して、カメラCAにより得られる撮影画像を利用して、ベルト4の各印41の設けられた箇所を各グリッパ25により把持する動作を教示してもよい。
具体的には、カメラCAにより得られた撮影画像は、フィードバックに用いられてよい。人手により動作を教示する場合、オペレータの入力又は操作に応じて、制御部11は、カメラCAにより得られる撮影画像に写る各印41の位置に各グリッパ25を移動するための制御指令の系列を生成してもよい。自動計画に動作を教示する場合、制御部11又はロボット装置2は、得られた撮影画像から各印41の位置を特定し、特定した各位置を目標値として各グリッパ25を移動するように把持機構30の動作を適宜制御又はシミュレートしてもよい。この結果に基づいて、制御部11は、ベルト4を把持する動作のための制御指令の系列を生成してもよい。各印41の位置を特定する処理には、CAD(computer-aided design)マッチング等の公知の画像処理が用いられてよい。CADマッチングを採用する場合、グリッパ25、ベルト4の各印41、対象部品5、各プーリ(51、52)等の各対象物のCAD情報は、記憶部12、外部記憶装置等の記憶領域に保存されていよく、制御部11は、CAD情報を適宜取得してよい。これにより、ベルト4の所望の位置を正確に把持する動作をロボット装置2に教示することができる。変形物を把持する動作の教示が完了すると、制御部11は、次のステップS110に処理を進める。
(ステップS110)
ステップS110では、制御部11は、変形学習部111として動作し、把持機構30により変形物を把持したロボット装置2に対して、変形物の複数の箇所に力を作用させることで、変形物の少なくとも一部分を所定の固定形状に変化させる動作を教示する。固定形状に変化させる動作の内容は、変形物の種類、把持機構30の構成等に応じて適宜決定されてよい。
図6Bは、把持機構30によりベルト4を所定の固定形状に変化させる動作の一例を模式的に例示する。本実施形態では、変形物の複数の箇所に力を作用させることは、ベルト4を支持した二箇所から互いに相反する二方向(図の左右方向)にベルト4を引っ張ることを含む。すなわち、変形物の少なくとも一部分を所定の固定形状に変化させる動作は、ベルト4を把持した二箇所に対して互いに相反する二方向に張力が作用するように、各グリッパ25を互いに相反する二方向それぞれに移動させる動作により構成される。
本実施形態では、制御部11は、ロボット装置2に対して、このように各グリッパ25を移動させる動作を教示する。動作の教示には、人手及び自動計画のいずれの方法が採用されてよい。この動作により、ベルト4の少なくとも一部は、直線状の固定形状に変化する。具体的には、ベルト4は無端ベルトであるため、グリッパ25により把持した二箇所に挟まれる一方の部分401の長さと他方の部分402の長さとが同じである場合、両方の部分(401、402)が直線状の固定形状に変化する。そうではない場合、一方の部分401及び他方の部分402のうち長さの短い方は直線状の固定形状に変化するが、長さの長い方は、各グリッパ25から垂れ下がり、形状の変化し得る状態が維持される。固定形状として、いずれの形態が採用されてよい。また、ベルト4に作用させる力の程度は、実施の形態に応じて適宜決定されてよい。
なお、センサにより得られるデータに基づいて、変形物の少なくとも一部分が所定の固定形状に変化したことを判定するための条件が適宜設定されてよい。一例として、変形物の固定形状は一定である。上記の例では、ベルト4の固定形状は、一定の直線状である。そこで、カメラCAにより得られる撮影画像に写る変形物の少なくとも一部分が固定形状のCADモデルに適合する形状になることが、変形物の少なくとも一部分が所定の固定形状に変化したことの指標として取り扱われてよい。変形物の固定形状のCADモデルを含むCAD情報は任意の方法で生成されてよく、このCAD情報は、記憶部12、外部記憶装置等の記憶領域に適宜保存されてよい。
その他の例として、変形物の少なくとも一部分を所定の固定形状に変化させる際には、変形物に与える各力に対する一定の反作用の力が把持機構30(各グリッパ25)に働く。そこで、この力を測定するために、ロボット装置2は、例えば、触覚センサ、トルクセンサ、圧力センサ等の、把持機構30(各グリッパ25)に作用する力を測定するセンサを備えていてもよい。このセンサにより測定される把持機構30(各グリッパ25)に作用する力が所定の基準を満たすことが、変形物の少なくとも一部分が所定の固定形状に変化したことの指標として取り扱われてよい。所定の基準は、変形物の少なくとも一部分を所定の固定形状に変化させる際に把持機構30(各グリッパ25)に作用する力を測定又はシミュレートした結果に基づいて適宜決定されてよい。
モーションプランニング等の自動計画により動作を教示する場合、制御部11は、変形物の少なくとも一部分が所定の固定形状に変化したことの条件を満たすように、把持機構30(各グリッパ25)の動作を適宜制御又はシミュレートしてもよい。この結果に基づいて、制御部11は、変形物の少なくとも一部分を所定の固定形状に変化させる動作のための制御指令の系列を生成してもよい。変形物の少なくとも一部分を所定の固定形状に変化させる動作の教示が完了すると、制御部11は、次のステップS120に処理を進める。
(ステップS120)
ステップS120では、制御部11は、位置決め学習部112として動作し、ロボット装置2に対して、固定形状に変化させた変形物の少なくとも一部分を作業の開始状態の姿勢に推移させる動作を教示する。作業の開始状態の姿勢に推移させる動作の内容は、対象作業、変形物の種類、把持機構30の構成、固定形状の状態等に応じて適宜決定されてよい。
図6Cは、固定形状に変化させたベルト4の少なくとも一部分を作業の開始状態の姿勢に推移させる動作の一例を模式的に例示する。本実施形態では、ロボット装置2に教示する作業は、対象部品5の2つのプーリ(51、52)の間にベルト4を組み付けることを含んでいる。開始状態の姿勢に推移させることは、ベルト4の固定形状に変化させた部分45を2つのプーリ(51、52)のいずれか1つに接するように配置することを含んでよい。すなわち、本実施形態では、作業の開始状態の一例は、ベルト4の固定形状に変化させた部分45を2つのプーリ(51、52)のいずれか1つに接するように配置した状態である。
詳細には、2つのプーリ(51、52)のいずれか1つをベルト4の内側に入れ、かつ固定形状に変化させた部分45の内周面を当該いずれか1つに接するように把持機構30(各グリッパ25)を移動する動作が、作業の開始状態の姿勢に推移させる動作の一例である。本実施形態では、制御部11は、このような動作をロボット装置2に教示する。動作の教示には、人手及び自動計画のいずれの方法が採用されてよい。固定形状に変化させた部分45に接するプーリは、2つのプーリ(51、52)から適宜選択されてよい。また、固定形状に変化させた部分45のプーリに接する位置は、実施の形態に応じて適宜決定されてよい。
図6Cでは、それぞれの一例として、固定形状に変化させた部分45に接するプーリにはプーリ51が選択され、当該部分45の内周面の中央付近がプーリ51の外周面の上端部分に接するように位置決めされている。教示方法の一例として、制御部11は、カメラCAにより得られる撮影画像に対してCADマッチングを実行することで、ベルト4の固定形状に変化させた部分45とプーリ51と間の相対座標(位置及び姿勢)を算出してもよい。対象物の形状が変化する場合、この対象物に対して一定の形状のCADモデルを照合するのは困難であるため、このCADマッチングの結果により対象物の座標を算出するのは困難である。これに対して、本実施形態では、固定形状に変化させた部分45は一定の形状を有するため、制御部11は、CADマッチングにより、この部分45の座標を容易に算出することができる。制御部11は、算出された相対座標を、部分45の中央付近がプーリ51の上端部分に接する状態の相対座標に変化させるように、各グリッパ25を移動する動作をモーションプランニングにより生成してもよい。これにより、固定形状に変化させた部分45の中央付近をプーリ51の上端部分に接するように把持機構30(各グリッパ25)を移動させる動作を教示することができる。固定形状に変化させた変形物の少なくとも一部分を作業の開始状態の姿勢に推移させる動作の教示が完了すると、制御部11は、次のステップS130に処理を進める。
(ステップS130)
ステップS130では、制御部11は、テンプレート学習部113として動作し、変形物の少なくとも一部分を所定の固定形状に変化させ、かつ開始状態の姿勢に推移させた後に、ロボット装置2に対して、変形物を作業の目標状態に到達させるためのテンプレート動作を教示する。テンプレート動作の内容は、対象作業の開始状態及び目標状態、変形物の種類、把持機構30の構成、固定形状の状態等に応じて適宜決定されてよい。目標状態は、対象作業、変形物の種類等に応じて適宜決定されてよい。
図6D~図6Gは、ロボット装置2に教示するテンプレート動作の一例を模式的に例示する。図6Gに例示されるとおり、本実施形態では、目標状態の一例は、ベルト4を2つのプーリ(51、52)の間に組み付けた状態である。対象部品5では、開始状態でベルト4の固定形状に変化させた部分45に接するプーリ51は、プーリ52よりも垂直方向上側に配置されている。
そこで、図6Dに例示されるとおり、まず、ベルト4に張力が作用した状態を維持したまま、2つのグリッパ25を一定の方向(図では下方向)に移動させる。この動作では、把持機構30の移動方向、移動量、各グリッパ25によりベルト4を引っ張る力等が指定されてよい。次に、一方のグリッパ25に対して、ベルト4を開放させ、ベルト4の組み付けに干渉しない位置まで移動させる。このとき、ベルト4に張力が作用した状態を維持するために、他方のグリッパ25を移動させてもよい。そして、図6E及び図6Fに例示されるとおり、ベルト4に張力が作用した状態を維持したまま、ベルト4を把持したグリッパ25をプーリ52の外周に沿うように移動させ、ベルト4の内周面をプーリ52の外周面にかける。この動作では、グリッパ25の移動の中心、移動方向、移動量等が指定されてよい。これにより、図6Gに例示されるとおり、ベルト4を2つのプーリ(51、52)の間に組み付けることができる。
これらの一連の動作が、テンプレート動作の一例である。上記のように、制御部11は、ロボット装置2に対して、変形物の複数の箇所に力を作用させた状態を維持しながら、テンプレート動作を実行することを教示してもよい。動作の教示には、人手及び自動計画のいずれの方法が採用されてよい。
なお、上記の例において、各動作における把持機構30の移動方向、移動量等のパラメータの値は、各プーリ(51、52)の直径及び配置に依存する。そのため、各プーリ(51、52)の直径及び配置の少なくとも一方が変更されても、CAD情報、CADマッチング等によりその変更量が特定できれば、このテンプレート動作におけるパラメータの値を容易に修正することができる。これは、ベルト4を対象部品5に組み付ける場面に限られず、遂行する作業の前提条件が変更されるあらゆる場面に応用可能である。作業の前提条件は、例えば、ベルト4の寸法及び形状、各グリッパ25の寸法、各プーリ(51、52)の直径及び配置等の作業の対象物の各種属性により規定されてよい。
そこで、テンプレート動作は、1又は複数の基本的な動作のシーケンスにより構成されてよく、各基本的な動作は、1又は複数のパラメータの値により調節可能に構成されてよい。上記の例では、基本的な動作は、下方向に移動すること、ベルト4を開放すること、プーリ52の外周に沿うように移動すること等である。基本的な動作の内容は、対象作業、変形物の種類、把持機構30の構成等に応じて適宜決定されてよい。これにより、作業の前提条件が変更されても、容易に修正可能なテンプレート動作を生成することができる。テンプレート動作の教示が完了すると、制御部11は、本実施形態に係る動作教示に関する処理手順を終了する。
なお、各ステップ(S100、S110、S120、S130)の処理順序は、このような例に限定されなくてもよく、実施の形態に応じて適宜入れ替えられてよい。各ステップ(S100、S110、S120、S130)は、それぞれ依存せずに独立に実行されてもよい。
また、各ステップ(S100、S110、S120、S130)における教示の結果は、任意のタイミングで、学習結果データ125として所定の記憶領域に保存されてよい。所定の記憶領域は、例えば、制御部11内のRAM、記憶部12、外部記憶装置、記憶メディア又はこれらの組み合わせであってよい。記憶メディアは、例えば、CD、DVD等であってよく、制御部11は、ドライブ16を介して記憶メディアに学習結果データ125を格納してもよい。外部記憶装置は、例えば、NAS(Network Attached Storage)等のデータサーバであってよい。或いは、外部記憶装置は、コントローラ1に接続された外付けの記憶装置であってもよい。
各教示に係る動作を再生可能であれば、学習結果データ125の形式は、特に限定されなくてよく、実施の形態に応じて適宜決定されてよい。例えば、学習結果データ125は、各教示の結果により生成された制御指令の系列により構成されてもよい。また、例えば、制御部11は、各教示の結果により生成された制御指令の系列を学習データとして使用して、学習モデルの機械学習を実施してもよい。学習モデルは、例えば、ニューラルネットワーク等により構成されてよい。機械学習の一例として、制御部11は、制御指令の系列における1又は複数の連続する指令値を訓練データとして使用し、その訓練データの次の指令値を正解データとして使用する。制御部11は、訓練データを与えると、正解データに適合する出力値を出力するように学習モデルのパラメータの値を調節する。学習モデルにニューラルネットワークを用いる場合、パラメータの値の調整には誤差逆伝播法が採用されてよい。これにより、制御部11は、現在値又は前の指令値を与えると、次の指令値を出力する能力を獲得した訓練済みの学習モデルを生成することができる。学習結果データ125は、この訓練済みの学習モデルに関する情報(例えば、学習モデルの構造を示す情報、各パラメータの値等)により構成されてもよい。
[制御処理]
図7は、本実施形態に係るコントローラ1の動作制御に関する処理手順の一例を示すフローチャートである。以下で説明する処理手順は、制御方法の一例である。ただし、以下で説明する処理手順は一例に過ぎず、各ステップは可能な限り変更されてよい。更に、以下で説明する処理手順について、実施の形態に応じて、適宜、ステップの省略、置換、及び追加が可能である。
(ステップS200)
ステップS200では、制御部11は、把持指令部115として動作し、ロボット装置2に対して、把持機構30により変形物を把持する動作を実行させる。
本実施形態では、制御部11は、学習結果データ125を参照し、ステップS100で教示した動作を再生する。すなわち、まず、制御部11は、ロボット装置2に対して、ベルト4の配置された所定の位置まで各グリッパ25を移動させる。そして、制御部11は、ロボット装置2に対して、各グリッパ25を開閉させ、ベルト4を支持させる。これにより、制御部11は、ロボット装置2に対して、把持機構30によりベルト4を二箇所で支持させることができる。具体的には、2つのグリッパ25それぞれによりベルト4を二箇所で把持させることができる。
この把持の動作を実行する際、カメラCAにより得られる撮影画像がフィードバックとして利用されてよい。ベルト4は、各グリッパ25の把持する箇所の指標として2つの印41を備えている。制御部11又はロボット装置2は、得られる撮影画像に対してCADマッチングを実行することで、ベルト4の各印41の位置を特定してもよい。そして、制御部11又はロボット装置2は、特定した各印41の位置を目標値として各グリッパ25を移動し、各印41の位置で各グリッパ25にベルト4を把持するようにロボット装置2の動作を適宜調節してもよい。これにより、制御部11は、ロボット装置2に対して、カメラCAにより得られる撮影画像に基づいて、ベルト4の2つの印41の設けられた箇所を把持機構30に支持(各グリッパ25に把持)させることで、把持機構30によりベルト4を把持させてもよい。これにより、ベルト4の所望の位置をロボット装置2に正確に把持させることができる。把持機構30により変形物を把持させると、制御部11は、次のステップS210に処理を進める。
(ステップS210)
ステップS210では、制御部11は、変形指令部116として動作し、把持機構30により変形物を把持したロボット装置2に対して、変形物の複数の箇所に力を作用させることで、変形物の少なくとも一部分を所定の固定形状に変化させる動作を実行させる。
本実施形態では、制御部11は、学習結果データ125を参照し、ステップS110で教示した動作を再生する。すなわち、制御部11は、ロボット装置2に対して、ベルト4を支持した二箇所から互いに相反する二方向に引っ張るように、各グリッパ25をそれぞれの方向に移動させる。これにより、制御部11は、把持機構30によりベルト4を把持したロボット装置2に対して、ベルト4の2箇所に力を作用させることで、ベルト4の部分45を直線状の固定形状に変化させることができる。
このとき、制御部11は、ロボット装置2に対して、変形物の複数の箇所から作用させた力のつり合う点が固定形状の範囲内に入るように変形物の複数の箇所に力を作用させることで、変形物の少なくとも一部分を固定形状に変化させてよい。本実施形態では、制御部11は、各グリッパ25により互いに相反する二方向に引っ張る力のつり合う点がベルト4の固定形状に変化させた直線状の部分45上又はその近傍に位置するように、各グリッパ25からベルト4に作用させる力を制御してもよい。上記ステップS110では、所定の固定形状に変化させる動作を教示する際に、そのような力の制御を更に教示してもよい。これにより、変形物の固定形状を安定的に保つことができる。
また、制御部11は、センサにより得られるデータに基づいて、変形物の少なくとも一部分が所定の固定形状に変化したか否かを判定してもよい。一例として、制御部11は、カメラCAにより得られる撮影画像に対してCADマッチングを実行することで、固定形状のCADモデルに適合する物体が存在するか否かを検出してもよい。固定形状のCADモデルに適合する物体が検出できた場合、制御部11は、変形物の少なくとも一部分が所定の固定形状に変化したと判定してもよい。他方、固定形状のCADモデルに適合する物体が検出できなかった場合、制御部11は、変形粒の少なくとも一部分が所定の固定形状に変化していないと判定してもよい。上記のとおり、変形物の固定形状は、一定である。本実施形態では、ベルト4の部分45の固定形状は、一定の直線状である。そのため、このCADマッチングの結果により、変形物の少なくとも一部分が所定の固定形状に変化したか否かを精度よく判定することができる。
この判定に利用可能なセンサは、カメラCAに限られなくてよい。その他の例として、把持機構30に作用する力を測定するセンサをロボット装置2が備える場合、制御部11は、このセンサにより測定される把持機構30に作用する力に応じて、変形物の少なくとも一部分が所定の固定形状に変化したか否かを判定してもよい。具体的に、センサにより測定された把持機構30に作用する力が所定の基準を満たす場合に、制御部11は、変形物の少なくとも一部分が所定の固定形状に変化したと判定してもよい。他方、センサにより測定された把持機構30に作用する力が所定の基準を満たさない場合、制御部11は、変形物の少なくとも一部分が所定の固定形状に変化していないと判定してもよい。
変形物の少なくとも一部分が所定の固定形状に変化したと判定した場合、制御部11は、この固定形状に変化させる動作を完了してよい。一方、変形物の少なくとも一部分が所定の固定形状に変化していないと判定した場合、制御部11は、ロボット装置2に対して、固定形状に変化させる動作の実行を継続させてよい。本ステップS210の処理を実行している間、この判定は、任意のタイミング(例えば、制御のタイミング)で繰り返し実行されてよい。所定の固定形状に変化させる動作が完了すると、制御部11は、次のステップS220に処理を進める。
(ステップS220)
ステップS220では、制御部11は、位置決め指令部117として動作し、ロボット装置2に対して、固定形状に変化させた変形物の少なくとも一部分を作業の開始状態の姿勢に推移させる動作を実行させる。
本実施形態では、制御部11は、学習結果データ125を参照し、ステップS120で教示した動作を再生する。すなわち、まず、制御部11は、ロボット装置2に対して、ベルト4に張力をかけた状態を維持したまま、2つのプーリ(51、52)のいずれか1つをベルト4の内側に入れるように各グリッパ25を移動させる。そして、制御部11は、ロボット装置2に対して、固定形状に変化させた部分45の中央付近の内周面を当該いずれか1つに接するように各グリッパ25を移動させる。これにより、ベルト4の固定形状に変化させた部分45を作業の開始状態の姿勢に推移させることができる。上記の例では、固定形状に変化させた部分45の内周面をプーリ51の上端部分に接するように、対象部品5に対してベルト4を位置決めすることができる。
なお、ステップS210と同様に、制御部11は、センサにより得られるデータに基づいて、固定形状に変化させた変形物の少なくとも一部分が作業の開始状態の姿勢に推移したか否かを判定してもよい。一例として、制御部11は、カメラCAにより得られる撮影画像に対してCADマッチングを実行することで、固定形状に変化させた変形物の少なくとも一部分の座標を算出してもよい。制御部11は、算出された座標が開始状態の姿勢に適合しているか否かに応じて、固定形状に変化させた変形物の少なくとも一部分が作業の開始状態の姿勢に推移したか否かを判定してもよい。上記の例では、制御部11は、固定形状に変化させた部分45及びプーリ51の間の相対座標を算出してもよい。そして、制御部11は、算出された相対座標が上記位置決めの状態に適合するか否かに応じて、ベルト4の固定形状に変化させた部分45が作業の開始状態に推移したか否かを判定してもよい。
作業の開始状態の姿勢に推移したか否かを判定する方法は、このような例に限定されなくてもよい。作業の開始状態において、固定形状に変化させた変形物の少なくとも一部分には、把持機構30以外の対象物からの力が作用してもよい。上記の例では、ベルト4の部分45にはプーリ51からの力が作用してもよい。この場合、制御部11は、例えば、把持機構30に作用する力を測定するセンサにより得られる測定データに基づいて、他の対象物からの力が作用したことを検知することにより、固定形状に変化させた変形物の少なくとも一部分が作業の開始状態の姿勢に推移したか否かを判定してもよい。
変形物の少なくとも一部分が作業の開始状態の姿勢に推移したと判定した場合、制御部11は、この開始状態の姿勢に推移させる動作を完了してよい。一方、変形物の少なくとも一部分が作業の開始状態の姿勢に推移していないと判定した場合、制御部11は、ロボット装置2に対して、開始状態の姿勢に推移させる動作の実行を継続させてよい。本ステップS220の処理を実行している間、この判定は、任意のタイミングで繰り返し実行されてよい。作業の開始状態の姿勢に推移させる動作が完了すると、制御部11は、次のステップS230に処理を進める。
(ステップS230)
ステップS230では、制御部11は、テンプレート指令部118として動作し、変形物の少なくとも一部分を所定の固定形状に変化させ、かつ開始状態の姿勢に推移させた後に、ロボット装置2に対して、変形物を作業の目標状態に到達させるためのテンプレート動作を実行させる。テンプレート動作が1又は複数の基本的な動作のシーケンスにより構成されている場合、ステップS230の処理を実行する前に、作業の前提条件の変更に応じて、各動作のパラメータの値が適宜修正されてよい。また、制御部11は、ロボット装置2に対して、複数の箇所に力を作用させた状態を維持しながら、テンプレート動作を実行させてよい。
本実施形態では、制御部11は、学習結果データ125を参照し、ステップS130で教示した動作を再生する。すなわち、まず、制御部11は、ロボット装置2に対して、ベルト4に張力が作用した状態を維持したまま、2つのグリッパ25を一定の方向に移動させる。次に、制御部11は、ロボット装置2に対して、一方のグリッパ25からベルト4を開放させ、この一方のグリッパ25をベルト4の組み付けに干渉しない位置まで移動させる。そして、制御部11は、ロボット装置2に対して、ベルト4に張力が作用した状態を維持したまま、ベルト4を把持したグリッパ25をプーリ52の外周に沿うように移動させ、ベルト4の内周面をプーリ52の外周面にかけさせる。このテンプレート動作により、ベルト4を目標状態に到達する、すなわち、2つのプーリ(51、52)間にベルト4を組み付けた状態にすることができる。
本実施形態では、ロボット装置2に対して、複数の箇所に力を作用させた状態を維持しながら、テンプレート動作を実行させることで、テンプレート動作を実行する際における変形物の形状についての不確定要素を減らすことができる。これにより、テンプレート動作の失敗確率を低減し、かつその速度の向上を図ることができる。なお、複数の箇所に力を作用させた状態を維持することには、テンプレート動作の間、任意のタイミングで作用する力が変化することにより、固定形状が変形すること又は解除されることが含まれてもよい。
テンプレート動作の実行が完了すると、制御部11は、本実施形態に係る動作制御に関する処理手順を終了する。なお、ベルト4及び対象部品5が繰り返し供給される場合、制御部11は、ステップS200~ステップS230の処理の実行を繰り返すことで、ロボット装置2に対して、供給されるベルト4を対象部品5に組み付ける動作を実行させてよい。
[特徴]
以上のとおり、本実施形態では、ステップS210の動作により、変形物の少なくとも一部分を固定形状に変化させることで、この少なくとも一部分の剛性を高めることができる。これにより、ステップS220以降の動作において、固定形状に変化させた変形物の少なくとも一部分で他の形状への変形が生じるのを抑えることができる。そのため、この少なくとも一部分において、対象の作業を実行する際の不確定要素を減らすことができ、これによって、ステップS220以降の動作(すなわち、対象の作業を遂行する動作)の失敗確率を低減することができる。加えて、固定形状に変化させることで剛性を高めた状態が維持されていれば、把持機構30による変形物の運搬速度を上げても、この固定形状に変化させた少なくとも一部分において変形が生じるのを抑えることができる。そのため、ステップS220以降の動作を実行する際の不確定要素を減らしたまま、作業の速度を上げることもできる。したがって、本実施形態によれば、作業の対象物として変形物を取り扱う際に、作業の失敗確率を低減し、かつ作業の速度の向上を図ることができる。上記の例では、ベルト4を2つのプーリ(51、52)間に組み付ける作業の失敗確率を低減し、かつ作業の速度の向上を図ることができる。ステップS100~ステップS130によれば、そのように作業を遂行する動作をロボット装置2に対して教示することができる。
また、本実施形態によれば、ステップS210における固定形状が同じであれば、作業及び変形物が異なっても、それぞれの固定形状に変化させた部分を同じ形状の剛体として取り扱い可能であるため、教示した動作を他の場面にも転用可能である。したがって、教示した動作の再利用性を高め、ロボット装置2に動作を教示する作業の効率を高めることができる。加えて、本実施形態によれば、固定形状に変化させた部分を剛体として取り扱うことができ、この部分の変形を考慮しなくてもよくなるため、目標状態を容易に設定可能となる。そのため、ロボット装置2に動作を教示する作業を簡易化することができる。更には、固定形状に変化させた部分は、形状が一定になるため、CADマッチングによる照合が容易になる。そのため、画像によるフィードバックによりロボット装置2の動作を容易に修正可能な環境を提供することができる。
また、本実施形態によれば、ステップS100により、変形物を把持する動作をロボット装置2に教示することができる。これに応じて、動作制御のフェーズでは、ステップS200により変形物を未把持のロボット装置2に対して変形物の把持を指示する段階から作業を開始することができる。
§4 変形例
以上、本発明の実施の形態を詳細に説明してきたが、前述までの説明はあらゆる点において本発明の例示に過ぎない。本発明の範囲を逸脱することなく種々の改良又は変形を行うことができることは言うまでもない。例えば、以下のような変更が可能である。なお、以下では、上記実施形態と同様の構成要素に関しては同様の符号を用い、上記実施形態と同様の点については、適宜説明を省略した。以下の変形例は適宜組み合わせ可能である。
<4.1>
上記実施形態において、ベルト4を組み付ける対象部品5の備えるプーリの数は2つに限られなくてもよい。対象部品5の備えるプーリの数は3つ以上であってもよい。この場合も、上記実施形態と同様に、ロボット装置2の遂行する作業は、複数のプーリにベルト4を組み付けることであってよく、開始状態の姿勢に推移させることは、ベルト4の固定形状に変化させた部分を複数のプーリのいずれか1つに接するように配置することを含んでよい。また、上記実施形態において、ロボット装置2の遂行する作業は、複数のプーリ以外の対象物にベルト4を組み付けること、或いは、組み付けること以外でベルト4に関するものであってよい。
上記実施形態において、変形物として取り扱われる紐状部材は、ベルト4に限られなくてもよい。紐状部材は、ベルト4以外に、例えば、チェーン、ケーブル等であってよい。紐状部材としてチェーンを取り扱うケースでは、ロボット装置2の遂行する作業の一例は、スプロケットにチェーンを組み付けることであってよい。紐状部材としてケーブルを取り扱うケースでは、ロボット装置2の遂行する作業の一例は、所定の場所にケーブルを引き回すことであってよい。それぞれのケースにおける作業の開始状態は、実施の形態に応じて適宜決定されてよい。また、それぞれのケースにおいて、上記実施形態と同様に、把持機構30は、紐状部材を二箇所で支持するように構成されてよく、変形物の複数の箇所に力を作用させることは、紐状部材を支持した二箇所から互いに相反する二方向に紐状部材を引っ張ることを含んでよい。
図8に例示されるとおり、紐状部材を二箇所で支持する構成は、2つのグリッパ25の例に限られなくてもよい。図8は、他の形態に係る把持機構30Aの構成の一例を模式的に例示する。本変形例に係る把持機構30Aは、2つの爪部251を備える1つのグリッパ25Aにより構成される。2つの爪部251は、互いに開閉可能に構成される。この場合、図8に例示されるとおり、紐状部材を二箇所で支持することは、グリッパ25Aの2つの爪部251をベルト4の内側に入れて、2つの爪部251の間隔を拡げて、ベルト4を内側から各爪部251で支持することにより構成されてよい。本変形例の場合も、上記実施形態と同様に、各爪部251の間隔を拡げて、ベルト4を支持する二箇所から互いに相反する二方向にベルト4を引っ張ることで、ベルト4の少なくとも一部分を固定形状に変化させることができる。把持機構30Aは、ベルト4以外の環状の紐状部材にも適用可能である。なお、紐状部材を引っ張る方向は、互いに相反する二方向に限られなくてよく、少なくとも一部分を固定形状に変化させることができれば、三方向以上であってもよい。この場合、把持機構は、紐状部材を三箇所以上で支持するように構成されてよい。
上記実施形態において、変形物は、紐状部材に限られなくてもよい。変形物は、紐状部材以外に、例えば、シート状部材、ボール、バネ等であってよい。シート状部材は、例えば、シール、フラットケーブル、布、服等であってよい。作業の内容は、変形物に応じて適宜決定されてよい。変形物としてシールを取り扱うケースでは、ロボット装置2の遂行する作業の一例は、シールを所定の場所に貼り付けることであってよい。変形物としてフラットケーブルを取り扱うケースでは、ロボット装置2の遂行する作業の一例は、フラットケーブルをコネクタに連結することであってよい。変形物として布を取り扱うケースでは、ロボット装置2の遂行する作業の一例は、所定の場所に布を配置すること(例えば、テーブルクロスをテーブル上にかけること等)であってよい。変形物として服を取り扱うケースでは、ロボット装置2の遂行する作業の一例は、服を折り畳むことであってよい。
また、作業の開始状態及び目標状態はそれぞれ、変形物及び作業の内容に応じて適宜決定されてよい。上記実施形態のように、ロボット装置2の遂行する作業が、変形物を対象物に取り付ける(例えば、組み付ける、貼り付ける)ことである場合、作業の開始状態は、変形物と対象物との間の相対座標(位置及び姿勢)により規定されてよい。すなわち、作業の開始状態の一例は、変形物の固定形状に変化させた部分を対象物に対して所望の位置及び姿勢で配置した状態であってよい。一方、上記服を折り畳むケースのように、ロボット装置2の遂行する作業が、変形物を単独で変位又は変形することである場合、作業の開始状態の一例は、変形物の固定形状に変化させた部分を目標状態に到達しやすい位置及び姿勢した状態であってよい。上記服を折り畳むケースでは、例えば、目標状態の一例は、服を折り畳んだ状態であってよく、開始状態の一例は、服の一部分を固定形状に変化させて、固定形状に変化させた部分を把持機構により持ち上げた状態であってよい。
図9は、変形物としてシート状部材4Bを取り扱う場合に、変形物の少なくとも一部分を固定形状に変化させる場面の一例を模式的に例示する。図9に例示されるとおり、変形物としてシート状部材4Bを取り扱うケースでは、上記実施形態と同様に、変形物の複数の箇所に力を作用させることは、シート状部材4Bを支持した二箇所から互いに相反する二方向にシート状部材4Bを引っ張ることを含んでよい。或いは、変形物の複数の箇所に力を作用させることは、シート状部材4B内に力のつり合う点が位置するように、シート状部材4Bを支持した二箇所以上の部分からシート状部材4Bを引っ張ることであってよい。それぞれ場合、シート状部材4Bに作用させた力のつり合う点及びその周辺領域を固定形状に変化させることができる。その他、変形物としてボールを取り扱うケースでは、変形物の複数の箇所に力を作用させることは、二箇所以上の各部分からつり合うように中心に向けて押圧することを含んでもよい。この場合、ボールの力のつり合う点及びその周辺部分を固定形状に変化させることができる。変形物としてバネを取り扱うケースでは、変形物の複数の箇所に力を作用させることは、バネの両端それぞれから押圧(圧縮)することを含んでもよい。この場合、バネ全体を固定形状に変化させることができる。それぞれのケースにおいて、例えば、1つ以上のグリッパにより構成された把持機構により、変形物の少なくとも一部分を固定形状に変化させることができる。
なお、それぞれのケースにおいて、コントローラ1は、ロボット装置2に対して、変形物の複数の箇所から作用させた力のつり合う点が固定形状の範囲内に入るように変形物の複数の力を作用させることで、変形物の少なくとも一部分を固定形状に変化させてよい。更に、それぞれのケースにおいて、変形物には複数の印が設けられてよく、コントローラ1は、変形物の各印の位置を把持機構で支持するように、ロボット装置2の動作を制御してもよい。
<4.2>
上記実施形態において、カメラ及びプロセッサにより構成された視覚センサが画像センサとして用いられてよい。画像センサの構成は、実施の形態に応じて適宜決定されてよい。また、上記実施形態において、ベルト4に設けられた2つの印41は省略されてよい。
上記実施形態において、変形物は、把持機構30に予め把持されてよい。変形物の把持は、例えば、他の装置(ベルトコンベア等)又は人手により行われてよい。この場合、上記実施形態の各処理手順において、ステップS100及びステップS200の処理は省略されてよい。また、コントローラ1のソフトウェア構成において、把持学習部110及び把持指令部115は省略されてよい。上記実施形態において、テンプレート動作を実行している間、把持機構30により複数の箇所に力を作用させた状態は維持されなくてもよい。
上記実施形態において、ステップS100~ステップS130の処理(動作の教示)及びステップS200~ステップS230の処理(動作の制御)は別々のコンピュータで実行されてよい。ステップS100~ステップS130の教示に使用するロボット装置とステップS200~ステップS230により動作の制御されるロボット装置は別であってよい。
上記実施形態において、固定形状に変化させる動作及び開始状態に推移させる動作(ステップS110、ステップS120/ステップS210、ステップS220)は一体の動作で実現されてよい。この場合、各ステップ(S110、S120/S210、S220)は、同時に実行されてよい。また、上記ステップS130及びステップS230において、目標状態及びテンプレート動作それぞれの数は1つに限られなくてよく、複数の目標状態及び複数のテンプレート動作が設定されてもよい。
なお、上記実施形態において、ロボット装置2は、下位のコントローラ(不図示)を備えてよい。この場合、コントローラ1は、下位のコントローラに対して動作の制御指令を送信することで、ロボット装置2の動作を間接的に制御してもよい。下位のコントローラは、ハードウェアプロセッサ及びメモリを備えてよく、コントローラ1から与えられる制御指令を解釈して、ロボット装置2の動作を制御するように構成されてよい。下位のコントローラは、専用に設計された情報処理装置の他、汎用のPC等であってもよい。或いは、コントローラ1がロボット装置2のコントローラとして機能してもよい。この場合、コントローラ1が、ロボット装置2の動作を直接的に制御してもよい。いずれの構成でもロボット装置2の動作を同様に制御可能であるため、上記実施形態では、いずれの構成が採用されてもよい。
1…コントローラ、
11…制御部、12…記憶部、13…外部インタフェース、
14…入力装置、15…出力装置、16…ドライブ、
110…把持学習部、111…変形学習部、
112…位置決め学習部、113…テンプレート学習部、
115…把持指令部、116…変形指令部、
117…位置決め指令部、118…テンプレート指令部、
125…学習結果データ、
81…学習プログラム、82…制御プログラム、
91…記憶媒体、
2…ロボット装置、20…マニピュレータ、
200…台座部、201~206…関節部、
211~214…リンク、
25…グリッパ、30…把持機構、
CA…カメラ、
4…ベルト(変形物)、4B…シール(変形物)、
5…(組み付け先となる)対象部品、
51・52…プーリ

Claims (8)

  1. 対象物の複数の箇所を支持することにより当該対象物を把持するように構成された把持機構を備えるロボット装置の動作を制御する制御装置であって、
    前記把持機構により変形物を把持した前記ロボット装置に対して、当該変形物の複数の箇所に力を作用させることで、当該変形物の少なくとも一部分を所定の固定形状に変化させる変形指令部と、
    前記ロボット装置に対して、前記固定形状に変化させた前記変形物の少なくとも一部分を作業の開始状態の姿勢に推移させる動作を実行させる位置決め指令部と、
    前記変形物の少なくとも一部分を前記所定の固定形状に変化させ、かつ前記開始状態の姿勢に推移させた後に、前記ロボット装置に対して、前記変形物を前記作業の目標状態に到達させるためのテンプレート動作を実行させる動作指令部と、
    を備え、
    前記変形物は、紐状部材であり、
    前記把持機構は、前記紐状部材を二箇所で支持するように構成され、
    前記変形物の複数の箇所に力を作用させることは、前記紐状部材を支持した二箇所から互いに相反する二方向に前記紐状部材を引っ張ることを含み、
    前記紐状部材は、ベルトであり、
    前記把持機構は、2つのグリッパを備え、
    前記紐状部材を二箇所で支持することは、前記2つのグリッパそれぞれで前記ベルトを把持することにより構成され、
    前記2つのグリッパのそれぞれが前記変形物に与える前記引っ張る力に対する、前記変形物から前記2つのグリッパのそれぞれに働く反作用の力を測定するセンサをさらに備え、
    前記センサにより測定される、前記2つのグリッパのそれぞれに働く前記反作用の力が、所定の基準を満たすと、前記変形物の、前記2つのグリッパに把持される前記二箇所に挟まれる部分が前記所定の固定形状に変化したと判定する、
    制御装置。
  2. 前記変形指令部は、前記ロボット装置に対して、前記変形物の前記複数の箇所から作用させた力のつり合う点が前記固定形状の範囲内に入るように前記変形物の前記複数の箇所に力を作用させることで、前記変形物の少なくとも一部分を前記固定形状に変化させる、
    請求項1に記載の制御装置。
  3. 前記動作指令部は、前記ロボット装置に対して、前記複数の箇所に前記力を作用させた状態を維持しながら、前記テンプレート動作を実行させる、
    請求項1又は2に記載の制御装置。
  4. 前記ロボット装置に対して、前記把持機構により前記変形物を把持させる把持指令部を更に備える、
    請求項1から3のいずれか1項に記載の制御装置。
  5. 前記変形物は、前記複数の箇所それぞれにそれぞれ設けられた複数の印を備え、
    前記ロボット装置は、前記変形物の配置された作業環境を撮影するように配置された画像センサを更に備え、
    前記把持指令部は、前記ロボット装置に対して、前記画像センサにより得られる撮影画像に基づいて、前記変形物の前記複数の印の設けられた箇所を前記把持機構に支持させることにより、前記把持機構で前記変形物を把持させる、
    請求項4に記載の制御装置。
  6. 前記作業は、複数のプーリに前記ベルトを組み付けることを含み、
    前記開始状態の姿勢に推移させることは、前記ベルトの前記固定形状に変化させた部分を前記複数のプーリのいずれか1つに接するように配置することを含む、
    請求項1から5の何れか1項に記載の制御装置。
  7. 対象物の複数の箇所を支持することにより当該対象物を把持するように構成された把持機構を備えるロボット装置の動作を制御する制御方法であって、
    コンピュータが、
    前記把持機構により変形物を把持した前記ロボット装置に対して、当該変形物の複数の箇所に力を作用させることで、当該変形物の少なくとも一部分を所定の固定形状に変化させるステップと、
    前記ロボット装置に対して、前記固定形状に変化させた前記変形物の少なくとも一部分を作業の開始状態の姿勢に推移させる動作を実行させるステップと、
    前記変形物の少なくとも一部分を前記所定の固定形状に変化させ、かつ前記開始状態の姿勢に推移させた後に、前記ロボット装置に対して、前記変形物を前記作業の目標状態に到達させるためのテンプレート動作を実行させるステップと、
    を実行し、
    前記変形物は、紐状部材であり、
    前記把持機構は、前記紐状部材を二箇所で支持するように構成され、
    前記変形物の複数の箇所に力を作用させることは、前記紐状部材を支持した二箇所から互いに相反する二方向に前記紐状部材を引っ張ることを含み、
    前記紐状部材は、ベルトであり、
    前記把持機構は、2つのグリッパを備え、
    前記紐状部材を二箇所で支持することは、前記2つのグリッパそれぞれで前記ベルトを把持することにより構成され、
    前記2つのグリッパのそれぞれが前記変形物に与える前記引っ張る力に対する、前記変形物から前記2つのグリッパのそれぞれに働く反作用の力を測定するステップと、
    前記測定するステップにて測定された、前記2つのグリッパのそれぞれに働く前記反作用の力が、所定の基準を満たすと、前記変形物の、前記2つのグリッパに把持される前記二箇所に挟まれる部分が前記所定の固定形状に変化したと判定するステップと、
    をさらに実行する、
    制御方法。
  8. 対象物の複数の箇所を支持することにより当該対象物を把持するように構成された把持機構を備えるロボット装置の動作を制御するための制御プログラムであって、
    コンピュータに、
    前記把持機構により変形物を把持した前記ロボット装置に対して、当該変形物の複数の箇所に力を作用させることで、当該変形物の少なくとも一部分を所定の固定形状に変化させるステップと、
    前記ロボット装置に対して、前記固定形状に変化させた前記変形物の少なくとも一部分を作業の開始状態の姿勢に推移させる動作を実行させるステップと、
    前記変形物の少なくとも一部分を前記所定の固定形状に変化させ、かつ前記開始状態の姿勢に推移させた後に、前記ロボット装置に対して、前記変形物を前記作業の目標状態に到達させるためのテンプレート動作を実行させるステップと、
    を実行させ、
    前記変形物は、紐状部材であり、
    前記把持機構は、前記紐状部材を二箇所で支持するように構成され、
    前記変形物の複数の箇所に力を作用させることは、前記紐状部材を支持した二箇所から互いに相反する二方向に前記紐状部材を引っ張ることを含み、
    前記紐状部材は、ベルトであり、
    前記把持機構は、2つのグリッパを備え、
    前記紐状部材を二箇所で支持することは、前記2つのグリッパそれぞれで前記ベルトを把持することにより構成され、
    前記2つのグリッパのそれぞれが前記変形物に与える前記引っ張る力に対する、前記変形物から前記2つのグリッパのそれぞれに働く反作用の力を測定するステップと、
    前記測定するステップにて測定された、前記2つのグリッパのそれぞれに働く前記反作用の力が、所定の基準を満たすと、前記変形物の、前記2つのグリッパに把持される前記二箇所に挟まれる部分が前記所定の固定形状に変化したと判定するステップと、
    をさらに実行させる、
    制御プログラム。
JP2021571114A 2020-01-15 2020-01-15 制御装置、学習装置、制御方法、及び制御プログラム Active JP7342974B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/001099 WO2021144886A1 (ja) 2020-01-15 2020-01-15 制御装置、学習装置、制御方法、及び制御プログラム

Publications (2)

Publication Number Publication Date
JPWO2021144886A1 JPWO2021144886A1 (ja) 2021-07-22
JP7342974B2 true JP7342974B2 (ja) 2023-09-12

Family

ID=76864550

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021571114A Active JP7342974B2 (ja) 2020-01-15 2020-01-15 制御装置、学習装置、制御方法、及び制御プログラム

Country Status (2)

Country Link
JP (1) JP7342974B2 (ja)
WO (1) WO2021144886A1 (ja)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014128841A (ja) 2012-12-28 2014-07-10 Kawada Industries Inc 多関節型双腕ロボットによるベルト組付けシステム
WO2018042730A1 (ja) 2016-08-30 2018-03-08 本田技研工業株式会社 ロボットの制御装置およびロボットの制御方法
JP2018158436A (ja) 2017-03-23 2018-10-11 三ツ星ベルト株式会社 環状物搬送装置
US20180341828A1 (en) 2017-05-26 2018-11-29 Fanuc Corporation Shape recognition device, shape recognition method, and program
JP2019107725A (ja) 2017-12-18 2019-07-04 国立大学法人信州大学 把持装置、学習装置、学習済みモデル、把持システム、判定方法、及び学習方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60249578A (ja) * 1984-05-21 1985-12-10 三菱電機株式会社 搬送ロボツトの物体把持方法
JPH08128511A (ja) * 1994-10-31 1996-05-21 Hitachi Ltd ベルト自動組み付け装置
JP3287151B2 (ja) * 1994-12-27 2002-05-27 日産自動車株式会社 組立用ロボットの力制御装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014128841A (ja) 2012-12-28 2014-07-10 Kawada Industries Inc 多関節型双腕ロボットによるベルト組付けシステム
WO2018042730A1 (ja) 2016-08-30 2018-03-08 本田技研工業株式会社 ロボットの制御装置およびロボットの制御方法
US20190184564A1 (en) 2016-08-30 2019-06-20 Honda Motor Co., Ltd. Robot control apparatus and robot control method
JP2018158436A (ja) 2017-03-23 2018-10-11 三ツ星ベルト株式会社 環状物搬送装置
US20180341828A1 (en) 2017-05-26 2018-11-29 Fanuc Corporation Shape recognition device, shape recognition method, and program
JP2018200558A (ja) 2017-05-26 2018-12-20 ファナック株式会社 形状認識装置、形状認識方法及びプログラム
JP2019107725A (ja) 2017-12-18 2019-07-04 国立大学法人信州大学 把持装置、学習装置、学習済みモデル、把持システム、判定方法、及び学習方法

Also Published As

Publication number Publication date
JPWO2021144886A1 (ja) 2021-07-22
WO2021144886A1 (ja) 2021-07-22

Similar Documents

Publication Publication Date Title
JP6983524B2 (ja) 情報処理装置、情報処理方法およびプログラム
JP6924145B2 (ja) ロボット教示方法及びロボットアーム制御装置
US10456917B2 (en) Robot system including a plurality of robots, robot controller and robot control method
TWI630081B (zh) Direct teaching method of robot
JP3876234B2 (ja) コネクタ把持装置、同装置を備えたコネクタ検査システム及びコネクタ接続システム
JP6450960B2 (ja) ロボット、ロボットシステム及び教示方法
JP5929854B2 (ja) ロボットシステムおよび被加工物の製造方法
US20210003993A1 (en) Skill transfer mechanical apparatus
KR20190073282A (ko) 파지 장치, 학습 장치, 학습 완료 모델, 파지 시스템, 판정 방법, 및 학습 방법
WO2013069291A1 (ja) ロボット、ロボットの制御装置、制御方法、及び制御プログラム
JP6739954B2 (ja) ロボット装置、物品の製造方法、および制御方法
JP2019018272A (ja) モーション生成方法、モーション生成装置、システム及びコンピュータプログラム
KR20190062583A (ko) 파지력 설정 시스템, 파지력 설정 방법, 및 파지력 추정 시스템
US11701775B2 (en) Method of setting target force upper limit and robot system
Namiki et al. Robotic origami folding with dynamic motion primitives
Namiki et al. Origami folding by multifingered hands with motion primitives
US20220331964A1 (en) Device and method for controlling a robot to insert an object into an insertion
JP2008207262A (ja) マニピュレータシステム
US20200189102A1 (en) Robot apparatus, robot system, control method of robot apparatus, product manufacturing method using robot apparatus, and storage medium
Jha et al. Imitation and supervised learning of compliance for robotic assembly
JP7342974B2 (ja) 制御装置、学習装置、制御方法、及び制御プログラム
Jha et al. Generalizable human-robot collaborative assembly using imitation learning and force control
Lopez-Juarez et al. On the design of intelligent robotic agents for assembly
US20220335710A1 (en) Device and method for training a neural network for controlling a robot for an inserting task
JP4715296B2 (ja) ロボットハンドの持ち替え把持制御方法。

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220616

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230307

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230323

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230523

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20230608

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20230608

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230707

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230801

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230814

R150 Certificate of patent or registration of utility model

Ref document number: 7342974

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150