(57)【特許請求の範囲】
【請求項１】
情報処理方法であって、
第１の対象物からセンサにより第１の三次元点群データを取得するステップと、
前記第１の三次元点群データ内の点データの相互の位置関係に基づき、前記第１の三次元点群データから前記第１の対象物全体の輪郭を構成する第１の輪郭点群データを指定するステップと、
前記第１の輪郭点群データのうち所定の点データを、少なくとも基準点を含む所定範囲を規定する比較対象設定範囲の前記基準点の点データとして指定するステップと、
前記所定範囲内に属する前記第１の輪郭点群データを前記第１の対象物の特徴点データとして記憶するステップと、
第２の対象物からセンサにより第２の三次元点群データを取得するステップと、
前記所定範囲内に属する前記第２の三次元点群データを前記第２の対象物の特徴点データとして記憶するステップと、
前記第１の対象物の特徴点データと前記第２の対象物の特徴点データとを比較してズレ量を算出するステップと、
少なくとも前記第１の輪郭点群データに基づき、作業用ロボットのアームに接続されたツールのツール軌道を特定するためのツール位置情報及びツール姿勢情報を含むツール制御情報を取得するステップと、
前記ツール制御情報に基づき、前記ツールを制御するステップと、
を含み、
前記基準点は、前記比較対象設定範囲の中心点であり、
前記比較対象設定範囲は、前記中心点の点データから所定の半径の球体で構成される範囲であり、
前記ツール制御情報を取得するステップは、ツール移動範囲を設定するステップを含む、
ことを特徴とする情報処理方法。
【請求項２】
請求項１に記載の情報処理方法であって、
前記ツール制御情報を取得するステップは、前記ツール移動範囲内の前記第１の輪郭点群データを、直線部分は疎に、曲線部分は密にツール位置として指定してツール位置情報を取得するステップ、を含む、
ことを特徴とする情報処理方法。
【請求項３】
請求項１または２に記載の情報処理方法であって、
前記第１の輪郭点群データを指定するステップは、
前記第１の三次元点群データのうち１つの点データを選択するステップと、
前記選択された点データを中心とする所定の半径を有する円の内部に含まれる点のそれぞれについて、前記選択された点データから線分をそれぞれ引くステップと、
複数の当該線分のうち、前記選択された点データを中心に所定の回転方向で隣り合う２つの線分がなす角度を算出するステップと、
算出された角度を設定値と比較するステップと、
前記算出された角度が前記設定値より大きいと判定された場合には、前記選択された点データを前記第１の輪郭点群データと判定するステップと、を含む、
ことを特徴とする情報処理方法。
【請求項４】
情報処理システムであって、
第１の対象物からセンサにより第１の三次元点群データを取得し、
第２の対象物からセンサにより第２の三次元点群データを取得する三次元点群データ取得部と、
前記第１の三次元点群データ内の点データの相互の位置関係に基づき、前記第１の三次元点群データから前記第１の対象物全体の輪郭を構成する第１の輪郭点群データを指定するバウンダリ処理部と、
前記第１の輪郭点群データのうち所定の点データを、少なくとも基準点を含む所定範囲を規定する比較対象設定範囲の前記基準点の点データとして指定し、
前記所定範囲内に属する前記第１の輪郭点群データを前記第１の対象物の特徴点データとして記憶し、
前記所定範囲内に属する前記第２の三次元点群データを前記第２の対象物の特徴点データとして記憶し、
前記第１の対象物の特徴点データと前記第２の対象物の特徴点データとを比較してズレ量を算出する補正制御部と、
少なくとも前記第１の輪郭点群データに基づき、作業用ロボットのアームに接続されたツールのツール軌道を特定するためのツール位置情報及びツール姿勢情報を含むツール制御情報を取得するツール制御情報取得部と、
前記ツール制御情報に基づき、前記ツールを制御するツール制御部と、を備え、
前記基準点は、前記比較対象設定範囲の中心点であり、
前記比較対象設定範囲は、前記中心点の点データから所定の半径の球体で構成される範囲であり、
前記ツール制御情報取得部は、ツール移動範囲を設定する、
ことを特徴とする情報処理システム。
【請求項５】
情報処理方法をコンピュータに実行させるためのプログラムであって、
前記プログラムは、前記情報処理方法として、
第１の対象物からセンサにより第１の三次元点群データを取得するステップと、
前記第１の三次元点群データ内の点データの相互の位置関係に基づき、前記第１の三次元点群データから前記第１の対象物全体の輪郭を構成する第１の輪郭点群データを指定するステップと、
前記第１の輪郭点群データのうち所定の点データを、少なくとも基準点を含む所定範囲を規定する比較対象設定範囲の前記基準点の点データとして指定するステップと、
前記所定範囲内に属する前記第１の輪郭点群データを前記第１の対象物の特徴点データとして記憶するステップと、
第２の対象物からセンサにより第２の三次元点群データを取得するステップと、
前記所定範囲内に属する前記第２の三次元点群データを前記第２の対象物の特徴点データとして記憶するステップと、
前記第１の対象物の特徴点データと前記第２の対象物の特徴点データとを比較してズレ量を算出するステップと、
少なくとも前記第１の輪郭点群データに基づき、作業用ロボットのアームに接続されたツールのツール軌道を特定するためのツール位置情報及びツール姿勢情報を含むツール制御情報を取得するステップと、
前記ツール制御情報に基づき、前記ツールを制御するステップと、
をコンピュータに実行させる、プログラムであり、
前記基準点は、前記比較対象設定範囲の中心点であり、
前記比較対象設定範囲は、前記中心点の点データから所定の半径の球体で構成される範囲であり、
前記ツール制御情報を取得するステップは、ツール移動範囲を設定するステップを含む、
ことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理方法、情報処理システム、プログラムに関する。
【背景技術】
【０００２】
従来、対象物のＣＡＤデータに基づいて作業用ロボットのアーム軌道データを生成する
方法が存在していた（例えば、特許文献１を参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００２−４６０８７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、ＣＡＤデータとしてＣＡＤ図面データを用いた場合には、対象物のＣＡ
Ｄデータの形状と実際の対象物の形状とが一致しない場合があり得る。これに代えて、実
際の対象物のスキャンデータ（例えば、三次元点群データなど）からＣＡＤデータを作成
する場合には、両者の誤差は減るものの、スキャンデータからＣＡＤデータを作成する必
要があり、その分の工数が増えてしまうため、ユーザにとって有用ではなかった。
【０００５】
また、もし三次元点群データからアーム軌道データを直接生成しようとしても、三次元
点群データは単なる点データの集まりであるため、点群データから対象物の輪郭形状を判
別することが難しい。そのため、ユーザが人手によりアーム軌道を教示する必要が発生す
る場合もある。
【０００６】
本発明はこのような背景を鑑みてなされたものであり、三次元点群データから対象物の
輪郭形状を簡易かつ迅速に検出し、それを用いてロボットアーム及びツールを制御するこ
とのできる技術を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するための本発明の主たる発明は、対象物からセンサにより三次元点群
データを取得するステップと、前記三次元点群データから対象物の輪郭を構成する輪郭点
群データを指定するステップと、前記輪郭点群データから、作業用ロボットのアームに接
続されたツールのツール軌道を特定するためのツール位置情報及びツール姿勢情報を含む
ツール制御情報を取得するステップと、前記ツール制御情報に基づき、前記ツールを制御
するステップと、を含む、ことを特徴とする情報処理方法である。
【０００８】
その他本願が開示する課題やその解決方法については、発明の実施形態の欄及び図面に
より明らかにされる。
【発明の効果】
【０００９】
本発明によれば、三次元点群データから対象物の輪郭形状を簡易かつ迅速に検出し、そ
れを用いてロボットアーム及びツールを制御することができる。
【図面の簡単な説明】
【００１０】
【図１】本実施形態の一の情報処理システム１００の全体構成例を示す図である。
【図２】本実施形態に係る端末１のハードウェア構成例を示す図である。
【図３】本実施形態に係る端末１の機能構成例を示す図である。
【図４】本実施形態に係る三次元点群データの表示例を示す図を示す。
【図５】本実施形態に係る輪郭点群データの表示例を示す図である。
【図６】本実施形態に係る情報処理方法のフローチャート例を示す図である。
【図７】本実施形態に係るバウンダリ処理方法のフローチャート例を示す図である。
【図８】本実施形態に係るバウンダリ処理方法の一例を説明する図である。
【図９】本実施形態に係るツール制御情報算出方法の一例を説明する図である。
【図１０】本実施形態に係るツール制御情報算出方法の他の例を説明する図である。
【図１１】本実施形態に係るツール制御情報算出方法の他の例を説明する図である。
【図１２】本実施形態に係るツール制御情報算出方法の一例を説明する図である。
【図１３】本実施形態に係るフィッティング方法の一例を説明する概要図である。
【図１４】本実施形態に係るフィッティング方法の一例を説明する詳細図である。
【図１５】本実施形態に係るフィッティング方法の一例を説明する詳細図である。
【発明を実施するための形態】
【００１１】
本発明の実施形態の内容を列記して説明する。本発明は、たとえば以下のような構成を
備える。
【００１２】
［項目１］
情報処理方法であって、
対象物からセンサにより三次元点群データを取得するステップと、
前記三次元点群データから対象物の輪郭を構成する輪郭点群データを指定するステップ
と、
前記輪郭点群データから、作業用ロボットのアームに接続されたツールのツール軌道を
特定するためのツール位置情報及びツール姿勢情報を含むツール制御情報を取得するステ
ップと、
前記ツール制御情報に基づき、前記ツールを制御するステップと、
を含む、ことを特徴とする情報処理方法。
［項目２］
項目１に記載の情報処理方法であって、
前記ツール制御情報を取得するステップは、
ツール移動範囲を設定するステップと、
前記ツール移動範囲内の輪郭点群データを一定数ごとにツール位置として指定してツー
ル位置情報を取得するステップと、を含む、
ことを特徴とする情報処理方法。
［項目３］
項目１に記載の情報処理方法であって、
前記ツール制御情報を取得するステップは、
ツール移動範囲を設定するステップと、
前記ツール移動範囲内の輪郭点群データを、直線部分は疎に、曲線部分は密にツール位
置として指定してツール位置情報を取得するステップと、を含む、
ことを特徴とする情報処理方法。
［項目４］
項目２または３に記載の情報処理方法であって、
前記ツール制御情報を取得するステップは、
前記ツール位置として指定した点データの面法線ベクトルを算出するステップと、
前記面法線ベクトルの向きを当該点データにおけるツール姿勢情報として取得するステ
ップと、をさらに含む、
ことを特徴とする情報処理方法。
［項目５］
項目１ないし４に記載の情報処理方法であって、
前記ツール位置情報または前記ツール姿勢情報をユーザが編集するステップをさらに含
む、
ことを特徴とする情報処理方法。
［項目６］
項目１ないし５に記載の情報処理方法であって、
前記輪郭点群データにおいて特徴点データを記憶するステップと、
前記対象物は第１の対象物であり、前記第１の対象物とは異なる対象物は、第２の対象
物であり、
前記第２の対象物から三次元点群データを取得し、輪郭点群データを指定し、特徴点デ
ータを記憶するステップと、
前記第１の対象物の特徴点データと前記第２の対象物の特徴点データとを比較してズレ
量を算出し、前記ズレ量に基づき第１の対象物に関する座標データの位置ズレを補正する
、
ことを特徴とする情報処理方法。
［項目７］
項目６に記載の情報処理方法であって、
前記位置ズレの補正として、ツール位置情報の位置ズレを補正する、
ことを特徴とする情報処理方法。
［項目８］
項目６または７に記載の情報処理方法であって、
前記特徴点データを記憶するステップは、
前記第１の対象物の輪郭点群データのうち所定の点データを、少なくとも中心点を含む
所定範囲を規定する比較対象設定範囲の前記中心点の点データとして指定するステップと
、
前記所定範囲内に属する前記第１の対象物の輪郭点群データを前記第１の対象物の特徴
点データとして記憶するステップと、
前記所定範囲内に属する前記第２の対象物の点群データを前記第２の対象物の特徴点デ
ータとして記憶するステップと、を含む
ことを特徴とする情報処理方法。
［項目９］
情報処理システムであって、
対象物からセンサにより三次元点群データを取得する三次元点群データ取得部と、
前記三次元点群データから対象物の輪郭を構成する輪郭点群データを指定するバウンダ
リ処理部と、
前記輪郭点群データから、作業用ロボットのアームに接続されたツールのツール軌道を
特定するためのツール位置情報及びツール姿勢情報を含むツール制御情報を取得し、前記
ツール制御情報に基づき、前記ツールを制御するツール制御部と、
を含む、ことを特徴とする情報処理システム。
［項目１０］
情報処理方法をコンピュータに実行させるためのプログラムであって、
前記プログラムは、前記情報処理方法として、
対象物からセンサにより三次元点群データを取得するステップと、
前記三次元点群データから対象物の輪郭を構成する輪郭点群データを指定するステップ
と、
前記輪郭点群データから、作業用ロボットのアームに接続されたツールのツール軌道を
特定するためのツール位置情報及びツール姿勢情報を含むツール制御情報を取得するステ
ップと、
前記ツール制御情報に基づき、前記ツールを制御するステップと、
をコンピュータに実行させる、ことを特徴とするプログラム。
［項目１１］
情報処理方法であって、
対象物からセンサにより三次元点群データを取得するステップと、
前記三次元点群データから対象物の輪郭を構成する輪郭点群データを指定するステップ
と、
を含む、ことを特徴とする情報処理方法。
【００１３】
＜実施の形態の詳細＞
本発明の一実施形態に係る情報処理システム１００の具体例を、以下に図面を参照しつ
つ説明する。なお、本発明はこれらの例示に限定されるものではなく、特許請求の範囲に
よって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれること
が意図される。以下の説明では、添付図面において、同一または類似の要素には同一また
は類似の参照符号及び名称が付され、各実施形態の説明において同一または類似の要素に
関する重複する説明は省略することがある。また、各実施形態で示される特徴は、互いに
矛盾しない限り他の実施形態にも適用可能である。
【００１４】
図１は、本実施形態の情報処理システム１００の一例を示す図である。図１に示される
ように、本実施形態の情報処理システム１００では、端末１と、作業用ロボット２とを有
している。作業用ロボット２は、少なくともアーム２１、ツール２２、センサ２３を有し
ている。端末１と作業用ロボット２とは、有線または無線にて互いに通信可能に接続され
ている。
【００１５】
＜端末１＞
図２は、端末１のハードウェア構成を示す図である。端末１は、例えばパーソナルコン
ピュータのような汎用コンピュータとしてもよいし、或いはクラウド・コンピューティン
グによって論理的に実現されてもよい。なお、図示された構成は一例であり、これ以外の
構成を有していてもよい。
【００１６】
端末１は、少なくとも、プロセッサ１０、メモリ１１、ストレージ１２、送受信部１３
、入出力部１４等を備え、これらはバス１５を通じて相互に電気的に接続される。
【００１７】
プロセッサ１０は、端末１全体の動作を制御し、少なくとも作業用ロボット２とのデー
タ等の送受信の制御、及びアプリケーションの実行及び認証処理に必要な情報処理等を行
う演算装置である。例えばプロセッサ１０はＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉ
ｎｇ  Ｕｎｉｔ）および／またはＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕ
ｎｉｔ）であり、ストレージ１２に格納されメモリ１１に展開された本システムのための
プログラム等を実行して各情報処理を実施する。
【００１８】
メモリ１１は、ＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒ
ｙ）等の揮発性記憶装置で構成される主記憶と、フラッシュメモリやＨＤＤ（Ｈａｒｄ  
Ｄｉｓｃ  Ｄｒｉｖｅ）等の不揮発性記憶装置で構成される補助記憶と、を含む。メモリ
１１は、プロセッサ１０のワークエリア等として使用され、また、端末１の起動時に実行
されるＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  ／  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）、及び各
種設定情報等を格納する。
【００１９】
ストレージ１２は、アプリケーション・プログラム等の各種プログラムを格納する。各
処理に用いられるデータを格納したデータベースがストレージ１２に構築されていてもよ
い。
【００２０】
送受信部１３は、端末１を少なくとも作業用ロボット２と接続し、プロセッサの指示に
従い、データ等の送受信を行う。なお、送受信部１３は、有線または無線により構成され
おり、無線である場合には、例えば、ＷｉＦｉやＢｌｕｅｔｏｏｔｈ（登録商標）及びＢ
ＬＥ（Ｂｌｕｅｔｏｏｔｈ  Ｌｏｗ  Ｅｎｅｒｇｙ）の近距離通信インターフェースによ
り構成されていてもよい。
【００２１】
入出力部１４は、キーボード・マウス類等の情報入力機器、及びディスプレイ等の出力
機器である。
【００２２】
バス１５は、上記各要素に共通に接続され、例えば、アドレス信号、データ信号及び各
種制御信号を伝達する。
【００２３】
＜作業用ロボット２＞
図１に戻り、本実施形態に係る作業用ロボット２について説明する。
【００２４】
上述のとおり、作業用ロボット２は、アーム２１と、ツール２２と、センサ２３とを有
する。なお、図示された構成は一例であり、これ以外の構成を有していてもよい。
【００２５】
アーム２１は、三次元のロボット座標系に基づき、端末１にその動作を制御される。ま
た、アーム２１は、有線または無線で作業用ロボット２と接続されたコントローラ（不図
示）をさらに備え、これによりその動作を制御されてもよい。
【００２６】
ツール２２は、三次元のツール座標系に基づき、端末１にその動作を制御される。また
、ツール２２の構成は、用途に合わせて何れのツールを備えていてもよく、例えば、溶接
用トーチや塗装用塗料噴射装置、把持装置、掘削装置、研磨装置などであってもよい。
【００２７】
センサ２３は、三次元のセンサ座標系に基づき、対象物のセンシングを行う。センサ２
３は、例えば三次元スキャナとして動作するレーザセンサであり、センシングにより対象
物の三次元点群データを取得する。三次元点群データは、例えば、図４に示されるような
ものであり、それぞれの点データがセンサ座標を有し、点群により対象物の形状を把握す
ることが可能となる。
【００２８】
なお、より具体的には、作業前に所定のキャリブレーションを行い、ロボット座標系及
びツール座標系、センサ座標系を互いに関連付け、例えばセンサ座標系を基にユーザが位
置を指定することにより、アーム２１やツール２２が対応した位置を基に動作制御される
ように構成をなしてもよい。
【００２９】
＜端末１の機能＞
図３は、端末１に実装される機能を例示したブロック図である。本実施の形態において
は、端末１のプロセッサ１０は、三次元点群データ取得部１０１、三次元点群データ表示
部１０２、バウンダリ処理部１０３、ツール制御部１０４を有している。また、端末１の
ストレージ１２は、三次元点群データ記憶部１２１、輪郭点群データ記憶部１２２、ツー
ル制御情報記憶部１２３を有している。
【００３０】
三次元点群データ取得部１０１は、端末１の入出力部１４からの指示により、作業用ロ
ボット２を制御し、センサ２３により対象物の三次元点群データを取得する。取得した三
次元点群データは、例えばセンサ座標系に基づく三次元座標情報データであり、三次元点
群データ記憶部１２１に記憶される。
【００３１】
三次元点群データ表示部１０２は、三次元点群データ取得部１０１により取得された三
次元点群データを、例えば図４に例示されるように端末１の入出力部１４に表示する。ユ
ーザは、表示された三次元点群データを任意の方向から視認可能であり、例えば入出力部
１４に接続されたキーボード・マウス類等の情報入力機器にて、当該任意の方向を指定可
能である。
【００３２】
バウンダリ処理部１０３は、図４に例示されるような三次元点群データ４１を基に、図
５に例示されるような三次元点群データの輪郭を構成する輪郭点群データ５１のみを残す
ように処理を行う。輪郭点群データは、三次元点群データ同様、例えばセンサ座標系に基
づく三次元座標情報データであり、輪郭点群データ記憶部１２２に記憶される。また、輪
郭点群データは、三次元点群データ同様、輪郭点群データ表示部（不図示）により端末１
の入出力部１４において表示される。なお、バウンダリ処理部１０３の具体的な処理方法
の一例については、後述する。
【００３３】
ツール制御部１０４は、ツール移動範囲及びツール移動間隔と輪郭点群データとを基に
、対象物に対するツール２２の位置情報及び姿勢情報を一以上含むツール制御情報を算出
し、当該算出されたツール制御情報を基にツール２２を移動させる。すなわち、プロセッ
サ１０のツール制御部１０４または図示しないその他の構成において、所謂ツール軌道デ
ータに該当するツール制御情報を基に、当該ツール軌道データのとおりアーム２１を動作
させるアーム軌道データが生成される。なお、ツール制御部１０４の具体的な算出方法の
一例については、後述する。
【００３４】
＜情報処理方法のフローチャート＞
図６は、本実施形態の情報処理システム１００における情報処理方法のフローチャート
の一例である。
【００３５】
まず、ユーザは、端末１またはコントローラ（不図示）により作業用ロボット２を操作
し、端末１の三次元点群データ取得部１０１による制御に基づき、センサ２３により、例
えば作業台上に位置する対象物の三次元点群データを取得する（ＳＱ１０１）。
【００３６】
次に、三次元点群データ表示部１０２により取得した三次元点群データを端末１上で表
示する（ＳＱ１０２）。
【００３７】
次に、バウンダリ処理部１０３により三次元点群データから輪郭点群データを生成する
ように処理し、端末１上で表示する（ＳＱ１０３）。
【００３８】
次に、ツール制御部１０４は、ツール移動範囲及びツール移動間隔と輪郭点群データと
を基に、対象物に対するツール２２の位置情報及び姿勢情報を一以上含むツール制御情報
を算出し、当該算出されたツール制御情報を基にツール２２を移動させる（ＳＱ１０４）
。
【００３９】
したがって、本実施形態の情報処理システム１００は、三次元点群データから対象物の
輪郭形状を簡易かつ迅速に検出し、それを用いてロボットアームを制御することのできる
ものである。
【００４０】
＜バウンダリ処理方法のフローチャート＞
図７は、本実施形態の情報処理システム１００におけるバウンダリ処理方法ＳＱ１０３
のより詳細なフローチャートの一例である。
【００４１】
まず、バウンダリ処理部１０３は、三次元点群データのうち１つの点データを選択する
（ＳＱ２０１）。
【００４２】
次に、バウンダリ処理部１０３は、選択された点データを中心とする所定の半径を有す
る円の内部に含まれる点のそれぞれについて、選択された点データから線分をそれぞれ引
く（ＳＱ２０２）。
【００４３】
次に、複数の当該線分のうち、例えば選択された点データを中心に所定の回転方向で隣
り合う２つの線分がなす角度を算出する（ＳＱ２０３）。
【００４４】
次に、算出された角度の何れもが、ユーザが設定した設定値より小さいかどうかを判定
する（ＳＱ２０４）。
【００４５】
より具体的には、図８において、例えばユーザが設定値を１００°と設定した場合、円
７１においては、いずれの隣り合う２つの線分がなす角度も角度Ａのように設定値よりも
小さい値（Ａ＜１００°）であると判定され（Ｙｅｓ）、円７２においては、角度Ｂのよ
うに設定値よりも大きい値（Ｂ＞１００°）を有する角度が存在すると判定される（Ｎｏ
）。
【００４６】
ここで、Ｎｏと判定された場合には、選択された点データを輪郭点群データとして輪郭
点群データ記憶部１２２に記憶する（ＳＱ２０５）。
【００４７】
そして、Ｙｅｓと判定された場合、または、ＳＱ２０５終了後には、全ての点データを
選択したかどうかを判定し、Ｎｏと判定された場合にはＳＱ２０１へ戻り、Ｙｅｓと判定
された場合には終了とする（ＳＱ２０６）。
【００４８】
したがって、本実施形態の情報処理システム１００は、例えば上述のバウンダリ処理方
法により、三次元点群データから対象物の輪郭形状を構成する輪郭点群データを簡易かつ
迅速に検出することのできるものである。
【００４９】
なお、図７のフローチャートに加えて、例えばＳＱ２０６の後、端末１の入出力部１４
に輪郭点群データのみを表示するようにしてもよい。また、例えばＳＱ２０６の前または
後のタイミングで、輪郭点群データとされなかった点群データを三次元点群データから削
除するようにし、三次元点群データ表示部１０２により輪郭点群データに対応する三次元
点群データを端末１の入出力部１４に表示するようにしてもよい。このようにすることで
、例えば図５のように、三次元点群データの輪郭のみを表示することができる。
【００５０】
＜ツール制御情報の算出方法＞
図９は、本実施形態の情報処理システム１００におけるツール制御情報の算出方法ＳＱ
１０４の一例である。
【００５１】
まず、ツール位置情報について、例えば、図９に示されるように、ツール移動範囲（例
えば、ツール移動開始位置及びツール移動終了位置により規定）を設定し、ツール制御部
１０４によりツール移動範囲内の輪郭点群データを一定数ごとにツール位置として指定を
することで、輪郭に沿った等間隔のツール位置情報が得られる。当該ツール位置として指
定された輪郭点群データの一部に関する情報は、ツール位置情報としてツール制御情報記
憶部１２３に記憶される。これにより、簡易な処理によりツール位置情報を指定可能であ
る。なお、理解を容易にするために仮想対象物輪郭（点線）を表示しているが、実際の端
末１に表示する際には表示しなくてもよい。また、ツール移動開始位置及びツール移動終
了位置においてツール位置が指定されているが、近傍の輪郭点群データを指定していても
よい。
【００５２】
また、例えば、図１０に示されるように、ツール移動範囲を設定し、ツール制御部１０
４によりツール移動範囲内の輪郭点群データを対象物輪郭の直線部分と曲線部分とでツー
ル位置として粗密に指定してもよい。これは、ツール位置間でツール２２は直線移動をす
るため、直線部分においてはツール位置間隔が広くてもよいが、曲線部分においては、曲
線に近似したツール軌道を描くためにツール位置間隔が狭いほうがより好ましい。
【００５３】
上述の粗密な指定については、例えば、輪郭点群データのうち基準点データと２つの点
データとをそれぞれ結んだ２つの仮想中心線のなす角度が基準値以上かどうかで判断して
もよい。例えば図１１に示されるように、輪郭点群データのうち点データｎを基準点デー
タとした時、点データｎの中心と当該点データｎに隣接する点データｎ＋１の中心とを結
んだ線を仮想中心線Ａとし、点データｎの中心と所定の点データｍの中心とを結んだ線を
仮想中心線Ｂとし、点データｎの中心と所定の点データｍ＋１の中心とを結んだ線を仮想
中心線Ｃとする。そして、例えば仮想中心線Ａと仮想中心線Ｂのなす角度が基準値を下回
る際には、点データｍはツール位置としてツール制御情報記憶部１２３に記憶されない。
一方、例えば仮想中心線Ａと仮想中心線Ｃのなす角度が基準値以上である場合には、点デ
ータｍ＋１はツール位置としてツール制御情報記憶部１２３に記憶される。なお、点デー
タｎ＋１の位置は、点データｎの位置と通常近接しているため、点データｎ＋１について
もツール位置として採用しなくてもよい。
【００５４】
そして、次は点データｍ＋１を基準点データとして同様に順次点データを判定し、これ
を繰り返してツール位置を指定していく。これにより、ツール制御部１０４により容易に
対象物の輪郭形状により近いツール軌道を描くことが可能となる。
【００５５】
なお、ツール位置として記憶された点データは、端末１において表示することでユーザ
が確認可能としてもよい。そしてその際に、例えば、ツール位置として記憶された点デー
タと、それ以外の点データを色分けするなどして区別可能に表示し、ユーザが例えばツー
ル位置としてして記憶された点データを削除したり、それ以外の点データからツール位置
を指定したりと任意で編集可能にしてもよい。これにより、より精度のアーム制御が可能
となる。
【００５６】
つぎに、ツール姿勢情報について、例えば図１２に示されるように、ツール位置として
ツール制御情報記憶部１２３に記憶された点データＣにおいて、周辺の輪郭点群データ（
例えば、点データＣに隣接する輪郭点群データ）から面法線ベクトルを算出し、当該面法
線ベクトルに沿った向きをツール姿勢情報としてツール制御情報記憶部１２３に記憶され
る。これにより、ツール位置において、対象物表面に対して垂直にツール２２を沿わせる
ことが可能となる。
【００５７】
なお、ツール姿勢についても認識可能に端末１に表示してもよい。その際に、ツール姿
勢をユーザが任意で変更可能にしてもよい。これにより、より精度のアーム制御が可能と
なる。
【００５８】
＜フィッティングの一例＞
本実施形態の情報処理システム１００において、ツール制御部１０４により記憶された
所定の対象物（以下、「第１の対象物」という。）に対するツール軌道情報（ツール位置
情報及びツール姿勢情報を含むツール制御情報）を利用して、同一または類似の形状をし
た複数の対象物（以下、「第２の対象物」という。）に対して、ツール２２の種類に伴う
作業を順次行う場合、位置ズレを考慮してツール動作前にセンサ２３により一旦センシン
グを行ってもよい。
【００５９】
この時、第２の対象物においては、例えばツール制御情報を取得した際の第１の対象物
の輪郭点群データと、作業前に取得した第２の対象物の点群データとを比較して、位置ズ
レを補正する動作（フィッティング）を実行してもよい。なお、第２の対象物の点群デー
タは、三次元点群データであってもよいし、三次元点群データを一定の割合間引いた点群
データであってもよいし、バウンダリ処理後の輪郭点群データでもよい。
【００６０】
例えば、図１３に示されるような各点群データが第１の対象物及び第２の対象物から得
られる。両者の位置ズレを補正するための比較方法は、より具体的には、例えば各対象物
の特徴点データ同士を比較するようにしてもよい。
【００６１】
各対象物における特徴点データを記憶するための指定方法は、一例として以下のとおり
である。まず、プロセッサ１０は、例えば第１の対象物の輪郭点群データ（図１４の白抜
きの点データ）のうち所定の点データを、少なくとも中心点を含む所定範囲を規定する比
較対象設定範囲の当該中心点の点データとして指定する。なお、図１４においては、当該
中心点の点データから半径Ｒｓの球体で構成される範囲を比較対象設定範囲Ｓとして２つ
図示しているが、比較対象設定範囲Ｓの形状はどのような形状でもよく（例えば、点、立
方体、直方体、角柱、円柱、楕円体など）、比較対象設定範囲Ｓの数も任意の数でよい。
【００６２】
そして、図１５に例示されるように、例えばプロセッサ１０及びストレージ１２は、比
較対象設定範囲Ｓの範囲内に属する第１の対象物の輪郭点群データを第１の対象物の特徴
点データとして指定して記憶し、比較対象設定範囲Ｓの範囲内に属する第２の対象物の点
群データを第２の対象物の特徴点データとして指定して記憶する。
【００６３】
各対象物の特徴点データ同士の比較方法は、一例として次のとおりである。図１５に例
示されるように、例えばプロセッサ１０は、第１の対象物の特徴点データのそれぞれを中
心とする所定範囲の探索範囲半径Ｒからなる円の中心点から、当該円に含まれる第２の対
象物の各特徴点データまでの距離Ｌを算出し、例えば第１の対象物の特徴点データのそれ
ぞれからの一番短い距離Ｌの平均値、または、全ての距離Ｌの平均値を算出する。そして
、例えばプロセッサ１０は、第２の対象物の点群データを移動させ、再度上記平均値を算
出する。これを複数回実行し、例えばプロセッサ１０は、当該平均値が一番小さい場合の
第２の対象物の点群データの移動量を確認または算出する。最後に、例えばストレージ１
２は、当該移動量を位置ズレのズレ量として記憶する。なお、複数回実行する際の回数設
定は、例えば事前にユーザが所定回数に設定しておいてもよいし、平均値が事前にユーザ
が設定した所定値以下となった際に終了するようにしてもよい。
【００６４】
最後に、当該ズレ量に基づき、例えばプロセッサ１０は、当該ズレ量を用いて第１の対
象物に対するツール軌道情報を第２の対象物の位置に補正することで、第２の対象物に合
ったツール軌道とすることが可能となる。
【００６５】
＜フィッティングの他の例＞
上述のフィッティング方法以外に、例えば図５に示される輪郭点群データのうち、対象
物を構成する特徴部（例えば、角部など）の点データを特徴点データとして輪郭点群デー
タ記憶部１２２にさらに記憶しておき、両者の特徴点データを比較することで、センサ座
標系におけるズレを判定するようにしてもよい。これに基づき、ツール制御情報の位置ズ
レを補正する。これにより、上記具体例と同様に、実際の対象物の位置にあったツール軌
道を描くことが可能になる一方、再度ツール制御情報の取得処理（ＳＱ１０４）を実行す
る必要がないため、簡易に位置ズレの補正を行うことが可能となる。
【００６６】
なお、特徴点データの比較によるズレ補正の後、さらに少なくともツール位置として記
憶された第１の対象物の輪郭点群データと、それに対応する作業前に取得した第２の対象
物の点群データの比較を行い、補正後においても所定距離以上位置ズレが生じている点デ
ータが存在する場合には、再度ツール制御情報算出ＳＱ１０４を実行するようにしてもよ
い。もしくは、所定距離以上位置ズレが生じている点データに対応するツール制御情報の
範囲においてのみ、再度ツール制御情報算出ＳＱ１０４を実行するようにしてもよい。こ
れにより、特に類似の形状をした対象物に対して作業を行う場合に、実際の形状に沿った
ツール軌道を描くことが可能となる一方、ツール制御情報算出ＳＱ１０４を毎回実行する
必要がなくなるので、処理負担や作業時間がより軽減される。
【００６７】
以上、本実施形態について説明したが、上記実施形態は本発明の理解を容易にするため
のものであり、本発明を限定して解釈するためのものではない。本発明は、その趣旨を逸
脱することなく、変更、改良され得ると共に、本発明にはその等価物も含まれる。
【符号の説明】
【００６８】
１      端末
２      作業用ロボット
２１    アーム
２２    ツール
２３    センサ
【要約】
【課題】三次元点群データから対象物の輪郭形状を簡易かつ迅速に検出し、それを用いて
ロボットアーム及びツールを制御することのできるようにする。
【解決手段】対象物からセンサにより三次元点群データを取得するステップと、前記三次
元点群データから対象物の輪郭を構成する輪郭点群データを指定するステップと、前記輪
郭点群データから、作業用ロボットのアームに接続されたツールのツール軌道を特定する
ためのツール位置情報及びツール姿勢情報を含むツール制御情報を取得するステップと、
前記ツール制御情報に基づき、前記ツールを制御するステップと、を含む、ことを特徴と
する情報処理方法である。
【選択図】図６【図１】
0006849262.tif 000002
【図２】
0006849262.tif 000003
【図３】
0006849262.tif 000004
【図４】
0006849262.tif 000005
【図５】
0006849262.tif 000006
【図６】
0006849262.tif 000007
【図７】
0006849262.tif 000008
【図８】
0006849262.tif 000009
【図９】
0006849262.tif 000010
【図１０】
0006849262.tif 000011
【図１１】
0006849262.tif 000012
【図１２】
0006849262.tif 000013
【図１３】
0006849262.tif 000014
【図１４】
0006849262.tif 000015
【図１５】
0006849262.tif 000016