特許第6948164号(P6948164)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ 日立GEニュークリア・エナジー株式会社の特許一覧

特許6948164作業用ロボットのアーム姿勢制御システムおよび方法
<>
  • 特許6948164-作業用ロボットのアーム姿勢制御システムおよび方法 図000002
  • 特許6948164-作業用ロボットのアーム姿勢制御システムおよび方法 図000003
  • 特許6948164-作業用ロボットのアーム姿勢制御システムおよび方法 図000004
  • 特許6948164-作業用ロボットのアーム姿勢制御システムおよび方法 図000005
  • 特許6948164-作業用ロボットのアーム姿勢制御システムおよび方法 図000006
  • 特許6948164-作業用ロボットのアーム姿勢制御システムおよび方法 図000007
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6948164
(24)【登録日】2021年9月22日
(45)【発行日】2021年10月13日
(54)【発明の名称】作業用ロボットのアーム姿勢制御システムおよび方法
(51)【国際特許分類】
   B25J 13/00 20060101AFI20210930BHJP
   B25J 13/08 20060101ALI20210930BHJP
   B25J 13/06 20060101ALI20210930BHJP
【FI】
   B25J13/00 Z
   B25J13/08 A
   B25J13/06
【請求項の数】13
【全頁数】15
(21)【出願番号】特願2017-115092(P2017-115092)
(22)【出願日】2017年6月12日
(65)【公開番号】特開2019-918(P2019-918A)
(43)【公開日】2019年1月10日
【審査請求日】2020年1月16日
(73)【特許権者】
【識別番号】507250427
【氏名又は名称】日立GEニュークリア・エナジー株式会社
(74)【代理人】
【識別番号】110001689
【氏名又は名称】青稜特許業務法人
(72)【発明者】
【氏名】丸山 貴志子
(72)【発明者】
【氏名】木村 宣隆
【審査官】 松浦 陽
(56)【参考文献】
【文献】 特開2015−224875(JP,A)
【文献】 米国特許出願公開第2015/0168136(US,A1)
【文献】 特開2009−287298(JP,A)
【文献】 特開2000−084876(JP,A)
【文献】 特開2010−137312(JP,A)
【文献】 特開平01−264785(JP,A)
【文献】 国際公開第2012/081197(WO,A1)
【文献】 特開2014−121759(JP,A)
【文献】 特開2016−221602(JP,A)
【文献】 特開2015−160253(JP,A)
【文献】 特開2012−011498(JP,A)
【文献】 特開昭63−288696(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
B25J 1/00 − 21/02
(57)【特許請求の範囲】
【請求項1】
可動部を有するアームを備える作業用ロボットのアーム姿勢制御システムであって、
前記アームに付加されたマーカを撮影したカメラ画像を入力とし、
前記カメラ画像から前記マーカを抽出し、前記マーカの3次元座標を生成する画像解析装置と、
前記マーカの3次元座標と前記アームの構造モデルに基づいて、前記アームの姿勢を示すアーム姿勢データを生成するアーム姿勢推定装置と、
前記アーム姿勢データに基づいて、前記アームの姿勢を制御するアーム姿勢制御装置を備え、
前記画像解析装置において、所定個数の前記マーカを抽出できなかった場合、前記画像解析装置において、所定の前記マーカを抽出できなかった場合、および、前記アーム姿勢推定装置において、前記マーカの3次元座標と前記アームの構造モデルに基づくアームの姿勢と過去のアーム姿勢データから推定したアームの姿勢が所定以上異なることにより、前記アーム姿勢データが生成できなかった場合、の少なくとも一つを示す所定のエラーを検出した場合に、
前記所定のエラーの検出以前のアームの姿勢、もしくは基本姿勢に復帰するか、
あるいは、
所定のエラーを検出した状況を記憶し、その後の前記アームの姿勢の制御では、その状況を避けるような回避制御を行う、
作業用ロボットのアーム姿勢制御システム。
【請求項2】
前記アーム姿勢制御装置は、前記アームの姿勢を制御するために液圧を制御し、
前記所定のエラーの検出以前のアームの姿勢に復帰する際には、
前記所定のエラーの前後の液圧の差分を検出し、当該差分にもとづいて前記アームを制御する、
請求項1記載の作業用ロボットのアーム姿勢制御システム。
【請求項3】
前記アーム姿勢制御装置は、前記アームの姿勢を制御するために液圧を制御し、
前記基本姿勢に復帰する際には、
前記アームが有する複数の駆動箇所のすべてに関わる液圧を最小にすることで制御する、
請求項1記載の作業用ロボットのアーム姿勢制御システム。
【請求項4】
前記アーム姿勢制御装置は、前記アームの姿勢を制御するために液圧を制御し、
前記基本姿勢に復帰する際には、
前記アームが有する複数の駆動箇所のすべてに関わる液圧を最大にすることで制御する、
請求項1記載の作業用ロボットのアーム姿勢制御システム。
【請求項5】
前記アーム姿勢制御装置は、前記アームの姿勢を制御するために液圧を制御し、
前記基本姿勢に復帰する際には、
前記アームが有する複数の駆動箇所のうち少なくとも一つに関わる液圧を最小にし、前記アームが有する複数の駆動箇所のうち少なくとも一つに関わる液圧を最大にすることで制御する、
請求項1記載の作業用ロボットのアーム姿勢制御システム。
【請求項6】
前記アーム姿勢制御装置は、現在のアーム姿勢データと最終目標姿勢から動作計画を生成し、現在のアームの姿勢が前記最終目標姿勢に到達していない場合には、前記動作計画に基づいて定められたアームの軌道を所定量ずつ区分したアーム微小移動目標量を求め、当該アーム微小移動目標量に基づいて微小移動を継続し、
前記回避制御では、
前記所定のエラーの検出直前の、アーム微小移動目標量を用いないように制御を行う、
請求項1記載の作業用ロボットのアーム姿勢制御システム。
【請求項7】
前記回避制御では、
前記所定のエラーの検出直前の、前記アーム姿勢データに対応する姿勢を避けるように制御を行う、
請求項1記載の作業用ロボットのアーム姿勢制御システム。
【請求項8】
前記回避制御では、
前記所定のエラーの検出直前および直後の少なくとも一つに対応した前記マーカの3次元座標をマッピングし、回避すべきエリアを規定し、当該エリアを避けるように制御を行う、
請求項1記載の作業用ロボットのアーム姿勢制御システム。
【請求項9】
可動部を有するアームを備える作業用ロボットのアーム姿勢制御方法であって、
前記アームに付加されたマーカを撮影したカメラ画像を入力する入力ステップと、
前記カメラ画像から前記マーカを抽出し、前記マーカの3次元座標を生成する画像解析ステップと、
前記マーカの3次元座標と前記アームの構造モデルに基づいて、前記アームの姿勢を示すアーム姿勢データを生成するアーム姿勢推定ステップと、
前記アーム姿勢データに基づいて、アーム微小移動目標量を求め、前記アーム微小移動目標量に基づいて、前記アームの姿勢を制御するアーム姿勢制御ステップを実行し、
前記画像解析ステップにおいて、所定個数の前記マーカを抽出できなかった場合、前記画像解析ステップにおいて、所定の前記マーカを抽出できなかった場合、および、前記アーム姿勢推定ステップにおいて、前記マーカの3次元座標と前記アームの構造モデルに基づくアームの姿勢と過去のアーム姿勢データから推定したアームの姿勢が所定以上異なることにより前記アームの姿勢を示すアーム姿勢データを生成できなかった場合、の少なくとも一つを示す所定のエラーを検出した場合に、
前記アーム姿勢データに基づいて制御されたアームの姿勢、もしくは基本姿勢に復帰する復帰制御を行うか、
あるいは、
前記所定のエラーを検出した状況を記憶し、その後の前記アームの姿勢の制御では、その状況を避けるような回避制御を行う、
作業用ロボットのアーム姿勢制御方法。
【請求項10】
前記アームの姿勢を制御するために液圧を制御し、
前記アーム姿勢データに基づいて制御されたアームの姿勢に復帰する際には、
前記アーム姿勢データを生成できなくなったタイミングの前後の液圧の差分を検出し、当該差分にもとづいて前記アームを制御する、
請求項記載の作業用ロボットのアーム姿勢制御方法。
【請求項11】
前記アームの姿勢を制御するために液圧を制御し、
前記基本姿勢に復帰する際には、
前記アームが有する複数の駆動箇所に対する液圧を所定の設定値にすることで制御する、
請求項記載の作業用ロボットのアーム姿勢制御方法。
【請求項12】
前記アームの姿勢を制御するために液圧を制御し、
前記基本姿勢に復帰する際には、
前記アームが有する複数の駆動箇所のすべてに関わる液圧を最小にすることで制御する、
請求項11記載の作業用ロボットのアーム姿勢制御方法。
【請求項13】
前記アームの姿勢を制御するために液圧を制御し、
前記基本姿勢に復帰する際には、
前記アームが有する複数の駆動箇所のすべてに関わる液圧を最大にすることで制御する、
請求項11記載の作業用ロボットのアーム姿勢制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ロボットの姿勢を制御する技術に関し、特に作業用ロボットのアーム姿勢の制御技術に関する。
【背景技術】
【0002】
従来の作業用ロボットの例として、特許文献1には、取り扱う重量が大きい液圧駆動アクチュエータおよび、それを組み込んだ筋肉ロボットが提案されている。
【0003】
一般的に、作業用ロボットの操作では、オペレータがロボットを直接目視し、あるいは、カメラなどで撮影した遠隔地のロボットの動きを見ながら、ロボットの操作を行うことが考えられる。また、ロボットの実際の動作を決定する際には、情報処理装置の支援を受けることもできる。
【0004】
特許文献2には、ロボットの動作計画法として、初期姿勢と目標姿勢を補間する姿勢を無数にサンプリングし、所定のコスト関数に基づいてコストが最小になるように軌道を決定する手法が開示される。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2016−203359号公報
【特許文献2】特開2015−160253号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
原子炉の廃炉作業等では、周囲の構造物が未知であり、かつ、高放射線環境という人の立ち入りが困難な条件下での作業が想定される。このため、原則として、遠隔操作のロボットによる作業が想定される。
【0007】
ロボットが作業する際には、作業環境において、ロボット自身の損傷や周囲の施設の破損を避けるために、周囲の構造物との干渉を制御する必要がある。このため、ロボットの位置や姿勢を正確にコントロールすることが要求される。
【0008】
しかし、一般の産業用ロボットに搭載されているような、関節の角度を直接計測するエンコーダ等の電子部品を用いたセンサは、高い放射線の環境下では誤動作を起こす可能性がある。このため、ロボットの姿勢をセンサにより直接把握することができない場合がある。
【0009】
また、ビデオカメラで画像を取得し、画像に基づいてロボットの姿勢を把握しようとした場合、高い放射線はカメラの画像にもノイズを発生させる場合がある。また、高温高湿度の環境下では、水蒸気等の影響により、カメラの画像が不鮮明になる場合もある。さらに、ビデオカメラの配置や照明器具の設置にも制約がある。ビデオカメラの画像の明瞭性を十分に確保できない場合、画像を見てロボットを操作するオペレータの作業効率も低下するおそれがある。
【0010】
そこで本発明の目的は、高い放射線の環境下で使用可能な、遠隔操作ロボットのオペレータによる操作性を向上することを目的とする。
【課題を解決するための手段】
【0011】
本発明の一側面は、可動部を有するアームを備える作業用ロボットのアーム姿勢制御システムである。当該システムは、アームに付加されたマーカを撮影したカメラ画像を入力として処理を行う。システムの構成要素としては、カメラ画像からマーカを抽出し、マーカの3次元座標を生成する画像解析装置と、マーカの3次元座標とアームの構造モデルに基づいて、アームの姿勢を示すアーム姿勢データを生成するアーム姿勢推定装置と、アーム姿勢データに基づいて、アームの姿勢を制御するアーム姿勢制御装置を備える。また、アーム姿勢データの生成において、所定のエラーを検出した場合に、所定のエラーの検出以前のアームの姿勢、もしくは基本姿勢に復帰するか、あるいは、所定のエラーを検出した状況を記憶し、その後のアームの姿勢の制御では、その状況を避けるような回避制御を行う。
【0012】
本発明の他の一側面は、可動部を有するアームを備える作業用ロボットのアーム姿勢制御方法である。この方法は、アームに付加されたマーカを撮影したカメラ画像を入力する入力ステップと、カメラ画像からマーカを抽出し、マーカの3次元座標を生成する画像解析ステップと、マーカの3次元座標とアームの構造モデルに基づいて、アームの姿勢を示すアーム姿勢データを生成するアーム姿勢推定ステップと、アーム姿勢データに基づいて、アーム微小移動目標量を求め、アーム微小移動目標量に基づいて、アームの姿勢を制御するアーム姿勢制御ステップを実行する。また、アームの姿勢を示すアーム姿勢データを生成できなかった場合に、アーム姿勢データに基づいて制御されたアームの姿勢、もしくは基本姿勢に復帰する復帰制御を行うか、あるいは、アーム姿勢データを生成できなかった状況を記憶し、その後のアームの姿勢の制御では、その状況を避けるような回避制御を行う。
【発明の効果】
【0013】
遠隔操作ロボットの操作性を向上することができる。
【図面の簡単な説明】
【0014】
図1】実施例のロボットのアーム姿勢制御システムの、ハードウェアの全体構成を示す斜視図。
図2】実施例のロボットのアーム姿勢制御システムの、全体の処理の流れを示すフロー図。
図3】ロボットのアーム姿勢制御システムの機能ブロックを示すブロック図。
図4】画像解析装置の処理フローを示す流れ図。
図5】アーム姿勢推定装置における、アーム姿勢推定処理の処理フローを示す流れ図。
図6】アーム姿勢制御装置における、アーム姿勢制御処理の処理フローを示す流れ図。
【発明を実施するための形態】
【0015】
以下で説明される実施例の一つの例では、アームを有するロボット(作業用ロボット)を含むロボットシステムであって、作業環境あるいはロボット自体に設置された非接触センサを用いる。非接触センサとしては、例えばステレオカメラがある。アームには複数のマーカが配置されており、ロボットシステムは、マーカを非接触センサで検知することで、アームの姿勢を把握する。この構成によれば、放射線耐性に優れる構成によって、ロボットの姿勢を把握することができる。
【0016】
そして、非接触センサでアームの検知ができなくなった場合には、その前の姿勢あるいは基本姿勢に復帰する。基本姿勢とは、例えば前述の特許文献1に開示される作業用ロボットでは、液圧を最大または最小とした場合の姿勢である。基本姿勢は、液圧などの制御パラメータを所定条件あるいは所定値にした場合、一意に定まる姿勢と定義できる。当該構成によれば、非接触センサでアームの検知ができず、姿勢が認識できない場合であっても、認識可能な姿勢に復帰することができる。
【0017】
また、アームの検知ができなくなった位置を記憶し、その後の動作では、その位置を避けてアームを駆動する。非接触センサでアームの検知ができなくなった場合には、例えば障害物などにより、カメラからマーカが見えない場合が想定される。そこで、そのような位置をあらかじめ避けるようにして、アームの姿勢を制御することにより、継続的にアームの姿勢を把握することを可能とする。
【0018】
(1.システムの全体ハードウェア構成)
図1は、本発明の実施例である、ロボットのアーム姿勢制御システムの、ハードウェアの全体構成を示す斜視図である。
【0019】
アーム1001を有するロボット1は、例えば移動機構1002で移動が可能である。アーム1001は、一つあるいは複数の関節1003を備え、関節1003は角度を変化させたり、回転させたりすることが可能である。アーム1001は、遠隔地にいるオペレータ等の指示により姿勢を変化させることができ、作業対象物7に対して保持部1004等により作業を行うことが可能である。アーム1001の機械的な構造については、例えば特許文献1に開示がある。特許文献1に開示される作業用ロボットは、液圧で動作する構造となっており、特に水圧は、ロボットからの油漏れなどによる、作業環境への影響が小さいことが期待できる。
【0020】
アーム1001には一つまたは複数のマーカ3が配置されている。本実施例では、マーカは視認性の良い構成を持つ。マーカ3は例えば、所定の大きさの白色の円盤であり、アーム1001の各部に取り付けられる。マーカ3は発光ダイオード等で発光させてもよい。また、部位ごとにマーカの大きさや色を変えてもよい。マーカ3の構成としては、ロボットの作業環境で、マーカ3が十分に検出できるように、背景に対してコントラストが明確な色や形を選択することが望ましい。
【0021】
アーム1001にとりつけられたマーカ3は、ステレオカメラ2により撮影される。ステレオカメラ2は、例えば2台のビデオカメラである。ステレオカメラ2で撮影された画像は、画像解析装置6に送信される。画像解析装置6の出力は、アーム姿勢推定装置5に入力され、アーム姿勢推定装置5の出力は、アーム姿勢制御装置4に入力される。アーム姿勢制御装置4からの出力は、アーム1001に入力され、アーム1001の姿勢を制御する。
【0022】
例えば特許文献1の技術では、アームの姿勢を制御するために液圧を用いている。この方式を採用する場合には、アーム姿勢制御装置4は液体の圧力を制御するためのポンプを含むものとし、ポンプから送出される液体自体をアーム姿勢制御装置4からの出力と考えてよい。
【0023】
(2.システムの全体処理フロー)
図2は、本実施例のロボットのアーム姿勢制御システムの全体の処理の流れを示す図である。
【0024】
処理S101では、ステレオカメラ2でロボット1のアーム1001およびマーカ3を撮影し、ステレオカメラ画像を取得する。
【0025】
処理S102では、画像解析装置6により、画像解析処理が行われる。後に図4で詳しく説明する。
【0026】
処理S103では、アーム姿勢推定装置5により、アーム姿勢推定処理が行われる。当該処理により、オペレータあるいはシステムは、ロボット1やアーム1001の姿勢を把握することができる。後に図5で詳しく説明する。
【0027】
処理S104では、アーム姿勢制御装置4により、アーム姿勢制御処理が行われる。当該処理は、オペレータあるいはシステムが、ロボット1やアーム1001に次の姿勢を指示する処理である。後に図6で詳しく説明する。
【0028】
処理S105では、アーム姿勢制御装置4から、ロボット1に対して、アーム動作指示が出力される。
【0029】
(3.システムの機能ブロック構成)
図3は、本発明の一実施例である、ロボットのアーム姿勢制御システムの機能ブロックを示すブロック図である。アーム姿勢制御装置4、アーム姿勢推定装置5、画像解析装置6は、信号ケーブルあるいは無線リンクで接続されており、信号の送信あるいは受信が可能である。
【0030】
本実施例では、アーム姿勢制御装置4、アーム姿勢推定装置5、画像解析装置6は、プロセッサ、メモリ、入力インタフェースおよび出力インタフェースを備える、通常のサーバで実現することにした。各装置の計算や制御等の機能は、メモリに格納されたプログラムがプロセッサによって実行されることで、定められた処理を他のハードウェアと協働して実現される。計算機などが実行するプログラム、その機能、あるいはその機能を実現する手段を、「機能」、「手段」、「部」、「ユニット」、「モジュール」等と呼ぶ場合がある。以上の構成は、単体のコンピュータで構成してもよいし、あるいは、プロセッサ、メモリ、入力インタフェースおよび出力インタフェースの任意の部分が、相互に接続された他のコンピュータで構成されてもよい。
【0031】
図1図3では、アーム姿勢制御装置4、アーム姿勢推定装置5、画像解析装置6は別個の装置として説明しているが、一つの装置としてもよい。すなわち、3台のサーバで構成してもよいし、複数の機能を持つ1台のサーバで構成してもよい。
【0032】
図3に示した構成のうち、ロボット1およびロボット1を撮影するステレオカメラ2は、高放射線の作業環境に配置される場合がある。この場合には、通常のサーバの構成部品、特にSRAM(Static Random Access Memory)などの電子デバイス、は耐放射線性能に乏しいので、アーム姿勢制御装置4、アーム姿勢推定装置5、画像解析装置6を構成するサーバは、作業環境から遠隔地に設置することが望ましい。サーバとステレオカメラ2との間には、画像データを送信する信号ケーブルを配置して距離を確保することができる。
【0033】
また、サーバとロボット1との間には、ロボット1にアーム動作指示信号を送る信号線を配置して距離をとることができる。あるいは、前述のように、アーム1001が水や油など液体の圧力で動作する場合には、液体を送るためのパイプを設置することもできる。この場合には、アーム動作制御部703からの信号によって、図示しないポンプ等を制御し、ポンプ等の働きにより、アーム1001の各部に供給される液体の圧力を制御するものとする。
【0034】
(3-1.ステレオカメラ)
ステレオカメラ2は、一般には電子部品の素子スケールが小さいほど耐放射線性能が低下するので、マーカ3が認識できる程度の解像度があればよく、高精細画像は必要ではない。ステレオカメラ2は、ステレオカメラ画像信号Vを生成し、画像解析装置6に送信する。また、ステレオカメラ2は、画像解析管理部601からの指示信号Cによって、撮影の開始、終了、あるいは撮影角度の変更を行うものとする。
【0035】
ステレオカメラの個数は1または複数である。アーム1001の画像に死角がないことが理想的なので、3個以上設置しても良い。ステレオカメラの相対的な位置関係や光軸方向は、設置時に設定する、設定後実測する、あるいはカメラ画像から推定するなどの方法により、データ化しておくものとする。
【0036】
(3-2.画像解析装置(概要))
図4に画像解析装置6の処理フローを示し、図3を参照しつつ処理内容を説明する。本実施例の画像解析装置6は、画像解析管理部601が全体の動作を制御するものとする。画像解析装置6の画像解析管理部601は、ステレオカメラ2からのステレオカメラ画像信号Vを受信すると、ステレオカメラ画像信号Vをマーカ検出部602に入力する(S201)。ステレオカメラ画像は、2以上のカメラからの画像を含むものとする。
【0037】
マーカ検出部602は、ステレオカメラ画像信号Vから画像処理によりマーカ部分を検出し、ステレオカメラの原理に従って、各マーカの3次元座標を検出する。さらに、必要によりマーカ3次元予測座標3DEを用いてマーカ座標を補完する(S202)。処理S202の結果得られた、マーカ3次元座標3Dは、画像解析管理部601に送られる。座標変換部603、マーカ3次元予測座標3DE、およびマーカ座標の補完については、後に説明する。
【0038】
マーカを検出する画像処理では、例えばマーカ3が白色の円形である場合には、高コントラストの円形の部分を検出する。マーカの色や反射率を変更し、色の検出や反射光の検出によって検出してもよい。そして、2次元画像中のマーカ3の座標を示すマーカ2次元座標を生成する。
【0039】
画像解析装置6はデータとして、センサ配置情報604を持つ。センサ配置情報604は、センサ例えばカメラの位置座標および画角(カメラの光軸の方向および視野角)である。マーカ検出部602は、センサ配置情報604を用いて、カメラからみた2次元座標を、3次元座標に変換し、マーカ3次元座標3Dとして、画像解析管理部601に出力する。この際、前述のように必要に応じてマーカ3次元座標の補完を行う。
【0040】
複数の画像から3次元を復元する方法としては、SfM(Structure from Motion)として知られている手法がある。3次元座標の原点や座標系は任意でよい。画像解析管理部601は、マーカ3次元座標3Dをアーム姿勢推定装置5に送信する(S203)。
【0041】
(3-3.アーム姿勢推定装置)
図5にアーム姿勢推定装置5における、アーム姿勢推定処理の処理フローを示し、図3を参照しつつ処理内容を説明する。図5に示すように、アーム姿勢推定装置5の姿勢更新部501は、画像解析装置6の画像解析管理部601からマーカ3次元座標3Dを受信する。ステレオカメラ画像信号Vは、時系列の複数のフレーム画像を含み、各フレームからマーカ3次元座標3Dを生成することにより、マーカ3の動きを追跡することができる。
【0042】
アーム姿勢推定装置5の姿勢更新部501は、アーム姿勢を推定し、アーム姿勢データAPとして更新する処理を行う。アーム姿勢推定装置5は、アーム姿勢データAPを時系列にアーム姿勢履歴データ503として蓄積する。アーム姿勢データAPの推定の処理の内容については後述するが、本実施例では、検出したマーカに基づくマーカ3次元座標3Dと、アーム姿勢履歴データ503(過去のアーム姿勢データAP)から予測したアーム姿勢予測データAPEの両方を利用する。
【0043】
図3に示すように、アーム姿勢履歴データ503は、姿勢予測部504に入力される。姿勢予測部504では、アームの運動モデル505を用いて、アーム姿勢履歴データ503からアーム姿勢予測データAPEを生成する(S301)。アームの運動モデル505は例えば、アームの各関節が所定の等角速度で動作するというような制約条件に従うモデルである。このような予測は、例えばカルマンフィルターを用いて行うことができる。
【0044】
姿勢更新部501には、画像解析管理部601から、マーカ3次元座標3Dが入力される(S302)。姿勢更新部501は、アームモデル502を用いて、マーカ3次元座標3Dからアームの姿勢を算出する。ここで、アームモデル502は、アーム1001の関節と関節の接続関係、関節と関節の間隔、関節の可動範囲、各関節軸を基準としたマーカの位置の情報等を含む。アームが液体の圧力で駆動される場合には、当該姿勢に対応した液体の圧力としてもよい。
【0045】
姿勢更新部501は、アームモデル502とマーカ3次元座標3Dから、アームの姿勢を一意に特定するためのパラメータを算出する。このパラメータは、例えばアームの各関節の角度、あるいはその角度を取るための液体の圧力である。アーム1001が伸縮機能を持つ場合には、伸縮長を含んでもよい。本実施例では、アーム1001を液体の圧力で駆動することにし、アームの姿勢およびアームを駆動するための制御信号は、アームの各部に供給される液体の圧力で規定することにする。
【0046】
姿勢更新部501では、マーカ3次元座標3Dとアームモデル502から算出したアームの姿勢と、姿勢予測部504で予測したアーム姿勢予測データAPEとから、アーム姿勢を推定し、アーム姿勢データAPとして、アーム姿勢推定管理部506に入力する。
【0047】
アーム姿勢の具体的な推定手法としては、例えば、マーカ3次元座標3Dから算出したアームの姿勢から尤度関数を評価し、カルマンフィルターのパラメータを補正して、アーム姿勢データAPを推定し更新する(S303)。アーム姿勢データAPはアーム姿勢推定管理部506から、アーム姿勢制御装置4に送信される。
【0048】
なお、アーム姿勢履歴データ503が十分に蓄積されていない間は、マーカ3次元座標3Dから算出したアームの姿勢をそのままアーム姿勢データAPとしてよい。
【0049】
一方、本実施例では図3に示すように、姿勢予測部504で生成されたアーム姿勢予測データAPEは、画像解析装置6の画像解析管理部601にフィードバックされている。アーム姿勢予測データAPEを用いると、マーカ検出もれの補完を行うことができる。
【0050】
(3-4.画像解析装置(マーカ座標の補完))
図4に戻ってマーカ検出もれの補完処理を説明する。アーム姿勢予測データAPEは座標変換部603に入力され(S204)、アームモデル605(アームモデル502と同一内容でよい)に基づいて、マーカ3次元予測座標3DEに変換される(S205)。マーカ3次元予測座標3DEは、画像解析管理部601を経由してマーカ検出部602に送られる。
【0051】
マーカ検出部602では、ステレオカメラ2の画像によって検出された信号に基づくマーカ3次元座標を、マーカ3次元予測座標3DEによって補完し、マーカ3次元座標3Dを生成する。すなわち、マーカ3次元予測座標3DEは、姿勢予測部504によって予測されたアームの姿勢に基づく、あるべきマーカの座標であり、障害物や水蒸気によりマーカ3が隠れた場合でも、データの欠落に起因するマーカの検出漏れを補完することができる。例えば、ステレオカメラ2の画像によって2つのマーカが検出され、その間のマーカが検出されなかった場合、マーカ3次元予測座標3DEはその間のマーカの存在を示唆することができる。ただし、例えばアーム先端部のマーカの補完は、アーム角度を知り得ない状況では難しい。
【0052】
以上説明したように、図4に示すごとく、マーカ検出部602では、マーカ3次元予測座標3DEを用いて、ステレオカメラ2の画像から得られたマーカの情報を補完する(S202)。そして、マーカ3次元座標3Dを生成し、画像解析管理部601に出力する(S203)。本実施例では、以上のように姿勢予測部504でのアーム姿勢予測データAPEを、画像解析装置6でのマーカ検出の補完に用いているが、補完処理は場合によっては省略してもよい。
【0053】
ロボット1の作業環境では、以上の補完を行った場合であっても、周辺の障害物や水蒸気などにより、十分にロボット1の姿勢の一部または全部を認識できない場合がある。例えば、画像解析管理部601は、所定の個数以上のマーカの座標を認識できなかった場合や、アーム先端のマーカを見失った場合には、マーカ3次元座標3Dの代わりに、もしくはこれに付加して、ロボットの姿勢を認識できないことを示すエラー信号をアーム姿勢推定装置5に送信する。エラー信号を受信したアーム姿勢推定装置5は、アーム姿勢データAPの代わりに、もしくはこれに付加して、エラー信号をアーム姿勢履歴データ503に格納し、また、アーム姿勢制御装置4に送信する。このとき、エラー信号には、直前のマーカ3次元座標3D、あるいは直前のアーム姿勢データAPをさらに付加してもよい。
【0054】
また、エラー信号は、上記のように画像解析管理部601が生成する代わりに、姿勢更新部501において、アーム姿勢が推定できなかった場合に生成することにしてもよい。アーム姿勢が推定できない場合とは、例えばマーカ3次元座標3Dとアームモデル502から算出したアームの姿勢と、姿勢予測部504で予測したアーム姿勢予測データAPEが所定以上異なる場合である。
【0055】
(3-5.アーム姿勢制御装置)
図6にアーム姿勢制御装置4における、アーム姿勢制御処理の処理フローを示し、図3を参照しつつ処理内容を説明する。アーム姿勢制御装置4のアーム動作計画部701は、アーム姿勢データAPをアーム姿勢推定装置5から受け取る。アーム動作計画部701は、最終目標設定部702にアーム姿勢データAPを送る。
【0056】
アームの姿勢制御の初期設定において、最終目標設定部702は、アーム1001の最終目標となる最終目標姿勢FPを設定する(S401)。最終目標姿勢FPは、例えばアーム姿勢データAPからアーム1001の姿勢を画像で再現して画像表示装置(図示せず)に表示し、オペレータが確認して、例えば保持部1004を移動させたい位置を画像上で指定するようにしてもよい。あるいは他の公知の方法でもよい。またこのとき、ステレオカメラ画像信号Vによる画像をあわせて表示してもよい。なお、説明上、最終目標姿勢FPを設定する時点ではアーム1001は見えているものとする。
【0057】
システムが扱うデータとして設定される最終目標姿勢FPは、例えばその姿勢をとるためのアーム1001の各関節の角度や液圧で定義される。本実施例では最終目標姿勢FPは、アームの姿勢およびアームを駆動するための制御信号と同じく、アーム1001の各部に供給される液体の圧力で規定することにする。このときオペレータから指示されたアームの姿勢は、その姿勢をとるためにアームの各部に供給される液体の圧力に変換すればよい。設定された最終目標姿勢FPは、アーム動作計画部701に送信される。
【0058】
アーム動作計画部701では、現在のアーム姿勢データAPと最終目標姿勢FPから、動作計画を生成する(S402)。ロボットの制御においては、環境の変化や、目標姿勢の変更に対応するために、環境や初期姿勢・目標姿勢にあわせて動的に軌道を生成する動作計画法という技術が知られている。動作計画とは、初期姿勢と目標姿勢と周囲環境の情報を入力に、何らかの基準に基づいてロボットの動作の軌道を決定する技術である。動作計画問題は産業用腕型ロボットにおいては、どのように腕を動かせば指定の姿勢になるのかを探す問題である。このような動作計画法の一例は、特許文献2にも開示がある。
【0059】
アーム動作計画部701では、最新のアーム姿勢データAPを入力する(S403)。そして、アーム1001の姿勢が把握できているかを判定する(S404)。この判定は、画像解析管理部601、あるいは、姿勢更新部510で生成されたアーム姿勢データAPの内容、あるいはエラー信号(上述)の有無に基づいて可能である。最終目標姿勢FPを設定する時点ではアームが見えていることが保証されている場合には、最初の微小移動前において、このステップは省略してよい。
【0060】
アーム動作計画部701は、最新のアーム姿勢データAPに基づいて、アーム1001の姿勢が最終目標姿勢FPであるかどうかを判定する(S405)。アームの姿勢が把握できており、現在のアームの姿勢が最終目標姿勢である場合には、アーム動作制御を終了する。
【0061】
アーム動作計画部701は、アームの姿勢が把握できており、現在のアームの姿勢が最終目標姿勢に到達していない場合には、アームの微小移動を継続する。アーム動作計画部701は、アーム動作計画に基づいてアーム微小移動目標量TAを求める(S406)。アーム微小移動目標量は、例えばアーム動作計画に基づいて定められたアーム1001の軌道を、所定量ずつ区分したものに相当する。
【0062】
アーム動作計画部701は、アーム微小移動目標量TAをアーム動作制御部703に指示し、アーム動作制御部703は、ロボット1にアーム微小移動目標量TAに応じたアーム動作指示CONTを行う(S407)。これらの制御により、アーム1001の微小移動が実行される(S408)。本実施例では、アーム動作指示CONTは、アーム1001各部に供給される液圧である。
【0063】
微小移動実行後、微小移動を反映した最新のアーム姿勢データAPを入力し(S403)、アーム1001の姿勢が把握できているかを判定し(S404)、微小移動を継続する。
【0064】
一方、判断S404にてアームが認識されていない場合、すなわちエラー信号の入力がある場合等では、アーム動作計画部701は、アームが以前の状態(例えば直前の状態)に戻るようにアーム微小移動目標量TAを設定し、アーム微小移動目標量TAを制御変数(例えば液圧)に変換し、アーム動作を指示することにより、アーム1001は以前の状態に戻る(S409)。
【0065】
アーム1001が直前の状態に戻ることにより、アーム1001の姿勢を見失う前の状態に復帰することができ、安定した制御が可能となる。また、直前の状態に復帰する以外、所定ステップ前の状態に復帰してもよい。また、アーム1001の基本姿勢(前述)に復帰してもよい。
【0066】
アーム1001が前述のように液体の圧力で姿勢を制御されている場合には、直前の状態に戻るためには、例えば前記エラー信号の前後の液圧あるいは液量の差分を検出し、差分にもとづいて制御することができる。また、基本姿勢に復帰するためには、例えば、液圧で駆動される関節のすべてのシリンダーの液圧あるいは液量を最小にすることで制御することができる。この場合には、アーム1001は例えば最も縮めた状態をとる。また、基本姿勢に復帰するためには、例えば、液圧で駆動される関節のすべてのシリンダーの液圧あるいは液量を最大にすることで制御することができる。この場合には、アーム1001は例えば最も伸ばした状態をとる。また、基本姿勢に復帰するためには、例えば、液圧で駆動される関節1つ以上のシリンダーの液圧あるいは液量を最大にし、1つ以上のシリンダーの液圧あるいは液量を最小にすることで制御することができる。この場合には、アーム1001は例えば曲げた状態をとる。
【0067】
一方、アーム動作計画部701が生成したアーム微小移動目標量TAは、アーム微小移動目標量履歴705として蓄積される。あるアーム微小移動目標量TAによって制御された結果、アーム1001を見失った場合、すなわちエラー信号を受信した場合等には、アーム微小移動目標量履歴705にその履歴を記録する(S410)。
【0068】
判断S404にてアームが認識されていない場合は、処理S409,S410を経て、アーム動作計画の修正を行う。すなわち、例えば、処理409で直前の状態に復帰した場合であれば、当該処理409で復帰した姿勢を起点として、処理S401で設定した最終目標姿勢FAをとるための動作計画を再作成する。ただし、この動作計画では、アーム1001を見失う状態を避けるように、動作計画を作成する。そのためには、アーム微小移動目標量履歴705を用いて、アーム1001を見失った直前のアーム微小移動目標量TAを用いないように制御を行う。あるいは、直前のアーム姿勢データAPの姿勢を避けるように制御を行ってもよい。
【0069】
また、あるいは、エラー信号の受信の直前に対応したマーカ3次元座標3Dを記録して、マーカが見えないエリアの外縁をマッピングすることにより、当該エリアを避けるようにアーム1001を制御することもできる。
【0070】
本実施例によれば、従来の産業用ロボットに搭載されているような、関節の角度を直接計測するエンコーダなどのセンサを用いずに、アームの姿勢を把握することが可能となる。また、放射線や水蒸気などの影響により、高画質のカメラ画像の取得が期待できない環境下でもアームの姿勢を把握することが可能となる。さらに、周囲の未知の構造物などにより、ロボットやアームを見失う可能性のある状況でも、周囲の構造物との干渉を避け、安全かつ確実にアーム姿勢を制御することができる。
【0071】
本実施例中、ソフトウエアで構成した機能と同等の機能は、FPGA(Field Programmable Gate Array)、ASIC(Application Specific Integrated Circuit)などのハードウェアで置換することでも実現できる。
【0072】
本発明は上記した実施形態に限定されるものではなく、様々な変形例が含まれる。例えば、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることが可能である。また、各実施例の構成の一部について、他の実施例の構成の追加・削除・置換をすることが可能である。
【符号の説明】
【0073】
ロボット1、アーム姿勢制御装置4、アーム姿勢推定装置5、画像解析装置6、アーム1001、移動機構1002、関節1003
図1
図2
図3
図4
図5
図6