JP6723738B2 - 情報処理装置、情報処理方法及びプログラム - Google Patents
情報処理装置、情報処理方法及びプログラム Download PDFInfo
- Publication number
- JP6723738B2 JP6723738B2 JP2015245326A JP2015245326A JP6723738B2 JP 6723738 B2 JP6723738 B2 JP 6723738B2 JP 2015245326 A JP2015245326 A JP 2015245326A JP 2015245326 A JP2015245326 A JP 2015245326A JP 6723738 B2 JP6723738 B2 JP 6723738B2
- Authority
- JP
- Japan
- Prior art keywords
- robot
- image
- motion
- information processing
- observer
- 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
Links
Images
Landscapes
- Manipulator (AREA)
- Processing Or Creating Images (AREA)
Description
本発明は、干渉確認においてロボットが衝突する可能性を軽減すると共に干渉の可能性がある箇所に確認作業の効率を向上させることを目的とする。
<<実施形態1>>
<概要>
実施形態1では、腕同士が衝突する可能性を軽減しながら、2つの腕を持つロボットの干渉を調べる方法について述べる。図1は、表示システムの概要を説明するための図である。図1のように、表示システムでは、第一のロボットアーム1003が動作する様子に、第二のロボットアーム1004の動作をCG(Computer Graphics)で再生したCG画像1053を重畳して観察者1001に提示する。このことにより、観察者1001は、ロボットの腕の干渉を確認する。これにより、干渉確認の際にロボットの腕同士が接触し、ロボットが壊れる可能性を軽減することができる。更に、一方の腕が物理的に邪魔になって他方の腕との干渉の可能性がある箇所の視認を妨げることを軽減できるため、作業効率が向上する。CG画像1053は、動作画像の一例である。また、本実施形態の第一のロボットアーム1003は、第一のロボットの一例である。また、本実施形態の第二のロボットアーム1004は、第二のロボットの一例である。また、本実施形態の第二のロボットアーム1004は、本実施形態の第一のロボットアーム1003と干渉する可能性があるロボットアームの一例である。
実施形態1の構成を、図1を用いて説明する。図1に示されるように、表示システムは、情報処理装置1と、第一のロボットアーム1003と、第二のロボットアーム1004と、観察者1001の視点位置・姿勢を計測するセンサ1013と、を含む。また、表示システムは、観察者1001の左右の視点位置に相当する部分にそれぞれカメラと液晶ディスプレイとを内蔵した表示装置(HMD:Head Mounted Display)1051を含む。観察者1001は、センサ1013や表示装置1051を装着している。表示装置1051は、例えば、観察者1001の視点に配置される。また、対象物1006は、ワークスペース1005上にある。情景1052は、観察者1001に観察される情景である。CG画像1053は、第二のロボットアーム1004の動作のCG画像である。
情報処理装置1は、第一のロボットアーム1003の動きを制御すると共に、センサ1013からの信号を基に観察者1001の視点位置及び姿勢を算出する。そして、情報処理装置1は、観察者1001の視点位置及び姿勢と表示装置1051の内部パラメータとから観察者の視野を特定する。ここで、表示装置1051の情報とは、表示装置1051の投影モデルを表すパラメータであり、焦点距離や解像度、画素ピッチ等の情報を含む。情報処理装置1は、特定した視野の第二のロボットアーム1004の表示位置に、第一のロボットアーム1003の実際の動作と同期させて第二のロボットアーム1004の動作のCG画像を生成する。そして、情報処理装置1は、このCG画像を表示装置1051に内蔵されたカメラより取得された映像に重畳した、重畳画像を生成し、表示装置1051に送信する。表示装置1051は、前記重畳画像を液晶ディスプレイに表示する。ここで、表示装置1051の種類等に応じて、観察者1001の視点位置及び姿勢と、表示装置1051との間のキャリブレーションは行われているものとする。
本実施形態及び以下に示す実施形態において、ロボットは、1つ以上の稼働部位があるロボットであればどのような形態であっても良い。腕が何本あっても良く、腕でも足でも稼働する部位であれば良く、複数のロボットで構成しても良い。ロボットは6軸ロボットであっても、スカラロボットやパラレルリンクロボットであっても良く、その形態は問わない。
図2は、情報処理装置1のハードウェア構成の一例を示す図である。情報処理装置1は、ハードウェア構成として、CPU11と、ROM12と、RAM13と、通信I/F14と、表示装置15と、入力装置16と、HDD17と、を含む。CPU11は、システムバスに接続された情報処理装置1の各種デバイスの制御を行う。ROM12は、BIOSのプログラムやブートプログラムを記憶する。RAM13は、CPU11の主記憶装置として使用される。通信I/F14は、情報処理装置1をネットワークに接続し、ネットワークを介した情報通信を制御する。ネットワークには有線を介して接続されていても良いし、無線を介して接続されていても良いし、有線及び無線を介して接続されていても良い。表示装置15は、CPU11等における処理結果を表示する。入力装置16は、操作者による入力等を受け付ける。入力装置16としては、例えば、マウスやキーボード等であっても良いし、後述するリモコン等であっても良い。HDD17は、OSのプログラムやOS上で動作する各種アプリケーションのプログラム等が格納される。
上記構成において、情報処理装置1の電源がONになると、CPU11は、ROM12に格納されたブートプログラムに従って、HDD17からOSのプログラム等をRAM13に読み込み、処理を実行することによって、情報処理装置1の機能を実現する。つまり、情報処理装置1のCPU11がプログラムに基づき処理を実行することによって、情報処理装置1のソフトウェア構成及び後述するフローチャートの処理が実現される。
上記構成において、表示装置1051の電源がONになると、CPU21は、ROM22に格納されたプログラム等をRAM23に読み込み、処理を実行することによって、表示装置1051の機能を実現する。つまり、表示装置1051のCPU21がプログラムに基づき処理を実行することによって、表示装置1051のソフトウェア構成等が実現される。
図4は、情報処理装置1のソフトウェア構成の一例を示す図である。図4に示されるように、情報処理装置1は、ソフトウェア構成として、データ保持部100と、設定部101と、画像取得部102と、視点位置姿勢取得部103と、重畳画像生成部104と、出力部105と、ロボット制御部106と、を有する。
データ保持部100は、ロボットを含む作業環境の3次元形状情報と、ロボットの制御データ、ロボットの動作を表すデータ(以降、動作データと称す)と、をHDD17等に保持する。ロボットを含む作業環境の3次元形状情報は、ロボットを含む作業環境の3次元形状のメッシュモデルと、ロボットの関節情報と、からなる。但し、3次元形状情報は、CADモデルのような解析曲面モデルであっても良い。ロボットの制御データは、経由点の位置及び経由点でのロボットの関節角やエンドエフェクタの開閉等のアクションを記述したデータのリストからなる。但し、ロボットの制御データは、経由点でのエンドエフェクタの位置姿勢やアクションのデータのリストであっても良い。ロボットの制御データは、スクリプトやプログラミング言語のようなロボット用の言語で書かれたテキスト形式であっても良いし、ロボットへ送信する信号の集合であっても良い。ロボットの制御データは、ロボットの動作を再生できるデータであればどのようなものであっても良い。
動作データは、事前にロボットの実機の動作を計測して得たロボットの動作を表すデータで、時系列的にロボットの関節角やエンドエフェクタの開閉等のアクションを記述したデータのリストからなる。ロボットの動作は公知のモーションキャプチャ―技術を用いて取得することができる。但し、動作データはロボットの動作を表すデータであればどのようなものであっても良い。動作データは、ロボットを複数の撮像装置や3次元計測装置で時系列的に撮影して構築した任意視点画像群や3次元計測データ群であっても良い。
画像取得部102は、視点位置姿勢取得部103で観察者1001の視点位置及び姿勢を取得するのに合わせて、表示装置1051に内蔵されたカメラから観察者1001に提示する映像を取得する。画像取得部102が取得する画像は、撮像画像の一例である。
視点位置姿勢取得部103は、観察者1001の視点位置及び姿勢を取得する。図1に示したセンサ1013は、磁界発生器から発せられた磁力を計測することにより位置と姿勢とを計測できる6自由度センサである。視点位置姿勢取得部103は、センサ1013からの情報を基に観察者1001の視点位置及び姿勢を取得する。
出力部105は、重畳画像生成部104で生成された画像を表示装置1051に送信する。
ロボット制御部106は、データ保持部100で保持するロボットの制御データと設定部101で設定されたパラメータとに基づいて、第一のロボットアーム1003を動作させる。ロボット制御部106は、制御データを再生し、設定部101で設定されたパラメータに基づいて重畳画像生成部104で決定した再生位置におけるロボットアームの状態になるように、第一のロボットアーム1003の関節角等のパラメータを制御する。ロボット制御部106は、前記再生位置が制御データの経由点間である場合は、前後の経由点でのパラメータを補間した値でロボットの位置姿勢を制御する。
本実施形態では、図3の構成をソフトウェア構成として説明を行ったが、図3の全構成又は一部の構成をハードウェア構成として情報処理装置1に実装するようにしても良い。以下の実施形態においても同様である。
受信部111は、情報処理装置1から送信された画像を受信する。表示部112は、受信部111で受信された画像を表示装置25に表示する。
本実施形態では、図5の構成をソフトウェア構成として説明を行ったが、図5の全構成又は一部の構成をハードウェア構成として表示装置1051に実装するようにしても良い。以下の実施形態においても同様である。
図6のフローチャートを用いて、情報処理装置1の情報処理の流れを説明する。
S1010では、重畳画像生成部104は、データ保持部100で保持している3次元形状情報、制御データ、動作データを取得する。
S1020では、設定部101は、重畳画像生成部104で描画するロボットアーム(及びロボット制御部106で実機動作させるロボットアーム)の選択、ロボットの再生速度や再生位置等のパラメータを設定する。観察者1001は、再生位置をコマ送りで進めても良いし、早送りやスロー再生のように再生速度を指定して連続動作させても良い。観察者1001は、干渉確認の難しいところでは再生位置を一時停止して、様々な視点から干渉を観測しても良い。
S1030では、画像取得部102は、表示装置1051を介して観察者1001に提示する現実空間の画像を撮影する。
S1040では、視点位置姿勢取得部103は、センサ1013を介して重畳画像を生成するための観察者1001の視点位置や姿勢を取得する。
S1050では、重畳画像生成部104は、S1010〜S1040で取得された、又は設定された情報等に基づいて、観察者1001の視野を特定し、観察者1001に提示する重畳画像を生成する。重畳画像生成部104は、出力部105に重畳画像を出力すると共に、ロボット制御部106に第一のロボットアーム1003を動作するためのトリガ情報を出力する。
S1060では、出力部105は、表示装置1051にS1040で生成した画像を、例えば、無線等を介して送信する。
S1080では、設定部101は、観察者1001の選択操作等に基づいて干渉確認が完了したか否かを判定する。設定部101は、干渉確認が完了していないと判定した場合、処理をS1020に戻し、干渉確認が完了したと判定した場合、図4に示すフローチャートの処理を終了する。処理がS1020に戻った場合、観察者1001は、視点位置、姿勢とロボットの動作の再生位置とを変更しながら様々な視点で観測して干渉確認を行う。観察者1001は、HMD内蔵カメラで撮影された第一のロボットアーム1003の画像に第二のロボットアーム1004のCG画像が重畳された画像を観察することにより、ロボットアーム同士の干渉やワーク等の実環境との干渉を確認することができる。
本実施形態では、2本の腕を持つロボットの一方の腕の干渉を確認する例を説明した。しかし上記の例に限らず、CGで仮想表示する腕と実機動作させる腕を入れ替えて更に干渉を確認しても良い。また3本以上の腕を持つロボットであっても、仮想表示する腕と実機動作させる腕を順番に切り替えれば同様に干渉確認できる。
ロボットは1つ以上の稼働部位があるロボットであればどのような形態であっても良い。腕でも足でも稼働する部位があれば良い。ロボットは6軸ロボットであっても、スカラロボットやパラレルリンクロボットであっても良いし、複数のロボットの組合せデモ良い。
データ保持部100は、ロボットを含む作業環境の3次元形状情報、ロボットの制御データ、ロボットの動作を表すデータを保持していれば良い。3次元形状情報はCADモデルのような解析曲面モデルであっても良い。制御データは経由点でのエンドエフェクタの位置姿勢やアクションのデータのリストであっても良い。制御データはスクリプトやプログラミング言語のようなロボット用の言語で書かれたテキスト形式であっても良いし、ロボットへ送信する信号の集合であっても良い。制御データはロボットの動作を再生できる情報であれば、どのようなものであっても良い。動作データはロボットの動作を表すデータであれば良い。動作データは実測したロボットの関節角等のパラメータのリストでなくとも、ロボットを複数の撮像装置や3次元計測装置で時系列的に撮影して構築した任意視点画像群や3次元計測データ群であっても良い。データ保持部100が保持するデータはHDD17に記憶されるものとして説明を行ったが、例えば、ネットワークを介して情報処理装置1と通信可能な他の装置のメモリ等に記憶されても良い。また干渉を確認する際には、仮想表示する一方の腕の実機は配置していなくても良い。
また、表示装置1051として2次元液晶ディスプレイ等を利用する場合、位置姿勢が取得可能なカメラを任意の位置に配置することにより観察者1001は自分の位置を変更することなくディスプレイの画面上で様々な位置・方向からの干渉チェックが可能となる。
視点位置姿勢取得部103は、観察者1001の視点の3次元位置姿勢を取得できればどのような方法であっても良い。視点位置姿勢取得部103は、モーションキャプチャ技術を用いても良いし、観察者1001が装着等している装置のGPSや姿勢センサ、加速度センサ等の計測値から視点位置、姿勢を推定しても良い。また、視点位置姿勢取得部103は、画像マーカーを用いる方法や画像取得部102より取得された画像から抽出した特徴的な点をトラッキングする方法で観察者1001の視点の3次元位置姿勢を取得するようにしても良い。また、視点位置姿勢取得部103は、視点位置、姿勢や視点位置、姿勢を算出するための映像やセンサのデータをHDD17から読み出し、視点位置、姿勢を取得しても良い。
ロボット制御部106は、重畳画像生成部104と同じ再生位置(時刻)における、制御データを再生したときのロボットの腕の位置姿勢に、ロボットの腕を移動できれば良い。ここでロボットの腕の位置姿勢とは、ロボットの腕の各関節の関節角と同義である。
<概要>
実施形態2では、2つの腕を持つロボットの動作を教示する場合について述べる。本実施形態では観察者1001がロボットの腕を直接持って移動させて動作を入力するダイレクトティーチングを用いてロボットの動作を教示する。観察者1001は、1腕ずつ教示する。教示済みのロボットの腕は実機で動作させない。本実施形態の情報処理装置は、観察者1001の視界に教示済みの腕の動作シミュレーションの画像を重畳表示させるよう画像を生成し、表示装置に送信する。これにより、教示済みの腕が観察者1001や他の腕に接触する可能性を軽減できる。更に、教示済みの腕が邪魔になって干渉の確認が難しくなることを軽減するため、作業効率が向上する。
<構成>
本実施形態における情報処理装置2の構成を図7に示す。情報処理装置2は、実施形態1の情報処理装置1と同様のハードウェア構成を有する。ロボット制御部206は、第一のロボットアーム1003と第二のロボットアーム1004とを備えたロボットを制御する。データ保持部200、設定部201、画像取得部202、視点位置姿勢取得部203、重畳画像生成部204、出力部205は、実施形態1の対応する各部と同様である。実施形態2の情報処理装置2は、これらに加えて、動作入力部207を有する。以下では実施形態1との差を中心に説明する。本実施形態の第二のロボットアーム1004は、第三のロボットの一例である。本実施形態の第一のロボットアーム1003は、第四のロボットの一例である。また、本実施形態の第一のロボットアーム1003は、本実施形態の第二のロボットアーム1004と干渉する可能性があるロボットアームの一例である。
動作入力部207は、ダイレクトティーチングにより観察者1001がロボットの腕を直接持って移動させたロボットのデータを情報処理装置2に入力する。より具体的に説明すると、動作入力部207は、移動後のロボットの各関節の関節角やアクション等のパラメータを経由点のパラメータとして制御データに追加し、データ保持部200で保持させる。
図8のフローチャートを用いて、情報処理装置2の情報処理の流れを説明する。
S2010〜S2040及びS2050〜2060の処理は実施形態1のS1010〜S1040及びS1050〜1060の処理と同様である。
S2045では、動作入力部207は、S2020で選択された実機動作させる第二のロボットアーム1004の制御データを作成する。観察者1001は表示装置1051に表示される第一のロボットアームの重畳画像を見ながら、第一のロボットアームと腕が干渉しないようにダイレクトティーチングにより第二のロボットアーム1004の教示を行う。動作入力部207は、1ループ前のS2045で入力された第二のロボットアーム1004の位置姿勢(初回の場合は第二のロボットアーム1004の初期位置姿勢)から観察者1001がロボットの腕を直接触って移動させた後のデータを入力する。即ち、動作入力部207は、移動後の第二のロボットアーム1004の位置姿勢(各関節の関節角やアクション等のパラメータ)を経由点として制御データに追加し、データ保持部200で保持させる。
S2080では、動作入力部207は、観察者1001のダイレクトティーチングによる第二のロボットアーム1004の教示が終了したか否かを判定する。例えば、動作入力部207は、所定の間、ダイレクトティーチングによる動作入力がない場合、教示が終了したと判定する。動作入力部207は、教示が終了したと判定した場合、図8に示すフローチャートの処理を終了し、教示が終了していないと判定した場合、処理をステップS2020に戻す。
本実施形態では、干渉を確認しながら、2本の腕を持つロボットの一方の腕の動作を入力する例を説明した。しかし上記の例の処理の後に、観察者1001は、仮想表示する腕と動作入力する腕とを入れ替えて更に動作入力をしても良い。また観察者1001は、3本以上の腕を持つロボットであっても、仮想表示する腕と動作入力する腕を順番に切り替えれば同様に動作入力できる。
動作入力部207は、ロボットの動作を制御できればどのようなものであっても良い。動作入力部207は、上述したように観察者1001がロボットの腕を直接持って移動させた動作のデータを入力しても良いし、観察者1001がティーチングペンダントを用いて入力した経由点におけるロボットの位置や関節角、アクション等を入力しても良い。また、動作入力部207は、計測された観察者1001の動作に基づいてロボットの制御データを生成しても良い。動作入力部207は、エンドエフェクタや把持物体を移動させる様子をカメラや三次元計測装置で観測した結果の計測データから、エンドエフェクタや把持物体の位置姿勢を推定し、その位置姿勢に基づいてロボットの制御データを作成しても良い。また、観察者1001は、実施形態1や2の方法で干渉確認を行って干渉が確認された場合に、上記の方法によってロボットの動作を入力し、制御データを修正するようにしても良い。例えば、観察者1001は、修正したい動作の経由点を指定し、その経由点でのロボットの制御パラメータ(関節角や位置、アクション等)をティーチングペンダントや、ダイレクトティーチング、コンピュータ端末等を用いて編集しても良い。情報処理装置は、ティーチングペンダントや、ダイレクトティーチング、コンピュータ端末等を用いた観察者1001による編集に係る操作を受け取り、制御データを編集する。編集する制御データは仮想表示する第一のロボットアーム1003のものであっても、実機動作させる第二のロボットアーム1004のものであっても良い。
以上述べた構成によれば、複数の腕を持つロボットの動作教示において、教示済みの腕が観察者1001や他の腕に接触する可能性を軽減できる。更に、教示済みの腕が邪魔になって干渉の確認が難しくなることを軽減するため、教示作業の効率が向上する。
<概要>
実施形態3では、干渉を確認する際に、注意して干渉を確認すべき箇所を強調して重畳表示する例について説明する。このような構成とすることにより、観察者は明らかに干渉しない箇所の干渉を確認する手間を軽減でき、作業効率が向上する。
本実施形態における情報処理装置3の構成を図9に示す。情報処理装置3は、実施形態1と同様のハードウェア構成を有する。ロボット制御部306は、第一のロボットアーム1003と第二のロボットアーム1004とを備えたロボットを制御する。データ保持部300、設定部301、画像取得部302、視点位置姿勢取得部303、重畳画像生成部304、出力部305は、実施形態1の対応する各部と同様である。実施形態3の情報処理装置3は、これらに加えて、干渉判定部308を有する。以下では実施形態1との差を中心に説明する。
干渉判定部308は、ロボットの腕同士に干渉しそうな箇所があるかどうかを判定し、その干渉の可能性のある箇所を検出する。より具体的には、干渉判定部308は、データ保持部300で保持するロボットの腕の3次元形状情報、制御データ、動作データ及び設定部301で設定されたパラメータから決定される再生位置(時刻)に基づき、ロボットの動作のシミュレーションを行う。干渉判定部308は、所定の再生位置におけるシーンのシミュレーションを行い、ロボットの腕同士に事前に設定された閾値以下の距離になる箇所が存在すれば、干渉の可能性があると判定し、その干渉箇所を検出する。
図10のフローチャートを用いて、情報処理装置3の情報処理の流れを説明する。
S3010〜S3040及びS3050〜S3080の処理は実施形態1のS1010〜S1040及びS1050〜S1080の処理と同様である。
S3047では、干渉判定部308は、ロボットの腕同士に接触しそうな箇所があるかどうかを判定し、干渉の可能性のある箇所を検出する。より具体的には、干渉判定部308は、データ保持部300で保持する3次元形状と動作データとに基づいて仮想表示する第二のロボットアーム1004の動作のシミュレーションをする。また、干渉判定部308は、3次元形状と制御データとに基づいて実機動作させる第一のロボットアーム1003との動作をシミュレーションし、干渉判定を行う。干渉判定部308は、1ループ前の再生位置におけるロボットの位置姿勢から、設定部301で設定された再生速度に応じて進めた再生位置における、ロボットのシミュレーションを行う。そして、干渉判定部308は、ロボットの腕やワーク、ワークスペース等の間に事前に設定された閾値以下の距離になる箇所が存在すれば、干渉の可能性があると判定し、その箇所を検出する。
S3050では、重畳画像生成部304は、S3040で取得された視点位置、姿勢、S3010で取得された3次元形状情報及び動作データ、S3020で設定されたパラメータから、仮想表示する第二のロボットアーム1004が動作する画像を作成する。更に、重畳画像生成部304は、S2047で検出された接触の可能性のある個所を強調して画像を生成する。より具体的には、重畳画像生成部304は、検出された箇所周辺のロボットの3次元形状モデルの色を赤色で表示する。
干渉判定部308は、ロボットの3次元情報と動作データとからロボットの動作シミュレーションを行って、干渉の可能性がある箇所を検出できれば良い。例えば、干渉判定部308は、本実施形態のように、実機動作させる第一のロボットアーム1003のシミュレーションの結果を用いなくとも良い。干渉判定部308は、実機動作させる第一のロボットアーム1003の3次元計測結果と仮想表示する第二のロボットアーム1004のシミュレーション結果との干渉判定を行っても良い。例えば、所定の再生位置で再生させたロボットの実機の第一のロボットアーム1003を移動し、環境に設置した3次元計測装置を用いて、ロボットを含むワークスペースを3次元計測する。干渉判定部308は、取得した3次元計測データと、動作データと、3次元形状情報と、に基づいて再生した仮想表示する第二のロボットアーム1004との距離が所定の閾値以下になる個所を干渉箇所として検出しても良い。また、干渉判定部308が用いる干渉の判定基準は距離でも良いし、3次元形状の包含関係であっても良い。また、干渉判定部308は、干渉箇所を検出した際に音声を発生させて通知しても良い。
重畳画像生成部304は、干渉箇所を強調表示する際は、干渉箇所が分かればどのように画像を生成しても良い。重畳画像生成部304は、干渉箇所の色を変えた画像を生成しても良いし、点滅させた画像を生成しても良い。また、重畳画像生成部304は、干渉箇所を矢印等で示した画像を生成しても良いし、半透明の球や直方体で囲んだ画像を生成しても良いし、文章を表示した画像を生成しても良い。
また実施形態2のように動作入力部を情報処理装置に実装し、干渉を確認しながら制御データの入力や修正を行っても良い。
以上述べた構成によれば、明らかに干渉しない箇所の干渉を確認する手間を軽減でき、作業効率が向上する。
<概要>
実施形態4では、実際のロボットやその周辺機器、作業環境等の形状が、ロボットの動作画像を生成するための3次元形状情報と異なる場合の一例を説明する。この場合、情報処理装置は、ロボットやその周辺機器、作業環境等を3次元計測し、計測した3次元形状情報に基づいてロボットの動作画像を生成する。このような構成とすることにより、実際のロボットや周辺機器、作業環境の3次元形状を反映した動作画像を観測しながら、正確性高く干渉確認を行うことができ、作業効率が向上する。
本実施形態における情報処理装置4のソフトウェア構成の一例を図11に示す。情報処理装置4は、実施形態1と同様のハードウェア構成に加えて、ロボットやその周辺機器、環境等の3次元形状を計測する不図示の計測装置を有する。本実施形態では計測装置としてRGBDカメラ(カラー画像と距離画像とを同時に撮影可能なカメラ)を例に説明を行う。ロボット制御部406は、第一のロボットアーム1003と第二のロボットアーム1004とを備えたロボットを制御する。データ保持部400、設定部401、画像取得部402、視点位置姿勢取得部403、重畳画像生成部404、出力部405は、実施形態1の対応する各部と同様である。情報処理装置4は、これらに加えて、形状計測部409をソフトウェア構成として有する。以下では実施形態1との差を中心に説明する。
形状計測部409は、計測装置を用いて、実際のロボットや、ケーブル、作業に用いる冶具等の周辺機器、作業環境の3次元形状情報を計測、取得する。本実施形態では、形状計測部409は、計測装置を移動させ、様々な視点からロボットや周辺機器、作業環境を計測したカラー画像及び距離画像を取得する。情報処理装置4は、取得したカラー画像及び距離画像から特徴を抽出、マッチングすることで撮影視点の位置姿勢を算出し、各カラー画像及び距離画像から生成した色つきの3次元点群を1つの座標系に統合、メッシュ化する。このことで、ロボットや周辺機器、作業環境の3次元形状情報を生成する。更に、情報処理装置4は、生成した3次元形状情報とデータ保持部400で保持する3次元形状情報との位置合わせを行い、生成した3次元形状情報の座標系をデータ保持部400で保持するロボットの3次元形状情報の座標系に合わせる。このとき、情報処理装置4は、ロボット等の動作データを持つ3次元形状に関しては、可動部分ごとで対応付け、位置合わせを行う。
図12のフローチャートを用いて、情報処理装置4の情報処理の流れを説明する。
S4010及び、S4020〜S4080の処理は実施形態1のS1010及びS1020〜S1080の処理と同様である。
S4015では、形状計測部409は、実際のロボットや周辺機器、作業環境を計測した3次元形状情報を取得する。S4015の処理は、3次元形状情報取得の処理の一例である。
S4050では、重畳画像生成部404は、以下のデータ等から仮想表示する第二のロボットアーム1004が動作する画像を作成する。即ち、重畳画像生成部404は、S4040で取得された視点位置、姿勢、S4010で取得された動作データ、S4015で取得された3次元形状情報、S4020で設定されたパラメータから、仮想表示する画像を作成する。
形状計測部409は、実際のロボットやその周辺機器、作業環境等の3次元形状情報が取得できれば良い。形状計測部409は、RGBDカメラやToFセンサ、ステレオカメラを用いて3次元形状を計測しても良い。また、形状計測部409は、計測装置を動かしたり、複数の計測装置を利用したりして、複数視点で計測した3次元形状情報を組み合わせて利用しても良い。複数の計測装置は予めその撮影位置姿勢を校正しておいても良い。3次元形状情報は3次元点群であっても良いし、サーフェル(Surfel: Surface Element)の集合やメッシュモデル、CADモデルであっても良い。テクスチャ情報を含んでいても良い。また、計測した3次元形状情報とデータ保持部で保持する3次元形状情報とを組み合わせて利用しても良い。
本実施形態は実施形態1と同じ構成の場合について説明したが、実施形態2や3と組み合わせても良い。より具体的には、情報処理装置4は、データ保持部で保持する3次元形状情報の代わりに、形状計測部409で計測した3次元形状情報を利用して、実施形態2や3を実施すれば良い。
ロボット制御部406は、データ保持部400で保持するロボットの制御データと設定部401で設定されたパラメータとに基づいて、ロボット及び周辺機器を制御し、動作させる。ロボット及び周辺機器が動作するにあたり、形状計測部409で計測した作業環境等と接触する可能性がある場合は、接触を回避するように、例えば、ロボット制御部406は、ロボット及び周辺機器の動作データを変更しても良い。
<概要>
実際のロボットやその周辺機器、作業環境等の形状及びその動作が、ロボットの動作画像を生成するための3次元形状情報及び動作と異なる場合がある。そこで実施形態5では、情報処理装置は、ロボットやその周辺機器、作業環境等の3次元形状及び動作を計測し、計測した3次元形状情報及び動作に基づいてロボットの動作画像を生成する。このような構成とすることにより、実際のロボットや周辺機器、作業環境の3次元形状及び動作を反映した動作画像を観測しながら、正確性高く干渉確認を行うことができ、作業効率が向上する。
本実施形態における情報処理装置5のソフトウェア構成の一例を図13に示す。情報処理装置5は、実施形態4と同様のハードウェア構成を有する。ロボット制御部506は、第一のロボットアーム1003と第二のロボットアーム1004とを備えたロボットを制御する。データ保持部500、設定部501、画像取得部502、視点位置姿勢取得部503、重畳画像生成部504、出力部505は、実施形態4の対応する各部と同様である。情報処理装置5は、これらに加えて、形状・動作計測部510をソフトウェア構成として有する。以下では実施形態4との差を中心に説明する。
本実施形態における形状・動作計測部510は、不図示の計測装置を用いて、実際のロボットや、ケーブル、作業に用いる冶具等の周辺機器、作業環境の3次元形状情報及び動作情報を計測、取得する。本実施形態では計測装置として複数のRGBDカメラを例に説明を行う。複数のRGBDカメラの位置姿勢の関係は事前に校正し、既知としておく。複数のRGBDカメラは同期して、複数の視点からロボットや周辺機器、作業環境を計測する。
ロボット制御部506は、計測する際に、データ保持部500で保持する動作データに基づいて、ロボットや冶具等の周辺機器を制御して動作させる。情報処理装置5は、計測して得られたカラー画像及び距離画像から色つきの3次元点群を生成する。事前校正により各計測視点位置は既知であるので、情報処理装置5は、各3次元点群を統合した3次元点群を3次元形状情報として逐次取得する。これを一連の動作が終了するまで、逐次繰り返し、情報処理装置5は、時系列に並んだ3次元形状情報を、3次元形状情報及び動作情報として取得する。
図13のフローチャートを用いて、情報処理装置5の情報処理の流れを説明する。
S5010及び、S5020〜S5080の処理は実施形態1のS1010及びS1020〜S1080の処理と同様である。
S5013では、設定部501は、ロボットの再生速度や再生位置等のパラメータを設定する。
S5015では、形状・動作計測部510は、実際のロボットや周辺機器、作業環境を計測した3次元形状情報を逐次、取得する。S5015の処理は、形状・動作取得の処理の一例である。
S5016では、ロボット制御部506は、S5010で取得した3次元形状情報、制御データ、S5013で設定されたパラメータに基づいて、ロボット及び作業に用いる冶具等の周辺機器を制御し、動作させる。
S5017では、形状・動作計測部510は、一連のロボット及び周辺機器の動作の再生が完了したか否かを判定する。形状・動作計測部510は、再生が完了していないと判定した場合、処理をS5015に戻し、干渉確認が完了したと判定した場合、処理をS5018に移す。
S5018では、形状・動作計測部510は、S5015で逐次取得した3次元形状情報を3次元動画に変換し、ロボットの動作データとして保持する。形状・動作計測部510は、ロボットの動作データとして保持した3次元動画を、データ保持部500に保存しても良い。
S5050では、重畳画像生成部504は、画像を作成する。即ち、重畳画像生成部504は、S5040で取得された視点位置、姿勢、S5010で取得された動作データ、S5018で取得された3次元動画、S5020で設定されたパラメータから、仮想表示する第二のロボットアーム1004が動作する画像を作成する。
形状・動作計測部510は、実際のロボットやその周辺機器、作業環境等の3次元形状情報及び動作が取得できれば良い。形状・動作計測部510は、RGBDカメラやToFセンサ、ステレオカメラを用いて3次元形状を計測しても良い。また、形状・動作計測部510は、複数の計測装置を利用して、複数視点で計測した3次元形状情報を組み合わせて利用しても良い。複数の計測装置は予めその撮影位置姿勢を校正しておいても良い。3次元形状情報は3次元点群であっても良いし、サーフェル(Surfel: Surface Element)の集合やメッシュモデル、CADモデルであっても良い。テクスチャ情報を含んでいても良い。また、計測した3次元形状情報とデータ保持部で保持する3次元形状情報とを組み合わせて利用しても良い。動作データは前記3次元形状情報を時系列的に並べた3次元動画であっても良い。形状・動作計測部510で取得した時系列に並べた3次元形状情報を、データ保持部で保持する3次元形状情報(例えばロボットの3次元形状モデルと関節情報)に当てはめ、ロボットの制御データに変換しても良い。そして、重畳画像生成部504は、形状・動作計測部510で取得した3次元形状情報と変換した制御データとに基づいて、仮想表示する第二のロボットアーム1004が動作する画像を作成しても良い。
ロボット制御部506は、データ保持部500で保持するロボットの制御データと設定部501で設定されたパラメータとに基づいて、ロボット及び周辺機器を制御し、動作させる。ロボット及び周辺機器の再生速度は、設定部501で変更しても良い。またロボット及び周辺機器が動作するにあたり、形状・動作計測部510で計測した作業環境に接触する可能性がある場合は、作業環境との接触を回避するように、例えば、ロボット制御部406は、ロボット及び周辺機器の動作データを変更しても良い。そして、その変更した動作を形状・動作計測部510で計測すれば良い。
本実施形態は実施形態1と同じ構成の場合について説明したが、実施形態2や3と組み合わせても良い。より具体的にはデータ保持部で保持する3次元形状情報の代わりに、形状・動作計測部510で計測した3次元形状情報及び動作を利用して、実施形態2や3を実施すれば良い。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給する。そして、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読み出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
Claims (11)
- 第一のロボットの動作を制御する制御手段と、
前記第一のロボットの動作を観察者の視点位置で撮像した撮像画像と前記観察者の視点位置及び姿勢とを取得する取得手段と、
前記観察者の視点位置及び姿勢と表示装置の内部パラメータとに基づいて前記第一のロボットを含む前記観察者の視野を特定し、前記第一のロボットと干渉する可能性がある第二のロボットの動作データに基づいて前記特定された視野に表示する前記第二のロボットの動作画像を生成し、前記第一のロボットの動作を撮像した撮像画像に前記第二のロボットの動作画像を重畳した重畳画像を生成するとともに、前記第一のロボットの動作のトリガ情報を出力する生成手段と、
前記重畳画像を前記表示装置に出力する出力手段と、を有し、
前記制御手段は、前記トリガ情報に基づいて、前記第一のロボットの動作を、前記第二のロボットの動作画像における動作と同期させる情報処理装置。 - 前記第二のロボット及び周辺機器の3次元形状情報を取得する形状情報取得手段を更に有し、
前記生成手段は、前記第二のロボットの動作データと前記3次元形状情報とに基づいて前記第二のロボットの動作画像を生成する請求項1記載の情報処理装置。 - 前記第二のロボット及び周辺機器の3次元形状情報及び動作情報を取得する形状・動作取得手段を更に有し、
前記生成手段は、前記3次元形状情報及び動作情報に基づいて前記第二のロボットの動作画像を生成する請求項1記載の情報処理装置。 - 前記生成手段は、前記特定された視野の前記第二のロボットの配置されるべき位置に表示する前記第二のロボットの動作画像を生成する請求項1乃至3何れか1項記載の情報処理装置。
- 前記制御手段は、制御データに基づき前記第一のロボットの動作を制御し、
前記制御データを修正する修正手段を更に有する請求項1乃至4何れか1項記載の情報処理装置。 - 前記第二のロボットの実際の動きのデータを入力する動作入力手段を更に有し、
前記生成手段は、前記入力されたデータを前記第二のロボットの動作データとして前記第二のロボットの動作画像を生成する請求項1乃至5何れか1項記載の情報処理装置。 - 前記第一のロボットの動作シミュレーションと前記第二のロボットの動作シミュレーションとを行い、前記第一のロボットと前記第二のロボットとが設定された閾値以下の距離になる箇所があるか否かを判定する干渉判定手段を更に有する請求項1乃至6何れか1項記載の情報処理装置。
- 前記生成手段は、前記干渉判定手段により前記箇所があると判定された場合、前記箇所を強調表示した前記第二のロボットの動作画像を生成する請求項7記載の情報処理装置。
- 情報処理装置が実行する情報処理方法であって、
第一のロボットの動作を制御する制御ステップと、
前記第一のロボットの動作を観察者の視点位置で撮像した撮像画像と前記観察者の視点位置及び姿勢とを取得する取得ステップと、
前記観察者の視点位置及び姿勢と表示装置の内部パラメータとに基づいて前記第一のロボットを含む前記観察者の視野を特定し、前記第一のロボットと干渉する可能性がある第二のロボットの動作データに基づいて前記特定された視野に表示する前記第二のロボットの動作画像を生成し、前記第一のロボットの動作を撮像した撮像画像に前記第二のロボットの動作画像を重畳した重畳画像を生成するとともに、前記第一のロボットの動作のトリガ情報を出力する生成ステップと、
前記重畳画像を前記表示装置に出力する出力ステップと、を含み、
前記制御ステップでは、前記トリガ情報に基づいて、前記第一のロボットの動作を、前記第二のロボットの動作画像における動作と同期させる情報処理方法。 - 表示システムが実行する情報処理方法であって、
第一のロボットの動作を制御する制御ステップと、
前記第一のロボットの動作を観察者の視点位置で撮像した撮像画像と前記観察者の視点位置及び姿勢とを取得する取得ステップと、
前記観察者の視点位置及び姿勢と表示装置の内部パラメータとに基づいて前記第一のロボットを含む前記観察者の視野を特定し、前記第一のロボットと干渉する可能性がある第二のロボットの動作データに基づいて前記特定された視野に表示する前記第二のロボットの動作画像を生成し、前記第一のロボットの動作を撮像した撮像画像に前記第二のロボットの動作画像を重畳した重畳画像を生成するとともに、前記第一のロボットの動作のトリガ情報を出力する生成ステップと、
前記重畳画像を前記表示装置に出力する出力ステップと、を含み、
前記制御ステップでは、前記トリガ情報に基づいて、前記第一のロボットの動作を、前記第二のロボットの動作画像における動作と同期させる情報処理方法。 - コンピュータを、請求項1乃至8何れか1項記載の情報処理装置の各手段として機能させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/087,592 US10076840B2 (en) | 2015-04-03 | 2016-03-31 | Information processing apparatus, information processing method, and program |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015076869 | 2015-04-03 | ||
JP2015076869 | 2015-04-03 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2016197393A JP2016197393A (ja) | 2016-11-24 |
JP6723738B2 true JP6723738B2 (ja) | 2020-07-15 |
Family
ID=57358187
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015245326A Active JP6723738B2 (ja) | 2015-04-03 | 2015-12-16 | 情報処理装置、情報処理方法及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6723738B2 (ja) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7071070B2 (ja) * | 2017-08-02 | 2022-05-18 | 川崎重工業株式会社 | ロボットシステム及びその運転方法 |
CN107498557A (zh) * | 2017-09-19 | 2017-12-22 | 坤同勃志智能科技(上海)有限公司 | 一种机器人的控制方法及系统 |
JP7003633B2 (ja) | 2017-12-20 | 2022-01-20 | セイコーエプソン株式会社 | 透過型表示装置、表示制御方法、およびコンピュータープログラム |
WO2019239563A1 (ja) * | 2018-06-14 | 2019-12-19 | ヤマハ発動機株式会社 | ロボットシステム |
KR101947160B1 (ko) * | 2018-06-20 | 2019-02-12 | (주)코딩앤플레이 | 증강현실을 이용한 코딩교육 방법 |
JP2020175453A (ja) * | 2019-04-15 | 2020-10-29 | 株式会社Ihi | 遠隔操作装置 |
JP2020196060A (ja) | 2019-05-31 | 2020-12-10 | セイコーエプソン株式会社 | 教示方法 |
JP7443014B2 (ja) * | 2019-10-08 | 2024-03-05 | 大豊精機株式会社 | ロボットアーム試験装置 |
US20230028457A1 (en) * | 2019-12-13 | 2023-01-26 | Kawasaki Jukogyo Kabushiki Kaisha | Robot system and method of forming three-dimensional model of workpiece |
JP7381729B2 (ja) * | 2020-04-27 | 2023-11-15 | ファナック株式会社 | 産業機械の表示装置 |
CN112454333B (zh) | 2020-11-26 | 2022-02-11 | 青岛理工大学 | 基于图像分割及表面肌电信号的机器人示教系统及方法 |
JP7195476B1 (ja) | 2021-09-24 | 2022-12-23 | 株式会社ダイヘン | 作業プログラム作成システム及び作業プログラム作成方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001310283A (ja) * | 2000-02-14 | 2001-11-06 | Sony Corp | ロボットシステム、ロボット装置及びその制御方法、並びに情報処理装置及び方法 |
US6678582B2 (en) * | 2002-05-30 | 2004-01-13 | Kuka Roboter Gmbh | Method and control device for avoiding collisions between cooperating robots |
DE10305384A1 (de) * | 2003-02-11 | 2004-08-26 | Kuka Roboter Gmbh | Verfahren und Vorrichtung zur Visualisierung rechnergestützter Informationen |
JP2005174021A (ja) * | 2003-12-11 | 2005-06-30 | Canon Inc | 情報提示方法及び装置 |
JP2006309459A (ja) * | 2005-04-27 | 2006-11-09 | Canon Inc | 画像処理方法、画像処理装置 |
JP5028439B2 (ja) * | 2009-03-12 | 2012-09-19 | 日立Geニュークリア・エナジー株式会社 | 設計支援装置、設計支援方法およびプログラム |
JP5742862B2 (ja) * | 2013-03-18 | 2015-07-01 | 株式会社安川電機 | ロボット装置及び被加工物の製造方法 |
-
2015
- 2015-12-16 JP JP2015245326A patent/JP6723738B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2016197393A (ja) | 2016-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6723738B2 (ja) | 情報処理装置、情報処理方法及びプログラム | |
US10076840B2 (en) | Information processing apparatus, information processing method, and program | |
JP6810093B2 (ja) | ロボットのシミュレーション装置 | |
US10245731B2 (en) | Programming of a robotic arm using a motion capture system | |
US11409260B2 (en) | Runtime controller for robotic manufacturing system | |
US10751877B2 (en) | Industrial robot training using mixed reality | |
WO2015180497A1 (zh) | 一种基于立体视觉的动作采集和反馈方法及系统 | |
JP6863927B2 (ja) | ロボットのシミュレーション装置 | |
JP6598191B2 (ja) | 画像表示システムおよび画像表示方法 | |
JP2010271536A (ja) | 作業訓練システム及び作業訓練方法並びに該作業訓練方法を記録した記録媒体 | |
JP2016205974A (ja) | 測定システムおよびユーザインタフェース装置 | |
WO2019239848A1 (ja) | ロボット制御システム | |
CN109128591A (zh) | 用于实时长距离远程焊接的系统和方法 | |
JP7517803B2 (ja) | ロボット教示システム、画像生成方法、及びプログラム | |
CN210361314U (zh) | 一种基于增强现实技术的机器人示教装置 | |
JPH0976063A (ja) | 溶接装置 | |
US20190355281A1 (en) | Learning support system and recording medium | |
JP5467683B2 (ja) | 立体映像表示装置の立体ノギス像形成装置およびプログラム | |
JP6625266B1 (ja) | ロボット制御装置 | |
KR20180088074A (ko) | 굴삭기 가상 현실 장치 | |
US20230214004A1 (en) | Information processing apparatus, information processing method, and information processing program | |
JPWO2022124398A5 (ja) | ||
WO2022249295A1 (ja) | ロボットシミュレーション装置 | |
WO2021200470A1 (ja) | オフラインシミュレーションシステム | |
JP2023017440A (ja) | 画像処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20181214 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20191217 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200214 |
|
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: 20200526 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200624 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 6723738 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |