(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2025004923
(43)【公開日】2025-01-16
(54)【発明の名称】経路決定システム及び方法
(51)【国際特許分類】
B25J 13/00 20060101AFI20250108BHJP
B25J 13/08 20060101ALI20250108BHJP
【FI】
B25J13/00 Z
B25J13/08 A
【審査請求】未請求
【請求項の数】5
【出願形態】OL
(21)【出願番号】P 2023104823
(22)【出願日】2023-06-27
(71)【出願人】
【識別番号】000003207
【氏名又は名称】トヨタ自動車株式会社
(74)【代理人】
【識別番号】100103894
【弁理士】
【氏名又は名称】家入 健
(72)【発明者】
【氏名】赤池 聖公
【テーマコード(参考)】
3C707
【Fターム(参考)】
3C707AS04
3C707DS01
3C707ES03
3C707HS27
3C707JS03
3C707KS03
3C707KS06
3C707KS09
3C707KS11
3C707KS12
3C707KS33
3C707KS35
3C707KT01
3C707KT05
3C707KV01
3C707KV11
3C707KW03
3C707KX07
3C707KX10
3C707LS15
3C707LV07
3C707LW12
3C707LW15
3C707MS07
3C707MS28
(57)【要約】
【課題】機械学習を用いてロボットアームの大きな動作を抑制した経路決定システム及び方法を提供する。
【解決手段】経路決定システム1は、ロボットアーム10に搭載され、物体を撮影するカメラ17と、ロボットアームの関節部に搭載され、関節部の角度データを取得するセンサと、ロボットアーム10の動作を制御するロボットコントローラ100と、ロボットアームの動作を最適化する深層強化学習モデル20と、を備える。ロボットコントローラは、カメラによる撮影画像から物体を認識し、認識された前記物体の把持点を探索し、ロボットアームの先端にある把持部を、探索された把持点まで移動させる経路を生成する。深層強化学習モデルは、生成された経路に沿って移動するロボットアームの所定の関節部の角度を入力し、所定の関節部の角度の変化量をできる限り小さくするようにロボットアームの経路を決定する。
【選択図】
図2
【特許請求の範囲】
【請求項1】
ロボットアームに搭載され、物体を撮影するカメラと、
前記ロボットアームの関節部に搭載され、関節部の角度データを取得するセンサと、
前記ロボットアームの動作を制御するロボットコントローラと、
前記ロボットアームの動作を最適化する深層強化学習モデルと、
を備え、
前記ロボットコントローラは、
前記カメラによる撮影画像から物体を認識し、
認識された前記物体の把持点を探索し、
前記ロボットアームの先端にある把持部を、探索された前記把持点まで移動させる経路を生成し、
前記深層強化学習モデルは、生成された前記経路に沿って移動する前記ロボットアームの所定の関節部の角度を入力し、前記所定の関節部の角度の変化量をできる限り小さくするように学習され、学習された前記深層強化学習モデルに基づいて、前記ロボットアームの経路を決定するように構成された、経路決定システム。
【請求項2】
前記所定の関節部は、前記ロボットアームの先端部に位置する関節部以外の関節部から選択される1以上である、請求項1に記載の経路決定システム。
【請求項3】
前記ロボットアームと、作業員を含む障害物との距離を検知するセンサを更に備え、
前記深層強化学習モデルは、前記センサにより検知された前記距離が閾値以上となるように学習され、学習された前記深層強化学習モデルに基づいて、前記ロボットアームの経路を決定するように構成された、請求項1に記載の経路決定システム。
【請求項4】
前記センサにより、前記ロボットアームの近傍に作業員が存在しないことが検知された場合、前記深層強化学習モデルに基づいて決定される経路を出力することを控え、所定の関節部の角度の変化量に関わらず任意の経路を出力し、
前記センサにより、前記ロボットアームの近傍に作業員が存在することが検知された場合、前記所定の関節部の角度の変化量をできる限り小さく、かつ、検知された前記作業員までの距離が閾値以上となるように学習された前記深層強化学習モデルに基づいて、前記ロボットアームの経路を決定するように構成された、請求項3に記載の経路決定システム。
【請求項5】
ロボットアームに搭載され、物体を撮影するカメラと、
前記ロボットアームの関節部に搭載され、関節部の角度データを取得するセンサと、
前記ロボットアームの動作を制御するロボットコントローラと、
前記ロボットアームの動作を最適化する深層強化学習モデルと、
を備えた経路決定システムを用いた経路決定方法であって、
前記カメラによる撮影画像から物体を認識しと、
認識された前記物体の把持点を探索し、
前記ロボットアームの先端にある把持部を、探索された前記把持点まで移動させる経路を生成し、
生成された前記経路に沿って移動する前記ロボットアームの所定の関節部の角度を入力し、前記所定の関節部の角度の変化量をできる限り小さくするように深層強化学習により学習された前記深層強化学習モデルに基づいて、前記ロボットアームの経路を決定する、経路決定方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、経路決定システム及び方法に関する。
【背景技術】
【0002】
特許文献1には、ピッキングロボットのワークを把持する把持ポーズを複数生成し、所定の条件を満たす把持ポーズに基づいてピッキングロボットの動作経路を生成する、経路生成装置が開示されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
作業員近傍でピッキングロボットを動作させる場合、ピッキングロボットが、作業員が想定できない大きな動作を実行してしまう場合がある。作業者や周辺物に接触しないとしてもこうした大きな動作で威圧感を与えてしまう場合がある。
【0005】
本開示は、このような問題点を解決するためになされたものであり、ロボットアームの大きな動作を抑制した経路決定システム及び経路決定方法を提供することを目的とする。
【課題を解決するための手段】
【0006】
本開示の一態様にかかる経路決定システムは、
ロボットアームに搭載され、物体を撮影するカメラと、
前記ロボットアームの関節部に搭載され、関節部の角度データを取得するセンサと、
前記ロボットアームの動作を制御するロボットコントローラと、
前記ロボットアームの動作を最適化する深層強化学習モデルと、
を備え、
前記ロボットコントローラは、
前記カメラによる撮影画像から物体を認識し、
認識された前記物体の把持点を探索し、
前記ロボットアームの先端にある把持部を、探索された前記把持点まで移動させる経路を生成し、
前記深層強化学習モデルは、生成された前記経路に沿って移動する前記ロボットアームの所定の関節部の角度を入力し、前記所定の関節部の角度の変化量をできる限り小さくするように学習され、学習された前記深層強化学習モデルに基づいて、前記ロボットアームの経路を決定するように構成されている。
【0007】
本開示の一態様にかかる経路決定方法は、
ロボットアームに搭載され、物体を撮影するカメラと、
前記ロボットアームの関節部に搭載され、関節部の角度データを取得するセンサと、
前記ロボットアームの動作を制御するロボットコントローラと、
前記ロボットアームの動作を最適化する深層強化学習モデルと、
を備えた経路決定システムを用いた経路決定方法であって、
前記カメラによる撮影画像から物体を認識しと、
認識された前記物体の把持点を探索し、
前記ロボットアームの先端にある把持部を、探索された前記把持点まで移動させる経路を生成し、
生成された前記経路に沿って移動する前記ロボットアームの所定の関節部の角度を入力し、前記所定の関節部の角度の変化量をできる限り小さくするように深層強化学習により学習された前記深層強化学習モデルに基づいて、前記ロボットアームの経路を決定する。
【発明の効果】
【0008】
本開示によれば、ロボットアームの大きな動作を抑制した経路決定システム及び方法を提供することができる。
【図面の簡単な説明】
【0009】
【
図1】例示的なロボットアームの構成を説明する図である。
【
図2】経路決定システムの構成を示す概念図である。
【
図3】ピックアンドプレイス動作中の各工程におけるロボットアームの姿勢を説明する図である。
【
図4】いくつかの実施形態にかかる経路決定方法を説明するフローチャートである。
【
図5】他の実施形態にかかる経路決定方法を説明するフローチャートである。
【
図6】経路決定システムのハードウェア構成例を説明する図である。
【発明を実施するための形態】
【0010】
以下、本発明を適用した具体的な実施形態について、図面を参照しながら詳細に説明する。ただし、本発明が以下の実施形態に限定される訳ではない。また、説明を明確にするため、以下の記載および図面は、適宜、簡略化されている。
【0011】
図1に示すロボットアーム10は、多関節ロボットとも呼ばれ、回転可能なベース150と、複数のリンク130と各リンク130を回転可能に連結する各関節部13a~fと、ワークを把持するためのハンド15と、を備える。本例では、6軸ロボットである。また、ロボットアーム10の先端には、把持対象物であるワークをピックするためのハンド15が連結されている。ハンド15は、少なくとも2つの把持部16(爪とも呼ばれる)を有する。ハンド15の少なくとも2つの把持部16で、ワークの適当な部分を挟み込むことで、ロボットアーム10は、ワークを持ち上げ、任意の場所まで搬送することができる。ロボットアームは、ピッキングロボットと呼ばれる場合がある。なお、ロボットアームの構成は、図示したものに限定されず、様々なロボットアームを用いることができる。
【0012】
各関節部には、各関節部の回転情報を検出するエンコーダなどの回転センサと、各関節部を駆動するサーボモータなどのアクチュエータと、各関節部の操作力を検出する力センサが設けられている。力センサは、例えば、各関節部のトルクを検出するトルクセンサである。各関節部には、減速機構などが設けられている。
【0013】
ロボットアーム10は、倉庫や工場などに設置され、カメラやLiDAR(Light Detection And Ranging)などのセンサ17で撮影した撮影画像から、例えば、車両等を構成する多数の部品から該当する部品を認識し、当該部品等を拾い上げ、適切な場所(例えば、箱内など)に当該部品を配置する。センサ17は、3次元点群データを取得することもできる。当該センサ17は、把持対象物を撮影可能なように、例えば、ハンド15の近くに設けられている。ロボットアーム10は、周囲で作業する作業者の作業の一部を支援する。ロボットアーム10の適当な場所(例えば、各関節部)には、ピッキングアンドプレイス動作が、周囲の人や台車、障害物などと接触しないように、センサ19が設けられている。センサ19は、人感センサ、LiDAR、距離センサなどを含み得る。センサ19と周囲の人や台車、障害物などとの距離が閾値未満になった場合は、警報を発したり、緊急停止処理を行ったりすることもできる。
【0014】
ロボットアーム10のロボットコントローラ100は、プロセッサ及びメモリ等により構成され、撮影画像を画像処理し、画像内の対象物を認識し、自動的に認識された対象物までの経路および目的地までの経路を決定し、ピックアンドプレイス動作を自動的に制御する。この際、ロボットアーム10が大きなピックアンドプレイス動作を行うと、周囲で作業する人に威圧感を与えてしまう場合がある。発明者は、鋭意検討の結果、手首を除く関節部の回転角度の変化量が大きくなると、周囲で作業する人に威圧感を与えてしまうことを発見した。車両を構成する多数の部品が存在するので、部品の種類ごとに適切な場所(例えば、各箱)までの最適な経路を自動的に決定する方法が求められている。
【0015】
図2は、経路決定システムの構成を示す概念図である。
経路決定システム1は、
図1で示したロボットアーム10、深層強化学習モデル20及びロボットコントローラ100を含む。各構成要素は、有線又は無線ネットワークを介して互いに通信可能に接続されている。
【0016】
ロボットコントローラ100は、ロボットアーム10の動作を制御する。ロボットコントローラ100は、例えば、各関節部の回転センサからの回転情報(例えば、回転角など)と、力センサからの操作力(例えば、速度、加速度など)と、に基づいて、各関節部のアクチュエータを制御することで、ロボットアームをフィードバック制御する。また、ロボットコントローラ100は、ハンド15の少なくとも2つの把持部16、16を互いに近接させることで、ワークを把持することができる。ハンド15の少なくとも2つの把持部16、16の間の最大距離は、任意選択的に定められている。いくつかの実施形態では、ハンド15は、3つ以上の把持部(爪)を有する場合もある。
【0017】
ロボットコントローラ100は、
図2に示すように、物体認識部101、把持点探索部102、及び経路生成部103を含む。物体認識部101は、カメラ等のセンサ17による撮影画像から、既知の物体認識技術を用いて、車両などを構成する多数の部品の中から一の部品を認識する。把持点探索部102は、認識された当該一の部品において、把持すべき把持点を探索する。把持点探索部102は、例えば、矩形の部品の場合、部品の矩形の中心が把持点として決定し得る。経路生成部103は、ハンドから把持点までの1つ以上の経路を生成し、そのうち一の経路を決定する。その後、経路生成部103は、認識された部品ごとに、適切な場所(例えば、各部品用の箱)までの経路も生成する。ロボットコントローラ100は、ロボットアーム10を決定された当該一の経路に沿って移動させるため、各関節部の回転角、速度、加速度などの制御信号をロボットアーム10に送信する。
【0018】
深層強化学習モデル20は、ロボットアームの動作を最適化するのに使用されうる。深層強化学習モデル20は、入力層201、隠れ層202、及び出力層203を有する。深層強化学習モデル20の入力層201には、取得された回転角データが入力される。いくつかの実施形態では、手首の6軸(すなわち、ロボットアームの先端部の回転軸)を除く、回転軸(1軸から5軸まで)の回転角(及び変化量)が入力される場合もある。特に、他の実施形態では、手首の6軸、ベースの1軸を除く、3軸や4軸など中間の回転軸の回転角(及び変化量)が入力される場合もある。これらの中間に位置する回転軸は、ピックアンドプレイスの大きな動作に与える影響が大きいからである。入力層201は、回転角データ取得部とも呼ばれる。深層強化学習モデルは、本例では、Deep Q-Networkを用いるが、これに限定されず、当業者が理解できる様々なニューラルネットワークモデル又は強化学習モデルを使用することができる。各層の間には、各ニューロンをそれぞれ接続するシナプス(不図示)が張られており、各シナプスの重みからなる重みパラメータ群が、機械学習により調整され得る。
【0019】
深層強化学習モデルは、ピックアンドプレイス動作をできるだけ小さくするため、関節部の角度の変化量ができるだけ小さくなるような経路を生成するように機械学習される。例えば、
図3に示す、(a)ピッキング動作、(b)経路途中の動作、(c)プレイス時の動作のそれぞれにおいて、各関節部の回転角を取得し、深層強化学習モデルは、関節部の角度の変化量ができるだけ小さくなるような経路を生成するように深層強化学習がなされる。例えば、第1の動作経路を実行した場合の関節部の角度の変化量を入力情報として深層強化学習を行い、より所定の関節部の角度の変化量が小さい第2の動作経路を出力することができる。他の実施形態では、(a)~(c)の工程全体として、関節部の角度の変化量ができるだけ小さくなるような経路を生成するように深層強化学習がなされてもよい。
【0020】
また、いくつかの実施形態では、深層強化学習モデルは、ロボットアーム10に搭載されたセンサ19により取得された、人や移動体、障害物などとの距離が閾値以上となるような経路を生成するように深層強化学習がなされる。例えば、ロボットアーム10と人との閾値距離は、周囲で作業する人に威圧感を与えない程度に十分に長い距離に設定され得る。
【0021】
他の実施形態では、センサ19により、ロボットアーム10近傍に作業員が存在しないことが検知された場合、所定の関節部の角度の変化量に関わらず、あらゆる経路を出力してもよい。一方、センサ19により、ロボットアーム10近傍に作業員が存在することが検知された場合、所定の関節部の角度の変化量をできる限り小さく、かつ、検知された作業員までの距離が閾値以上となるロボットアームの経路を決定するように構成されてもよい。
【0022】
図4は、経路決定方法を説明するフローチャートである。
周囲の障害物を検知するセンサ(例えば、人感センサ、距離センサ)を持つ6軸ピッキングロボットの各関節部から、関節部に関するデータ(例えば、角度、速度、加速度)を取得する(ステップS41)。取得された各関節のデータ(例えば、角度、速度、加速度)を深層強化学習モデル(例えば、Deep QNetwork)の入力層に入力する(ステップS42)。人に威圧感を与えるような大きな動きにつながりにくいハンド近傍の手首部分(例えば、6軸、
図1では13f)以外の各関節部(例えば、2軸~5軸、好ましくは3軸及び4軸、特に4軸)の角度の変化量が最小、かつ障害物(例えば、人など)と接触しないよう深層強化学習を行う(ステップS43)。いくつかの実施形態では、ロボットアーム(例えば、関節部)と障害物との距離が閾値以上に離れるように、深層強化学習モデルを学習してもよい。このように学習された深層強化学習モデルに基づいて、人に威圧感を与えない経路を決定することができる。ロボットコントローラは、決定された経路をピッキングロボットに付与する(ステップS44)。付与した経路で動く各関節データを取得し、そのデータを入力して、深層強化学習モデルを再学習する(ステップS45)。その結果をもとにピッキングロボットに指示する(ステップS46)。
【0023】
図5は、他の実施形態にかかる経路決定方法を説明するフローチャートである。
周囲の障害物を検知するセンサ(例えば、人感センサ、距離センサ)を持つ6軸ピッキングロボットの各関節部から、関節部に関するデータ(例えば、角度、速度、加速度)を取得する(ステップS51)。取得された各関節のデータ(例えば、角度、速度、加速度)を深層強化学習モデル(例えば、Deep QNetwork)の入力層に入力する(ステップS52)。人に威圧感を与える大きな動きにつながりにくいハンド近傍の手首部分(例えば、6軸、
図1では13f)以外の各関節部(例えば、2軸~5軸、好ましくは3軸及び4軸、特に4軸)の角度の変化量が最小、かつ障害物(例えば、人など)と接触しないよう深層強化学習を行う(ステップS53)。いくつかの実施形態では、ロボットアーム(例えば、関節部)と障害物との距離が閾値以上に離れるように、深層強化学習モデルを学習してもよい。また、3軸及び4軸に対する重みを他の軸よりも大きくして、学習してもよい。入力データとしては、角度だけでなく、速度及び加速度も入力すると、よりよい学習結果が得られる場合もある。
【0024】
ここで、ピッキングロボットに搭載された周囲の障害物を検知するセンサ(例えば、人感センサ、距離センサ)により、周囲に人がいるか否かが判定される(ステップS54)。センサにより、人がピッキングロボットの近くにいると判定された場合(ステップS54でYES)には、経路決定システム1は、深層強化学習モデルを用いて、人に威圧感を与えない経路を決定し、それをピッキングロボットに付与する(ステップS55)。深層強化学習モデルは、付与した経路情報で動く各関節部の情報(例えば、角度、速度、加速度)を取得し、その取得された情報に基づいて再学習する(ステップS56)。経路決定システム1は、再学習した結果をもとにピッキングロボットに指示する(ステップS57)。
【0025】
一方、センサにより、人がピッキングロボットの近くにいないと判定された場合(ステップS54でNO)には、経路決定システム1は、上述した深層強化学習モデルにより決定される経路を選択するのを控え、ロボットにとって最適な経路情報をロボに付与する(ステップS59)。ここで、ロボにとって最適な経路情報とは、例えば、タスク実行にかかる時間が最小となる経路であり得る。すなわち、大きなピックアンドプレイス動作を実行する場合がある。
【0026】
以上説明したように、実施形態にかかる経路決定システムは、特に、人とロボットが近くで作業を行う必要がある場合に、ロボットにとって最適な経路ではなく、人に威圧感を与えないような経路でピックアンドプレイス動作をロボットに実行させることができる。
【0027】
図6は、経路決定システムの構成例を示すブロック図である。
図6を参照すると、経路決定システム(及びロボットコントローラなど)は、ネットワーク・インターフェース1201、プロセッサ1202、及びメモリ1203を含む。ネットワーク・インターフェース1201は、通信システムを構成する他のネットワークノード装置と通信するために使用される。ネットワーク・インターフェース1201は、無線通信を行うために使用されてもよい。例えば、ネットワーク・インターフェース1201は、IEEE 802.11 seriesにおいて規定された無線LAN通信、もしくは3GPP(登録商標)(3rd Generation Partnership Project)において規定されたモバイル通信を行うために使用されてもよい。もしくは、ネットワーク・インターフェース1201は、例えば、IEEE 802.3 seriesに準拠したネットワークインターフェースカード(NIC)を含んでもよい。ネットワーク・インターフェース1201は、前述したカメラなどのセンサ17、人感センサなどのセンサ19、関節部の回転センサ及び力センサなどの各種センサが接続される。
【0028】
プロセッサ1202は、メモリ1203からソフトウェア(コンピュータプログラム)を読み出して実行することで、上述の実施形態においてフローチャートもしくはシーケンスを用いて説明された経路決定システムの処理を行う。プロセッサ1202は、例えば、マイクロプロセッサ、MPU(Micro Processing Unit)、CPU(Central Processing Unit)又はGPU(Graphics Processing Unit)であってもよい。プロセッサ1202は、複数のプロセッサを含んでもよい。
【0029】
メモリ1203は、揮発性メモリ及び不揮発性メモリの組み合わせによって構成される。メモリ1203は、プロセッサ1202から離れて配置されたストレージを含んでもよい。この場合、プロセッサ1202は、図示されていないI/Oインタフェースを介してメモリ1203にアクセスしてもよい。
【0030】
図6の例では、メモリ1203は、ソフトウェアモジュール群を格納するために使用される。プロセッサ1202は、これらのソフトウェアモジュール群をメモリ1203から読み出して実行することで、上述の実施形態において説明された経路決定システムの処理を行うことができる。
【0031】
図4及び
図5を用いて説明したように、プロセッサの各々は、図面を用いて説明されたアルゴリズムをコンピュータに行わせるための命令群を含む1又は複数のプログラムを実行する。
【0032】
上述の例において、プログラムは、コンピュータに読み込まれた場合に、実施形態で説明された1又はそれ以上の機能をコンピュータに行わせるための命令群(又はソフトウェアコード)を含む。プログラムは、非一時的なコンピュータ可読媒体又は実体のある記憶媒体に格納されてもよい。限定ではなく例として、コンピュータ可読媒体又は実体のある記憶媒体は、random-access memory(RAM)、read-only memory(ROM)、フラッシュメモリ、solid-state drive(SSD)又はその他のメモリ技術、CD-ROM、digital versatile disc(DVD)、Blu-ray(登録商標)ディスク又はその他の光ディスクストレージ、磁気カセット、磁気テープ、磁気ディスクストレージ又はその他の磁気ストレージデバイスを含む。プログラムは、一時的なコンピュータ可読媒体又は通信媒体上で送信されてもよい。限定ではなく例として、一時的なコンピュータ可読媒体又は通信媒体は、電気的、光学的、音響的、またはその他の形式の伝搬信号を含む。
【0033】
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
【符号の説明】
【0034】
1 経路決定システム
10 ロボットアーム
13a~f 関節部(1軸~6軸)
15 ハンド
16 把持部(爪)
17 センサ(カメラ)
19 センサ
20 深層強化学習モデル
100 ロボットコントローラ
101 物体認識部
102 把持点探索部
103 経路生成部
130 リンク
150 ベース
201 入力層
202 隠れ層
203 出力層