説明

運動予測制御装置と方法

【課題】対象物(ワークやランドマーク)やロボット間の相対関係の計測結果(例えば位置、姿勢)に基づいて対象物やロボット間の相対運動を予測することができ、状態推定の計算量や、データの通信所要時間の影響を受けることなく、ロボットごとに決められた制御周期で制御指令値を算出し、ロボットを制御することができる運動予測制御装置。
【解決手段】(A)ロボット2の制御周期に依らない任意のタイミングで、計測装置12、状態推定装置14、及びデータ記憶装置16により、ワークやランドマーク、ロボット間の相対関係を計測し、ワークやランドマーク、ロボットの内部状態を予測し、予測した内部状態と予測に用いた状態遷移方程式に更新して記憶し、(B)ロボット制御装置20により、データ記憶装置16に記憶された最新の内部状態に基づき、ロボット2の制御周期で、その制御に必要な予測値を予測し、ロボット2をリアルタイムに制御する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ロボットなどを使った自動装置のうち、ワークやロボットなどの運動を予測する運動予測制御装置と方法に関する。
【背景技術】
【0002】
移動するワークをロボットでハンドリングする自動装置では、ロボット上やロボットの外部に設置したカメラなどの視覚センサやレーザーレンジファインダ(LRF)などの測距センサでワークの位置を計測し、その計測結果に基づいてロボットアームを追従制御させる必要がある。
また、ロボット自身が移動する移動ロボットの場合でも、ロボット上やロボットの外部に設置したセンサで移動ロボットの位置を計測し、計測結果に基づいてロボットを制御する必要があり、同様の技術が用いられる。ロボットの位置を計測する方法には、ロボット上のセンサでランドマークとの相対位置を計測する方法や、ロボットの外部に設置したセンサでロボットの位置を直接計測する方法がある。
以下、移動するワークや移動ロボットを単に「移動体」と呼ぶ。
【0003】
上述したロボットの運動予測制御では、時々刻々と変化する対象物(ワークやランドマーク)やロボット間の相対位置を一定周期(例:30fpsのカメラ)で計測し、計測結果に基づいて、例えばワークにロボットを近づけるような、移動指令がロボットに出力される。
【0004】
しかし、計測したワークの位置を目標としてロボットを動作させても、センサの計測遅れ、データの取得遅れ、ロボットの動作遅れなどの制御遅れにより、ロボットが移動するワークに追従できないことがある。
また、視覚センサの場合、センサの計測周期はロボットの制御周期(例:4ms)よりも一般に長いため、ロボットは制御周期ごとに最新の計測結果を得られるわけではなく、その分が計測遅れとなる。特に、画像処理に時間がかかったり、ワークがカメラの視野から外れたりすると、計測結果が更新される周期はさらに長くなり、かつ一定ではなくなる。このように、移動するワークや移動ロボットを扱う装置では、制御遅れによりロボットの追従性能が低下する問題点があった。
【0005】
上述した問題を解決するために、種々の制御手段が既に提案されている(例えば、特許文献1〜3)。
【0006】
特許文献1の「3次元運動予測装置」は、単振動を行う被計測体の位置データからその運動パラメータを推定し、その将来の位置を予測し、その位置情報を基にマニュピュレータにより被計測体を把持するものである。
特許文献2の状態推定手段は、観測により時系列に入力される観測信号に基づいて、その観測を行ったシステムの内部状態を推定するものである。内部状態とは、対象物の位置、姿勢、振れ角などの状態変数を意味する。
特許文献3の「運動予測装置」は、バックグラウンド処理とフォアグラウンド処理を併用して自動追尾と運動予測を行うものである。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開平07−019818号公報、「3次元運動予測装置」
【特許文献2】特許第4072017号公報、「状態推定装置、その方法及びそのプログラム、並びに、現在状態推定装置及び未来状態推定装置」
【特許文献3】特許第4153625号公報、「運動予測装置」
【発明の概要】
【発明が解決しようとする課題】
【0008】
上述した特許文献1によれば、対象物(被計測体)を計測した観測履歴から、対象物の運動状態を推定することで、計測値が得られていない間のデータを補完したり、対象物をロボットで把持する際の把持地点を予測したりすることができる。
【0009】
運動状態の推定には、カルマンフィルタやパーティクルフィルタなどのベイズフィルタが一般的に用いられる。ベイズフィルタでは、特許文献2に開示されているように、運動の状態を表す「内部状態」と、「状態遷移方程式」、「観測方程式」を定義する。
【0010】
ベイズフィルタは、大きく分けて、以下の2つの処理で実現される。
(1)任意の時刻における内部状態を予測する「予測処理」。
(2)内部状態から計測値を予測し、実際の計測値と比較して、内部状態を修正する「更新処理」(特許文献2では、「濾波推定手段」と記述されている)。
【0011】
ロボットが状態推定結果を制御に用いる場合、以下の2通りの構成が考えられる。
A ロボット制御装置内に上記のアルゴリズムが実装され、ロボット制御周期ごとに(1)の予測処理を行ない、センサの計測値が得られた時に、(2)の更新処理を行なう。
B 特許文献1のように、状態推定装置とロボットで構成されるシステムとし、ロボットが推定装置から予測値を読み出して制御に用いる。
【0012】
ロボットなどの自動機械の運動を制御する際、一定の制御周期(例:4ms周期)で制御指令値を算出することが求められる。これに対し従来技術では、運動状態の推定を使うシステムを、時間制約を考慮して構成する具体的な方法が提案されていなかった。
【0013】
例えば上述したAの手段では、ロボットの制御周期内に更新処理が終わらない可能性がある。状態推定器の更新処理には、一般的に時間がかかり、特に計測値の種類が多い場合、パーティクルフィルタや、その他の複雑な処理を使う場合には特に時間がかかる。
また、特許文献2の手段は、観測値や状態変数の種類に応じて予測処理、更新処理を分けることで、目的に応じて計算量を減らすことができるが、複雑な運動や、得られる計測値を全て反映させたい場合は、結局全ての処理を連結する必要があるため、推定に必要な計算量は減少しない。
【0014】
また上述したBの方法は、ロボット制御装置が更新処理をする必要はないが、ロボットが予測値を要求してから、推定装置が一定時間内に予測処理を完了し、予測値を返答しなければならない。これを満たす状態推定装置を設計するには、次のような問題を考慮する必要がある。
【0015】
(1)ロボットが多数に増えた時や、更新処理の負荷が高い時は、推定装置の演算処理能力が分散される。このような状況でも、予測処理は一定時間内に完了しなければならない。
(2)ロボットの制御周期はロボットごとに異なるため、ロボット側の要求から予測値を返すまでの時間制約は、一意に決まらない。
(3)ロボット制御装置と状態推定装置間の通信に、一定の時間がかかる。この通信の所要時間は、通信方式(有線・無線など)によって異なる。
【0016】
本発明は、上述した問題点を解決するために創案されたものである。すなわち、本発明の目的は、対象物(ワークやランドマーク)やロボット間の相対位置の計測結果(例えば位置、姿勢)に基づいて対象物やロボット間の相対運動を予測することができ、状態推定の計算量や、データの通信所要時間の影響を受けることなく、ロボットごとに決められた制御周期で制御指令値を算出し、ロボットを制御することができる運動予測制御装置と方法を提供することにある。
【課題を解決するための手段】
【0017】
本発明によれば、対象物やロボットを計測することで、対象物やロボットとの相対運動を予測して、予測結果に基づきロボットを制御する運動予測制御装置であって、
対象物やロボット間の相対関係を計測する計測装置と、対象物やロボットの内部状態を予測し更新する状態推定装置と、前記内部状態を記憶するデータ記憶装置と、前記ロボットを制御するロボット制御装置と、を備え、
前記状態推定装置は、前記内部状態を予測する全体予測部と、データ記憶装置に記憶された内部状態を更新する更新部とを有し、
前記ロボット制御装置は、前記ロボットの制御周期でその制御に必要な予測値を予測するロボット上予測部を有しており、
(A)前記制御周期に依らない任意のタイミングで、前記計測装置、状態推定装置、及びデータ記憶装置により、対象物やロボット間の相対関係を計測し、対象物やロボットの内部状態を予測し、予測した内部状態と予測に用いた状態遷移方程式に更新して記憶し、
(B)前記ロボット制御装置により、データ記憶装置に記憶された最新の内部状態に基づき、前記制御周期で、前記予測値を予測し、ロボットをリアルタイムに制御する、ことを特徴とする運動予測制御装置が提供される。
【0018】
また本発明によれば、対象物やロボットを計測することで、対象物やロボットとの相対運動を予測して、予測結果に基づきロボットを制御する運動予測制御方法であって、
対象物やロボット間の相対関係を計測する計測装置と、対象物やロボットの内部状態を予測し更新する状態推定装置と、前記内部状態を記憶するデータ記憶装置と、前記ロボットを制御するロボット制御装置と、を備え、
前記状態推定装置は、前記内部状態を予測する全体予測部と、データ記憶装置に記憶された内部状態を更新する更新部とを有し、
前記ロボット制御装置は、前記ロボットの制御周期でその制御に必要な予測値を予測するロボット上予測部を有しており、
(A)前記制御周期に依らない任意のタイミングで、前記計測装置、状態推定装置、及びデータ記憶装置により、対象物やロボット間の相対関係を計測し、対象物やロボットの内部状態を予測し、予測した内部状態と予測に用いた状態遷移方程式に更新して記憶し、
(B)前記ロボット制御装置により、データ記憶装置に記憶された最新の内部状態に基づき、前記制御周期で、前記予測値を予測し、ロボットをリアルタイムに制御する、ことを特徴とすることを特徴とする運動予測制御方法が提供される。
【発明の効果】
【0019】
上記本発明の装置と方法によれば、計測装置、状態推定装置、及びデータ記憶装置により、対象物やロボット間の相対関係(例えば相対位置)を計測し、対象物やロボット間の内部状態を予測し、予測した内部状態と予測に用いた状態遷移方程式に更新して記憶するので、対象物(ワークやランドマーク)やロボットの相対関係の計測結果(例えば位置、姿勢)に基づいて移動体(ワークや移動ロボット)の運動予測をすることができる。
【0020】
また、ロボット制御装置が、ロボットの制御周期でロボットの制御に必要な予測値を予測するロボット上予測部を有しており、データ記憶装置に記憶された最新の内部状態に基づき、前記制御周期で、前記予測値を予測し、ロボットをリアルタイムに制御するので、状態推定の計算量や、データの通信所要時間の影響を受けることなく、ロボットごとに決められた制御周期で制御指令値を算出し、ロボットを制御することができる。
【0021】
すなわち、ロボット制御装置は、状態推定の更新処理にかかる時間の影響を受けることなく動作できる。
また、計測装置やロボット制御装置が増え、状態推定の計算量が増加する場合も、各ロボット制御装置が独立して予測計算を行なうため、予測処理にかかる時間は長くならない。したがって、システム変更の際に、演算処理能力などの設計を見直す必要がなくなる。
さらに、予測処理の時間制約をロボット制御装置ごとに設定できる。また、算出する予測値の精度や、予測値の種類なども、ロボット制御装置ごとに設定できる。したがって、予測処理にかかる時間や制御周期等を考慮して、予測計算の精度を変えたり、内部状態のうち必要な変数のみを計算したりといった工夫を、それぞれのロボットで実現できる。
【0022】
また、データ記憶装置が、ロボットからの要求に依らないタイミングで、データ記憶装置に記憶された最新の内部状態をロボット上記憶部に転送することで、ロボット制御装置と状態推定装置間の通信に時間がかかる場合や、通信所要時間が一定でない場合でも、予測処理に必要なデータをすぐに参照できる。この場合、ロボット上で参照されるデータは、通信遅れの影響で、必ずしも最新値とならないが、予測処理が一定時間内に完了することができる。

