(57)【要約】【課題】種々の形状の検出対象物に対してもそれぞれ高速で且つ精度良く対象物の３次元形状を検出できるようにした、形状検出装置及びこれを用いたロボットシステムを提供する。【解決手段】ランダムに配置された複数の検出対象物を収納したストッカと、ストッカ内の複数の検出対象物の画像及び距離を取得する距離画像センサと、距離画像センサの検出結果と設定されたアルゴリズムとに基づいてストッカ内の検出対象物のそれぞれの位置及び姿勢を検出するセンサコントローラと、センサコントローラが使用するアルゴリズムを選択し、センサコントローラのアルゴリズムの設定を行なうユーザコントローラとを有して構成する。【選択図】図１
2011022133.tif 000002
【特許請求の範囲】
【請求項１】
ランダムに配置された複数の検出対象物を収納したストッカ内の画像及び距離を取得する距離画像センサと、
前記距離画像センサの検出結果と設定されたアルゴリズムとに基づいて前記ストッカ内の前記検出対象物のそれぞれの位置及び姿勢を検出するセンサコントローラと、
前記センサコントローラが使用する前記アルゴリズムを選択し、前記センサコントローラの前記アルゴリズムの設定を行なうユーザコントローラとを有している
ことを特徴とする、形状検出装置。
【請求項２】
前記ユーザコントローラは、
予め登録された前記検出対象物の形状パターンとこれに対応する検出アルゴリズムとを関連付けたアルゴリズムデータベースと、
所望の検出対象物の形状パターンを選択する選択手段と、
前記選択手段により選択された形状パターンの仕様を入力する仕様入力手段と、
前記選択手段により選択された形状パターン及び前記仕様入力手段により入力された仕様に基づいて、前記アルゴリズムデータベースに記憶された前記検出アルゴリズムに修正を加え、修正した検出アルゴリズムを前記センサコントローラの前記アルゴリズムとして設定するアルゴリズム設定手段と、を有している
ことを特徴とする、請求項１記載の形状検出装置。
【請求項３】
前記ユーザコントローラは、
前記アルゴリズムデータベースに記憶されたアルゴリズムの一部をなす、複数のスクリプトをそれぞれ記憶するスクリプトデータベースと、
前記スクリプトデータベースに記憶された前記複数のスクリプトの内、所望のスクリプトとその順番とを選択させるスクリプト選択手段と、
前記スクリプト選択手段により選択された前記スクリプト及び当該選択されたスクリプトの順番との組み合わせに基づいて、新たなアルゴリズムを作成し、前記アルゴリズムデータベースに登録するアルゴリズム作成手段と、を有している
ことを特徴とする、請求項２記載の形状検出装置。
【請求項４】
前記ユーザコントローラは、
前記アルゴリズム作成手段において作成された前記アルゴリズムを実行する際に、前記アルゴリズムに含まれるスクリプトを1ステップ、もしくは、複数ステップごとに前記センサコントローラに送信し、前記センサコントローラから送信される当該スクリプトの実行結果を表示するアルゴリズム実行表示手段を有している
ことを特徴とする、請求項３記載の形状検出装置。
【請求項５】
前記アルゴリズムデータベースには、予め記憶された検出対象物の形状特徴に基づいて前記前記検出対象物のそれぞれの位置及び姿勢を検出するプレスキャン型アルゴリズムが登録され、
前記センサコントローラは、前記距離画像センサの検出結果に基づいて検出対象物の３次元形状を測定して、前記ユーザコントローラに送信する
ことを特徴とする、請求項２〜４記載の形状検出装置。
【請求項６】
請求項１〜５のいずれか１項に記載の形状検出装置と、
前記形状検出装置の前記ストッカ内の前記検出対象物に対して作業を行なうロボットと、
前記センサコントローラの検出結果に基づいて前記ロボットの動作を制御するロボットコントローラと、を有している
ことを特徴とする、ロボットシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、不規則に積載されたワークの３次元形状を検出する形状検出装置及びロボットシステムに関する。
【背景技術】
【０００２】
近年では、ストッカ等に不規則な姿勢で複数配置されたワークに対してロボットにより、ワークの取出し等の作業をする技術が提案されている（例えば、特許文献１参照）。
かかる作業をロボットにより行なうためには、ストッカ等に配置されたワークの３次元形状を高速で且つ精度良く検出することが必要であり、かかる問題を解決するために、種々の技術が提案されている。
例えば、特許文献１には、深度エッジを検出して、輪郭を抽出する作業を含む３Ｄ姿勢の検出方法が開示されている。
また、特許文献２には、曲面的な形状を有するワークをより高速に検出する技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−１１５７８３
【特許文献２】特開２００８−２４６６３１
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、上述の先行技術は、それぞれ、検出対象となるワークの形状的な特徴（例えば、エッジ、又は、曲面を有する等）を有している場合に適応した技術であり、特許文献１，２の技術では、検出するワークの形状によっては、形状的な特徴が少ないこともあり、ワークの検出精度が低下したり、あるいは、検出にかかる時間が長くなることが考えられる。
一方、生産設備の費用を削減するためには、共通のロボットシステム用いて種々の形状のワークに対して作業を行なうようにすることが求められている。
本発明はかかる課題に鑑みてなされたものであって、種々の形状の検出対象物に対しても最適に精度良く対象物の３次元形状を検出できるようにした、形状検出装置及びこれを用いたロボットシステムを提供することを目的とする。
【課題を解決するための手段】
【０００５】
上記課題を解決するため、本発明は次のように構成した。
本願発明にかかる形状検出装置は、ランダムに配置された複数の検出対象物を収納したストッカ内の画像及び距離を取得する距離画像センサと、距離画像センサの検出結果と設定されたアルゴリズムとに基づいてストッカ内の検出対象物のそれぞれの位置及び姿勢を検出するセンサコントローラと、センサコントローラが使用するアルゴリズムを選択し、センサコントローラのアルゴリズムの設定を行なうユーザコントローラとを有していることを特徴としている。
【０００６】
また、ユーザコントローラは、予め登録された検出対象物の形状パターンとこれに対応する検出アルゴリズムとを関連付けたアルゴリズムデータベースと、所望の検出対象物の形状パターンを選択する選択手段と、選択手段により選択された形状パターンの仕様を入力する仕様入力手段と、選択手段により選択された形状パターン及び仕様入力手段により入力された仕様に基づいて、アルゴリズムデータベースに記憶された検出アルゴリズムに修正を加え、修正した検出アルゴリズムをセンサコントローラのアルゴリズムとして設定するアルゴリズム設定手段と、を有していることが好ましい。
【０００７】
また、ユーザコントローラは、アルゴリズムデータベースに記憶されたアルゴリズムの一部をなす、複数のスクリプトをそれぞれ記憶するスクリプトデータベースと、
スクリプトデータベースに記憶された複数のスクリプトの内、所望のスクリプトとその順番とを選択させるスクリプト選択手段と、スクリプト選択手段により選択されたスクリプト及び当該選択されたスクリプトの順番との組み合わせに基づいて、新たなアルゴリズムを作成し、アルゴリズムデータベースに登録するアルゴリズム作成手段と、を有していることが好ましい。
【０００８】
また、アルゴリズム作成手段において作成されたアルゴリズムを実行する際に、アルゴリズムに含まれるスクリプトを1ステップ、もしくは、複数ステップごとにセンサコントローラに送信し、センサコントローラから送信される当該スクリプトの実行結果を表示するアルゴリズム実行表示手段を有していることが好ましい。
また、アルゴリズムデータベースには、予め記憶された検出対象物の形状特徴に基づいて検出対象物のそれぞれの位置及び姿勢を検出するプレスキャン型アルゴリズムが登録され、センサコントローラは、距離画像センサの検出結果に基づいて検出対象物の３次元形状を測定して、ユーザコントローラに送信することが好ましい。
【０００９】
また、本願発明にかかるロボットシステムは、請求項１〜５のいずれか１項に記載の形状検出装置と、形状検出装置のストッカ内の検出対象物に対して作業を行なうロボットと、センサコントローラの検出結果に基づいてロボットの動作を制御するロボットコントローラと、を有していることを特徴としている。
【発明の効果】
【００１０】
本願発明によれば、検出対象物の形状等が変更されても、検出対象物の形状に合ったアルゴリズムを適宜選択することができるので、種々の形状の検出対象物に対してもそれぞれ高速で且つ精度良く対象物の３次元形状を検出することができる。
【図面の簡単な説明】
【００１１】
【図１】本発明の一実施形態にかかるロボットシステム構成を示すブロック図
【図２】本発明の一実施形態にかかるロボットシステムの全体構成を示す模式的な配置図
【図３】本発明の一実施形態にかかるセンサユニットを模式的に示す下面図
【図４】本発明の一実施形態にかかるアルゴリズム実行処理を示すフローチャート
【発明を実施するための形態】
【００１２】
以下、本発明の実施の形態について図を参照して説明する。
図２に示すように、本実施形態にかかるロボットシステム１００は、ロボット１０１,
ストッカ１０２,搬送用パレット１０６及び形状検出装置からなっており、形状検出装置は距離画像センサユニット１０３，外部制御装置（ユーザコントローラ）１０４を有している。
ストッカ１０２は、樹脂等で形成された箱（パレット）であり、内部には複数のワーク（検出対象物）Ｗが無作為に配置されている。
【００１３】
ロボット１０１は、垂直多関節ロボットであり、先端に装着されたハンド装置１０１Ａによりストッカ１０２内のワークＷを一つずつ把持して次工程に搬送するための搬送用パレット１０６に移載するようになっている。搬送用パレット１０６は図示省略のベルトコンベアによって次工程に搬送される。
【００１４】
ロボット１０１の各関節部には、図示しないサーボモータが内蔵されており、サーボモータの駆動はロボットコントローラ１０５（図１参照）により予め教示された動作指令に沿って制御されるようになっている。
【００１５】
センサユニット１０３は、図３に示すように、カメラ１とレーザースキャナ２とを有している。また、センサユニット１０３の筐体１０３Ａの内部には記憶装置及び演算装置を有するセンサコントローラ３が内蔵されている。ここで、レーザースキャナ２は、スリット光レーザーから発射するレーザースリット光をミラーに照射し、モーターでミラーを回転させることで広範囲の対象物にレーザースリット光を照射するようになっている。対象物に照射したレーザースリット光の反射光をカメラ１で撮像し、モーターの回転角度や受光したカメラの撮像素子の位置、レーザー、ミラー、カメラの位置関係から三角測量の原理で対象物までの距離を画素毎に取得して各画素毎の距離情報である距離画像を得るようになっている。
【００１６】
外部制御装置１０４は、表示装置、入力装置、記憶装置、演算装置を有するパーソナルコンピュータであり、センサコントローラ３とデータ通信可能に接続されている。
図１に示すように、センサコントローラ３は、アルゴリズム設定部１１と位置姿勢算出部１２と形状計測部１３とロボット通信部１４を有しているとともに、記憶装置にはアルゴリズムデータベース１５及びスクリプトデータベース１６が構築されている。
また、外部制御装置１０４は、機能構成として選択部（選択手段）２１，仕様入力部（仕様入力手段）２２，アルゴリズム設定部（アルゴリズム設定手段）２３，スクリプト選択部（スクリプト選択手段）２４、アルゴリズム作成部（アルゴリズム作成手段）２５及びアルゴリズム実行表示部２６（アルゴリズム実行表示手段）を有して構成されている。
【００１７】
アルゴリズム設定部１１は、外部制御装置１０４からの指令に基づいて、ワークＷの位置及び姿勢を算出する算出手順（アルゴリズム）を確定（設定）するようになっている。
位置姿勢算出部１２は、アルゴリズム設定部１１が設定したアルゴリズムとカメラ１及びレーザー距離センサ２の検出結果に基づいて、ストッカ２内のどの位置にそのような姿勢（方向）でワークＷが配置されているかを検出する。
そして、検出されたワークＷの位置及び姿勢情報は、外部制御装置１０４側およびロボット通信部を介してロボットコントローラ１０５に送信され、ロボットコントローラ１０５はワークＷの位置及び姿勢情報に基づいてロボット１０１を動作させるようになっている。
【００１８】
アルゴリズムデータベース１５には、センサユニット１０３の検出結果を用いてワークＷの位置及び姿勢を検出するための種々の算出手順（アルゴリズム）が記憶されており、各アルゴリズムには、各アルゴリズムに最適な形状パターンが関連付けて記憶されている。また、アルゴリズムデータベース１５には、予め記憶された検出対象物の形状特徴に基づいてワークＷそれぞれの位置及び姿勢を検出するプレスキャン型アルゴリズムが登録されている。
形状パターンは、例えば、ボルトのように拡大された頭部と、円柱状の螺旋部を有するタイプ（タイプＡ）や、ブラケット部品のように特徴的な形状の平面部分を有するタイプ（タイプＢ）等、検出対象とするワークＷの形状パターンである。
【００１９】
スクリプトデータベース１６は、アルゴリズムデータベース１５に記憶された各アルゴリズムを構成する手順であるスクリプトがスクリプト毎に記憶されている。
スクリプトとは、エッジ検出処理やや各種のフィルタ処理、ラベリング処理、ループ処理、分岐処理などレーザー距離センサ２の検出結果に対して行なう処理にかかる機能要素であり、これらのスクリプトを適切な順番で組み合わせ、あるいは、単独で実行することにより、レーザー距離センサ２の検出結果からワークＷの位置姿勢を検出する認識アルゴリズムが形成される。この認識アルゴリズムは、スクリプトの組み合わせ及びその実行順番を設定することでワークＷの形状やストッカ2の周辺の光環境等の要件等の条件に応じてよりよいアルゴリズムを設定できるようになっている。
【００２０】
選択部２１は、外部制御装置１０４に予め記憶されたワークＷの形状パターン選択画面を表示させ、形状パターンを選択させるようになっている。
仕様入力部２２は、選択された形状パターンに対応した詳細な仕様を入力可能に構成されている。例えば、選択された形状パターンがボルトの場合、頭部の幅寸法，螺旋部の長さ寸法の詳細な寸法を入力可能となっている。この仕様は、長さ情報に限らず、角度や曲率等の情報で構成されてもよい。
アルゴリズム設定部２３は、選択部２１及び仕様入力部２２の選択及び入力結果に基づいて、アルゴリズム設定部１１において設定されたアルゴリズムのパラメータ変更情報を送信するようになっている。
【００２１】
スクリプト選択部２４は、スクリプトデータベース１６に記憶された複数のスクリプトを選択する画面（スクリプト選択画面）を外部制御装置１０４に表示させて、所望のスクリプトとそのスクリプトの実行順番等との組み合わせを選択により、入力可能とさせるようになっている。
アルゴリズム作成部２５は、スクリプト選択部２４により選択された複数のスクリプト及び実行順番等の組み合わせに沿った新たなアルゴリズムを作成し、センサコントローラ３側に送信され、新たなアルゴリズムは、アルゴリズムデータベース１５に記憶される。
【００２２】
アルゴリズム実行表示部２６は、スクリプト選択部２４により選択された複数のスクリプト及び実行順番等の組み合わせに沿った新たなアルゴリズムのうちの1ステップ毎、もしくは、複数ステップ毎のスクリプトをセンサコントローラ３側に送信し、センサコントローラ３側で1ステップ、もしくは、複数ステップのスクリプトを実行した結果を外部制御装置１０４に表示させて、スクリプト選択部２４により選択したスクリプトが所望の動作を行っているのかを逐次確認できるようになっている。
【００２３】
その動作は図４に示すように初めにステップＳ１にて、１ステップ分のスクリプトをセンサコントローラ３側に送信する。次にステップＳ２にて、センサコントローラ３側での実行が終了し処理結果が送信されるのを待つ。センサコントローラ３側からの応答があった場合には、ステップＳ３にてセンサコントローラ３側での実行結果を外部制御装置１０４にに表示させる。次にステップＳ４にて次のスクリプトがあるかの判断を行なう。このとき、例えば１ステップのみの実行の場合にはアルゴリズム実行処理を終了する。
複数ステップのスクリプトを実行する場合には、再びステップＳ１にて次の１ステップ分のスクリプトをセンサコントローラ３側に送信する。以降、すべてのステップのスクリプト実行が終了するまで同様の手順を繰り返す。
【００２４】
また、ステップＳ２にてセンサコントローラ３側からの応答がない場合には、ステップＳ５にて図示しないタイマをカウントアップし、ステップＳ６にてあらかじめ決めておいた応答時間を越えていないかの判断を行なう。ステップＳ６にてタイムオーバとなった場合には、ステップＳ７にて外部制御装置１０４の表示装置にアルゴリズム実行処理にて異常が発生したことを表示装置に表示させた後、アルゴリズム実行処理を終了する。
【００２５】
本実施形態にかかるロボットシステム及び形状検出装置は上述のように構成されているので、ワークＷが別の形状のものに変更されても、そのワークＷの形状に合ったアルゴリズムを適宜作成することができるので、１つのロボットシステム及び形状検出装置を用いて種々の形状のワークＷに対してもそれぞれ高速で且つ精度良く対象物の３次元形状を検出することができる。
また、ストッカ１０２にランダムに配置されたワークＷの形状上の特徴やストッカ１０２のおかれる環境（例えば、外乱光が存在するなど、レーザ距離センサの検出結果に対してロバスト性がどれほど要求されるのかに関する環境）に応じて、本ロボットシステムの管理者は、形状パターン選択画面やスクリプト選択画面から、形状パターンやスクリプトを容易に選択できるので、アルゴリズムを作成するためのスクリプトの組み合わせを容易に選択・変更することができるので最適なアルゴリズムを作成するための試行段階の作業を容易に実行することができる。また、各スクリプトの実行結果が表示されるので、管理者が当該スクリプトが有効であるか否かを容易に視認することができる。
【００２６】
以上、本発明の実施の形態について説明したが、本発明にかかる形状検出装置及びロボットシステムは上述の実施形態のものに限定されるものではなく、本発明の趣旨を逸脱しない範囲で適宜変形して適用可能である。
例えば、ユーザコントローラとロボットコントローラとは別体の制御装置で構成する必要はなく１つの制御装置の機能として構成してもよい。
また、形状検出装置は、ロボットシステム以外の種々のシステムに適用することができる。
【符号の説明】
【００２７】
１  カメラ
２  レーザーセンサ
３  センサコントローラ
１００  ロボットシステム
１０１  ロボット
１０２  ストッカ
１０３  センサユニット（距離画像センサ）
１０４  外部制御装置（ユーザコントローラ）
１０５  ロボットコントローラ
１０６  パレット
【図１】
2011022133.tif 000003
【図２】
2011022133.tif 000004
【図３】
2011022133.tif 000005
【図４】
2011022133.tif 000006