特許第6230122号(P6230122)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 独立行政法人産業技術総合研究所の特許一覧 ▶ トヨタ自動車株式会社の特許一覧

<>
  • 特許6230122-ロボット制御装置及びロボット制御方法 図000002
  • 特許6230122-ロボット制御装置及びロボット制御方法 図000003
  • 特許6230122-ロボット制御装置及びロボット制御方法 図000004
  • 特許6230122-ロボット制御装置及びロボット制御方法 図000005
  • 特許6230122-ロボット制御装置及びロボット制御方法 図000006
  • 特許6230122-ロボット制御装置及びロボット制御方法 図000007
  • 特許6230122-ロボット制御装置及びロボット制御方法 図000008
  • 特許6230122-ロボット制御装置及びロボット制御方法 図000009
  • 特許6230122-ロボット制御装置及びロボット制御方法 図000010
  • 特許6230122-ロボット制御装置及びロボット制御方法 図000011
  • 特許6230122-ロボット制御装置及びロボット制御方法 図000012
  • 特許6230122-ロボット制御装置及びロボット制御方法 図000013
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6230122
(24)【登録日】2017年10月27日
(45)【発行日】2017年11月15日
(54)【発明の名称】ロボット制御装置及びロボット制御方法
(51)【国際特許分類】
   B25J 13/00 20060101AFI20171106BHJP
【FI】
   B25J13/00 Z