【図面の簡単な説明】
【0023】
【図1】本発明による運動予測制御装置を備えたロボットシステムの第1実施形態図である。
【図2】本発明による運動予測制御装置の第1実施形態図である。
【図3】本発明による運動予測制御装置の第2実施形態図である。
【図4】本発明による運動予測制御装置を備えたロボットシステムの第2実施形態図である。
【図5】本発明による運動予測制御装置を備えたロボットシステムの第3実施形態図である。
【発明を実施するための形態】
【0024】
以下、本発明の好ましい実施形態を添付図面に基づいて詳細に説明する。なお、各図において共通する部分には同一の符号を付し、重複した説明を省略する。
【0025】
図1は、本発明による運動予測制御装置を備えたロボットシステムの第1実施形態図である。
この図において、1はワーク、2は移動可能なロボット、3はロボットアーム、4はハンド、5aはハンド4に固定された第1カメラ、5bは外部の定位置に固定された第2カメラ、6は固定されたランドマーク、10は本発明の運動予測制御装置である。以下、ワーク1とランドマーク6をまとめて「対象物」とする。
このロボットシステムは、振り子運動しながら移動するワーク1や固定されたランドマーク6をカメラ5a,5bで計測し、ロボット2をカメラ5bで計測し、ロボット2をワーク1に追従させて制御し、ハンド4によりワーク1を把持するようになっている。なお、この例においてランドマーク6の位置は分かっている必要はない。
【0026】
図2は、本発明による運動予測制御装置の第1実施形態図である。
この図において、本発明の運動予測制御装置10は、計測装置12、状態推定装置14、データ記憶装置16、及びロボット制御装置20を備える。装置12、14、20は、データ記憶装置16に接続されている。
【0027】
計測装置12は、対象物やロボット2間の相対関係を計測する。計測装置12で計測される対象物やロボット間の相対位置や姿勢などの計測結果を、計測値Yとする。計測値Yは、計測装置の種類や、計測される対象に応じてそれぞれ定義される。計測値Yは、計測される対象(ワーク1か、ランドマーク6か、移動ロボット2か)や、計測装置の種類によって、中身が異なる。
例えば、相対関係とは、位置、姿勢、速度、角速度、加速度、角加速度などの情報である。
【0028】
計測装置12は、この例では第1カメラ5a、第2カメラ5b、ロボット制御装置20にそれぞれ接続された3台の計測装置(第1計測装置12a、第2計測装置12b、第3計測装置12c)からなる。
すなわち、この例では、カメラと計測装置をそれぞれ2台用い、第1カメラ5aと第2カメラ5bから対象物の画像を取り込み、画像処理によって、対象物の計測値Yを求める。また、計測装置12bは、ロボット2の画像も取り込み、画像処理によって、ロボット2の計測値Yも求める。計測装置12cは、ロボット2のタイヤの移動量や、アーム関節の回転量をエンコーダで計測し、ロボット2の計測値Yを求める。求められた対象物やロボット2の計測値Yは、データ記憶装置16に記憶される。
なお、計測装置12は、この構成に限定されず、対象物やロボット2間の相対関係を計測することができる装置、例えばレーザレーダ、加速度センサ、ジャイロセンサ、速度センサなどを用いてもよい。
【0029】
状態推定装置14には、カルマンフィルタのアルゴリズムを基にした状態推定アルゴリズムが実装されている。このアルゴリズムでは、ワーク1が吊るされている振り子の振れ角θや、Δθ、支点位置x,y,z、ランドマーク6の位置Xl,Yl,Zl,姿勢RXl,RYl,RZl,ロボット2の位置Xr,Yr,Zr,姿勢RXr,RYr,RZrなどの状態変数をまとめて、内部状態Xとする。
また、時刻が進むと内部状態Xがどのように変化するかを示す状態遷移方程式X(t+Δt)=f(X(t))と、内部状態Xと計測値Yを対応づける観測方程式Y=h(X)を定義する。観測方程式は、計測値Yの種類ごとにそれぞれ定義される。
またこのアルゴリズムは、内部状態Xの誤差分布CovXや、計測値の誤差分布CovYなどを管理しており、これらのデータから状態推定の精度を求めることができる。なお以下の例では、これらの精度指標値をまとめてEとする。
【0030】
状態推定装置14は、対象物やロボット2の内部状態を予測する全体予測部15aと、データ記憶装置16に記憶された内部状態を更新する更新部15bとを有し、対象物やロボット2の内部状態を予測し更新する。
【0031】
全体予測部15aでは、データ記憶装置16に記録されている内部状態Xを、状態遷移方程式f(X)を使って、指定された時刻まで遷移させる計算を行なう。
【0032】
更新部15bでは、データ記憶装置16にある内部状態Xと、観測方程式h(X)を使って、対象物やロボット2の計測値Yの予測値を算出する。入力された計測値Yと、予測値を比較して、内部状態Xを更新し、データ記憶装置16に記録する。この時、状態推定の精度指標Eも同時に更新し、データ記憶装置16に記録する。
【0033】
上述した計測装置12、状態推定装置14、及びデータ記憶装置16は、ロボット2の制御周期と異なるタイミングで実行される非リアルタイム処理系である。この非リアルタイム処理系の処理間隔は、ロボット2の制御周期よりも長くてもよく、かつ周期が一定でなくてもよい。この処理間隔は、例えば30〜80msである。
従って、上述した構成により、ロボット2の制御周期と異なるタイミングで、計測装置12、状態推定装置14、及びデータ記憶装置16により、対象物やロボット間の相対関係(例えば相対位置と姿勢)を計測し、対象物やロボット2の内部状態を予測し、予測した内部状態と予測に用いた状態遷移方程式に更新して記憶する。
【0034】
ロボット制御装置20は、この例では、受信部21、指令値算出部22、送信部23、及びロボット上予測部24を有する。
【0035】
受信部21は、ロボット2からその位置情報(エンコーダ情報など)を受信する。
指令値算出部22は、ロボット上予測部24による予測値から、ロボット2に対する指令値を算出する。予測値は、例えばワーク1やロボット2の現在位置や未来位置である。
送信部23は、算出された指令値をロボット2に送信する。
ロボット上予測部24は、所定の制御周期でロボット2の制御に必要な予測値を予測する。
【0036】
すなわち、ロボット制御装置20は、ロボット2の制御に必要な予測値を得るための予測処理を実装したロボット上予測部24を有する。
なおロボット上予測部24は、ロボット2の制御に関連する内部量(予測値)を予測できれば良く、全ての内部量を予測する必要はない。
【0037】
ロボット制御装置20は、ロボット2に一定周期(例:4ms)で動作指令を送信し、ロボット2のエンコーダ情報などを受信する。受信した位置情報は、前述の計測装置12cによって取得され、移動ロボット2の計測値Yとなる。
ロボット上予測部24を使って、対象物やロボット2の現在及び未来の運動状態を予測し、指令値の算出に用いる。
ロボット上予測部24は、データ記憶装置16に記録されている内部状態Xのうち、ロボット制御に関連する状態量を、状態遷移方程式f(X)を使って、指定された時刻まで遷移させる計算を行なう。
【0038】
データ記憶装置16は、上述した内部状態X、内部状態のモデル時刻tx、計測値Y、計測値された時刻ty、状態遷移方程式f、観測方程式h、状態推定の精度指標値Eなどのデータを保持する。
【0039】
上述したロボット制御装置20は、ロボット2の制御周期で制御されるリアルタイム処理系である。この制御周期は、上述した非リアルタイム処理系の処理間隔よりも短い一定周期である。この制御周期は、例えば3〜4msである。
従って、上述した構成により、ロボット制御装置20により、データ記憶装置16に記憶された最新の内部状態に基づき、ロボット2の制御周期で、その制御に必要な予測値を予測し、ロボット2をリアルタイムに制御する。
【0040】
以下、本発明の運動予測制御装置10の動作を説明する。
計測装置12は、任意のタイミングで対象物やロボット2を計測し、データ記憶装置16に計測結果を記録する。
状態推定装置14は、データ記憶装置16に新しい計測結果が記録されると、予測処理、更新処理によって、内部状態を推定する。算出した内部状態や、推定に使った状態遷移方程式などはデータ記憶装置16に記録する。
【0041】
ロボット制御装置20は、一定の制御周期でロボット2を制御する。この時、ロボット上予測部24を使って、任意の時刻における対象物やロボット2の予測位置を算出し、制御に用いる。ロボット上予測部24は、データ記憶装置16に記録されている最新の内部状態や、状態遷移モデルを使って、予測処理を行なう。
ロボット制御装置20は、一定の制御周期で処理を行なうリアルタイム処理系として動作する。それ以外の各装置は、一定周期の時間制約を持たない、非リアルタイム処理系でよい。
【0042】
以下、上述した本発明の運動予測制御装置10の作用を説明する。
2台の計測装置(第1計測装置12aと第2計測装置12b)は以下の(1)〜(3)を任意のタイミングで繰り返す。
(1)任意のタイミングでカメラ5a,5bにシャッター信号を送信し、撮像された画像を取得する。
(2)得られた画像から画像処理によって対象物やロボット2の位置・姿勢情報(計測値Y)を取得する。例えば、画像内の白色領域を抽出し、重心を求める。
(3)算出した計測値Yと、シャッター時刻(計測値された時刻ty)、計測値Yの誤差分布CovYをデータ記憶装置に記録する。
【0043】
また、計測装置12cは、以下の(a1)〜(a3)を任意のタイミングで繰り返す。
(a1)任意のタイミングでロボット制御装置20のエンコーダ情報を取得する。
(a2)得られたエンコーダ情報から、タイヤの移動量や関節角度を求め、移動ロボット2の位置・姿勢情報(計測値Y)を取得する。
(a3)算出した計測値Yと、エンコーダの計測時刻、計測値Yの誤差分布CovYをデータ記憶装置に記録する。
【0044】
状態推定装置14は以下の(4)〜(6)を計測値Yが更新されるたびに実施する。
(4)データ記憶装置16を監視し、新たな計測値Yが記録されていたら、データ記憶装置からY,ty,X,tx,f,h,Eを読み出す。
(5)内部状態Xは、時刻txの時の内部状態を示しているので、全体予測部15aを使って、時刻tyのときの内部状態を予測する。
(6)更新部15bを使って、時刻tyの時の計測値を予測し、予測値と計測値Yを比較して、内部状態Xを修正する。修正した内部状態Xと新たなモデル時刻tx(=ty)をデータ記憶装置16に記録する。また更新部15bは、内部状態Xの誤差分布CovXや、計測値と予測値の差などの精度指標Eを算出し、データ記憶装置16に記録する。
【0045】
ロボット制御装置20は以下の(7)〜(10)を任意の周期で繰り返す。
(7)ロボット2からエンコーダ情報などを受信する。ロボット2との通信は、例えば4ms周期で行なわれるようにロボット2が管理する。したがって、ロボット制御部は、データを受信するまで待機し、データを受信してから4ms以内に(11)の送信処理を完了しなければならない。
(8)ロボット上予測部24を使ってワークやロボットの現在位置や、未来の位置を算出する。この計算を行なう際、ロボット上予測部24は、データ記憶装置16にある最新の内部状態等を参照する。
(9)予測したワーク1の位置にアーム手先が近づくように、目標軌道を算出する。また、状態推定の精度指標値Eを評価して、状態推定が精度良く行なわれている場合は、未来のワークの位置へ把持動作するように、アームの目標軌道、ハンド開閉指令値を算出する。
(10)算出された目標軌道やハンド開閉指令値をロボット2に送信する。
【0046】
図3は、本発明による運動予測制御装置の第2実施形態図である。
この例は、ロボット制御装置20とデータ記憶装置16の間の通信所要時間が長い場合に適している。
すなわちこの例において、データ記憶装置16は、ロボットからの要求に依らないタイミングで、データ記憶装置に記憶された最新の内部状態をロボット上記憶部26に転送する機能を有する。
【0047】
この構成により、データ記憶装置16は、データ記憶装置16に記録されている内部状態や状態遷移モデルを、ロボット上記憶部26に転送する。ロボット上予測部24は、ロボット上記憶部26にあるデータを参照して処理を行なう。
転送するタイミングは、データ記憶装置16の内部状態Xが更新された時((6)の直後)であるのがよい。
なおデータ転送を、データ記憶部に新たなデータが記録されたことを検出した時((6)の直後)とするか、または、一定の時間ごとに行なう。あるいは前述の両方のタイミングで行なってもよい。
【0048】
この構成により、データ記憶装置16の内容を、ロボット上記憶部26に逐次転送し、ロボット上予測部24は、ロボット上記憶部26を参照するので、上述した(8)の計算では通信する必要が無い。したがって、無線通信などの通信所用時間が長い通信を用いた場合でも、通信時間の影響を回避することができる。
【0049】
図4は、本発明による運動予測制御装置を備えたロボットシステムの第2実施形態図である。
この例は、ロボット2が固定されたロボットであり、ランドマーク6がない点で第1実施形態と相違する。その他の構成は第1実施形態と同様である。
すなわちこの例は、固定されたロボット2のアーム3で移動するワーク1を把持するケースであり、ロボット2の位置と姿勢の推定をしなくても良い点で第1実施形態と相違する。
【0050】
図5は、本発明による運動予測制御装置を備えたロボットシステムの第3実施形態図である。
この例は、ロボット2が位置の分かっているランドマーク6から自己位置推定するケースであり、ワークに関する推定や、ランドマーク6の位置と姿勢の推定をしなくても良い点で第1実施形態と相違する。
【0051】
この例は、移動ロボット2が位置の分かっているランドマーク6を計測して、ロボット2の自己位置を推定する場合である。この例では、推定する内部量Xは、ロボット2の原点位置(X,Y,Z)、ロボット2の姿勢(Rxr,Ryr,Rzr)である。その他に、車輪のステア角、速度、角速度などを推定してもよい。
【0052】
更新処理で用いる計測値には、カメラ5aがランドマーク6を計測した結果、カメラ5bがロボット2の位置を計測した結果、ロボット制御装置が記録する車輪の回転量(θ)などを用いる。
【0053】
なお、本発明は上述した実施形態に限定されない。
例えば、複数のロボットとワークが存在する場合も、ワークの運動状態推定と、ロボットの運動状態推定の組み合わせとなるため、上述した本発明により、ロボット制御の時間制約を考慮したシステムを実現できる。
上述した実施例では、振り子運動するワーク、車輪型の移動ロボットを示したが、それぞれが移動する形態はこれらに限定されない。例えば、ワークは、コンベア上を移動するもの、水上で浮遊するもの、飛んでいるものでもよい。ロボットは、クローラ式や、レール上を移動する方式などでもよい。また、固定されたアームでも、土台が揺れたり、受動的に動いたりするケースも「移動」に含む。
【0054】
また、各装置は、別々の処理装置に分ける必要はない。例えば、計測プログラム、状態推定プログラムとして、一つのPC上で複数プログラムを並列処理させる構成であってもよい。
ただし、ロボット制御装置(プログラム)は、一定周期の制約下で処理を行なうリアルタイム処理系とする。なおリアルタイムOSでは、非リアルタイム処理のプログラムとリアルタイム処理のプログラムを並列させることもできる。
データ記憶装置16は、複数の装置、プログラムが同一のデータを読み書きする共有メモリであれば良い。したがって、独立した装置とする必要はなく、状態推定装置14や計測装置12などのメモリ空間上に用意されていれば良い。
【0055】
上述した本発明の装置と方法によれば、計測装置12、状態推定装置14、及びデータ記憶装置16により、対象物やロボット間の相対関係(例えば相対位置)を計測し、対象物やロボット間の内部状態を予測し、予測した内部状態と予測に用いた状態遷移方程式に更新して記憶するので、対象物(ワークやランドマーク)やロボットの相対関係の計測結果(例えば位置、姿勢)に基づいて移動体(ワークや移動ロボット)の運動予測をすることができる。
【0056】
また、ロボット制御装置20が、ロボット2の制御周期でロボット2の制御に必要な予測値を予測するロボット上予測部24を有しており、データ記憶装置16に記憶された最新の内部状態に基づき、前記制御周期で、前記予測値を予測し、ロボット2をリアルタイムに制御するので、状態推定の計算量や、データの通信所要時間の影響を受けることなく、ロボットごとに決められた制御周期で制御指令値を算出し、ロボット2を制御することができる。
【0057】
すなわち、ロボット制御装置20は、状態推定の更新処理にかかる時間の影響を受けることなく動作できる。
また、計測装置12やロボット制御装置20が増え、状態推定の計算量が増加する場合も、各ロボット制御装置20が独立して予測計算を行なうため、予測処理にかかる時間は長くならない。したがって、システム変更の際に、演算処理能力などの設計を見直す必要がなくなる。
さらに、予測処理の時間制約をロボット制御装置20ごとに設定できる。また、算出する予測値の精度や、予測値の種類なども、ロボット制御装置20ごとに設定できる。したがって、予測処理にかかる時間や制御周期等を考慮して、予測計算の精度を変えたり、内部状態のうち必要な変数のみを計算したりといった工夫を、それぞれのロボット2で実現できる。
【0058】
また、データ記憶装置16が、ロボット2からの要求に依らないタイミングで、データ記憶装置16に記憶された最新の内部状態をロボット上記憶部24に転送することで、ロボット制御装置20と状態推定装置14間の通信に時間がかかる場合や、通信所要時間が一定でない場合でも、予測処理に必要なデータをすぐに参照できる。この場合、ロボット2上で参照されるデータは、通信遅れの影響で、必ずしも最新値とならないが、予測処理が一定時間内に完了することができる。
【0059】
なお、本発明は上述した実施形態に限定されず、特許請求の範囲の記載によって示され、さらに特許請求の範囲の記載と均等の意味および範囲内でのすべての変更を含むものである。
【符号の説明】
【0060】
1 ワーク(対象物)、2 ロボット、
3 ロボットアーム、4 ハンド、
5a第1カメラ、5b 第2カメラ、
10 運動予測制御装置、12 計測装置、
12a 第1計測装置、12b 第2計測装置、
14 状態推定装置、15a 全体予測部、
15b 更新部、16 データ記憶装置、
20 ロボット制御装置、21 受信部、
22 指令値算出部、23 送信部、
24 ロボット上予測部、
26 ロボット上記憶部


