(57)【要約】  ロボットシステム１は、複数のワークＷを多段に収容したカセット３０に対してワークＷを出し入れするためのハンド２１と、ワークＷを検出するセンサ２２と、複数のワークＷが並ぶＺ軸方向及びＺ軸方向と交差するＸ軸方向において、センサ２２とカセット３０との相対的な位置を変更する移動機構１５と、第一位置にセンサ２２を配置し、Ｚ軸方向においてセンサ２２を走査させるように移動機構１５を制御し、Ｚ軸方向におけるワークＷの配置を示す第一マッピングデータを取得する第一走査制御部５１と、Ｘ軸方向において第一位置と異なる第二位置にセンサ２２を配置し、Ｚ軸方向においてセンサ２２を走査させるように移動機構１５を制御し、Ｚ軸方向におけるワークＷの配置を示す第二マッピングデータを取得する第二走査制御部５２と、第一マッピングデータ及び第二マッピングデータに基づいてワークＷの傾斜を検出する傾斜検出部５５と、を備える。
2016194219.tif 000002
【特許請求の範囲】
【請求項１】
複数のワークを多段に収容したカセットに対して前記ワークを出し入れするためのハンドと、
前記ワークを検出するセンサと、
前記複数のワークが並ぶ第一方向及び前記第一方向と交差する第二方向において、前記センサと前記カセットとの相対的な位置を変更する移動機構と、
第一位置に前記センサを配置し、前記第一方向において前記センサを走査させるように前記移動機構を制御し、前記第一方向における前記ワークの配置を示す第一マッピングデータを取得する第一走査制御部と、
前記第二方向において前記第一位置と異なる第二位置に前記センサを配置し、前記第一方向において前記センサを走査させるように前記移動機構を制御し、前記第一方向における前記ワークの配置を示す第二マッピングデータを取得する第二走査制御部と、
前記第一マッピングデータ及び前記第二マッピングデータに基づいて前記ワークの傾斜を検出する傾斜検出部と、
を備えるロボットシステム。
【請求項２】
前記第二方向は、前記カセットに対して前記ハンドが前記ワークを出し入れする方向である、
請求項１記載のロボットシステム。
【請求項３】
前記カセットにおける前記ワークの収容予定位置に対してずれた異常値が前記第一マッピングデータ及び前記第二マッピングデータの少なくとも一方に含まれていることを検出する異常値検出部を更に備え、
前記傾斜検出部は、前記第一マッピングデータ及び前記第二マッピングデータの少なくとも一方が前記異常値を含んでいる場合に、当該異常値に基づいて傾斜を検出する、請求項１又は２記載のロボットシステム。
【請求項４】
前記第二方向は、前記カセットに対して前記ハンドが前記ワークを出し入れする方向であり、
前記異常値検出部は、前記第一マッピングデータと前記第二マッピングデータとを照合し、前記第一マッピングデータと前記第二マッピングデータとの差に基づいて前記異常値を検出する、請求項３に記載のロボットシステム。
【請求項５】
前記傾斜検出部は、前記ワークの傾斜を検出した場合に当該ワークの傾斜角度を更に検出する、請求項１〜４のいずれか一項記載のロボットシステム。
【請求項６】
前記傾斜検出部は、前記第一マッピングデータ又は前記第二マッピングデータのいずれか一方が前記異常値を含んでいる場合に、前記第一マッピングデータ又は前記第二マッピングデータの他方に含まれる値のうち前記異常値に最も近い値と当該異常値とに基づいて前記ワークの傾斜角度を検出する、請求項３記載のロボットシステム。
【請求項７】
前記傾斜検出部は、前記ワークの傾斜角度と、前記ワークの収容予定位置同士の間隔とに基づいて、当該ワークが複数段の前記収容予定位置に亘っているか否かを検出する、請求項５又は６記載のロボットシステム。
【請求項８】
前記傾斜検出部による検出結果に基づいて、傾斜した前記ワークに隣接する空間への前記ハンドの進入可否を判定する進入可否判定部を更に備える、請求項１〜７のいずれか一項記載のロボットシステム。
【請求項９】
複数のワークを多段に収容したカセットに対して、前記ワークを検出するためのセンサを第一位置に配置すること、
前記第一位置に配置された前記センサを前記複数のワークが並ぶ第一方向において走査させて前記第一方向における前記ワークの配置を示す第一マッピングデータを取得すること、
前記第一方向と交差する第二方向において、前記第一位置と異なる第二位置に前記センサを配置すること、
前記第二位置に配置された前記センサを前記第一方向において走査させて前記第一方向における前記ワークの配置を示す第二マッピングデータを取得すること、及び
前記第一マッピングデータ及び前記第二マッピングデータに基づいて前記ワークの傾斜を検出すること、を含む傾斜検出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、ロボットシステム及び傾斜検出方法に関する。
【背景技術】
【０００２】
特許文献１には、複数のワークを鉛直方向に多段に収納する収納部と、収納部に収納されたワークを移載するロボットハンドとを備えるロボットシステムが記載されている。このロボットシステムでは、ワーク直下の空隙へのロボットハンドの進入の可否が、収納部に収納されたワークの間のクリアランスに基づいて判定される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許５４４７４３１号
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本開示は、ワークの傾斜をより確実に検出することが可能なロボットシステム及び傾斜検出方法を提供することを目的とする。
【課題を解決するための手段】
【０００５】
本開示の一形態に係るロボットシステムは、複数のワークを多段に収容したカセットに対してワークを出し入れするためのハンドと、ワークを検出するセンサと、複数のワークが並ぶ第一方向及び第一方向と交差する第二方向において、センサとカセットとの相対的な位置を変更する移動機構と、第一位置にセンサを配置し、第一方向においてセンサを走査させるように移動機構を制御し、第一方向におけるワークの配置を示す第一マッピングデータを取得する第一走査制御部と、第二方向において第一位置と異なる第二位置にセンサを配置し、第一方向においてセンサを走査させるように移動機構を制御し、第一方向におけるワークの配置を示す第二マッピングデータを取得する第二走査制御部と、第一マッピングデータ及び第二マッピングデータに基づいてワークの傾斜を検出する傾斜検出部と、を備える。【０００６】
本開示の一形態に係る傾斜検出方法は、複数のワークを多段に収容したカセットに対して、ワークを検出するためのセンサを第一位置に配置すること、第一位置に配置されたセンサを複数のワークが並ぶ第一方向において走査させて第一方向におけるワークの配置を示す第一マッピングデータを取得すること、第一方向と交差する第二方向において、第一位置と異なる第二位置にセンサを配置すること、第二位置に配置されたセンサを第一方向において走査させて第一方向におけるワークの配置を示す第二マッピングデータを取得すること、及び第一マッピングデータ及び第二マッピングデータに基づいてワークの傾斜を検出すること、を含む。
【発明の効果】
【０００７】
本開示によれば、ワークの傾斜をより確実に検出することができる。
【図面の簡単な説明】
【０００８】
【図１】実施形態に係るロボットシステムの模式図である。
【図２】ハンド、センサ及びワークを示す平面図である。
【図３】コントローラの機能ブロック図である。
【図４】コントローラのハードウェア構成図である。
【図５】コントローラによる処理を示すフローチャートである。
【図６】ワークの配置例を示す図である。
【図７】傾斜検出方法を説明するための図である。
【発明を実施するための形態】
【０００９】
以下、実施形態について図面を参照しつつ詳細に説明する。説明において、同一要素又は同一機能を有する要素には同一の符号を付し、重複する説明を省略する。説明の便宜上、図面にはＸ軸、Ｙ軸及びＺ軸を付す。Ｚ軸は鉛直方向に延びる。Ｘ軸及びＹ軸は、水平面内において、互いに直交する方向に延びる。
【００１０】
本開示に係るロボットシステムは、ハンドと、センサと、移動機構と、第一走査制御部と、第二走査制御部と、傾斜検出部とを備える。ハンドは、複数のワークを多段に収容したカセットに対してワークを出し入れする。センサは、ワークを検出する。移動機構は、複数のワークが並ぶ第一方向及び第一方向と交差する第二方向において、センサとカセットとの相対的な位置を変更する。第一走査制御部は、第一方向においてセンサを走査させるように移動機構を制御し、第一方向におけるワークの配置を示す第一マッピングデータを取得する。第二走査制御部は、第二方向において第一位置と異なる第二位置にセンサを配置し、第一方向においてセンサを走査させるように移動機構を制御し、第一方向におけるワークの配置を示す第二マッピングデータを取得する。傾斜検出部は、第一マッピングデータ及び第二マッピングデータに基づいてワークの傾斜を検出する。
【００１１】
図１に一例としてのロボットシステム１を示す。ロボットシステム１は、ロボット１０と、コントローラ５０と、を備える。ロボット１０は、基台１１と、昇降部１２と、第一アーム１３と、第二アーム１４と、ハンド２１と、センサ２２と、を備える。
【００１２】
基台１１は、ロボット１０の配置領域の床面に固定される。昇降部１２は、基台１１から鉛直上方に突出しており、鉛直な軸線Ａｘ１に沿って昇降可能である。第一アーム１３は、昇降部１２の上端部に接続され、昇降部１２の上端部から水平方向に延びており、軸線Ａｘ１まわりに揺動可能である。第二アーム１４は、第一アーム１３の先端部に接続され、第一アーム１３の先端部から水平方向に延びており、鉛直な軸線Ａｘ２まわりに揺動可能である。ハンド２１は、第二アーム１４の先端部に接続され、鉛直な軸線Ａｘ３まわりに回転可能である。
【００１３】
ロボット１０は、軸線Ａｘ１に沿って昇降部１２を昇降させるアクチュエータ、軸線Ａｘ１まわりに第一アーム１３を揺動させるアクチュエータ、軸線Ａｘ２まわりに第二アーム１４を揺動させるアクチュエータ及び軸線Ａｘ３まわりにハンド２１を回転させるアクチュエータを有する。これらのアクチュエータの図示は省略する。アクチュエータとしては、例えば電動モータを動力源とする電動式のアクチュエータが挙げられる。
【００１４】
ハンド２１は、ワークＷを載置可能であり、カセット３０に対してワークＷを出し入れする。図２に示すように、ハンド２１の形状は、平面視で（即ちＺ軸方向から見た場合に）略Ｙ字形状であり、二つの先端部を有する。
【００１５】
センサ２２は、例えばワークＷを検出する。一例として、センサ２２は、ワークＷの有無を検出する。センサ２２は、例えば透過型の光センサであり、投光部から受光部に出射した光の受光状況に応じて投光部及び受光部の間の物体を検出する。具体例として、図２に示されるように、センサ２２は、投光部２３と、受光部２４と、不図示のアンプと、を有する。投光部２３と受光部２４とは、ハンド２１の一方の先端と他方の先端とにそれぞれ設けられ、互いに対向する。投光部２３は、受光部２４側に光を出射する。アンプは、不図示の光ファイバを介して投光部２３及び受光部２４に接続される。アンプは、出射用の光を光ファイバ経由で投光部２３に送り、受光部２４に入射した光を光ファイバ経由で受光する。
【００１６】
ロボット１０は、カセット３０に対してワークＷを出し入れする。ワークＷは、板状の作業対象物である。図２に示すように、ワークＷの平面視形状は、例えば円形である。円形とは、周縁の一部に切欠き（例えばノッチ又はオリエンテーション・フラット）、出っ張り等が形成されたものも含み、周縁の大半が同一の円周をなしていれば円形であるものとする。なお、ワークＷの平面視形状は、矩形状その他の形状であってもよい。ワークＷは、例えば、半導体ウェハ、ＬＣＤ基板、ガラス基板等であってもよい。
【００１７】
カセット３０は、略直方体状の外形を有し、鉛直方向に直交する一方向（例えばＸ軸負方向）に開口している。カセット３０の内部は、突起部３１により多段のスロットに分割されている。突起部３１は、水平なワークＷの周縁部を支持する。スロットは、鉛直方向（Ｚ軸に沿う方向）において、所定のピッチＰを有して等間隔に配列される。スロットは、ワークＷが収容される予定の位置である収容予定位置を規定する。例えば、各スロット内の下部が、ワークＷの収容予定位置となる。
【００１８】
ロボット１０の昇降部１２、第一アーム１３及び第二アーム１４は、カセット３０においてワークＷが並ぶＺ軸方向（上記第一方向）に沿って、ハンド２１を移動させる。また、昇降部１２、第一アーム１３及び第二アーム１４は、カセット３０の開口部からカセット３０の奥側に向かうＸ軸方向（上記第二方向）に沿って、ハンド２１を移動させる。即ち、ロボット１０は、上記移動機構（図示の移動機構１５）を有する。
【００１９】
コントローラ５０は、ハンド２１を用いてワークＷをカセット３０に出し入れするようにロボット１０を制御する。また、コントローラ５０は、第一位置にセンサ２２を配置し、第一方向においてセンサ２２を走査させ、第一方向におけるワークＷの配置を示す第一マッピングデータを取得することと、第二位置にセンサ２２を配置し、第二方向においてセンサ２２を走査させ、第一方向におけるワークＷの配置を示す第二マッピングデータを取得することと、第一マッピングデータ及び第二マッピングデータに基づいてワークＷの傾斜を検出することと、を実行する。
【００２０】
コントローラ５０は、カセット３０におけるワークＷの収容予定位置に対してずれた異常値が第一マッピングデータ及び第二マッピングデータの少なくとも一方に含まれていることを検出すること、並びに第一マッピングデータ及び第二マッピングデータの少なくとも一方が異常値を含んでいる場合に、当該異常値に基づいてワークＷの傾斜を検出することを実行してもよい。コントローラ５０は、第一マッピングデータと第二マッピングデータとを照合し、第一マッピングデータと第二マッピングデータとの差に基づいてワークＷの傾斜を検出してもよい。
【００２１】
コントローラ５０は、ワークＷの傾斜を検出した場合に当該ワークＷの傾斜角度を更に計算してもよい。コントローラ５０は、第一マッピングデータ又は第二マッピングデータのいずれか一方が異常値を含んでいる場合に、第一マッピングデータ又は第二マッピングデータの他方に含まれる値のうち異常値に最も近い値と当該異常値とに基づいてワークＷの傾斜角度を検出してもよい。
【００２２】
コントローラ５０は、ワークＷの傾斜角度と、ワークＷの収容予定位置同士の間隔とに基づいて、当該ワークが複数段の収容予定位置に亘っているかを検出してもよい。
【００２３】
以下、コントローラ５０の具体例について詳細に説明する。図３に示されるように、コントローラ５０は、機能上のモジュールとして、第一走査制御部５１と、第二走査制御部５２と、データ記憶部５３と、異常値検出部５４と、傾斜検出部５５と、進入可否判定部５６と、を有する。
【００２４】
第一走査制御部５１は、第一位置にセンサ２２を配置するように移動機構１５を制御した後に、Ｚ軸方向においてセンサ２２を走査させるように移動機構１５を制御し、Ｚ軸方向におけるワークＷの配置を示す第一マッピングデータを取得する。
【００２５】
Ｚ軸方向においてセンサ２２を走査させるとは、Ｚ軸に直交する方向（例えばＸ軸方向又はＹ軸方向）におけるセンサ２２の位置を変更しない状態で、センサ２２のカセットに対する相対的な位置をＺ軸方向に沿って移動させて、カセット３０の少なくとも一部のスロットにおけるワークＷの有無を検出することを意味する。センサ２２のカセット３０に対する相対的な位置を移動させる際には、カセット３０を静止させた状態でセンサ２２を移動させてもよく、センサ２２を静止させた状態でカセット３０を移動させてもよい。センサ２２のカセットに対する相対的な位置の移動方向は上向きであっても下向きであってもよい。
【００２６】
センサ２２の走査時において、センサ２２の投光部２３と受光部２４との間にワークＷが位置する場合に、センサ２２は、受光部２４における受光量が、ワークＷのない場合と比較して減少することを検知する。第一走査制御部５１は、受光部２４における受光量の減少を検知した時点におけるセンサ２２のＺ座標値を移動機構１５から取得して、第一マッピングデータとする。
【００２７】
第二走査制御部５２は、第一位置と異なる第二位置にセンサ２２を配置するように移動機構１５を制御した後に、Ｚ軸方向においてセンサ２２を走査させるように移動機構１５を制御し、Ｚ軸方向におけるワークＷの配置を示す第二マッピングデータを取得する。第二走査制御部５２は、第一走査制御部５１と同様の手順により、移動機構１５から取得したセンサ２２のＺ座標値を第二マッピングデータとする。
【００２８】
データ記憶部５３は、第一走査制御部５１により取得された第一マッピングデータと、第二走査制御部５２により取得された第二マッピングデータとを記憶する。
【００２９】
異常値検出部５４は、データ記憶部５３に記憶された第一マッピングデータ及び第二マッピングデータに含まれる異常値を検出する。
【００３０】
傾斜検出部５５は、データ記憶部５３に記憶された第一マッピングデータ及び第二マッピングデータに基づいてワークＷの傾斜を検出する。
【００３１】
進入可否判定部５６は、傾斜検出部５５による検出結果に基づいて、傾斜したワークＷに隣接する空間へのハンド２１の進入可否を判定する。
【００３２】
コントローラ５０のハードウェアは、例えば一つ又は複数の制御用のコンピュータにより構成される。コントローラ５０は、ハードウェア上の構成として、例えば図４に示す回路６０を有する。回路６０は、プロセッサ６１と、メモリ６２と、ストレージ６３と、入出力ポート６４と、ドライバ６５とを有する。ドライバ６５は、ロボットシステム１の各種アクチュエータ６６を駆動するための回路である。入出力ポート６４は、例えばセンサ２２からの信号を含む外部信号の入出力を行うのに加え、ドライバ６５に対する信号の入出力も行う。プロセッサ６１は、メモリ６２及びストレージ６３の少なくとも一方と協働してプログラムを実行し、入出力ポート６４を介した信号の入出力を実行することで、上述した機能モジュールを構成する。
【００３３】
なお、コントローラ５０のハードウェア上の構成は、必ずしもプログラムの実行により機能モジュールを構成するものに限られない。例えばコントローラ５０は、専用の論理回路により、又はこれを集積したＡＳＩＣ（Application  Specific  Integrated  Circuit）によりこれらの機能モジュールを構成するものであってもよい。
【００３４】
次に、図５を参照して、ロボットシステム１を用いて行われる傾斜検出方法について説明する。まず、コントローラ５０は、ステップＳ１１を実行する。ステップＳ１１では、第一走査制御部５１が、センサ２２をカセット３０に対して第一位置に配置するようにロボット１０を制御する。
【００３５】
次に、コントローラ５０は、ステップＳ１２を実行する。ステップＳ１２では、第一走査制御部５１が、センサ２２をＺ軸方向に走査させるようにロボット１０を制御して第一マッピングデータを取得し、データ記憶部５３に記憶させる。
【００３６】
次に、コントローラ５０は、ステップＳ１３を実行する。ステップＳ１３では、第二走査制御部５２が、センサ２２をカセット３０に対して第二位置に配置するようにロボット１０を制御する。
【００３７】
次に、コントローラ５０は、ステップＳ１４を実行する。ステップＳ１４では、第二走査制御部５２が、センサ２２をＺ軸方向に走査させるようにロボット１０を制御して第二マッピングデータを取得し、データ記憶部５３に記憶させる。
【００３８】
次に、コントローラ５０は、以下のステップＳ１５〜Ｓ１８を実行することにより、第一マッピングデータ及び第二マッピングデータに基づいてワークＷの傾斜を検出する。
【００３９】
まず、コントローラは、ステップＳ１５を実行する。ステップＳ１５では、異常値検出部５４が、第一マッピングデータ及び第二マッピングデータに異常値が含まれているか否かを判定する。
【００４０】
異常値とは、例えば、ワークＷが正常に突起部３１上に水平に載置されているときには取り得ないＺ座標値である。Ｚ座標の原点は、例えばカセット３０の下底部にとることができる。この場合、Ｚ座標とは、カセット３０の底面からの高さに等しい。異常値検出部５４による異常値の有無の判定は、例えば次の方法により行われ得る。即ち、異常値検出部５４は、第一マッピングデータと第二マッピングデータとが互いに一致しないデータを含んでいる場合に、異常値が第一マッピングデータ又は第二マッピングデータに含まれていると判定してもよい。第一マッピングデータ及び第二マッピングデータの一方が互いに一致しないデータを含んでいるとは、例えば、第一マッピングデータ及び第二マッピングデータの他方に含まれるいずれのデータに対しても無視できない差異のあるデータを含んでいることを意味する。また、異常値検出部５４は、カセット３０にワークＷが水平に収容された場合におけるワークＷのＺ座標を基準データとして予め記憶しておき、基準データと、実際にセンサ２２により検出された第一マッピングデータ又は第二マッピングデータとの間に無視できない大きさの差がある場合に、第一マッピングデータ又は第二マッピングデータに異常値が含まれると判定してもよい。
【００４１】
ステップＳ１５において、第一マッピングデータ及び第二マッピングデータに異常値が含まれていなければ、コントローラ５０は、ステップＳ１６〜Ｓ１８を実行せずに一連の処理を終了する。第一マッピングデータ及び第二マッピングデータに異常値が含まれていれば、コントローラ５０は、ステップＳ１６を実行する。
【００４２】
ステップＳ１６では、傾斜検出部５５が、ワークＷの傾斜を検出する。ステップＳ１６で検出されるワークＷの傾斜は、例えば、水平面に対する傾斜のうちＸ軸方向（カセット３０に対してワークＷが出し入れされる方向）に対する傾斜である。換言すれば、検出される傾斜は、図１に示すＹ軸回りの傾斜である。
【００４３】
図６を参照して、傾斜検出方法の具体例について説明する。図６は、ワークＷの配置例を示す。図６では、４枚のワークＷ１〜Ｗ４がカセット３０に収容されている。ステップＳ１１において、センサ２２が第一位置Ｘ１に配置される。ステップＳ１２において、センサ２２が矢印Ａ１に沿って上昇し、その過程で第一走査制御部５１が、第一マッピングデータとして点Ｚ１１，Ｚ１２，Ｚ１３にてワークＷ１〜Ｗ４を検出する。点Ｚ１１は、ワークＷ１に対応する。点Ｚ１２は、ワークＷ２及びＷ３に対応する。点Ｚ１３は、ワークＷ４に対応する。点Ｚ１２では、水平なワークＷ２と、ワークＷ２の上方に配置され、Ｘ軸方向に対して傾斜したワークＷ３とが重なって１枚のワークとして検出される。
【００４４】
次に、ステップＳ１３において、センサ２２が第二位置Ｘ２に配置される。ステップＳ１４において、センサ２２が矢印Ａ２に沿って上昇し、その過程で第二走査制御部５２が、第二マッピングデータとして点Ｚ２１，Ｚ２２，Ｚ２３，Ｚ２４にてワークＷ１〜Ｗ４を検出する。点Ｚ２１〜Ｚ２４は、それぞれワークＷ１〜Ｗ４に対応する。
【００４５】
ステップＳ１５において、異常値検出部５４は、第一マッピングデータ及び第二マッピングデータに異常値が含まれているか否かを判定する。図６の例では、点Ｚ２３に対応するデータが第一マッピングデータにないので、点Ｚ２３は異常値として判定される。
【００４６】
また、ステップＳ１５において、傾斜検出部５５は、異常値として検出された点Ｚ２３を用いて、点Ｚ２３に対応するワークＷ３の傾斜を検出する。更に、傾斜検出部５５は、ワークＷ３の傾斜角度を検出する。具体的には、傾斜検出部５５は、第一マッピングデータと第二マッピングデータとを照合し、第一マッピングデータに含まれるデータのうち、点Ｚ２３に最も近い点Ｚ１２を選択する。これにより、傾斜検出部５５は、点Ｚ１２と点Ｚ２３とが一枚のワークＷ３に対応することを検出する。そして、傾斜検出部５５は、図７に示すように、点Ｚ２３のＺ座標ｈ２と点Ｚ１２のＺ座標ｈ１との差ｈ２−ｈ１を、第一位置Ｘ１と第二位置Ｘ２との間のＸ軸方向における距離ｄで除算し、ワークＷ３の傾斜角度の正接値（ｈ２−ｈ１）／ｄを得る。
【００４７】
図５に戻り、コントローラ５０は、次にステップＳ１７を実行する。ステップＳ１７では、進入可否判定部５６が、ワークＷに隣接する空間へのハンド２１の進入の可否を判定する。
【００４８】
一例として、図６に示すワークＷ３のように、ワークＷが二段の収容予定位置（空間ＳＰ３内の下部及び空間ＳＰ４の下部）に亘って傾斜している場合、進入可否判定部５６は、ワークＷ３により完全に分断された空間ＳＰ３へのハンド２１の進入を不可と判定する。
【００４９】
ステップＳ１７での判定の一例は、次のように行われる。図６及び図７の例の場合、カセット３０の奥側（Ｘ軸正方向側）の端部でのワークＷ３の高さと、カセット３０の開口側（Ｘ軸負方向側）の端部でのワークＷ３の高さとの差は、ワークＷ３の傾斜角度の正接値（ｈ２−ｈ１）／ｄとワークＷの直径Ｄとを用いて、（ｈ２−ｈ１）／ｄ×Ｄと計算される。この計算結果がスロットのピッチＰを上回っている場合に、進入可否判定部５６は、ワークＷ３が二段以上の収容予定位置にまたがって位置していると判定し、ワークＷ３により完全に分断された空間ＳＰ３へのハンド２１の進入を不可と判定する。
【００５０】
なお、ワークＷ３の直下の空間ＳＰ２へのハンド２１の進入が可能であったとしても、ワークＷ３の傾斜に起因してワークＷの搬出作業が困難となるおそれがある。例えば、カセット３０の開口側でワークＷ３と接触しているワークＷ２の搬出は困難であり、また、ワークＷ３の搬出自体も困難である。そこで、進入可否判定部５６は、空間ＳＰ３に加え、空間ＳＰ２へのハンド２１の進入をも不可と判定してもよい。
【００５１】
更に、進入可否判定部５６は、傾斜したワークＷ３の直上の空間ＳＰ４についても、鉛直方向における隙間の高さに基づいて、ハンド２１の進入の可否を判定してもよい。例えば、図６の例では、進入可否判定部５６は、ワークＷ３の最上端部と、ワークＷ４を支持する突起部３１の下端部との間の隙間高さＨを算出し、ハンド２１の厚みに所定のマージンを加えた必要高さと隙間高さＨとを比較して進入可否を判定してもよい。この場合、進入可否判定部５６は、隙間高さＨが上記必要高さ以下であれば進入不可と判定し、隙間高さＨが上記必要高さより大きければ進入可能であると判定してもよい。
【００５２】
以上で傾斜検出方法に係る一連の処理が終了する。以後、検出されたワークＷの傾斜状態に応じて、必要な処理が行われる。例えば、コントローラ５０は、ステップＳ１８でハンド２１の進入が不可と判定された部分へのハンドの進入を行わないようにして、ワークＷの搬送作業を実行するようにロボット１０を制御してもよい。また、カセット３０においてワークＷが傾斜していると判定された場合に、人の手又は他のロボット等によりワークＷを水平な状態に収容し直してもよい。なお、この一連の処理は、ロボット１０がハンド２１をカセット３０に挿入する度に毎回実行されてもよく、必要に応じたタイミングでのみ実行されてもよい。
【００５３】
以上に説明したように、ロボットシステム１は、カセット３０に対してワークＷを出し入れするためのハンド２１と、ワークＷを検出するセンサ２２と、センサ２２とカセット３０との相対的な位置を変更する移動機構１５と、第一位置にセンサ２２を配置し、第一方向としてのＺ軸方向においてセンサを走査させるように移動機構１５を制御し第一マッピングデータを取得する第一走査制御部５１と、第二位置にセンサ２２を配置し、Ｚ軸に垂直な第二方向においてセンサを走査させるように移動機構１５を制御し第二マッピングデータを取得する第二走査制御部５２と、第一マッピングデータ及び第二マッピングデータに基づいてワークＷの傾斜を検出する傾斜検出部５５と、を備える。
【００５４】
第一位置又は第二位置の一方のみを用いた場合、第一位置又は第二位置の当該一方においては複数のワークＷが重なって一つのワークＷとして誤検出されるおそれがある。これに対し、本開示のロボットシステム１によれば、互いに異なる第一位置及び第二位置におけるマッピングデータに基づいてワークＷの傾斜を検出する。このため、ワークＷの傾斜をより確実に検出することができる。
【００５５】
第二方向は、カセット３０に対してハンド２１がワークＷを出し入れする方向であってもよい。この場合、カセット３０に対してハンド２１がワークＷを出し入れする方向（カセットの奥行き方向）におけるワークＷの傾斜を検出できる。
【００５６】
ロボットシステム１は、カセット３０におけるワークＷの収容予定位置に対してずれた異常値が第一マッピングデータ及び第二マッピングデータの少なくとも一方に含まれていることを検出する異常値検出部５４を更に備えていてもよい。傾斜検出部５５は、第一マッピングデータ及び第二マッピングデータの少なくとも一方が異常値を含んでいる場合に、当該異常値に基づいて傾斜を検出してもよい。ワークＷが傾斜している場合、第一マッピングデータ及び第二マッピングデータの少なくとも一方には異常値が含まれることとなる。従って、異常値に基づくことでワークＷの傾斜をより確実に検出できる。
【００５７】
第二方向は、カセット３０に対してハンド２１がワークＷを出し入れする方向であり、異常値検出部５４は、第一マッピングデータと第二マッピングデータとを照合し、第一マッピングデータと第二マッピングデータとの差に基づいて異常値を検出してもよい。ワークＷが傾斜している場合、第一マッピングデータ及び第二マッピングデータの間の差は大きくなる。従って、第一マッピングデータと第二マッピングデータとの差に基づき検出を行うことにより、ワークＷの傾斜をより確実に検出できる。
【００５８】
傾斜検出部５５は、ワークＷの傾斜を検出した場合に当該ワークＷの傾斜角度を更に検出してもよい。この場合、ワークＷの傾斜状態を定量的に検出することができる。
【００５９】
傾斜検出部５５は、第一マッピングデータ又は第二マッピングデータのいずれか一方が異常値を含んでいる場合に、第一マッピングデータ又は第二マッピングデータの他方に含まれる値のうち異常値に最も近い値と当該異常値とに基づいてワークＷの傾斜角度を検出してもよい。ワークＷ同士が交差することはないので、第一マッピングデータ又は第二マッピングデータの一方において異常値を示したワークＷは、第一マッピングデータ及び第二マッピングデータの他方において異常値に最も近い値を示している可能性が高い。そこで、上記の構成によれば、どのワークＷが傾斜しているかを容易に特定し、当該ワークＷについて傾斜角度を検出することができる。
【００６０】
傾斜検出部は、ワークＷの傾斜角度と、ワークＷの収容予定位置同士の間隔とに基づいて、当該ワークＷが複数段の収容予定位置に亘っているか否かを検出してもよい。複数段の収容予定位置に亘って傾いたワークＷに隣接する空間にハンド２１を挿入する場合、ハンド２１がワークＷを破損する可能性が高い。このため、傾斜したワークＷが複数段の収容予定位置に亘っているか否かを検出することで、ワークＷの破損防止に更に有益な情報を得ることができる。
【００６１】
ロボットシステム１は、傾斜検出部５５による検出結果に基づいて、傾斜したワークに隣接する空間へのハンド２１の進入可否を判定する進入可否判定部５６を更に備えてもよい。この場合、進入可否判定部５６によりハンド２１の進入の可否が判定されるため、ワークＷが傾斜している場合に、傾斜したワークＷにハンド２１が衝突してワークＷを破損することを防止できる。
【００６２】
以上、実施形態について説明したが、本発明は必ずしも上述した実施形態に限定されるものではなく、その要旨を逸脱しない範囲で様々な変更が可能である。例えば、ロボット１０において、ワークＷを移載するためのハンドと、センサ２２を有するハンドとを別個のハンドとしてもよい。
【００６３】
また、上述した移動機構１５は、一例にすぎず、ハンド２１をカセット３０に対して出し入れすることができる機構であれば、どのような機構であってもよい。例えば、ロボット１０を、より多関節のロボット、又は垂直多関節型ロボットとしてもよい。また、ロボットシステム１は、ハンド２１を移動させる移動機構１５に代えて、カセット３０を移動させる機構を備えていてもよい。例えば、ロボットシステム１が、カセット３０を鉛直方向に昇降させるエレベータを備え、ロボット１０及びカセット３０により移動機構１５が構成されていてもよい。
【００６４】
また、図５に示した処理において、ステップＳ１５の判定処理を省略し、全ての第１マッピングデータと第２マッピングデータとの組合せに基づいて、全てのワークＷについて傾斜角度を計算するようにしてもよい。
【００６５】
また、ハンド２１に、ワークＷのカセット３０への出し入れ方向に離間した二組のセンサ２２を設けてもよい。この場合、第一走査制御部５１及び第二走査制御部５２を統合して、二組のセンサ２２の一方を第一位置に配置するとともに他方を第二位置に配置し、カセット３０におけるワークＷの配列方向において二組のセンサ２２を走査させるように移動機構１５を制御して、センサ２２の一方により第一マッピングデータを取得するとともにセンサ２２の他方により第二マッピングデータを取得する一つの制御部としてもよい。この場合には、一度の走査により第一マッピングデータ及び第二マッピングデータの両方を取得できるため、傾斜検出をより短時間に行うことができる。
【産業上の利用可能性】
【００６６】
本開示は、ワークの傾斜検出に利用可能である。
【符号の説明】
【００６７】
１…ロボットシステム、１５…移動機構、２１…ハンド、２２…センサ、３０…カセット、５１…第一走査制御部、５２…第二走査制御部、５４…異常値検出部、５５…傾斜検出部、５６…進入可否判定部、Ｗ…ワーク。
【図１】
2016194219.tif 000003
【図２】
2016194219.tif 000004
【図３】
2016194219.tif 000005
【図４】
2016194219.tif 000006
【図５】
2016194219.tif 000007
【図６】
2016194219.tif 000008
【図７】
2016194219.tif 000009
【手続補正書】
【提出日】平成29年11月2日(2017.11.2)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】００１９
【補正方法】変更
【補正の内容】
【００１９】
コントローラ５０は、ハンド２１を用いてワークＷをカセット３０に出し入れするようにロボット１０を制御する。また、コントローラ５０は、第一位置にセンサ２２を配置し、第一方向においてセンサ２２を走査させ、第一方向におけるワークＷの配置を示す第一マッピングデータを取得することと、第二位置にセンサ２２を配置し、第一方向においてセンサ２２を走査させ、第一方向におけるワークＷの配置を示す第二マッピングデータを取得することと、第一マッピングデータ及び第二マッピングデータに基づいてワークＷの傾斜を検出することと、を実行する。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００２５
【補正方法】変更
【補正の内容】
【００２５】
Ｚ軸方向においてセンサ２２を走査させるとは、Ｚ軸に直交する方向（例えばＸ軸方向又はＹ軸方向）におけるセンサ２２の位置を変更しない状態で、センサ２２のカセット３０に対する相対的な位置をＺ軸方向に沿って移動させて、カセット３０の少なくとも一部のスロットにおけるワークＷの有無を検出することを意味する。センサ２２のカセット３０に対する相対的な位置を移動させる際には、カセット３０を静止させた状態でセンサ２２を移動させてもよく、センサ２２を静止させた状態でカセット３０を移動させてもよい。センサ２２のカセット３０に対する相対的な位置の移動方向は上向きであっても下向きであってもよい。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００３８
【補正方法】変更
【補正の内容】
【００３８】
次に、コントローラ５０は、以下のステップＳ１５〜Ｓ１７を実行することにより、第一マッピングデータ及び第二マッピングデータに基づいてワークＷの傾斜を検出する。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００４１
【補正方法】変更
【補正の内容】
【００４１】
ステップＳ１５において、第一マッピングデータ及び第二マッピングデータに異常値が含まれていなければ、コントローラ５０は、ステップＳ１６〜Ｓ１７を実行せずに一連の処理を終了する。第一マッピングデータ及び第二マッピングデータに異常値が含まれていれば、コントローラ５０は、ステップＳ１６を実行する。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００５２
【補正方法】変更
【補正の内容】
【００５２】
以上で傾斜検出方法に係る一連の処理が終了する。以後、検出されたワークＷの傾斜状態に応じて、必要な処理が行われる。例えば、コントローラ５０は、ステップＳ１７でハンド２１の進入が不可と判定された部分へのハンドの進入を行わないようにして、ワークＷの搬送作業を実行するようにロボット１０を制御してもよい。また、カセット３０においてワークＷが傾斜していると判定された場合に、人の手又は他のロボット等によりワークＷを水平な状態に収容し直してもよい。なお、この一連の処理は、ロボット１０がハンド２１をカセット３０に挿入する度に毎回実行されてもよく、必要に応じたタイミングでのみ実行されてもよい。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００５３
【補正方法】変更
【補正の内容】
【００５３】
以上に説明したように、ロボットシステム１は、カセット３０に対してワークＷを出し入れするためのハンド２１と、ワークＷを検出するセンサ２２と、センサ２２とカセット３０との相対的な位置を変更する移動機構１５と、第一位置にセンサ２２を配置し、第一方向としてのＺ軸方向においてセンサを走査させるように移動機構１５を制御し第一マッピングデータを取得する第一走査制御部５１と、第二位置にセンサ２２を配置し、第一方向においてセンサを走査させるように移動機構１５を制御し第二マッピングデータを取得する第二走査制御部５２と、第一マッピングデータ及び第二マッピングデータに基づいてワークＷの傾斜を検出する傾斜検出部５５と、を備える。
【国際調査報告】
2016194219.tif 000010
2016194219.tif 000011
2016194219.tif 000012
2016194219.tif 000013