(57)【要約】【課題】より不都合の少ない新規な構成の作動システムおよびプログラムを得る。【解決手段】実施形態の作動システムは、可動部材と、アクチュエータと、少なくとも一つの撮影部と、座標変換部と、第一作動制御部と、を備える。アクチュエータは、可動部材を動かす。座標変換部は、撮影部により撮影された撮影画像の撮影座標系から比較を実行する演算座標系への座標変換を実行する。第一作動制御部は、演算座標系におけるビジュアルサーボにより偏差が小さくなるようアクチュエータを制御する。【選択図】図５
2019089188.tif 000002
【特許請求の範囲】
【請求項１】
可動部材と、
前記可動部材を動かすアクチュエータと、
少なくとも一つの撮影部と、
前記撮影部により撮影された撮影画像の撮影座標系から比較を実行する演算座標系への座標変換を実行する座標変換部と、
前記演算座標系におけるビジュアルサーボにより偏差が小さくなるよう前記アクチュエータを制御する第一作動制御部と、
を備えた、作動システム。
【請求項２】
前記少なくとも一つの撮影部は第一撮影部および第二撮影部を含み、
前記演算座標系は、前記第二撮影部により撮影された撮影画像の第二撮影座標系に設定され、
前記座標変換部は、前記第一撮影部により撮影された撮影画像の第一撮影座標系から前記第二撮影座標系への座標変換を実行する、請求項１に記載の作動システム。
【請求項３】
前記少なくとも一つの撮影部は複数の撮影部であり、
前記第一作動制御部は、前記複数の撮影部による前記撮影画像に基づいて、前記アクチュエータに対する指令値を算出する指令値算出部を備えた、請求項１または２に記載の作動システム。
【請求項４】
前記複数の撮影部による撮影画像のそれぞれに基づいて複数の原指令値を算出する原指令値算出部を備え、
前記指令値算出部は、前記複数の原指令値の重み付け平均値として前記指令値を算出する、請求項３に記載の作動システム。
【請求項５】
前記第一作動制御部は、前記撮影画像のそれぞれと目標画像との特徴点に基づくマッチング処理を実行するマッチング処理部を有し、
前記原指令値の重み付け係数が、当該原指令値が算出された前記撮影画像と前記目標画像との間でマッチングされた前記特徴点の数が多いほど大きく設定される、請求項４に記載の作動システム。
【請求項６】
前記複数の撮影部は、画角、焦点距離、および撮影方向のうち少なくとも一つが互いに異なる複数の撮影部を含む、請求項３〜５のうちいずれか一つに記載の作動システム。
【請求項７】
他の前記撮影部よりも広い範囲を撮影可能な広範囲撮影部と、
前記第一作動制御部による制御の前に、前記広範囲撮影部による撮影画像に基づいて目標物を決定する目標物決定部と、
を備えた、請求項３〜６のうちいずれか一つに記載の作動システム。
【請求項８】
前記広範囲撮影部は、撮影画像として、三次元距離画像データを取得し、
前記目標物決定部は、前記三次元距離画像データに基づいて前記目標物を決定する、請求項７に記載の作動システム。
【請求項９】
前記第一作動制御部による制御の前でありかつ前記目標物決定部により前記目標物が決定された後に、前記広範囲撮影部による撮影画像に基づいて、前記可動部材が前記目標物により近い近接位置に移動するよう前記アクチュエータを制御する第二作動制御部を備えた、請求項７または８に記載の作動システム。
【請求項１０】
可動部材と、
前記可動部材を動かすアクチュエータと、
第一撮影部と、
前記可動部材に設けられた前記第一撮影部とは別の第二撮影部と、
前記第一撮影部のデータを、前記第二撮影部で撮影された場合に得られる第一データに変換する変換部と、
前記第一データおよび前記第二撮影部の第二データのうち少なくとも一方に基づいて、前記可動部材が動作するよう前記アクチュエータを制御する第一作動制御部と、
を備えた、作動システム。
【請求項１１】
コンピュータを、請求項１〜９のうちいずれか一つに記載の作動システムの、前記座標変換部、および前記第一作動制御部、として機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
実施形態は、作動システムおよびプログラムに関する。
【背景技術】
【０００２】
従来、ビジュアルサーボによるフィードバック制御を実行する作動システムが知られている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１７−９４４８２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
例えば、より不都合の少ない新規な構成の作動システムが得られれば、有益である。
【課題を解決するための手段】
【０００５】
実施形態の作動システムは、可動部材と、アクチュエータと、少なくとも一つの撮影部と、座標変換部と、第一作動制御部と、を備える。アクチュエータは、可動部材を動かす。座標変換部は、撮影部により撮影された撮影画像の撮影座標系から比較を実行する演算座標系への座標変換を実行する。第一作動制御部は、演算座標系におけるビジュアルサーボにより偏差が小さくなるようアクチュエータを制御する。
【図面の簡単な説明】
【０００６】
【図１】図１は、実施形態の作動システムの模式的かつ例示的な概略構成図である。
【図２】図２は、実施形態の作動システムの模式的かつ例示的なブロック図である。
【図３】図３は、実施形態の作動システムにおいて実行される処理の手順を示す模式的かつ例示的なフローチャートである。
【図４】図４は、実施形態の第二作動制御部による制御の実行に伴う各カメラによる撮影画像の変化を示す例示的かつ模式的な説明図である。
【図５】図５は、実施形態の第一作動制御部の模式的かつ例示的なブロック図である。
【図６】図６は、実施形態の作動システムにおける第一カメラ、第二カメラ、および目標物の相対姿勢および相対位置のベクトルの関係を示す模式的かつ例示的な説明図である。
【図７】図７は、実施形態の第一作動制御部による制御の実行に伴う各カメラによる撮影画像の変化を示す例示的かつ模式的な説明図である。
【図８】図８は、第１変形例の作動システムの作動装置の先端部分の模式的かつ例示的な斜視図である。
【図９】図９は、第２実施形態の作動システムの模式的かつ例示的な斜視図である。
【発明を実施するための形態】
【０００７】
以下、作動システムの例示的な実施形態が開示される。以下に示される実施形態の構成や制御（技術的特徴）、ならびに当該構成や制御によってもたらされる作用および結果（効果）は、一例である。
【０００８】
また、以下の複数の実施形態には、同様の構成要素が含まれている。以下では、それら同様の構成要素には共通の符号が付与されるとともに、重複する説明が省略される場合がある。また、本明細書において、序数は、構成要素等を区別するために便宜上付与されており、優先順位や順番を示すものではない。
【０００９】
［第１実施形態］
図１は、作動システム１の概略構成図である。図１に示されるように、作動システム１は、作動装置１００を含んでいる。
【００１０】
作動装置１００は、多関節ロボットであって、関節１１２を介して互いに連結された複数のアーム１１１を有している。複数のアーム１１１は、直列に連結されている。複数のアーム１１１の先端には、関節１１２を介してハンド１２１が設けられている。アーム１１１やハンド１２１は、可動部材の一例である。ハンド１２１は、マニピュレータや、アクセス部、処理部等と称されうる。アーム１１１やハンド１２１の位置および姿勢は、アクチュエータ１１３（図２参照）の作動によって、変化したり維持されたりしうる。アクチュエータは、例えばモータや、モータ付きポンプ、ソレノイド、ソレノイド付き電磁弁等であるが、これらには限定されない。また、ハンド１２１は、例えば、バキュームチャックや、グリッパ等であるが、これらには限定されない。
【００１１】
フィールド１１（エリア、ステージ）には、作動装置１００による処理対象物４００が置かれている。本実施形態では、作動装置１００による処理は、処理対象物４００をハンド１２１で把持し、所定の位置へ運搬することである。
【００１２】
作動システム１は、作動装置１００による処理をより確実にあるいはより円滑に実行できるよう、複数のカメラ２１１，２２１，２２２による撮影画像に基づくビジュアルサーボ制御により、ハンド１２１が、処理対象物４００の処理に適した位置（目標位置）で、処理対象物４００の処理に適した姿勢（目標姿勢）となるよう、アクチュエータ１１３（図２参照）を制御する。そして、作動システム１は、ハンド１２１が目標位置に到達しかつ目標姿勢となった時点で、所定の処理を実行するよう、アクチュエータ１１３を制御する。カメラ２１１，２２１，２２２は、撮影部の一例である。カメラ２１１，２２１，２２２には、光学系部品が含まれる。なお、撮影部には、少なくとも画像データを取得可能な画像センサが含まれればよい。作動システム１は、ロボットハンドリングシステムや、対象物追従システム、ビジュアルサーボ作動システムとも称されうる。
【００１３】
スタンド１２に支持された俯瞰カメラ２１１は、フィールド１１に対して固定され、他のカメラ２２１，２２２よりもより広範囲を撮影することができる。俯瞰カメラ２１１は、広範囲撮影部の一例である。また、俯瞰カメラ２１１は、固定カメラとも称されうる。俯瞰カメラ２１１の処理対象物４００からの距離は他のカメラ２２１，２２２よりも長く、俯瞰カメラ２１１の焦点距離は他のカメラ２２１，２２２よりも短い。また、俯瞰カメラ２１１の画角は他のカメラ２２１，２２２よりも広い。また、俯瞰カメラ２１１は、例えば、３次元距離画像センサを含む。なお、俯瞰カメラ２１１は、必ずしもフィールド１１に固定されていなくてもよい。
【００１４】
作動装置１００に設けられたカメラ２２１，２２２は、作動装置１００とともに移動する。カメラ２２１，２２２は、可動撮影部の一例である。第一カメラ２２１の処理対象物４００からの距離は第二カメラ２２２よりも長く、第一カメラ２２１の焦点距離は第二カメラ２２２よりも短い。また、第一カメラ２２１の画角は第二カメラ２２２よりも広い。カメラ２２１，２２２は、例えば、２次元画像センサを含む。第一カメラ２２１は、第一撮影部の一例であり、第二カメラ２２２は、第二撮影部の一例である。
【００１５】
図２は、作動システム１のブロック図である。作動システム１は、制御装置３００を含む。制御装置３００は、制御部３１０、主記憶部３２０、補助記憶部３３０等を有している。制御部３１０は、例えば、central  processing  unit（ＣＰＵ）やコントローラ等であり、主記憶部３２０は、例えば、read  only  memory（ＲＯＭ）や、random  access  memory（ＲＡＭ）等である。
【００１６】
制御部３１０による演算処理や制御は、ソフトウエアによって実行されてもよいし、ハードウエアによって実行されてもよい。また、制御部３１０による演算処理や制御には、ソフトウエアによる演算処理や制御とハードウエアによる演算処理や制御とが含まれてもよい。ソフトウエアによる処理の場合にあっては、制御部３１０は、ＲＯＭや、ＨＤＤ、ＳＳＤ、フラッシュメモリ等に記憶されたプログラム（アプリケーション）を読み出して実行する。制御部３１０は、プログラムにしたがって動作することにより、制御部３１０に含まれる各部、すなわち、画像データ取得部３１１や、第一作動制御部３１２、第二作動制御部３１３、処理制御部３１４、目標物決定部３１５等として、機能する。この場合、プログラムには、上記各部に対応するモジュールが含まれる。
【００１７】
プログラムは、それぞれインストール可能な形式または実行可能な形式のファイルでＣＤ−ＲＯＭや、ＦＤ、ＣＤ−Ｒ、ＤＶＤ、ＵＳＢメモリ等の、コンピュータで読み取り可能な記録媒体に記録されて提供されうる。また、プログラムは、通信ネットワークに接続されたコンピュータの記憶部に記憶され、ネットワーク経由でダウンロードされることによって導入されうる。また、プログラムは、ＲＯＭ等に予め組み込まれてもよい。
【００１８】
また、制御部３１０の全部あるいは一部がハードウエアによって構成される場合、制御部３１０には、例えば、field  programmable  gate  array（ＦＰＧＡ）や、application  specific  integrated  circuit（ＡＳＩＣ）等が含まれうる。
【００１９】
画像データ取得部３１１は、俯瞰カメラ２１１、第一カメラ２２１、および第二カメラ２２２から、ＲＧＢの画像データ（撮影画像）を取得する。また、俯瞰カメラ２１１が３次元距離画像センサを含む場合、画像データ取得部３１１が取得するデータには、例えば、画素の各位置での俯瞰カメラ２１１からの距離（位置）を示すデータが含まれる。俯瞰カメラ２１１による３次元距離画像データは、３次元点群データや、３次元点群画像データとも称されうる。
【００２０】
第一作動制御部３１２は、第一カメラ２２１および第二カメラ２２２の撮影画像に基づいて、ハンド１２１が目標位置および目標姿勢となるよう、アクチュエータ１１３を制御する。第一作動制御部３１２は、ビジュアルサーボによるフィードバック制御を実行する。
【００２１】
第二作動制御部３１３は、俯瞰カメラ２１１による撮影画像に基づいて、ハンド１２１が初期位置Ｐ０から中間位置Ｐ１０へ移動するよう、アクチュエータ１１３を制御する。中間位置Ｐ１０は、初期位置Ｐ０よりも目標物４０１に近い近接位置の一例である。
【００２２】
処理制御部３１４は、ハンド１２１が目標位置に到達しかつ目標姿勢となった状態において、作動装置１００（ハンド１２１）が所定の処理を実行するよう、アクチュエータ１１３を制御する。
【００２３】
目標物決定部３１５は、俯瞰カメラ２１１による撮影画像から、目標物４０１（図４参照）を決定する。
【００２４】
図３は、制御装置３００による処理の手順を示すフローチャートである。図３に示されるように、まずは目標物決定部３１５による目標物４０１の決定が実行され（Ｓ１０）、次に第二作動制御部３１３による制御が実行され（Ｓ１１）、次に第一作動制御部３１２による制御が実行される（Ｓ１２）。各タイムステップにおいて、画像情報に基づく位置および姿勢の偏差と当該偏差の閾値との比較が実行される（Ｓ１３）。このＳ１３において偏差が閾値以下である場合には（Ｓ１３でＹｅｓ）、処理制御部３１４による制御が実行される（Ｓ１４）、Ｓ１３において偏差が閾値以上である場合には（Ｓ１３でＮｏ）、第一作動制御部３１２による制御が再度実行される（Ｓ１２）。
【００２５】
図４は、第二作動制御部３１３による制御の実行に伴う各カメラ２１１，２２１，２２２による撮影画像の変化を示す説明図である。画像Ｉｍ１１は、俯瞰カメラ２１１によって撮影された画像であり、画像Ｉｍ２１は、第一カメラ２２１によって撮影された画像であり、画像Ｉｍ２２は、第二カメラ２２２によって撮影された画像である。また、図４の上段はハンド１２１の初期位置Ｐ０における撮影画像であり、図４の下段はハンド１２１の中間位置Ｐ１０における撮影画像である。
【００２６】
目標物決定部３１５は、俯瞰カメラ２１１による画像Ｉｍ１１に基づいて、複数の処理対象物４００の中から、現時点での処理対象とする目標物４０１を特定あるいは決定する。具体的には、目標物決定部３１５は、例えば、ハンド１２１が初期位置Ｐ０に位置されている状態で俯瞰カメラ２１１によって取得された３次元距離画像データに基づいて、複数の積み重ねられた処理対象物４００のうち、最も上に位置する処理対象物４００を、目標物４０１として決定することができる。俯瞰カメラ２１１が、フィールド１１の上方に位置し、下方を撮影するよう設置されている場合、俯瞰カメラ２１１の最も近くに位置する処理対象物４００を、目標物４０１として決定することができる。このような制御により、積み重なっている複数の処理対象物４００の中から最も高い位置に存在して他の処理対象物４００が処理の障害となり難い処理対象物４００を、目標物４０１として決定することができる。
【００２７】
また、目標物決定部３１５は、例えば、複数の処理対象物４００のうち、俯瞰カメラ２１１によって撮影された２次元の画像Ｉｍ１１中に設定したバウンディングボックス内に像が収まる処理対象物４００を、目標物４０１として決定することができる。その他、目標物決定部３１５は、俯瞰カメラ２１１による画像Ｉｍ１１に対する公知の画像処理手法によって、目標物４０１を決定することができる。
【００２８】
図４の上段に示されるように、ハンド１２１の初期位置Ｐ０においては、俯瞰カメラ２１１による画像Ｉｍ１１には処理対象物４００の像が含まれているものの、第一カメラ２２１による画像Ｉｍ２１および第二カメラ２２２による画像Ｉｍ２２には処理対象物４００の像が含まれていない。この原因としては、例えば、処理対象物４００がカメラ２２１，２２２の画角内に入ってないことや、処理対象物４００がカメラ２２１，２２２のピントに合う範囲に位置していないこと、処理対象物４００がカメラ２２１，２２２に対してアーム１１１やハンド１２１等の作動装置１００の死角に位置していることといった、種々の原因がある。
【００２９】
これに対し、図４の下段に示されるように、ハンド１２１の中間位置Ｐ１０においては、第一カメラ２２１による画像Ｉｍ２１および第二カメラ２２２による画像Ｉｍ２２に、目標物４０１の像が含まれている。言い換えると、中間位置Ｐ１０は、画像Ｉｍ２１および画像Ｉｍ２２のうち少なくともいずれか一方に、目標物４０１の像が含まれる位置である。中間位置Ｐ１０では、画像Ｉｍ２１および画像Ｉｍ２２のうち少なくともいずれか一方に、目標物４０１の像の全体が含まれてもよい。
【００３０】
すなわち、第二作動制御部３１３は、ハンド１２１が、初期位置Ｐ０から、カメラ２２１，２２２による画像Ｉｍ２１，Ｉｍ２２のうち少なくとも一方に目標物４０１（処理対象物４００）が含まれるようになる中間位置Ｐ１０に移動するよう、アクチュエータ１１３を制御する。なお、中間位置Ｐ１０は、第一作動制御部３１２によるビジュアルサーボによる制御の初期位置あるいは制御前位置とも称されうる。
【００３１】
図５は、第一作動制御部３１２のブロック図である。第一作動制御部３１２は、第一カメラ２２１によって撮影された画像および第二カメラ２２２によって撮影された画像（に基づくパラメータ）と目標画像（に基づくパラメータ）との比較に基づくビジュアルサーボによるフィードバック制御により、ハンド１２１が中間位置Ｐ１０から目標位置へ移動するとともに、当該目標位置においてハンド１２１が目標姿勢となるよう、アクチュエータ１１３を制御する。
【００３２】
図５に示されるように、第一作動制御部３１２は、マッチング処理部３１２ａ１，３１２ａ２、相対位置姿勢算出部３１２ｂ１，３１２ｂ２、座標変換部３１２ｃ１、原指令値算出部３１２ｄ１，３１２ｄ２、および指令値算出部３１２ｅを有している。マッチング処理部３１２ａ１、相対位置姿勢算出部３１２ｂ１、座標変換部３１２ｃ１、および原指令値算出部３１２ｄ１は、第一カメラ２２１による画像に対する演算処理を実行し、マッチング処理部３１２ａ２、相対位置姿勢算出部３１２ｂ２、および原指令値算出部３１２ｄ２は、第二カメラ２２２による画像に対する演算処理を実行する。
【００３３】
目標画像記憶部３３１には、複数の処理対象物４００毎に目標画像が記憶されている。目標画像は、ハンド１２１が目標位置あるいは当該目標位置に対する所定の相対位置に、目標姿勢で位置された状態における、目標物４０１の画像である。言い換えると、目標画像は、目標物４０１の、ハンド１２１による処理が実行されるのに適した位置および姿勢に配置された状態での画像である。目標画像は、基準画像や、リファレンス画像、マスタ画像とも称されうる。本実施形態では、目標画像は、一例として、第二カメラ２２２による目標物４０１の撮影画像である。目標画像記憶部３３１は、例えば、補助記憶部３３０の一部である。
【００３４】
マッチング処理部３１２ａ１は、目標画像記憶部３３１に記憶されている複数の処理対象物４００の目標画像の中から目標物４０１の目標画像を選択し、第一カメラ２２１による撮影画像と目標物４０１の目標画像との特徴点抽出に基づくパターンマッチングを実行する。また、マッチング処理部３１２ａ２は、目標画像記憶部３３１に記憶されている複数の処理対象物４００の目標画像の中から目標物４０１の目標画像を選択し、第二カメラ２２２による撮影画像と目標物４０１の目標画像との特徴点抽出に基づくパターンマッチングを実行する。
【００３５】
相対位置姿勢算出部３１２ｂ１は、マッチング処理部３１２ａ１によるパターンマッチングの結果に基づいて、第一カメラ２２１に対する目標物４０１の相対姿勢Ｒｍおよび相対位置ｔｍを算出する。また、相対位置姿勢算出部３１２ｂ２は、マッチング処理部３１２ａ２によるパターンマッチング結果に基づいて、第二カメラ２２２に対する目標物４０１の相対姿勢Ｒｈおよび相対位置ｔｈを算出する。相対姿勢および相対位置の算出には、公知の基礎行列を推定して姿勢と位置とに分解する方法や、ホモグラフィ行列を推定して姿勢と位置とに分解する方法（ただし目標画像が平面である場合）等が用いられうる。
【００３６】
座標変換部３１２ｃ１は、第一カメラ２２１の第一座標系（ｘｍ，ｙｍ，ｚｍ）における相対姿勢および相対位置を、第二カメラ２２２の第二座標系（ｘｈ，ｙｈ，ｚｈ）における相対姿勢および相対位置に変換する処理を実行する。すなわち、座標変換部３１２ｃは、第一カメラ２２１による画像Ｉｍ２１から得られた相対位置や相対姿勢のようなベクトル等のデータを第二カメラ２２２によって撮影された仮想的な画像から得られたベクトル等のデータに変換する。言い換えると、座標変換部３１２ｃは、第一カメラ２２１による画像Ｉｍ２１に基づいて得られたベクトル等のデータから、当該画像Ｉｍ２１に像として含まれる物体等が第二カメラ２２２によって当該第二カメラ２２２の位置および姿勢で撮影されたと仮定した場合に得られる（すなわち演算座標系における）仮想的な画像（第一撮影画像）に基づくベクトル等の仮想的なデータを、算出する。なお、座標変換部３１２ｃは、ベクトル等のデータではなく、撮影画像を変換して仮想的な撮影画像を得てもよい。この場合、撮影画像が座標変換部３１２ｃによって変換されるデータである。座標変換部３１２ｃは、変換部の一例である。座標変換部３１２ｃ１での演算処理に用いられる相対位置および相対姿勢に関する情報（例えば、後述のＲやｔ等）は、相対位置姿勢記憶部３３２に記憶されている。相対位置姿勢記憶部３３２は、例えば、補助記憶部３３０の一部である。
【００３７】
図６は、第一カメラ２２１、第二カメラ２２２、および目標物４０１（処理対象物４００）の相対姿勢および相対位置のベクトルの関係を示す説明図である。ここで、図６を参照しながら、座標変換部３１２ｃ１における座標変換について説明する。
【００３８】
第一カメラ２２１に対する第二カメラ２２２の相対姿勢をＲ（ベクトル）、相対位置をｔ（ベクトル）とすると、第一カメラ２２１から第二カメラ２２２への相対姿勢Ｒおよび相対位置ｔの同次変換行列Ｔは、次の式（１）で表せる。
【数１】
2019089188.tif 000003
なお、本実施形態では、相対姿勢Ｒおよび相対位置ｔは不変（一定）であるが、相対姿勢Ｒおよび相対位置ｔをリアルタイムに検出可能とし、当該相対姿勢Ｒおよび相対位置ｔを可変としてもよい。
【００３９】
位置ベースト法によるビジュアルサーボ制御を実行する場合、ステレオ視の考え方より、第一カメラ２２１から目標物４０１への相対姿勢Ｒｍおよび相対位置ｔｍの同次変換行列Ｔｍ、および第二カメラ２２２から目標物４０１への相対姿勢Ｒｈおよび相対位置ｔｈの同次変換行列Ｔｈは、以下の式（２）および（３）で表せる。
【数２】
2019089188.tif 000004
【００４０】
図６から、同次変換行列Ｔ，Ｔｍ，Ｔｈの間には、次の式（４）が成り立つ。
Ｔｍ＝ＴＴｈ                                    ・・・  （４）
したがって、第一カメラ２２１の第一座標系（ｘｍ，ｙｍ，ｚｍ）から第二カメラ２２２の第二座標系（ｘｈ，ｙｈ，ｚｈ）への同次変換行列Ｔｈは、
Ｔｈ＝Ｔ−１Ｔｍ                                ・・・  （５）
と表せる。
【００４１】
式（２）および式（３）の相対位置ｔｍ，ｔｈはステレオ視の考え方に基づいて算出されるため、目標物４０１の事前情報（寸法や形状）が不明である場合、スケールが不定となる。すなわち、相対位置ｔｍ，ｔｈの各方向の比率のみがわかり、大きさ（絶対量）はわからない。これに対し、２つのカメラ間の相対位置ｔの大きさは計測可能である。したがって、実際には、式（５）に替えて、適切なスケーリング定数αを含む以下の式（６）を用いる。
【数３】
2019089188.tif 000005
式（６）から、相対姿勢Ｒｍおよび相対位置ｔｍの、第一座標系（ｘｍ，ｙｍ，ｚｍ）から第二座標系（ｘｈ，ｙｈ，ｚｈ）への座標変換は、以下の式（７）で表せる。
【数４】
2019089188.tif 000006
【００４２】
原指令値算出部３１２ｄ１は、座標変換部３１２ｃ１によって座標変換された相対姿勢Ｒｈ’および相対位置ｔｈ’に基づいて、公知の手法により、偏差（相対姿勢Ｒｈ’および相対位置ｔｈ’）を小さくする原指令値ｕｈ１を算出する。原指令値算出部３１２ｄ１において、第一カメラ２２１の第一座標系（ｘｍ，ｙｍ，ｚｍ）は、第一カメラ２２１の撮影座標系（第一撮影座標系）の一例であり、第二カメラ２２２の第二座標系（ｘｈ，ｙｈ，ｚｈ）は、ビジュアルサーボによるフィードバック制御の演算処理を実行する演算座標系の一例である。また、第二カメラ２２２の第二座標系（ｘｈ，ｙｈ，ｚｈ）は、第二カメラ２２２の撮影座標系（第二撮影座標系）でもある。また、相対姿勢Ｒｈ’および相対位置ｔｈ’は、第一データの一例である。
【００４３】
原指令値算出部３１２ｄ２は、相対位置姿勢算出部３１２ｂ２で得られた相対姿勢Ｒｈおよび相対位置ｔｈに基づいて、公知の手法により、偏差（相対姿勢Ｒｈおよび相対位置ｔｈ）を小さくする原指令値ｕｈ２を算出する。また、相対姿勢Ｒｈおよび相対位置ｔｈは、第二データの一例である。
【００４４】
指令値算出部３１２ｅは、原指令値算出部３１２ｄ１によって算出された原指令値ｕｈ１と、原指令値算出部３１２ｄ２によって算出された原指令値ｕｈ２と、に基づいて、指令値ｕを算出する。
【００４５】
指令値算出部３１２ｅは、例えば、以下の式（８）により、指令値ｕを算出することができる。
ｕ＝ｋ・ｕｈ１＋（１−ｋ）ｕｈ２                    ・・・  （８）
ここに、ｋは、重み付け係数である。
【００４６】
重み付け係数ｋは、マッチング処理部３１２ａ１，３１２ａ２のそれぞれにおいてマッチングされた特徴点の数に応じて決定されうる。例えば、マッチング処理部３１２ａ１においてマッチングされた特徴点の数をｍ１、マッチング処理部３１２ａ２においてマッチングされた特徴点の数をｍ２とした場合、重み付け係数ｋを、次の式（９）により決定することができる。
ｋ＝ｍ１／（ｍ１＋ｍ２）                              ・・・  （９）
【００４７】
また、別の例として、第二カメラ２２２による撮影画像中に目標物４０１の像が含まれていない場合には、重み付け係数ｋを１とすることができる。この場合、第一カメラ２２１による撮影画像（画像Ｉｍ２１）のみに基づいて指令値ｕが決定される。
【００４８】
また、さらに別の例として、偏差が閾値以下となった場合には、重み付け係数ｋを０とすることができる。この場合、第二カメラ２２２による撮影画像（画像Ｉｍ２２）のみに基づいて指令値ｕが決定される。この場合、偏差が閾値以下となる条件に替えて、別途センサ等で検出された第二カメラ２２２と目標物４０１との距離が閾値以下となる条件や、第二カメラ２２２とフィールド１１の表面との距離が閾値以下となる条件、第二カメラ２２２による撮影画像中の目標物４０１の大きさが閾値以上となる条件等、種々の別の条件に置き換えることができる。
【００４９】
図７は、ビジュアルサーボ制御の実行に伴うハンド１２１の位置の変化に応じた第一カメラ２２１による画像Ｉｍ２１および第二カメラ２２２による画像Ｉｍ２２の変化を示す説明図である。画像Ｉｍ０は、目標画像記憶部３３１に記憶されている目標画像であり、画像Ｉｍ２１は、第一カメラ２２１による撮影画像、画像Ｉｍ２２は、第二カメラ２２２による撮影画像である。また、図７の上段は、ハンド１２１が上述した中間位置Ｐ１０に位置した状態を示し、図７の中段は、ハンド１２１が中間位置Ｐ１０よりも目標位置に近付いた位置Ｐ１１に位置した状態を示し、図７の下段は、ハンド１２１が位置Ｐ１１よりもさらに目標位置に近付いた位置Ｐ１２に位置した状態を示している。なお、位置Ｐ１２は、ほぼ目標位置に到達した状態での位置である。
【００５０】
ハンド１２１が中間位置Ｐ１０に位置している状態では、第二カメラ２２２による画像Ｉｍ２２には目標物４０１の像の一部しか含まれていないため、当該画像Ｉｍ２２からは画像Ｉｍ０とマッチングされた特徴点は抽出されていない。他方、第一カメラ２２１による画像Ｉｍ２１には目標物４０１の像が含まれており、当該画像Ｉｍ２１からは画像Ｉｍ０の特徴点ｃ０とマッチングされた特徴点ｃ１が抽出されている。この場合には、座標変換部３１２ｃ１において座標変換によって得られた相対姿勢Ｒｈ’および相対位置ｔｈ’から、原指令値算出部３１２ｄ１において原指令値ｕｈ１が算出される。この場合、指令値算出部３１２ｅにおける式（８）による指令値ｕの算出において、式（９）により重み付け係数ｋは１（ｋ＝１）に設定されるため、指令値ｕは、原指令値ｕｈ１となる。
【００５１】
ハンド１２１が中間位置Ｐ１０よりも目標物４０１に近い位置Ｐ１１に位置している状態では、画像Ｉｍ２１および画像Ｉｍ２２の双方から、画像Ｉｍ０の特徴点ｃ０とマッチングされた特徴点ｃ１，ｃ２が抽出されている。この場合、指令値算出部３１２ｅにおける重み付け係数ｋは、式（９）に従って、特徴点ｃ１，ｃ２の数の比率に応じて原指令値ｕｈ１，ｕｈ２が重み付けされ、式（８）により指令値ｕが算出される。
【００５２】
ハンド１２１が位置Ｐ１１よりも目標物４０１にさらに近い位置Ｐ１２に位置している状態でも、画像Ｉｍ２１および画像Ｉｍ２２の双方から、画像Ｉｍ０の特徴点ｃ０とマッチングされた特徴点ｃ１，ｃ２が抽出されている。よって、この場合も、重み付け係数ｋを、式（９）に従って設定することができる。あるいは、偏差が閾値以下となる条件や、第二カメラ２２２と目標物４０１との距離が閾値以下となる条件、第二カメラ２２２とフィールド１１の表面との距離が閾値以下となる条件、第二カメラ２２２による撮影画像中の目標物４０１の大きさが閾値以上となる条件等を満たしている場合にあっては、二つのカメラ２２１，２２２のうち目標物４０１により近い第二カメラ２２２の撮影画像のみを用いて指令値ｕを算出し、指令値算出部３１２ｅにおける式（８）による指令値ｕの算出において、重み付け係数ｋを、ｋ＝０に設定してもよい。この場合、指令値ｕは、原指令値算出部３１２ｄ２によって算出された原指令値ｕｈ２となる（ｕ＝ｕｈ２）。このように、第一作動制御部３１２は、画像Ｉｍ２１および画像Ｉｍ２２のうち少なくとも一方、言い換えると、画像Ｉｍ２１から得られたベクトル等のデータおよび画像Ｉｍ２２から得られたベクトル等のデータのうち少なくとも一方に基づいて、アクチュエータ１１３を制御することができる。
【００５３】
以上、説明したように、本実施形態の第一作動制御部３１２は、第一カメラ２２１の第一座標系（撮影座標系、第一撮影座標系）から第二カメラ２２２の第二座標系（演算座標系、第二撮影座標系）に座標変換する座標変換部３１２ｃ１を備えている。よって、例えば、第二座標系における目標物４０１の撮影画像が無い場合にあっても、第一座標系における目標物４０１の撮影画像から座標変換によって得られた第二座標系における仮想的な値に基づいて、第二座標系においてビジュアルサーボによる制御を実行することができる。したがって、本実施形態によれば、例えば、撮影画像が無いことにより制御不能となるような事態が回避されやすい。すなわち、本実施形態によれば、例えば、よりロバスト性の高い作動システム１を得ることができる。また、本実施形態によれば、例えば、作動システム１における厳密なキャリブレーションやティーチングが不要となる。
【００５４】
また、本実施形態の指令値算出部３１２ｅは、複数のカメラ２２１，２２２（撮影部）の撮影画像に基づいて、ビジュアルサーボ制御における指令値ｕを算出する。よって、例えば、複数のカメラ２２１，２２２のうち一方による撮影画像が無い場合にあっても、他方による撮影画像が有る場合には指令値ｕを算出することができる。したがって、本実施形態によれば、例えば、よりロバスト性の高い作動システム１や、損傷許容性を有した作動システム１、制御精度が比較的高く所期の位置および姿勢により迅速に到達可能な作動システム１等を、得ることができる。
【００５５】
また、本実施形態の指令値算出部３１２ｅは、複数の原指令値の重み付け平均値として指令値を算出する。よって、本実施形態によれば、例えば、それぞれの撮影画像から得られた複数の原指令値を反映した指令値を、比較的簡素な演算処理によって迅速に算出することができる。また、例えば、撮影画像における目標物４０１の有無等によって重み付け係数を変更することにより、制御精度が比較的高く所期の位置および姿勢により迅速に到達可能な作動システム１を得ることができる。
【００５６】
また、本実施形態の重み付け係数は、原指令値が算出された撮影画像と目標画像との間でマッチングされた特徴点の数が多いほど大きく設定される。よって、本実施形態によれば、例えば、制御精度が比較的高く所期の位置および姿勢により迅速に到達可能な作動システム１を得ることができる。
【００５７】
また、本実施形態の複数のカメラ２１１，２２１，２２２（撮影部）は、画角、焦点距離、および撮影方向のうち少なくとも一つが互いに異なる複数のカメラ２１１，２２１，２２２を含む。よって、本実施形態によれば、例えば、目標物４０１をより広い範囲で捕捉して所期の位置および姿勢により迅速に到達可能な作動システム１を得ることができる。
【００５８】
また、本実施形態の目標物決定部３１５は、第一作動制御部３１２による制御の前に、俯瞰カメラ２１１（広範囲撮影部）による撮影画像に基づいて目標物４０１を決定する。よって、本実施形態によれば、例えば、より迅速にあるいはより確実に目標物４０１を決定し、所期の位置および姿勢により迅速に到達可能な作動システム１を得ることができる。
【００５９】
また、本実施形態の目標物決定部３１５は、俯瞰カメラ２１１（広範囲撮影部）によって得られた３次元距離画像データに基づいて目標物４０１を決定する。よって、本実施形態によれば、例えば、処理対象物４００の高さ情報に基づいて、他の処理対象物４００と干渉し難い目標物４０１をより迅速に決定することができる。
【００６０】
また、本実施形態の第二作動制御部３１３は、第一作動制御部３１２による制御の前であり、かつ目標物決定部３１５による目標物４０１の決定の後に、ハンド１２１（可動部材）が目標物４０１により近い中間位置Ｐ１０（近接位置）に移動するようアクチュエータ１１３を制御する。よって、本実施形態によれば、例えば、第一作動制御部３１２によるビジュアルサーボによる制御をより確実にあるいはより円滑に開始することができるため、所期の位置および姿勢により迅速に到達可能な作動システム１を得ることができる。
【００６１】
［第１変形例］
図８は、第１変形例の作動システム１Ａの作動装置１００Ａのハンド１２１を含む先端部分の斜視図である。本変形例も、上記実施形態と同様の構成を備えており、当該同様の構成に基づく同様の作用および効果が得られる。ただし、本変形例では、複数のカメラ２２１〜２２４とは別の位置に配置された仮想カメラ２２０ｖの仮想撮影座標系が演算座標系として設定されている。言い換えると、本変形例では、演算座標系は、撮影座標系とは異なる座標系として設定されている。この場合、第一作動制御部３１２は、各カメラ２２１〜２２４の撮影画像に基づく値を当該仮想カメラ２２０ｖの仮想撮影座標系に座標変換し、当該仮想撮影座標系においてビジュアルサーボによるフィードバック制御を実行する。なお、カメラ２２１〜２２４は、ハンド１２１が目標位置および目標姿勢にある状態で、カメラ２２１〜２２４のうち少なくともいずれか一つによって目標物４０１が撮影されているように設置される。また、ハンド１２１は、例えばバキュームチャックであるが、これには限定されない。また、指令値算出部３１２ｅは、指令値ｕを、以下の式（１０）により算出することができる。
ｕ＝（ｍａ・ｕａ＋ｍｂ・ｕｂ＋ｍｃ・ｕｃ＋ｍｄ・ｕｄ）
／（ｍａ＋ｍｂ＋ｍｃ＋ｍｄ）                    ・・・  （１０）
ここに、ｕａ〜ｕｄ：カメラ２２１〜２２４の撮影画像のそれぞれから算出された原指令値、ｍａ〜ｍｄ：カメラ２２１〜２２４の撮影画像のそれぞれと目標画像との間でマッチングされた特徴点の数である。このような構成によれば、図８に示されるように、例えば、ハンド１２１が設けられた位置に仮想カメラ２２０ｖの演算座標系を設定することができる。言い換えると、ハンド１２１が設けられた位置に仮想カメラ２２０ｖを配置することができる。本変形例によれば、ハンド１２１による目標物４０１に対するアクセスを、より容易にあるいはより確実に実行できる場合がある。
【００６２】
［第２実施形態］
図９は、第２実施形態の作動システム１Ｂ（作動装置）の斜視図である。本実施形態も、上記実施形態や変形例と同様の構成を備えており、当該同様の構成に基づく同様の作用および効果が得られる。ただし、本実施形態では、作動システム１Ｂは、飛翔体である。可動部材としてのベース１１１Ｂは、プロペラによって浮上して移動するボディやキャビンであり、アクチュエータ１１３は、プロペラを駆動するモータ等である。第一作動制御部３１２は、各カメラ２２１〜２２４の撮影画像に基づくビジュアルサーボによるフィードバック制御により、ベース１１１Ｂあるいはハンド１２１の位置および姿勢を制御する。
【００６３】
以上、本発明の実施形態を例示したが、上記実施形態は一例であって、発明の範囲を限定することは意図していない。実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、組み合わせ、変更を行うことができる。実施形態は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。また、実施形態の構成や形状は、部分的に入れ替えて実施することも可能である。また、各構成や形状等のスペック（構造や、種類、方向、形状、大きさ、長さ、幅、厚さ、高さ、角度、数、配置、位置、材質等）は、適宜に変更して実施することができる。
【００６４】
例えば、作動装置やマニピュレータによる処理は、処理対象物（目標物）の把持や運搬には限定されず、処理対象物に対するその他の処理であってもよい。また、偏差は、画像中の目標物の像から得られる相対姿勢や相対位置を示すパラメータであればよく、相対姿勢や相対位置そのものには限定されない。また、本実施形態では、第一作動制御部は、特徴量ベースト法によるビジュアルサーボ制御を実行することができ、この場合の偏差は、特徴点の画像座標値の偏差である。また、第一作動制御部は、撮影画像から算出されたベクトル等のデータを座標変換（変換）したデータに対する演算処理に替えて、座標変換（変換）した撮影画像から算出されたデータに対して所定の演算処理を実行してもよい。
【符号の説明】
【００６５】
１，１Ａ，１Ｂ…作動システム、１１１…アーム（可動部材）、１１１Ｂ…ベース（可動部材）、１２１…ハンド（可動部材）、１１３…アクチュエータ、２１１…俯瞰カメラ（広範囲撮影部）、２２１…カメラ（第一撮影部、撮影部）、２２２…カメラ（第二撮影部、撮影部）、３１２…第一作動制御部、３１２ａ１，３１２ａ２…マッチング処理部、３１２ｃ１…座標変換部（変換部）、３１２ｄ１，３１２ｄ２…原指令値算出部、３１２ｅ…指令値算出部、３１３…第二作動制御部、３１５…目標物決定部、４０１…目標物、Ｐ１０…中間位置（近接位置）。
【図１】
2019089188.tif 000007
【図２】
2019089188.tif 000008
【図３】
2019089188.tif 000009
【図４】
2019089188.tif 000010
【図５】
2019089188.tif 000011
【図６】
2019089188.tif 000012
【図７】
2019089188.tif 000013
【図８】
2019089188.tif 000014
【図９】
2019089188.tif 000015