【請求項の数】10
【全頁数】15
(21)【出願番号】特願2014-105986(P2014-105986)
(22)【出願日】2014年5月22日
(65)【公開番号】特開2015-221463(P2015-221463A)
(43)【公開日】2015年12月10日
【審査請求日】2016年7月1日
(73)【特許権者】
【識別番号】301021533
【氏名又は名称】国立研究開発法人産業技術総合研究所
(73)【特許権者】
【識別番号】000003207
【氏名又は名称】トヨタ自動車株式会社
(74)【代理人】
【識別番号】100103894
【弁理士】
【氏名又は名称】家入 健
(72)【発明者】
【氏名】原田 研介
(72)【発明者】
【氏名】辻 徳生
(72)【発明者】
【氏名】永田 和之
(72)【発明者】
【氏名】音田 弘
(72)【発明者】
【氏名】河井 良浩
(72)【発明者】
【氏名】菊地 宏平
【審査官】 臼井 卓巳
(56)【参考文献】
【文献】 特開昭63−267189(JP,A)
【文献】 特開2005−088164(JP,A)
【文献】 特開2013−132707(JP,A)
【文献】 米国特許第05675229(US,A)
(58)【調査した分野】(Int.Cl.,DB名)
B25J 9/18−19/00
(57)【特許請求の範囲】
【請求項1】
ロボットが、四隅を有する矩形状の収容箱に収容された把持対象物を把持することが可能な自己位置を推奨位置として求める、ロボット制御装置であって、
前記収容箱内の中央に位置する前記把持対象物を把持可能となるような前記ロボットの位置である中央位置を求め、
前記収容箱内の隅に位置する前記把持対象物を把持可能となるような前記ロボットの位置のうち最も前記中央位置に近い位置である隅位置を四隅分、求め、
前記4つの隅位置の平均値としての平均隅位置を演算し、
前記ロボットが前記平均隅位置に位置した場合に、前記ロボットが前記収容箱内の四隅に位置する前記把持対象物のすべてを把持可能か判定し、
前記ロボットが前記平均隅位置に位置した場合に、前記ロボットが前記収容箱内の四隅に位置する前記把持対象物のすべてを把持可能であると判定した場合、前記平均隅位置を前記推奨位置に決定する、
ロボット制御装置。
【請求項2】
請求項1に記載のロボット制御装置であって、
前記ロボットが前記平均隅位置に位置した場合に、前記ロボットが前記収容箱内の四隅に位置する前記把持対象物の何れかを把持可能でないと判定した場合、把持可能でないと判定された前記把持対象物に対応する把持不能位置に前記ロボットが位置した場合に、前記ロボットが前記収容箱内の四隅に位置する前記把持対象物のすべてを把持可能か判定し、
前記ロボットが前記収容箱内の四隅に位置する前記把持対象物のすべてを把持可能であると判定した場合、前記把持不能位置を前記推奨位置に決定する、
ロボット制御装置。
【請求項3】
請求項2に記載のロボット制御装置であって、
前記把持不能位置に前記ロボットが位置した場合に、前記ロボットが前記収容箱内の四隅に位置する前記把持対象物の何れかを把持可能でないと判定した場合、前記平均隅位置と、前記把持不能位置と、の間の位置であって、前記収容箱内の四隅に位置する前記把持対象物のうち前記ロボットが把持可能となる前記把持対象物の数が最大となるような位置を探索し、そのときの位置を前記推奨位置に決定する、
ロボット制御装置。
【請求項4】
請求項1に記載のロボット制御装置であって、
前記ロボットが前記平均隅位置に位置した場合に、前記ロボットが前記収容箱内の四隅に位置する前記把持対象物の何れか複数の把持対象物を把持可能でないと判定した場合、把持可能でないと判定された前記把持対象物に対応する複数の把持不能位置の平均値である平均把持不能位置に前記ロボットが位置した場合に、前記ロボットが前記収容箱内の四隅に位置する前記把持対象物のすべてを把持可能か判定し、
前記ロボットが前記収容箱内の四隅に位置する前記把持対象物のすべてを把持可能であると判定した場合、前記平均把持不能位置を前記推奨位置に決定する、
ロボット制御装置。
【請求項5】
請求項4に記載のロボット制御装置であって、
前記平均把持不能位置に前記ロボットが位置した場合に、前記ロボットが前記収容箱内の四隅に位置する前記把持対象物の何れかを把持可能でないと判定した場合、前記平均隅位置と、前記平均把持不能位置と、の間の位置であって、前記収容箱内の四隅に位置する前記把持対象物のうち前記ロボットが把持可能となる前記把持対象物の数が最大となるような位置を探索し、そのときの位置を前記推奨位置に決定する、
ロボット制御装置。
【請求項6】
ロボットが、四隅を有する矩形状の収容箱に収容された把持対象物を把持することが可能な自己位置を推奨位置として求める、ロボット制御方法であって、
前記収容箱内の中央に位置する前記把持対象物を把持可能となるような前記ロボットの位置である中央位置を求め、
前記収容箱内の隅に位置する前記把持対象物を把持可能となるような前記ロボットの位置のうち最も前記中央位置に近い位置である隅位置を四隅分、求め、
前記4つの隅位置の平均値としての平均隅位置を演算し、
前記ロボットが前記平均隅位置に位置した場合に、前記ロボットが前記収容箱内の四隅に位置する前記把持対象物のすべてを把持可能か判定し、
前記ロボットが前記平均隅位置に位置した場合に、前記ロボットが前記収容箱内の四隅に位置する前記把持対象物のすべてを把持可能であると判定した場合、前記平均隅位置を前記推奨位置に決定する、
ロボット制御方法。
【請求項7】
請求項6に記載のロボット制御方法であって、
前記ロボットが前記平均隅位置に位置した場合に、前記ロボットが前記収容箱内の四隅に位置する前記把持対象物の何れかを把持可能でないと判定した場合、把持可能でないと判定された前記把持対象物に対応する把持不能位置に前記ロボットが位置した場合に、前記ロボットが前記収容箱内の四隅に位置する前記把持対象物のすべてを把持可能か判定し、
前記ロボットが前記収容箱内の四隅に位置する前記把持対象物のすべてを把持可能であると判定した場合、前記把持不能位置を前記推奨位置に決定する、
ロボット制御方法。
【請求項8】
請求項7に記載のロボット制御方法であって、
前記把持不能位置に前記ロボットが位置した場合に、前記ロボットが前記収容箱内の四隅に位置する前記把持対象物の何れかを把持可能でないと判定した場合、前記平均隅位置と、前記把持不能位置と、の間の位置であって、前記収容箱内の四隅に位置する前記把持対象物のうち前記ロボットが把持可能となる前記把持対象物の数が最大となるような位置を探索し、そのときの位置を前記推奨位置に決定する、
ロボット制御方法。
【請求項9】
請求項6に記載のロボット制御方法であって、
前記ロボットが前記平均隅位置に位置した場合に、前記ロボットが前記収容箱内の四隅に位置する前記把持対象物の何れか複数の把持対象物を把持可能でないと判定した場合、把持可能でないと判定された前記把持対象物に対応する複数の把持不能位置の平均値である平均把持不能位置に前記ロボットが位置した場合に、前記ロボットが前記収容箱内の四隅に位置する前記把持対象物のすべてを把持可能か判定し、
前記ロボットが前記収容箱内の四隅に位置する前記把持対象物のすべてを把持可能であると判定した場合、前記平均把持不能位置を前記推奨位置に決定する、
ロボット制御方法。
【請求項10】
請求項9に記載のロボット制御方法であって、
前記平均把持不能位置に前記ロボットが位置した場合に、前記ロボットが前記収容箱内の四隅に位置する前記把持対象物の何れかを把持可能でないと判定した場合、前記平均隅位置と、前記平均把持不能位置と、の間の位置であって、前記収容箱内の四隅に位置する前記把持対象物のうち前記ロボットが把持可能となる前記把持対象物の数が最大となるような位置を探索し、そのときの位置を前記推奨位置に決定する、
ロボット制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ロボット制御装置及びロボット制御方法に関する。
【背景技術】
【0002】
特許文献1は、ステレオカメラを用いて対象物を認識し、認識した対象物を把持する移動型ロボットを開示している。
【0003】
非特許文献1は、ワークを把持するのに適したロボットの位置を逆運動学を解いて求める技術を開示している。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2011―44046号公報
【非特許文献1】”Efficient Inverse Kinematics Computation based on Reachability Analysis”, Nikolaus Vahrenkamp, International Journal of Humanoid Robotics, Vol. 9(4), 2012
【発明の概要】
【発明が解決しようとする課題】
【0005】
以下、ワークを収容した収容箱がロボットから離れた位置に置かれており、ロボットがワークを取りに行く場面を想定する。この場合、単にロボットが収容箱の前まで移動しただけでは、ロボットがワークを収容箱から取り出せるとは限らない。なぜなら、例えば、ワークが収容箱内の手前側左隅にある場合は、アームが収容箱と干渉し易くワークを把持し難いからである。そして、ワークを把持できないと判断した場合、ロボットは、ワークを把持するのに適した位置へと移動し直す。従って、ワークを収容した収容箱がロボットから離れた位置に置かれており、ワークが収容箱内のどこにあるかが未知である場合、ロボットは、ワークを収容箱から取り出すために、2度、移動しなければならない場合があった。
【0006】
ところで、ロボットは低速でしか移動できず、ロボットがワークを収容箱から取り出すために2度も移動しなければならないとすると、ワーク取り出しのサイクルタイム(作業時間)が長くなってしまう。
【0007】
そこで、本発明の目的は、収容箱がロボットから離れた位置に置かれており、把持対象物が収容箱内のどこにあるかが未知である場合であっても、ロボットが、1度の移動だけで、収容箱内の把持対象物を高い確率で把持できるようにするための技術を提供することにある。
【課題を解決するための手段】
【0008】
本願発明の第1の観点によれば、ロボットが収容箱に収容された把持対象物を把持することが可能な自己位置を推奨位置として求める、ロボット制御装置であって、前記収容箱内の中央に位置する前記把持対象物を把持可能となるような前記ロボットの位置である中央位置を求め、前記収容箱内の隅に位置する前記把持対象物を把持可能となるような前記ロボットの位置のうち最も前記中央位置に近い位置である隅位置を四隅分、求め、前記4つの隅位置の平均値としての平均隅位置を演算し、前記ロボットが前記平均隅位置に位置した場合に、前記ロボットが前記収容箱内の四隅に位置する前記把持対象物のすべてを把持可能か判定し、前記ロボットが前記平均隅位置に位置した場合に、前記ロボットが前記収容箱内の四隅に位置する前記把持対象物のすべてを把持可能であると判定した場合、前記平均隅位置を前記推奨位置に決定する、ロボット制御装置が提供される。以上の構成によれば、前記ロボットが前記推奨位置へ移動するだけで、前記ロボットは、前記収容箱内の四隅に位置する前記把持対象物のすべてを把持可能となる。従って、前記収容箱が前記ロボットから離れた位置に置かれており、前記把持対象物が前記収容箱内のどこにあるかが未知である場合であっても、ロボットは、1度の移動だけで、前記収容箱内の前記把持対象物を高い確率で把持することができるようになり、もって、サイクルタイムの短縮に寄与する。
【0009】
前記ロボットが前記平均隅位置に位置した場合に、前記ロボットが前記収容箱内の四隅に位置する前記把持対象物の何れかを把持可能でないと判定した場合、把持可能でないと判定された前記把持対象物に対応する把持不能位置に前記ロボットが位置した場合に、前記ロボットが前記収容箱内の四隅に位置する前記把持対象物のすべてを把持可能か判定し、前記ロボットが前記収容箱内の四隅に位置する前記把持対象物のすべてを把持可能であると判定した場合、前記把持不能位置を前記推奨位置に決定する。以上の構成によれば、前記ロボットが前記推奨位置へ移動するだけで、前記ロボットは、前記収容箱内の四隅に位置する前記把持対象物のすべてを把持可能となる。従って、前記収容箱が前記ロボットから離れた位置に置かれており、前記把持対象物が前記収容箱内のどこにあるかが未知である場合であっても、ロボットは、1度の移動だけで、前記収容箱内の前記把持対象物を高い確率で把持することができるようになり、もって、サイクルタイムの短縮に寄与する。
【0010】
前記把持不能位置に前記ロボットが位置した場合に、前記ロボットが前記収容箱内の四隅に位置する前記把持対象物の何れかを把持可能でないと判定した場合、前記平均隅位置と、前記把持不能位置と、の間の位置であって、前記収容箱内の四隅に位置する前記把持対象物のうち前記ロボットが把持可能となる前記把持対象物の数が最大となるような位置を探索し、そのときの位置を前記推奨位置に決定する。以上の構成によれば、前記ロボットが前記推奨位置へ移動した際の、前記ロボットが前記把持対象物を把持可能となる確率が最大化される。
【0011】
前記ロボットが前記平均隅位置に位置した場合に、前記ロボットが前記収容箱内の四隅に位置する前記把持対象物の何れか複数の把持対象物を把持可能でないと判定した場合、把持可能でないと判定された前記把持対象物に対応する複数の把持不能位置の平均値である平均把持不能位置に前記ロボットが位置した場合に、前記ロボットが前記収容箱内の四隅に位置する前記把持対象物のすべてを把持可能か判定し、前記ロボットが前記収容箱内の四隅に位置する前記把持対象物のすべてを把持可能であると判定した場合、前記平均把持不能位置を前記推奨位置に決定する。以上の構成によれば、前記ロボットが前記推奨位置へ移動するだけで、前記ロボットは、前記収容箱内の四隅に位置する前記把持対象物のすべてを把持可能となる。従って、前記収容箱が前記ロボットから離れた位置に置かれており、前記把持対象物が前記収容箱内のどこにあるかが未知である場合であっても、ロボットは、1度の移動だけで、前記収容箱内の前記把持対象物を高い確率で把持することができるようになり、もって、サイクルタイムの短縮に寄与する。
【0012】
前記平均把持不能位置に前記ロボットが位置した場合に、前記ロボットが前記収容箱内の四隅に位置する前記把持対象物の何れかを把持可能でないと判定した場合、前記平均隅位置と、前記平均把持不能位置と、の間の位置であって、前記収容箱内の四隅に位置する前記把持対象物のうち前記ロボットが把持可能となる前記把持対象物の数が最大となるような位置を探索し、そのときの位置を前記推奨位置に決定する。以上の構成によれば、前記ロボットが前記推奨位置へ移動した際の、前記ロボットが前記把持対象物を把持可能となる確率が最大化される。
【0013】
本願発明の第2の観点によれば、ロボットが収容箱に収容された把持対象物を把持することが可能な自己位置を推奨位置として求める、ロボット制御方法であって、前記収容箱内の中央に位置する前記把持対象物を把持可能となるような前記ロボットの位置である中央位置を求め、前記収容箱内の隅に位置する前記把持対象物を把持可能となるような前記ロボットの位置のうち最も前記中央位置に近い位置である隅位置を四隅分、求め、前記4つの隅位置の平均値としての平均隅位置を演算し、前記ロボットが前記平均隅位置に位置した場合に、前記ロボットが前記収容箱内の四隅に位置する前記把持対象物のすべてを把持可能か判定し、前記ロボットが前記平均隅位置に位置した場合に、前記ロボットが前記収容箱内の四隅に位置する前記把持対象物のすべてを把持可能であると判定した場合、前記平均隅位置を前記推奨位置に決定する、ロボット制御方法が提供される。以上の方法によれば、前記ロボットが前記推奨位置へ移動するだけで、前記ロボットは、前記収容箱内の四隅に位置する前記把持対象物のすべてを把持可能となる。従って、前記収容箱が前記ロボットから離れた位置に置かれており、前記把持対象物が前記収容箱内のどこにあるかが未知である場合であっても、ロボットは、1度の移動だけで、前記収容箱内の前記把持対象物を高い確率で把持することができるようになり、もって、サイクルタイムの短縮に寄与する。
【0014】
前記ロボットが前記平均隅位置に位置した場合に、前記ロボットが前記収容箱内の四隅に位置する前記把持対象物の何れかを把持可能でないと判定した場合、把持可能でないと判定された前記把持対象物に対応する把持不能位置に前記ロボットが位置した場合に、前記ロボットが前記収容箱内の四隅に位置する前記把持対象物のすべてを把持可能か判定し、前記ロボットが前記収容箱内の四隅に位置する前記把持対象物のすべてを把持可能であると判定した場合、前記把持不能位置を前記推奨位置に決定する。以上の方法によれば、前記ロボットが前記推奨位置へ移動するだけで、前記ロボットは、前記収容箱内の四隅に位置する前記把持対象物のすべてを把持可能となる。従って、前記収容箱が前記ロボットから離れた位置に置かれており、前記把持対象物が前記収容箱内のどこにあるかが未知である場合であっても、ロボットは、1度の移動だけで、前記収容箱内の前記把持対象物を高い確率で把持することができるようになり、もって、サイクルタイムの短縮に寄与する。
【0015】
前記把持不能位置に前記ロボットが位置した場合に、前記ロボットが前記収容箱内の四隅に位置する前記把持対象物の何れかを把持可能でないと判定した場合、前記平均隅位置と、前記把持不能位置と、の間の位置であって、前記収容箱内の四隅に位置する前記把持対象物のうち前記ロボットが把持可能となる前記把持対象物の数が最大となるような位置を探索し、そのときの位置を前記推奨位置に決定する。以上の方法によれば、前記ロボットが前記推奨位置へ移動した際の、前記ロボットが前記把持対象物を把持可能となる確率が最大化される。
【0016】
前記ロボットが前記平均隅位置に位置した場合に、前記ロボットが前記収容箱内の四隅に位置する前記把持対象物の何れか複数の把持対象物を把持可能でないと判定した場合、把持可能でないと判定された前記把持対象物に対応する複数の把持不能位置の平均値である平均把持不能位置に前記ロボットが位置した場合に、前記ロボットが前記収容箱内の四隅に位置する前記把持対象物のすべてを把持可能か判定し、前記ロボットが前記収容箱内の四隅に位置する前記把持対象物のすべてを把持可能であると判定した場合、前記平均把持不能位置を前記推奨位置に決定する。以上の方法によれば、前記ロボットが前記推奨位置へ移動するだけで、前記ロボットは、前記収容箱内の四隅に位置する前記把持対象物のすべてを把持可能となる。従って、前記収容箱が前記ロボットから離れた位置に置かれており、前記把持対象物が前記収容箱内のどこにあるかが未知である場合であっても、ロボットは、1度の移動だけで、前記収容箱内の前記把持対象物を高い確率で把持することができるようになり、もって、サイクルタイムの短縮に寄与する。
【0017】
前記平均把持不能位置に前記ロボットが位置した場合に、前記ロボットが前記収容箱内の四隅に位置する前記把持対象物の何れかを把持可能でないと判定した場合、前記平均隅位置と、前記平均把持不能位置と、の間の位置であって、前記収容箱内の四隅に位置する前記把持対象物のうち前記ロボットが把持可能となる前記把持対象物の数が最大となるような位置を探索し、そのときの位置を前記推奨位置に決定する。以上の方法によれば、前記ロボットが前記推奨位置へ移動した際の、前記ロボットが前記把持対象物を把持可能となる確率が最大化される。
【発明の効果】
【0018】
本発明によれば、前記ロボットが前記推奨位置へ移動するだけで、前記ロボットは、前記収容箱内の四隅に位置する前記把持対象物のすべてを把持可能となる。従って、前記収容箱が前記ロボットから離れた位置に置かれており、前記把持対象物が前記収容箱内のどこにあるかが未知である場合であっても、ロボットは、1度の移動だけで、前記収容箱内の前記把持対象物を高い確率で把持することができるようになり、もって、サイクルタイムの短縮に寄与する。
【図面の簡単な説明】
【0019】
図1】移動ロボットが部品棚に部品を取りに行く様子を示す斜視図である。
図2】ロボット制御装置の制御フローである。
図3】ロボット制御装置の制御フローである。
図4】ロボット制御装置の制御フローである。
図5】部品棚に並べられた部品箱を平面視で描いた図であって、中央位置を丸印で描いている。
図6】部品棚に並べられた部品箱を平面視で描いた図であって、左上隅位置を丸印で描いている。
図7】部品棚に並べられた部品箱を平面視で描いた図であって、左下隅位置を丸印で描いている。
図8】部品棚に並べられた部品箱を平面視で描いた図であって、右上隅位置を丸印で描いている。
図9】部品棚に並べられた部品箱を平面視で描いた図であって、右下隅位置を丸印で描いている。
図10】部品棚に並べられた部品箱を平面視で描いた図であって、平均隅位置を丸印で描いている。
図11】部品棚に並べられた部品箱を平面視で描いた図であって、2分探索を直線でイメージしたものである。
図12】部品棚に並べられた部品箱を平面視で描いた図であって、2分探索を直線でイメージしたものである。
【発明を実施するための形態】
【0020】
以下、本発明の好適な実施形態を説明する。図1には、例えば四輪自動車や二輪自動車などの輸送機器の製造工場の一部を示している。図1に示すように、昨今の製造工場では、製造ラインへ所望の部品w(把持対象物)を供給するのに移動ロボット1を活用している。即ち、部品wは種別ごとに異なる部品箱2(収容箱)に収容されており、複数の部品箱2は部品棚3に若干通路側に傾けた状態で並べられている。図1に示すように、複数の部品箱2は、夫々、異なる形状及び異なるサイズを有している。
【0021】
移動ロボット1は、ロボット制御装置4(推奨位置探索装置、推奨目的地探索装置)から部品搬送指令を受信すると、二点鎖線で示すように、所望の部品wが収容されている部品箱2の正面へと移動して停止し、ピックアップアーム5を操作することで部品wを把持し、把持した部品wを部品箱2から取り出して製造ラインへと搬送する。
【0022】
以下、本明細書では、移動ロボット1がロボット制御装置4から部品搬送指令を受信して、所望の部品wが収容されている部品箱2の正面へと移動して停止し、撮像装置等で部品wを認識した際に、更なる移動をすることなくその場で部品wの把持が可能となる移動ロボット1の自己位置(目的地)を推奨位置(推奨目的地)として探索する技術について詳細に説明する。なお、部品wが部品箱2内において具体的にどのような姿勢でどの位置に収容されているかは全く未知であるとする。また、移動ロボット1の自己位置、移動ロボット1の推奨位置、移動ロボット1の位置とあるのは、何れも、移動ロボット1の台車の位置に関するものである。
【0023】
図2図4には、ロボット制御装置4の推奨位置探索フローを示している。図2に示すように、先ず、作業者が、部品箱2を部品棚3に置き、部品棚3に置いた部品箱2の部品箱データをロボット制御装置4に入力する(S100)。ここで、部品箱データとは、部品箱の形状、座標、傾斜角を含むデータである。
【0024】
部品箱データがロボット制御装置4に入力されると(S100:YES)、ロボット制御装置4は、図5に示すように、中央位置6を演算する(S110)。図5は、部品棚3に傾斜して置かれた部品箱2を平面視で描いている。中央位置6は、部品箱2の中央に部品wが位置すると仮定した場合の、部品箱2の中央に位置する部品wを把持可能となるような移動ロボット1の位置を意味する。中央位置6は、二次元座標として表される。中央位置6は、無数に存在する。ロボット制御装置4は、なるべくピックアップアーム5の各関節角が作動範囲の中央値となるように、中央位置6を演算する。
【0025】
次に、ロボット制御装置4は、図6に示すように、左上隅位置7aを演算する(S120)。左上隅位置7aは、部品箱2の左上隅に部品wが位置すると仮定した場合の、部品箱2の左上隅に位置する部品wを把持可能となるような移動ロボット1の位置を意味する。左上隅位置7aは、二次元座標として表される。左上隅位置7aは、無数に存在する。ロボット制御装置4は、無数に存在する左上隅位置7aのうち最も中央位置6に近い左上隅位置7aを選択する。換言すれば、ロボット制御装置4は、中央位置6を初期値として、左上隅位置7aを演算する。
【0026】
同様に、ロボット制御装置4は、図7に示すように、左下隅位置7bを演算する(S130)。左下隅位置7bは、部品箱2の左下隅に部品wが位置すると仮定した場合の、部品箱2の左下隅に位置する部品wを把持可能となるような移動ロボット1の位置を意味する。左下隅位置7bは、二次元座標として表される。左下隅位置7bは、無数に存在する。ロボット制御装置4は、無数に存在する左下隅位置7bのうち最も中央位置6に近い左下隅位置7bを選択する。換言すれば、ロボット制御装置4は、中央位置6を初期値として、左下隅位置7bを演算する。
【0027】
同様に、ロボット制御装置4は、図8に示すように、右上隅位置7cを演算する(S140)。右上隅位置7cは、部品箱2の右上隅に部品wが位置すると仮定した場合の、部品箱2の右上隅に位置する部品wを把持可能となるような移動ロボット1の位置を意味する。右上隅位置7cは、二次元座標として表される。右上隅位置7cは、無数に存在する。ロボット制御装置4は、無数に存在する右上隅位置7cのうち最も中央位置6に近い右上隅位置7cを選択する。換言すれば、ロボット制御装置4は、中央位置6を初期値として、右上隅位置7cを演算する。
【0028】
同様に、ロボット制御装置4は、図9に示すように、右下隅位置7dを演算する(S150)。右下隅位置7dは、部品箱2の右下隅に部品wが位置すると仮定した場合の、部品箱2の右下隅に位置する部品wを把持可能となるような移動ロボット1の位置を意味する。右下隅位置7dは、二次元座標として表される。右下隅位置7dは、無数に存在する。ロボット制御装置4は、無数に存在する右下隅位置7dのうち最も中央位置6に近い右下隅位置7dを選択する。換言すれば、ロボット制御装置4は、中央位置6を初期値として、右下隅位置7dを演算する。
【0029】
次に、ロボット制御装置4は、図10に示すように、平均隅位置8を演算する(S160)。平均隅位置8は、左上隅位置7a及び左下隅位置7b、右上隅位置7c、右下隅位置7dを単純平均したものである。平均隅位置8は、二次元座標として表される。
【0030】
次に、ロボット制御装置4は、部品箱2内の四隅の夫々に部品wが位置していると仮定して、移動ロボット1が平均隅位置8に位置した場合に、移動ロボット1が部品箱2内の四隅に位置する部品wのすべてを把持可能か判定する(S170)。
【0031】
そして、移動ロボット1が平均隅位置8に位置した場合に、移動ロボット1が部品箱2内の四隅に位置する部品wのすべてを把持可能であると判定した場合(S170:YES)、ロボット制御装置4は、平均隅位置8を推奨位置に決定し(S180)、処理を終える(S190)。ロボット制御装置4は、その後、移動ロボット1に対して、推奨位置に関する情報を含めた部品搬送指令を出力する。移動ロボット1は、ロボット制御装置4から部品搬送指令を受信すると、推奨位置へと移動して停止し、ピックアップアーム5を操作することで部品wを把持し、把持した部品wを部品箱2から取り出して製造ラインへと搬送する。
【0032】
S170で、移動ロボット1が平均隅位置8に位置した場合に、移動ロボット1が部品箱2内の四隅に位置する部品wの何れかを把持可能でないと判定した場合(S170:NO)、ロボット制御装置4は、部品箱2内の四隅に位置している4つの部品wのうち把持可能でない部品wの数が複数か判定する(S200)。部品箱2内の四隅に位置している4つの部品wのうち把持可能でない部品wの数が複数でないと判定した場合(S200:NO)、ロボット制御装置4は、把持可能でないと判定された部品wに対応する把持不能位置(左上隅位置7a、左下隅位置7b、右上隅位置7c、右下隅位置7dのうち何れか1つに相当する。)に移動ロボット1が位置した場合に、移動ロボット1が部品箱2内の四隅に位置する部品wのすべてを把持可能か判定する(S210)。把持可能でないと判定された部品wに対応する把持不能位置に移動ロボット1が位置した場合に、移動ロボット1が部品箱2内の四隅に位置する部品wのすべてを把持可能であると判定した場合(S210:YES)、ロボット制御装置4は、把持不能位置を推奨位置に決定し(S220)、処理を終える(S230)。その後の部品搬送指令等については、上述した内容と同じである。
【0033】
S210で、把持可能でないと判定された部品wに対応する把持不能位置に移動ロボット1が位置した場合に、移動ロボット1が部品箱2内の四隅に位置する部品wの何れかを把持可能でないと判定したら(S210:NO)、ロボット制御装置4は、平均隅位置8と把持不能位置の間で2分探索を実行する(S240)。具体的には、ロボット制御装置4は、平均隅位置8と把持不能位置との間の位置であって、部品箱2内の四隅に位置する部品wのうち移動ロボット1が把持可能となる部品wの数が最大となるような位置を2分探索により探索する(S240)。図11には、ロボット制御装置4が、平均隅位置8と、把持不能位置としての右上隅位置7cと、の間で2分探索を実行する様子を示している。そして、このように探索された位置を推奨位置に決定し(S250)、処理を終える(S260)。その後の部品搬送指令等については、上述した内容と同じである。
【0034】
S200で、部品箱2内の四隅に位置している4つの部品wのうち把持可能でない部品wの数が複数であると判定した場合(S200:YES)、ロボット制御装置4は、把持可能でないと判定された複数の部品wに対応する複数の把持不能位置(左上隅位置7a、左下隅位置7b、右上隅位置7c、右下隅位置7dのうち少なくとも2つ以上に相当する。)の平均値である平均把持不能位置を求め、平均把持不能位置に移動ロボット1が位置した場合に、移動ロボット1が部品箱2内の四隅に位置する部品wのすべてを把持可能か判定する(S300)。平均把持不能位置に移動ロボット1が位置した場合に、移動ロボット1が部品箱2内の四隅に位置する部品wのすべてを把持可能であると判定した場合(S300:YES)、ロボット制御装置4は、平均把持不能位置を推奨位置に決定し(S310)、処理を終える(S320)。その後の部品搬送指令等については、上述した内容と同じである。
【0035】
S300で、平均把持不能位置に移動ロボット1が位置した場合に、移動ロボット1が部品箱2内の四隅に位置する部品wの何れかを把持可能でないと判定したら(S300:NO)、ロボット制御装置4は、平均隅位置8と平均把持不能位置の間で2分探索を実行する(S330)。具体的には、ロボット制御装置4は、平均隅位置8と平均把持不能位置との間の位置であって、部品箱2内の四隅に位置する部品wのうち移動ロボット1が把持可能となる部品wの数が最大となるような位置を2分探索により探索する(S330)。図12には、平均把持不能位置9が左下隅位置7bと右下隅位置7dの平均値であって、ロボット制御装置4が、平均隅位置8と平均把持不能位置9の間で2分探索を実行する様子を示している。そして、このように探索された位置を推奨位置に決定し(S340)、処理を終える(S350)。その後の部品搬送指令等については、上述した内容と同じである。
【0036】
以上に、本発明の好適な実施形態を説明したが、上記実施形態は、以下の特長を有する。
【0037】
(1)ロボット制御装置4は、移動ロボット1(ロボット)が部品箱2(収容箱)に収容された部品w(把持対象物)を把持することが可能な自己位置を推奨位置として求めるものである。ロボット制御装置4は、部品箱2内の中央に位置する部品箱2を把持可能となるような移動ロボット1の位置である中央位置6を求める(S110)。ロボット制御装置4は、部品箱2内の隅に位置する部品箱2を把持可能となるような移動ロボット1の位置のうち最も中央位置6に近い位置である隅位置(左上隅位置7a、左下隅位置7b、右上隅位置7c、右下隅位置7d)を四隅分、求める(S120-S150)。ロボット制御装置4は、4つの隅位置(左上隅位置7a、左下隅位置7b、右上隅位置7c、右下隅位置7d)の平均値としての平均隅位置8を演算する(S160)。ロボット制御装置4は、移動ロボット1が平均隅位置8に位置した場合に、移動ロボット1が部品箱2内の四隅に位置する部品wのすべてを把持可能か判定する(S170)。ロボット制御装置4は、移動ロボット1が平均隅位置8に位置した場合に、移動ロボット1が部品箱2内の四隅に位置する部品wのすべてを把持可能であると判定した場合(S170:YES)、平均隅位置8を推奨位置に決定する(S180)。以上の構成によれば、移動ロボット1が推奨位置へ移動するだけで、移動ロボット1は、部品箱2内の四隅に位置する部品wのすべてを把持可能となる。従って、部品箱2が移動ロボット1から離れた位置に置かれており、部品wが部品箱2内のどこにあるかが未知である場合であっても、移動ロボット1は、1度の移動だけで、部品箱2内の部品wを高い確率で把持することができるようになり、もって、サイクルタイムの短縮に寄与する。
【0038】
(2)ロボット制御装置4は、移動ロボット1が平均隅位置8に位置した場合に、移動ロボット1が部品箱2内の四隅に位置する部品wの何れかを把持可能でないと判定した場合(S170:NO)、把持可能でないと判定された部品wに対応する把持不能位置に移動ロボット1が位置した場合に、移動ロボット1が部品箱2内の四隅に位置する部品wのすべてを把持可能か判定する(S210)。ロボット制御装置4は、移動ロボット1が部品w内の四隅に位置する部品wのすべてを把持可能であると判定した場合(S210:YES)、把持不能位置を推奨位置に決定する(S220)。以上の構成によれば、移動ロボット1が推奨位置へ移動するだけで、移動ロボット1は、部品箱2内の四隅に位置する部品wのすべてを把持可能となる。従って、部品箱2が移動ロボット1から離れた位置に置かれており、部品wが部品箱2内のどこにあるかが未知である場合であっても、移動ロボット1は、1度の移動だけで、部品箱2内の部品wを高い確率で把持することができるようになり、もって、サイクルタイムの短縮に寄与する。
【0039】
(3)ロボット制御装置4は、把持不能位置に移動ロボット1が位置した場合に、移動ロボット1が部品箱2内の四隅に位置する部品wの何れかを把持可能でないと判定した場合(S210:NO)、平均隅位置8と、把持不能位置と、の間の位置であって、部品箱2内の四隅に位置する部品wのうち移動ロボット1が把持可能となる部品wの数が最大となるような位置を探索し(S240)、そのときの位置を推奨位置に決定する(S250)。以上の構成によれば、移動ロボット1が推奨位置へ移動した際の、移動ロボット1が部品wを把持可能となる確率が最大化される。
【0040】
(4)ロボット制御装置4は、移動ロボット1が平均隅位置8に位置した場合に、移動ロボット1が部品箱2内の四隅に位置する部品wの何れか複数の部品wを把持可能でないと判定した場合(S170:NO、S200:YES)、把持可能でないと判定された部品wに対応する複数の把持不能位置の平均値である平均把持不能位置9に移動ロボット1が位置した場合に、移動ロボット1が部品箱2内の四隅に位置する部品wのすべてを把持可能か判定する(S300)。ロボット制御装置4は、移動ロボット1が部品箱2内の四隅に位置する部品wのすべてを把持可能であると判定した場合(S300:YES)、平均把持不能位置9を推奨位置に決定する(S310)。以上の構成によれば、移動ロボット1が推奨位置へ移動するだけで、移動ロボット1は、部品箱2内の四隅に位置する部品wのすべてを把持可能となる。従って、部品箱2が移動ロボット1から離れた位置に置かれており、部品wが部品箱2内のどこにあるかが未知である場合であっても、移動ロボット1は、1度の移動だけで、部品箱2内の部品wを高い確率で把持することができるようになり、もって、サイクルタイムの短縮に寄与する。
【0041】
(5)ロボット制御装置4は、平均把持不能位置9に移動ロボット1が位置した場合に、移動ロボット1が部品箱2内の四隅に位置する部品wの何れかを把持可能でないと判定した場合(S300:NO)、平均隅位置8と、平均把持不能位置9と、の間の位置であって、部品箱2内の四隅に位置する部品wのうち移動ロボット1が把持可能となる部品wの数が最大となるような位置を探索し(S330)、そのときの位置を推奨位置に決定する(S340)。以上の構成によれば、移動ロボット1が推奨位置へ移動した際の、移動ロボット1が部品wを把持可能となる確率が最大化される。
【符号の説明】
【0042】
1 移動ロボット
2 部品箱
3 部品棚
4 ロボット制御装置
5 ピックアップアーム
6 中央位置
7a 左上隅位置
7b 左下隅位置
7c 右上隅位置
7d 右下隅位置
8 平均隅位置
9 平均把持不能位置
w 部品
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12