IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社CoLabの特許一覧

<>
  • 特許-制御装置、制御方法、及びプログラム 図1
  • 特許-制御装置、制御方法、及びプログラム 図2
  • 特許-制御装置、制御方法、及びプログラム 図3
  • 特許-制御装置、制御方法、及びプログラム 図4
  • 特許-制御装置、制御方法、及びプログラム 図5
  • 特許-制御装置、制御方法、及びプログラム 図6
  • 特許-制御装置、制御方法、及びプログラム 図7
  • 特許-制御装置、制御方法、及びプログラム 図8
  • 特許-制御装置、制御方法、及びプログラム 図9
  • 特許-制御装置、制御方法、及びプログラム 図10
  • 特許-制御装置、制御方法、及びプログラム 図11
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2024-10-24
(45)【発行日】2024-11-01
(54)【発明の名称】制御装置、制御方法、及びプログラム
(51)【国際特許分類】
   B25J 13/08 20060101AFI20241025BHJP
   B25J 13/00 20060101ALI20241025BHJP
【FI】
B25J13/08 Z
B25J13/08 A
B25J13/00 Z
【請求項の数】 18
(21)【出願番号】P 2024072878
(22)【出願日】2024-04-26
【審査請求日】2024-04-26
【早期審査対象出願】
(73)【特許権者】
【識別番号】524162413
【氏名又は名称】株式会社CoLab
(74)【代理人】
【識別番号】110001106
【氏名又は名称】弁理士法人キュリーズ
(72)【発明者】
【氏名】川畑 晋治
(72)【発明者】
【氏名】山本 和之
(72)【発明者】
【氏名】空閑 護
【審査官】國武 史帆
(56)【参考文献】
【文献】特開2015-074058(JP,A)
【文献】特開2015-074061(JP,A)
【文献】特開昭60-254209(JP,A)
【文献】特開2014-151377(JP,A)
【文献】特開2013-180380(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
B25J 1/00 - 21/02
(57)【特許請求の範囲】
【請求項1】
ロボット装置の動作状態に関する測定を行うためのセンサを用いて得られる測定情報を取得する取得部と、
前記測定情報に基づいて前記ロボット装置の動作の制御を行う制御部と、を備え、
前記センサは、視覚センサ及び力覚センサを含み、
前記制御部は、前記視覚センサを用いて得られる視覚測定情報による前記制御である視覚制御と、前記力覚センサを用いて得られる力覚測定情報によって動的に変化する力覚目標情報に応じた前記制御である力覚制御と、の制御比率を、前記ロボット装置を用いた作業の状況に応じて動的に又は段階的に変更する
制御装置。
【請求項2】
前記制御部は、
前記視覚測定情報を参照して、前記制御の内容を示す第1情報を生成する視覚制御部と、
前記力覚測定情報を参照して、前記制御の内容を示す第2情報を生成する力覚制御部と、
前記第1情報及び前記第2情報に基づいて、前記ロボット装置に対する制御指令を生成する指令生成部と、
前記作業の状況に応じて、前記視覚測定情報と前記力覚測定情報との間の重み付け処理、又は前記第1情報と前記第2情報との間の重み付け処理を行うことで、前記制御比率を変更する重み付け部と、を有する
請求項1に記載の制御装置。
【請求項3】
前記制御部は、前記作業が進行するにつれて前記制御比率を動的に又は段階的に変更する
請求項1に記載の制御装置。
【請求項4】
前記作業は、予め定められた複数の工程を含み、
前記制御部は、前記制御比率を工程ごとに変更する
請求項1乃至3のいずれか1項に記載の制御装置。
【請求項5】
前記複数の工程のそれぞれの前記制御比率に関する設定を含む設定ライブラリを記憶するライブラリ記憶部をさらに備え、
前記制御部は、前記設定ライブラリに基づいて前記制御比率を工程ごとに変更する
請求項4に記載の制御装置。
【請求項6】
前記制御部は、前記作業における1つの工程から次の工程への遷移時において、前記1つの工程における前記制御比率から前記次の工程における前記制御比率へ向けて緩やかに前記制御比率を変更する
請求項4に記載の制御装置。
【請求項7】
前記制御部は、
前記測定情報に基づいて、前記作業における1つの工程から次の工程への遷移条件が満たされたか否かを判定し、
前記遷移条件が満たされたことに応じて、前記1つの工程から前記次の工程へ遷移するとともに、前記次の工程に対応する前記制御比率に変更する
請求項3に記載の制御装置。
【請求項8】
前記制御部は、前記次の工程へ切り替えた後に前記次の工程における前記制御が収束しない場合、前記1つの工程へ戻すとともに前記1つの工程に対応する前記制御比率に変更する
請求項7に記載の制御装置。
【請求項9】
前記制御部は、前記視覚制御を優先して前記制御を行う第1制御状態と、前記視覚制御と前記力覚制御とを協調して用いて前記制御を行う第2制御状態と、前記力覚制御を優先して用いて前記制御を行う第3制御状態と、の間で前記制御を切り替える
請求項1乃至3のいずれか1項に記載の制御装置。
【請求項10】
前記制御部は、前記測定情報に基づいて、前記第1制御状態乃至前記第3制御状態における前記制御の切り替えを判断する
請求項9に記載の制御装置。
【請求項11】
前記制御部は、前記第1制御状態により、前記測定情報と前記測定情報の目標値との差分が所定値以下にならない場合、前記第2制御状態又は前記第3制御状態に切り替えて前記力覚測定情報を参照する
請求項9に記載の制御装置。
【請求項12】
前記制御部は、外部からの指示があった場合、当該指示に応じて前記制御比率を変更する
請求項1乃至3のいずれか1項に記載の制御装置。
【請求項13】
前記制御部は、
前記ロボット装置に対して行った制御内容と当該制御内容に対する制御結果とに応じて、前記ロボット装置に対する以降の制御内容に対する制御結果を予測する予測部と、
前記予測に応じて、前記以降の制御内容を補正する補正部と、を有する
請求項1乃至3のいずれか1項に記載の制御装置。
【請求項14】
前記作業の種別ごとに用意された複数の設定ライブラリを記憶するライブラリ記憶部をさらに備え、
前記複数の設定ライブラリのそれぞれは、一連の各工程に関する設定情報を含み、
前記制御部は、前記複数の設定ライブラリの中から実際に行う作業の種別に応じて選択された設定ライブラリを用いて前記制御を行う
請求項1乃至3のいずれか1項に記載の制御装置。
【請求項15】
前記複数の設定ライブラリのそれぞれは、前記制御比率の設定情報を含む
請求項14に記載の制御装置。
【請求項16】
前記作業の種別ごとに用意された複数の認識ライブラリを記憶するライブラリ記憶部をさらに備え、
前記複数の認識ライブラリのそれぞれは、対象物の画像認識処理に用いる学習済みモデルを含み、
前記制御部は、前記複数の認識ライブラリの中から実際に行う作業の種別に応じて選択された認識ライブラリを用いて前記画像認識処理を行う
請求項1乃至3のいずれか1項に記載の制御装置。
【請求項17】
ロボット装置の動作状態に関する測定を行うためのセンサを用いて得られる測定情報を取得することと、
前記測定情報に基づいて前記ロボット装置の動作の制御を行うことと、を有し、
前記センサは、視覚センサ及び力覚センサを含み、
前記制御を行うことは、前記視覚センサを用いて得られる視覚測定情報による前記制御である視覚制御と、前記力覚センサを用いて得られる力覚測定情報によって動的に変化する力覚目標情報に応じた前記制御である力覚制御と、の制御比率を、前記ロボット装置を用いた作業の状況に応じて動的に又は段階的に変更することを含む
制御方法。
【請求項18】
制御装置に、
ロボット装置の動作状態に関する測定を行うためのセンサを用いて得られる測定情報を取得することと、
前記測定情報に基づいて前記ロボット装置の動作の制御を行うことと、を実行させ、
前記センサは、視覚センサ及び力覚センサを含み、
前記制御を行うことは、前記視覚センサを用いて得られる視覚測定情報による前記制御である視覚制御と、前記力覚センサを用いて得られる力覚測定情報によって動的に変化する力覚目標情報に応じた前記制御である力覚制御と、の制御比率を、前記ロボット装置を用いた作業の状況に応じて動的に又は段階的に変更することを含む
プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、ロボット装置を制御する制御装置、制御方法、及びプログラムに関する。
【背景技術】
【0002】
従来、ロボット装置を制御する制御装置が広く用いられている。このような制御装置において、視覚センサ及び力覚センサを用いてロボット装置の動作状態を測定すると共に、ロボット装置の動作状態を目標状態にするよう制御する技術が知られている(例えば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【文献】特許第7295344号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
視覚センサを用いて得られる視覚測定情報によるロボット装置の制御である視覚制御と、力覚センサを用いて得られる力覚測定情報によるロボット装置の制御である力覚制御とのそれぞれのメリットを活用し、視覚制御及び力覚制御を両立してロボット装置の動作を適切に制御することが望まれている。
【0005】
本開示は、ロボット装置をより適切に制御することを可能とする制御装置、制御方法、及びプログラムを提供する。
【課題を解決するための手段】
【0006】
本開示の第1の態様に係る制御装置は、ロボット装置の動作状態に関する測定を行うためのセンサを用いて得られる測定情報を取得する取得部と、前記測定情報に基づいて前記ロボット装置の動作の制御を行う制御部と、を備え、前記センサは、視覚センサ及び力覚センサを含み、前記制御部は、前記視覚センサを用いて得られる視覚測定情報による前記制御である視覚制御と、前記力覚センサを用いて得られる力覚測定情報による前記制御である力覚制御と、の制御比率を、前記ロボット装置を用いた作業の状況に応じて動的に又は段階的に変更する。
【0007】
本開示の第2の態様に係る制御方法は、ロボット装置の動作状態に関する測定を行うためのセンサを用いて得られる測定情報を取得することと、前記測定情報に基づいて前記ロボット装置の動作の制御を行うことと、を有し、前記センサは、視覚センサ及び力覚センサを含み、前記制御を行うことは、前記視覚センサを用いて得られる視覚測定情報による前記制御である視覚制御と、前記力覚センサを用いて得られる力覚測定情報による前記制御である力覚制御と、の制御比率を、前記ロボット装置を用いた作業の状況に応じて動的に又は段階的に変更することを含む。
【0008】
本開示の第3の態様に係るプログラムは、制御装置に、ロボット装置の動作状態に関する測定を行うためのセンサを用いて得られる測定情報を取得することと、前記測定情報に基づいて前記ロボット装置の動作の制御を行うことと、を実行させ、前記センサは、視覚センサ及び力覚センサを含み、前記制御を行うことは、前記視覚センサを用いて得られる視覚測定情報による前記制御である視覚制御と、前記力覚センサを用いて得られる力覚測定情報による前記制御である力覚制御と、の制御比率を、前記ロボット装置を用いた作業の状況に応じて動的に又は段階的に変更することを含む。
【発明の効果】
【0009】
本開示の一態様によれば、ロボット装置をより適切に制御することを可能とする制御装置、制御方法、及びプログラムを提供できる。
【図面の簡単な説明】
【0010】
図1】実施形態に係る制御装置を含む制御システムのシステム構成例を示す図である。
図2】第1実施形態に係る制御装置の機能ブロック構成を示すブロック図である。
図3】第1実施形態に係る制御装置によるデータ収集の一例を説明するための図である。
図4】第1実施形態に係る制御装置によるデータ収集の一例を説明するための図である。
図5】第1実施形態に係る制御装置によるデータ収集の一例を説明するためのフロー図である。
図6】実施形態に係る制御装置が記憶する設定ライブラリの一例を説明するための図である。
図7】第2実施形態に係る制御装置の機能ブロック構成を示すブロック図である。
図8】第2実施形態に係る制御装置による制御フローの一例を説明するためのフロー図である。
図9】第2実施形態に係る制御装置による制御として「基板への部品装着」作業時の制御の具体例を説明するための図である。
図10】第3実施形態に係る制御装置の機能ブロック構成を示すブロック図である。
図11】第3実施形態に係る制御装置による制御として「基板への部品装着」作業時の制御の具体例を説明するための図である。
【発明を実施するための形態】
【0011】
図面を参照しながら、実施形態について説明する。図面の記載において、同一又は類似の部分には同一又は類似の符号を付している。
【0012】
(1)実施形態の概要
実施形態に係る制御装置は、ロボット装置の動作状態に関する測定を行うためのセンサを用いて得られる測定情報を取得する取得部と、前記測定情報に基づいて前記ロボット装置の動作の制御を行う制御部と、を備え、前記センサは、視覚センサ及び力覚センサを含み、前記制御部は、前記視覚センサを用いて得られる視覚測定情報による前記制御である視覚制御と、前記力覚センサを用いて得られる力覚測定情報による前記制御である力覚制御と、の制御比率を、前記ロボット装置を用いた作業の状況に応じて動的に又は段階的に変更する。
【0013】
このように、視覚制御と力覚制御との制御比率を作業の状況に応じて動的に又は段階的に変更することにより、視覚制御のメリット及び力覚制御のメリットを活用し、視覚制御及び力覚制御を両立してロボット装置の動作を適切に制御することが可能になる。
【0014】
なお、「ロボット装置」とは、制御装置が出力する制御指令に従って動作可能な装置であればよく、あらゆるロボット装置が適用可能である。例えば、ロボット装置は、マニピュレータ等の産業用ロボットであってもよいし、自動的に移動可能な移動体等を含んでもよい。産業用ロボットは、例えば、垂直多関節ロボット、スカラロボット、パラレルリンクロボット、直交ロボット、協調ロボット等を含む。また、自動的に移動可能な移動体は、例えば、ドローン、自度運転可能に構成された車両、無人搬送車、又はモバイルロボット等、さらに、上記産業用ロボットとの組合せを含む。後述の実施形態では、ロボット装置がマニピュレータである一例について主として説明する。
【0015】
「制御指令」は、ロボット装置の動作の制御に関するものであり、例えば、目標制御量、操作量等である。「制御指令を出力すること」は、制御指令に基づいてロボット装置を直接的に制御することであってもよいし、ロボット装置がコントローラを備える場合にコントローラに制御指令を出力することでコントローラにロボット装置の動作を制御させることを含んでもよい。
【0016】
「ロボット装置の動作状態」とは、ロボット装置の一部の構成(例えば、エンドエフェクタ)の動作に関する状態、及び/又はロボット装置を用いた作業の対象物に関する状態である。また、「ロボット装置の動作状態に関する測定」とは、ロボット装置の一部の構成(例えば、エンドエフェクタ)の動作に関する状態の測定、及び/又はロボット装置を用いた作業の対象物に関する状態の測定である。「対象物」は、ロボット装置の動作に関連し得る物体であり、例えばワーク等である。ロボット装置の一部の構成(例えば、エンドエフェクタ)も対象物とみなしてもよい。
【0017】
「作業」は、ロボット装置に遂行させる仕事であり、複数の工程を含み得る。作業は、例えば、部品運搬、部品嵌合、ネジ回し、加工等である。作業は、例えば、ワークの把持、ワークの解放等の単純な仕事であってもよい。作業は、予め与えられてもよいし、オペレータの指定により与えられてもよい。
【0018】
「測定情報」は、センサの測定データそのものに限らず、測定データから算出された特徴量等であってもよい。「測定情報」は、例えば、ロボットの基本構成として存在しているエンコーダ及び/又はサーボモータを活用して測定や算出したものであってもよい。
【0019】
(2)第1実施形態
第1実施形態では、実際の作業時の制御に利用するデータを作業前に収集するデータ収集に関して主として説明する。実際の作業時の制御の詳細については、第2実施形態及び第3実施形態で説明する。
【0020】
(2.1)システム構成
図1は、第1実施形態に係る制御装置100を含む制御システムのシステム構成例を示す図である。ここでは、制御システムのハードウェア構成に着目して説明する。
【0021】
図示の例では、ロボット装置200はマニピュレータである。具体的には、ロボット装置200(マニピュレータ)は、6軸の垂直多関節型の産業用ロボットであり、台座部221と、6つの関節部211乃至216とを有する。各関節部211乃至216は、サーボモータ(不図示)を内蔵し、各軸を中心に回転可能に構成されている。
【0022】
第1関節部211は、台座部221に接続されており、先端側の部分を台座の軸周りに回転させる。台座部221に代えて、自動的に移動(自走)可能な移動機構を設けてもよい。第2関節部212は、第1関節部211に接続されており、先端側の部分を前後方向に回転させる。第3関節部213は、リンク222を介して第2関節部212に接続されており、先端側の部分を上下方向に回転させる。第4関節部214は、リンク223を介して第3関節部213に接続されており、先端側の部分をリンク223の軸周りに回転させる。第5関節部215は、リンク224を介して第4関節部214に接続されており、先端側の部分を上下方向に回転させる。第6関節部216は、リンク225を介して第5関節部215に接続されており、先端側の部分をリンク225の軸周りに回転させる。第6関節部216の先端側には、力覚センサ320と共にグリッパ226が取り付けられている。グリッパ226は、エンドエフェクタの一例である。
【0023】
視覚センサ310は、画像測定を行うセンサであり、ロボット装置200の稼働する環境(作業空間)に存在する各対象物(グリッパ226、ワークW1、ワークW2)を観察するように配置される。図示の例では、視覚センサ310がリンク225に取り付けられ、視覚センサ310がロボット装置200と一体に設けられている。しかしながら、視覚センサ310が作業空間の設備等に固定され、視覚センサ310がロボット装置200と別体に設けられていてもよい。視覚センサ310としては、例えば、デジタルカメラ又はビデオカメラ等のカメラが利用されてもよい。視覚センサ310の測定データ(すなわち、画像データ)は、視覚測定情報の一例である。
【0024】
力覚センサ320は、力測定を行うセンサであり、ロボット装置200(具体的には、グリッパ226)に作用する力及びモーメントを測定するように構成されている。力覚センサ320は、例えば、グリッパ226に作用するX軸、Y軸、Z軸の3軸方向の力と、X軸、Y軸、Z軸まわりのモーメントとを測定する6軸力覚センサであってもよい。すなわち、力覚センサ320は、ロボット装置200に支持された組立部品又はグリッパ226と物品との接触によって生じる力・モーメントを測定することができる。力覚センサ320の測定データは、グリッパ226の把持力を調整したり、グリッパ226に異常な力が作用しているか否かを検知したりするために利用されてもよい。なお、以下の説明では、用語「力」を「モーメント」の意味も含む用語として用いる。
【0025】
力覚センサ320としては、例えば、各関節部211乃至216に内蔵されたモータ(不図示)の電流値などを測定することで、X軸、Y軸、Z軸の3軸方向の力と、X軸、Y軸、Z軸まわりのモーメントとを測定する方法で実現してもよいし、ロボット200の表面に具備する圧力センサや、ロボット200の表面に具備するジャケットの状態変化を利用したセンサであってもよい。センサは、空気及び/又は液体の流量変化や静電容量の変化などを検出するものであってもよい。
【0026】
なお、各関節部211乃至216には、エンコーダ(不図示)が内蔵されていてもよい。エンコーダは、センサの一例である。エンコーダは、各関節部211乃至216の角度(制御量)を測定可能に構成されている。エンコーダの測定データは、各関節部211乃至216の角度の制御に利用されてもよい。
【0027】
制御システムは、ワークW2を搬送する搬送装置510を有していてもよい。ロボット装置200は、アーム先端の取り付けられたグリッパ226(エンドエフェクタ)によって作業を実行することができる。エンドエフェクタは、用途に応じて交換可能な外部装置であり、グリッパ226に代えて、溶接ガン又は工具等が取り付けられてもよい。ロボット装置200は、搬送装置510上を流れているワークW2を、視覚センサ310を用いてトラッキングしつつ力覚センサ320を用いて作業を実行することができる。図示の例では、ロボット装置200が把持した組立部品としてのワークW1を、搬送装置510上を流れてくるワークW2(被組立部品。例えば、基板)の穴に嵌め込む作業を行う。
【0028】
制御装置100は、プロセッサ101と、メモリ102と、外部インタフェース(I/F)103とを有する。プロセッサ101は、CPU(Central Processing Unit)を含んで構成される。さらに、プロセッサ101は、マイクロプロセッサ、FPGA(field-programmable gate array)、及びDSP(digital signal processor)のうち少なくとも1つを含んでいてもよい。メモリ102は、RAM(Random Access Memory)と、ROM(Read Only Memory)と、補助記憶装置(例えば、ハードディスクドライブ、ソリッドステートドライブ)とを含んで構成される。プロセッサ101及びメモリ102は、コンピュータを構成する。制御装置100は、複数のコンピュータで構成されていてもよい。なお、制御装置100は、提供されるサービス専用に設計された情報処理装置に限らず、PC(Personal Computer)等の汎用の情報処理装置であってもよいし、PLC(programmable logic controller)等のコントローラであってもよい。
【0029】
メモリ102は、プロセッサ101により実行されるプログラムを記憶する。プロセッサ101は、メモリ102に記憶されたプログラムを実行することにより、メモリ102と共に、後述の各機能ブロックの機能を実現する。詳細については後述するが、メモリ102は、例えば、対象物を認識するための画像認識に用いる学習済みモデルを含む認識ライブラリと、作業前のデータ収集により収集されるデータと、収集されたデータに基づき取得する設定情報を含む設定ライブラリとを記憶してもよい。認識ライブラリ及び設定ライブラリは、ロボット装置200が実行可能な作業の種別ごとに設けられてもよい。設定ライブラリに含まれる設定情報は、収集されたデータに基づき生成された学習済みモデルを含んでもよい。
【0030】
外部I/F103は、例えば、USB(Universal Serial Bus)ポート又は専用ポート等であり、外部装置と通信可能に接続するためのインタフェースである。外部I/F103は、外部装置(ロボット装置200を含む)と有線で接続されてもよいし、無線で接続されてもよい。外部I/F103の種類及び数は、接続される外部装置の種類及び数に応じて適宜選択されてもよい。図示の例では、制御装置100は、外部I/F103を介して、ロボット装置200、視覚センサ310、及びユーザインタフェース(I/F)400と接続される。ユーザI/F400は、図2に示すように、表示装置410と、操作装置420とを含む。図示の例では、ユーザI/F400が制御装置100と別体に設けられているが、ユーザI/F400が制御装置100と一体に設けられていてもよい。表示装置410は、液晶ディスプレイ又は有機EL(Electro-Luminescence)ディスプレイ等であってもよい。表示装置410は、スピーカ搭載のディスプレイであってもよい。操作装置420は、例えば、キーボード、マウス、タッチパネル等の操作入力を行うための装置である。表示装置410及び操作装置420は、タッチパネルディスプレイとして一体に構成されていてもよい。オペレータは、表示装置410及び操作装置420を利用することで、制御装置100の状態を確認したり、制御装置100を操作したりすることができる。
【0031】
(2.2)制御装置の機能ブロック構成
図2は、第1実施形態に係る制御装置100の機能ブロック構成を示すブロック図である。第1実施形態では、作業時の制御に利用するデータを作業前に収集するデータ収集に関する機能ブロック構成について主として説明する。このようなデータ収集は、ユーザ(オペレータを含む)が制御装置100(及びロボット装置200)の利用を開始する前に行われてもよい。例えば、制御装置100(及びロボット装置200)の出荷前に予めデータ収集が行われてもよい。
【0032】
制御装置100は、動作生成部110と、取得部120と、データ収集部130と、データ記憶部140と、設定取得部150と、ライブラリ記憶部160とを有する。本実施形態では、制御装置100は、制御部170を有していてもよいし、制御部170を有していなくてもよい。
【0033】
動作生成部110は、ロボット装置200の動作状態を任意状態から目標状態へ変更する順方向動作を実行させるための制御指令を生成する。また、動作生成部110は、ロボット装置200の動作状態を目標状態から目標状態とは異なる任意状態へ変更する逆方向動作を実行させるための制御指令を生成する。動作生成部110は、生成した制御指令をロボット装置200の駆動部210に出力する。駆動部210は、ロボット装置200の各関節部211乃至216に設けられたサーボモータを含む。駆動部210は、ロボット装置200側のコントローラを含んでもよい。駆動部210は、制御指令に従ってサーボモータを駆動し、ロボット装置200を動作させる。
【0034】
ここで、目標状態とは、作業(又は工程)の目的を達成した時点に実現される状態や、作業の中間状態のことである。第1実施形態では、ロボット装置200がエンドエフェクタ(グリッパ226)により運搬する組立部品(ワークW1)を被組立部品(ワークW2)に装着する一連の作業を想定しているため、目標状態は、組立部品が被組立部品に装着された状態や、装着前の中間状態である。具体的には、目標状態は、ワークW1がワークW2の穴に嵌め込まれた状態や、穴に嵌め込める位置で接触している中間状態である。
【0035】
任意状態は、目標状態とは異なる状態であり、例えば、ワークW1がワークW2の穴から離れた位置にある状態である。任意状態は、操作装置420を介して操作入力(ユーザ入力)により設定されてもよい。例えば、目標状態の位置を基準として任意状態の位置が操作入力(ユーザ入力)により設定されてもよい。なお、用語「位置」は、「座標」の意味だけではなく、「姿勢」の意味を含んでもよい。
【0036】
取得部120は、ロボット装置200の動作状態を測定するためのセンサ300を用いて得られる測定情報を取得する。図示の例では、センサ300は、視覚センサ310及び力覚センサ320を含む。センサ300は、エンコーダ等の他センサ330をさらに含んでもよい。取得部120は、視覚センサ310が出力する測定データ(すなわち、画像データ)に対する画像認識を行う画像認識部121を含んでもよい。画像認識部121は、対象物(例えば、グリッパ226、ワークW1、ワークW2)を特徴抽出等の画像認識により認識し、対象物の位置(例えば、特徴部の座標)を取得してもよい。このような位置の情報は、視覚測定情報の一例である。
【0037】
データ収集部130は、動作生成部110が出力する制御指令に従った逆方向動作の実行中に、当該制御指令と、取得部120が取得した測定情報とのセットを含むデータを繰り返し収集する。これにより、実際の作業時のロボット装置200の動作(順方向動作)の制御に利用可能なデータを効率的に収集可能になる。例えば、ロボット装置200を用いた実際の作業時には、収集済みのデータに基づいて、作業時に得られる測定情報から制御指令を生成することで、任意状態から目標状態へのロボット装置の動作の制御を適切に行うことが可能になる。なお、データ収集部130は、動作生成部110が出力する制御指令に従った順方向動作の実行中に、当該制御指令と、取得部120が取得した測定情報とのセットを含むデータを繰り返し収集してもよい。
【0038】
動作生成部110は、ロボット装置200の動作状態を目標状態から互いに異なる複数の任意状態に変更する複数パターンの逆方向動作を実行させるための制御指令を生成してもよい。データ収集部130は、複数パターンの逆方向動作のそれぞれについてデータを繰り返し収集してもよい。これにより、複数の移動経路に相当する複数パターンのデータを収集できるため、実際の作業時のロボット装置200の動作制御に汎用性を持たせることができる。例えば、作業時に、ワークW2が固定されていなかったり、ワークW2が移動したりする場合でも、ワークW1をワークW2に装着することが容易になる。
【0039】
動作生成部110は、目標状態に近い領域ほどデータの収集量が多くなる制御指令を生成し、目標状態から遠い領域ほどデータの収集量が少なくなる制御指令を生成してもよい。目標状態に近い領域ほど、実際の作業時に緻密且つ正確な制御が必要とされる。目標状態に近い領域のデータの収集量を増やすことにより、緻密且つ正確な制御を行うために十分な量のデータを収集可能になる。一方、目標状態から遠い領域では、緻密且つ正確な制御がさほど必要とされない。そのため、目標状態から遠い領域ほどデータの収集量が少なくなる制御指令を生成することにより、不要なデータ収集を抑制し、効率的なデータ収集が可能になる。
【0040】
取得部120は、目標状態に近い領域ほど測定情報の取得量が多くなるよう取得周期(例えば、サンプリング周波数)を短縮し、目標状態から遠い領域ほど測定情報の取得量が多くなるよう取得周期を延長してもよい。このような処理によっても、目標状態に近い領域ほどデータの収集量を多くし、目標状態から遠い領域ほどデータの収集量を少なくすることができる。
【0041】
取得部120は、目標状態で得られる目標測定情報と、逆方向動作の実行中に得られる現在測定情報と、の差分を相対測定情報として取得してもよい。データ収集部130は、制御指令に従った逆方向動作の実行中に、当該制御指令と相対測定情報とのセットを含むデータを繰り返し収集してもよい。例えば、取得部120は、目標状態時に視覚センサ310により得られる対象物の視覚測定情報(目標位置)と、逆方向動作の実行中に得られる対象物の現在測定情報(現在位置)と、の差分を相対位置情報として取得してもよい。図1の環境では、取得部120は、ワークW2の穴の位置を目標位置とし、ワークW1の移動経路上の各位置を現在位置とし、目標位置と各現在位置との差分を相対位置として取得してもよい。これにより、対象物の目標位置と現在位置との相対的な位置関係ごとに制御指令が対応付けられる。そのため、実際の作業時には、対象物の目標位置と現在位置との相対的な位置関係から適切な制御指令を生成可能になる。また、相対的な位置関係を用いた制御であれば、作業時に対象物が移動するような場合であっても適用可能である。
【0042】
取得部120は、センサ300の出力又は制御指令に応じてロボット装置200に関する速度関係値を含む測定情報を取得してもよい。ロボット装置200に関する速度関係値とは、対象物の速度、加速度、及び躍度のうち少なくとも1つであってもよい。取得部120は、視覚センサ310により得られる視覚測定情報(対象物の位置情報)から対象物の速度、加速度、及び躍度を導出してもよい。取得部120は、駆動部210に出力する制御指令から対象物の速度、加速度、及び躍度を導出してもよい。取得部120は、他センサ330(例えば、エンコーダ)により得られる測定情報から対象物の速度、加速度、及び躍度を導出してもよい。データ収集部130は、制御指令に従った逆方向動作の実行中に、当該制御指令と、速度関係値を含む測定情報と、のセットを含むデータを繰り返し収集してもよい。このようにして収集された速度関係値は、実際の作業時の制御において速度関係目標値を設定する際に用いることができる。速度関係目標値を用いた制御については第3実施形態で説明する。
【0043】
データ記憶部140は、データ収集部130が収集したデータを記憶する。データ収集部130が収集したデータは、測定情報(相対測定情報)と制御指令との複数のセットを含む。各セットは、測定情報(相対測定情報)と、速度関係値と、制御指令とを含んでもよい。データ収集部130が収集したデータは、目標状態に近い領域ほど多くのデータのセットが含まれていてもよい。
【0044】
設定取得部150は、データ収集部130が収集したデータ(具体的には、データ記憶部140に記憶されたデータ)に基づいて、ロボット装置200を用いた作業を行うための設定情報を取得する。ある作業を行うための設定情報を、当該作業についての「設定ライブラリ」と称する。例えば、設定取得部150は、データ収集部130によるデータ収集が完了した後に設定ライブラリを取得する。ライブラリ記憶部160は、設定取得部150が取得した設定ライブラリを記憶する。制御部170は、実際の作業時に、当該設定ライブラリを用いてロボット装置200を制御する。
【0045】
設定ライブラリは、作業の工程ごとの動作パラメータと、各工程の遷移先及び遷移条件の情報(遷移条件の正常値・タイムアウト値・エラー値など)と、を含む。動作パラメータは、測定情報(相対測定情報)と制御指令とを対応付ける対応付け情報を含んでもよいし、測定情報(相対測定情報)と速度関係値と制御指令とを対応付ける対応付け情報を含んでもよい。動作パラメータは、視覚センサ310により得られる視覚測定情報によるロボット制御である視覚制御と、力覚センサ320により得られる力覚測定情報によるロボット制御である力覚制御と、の制御比率を含んでもよい。動作パラメータは、対象物の種別(金属、樹脂、ネジ、コネクタなど)の情報を含んでもよい。動作パラメータは、対象物上の特徴部(穴、縁面、コネクタなど)の情報を含んでもよい。設定取得部150は、操作装置420を介して行われる操作入力に少なくとも部分的に基づいて設定ライブラリを取得してもよい。
【0046】
設定取得部150は、データ収集部130が収集したデータを学習用データとして用いて、測定情報から制御指令を導出するための学習済みモデルを機械学習により取得してもよい。この場合、制御部170は、実際の作業時に、学習済みモデルを含む設定ライブラリを用いて、作業中に得られる測定情報に基づいてロボット装置200の制御を行う。学習済みモデル(学習モデル)は、制御指令を生成するための推論をする能力を機械学習により獲得可能であれば、その種類は、特に限定されない。機械学習の種類は、特に限定されるものではないが、典型的には、教師あり学習又は強化学習である。学習モデルは、例えば、ディープニューラルネットワーク(DNN)等のニューラルネットワークにより構成されてもよい。学習モデルは、例えば、状態価値関数又は行動価値関数等の価値関数により構成されてもよい。このようにして、設定取得部150は、機械学習によって、最適値を推論する演算を決定したり、推論を可能としたり、制御指令の最適値変数を生成したりする。
【0047】
設定取得部150は、視覚制御と力覚制御との制御比率を例えば工程ごとに含む設定ライブラリを取得してもよい。この場合、制御部170は、実際の作業時に、当該設定ライブラリを用いて、当該作業の状況に応じて制御比率を動的に又は段階的に変更する。このような制御の詳細については第2実施形態で説明する。
【0048】
設定取得部150は、ロボット装置200に関する速度関係値を例えば工程ごとに含む設定ライブラリを取得してもよい。この場合、制御部170は、作業中に得られる測定情報又は制御指令からロボット装置200に関する速度関係値を導出してもよい。そして、制御部170は、設定ライブラリと、作業中に得られる測定情報とに基づいて、速度関係値と速度関係目標値との差分を減少させる制御をロボット装置200に対して繰り返し行ってもよい。このような制御の詳細については第3実施形態で説明する。
【0049】
なお、動作生成部110は、ロボット装置200を用いた作業の種別ごとに、逆方向動作を実行させるための制御指令を生成してもよい。作業の種別は、図1の環境を想定すると、「基板への部品装着」である。他の作業の種別の例としては、「食品の箱入れ」、「ネジ締め」、「ピック&プレース」、「AGV(Automated Guided Vehicle)制御」等がある。データ収集部130は、作業の種別ごとにデータを繰り返し収集することで作業の種別ごとにデータを収集してもよい。
【0050】
この場合、設定取得部150は、データ収集部130が作業の種別ごとに収集したデータに基づいて、設定ライブラリを作業の種別ごとに取得できる。そして、制御部170は、実際に行う作業の種別に対応する設定ライブラリを用いて、当該作業を行うための制御をロボット装置200に対して行う。例えば、制御部170は、ライブラリ記憶部160が記憶している設定ライブラリの一覧を表示装置410に表示させ、当該一覧の中から操作装置420を用いて選択された設定ライブラリを用いて、ロボット装置200を制御してもよい。なお、ライブラリ記憶部160が設定ライブラリと対応付けて認識ライブラリも記憶している場合、実際に行う作業の種別に対応する認識ライブラリを用いて、当該作業を行うための画像認識を行ってもよい。
【0051】
(2.3)データ収集の一例
図3及び図4は、第1実施形態に係る制御装置100によるデータ収集の一例を説明するための図である。
【0052】
上述のように、動作生成部110は、ロボット装置200の動作状態を目標状態から互いに異なる複数の任意状態に変更する複数パターンの逆方向動作を実行させるための制御指令を生成する。データ収集部130は、複数パターンの逆方向動作のそれぞれについてデータを繰り返し収集する。図3に示すように、動作生成部110は、目標状態に近い領域ほどデータの収集量が多くなる制御指令を生成し、目標状態から遠い領域ほどデータの収集量が少なくなる制御指令を生成する。図3では、x軸及びy軸は、水平面内で互いに直交する方向を示し、z軸は、垂直方向を示す。また、図3において、データの収集量を濃淡で示している。具体的には、データの収集量が多いほど濃い色で示し、データの収集量が少ないほど薄い色で示している。
【0053】
図4の例では、動作生成部110は、動作生成部110は、ワークW1(部品)がワークW2(基板)の穴にある状態を目標状態として、P1乃至P8の合計8パターンの任意状態への逆方向動作をロボット装置200に実行させる。P1乃至P8の各パターンの移動経路が直線的に図示されているが、各移動経路は直線的でなくてもよい。例えば、ワークW1(部品)をワークW2(基板)の穴から上方に向けて引き抜いた後に、水平方向又は斜め上方に向けてワークW1(部品)を移動させるような移動経路であってもよい。また、P1乃至P8の各パターンのうち、P2、P4、P8は、目標状態に近い領域Rで移動が終了している。これにより、目標状態の位置に近い地点であるほどデータの収集量が多くなる。
【0054】
(2.4)制御装置の動作の具体例
図5は、第1実施形態に係る制御装置100によるデータ収集の一例を説明するためのフロー図である。
【0055】
ステップS101において、ユーザ(例えば、作業者)が対象物(例えば、エンドエフェクタに把持又は支持されたワークW1)を目標状態に移動する。また、動作生成部110は、複数の逆方向動作パターンのいずれかのパターン(すなわち、いずれかの任意状態)に対応する制御指令の系列情報及び/又は当該任意状態の位置の情報を取得する。ここで、取得部120は、視覚センサ310を用いて得られる視覚測定情報から、目標状態での対象物の位置を目標位置として取得する。取得部120は、力覚センサ320を用いて得られる力覚測定情報から、目標状態で対象物に加わる力(反力)を目標力(目標反力)として取得する。
【0056】
ステップS102において、動作生成部110は、ステップS101で取得した情報に基づいて、制御指令をロボット装置200(駆動部210)に出力することにより、対象物を所定の移動量だけ移動させる。
【0057】
ステップS103において、取得部120は、現在の測定情報を取得する。取得部120は、視覚センサ310を用いて得られる視覚測定情報から現在の対象物の位置を取得する。取得部120は、現在の対象物の位置と目標位置との差分を相対位置(位置変化量)として取得してもよい。また、取得部120は、力覚センサ320を用いて得られる力覚測定情報から現在の力(反力)を取得する。取得部120は、現在の力(反力)と目標力(反力)との差分を相対力(力変化量)として取得してもよい。さらに、取得部120は、現在の視覚測定情報又はステップS102の制御指令から、対象物の速度関係値(速度、加速度、及び躍度)を取得してもよい。
【0058】
ステップS104において、データ収集部130は、ステップS102の制御指令と、ステップS103で取得した情報(位置変化量、力変化量、速度関係値)とのセットを収集し、当該セットをデータ記憶部140に記憶させる。
【0059】
現在の逆方向動作パターンに対応する任意状態への対象物の移動が完了していない場合(ステップS105:NO)、処理がステップS102に戻り、動作生成部110は、制御指令をロボット装置200(駆動部210)に出力することにより、対象物を所定の移動量だけ移動させる。そして、ステップS103において、取得部120は、情報(位置変化量、力変化量、速度関係値)を取得する。ステップS104において、データ収集部130は、ステップS102の制御指令と、ステップS103で取得した情報(位置変化量、力変化量、速度関係値)とのセットを収集してデータ記憶部140に記憶させる。このような処理を現在の逆方向動作パターンに対応する任意状態への移動が完了するまで繰り返す。
【0060】
一方、現在の逆方向動作パターンに対応する任意状態への対象物の移動が完了した場合(ステップS105:YES)、動作生成部110は、複数の逆方向動作パターンの全てについて動作が完了したか否かを確認する。全パターンについて完了していない場合(ステップS106:NO)、次の逆方向動作パターンへ移行(ステップS107)し、ステップS101から処理を再開する。
【0061】
全パターンについて完了した場合(ステップS106:YES)、ステップS108において、設定取得部150は、データ収集部130が収集したデータ(具体的には、データ記憶部140に記憶されたデータ)に基づいて、ロボット装置200を用いた作業を行うための動作条件(動作パラメータ)を決定する。そして、ステップS109において、設定取得部150は、ステップS108で決定した動作条件(動作パラメータ)を含む設定情報を設定ライブラリとしてライブラリ記憶部160に記憶させる。
【0062】
なお、図5に示すフローを作業の種別ごとに実行することにより、作業の種別ごとの設定ライブラリがライブラリ記憶部160に記憶されてもよい。
【0063】
(2.5)設定ライブラリの一例
図6は、実施形態に係る制御装置100が記憶する設定ライブラリの一例を説明するための図である。
【0064】
図示の例では、作業の種別には、「基板への部品装着」、「食品の箱入れ」、「ネジ締め」、「ピック&プレース」(いわゆる、ピッキング)、及び「AGV制御」がある。各作業は、複数の工程を含む。
【0065】
例えば、「基板への部品装着」という作業種別では、工程1「部品認識→移動」→工程2「部品把持」→工程3「部品を基板へ向けて移動」→工程4「接近」→工程5「基板の穴認識」→工程6「穴接近」→工程7「穴倣い動作」→工程8「穴挿入」→工程9「穴挿入完了」→工程10「把持解除」の順で行われる。一方、制御装置100は、データ収集時には、このような順序とは逆の順序でロボット装置200の動作制御を行ってもよい。なお、「AGV制御」の場合、障害物を避ける工程がさらに含まれていてもよい。障害物を避ける工程は、工程4「対象物を被対象物へ向けて移動」に含まれていてもよい。
【0066】
設定ライブラリは、作業の工程ごとの動作パラメータと、各工程の遷移先及び遷移条件の情報(遷移条件の正常値・タイムアウト値・エラー値など)と、を含む。動作パラメータは、測定情報(相対測定情報)と制御指令とを対応付ける対応付け情報を含んでもよいし、測定情報(相対測定情報)と速度関係値と制御指令とを対応付ける対応付け情報を含んでもよい。動作パラメータは、視覚制御と力覚制御との制御比率を含んでもよい。動作パラメータは、対象物の種別(金属、樹脂、ネジ、コネクタなど)の情報を含んでもよい。動作パラメータは、対象物上の特徴部(穴、縁面、コネクタなど)の情報を含んでもよい。
【0067】
(3)第2実施形態
第2実施形態について、第1実施形態との相違点を主として説明する。第2実施形態に係るシステム構成は第1実施形態と同様である(図1参照)。なお、第2実施形態が第1実施形態を前提とした実施形態である一例を主として説明するが、第2実施形態は、必ずしも第1実施形態の少なくとも一部を前提としなくてもよい。
【0068】
(3.1)制御装置の機能ブロック構成
図7は、第2実施形態に係る制御装置100の機能ブロック構成を示すブロック図である。
【0069】
第2実施形態に係る制御装置100は、ロボット装置200の動作状態を測定するためのセンサ300を用いて得られる測定情報を取得する取得部120と、測定情報に基づいてロボット装置200の動作の制御を行う制御部170と、を有する。センサ300は、視覚センサ310及び力覚センサ320を含む。制御部170は、視覚センサ310により得られる視覚測定情報による制御である視覚制御と、力覚センサ320により得られる力覚測定情報による制御である力覚制御と、の制御比率を、ロボット装置200を用いた作業の状況に応じて動的に又は段階的に変更する。これにより、視覚制御のメリット及び力覚制御のメリットを活用し、視覚制御及び力覚制御を両立してロボット装置200の動作を適切に制御することが可能になる。
【0070】
第2実施形態では、制御部170は、視覚測定情報を参照して、ロボット装置200の制御の内容を示す第1情報を生成する視覚制御部171Aと、力覚測定情報を参照して、ロボット装置200の制御の内容を示す第2情報を生成する力覚制御部171Bと、第1情報及び第2情報に基づいて、ロボット装置200に対する制御指令を生成する指令生成部172と、ロボット装置200を用いた作業の状況に応じて、視覚測定情報と力覚測定情報との間の重み付け処理、又は第1情報と第2情報との間の重み付け処理を行うことで、制御比率を変更する重み付け部173と、を有する。これにより、重み付け処理によって制御比率を適切に変更できる。
【0071】
視覚制御部171Aが行う視覚制御は、例えば、設定ライブラリ中の動作パラメータ(対応付け情報等)に基づいて行われてもよい。視覚制御部171Aは、視覚センサ310を用いて得られる視覚測定情報に基づいて、対象物の現在位置と目標位置との間の相対的な位置関係を特定する。そして、視覚制御部171Aは、特定した位置関係から、対応付け情報により、現在位置と目標位置との差分を減少させる(すなわち、対象物を目標位置に近づける)ような視覚制御指令を生成し、この視覚制御指令を第1情報として出力してもよい。このような視覚制御の少なくとも一部は、学習済みモデルを用いて行われてもよい。
【0072】
同様に、力覚制御部171Bが行う力覚制御は、例えば、設定ライブラリ中の動作パラメータ(対応付け情報等)に基づいて行われてもよい。力覚制御部171Bは、力覚センサ320を用いて得られる力覚測定情報に基づいて、対象物の現在力(現在反力)と目標力(目標反力)との差分を特定し、特定した差分から、対応付け情報により、当該差分を減少させるような力覚制御指令を生成し、この力覚制御指令を第2情報として出力してもよい。このような力覚制御の少なくとも一部は、学習済みモデルを用いて行われてもよい。
【0073】
制御部170(重み付け部173)は、ロボット装置200を用いた作業が進行するにつれて制御比率を動的に又は段階的に変更してもよい。上述のように、ロボット装置200を用いた作業は、予め定められた複数の工程を含み得る。制御部170は、制御比率を工程ごとに変更してもよい。これにより、工程ごとに適切な制御比率でロボット装置200の動作を制御できる。
【0074】
ライブラリ記憶部160は、複数の工程のそれぞれの制御比率に関する設定を含む設定ライブラリ(設定情報)を記憶していてもよい。制御部170(重み付け部173)は、設定ライブラリに基づいて制御比率を工程ごとに変更してもよい。これにより、工程ごとに適切な制御比率を設定できる。
【0075】
制御部170(重み付け部173)は、作業における1つの工程から次の工程への遷移時において、当該1つの工程における制御比率から当該次の工程における制御比率へ向けて緩やかに制御比率を変更する。これにより、制御比率が急激な変動が生じないため、緻密な動作制御が可能になると共に、動作エラーの発生を抑制できる。
【0076】
例えば、工程Aの制御比率(視覚制御:力覚制御)が「80:20」、工程Aの次の工程Bの制御比率が「50:50」と設定されている場合において、工程Aから工程Bへの遷移条件が満たされると、制御部170(重み付け部173)は、「80:20」→「75:25」→「70:30」→「65:35」→「60:40」→「55:45」→「50:50」というように段階的に制御比率を変更する。或いは、制御部170(重み付け部173)は、「80:20」→「79:21」→「78:22」→「77:22」→・・・というように連続的に制御比率を変更してもよい。このような制御比率の変更は、制御周期単位で行われてもよいし、複数の制御周期からなる時間単位で行われてもよい。
【0077】
制御部170(重み付け部173)は、センサ300を用いて得られる測定情報に基づいて、作業における1つの工程から次の工程への遷移条件が満たされたか否かを判定してもよい。遷移条件は、設定ライブラリ内の動作パラメータの1つとして含まれていてもよい。制御部170(重み付け部173)は、当該遷移条件が満たされたことに応じて、当該1つの工程から当該次の工程へ遷移すると共に、当該次の工程に対応する制御比率に変更してもよい。
【0078】
制御部170は、当該次の工程へ切り替えた後に当該次の工程における制御が収束しない場合、当該1つの工程へ戻すと共に当該1つの工程に対応する制御比率に変更してもよい。このように、制御が収束しない場合は1つ前の工程に戻して動作をやり直すことにより、当該次の工程に遷移したときに制御が収束することを期待できる。なお、「制御が収束しない場合」とは、測定情報が遷移条件の正常値を満たさないこと、タイムアウトが発生したこと、測定情報がエラー値になったことのうち、少なくとも1つの条件が満たされたことを意味してもよい。
【0079】
制御部170(重み付け部173)は、視覚制御を優先して制御を行う第1制御状態(「視覚ベース」とも称する)と、視覚制御と力覚制御とを協調して用いて制御を行う第2制御状態(「視覚+力覚ベース」とも称する)と、力覚制御を優先して用いて制御を行う第3制御状態(「力覚ベース」とも称する)と、の間でロボット装置200の制御を切り替えてもよい。「視覚制御を優先して制御を行う」とは、例えば、視覚制御が占める制御比率が概ね65%~100%程度であることを意味してもよい。「視覚制御と力覚制御とを協調して用いて制御を行う」とは、例えば、視覚制御:力覚制御が概ね50:50程度であることを意味してもよい。「力覚制御を優先して用いて制御を行う」とは、例えば、力覚制御が占める制御比率が概ね65%~100%程度であることを意味してもよい。制御部170は、センサ300を用いて得られる測定情報に基づいて、第1制御状態乃至第3制御状態における制御の切り替えを判断してもよい。制御部170(重み付け部173)は、第1制御状態により、測定情報と測定情報の目標値との差分が所定値以下にならない場合(遷移条件が満たされない場合であってもよい)、第2制御状態又は第3制御状態に切り替えて力覚測定情報を参照してもよい。
【0080】
制御部170(重み付け部173)は、外部からの指示があった場合、当該指示に応じて制御比率を変更してもよい。例えば、操作装置420を介して制御比率の変更が指示された場合、制御部170(重み付け部173)は、当該指示に応じて制御比率を変更してもよい。
【0081】
制御部170は、ロボット装置200に対して行った制御内容と当該制御内容に対する制御結果(センサ情報)とに応じて、ロボット装置200に対する以降の制御内容に対する制御結果を予測する予測部174Aと、当該予測に応じて、以降の制御内容を補正する補正部174Bと、をさらに有していてもよい。例えば、ロボット装置200側の誤差要因又はセンサ300側の誤差要因等の外部要因により、制御指令で指定した通りの動作をロボット装置200が行っていないような場合、予測部174Aは、当該誤差(すなわち、制御指令の内容と制御結果との差分)を特定し、以降の制御内容に対する制御結果を予測する。そして、補正部174Bは、指令生成部172が生成する制御指令を、予測部174Aの予測結果に応じて補正して駆動部210に出力してもよい。例えば、補正部174Bは、特定された誤差を打ち消すように制御指令を補正してもよい。これにより、外部の誤差要因がある場合でも、より正確なロボット制御を行うことが可能になる。
【0082】
ライブラリ記憶部160は、作業の種別ごとに用意された複数の設定ライブラリを記憶していてもよい。複数の設定ライブラリのそれぞれは、制御比率の設定情報(動作パラメータ)を含んでいてもよい。複数の設定ライブラリのそれぞれは、一連の各工程に関する設定情報を含む。制御部170は、複数の設定ライブラリの中から実際に行う作業の種別に応じて選択された設定ライブラリを用いてロボット装置200の制御を行う。当該選択は、操作装置420を介した操作入力により行われてもよい。このような操作入力に先立ち、取得部120(画像認識部121)は、作業現場又は対象物を視覚センサ310が観察することで得られた視覚測定情報に基づいて実際に行う作業を推定してもよい。制御部170は、推定された作業に対応する設定ライブラリを表示装置410上で表示することでユーザ(オペレータ)に提案してもよい。
【0083】
ライブラリ記憶部160は、作業の種別ごとに用意された複数の認識ライブラリをさらに記憶していてもよい。複数の認識ライブラリのそれぞれは、対象物の画像認識処理に用いる学習済みモデルを含んでいてもよい。制御部170は、複数の認識ライブラリの中から実際に行う作業の種別に応じて選択された認識ライブラリを用いて画像認識処理を行う。当該選択は、操作装置420を介した操作入力により行われてもよい。このような操作入力に先立ち、取得部120(画像認識部121)は、作業現場又は対象物を視覚センサ310が観察することで得られた視覚測定情報に基づいて実際に行う作業を推定してもよい。制御部170は、推定された作業に対応する認識ライブラリを表示装置410上で表示することでユーザ(オペレータ)に提案してもよい。
【0084】
(3.2)制御装置の動作フロー
図8は、第2実施形態に係る制御装置100による制御フローの一例を説明するためのフロー図である。
【0085】
ステップS201において、制御部170は、工程nを開始する。作業開始時にはnの値は「1」である。その際、制御部170は、工程nに対応する設定情報(制御比率を含む動作パラメータ)を適用する。
【0086】
ステップS202において、制御部170は、工程nに対応する設定情報(制御比率を含む動作パラメータ)を適用してロボット装置200の動作を制御する。
【0087】
ステップS203において、制御部170は、工程nから次の工程への遷移条件が満たされた否か(すなわち、工程nが完了したか否か)を判定する。工程nが完了した場合(ステップS203:YES)、ステップS204に処理を進める。一方、工程nが完了していない場合(ステップS203:NO)、ステップS205において、制御部170は、工程nの制御が収束するか否かを判定する。工程nの制御が収束すると判定した場合(ステップS205:YES)、ステップS202に処理を戻す。
【0088】
工程nの制御が収束しないと判定した場合(ステップS205:NO)、制御部170は、工程nの前の工程(n-1)に戻す。その際、制御部170は、工程nの制御比率から工程(n-1)の制御比率に緩やかに制御比率を変更してもよい。或いは、制御部170は、工程(n-1)に戻すことに代えて、工程nの動作パラメータの少なくとも一部を所定の規則に従って変更したうえで工程nを再開してもよい。例えば、速度関係目標値が高すぎると推測されるような場合、速度関係目標値を1段階下げて工程nを再開してもよい。
【0089】
ステップS204において、制御部170は、作業の全工程が完了したか否かを判定する。全工程が完了した場合は本フローが終了する。全工程が完了していない場合(ステップS204:NO)、ステップS207において、制御部170は、工程nの次の工程(n+1)に進める。その際、制御部170は、工程nの制御比率から工程(n+1)の制御比率に緩やかに制御比率を変更してもよい。
【0090】
(3.3)制御装置の動作の具体例
図9は、第2実施形態に係る制御装置100による制御として「基板への部品装着」作業時の制御の具体例を説明するための図である。
【0091】
「基板への部品装着」という作業種別では、工程1「部品認識→移動」→工程2「部品把持」→工程3「部品を基板へ向けて移動」→工程4「接近」→工程5「基板の穴認識」→工程6「穴接近」→工程7「穴倣い動作」→工程8「穴挿入」→工程9「穴挿入完了」→工程10「把持解除」の順で行われ、このような各工程の動作パラメータが設定ライブラリに含まれている。
【0092】
これらの工程のうち、基本的には、対象物(エンドエフェクタ(グリッパ226)、部品(ワークW1)、基板(ワークW2))間の接触を伴う工程では力覚ベースの制御を行うよう設定され、対象物(エンドエフェクタ、部品)をある程度の速度以上で移動させるような工程では視覚ベースの制御を行うよう設定され、対象物間の接触に向けて対象物を低速で移動させるような工程では視覚+力覚ベースの制御を行うように設定される。但し、具体的な各工程の制御比率は、第1実施形態に係るデータ収集で収集されたデータに基づいて設定されることが好ましい。
【0093】
図示の例では、工程1「部品認識→移動」には、視覚ベースの制御が適用される。但し、画像認識により認識した部品の位置を目標位置として、エンドエフェクタの現在位置が目標位置の近傍に近づいたときには視覚+力覚ベースの制御が適用されてもよい。工程2「部品把持」には、力覚ベースの制御が適用される。
【0094】
工程3「部品を基板へ向けて移動」には、視覚ベースの制御が適用される。工程4「接近」には、視覚ベースの制御が適用される。但し、画像認識により認識した基板の位置を目標位置として、部品の現在位置が目標位置の近傍に近づいたときには視覚+力覚ベースの制御が適用されてもよい。工程5「基板の穴認識」には、視覚ベースの制御が適用される。
【0095】
工程6「穴接近」には、視覚+力覚ベースの制御が適用される。工程7「穴倣い動作」から工程10「把持解除」までには、力覚ベースの制御が適用される。
【0096】
(4)第3実施形態
第3実施形態について、第1及び第2実施形態との相違点を主として説明する。第3実施形態に係るシステム構成は第1実施形態と同様である(図1参照)。なお、第3実施形態が第1及び第2実施形態を前提とした実施形態である一例を主として説明するが、第3実施形態は、必ずしも第1及び第2実施形態の少なくとも一部を前提としなくてもよい。
【0097】
(4.1)制御装置の機能ブロック構成
図10は、第3実施形態に係る制御装置100の機能ブロック構成を示すブロック図である。
【0098】
第3実施形態に係る制御装置100は、ロボット装置200の動作状態を測定するためのセンサ300を用いて得られる測定情報を取得する取得部120と、測定情報に基づいて、制御周期ごとにロボット装置200に対する制御指令を繰り返し生成する制御部170と、を有する。制御部170は、測定情報又は制御指令からロボット装置200に関する速度関係値を導出すると共に、ロボット装置200の動作状態に応じて制御周期ごとに可変な速度関係目標値と速度関係値との差分を減少させるように制御指令を生成する。これにより、ロボット装置200を用いた作業時に動作エラーが生じない制御が可能になる。また、速度関係目標値を、ロボット装置200の動作状態(作業の状況)に応じて制御周期ごとに可変とすることにより、非線形的な動作を伴う緻密な作業にも対応可能になる。上述のように、速度関係値は、速度、加速度、及び躍度のうち少なくとも1つを含む。
【0099】
第3実施形態では、制御部170は、測定情報又は制御指令から速度関係値を制御周期ごとに導出する導出部175と、ロボット装置200の動作状態(作業の状況)に応じて制御周期ごとに速度関係目標値を可変設定する目標設定部176と、当該速度関係値と当該速度関係目標値との差分を減少させるように制御周期ごとに制御指令を生成する指令生成部172と、を有する。目標設定部176は、設定ライブラリ中の動作パラメータに含まれる速度関係値に応じて速度関係目標値を可変設定してもよい。
【0100】
なお、指令生成部172には、第2実施形態で説明した視覚制御部171A、力覚制御部171B、及び重み付け部173の機能が組み込まれていてもよい。或いは、制御部170において、指令生成部172とは別に、第2実施形態で説明した視覚制御部171A、力覚制御部171B、及び重み付け部173が設けられてもよい。
【0101】
制御部170(指令生成部172)は、測定情報と目標測定情報(測定情報の目標値)との差分を減少させ、且つ速度関係値と速度関係目標値との差分を減少させるように制御指令を生成する。
【0102】
例えば、制御部170(指令生成部172)は、視覚センサ310を用いて得られる視覚測定情報(現在位置)と目標視覚測定情報(目標位置)との差分を減少させ、且つ速度関係値と速度関係目標値との差分を減少させるように制御指令を生成してもよい。ここで、視覚測定情報(現在位置)と目標視覚測定情報(目標位置)との差分を減少させる制御については、第2実施形態で説明した視覚制御と同様である。
【0103】
制御部170(指令生成部172)は、力覚センサ320を用いて得られる力覚測定情報(現在力(反力))と目標力覚測定情報(目標力(反力))との差分を減少させ、且つ速度関係値と速度関係目標値との差分を減少させるように制御指令を生成してもよい。ここで、力覚測定情報(現在力(反力))と目標力覚測定情報(目標力(反力))との差分を減少させる制御については、第2実施形態で説明した力覚制御と同様である。
【0104】
制御部170(目標設定部176)は、現在の測定情報と目標測定情報との差分(現在の相対測定情報)に応じて速度関係目標値を変更してもよい。例えば、制御部170(目標設定部176)は、設定ライブラリに含まれる、測定情報(相対測定情報)と速度関係値とを対応付ける対応付け情報を用いて、現在の相対測定情報に対応する速度関係値を速度関係目標値として設定してもよい。
【0105】
例えば、制御部170(目標設定部176)は、視覚センサ310を用いて得られる現在の視覚測定情報と目標視覚測定情報との差分に応じて速度関係目標値を変更してもよい。制御部170(目標設定部176)は、制御部170は、力覚センサ320を用いて得られる現在の力覚測定情報と目標力覚測定情報との差分に応じて速度関係目標値を変更してもよい。
【0106】
制御部170(導出部175及び目標設定部176)は、測定情報と目標測定情報との差分(現在の相対測定情報)に応じて、速度関係値(及び速度関係目標値)として用いる値を、速度、加速度、及び躍度の中から1つ以上選択してもよい。例えば、制御部170(導出部175及び目標設定部176)は、視覚ベースの制御の際には、速度関係値(及び速度関係目標値)として、速度を選択してもよい。一方、力覚ベースの制御の際には、速度関係値(及び速度関係目標値)として、躍度を選択してもよい。視覚+力覚ベースの制御の際には、速度関係値(及び速度関係目標値)として、加速度を選択してもよい。
【0107】
制御部170は、第2実施形態と同様に、ロボット装置200に対して行った制御内容と当該制御内容に対する制御結果とに応じて、ロボット装置200に対する以降の制御内容に対する制御結果を予測する予測部174Aと、当該予測に応じて、以降の制御内容を補正する補正部174Bと、を有していてもよい。
【0108】
ライブラリ記憶部160は、作業の種別ごとに用意された複数の設定ライブラリを記憶していてもよい。複数の設定ライブラリのそれぞれは、速度関係値の設定情報(速度関係目標値)を含んでいてもよい。制御部170は、複数の設定ライブラリの中から実際に行う作業の種別に応じて選択された設定ライブラリを用いてロボット装置200の制御を行う。当該選択は、操作装置420を介した操作入力により行われてもよい。このような操作入力に先立ち、取得部120(画像認識部121)は、作業現場又は対象物を視覚センサ310が観察することで得られた視覚測定情報に基づいて実際に行う作業を推定してもよい。制御部170は、推定された作業に対応する設定ライブラリを表示装置410上で表示することでユーザ(オペレータ)に提案してもよい。
【0109】
ライブラリ記憶部160は、作業の種別ごとに用意された複数の認識ライブラリをさらに記憶していてもよい。複数の認識ライブラリのそれぞれは、対象物の画像認識処理に用いる学習済みモデルを含んでいてもよい。制御部170は、複数の認識ライブラリの中から実際に行う作業の種別に応じて選択された認識ライブラリを用いて画像認識処理を行う。当該選択は、操作装置420を介した操作入力により行われてもよい。このような操作入力に先立ち、取得部120(画像認識部121)は、作業現場又は対象物を視覚センサ310が観察することで得られた視覚測定情報に基づいて実際に行う作業を推定してもよい。制御部170は、推定された作業に対応する認識ライブラリを表示装置410上で表示することでユーザ(オペレータ)に提案してもよい。
【0110】
(4.2)制御装置の動作の具体例
図11は、第3実施形態に係る制御装置100による制御として「基板への部品装着」作業時の制御の具体例を説明するための図である。
【0111】
上述のように、「基板への部品装着」という作業種別では、工程1「部品認識→移動」→工程2「部品把持」→工程3「部品を基板へ向けて移動」→工程4「接近」→工程5「基板の穴認識」→工程6「穴接近」→工程7「穴倣い動作」→工程8「穴挿入」→工程9「穴挿入完了」→工程10「把持解除」の順で行われ、このような各工程の動作パラメータが設定ライブラリに含まれている。
【0112】
各工程において、制御部170(指令生成部172)は、センサ300を用いて得られる測定情報と目標測定情報(測定情報の目標値)との差分を減少させ、且つ速度関係値と速度関係目標値との差分を減少させるように制御指令を生成する。
【0113】
図示の例では、工程1「部品認識→移動」には、目標測定情報として「部品の位置」、速度関係目標値として「速度」が適用され得る。この場合、制御部170(指令生成部172)は、視覚センサ310を用いて得られるエンドエフェクタの現在位置と部品の位置との差分を減少させ、且つエンドエフェクタの速度と速度目標値との差分を減少させるように制御指令を生成してもよい。ここで、制御部170(目標設定部176)は、視覚センサ310を用いて得られるエンドエフェクタの現在位置と部品の位置との差分に応じて速度目標値を制御周期ごとに変更してもよい。
【0114】
工程2「部品把持」には、目標測定情報として「目標反力」、速度関係値として「速度」が適用され得る。この場合、制御部170(指令生成部172)は、力覚センサ320を用いて得られる現在のエンドエフェクタに生じる反力と目標反力との差分を減少させ、且つエンドエフェクタの速度と速度目標値との差分を減少させるように制御指令を生成してもよい。ここで、制御部170(目標設定部176)は、力覚センサ320を用いて得られるエンドエフェクタに生じる反力と目標反力との差分に応じて速度目標値を制御周期ごとに変更してもよい。
【0115】
工程3「部品を基板へ向けて移動」には、目標測定情報として「基板の位置」、速度関係値として「躍度」が適用され得る。この場合、制御部170(指令生成部172)は、視覚センサ310を用いて得られるエンドエフェクタ(又は部品)の現在位置と基板の位置との差分を減少させ、且つエンドエフェクタ(又は部品)の躍度と躍度目標値との差分を減少させるように制御指令を生成してもよい。ここで、制御部170(目標設定部176)は、視覚センサ310を用いて得られるエンドエフェクタ(又は部品)の現在位置と基板の位置との差分に応じて躍度目標値を制御周期ごとに変更してもよい。
【0116】
工程4「接近」には、目標測定情報として「エンドエフェクタと基板の位置の差分」、速度関係値として「加速度」が適用され得る。この場合、制御部170(指令生成部172)は、視覚センサ310を用いて得られるエンドエフェクタ(又は部品)の現在位置と基板の位置との差分を減少させ、且つエンドエフェクタの加速度と加速度目標値との差分を減少させるように制御指令を生成してもよい。ここで、制御部170(目標設定部176)は、視覚センサ310を用いて得られるエンドエフェクタ(又は部品)の現在位置と基板の位置との差分に応じて加速度目標値を制御周期ごとに変更してもよい。
【0117】
工程5「基板の穴認識」には、目標測定情報として「基板の穴」が適用され得る。この場合、制御部170(指令生成部172)は、視覚センサ310を用いて基板の穴を認識する。
【0118】
工程6「穴接近」には、目標測定情報として「基板の穴の位置」及び「目標反力」、速度関係値として「加速度」が適用され得る。この場合、制御部170(指令生成部172)は、視覚センサ310を用いて得られる部品の現在位置と基板の穴の位置との差分を減少させ、且つエンドエフェクタの加速度と加速度目標値との差分を減少させるように制御指令を生成してもよい。また、制御部170(指令生成部172)は、力覚センサ320を用いて得られる現在のエンドエフェクタに生じる反力と目標反力との差分を減少させ、且つエンドエフェクタの加速度と加速度目標値との差分を減少させるように制御指令を生成してもよい。
【0119】
工程7「穴倣い動作」から工程10「把持解除」までの各工程には、目標測定情報として工程ごとの「目標反力」、速度関係値として「躍度」が適用され得る。この場合、制御部170(指令生成部172)は、力覚センサ320を用いて得られる現在のエンドエフェクタに生じる反力と工程ごとの目標反力との差分を減少させ、且つエンドエフェクタの躍度と工程ごとの躍度目標値との差分を減少させるように制御指令を生成してもよい。ここで、制御部170(目標設定部176)は、力覚センサ320を用いて得られるエンドエフェクタに生じる反力と目標反力との差分に応じて躍度目標値を制御周期ごとに変更してもよい。
【0120】
(5)他の実施形態
上述の実施形態における動作フロー及び動作例は、必ずしもフロー図に記載された順序に沿って時系列に実行されなくてよい。例えば、動作におけるステップは、フロー図として記載した順序と異なる順序で実行されても、並列的に実行されてもよい。また、動作におけるステップの一部が削除されてもよく、さらなるステップが処理に追加されてもよい。
【0121】
上述の実施形態に係る動作をコンピュータに実行させるプログラムが提供されてもよい。プログラムは、コンピュータ読取り可能媒体に記録されていてもよい。コンピュータ読取り可能媒体を用いれば、コンピュータにプログラムをインストールすることが可能である。ここで、プログラムが記録されたコンピュータ読取り可能媒体は、非一過性の記憶媒体であってもよい。非一過性の記憶媒体は、特に限定されるものではないが、例えば、CD-ROMやDVD-ROM等の記憶媒体であってもよい。
【0122】
本開示で使用する「に基づいて」、「に応じて」という記載は、別段に明記されていない限り、「のみに基づいて」、「のみに応じて」を意味しない。「に基づいて」という記載は、「のみに基づいて」及び「に少なくとも部分的に基づいて」の両方を意味する。同様に、「に応じて」という記載は、「のみに応じて」及び「に少なくとも部分的に応じて」の両方を意味する。また、「含む(include)」、「備える(comprise)」、及びそれらの変形の用語は、列挙する項目のみを含むことを意味せず、列挙する項目のみを含んでもよいし、列挙する項目に加えてさらなる項目を含んでもよいことを意味する。また、本開示において使用されている用語「又は(or)」は、排他的論理和ではないことが意図される。本開示において、例えば、英語でのa,an,及びtheのように、翻訳により冠詞が追加された場合、これらの冠詞は、文脈から明らかにそうではないことが示されていなければ、複数のものを含むものとする。
【0123】
以上、図面を参照して実施形態について詳しく説明したが、具体的な構成は上述のものに限られることはなく、要旨を逸脱しない範囲内において様々な設計変更等をすることが可能である。
【0124】
(6)付記
上述の実施形態に関する特徴について付記する。
【0125】
・付記1
ロボット装置の動作状態に関する測定を行うためのセンサを用いて得られる測定情報を取得する取得部と、
前記測定情報に基づいて前記ロボット装置の動作の制御を行う制御部と、を備え、
前記センサは、視覚センサ及び力覚センサを含み、
前記制御部は、前記視覚センサを用いて得られる視覚測定情報による前記制御である視覚制御と、前記力覚センサを用いて得られる力覚測定情報による前記制御である力覚制御と、の制御比率を、前記ロボット装置を用いた作業の状況に応じて動的に又は段階的に変更する
制御装置。
【0126】
・付記2
前記制御部は、
前記視覚測定情報を参照して、前記制御の内容を示す第1情報を生成する視覚制御部と、
前記力覚測定情報を参照して、前記制御の内容を示す第2情報を生成する力覚制御部と、
前記第1情報及び前記第2情報に基づいて、前記ロボット装置に対する制御指令を生成する指令生成部と、
前記作業の状況に応じて、前記視覚測定情報と前記力覚測定情報との間の重み付け処理、又は前記第1情報と前記第2情報との間の重み付け処理を行うことで、前記制御比率を変更する重み付け部と、を有する
付記1に記載の制御装置。
【0127】
・付記3
前記制御部は、前記作業が進行するにつれて前記制御比率を動的に又は段階的に変更する
付記1又は2に記載の制御装置。
【0128】
・付記4
前記作業は、予め定められた複数の工程を含み、
前記制御部は、前記制御比率を工程ごとに変更する
付記1乃至3のいずれかに記載の制御装置。
【0129】
・付記5
前記複数の工程のそれぞれの前記制御比率に関する設定を含む設定ライブラリを記憶するライブラリ記憶部をさらに備え、
前記制御部は、前記設定ライブラリに基づいて前記制御比率を工程ごとに変更する
付記4に記載の制御装置。
【0130】
・付記6
前記制御部は、前記作業における1つの工程から次の工程への遷移時において、前記1つの工程における前記制御比率から前記次の工程における前記制御比率へ向けて緩やかに前記制御比率を変更する
付記4又は5に記載の制御装置。
【0131】
・付記7
前記制御部は、
前記測定情報に基づいて、前記作業における1つの工程から次の工程への遷移条件が満たされたか否かを判定し、
前記遷移条件が満たされたことに応じて、前記1つの工程から前記次の工程へ遷移するとともに、前記次の工程に対応する前記制御比率に変更する
付記3乃至6のいずれかに記載の制御装置。
【0132】
・付記8
前記制御部は、前記次の工程へ切り替えた後に前記次の工程における前記制御が収束しない場合、前記1つの工程へ戻すとともに前記1つの工程に対応する前記制御比率に変更する
付記7に記載の制御装置。
【0133】
・付記9
前記制御部は、前記視覚制御を優先して前記制御を行う第1制御状態と、前記視覚制御と前記力覚制御とを協調して用いて前記制御を行う第2制御状態と、前記力覚制御を優先して用いて前記制御を行う第3制御状態と、の間で前記制御を切り替える
付記1乃至8のいずれかに記載の制御装置。
【0134】
・付記10
前記制御部は、前記測定情報に基づいて、前記第1制御状態乃至前記第3制御状態における前記制御の切り替えを判断する
付記9に記載の制御装置。
【0135】
・付記11
前記制御部は、前記第1制御状態により、前記測定情報と前記測定情報の目標値との差分が所定値以下にならない場合、前記第2制御状態又は前記第3制御状態に切り替えて前記力覚測定情報を参照する
付記9又は10に記載の制御装置。
【0136】
・付記12
前記制御部は、外部からの指示があった場合、当該指示に応じて前記制御比率を変更する
付記1乃至11のいずれかに記載の制御装置。
【0137】
・付記13
前記制御部は、
前記ロボット装置に対して行った制御内容と当該制御内容に対する制御結果とに応じて、前記ロボット装置に対する以降の制御内容に対する制御結果を予測する予測部と、
前記予測に応じて、前記以降の制御内容を補正する補正部と、を有する
付記1乃至12のいずれかに記載の制御装置。
【0138】
・付記14
前記作業の種別ごとに用意された複数の設定ライブラリを記憶するライブラリ記憶部をさらに備え、
前記複数の設定ライブラリのそれぞれは、一連の各工程に関する設定情報を含み、
前記制御部は、前記複数の設定ライブラリの中から実際に行う作業の種別に応じて選択された設定ライブラリを用いて前記制御を行う
付記1乃至13のいずれかに記載の制御装置。
【0139】
・付記15
前記複数の設定ライブラリのそれぞれは、前記制御比率の設定情報を含む
付記14に記載の制御装置。
【0140】
・付記16
前記作業の種別ごとに用意された複数の認識ライブラリを記憶するライブラリ記憶部をさらに備え、
前記複数の認識ライブラリのそれぞれは、対象物の画像認識処理に用いる学習済みモデルを含み、
前記制御部は、前記複数の認識ライブラリの中から実際に行う作業の種別に応じて選択された認識ライブラリを用いて前記画像認識処理を行う
付記1乃至15のいずれかに記載の制御装置。
【0141】
・付記17
ロボット装置の動作状態に関する測定を行うためのセンサを用いて得られる測定情報を取得することと、
前記測定情報に基づいて前記ロボット装置の動作の制御を行うことと、を有し、
前記センサは、視覚センサ及び力覚センサを含み、
前記制御を行うことは、前記視覚センサを用いて得られる視覚測定情報による前記制御である視覚制御と、前記力覚センサを用いて得られる力覚測定情報による前記制御である力覚制御と、の制御比率を、前記ロボット装置を用いた作業の状況に応じて動的に又は段階的に変更することを含む
制御方法。
【0142】
・付記18
制御装置に、
ロボット装置の動作状態に関する測定を行うためのセンサを用いて得られる測定情報を取得することと、
前記測定情報に基づいて前記ロボット装置の動作の制御を行うことと、を実行させ、
前記センサは、視覚センサ及び力覚センサを含み、
前記制御を行うことは、前記視覚センサを用いて得られる視覚測定情報による前記制御である視覚制御と、前記力覚センサを用いて得られる力覚測定情報による前記制御である力覚制御と、の制御比率を、前記ロボット装置を用いた作業の状況に応じて動的に又は段階的に変更することを含む
プログラム。
【符号の説明】
【0143】
100 :制御装置
101 :プロセッサ
102 :メモリ
103 :外部I/F
110 :動作生成部
120 :取得部
121 :画像認識部
130 :データ収集部
140 :データ記憶部
150 :設定取得部
160 :ライブラリ記憶部
170 :制御部
171A :視覚制御部
171B :力覚制御部
172 :指令生成部
173 :重み付け部
174A :予測部
174B :補正部
175 :導出部
176 :目標設定部
200 :ロボット装置
210 :駆動部
211 :第1関節部
212 :第2関節部
213 :第3関節部
214 :第4関節部
215 :第5関節部
216 :第6関節部
221 :台座部
222 :リンク
223 :リンク
224 :リンク
225 :リンク
226 :グリッパ
300 :センサ
310 :視覚センサ
320 :力覚センサ
330 :他センサ
400 :ユーザI/F
410 :表示装置
420 :操作装置
510 :搬送装置
【要約】
【課題】ロボット装置をより適切に制御することを可能とする。
【解決手段】制御装置は、ロボット装置の動作状態に関する測定を行うためのセンサを用いて得られる測定情報を取得する取得部と、前記測定情報に基づいて前記ロボット装置の動作の制御を行う制御部と、を備え、前記センサは、視覚センサ及び力覚センサを含み、前記制御部は、前記視覚センサを用いて得られる視覚測定情報による前記制御である視覚制御と、前記力覚センサを用いて得られる力覚測定情報による前記制御である力覚制御と、の制御比率を、前記ロボット装置を用いた作業の状況に応じて動的に又は段階的に変更する。
【選択図】図6
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11