【特許請求の範囲】
【請求項1】
対象物やロボットを計測することで、対象物やロボットとの相対運動を予測して、予測結果に基づきロボットを制御する運動予測制御装置であって、
対象物やロボット間の相対関係を計測する計測装置と、対象物やロボットの内部状態を予測し更新する状態推定装置と、前記内部状態を記憶するデータ記憶装置と、前記ロボットを制御するロボット制御装置と、を備え、
前記状態推定装置は、前記内部状態を予測する全体予測部と、データ記憶装置に記憶された内部状態を更新する更新部とを有し、
前記ロボット制御装置は、前記ロボットの制御周期でその制御に必要な予測値を予測するロボット上予測部を有しており、
(A)前記制御周期に依らない任意のタイミングで、前記計測装置、状態推定装置、及びデータ記憶装置により、対象物やロボット間の相対関係を計測し、対象物やロボットの内部状態を予測し、予測した内部状態と予測に用いた状態遷移方程式に更新して記憶し、
(B)前記ロボット制御装置により、データ記憶装置に記憶された最新の内部状態に基づき、前記制御周期で、前記予測値を予測し、ロボットをリアルタイムに制御する、ことを特徴とする運動予測制御装置。
【請求項2】
前記ロボット制御装置は、データ記憶装置に記憶された最新の内部状態を記憶するロボット上記憶部を有し、
前記データ記憶装置は、ロボットからの要求に依らないタイミングで、データ記憶装置に記憶された最新の内部状態をロボット上記憶部に転送する、ことを特徴とする請求項1に記載の運動予測制御装置。
【請求項3】
前記内部状態は、対象物やロボットの位置又は姿勢、対象物が吊るされている振り子の振れ角、振り子の支点位置などの状態変数である、ことを特徴とする請求項1に記載の運動予測制御装置。
【請求項4】
計測する前記相対関係は、対象物やロボット間の相対位置又は姿勢である、ことを特徴とする請求項1に記載の運動予測制御装置。
【請求項5】
計測する前記相対関係は、対象物やロボット間の相対速度又は姿勢変化である、ことを特徴とする請求項1に記載の運動予測制御装置。
【請求項6】
対象物やロボットを計測することで、対象物やロボットとの相対運動を予測して、予測結果に基づきロボットを制御する運動予測制御方法であって、
対象物やロボット間の相対関係を計測する計測装置と、対象物やロボットの内部状態を予測し更新する状態推定装置と、前記内部状態を記憶するデータ記憶装置と、前記ロボットを制御するロボット制御装置と、を備え、
前記状態推定装置は、前記内部状態を予測する全体予測部と、データ記憶装置に記憶された内部状態を更新する更新部とを有し、
前記ロボット制御装置は、前記ロボットの制御周期でその制御に必要な予測値を予測するロボット上予測部を有しており、
(A)前記制御周期に依らない任意のタイミングで、前記計測装置、状態推定装置、及びデータ記憶装置により、対象物やロボット間の相対関係を計測し、対象物やロボットの内部状態を予測し、予測した内部状態と予測に用いた状態遷移方程式に更新して記憶し、
(B)前記ロボット制御装置により、データ記憶装置に記憶された最新の内部状態に基づき、前記制御周期で、前記予測値を予測し、ロボットをリアルタイムに制御する、ことを特徴とすることを特徴とする運動予測制御方法。
【請求項7】
前記制御周期は、前記計測装置の処理間隔よりも短い一定周期である、ことを特徴とする請求項6に記載の運動予測制御方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公開番号】特開2012−245568(P2012−245568A)
【公開日】平成24年12月13日(2012.12.13)
【国際特許分類】
【出願番号】特願2011−116663(P2011−116663)
【出願日】平成23年5月25日(2011.5.25)
【出願人】(000000099)株式会社IHI (5,014)
【Fターム(参考)】