JP2022006841A - ロボット制御システム - Google Patents
ロボット制御システム Download PDFInfo
- Publication number
- JP2022006841A JP2022006841A JP2020109352A JP2020109352A JP2022006841A JP 2022006841 A JP2022006841 A JP 2022006841A JP 2020109352 A JP2020109352 A JP 2020109352A JP 2020109352 A JP2020109352 A JP 2020109352A JP 2022006841 A JP2022006841 A JP 2022006841A
- Authority
- JP
- Japan
- Prior art keywords
- information
- robot
- force sense
- force
- control system
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000001953 sensory effect Effects 0.000 claims description 15
- 230000002159 abnormal effect Effects 0.000 claims description 4
- 238000000034 method Methods 0.000 description 13
- 230000008569 process Effects 0.000 description 10
- 230000035807 sensation Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 238000013528 artificial neural network Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000010801 machine learning Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J13/00—Controls for manipulators
- B25J13/08—Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
- B25J13/085—Force or torque sensors
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J13/00—Controls for manipulators
- B25J13/08—Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
- B25J13/087—Controls for manipulators by means of sensing devices, e.g. viewing or touching devices for sensing other physical parameters, e.g. electrical or chemical properties
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1628—Programme controls characterised by the control loop
- B25J9/163—Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1628—Programme controls characterised by the control loop
- B25J9/1633—Programme controls characterised by the control loop compliant, force, torque control, e.g. combined with position control
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM]
- G05B19/41815—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM] characterised by the cooperation between machine tools, manipulators and conveyor or other workpiece supply system, workcell
- G05B19/4182—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM] characterised by the cooperation between machine tools, manipulators and conveyor or other workpiece supply system, workcell manipulators and conveyor only
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/39—Robotics, robotics to robotics hand
- G05B2219/39106—Conveyor, pick up article, object from conveyor, bring to test unit, place it
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/39—Robotics, robotics to robotics hand
- G05B2219/39529—Force, torque sensor in wrist, end effector
Abstract
【課題】 力覚センサーが故障した場合でも、力覚制御フィードバックを実施することができるロボット制御システムを提供する。【解決手段】 力覚センサーを備えたロボットを制御するロボット制御システムであって、前記力覚センサーが検出した力覚情報を取得する力覚情報取得部と、前記ロボットの各軸モータから電流情報を取得する電流情報取得部と、前記ロボットの動作時の前記力覚情報と前記電流情報に基づいて、力覚情報推定モデルを学習する力覚情報学習部と、前記ロボットの動作時に、前記力覚情報推定モデルに基づいて、動作に対応する力覚情報を推定する力覚情報推定部と、前記力覚情報取得部が取得した力覚情報、または、前記力覚情報推定部が推定した力覚情報に基づいて、前記各軸モータをフィードバック制御するモータ制御部と、を具備するロボット制御システム。【選択図】 図2
Description
本発明は、物理情報推定モデルを利用して、モータの電流情報から力覚情報や重量情報を推定するロボット制御システムに関する。
ロボットを制御するロボット制御システムは、例えば、ロボットアームの手先位置を変更したり、ロボットハンドに荷物を把持させたりする際に、ロボットアームやロボットハンドに取り付けたモータの駆動を制御するためのシステムである。ロボット制御システムの中には、ロボットに取り付けた力覚センサーから、ロボットにかかる力覚情報(力やモーメント)を取得し、その力覚情報に基づいてフィードバック制御を実施することで、ロボットアームが人や構造物に衝突した際の危険回避制御や、荷物の重量等に応じたロボットハンドの把持動作制御を実現したりするものがある。
ロボットのフィードバック制御を継続的かつ正確に実施するには、故障しにくく、かつ、検出精度の高い力覚センサーの利用が求められる。この要求を満たす力覚センサーとしては、比較的故障しにくく検出精度の高い静電容量方式の力覚センサーが知られているが、ひずみゲージ方式の力覚センサーに比べて高価であるため、大量のロボットを使用する環境下では、力覚センサーの使用数の削減方法が検討されている。
例えば、特許文献1の要約書には、「力覚センサーの使用数を低減する」ための解決手段として、「手先部に力覚センサー16を備えるロボットを具備する基準セル1は、力覚センサー16による力測定値をフィードバックしてモータ電流値を演算する力覚制御を実行する。そして、基準セル1は、力覚制御を実況中に、作業位置とモータ電流値との対応関係を基準データ3に記録する。基準データ3は、手先部に力覚センサーを備えないロボットを具備するコピーセル2に設定される。コピーセル2は、力覚制御を指令された際には、作業位置を演算し、演算した作業位置と基準データ3とに基づいてモータ電流値を取得する。」と記載されている。
また、同文献の請求項1には、「手先部に力覚センサーが配設された第1のロボットを備える第1のロボットセル装置と、力覚センサーを具備しない第2のロボットを備える、ワークに対して前記第1のロボットセル装置と同等の動作を実行するための第2のロボットセル装置と、を備えるロボットセルシステムであって、前記第1のロボットセル装置は、前記力覚センサーによる力測定値をフィードバックして電流値を演算する力覚制御を実行して、前記演算された電流値の電流を前記第1のロボットに供給する力覚制御部と、前記力覚制御部が力覚制御を実行中に前記電流値を作業位置毎に記録した基準データを生成する基準データ生成部と、を備え、前記第2のロボットセル装置は、前記基準データ生成部が生成した基準データを予め記憶する基準データ記憶部と、力覚制御を指令された際に、作業位置を演算し、前記演算した作業位置と前記基準データとを用いて電流値を取得し、前記取得した電流値の電流を前記第2のロボットに供給する擬似力覚制御部と、を備える、ことを特徴とするロボットセルシステム。」と記載されている。
すなわち、特許文献1によれば、力覚センサーを具備する基準セル(第1のロボット)で生成した基準データを利用することで、コピーセル(第2のロボット)では力覚センサーを用いることなく基準セルと同等の作業を再現できるので、コピーセル数が多い環境では高価な力覚センサーの使用数を大幅に低減することができる。
しかしながら、特許文献1のコピーセル(第2のロボット)は、基準セル(第1のロボット)で実施した作業を模倣するものでしかなく、基準データの存在しない新規作業を独自に実施できるものではない。このため、第2のロボットに新規作業を実施させたい場合には、第1のロボットで新規作業に対応する基準データを新たに生成してから、第2のロボットを制御する制御システムに提供する必要があった。また、力覚センサーを具備しない第2のロボットでは、フィードバック制御を実現できないため、例えば動作中の第2ロボットに人が衝突するような事故が発生しても、第2ロボットが安全回避行動をとれないといった問題もあった。
そこで、本発明は、力覚センサーが故障したロボットや、力覚センサーを備えないロボットを制御対象とする場合であっても、物理情報推定モデルを利用することで、モータの電流情報から力覚情報や重量情報を推定でき、推定情報に基づくフィードバック制御を実現することができるロボット制御システムを提供することを目的とする。
上記課題を解決するための本発明の一例は、力覚センサーを備えたロボットを制御するロボット制御システムであって、前記力覚センサーが検出した力覚情報を取得する力覚情報取得部と、前記ロボットの各軸モータから電流情報を取得する電流情報取得部と、前記ロボットの動作時の前記力覚情報と前記電流情報に基づいて、力覚情報推定モデルを学習する力覚情報学習部と、前記ロボットの動作時に、前記力覚情報推定モデルに基づいて、動作に対応する力覚情報を推定する力覚情報推定部と、前記力覚情報取得部が取得した力覚情報、または、前記力覚情報推定部が推定した力覚情報に基づいて、前記各軸モータを制御するモータ制御部と、を具備するロボット制御システムである。
また、本発明の他例は、力覚センサーを備えたロボットを制御するロボット制御システムであって、前記力覚センサーが検出した力覚情報を取得する力覚情報取得部と、前記ロボットの各軸モータから電流情報を取得する電流情報取得部と、前記ロボットが荷物を把持したときの前記力覚情報と前記電流情報に基づいて、重量情報推定モデルを学習する重量情報学習部と、前記ロボットが荷物を把持した場合に、前記重量情報推定モデルに基づいて、荷物に対応する重量情報を推定する重量情報推定部と、前記力覚情報取得部が取得した力覚情報、または、前記重量情報推定部が推定した重量情報に基づいて、前記各軸モータを制御するモータ制御部と、を具備するロボット制御システムである。
本発明のロボット制御システムによれば、力覚センサーが故障したロボットや、力覚センサーを備えないロボットを制御対象とする場合であっても、物理情報推定モデルを利用することで、モータの電流情報から力覚情報や重量情報を推定でき、推定情報に基づくフィードバック制御を実現することができる。
以下、本発明の実施例に係るロボット制御システム1について、図面を参照して詳細に説明する。なお、本発明は、以下に説明する実施例に限定されるものではない。また、以下の説明において使用する各図面において、共通する各装置、各機器には同一の符号を付しており、すでに説明した各装置、機器および動作の説明を省略する場合がある。
図1~図4を用いて、本発明の実施例1に係るロボット制御システムを説明する。
[ロボットシステム]
図1は、実施例1のロボット制御システム1と、その制御対象であるロボット2を含むロボットシステムの概略図である。ここに例示するロボット2は、6自由度を持つロボットアームであり、ジョイントJ1-J6の夫々に取り付けた電動機により回転動作やねじり動作を実現し、任意の姿勢をとることができる。ロボット2の電動機は、具体的にはサーボモータ(以下、単に「モータ」と称する)であり、高応答・高負荷が求められる作業に対応している。また、モータ内には、回転角情報を出力する回転角センサーが取り付けられており、回転角情報が逐次入力されるロボット制御システム1では、各ジョイントJの回転角度を測定して、順運動学によりロボット2の姿勢や手先位置を計算することができる。反対に、ロボット制御システム1からロボット2に、手先位置の目標を指令する場合は、逆運動学によりロボット2の各ジョイントJの回転角を決定する。
図1は、実施例1のロボット制御システム1と、その制御対象であるロボット2を含むロボットシステムの概略図である。ここに例示するロボット2は、6自由度を持つロボットアームであり、ジョイントJ1-J6の夫々に取り付けた電動機により回転動作やねじり動作を実現し、任意の姿勢をとることができる。ロボット2の電動機は、具体的にはサーボモータ(以下、単に「モータ」と称する)であり、高応答・高負荷が求められる作業に対応している。また、モータ内には、回転角情報を出力する回転角センサーが取り付けられており、回転角情報が逐次入力されるロボット制御システム1では、各ジョイントJの回転角度を測定して、順運動学によりロボット2の姿勢や手先位置を計算することができる。反対に、ロボット制御システム1からロボット2に、手先位置の目標を指令する場合は、逆運動学によりロボット2の各ジョイントJの回転角を決定する。
また、ロボット2の手先には力覚センサー21とピッキング装置22が取り付けられている。これらにより、例えば、ベルトコンベア3で流れてきた荷物4をピッキング装置22で吸着することで、重量別のコンテナに荷物4を振り分けることができる。
なお、図1では、ロボット2の一例として、6自由度を持つロボットアームを例示したが、自由度数は6に限定されず、例えば、7や8であっても良い。また、ロボット2は、ロボットアーム以外のロボット(例えば、ロボットハンド)であっても良く、ロボット2が実施する作業も、ベルトコンベア3からの荷物4のピッキング以外の作業であっても良い。
[ロボット制御システム1]
図2は、本実施例のロボット制御システム1の機能ブロック図である。ここに示すように、ロボット制御システム1は、力覚情報取得部11、電流情報取得部12、力覚情報学習部13、メモリ14、力覚情報推定部15、モータ制御部16を備えている。なお、ロボット制御システム1は、具体的には、CPU等の演算装置、半導体メモリ等の主記憶装置、ハードディスク等の補助記憶装置、および、通信装置などのハードウェアを備えたコンピュータである。そして、補助記憶装置に記録されたデータを参照しながら、主記憶装置にロードされたプログラムを演算装置が実行することで、上記の各機能を実現するが、以下では、このような周知技術を適宜省略しながら、各部の詳細を説明する。
図2は、本実施例のロボット制御システム1の機能ブロック図である。ここに示すように、ロボット制御システム1は、力覚情報取得部11、電流情報取得部12、力覚情報学習部13、メモリ14、力覚情報推定部15、モータ制御部16を備えている。なお、ロボット制御システム1は、具体的には、CPU等の演算装置、半導体メモリ等の主記憶装置、ハードディスク等の補助記憶装置、および、通信装置などのハードウェアを備えたコンピュータである。そして、補助記憶装置に記録されたデータを参照しながら、主記憶装置にロードされたプログラムを演算装置が実行することで、上記の各機能を実現するが、以下では、このような周知技術を適宜省略しながら、各部の詳細を説明する。
力覚情報取得部11は、力覚センサー21から力覚情報を取得する。ここで取得される力覚情報は、例えば、X、Y、Zの3軸の反力(Fx、Fy、Fz)、モーメント(Mx、My、Mz)の6情報である。電流情報取得部12は、各ジョイントJのモータに取り付けた電流センサーから、そのモータに流れる電流値を示す電流情報Iを取得する。力覚情報学習部13では、電流情報取得部12が得た電流情報Iに基づいて、力覚情報取得部11で得られる力覚情報を推定するための学習を行う。メモリ14には、取得した力覚情報、電流情報I、および、力覚情報学習部13で学習した力覚情報推定モデルMFを保存する。力覚情報推定部15は、力覚情報推定モデルMFを利用し、電流情報取得部12が得た電流情報Iから力覚情報を推定する。モータ制御部16は、力覚情報推定部15で推定した力覚情報か、力覚情報取得部11で取得した力覚情報を用いて、ロボット2への力覚フィードバック制御を実施する。
[力覚学習処理]
ここで、図3のフローチャートを用いて、力覚情報学習部13での学習処理の詳細を説明する。なお、この学習処理は、一定時間経過毎に実施してもよいし、操作者からの指令に応じて実施してもよい。
ここで、図3のフローチャートを用いて、力覚情報学習部13での学習処理の詳細を説明する。なお、この学習処理は、一定時間経過毎に実施してもよいし、操作者からの指令に応じて実施してもよい。
まず、ステップS1では、ロボット制御システム1は、力覚情報取得部11が得た力覚情報と、電流情報取得部12が得た電流情報Iをメモリ14に蓄積する。
次に、ステップS2では、ロボット制御システム1は、メモリ14を読み込んで、学習済みの力覚情報推定モデルMFが存在するか確認する。存在する場合には、過去に力覚情報の学習が行われたと判定し、ステップS3-S5へ進む。一方、存在しない場合には、過去に一度も力覚情報の学習が行われていないと判定し、ステップS6-S8へ進む。
学習済みの力覚情報推定モデルMFが存在する場合、まず、ステップS3では、力覚情報学習部13は、メモリ14から学習済みの力覚情報推定モデルMFを読み込む。
次に、ステップS4では、力覚情報学習部13は、学習済みの力覚情報推定モデルMFに、S1で蓄積した電流情報Iを入力として与え、力覚情報を推定する。
ここで、図4を用いて、力覚情報推定モデルMFの入出力の一例を説明する。ここに示すように、本実施例の力覚情報推定モデルMFは、ロボット2のジョイントJ1-J6の電流情報I1-I6を与えたときに、3軸の反力(Fx、Fy、Fz)と3軸のモーメント(Mx、My、Mz)からなる6種類の推定力覚情報を出力するものである。
ステップS5では、力覚情報学習部13は、S1で取得した力覚情報と電流情報Iを用いて再学習を実施し、力覚情報推定モデルMFの精度を更に高める。再学習は、次のように行う。すなわち、電流情報Iと力覚情報推定モデルMFによる推定力覚情報と、S1で実際に得た力覚情報の誤差を最小化するように、機械学習の一種であるニューラルネットワークによる学習を繰り返すことで、力覚情報推定モデルMFのパラメータ精度を高めていく。なお、再学習の過程で、学習を繰り返すと過学習と呼ばれる学習率が低下する現象が想定される。これを避けるため、学習率を逐次監視しておき、学習率が繰り返し学習により低下した場合に、学習を強制終了する機能(ドロップアウト)を設けてもよい。
ステップS5を終えると、ステップS9では、力覚情報学習部13は、ステップS5で再学習した力覚情報推定モデルMFをメモリ14に保存する。
一方、学習済みの力覚情報推定モデルMFが存在しない場合、まず、ステップS6では、力覚情報学習部13は、各ジョイントJの電流情報Iから、図4の方法で新規に力覚情報推定モデルMFを作成する。
次に、ステップS7では、力覚情報学習部13は、ステップS6で作成した力覚情報推定モデルMFに、S1で蓄積した電流情報Iを入力として与え、力覚情報を推定する。
ステップS8では、力覚情報学習部13は、S1で取得した力覚情報と電流情報Iを用いて学習を実施する。学習は、次のように行う。すなわち、電流情報Iと力覚情報推定モデルMFによる推定力覚情報と、S1で実際に得た力覚情報の誤差を最小化するように、機械学習の一種であるニューラルネットワークによる学習を繰り返すことで、力覚情報推定モデルMFのパラメータ精度を高めていく。学習を一定回数繰り返した段階、または、学習率の向上が見られなくなった段階で、学習を終了する。
ステップS8を終えると、ステップS9では、力覚情報学習部13は、ステップS8で学習した力覚情報推定モデルMFをメモリ14に保存する。
[実作業中の挙動]
力覚情報推定部15は、力覚情報学習部13がメモリ14に保存した力覚情報推定モデルMFを利用して、電流情報取得部12が得た電流情報Iから力覚情報を推定する。
力覚情報推定部15は、力覚情報学習部13がメモリ14に保存した力覚情報推定モデルMFを利用して、電流情報取得部12が得た電流情報Iから力覚情報を推定する。
モータ制御部16は、力覚情報取得部11の出力が正常である場合は、力覚情報取得部11が取得した力覚情報に基づいてロボット2をフィードバック制御し、力覚情報取得部11の出力が異常である場合は、力覚情報推定部15が推定した力覚情報に基づいてロボット2をフィードバック制御する。これにより、力覚センサー21が故障した場合であっても、力覚情報推定部15による推定力覚情報を利用して、ロボット2のフィードバック制御を継続することができる。
以上詳細に説明したように、本実施例によれば、電流情報から力覚情報を推定する力覚情報推定モデルMFにより、例えば学習後に力覚センサーが故障した場合においても、電流情報の入力で力覚情報を精度よく推定可能となるため、フェールセーフの機能として、故障時の危険回避行動が可能となる。
次に、本発明の実施例2のロボット制御システムについて、図5-図7を用いて説明する。なお、実施例1との共通点は重複説明を省略する。
本実施例のロボット2は、持ち上げた荷物4の重量を推定し、重量ごとに仕分ける、ピックアンドプレース作業を実施するものとする。
[ロボット制御システム1]
図5は、本実施例のロボット制御システム1の機能ブロック図である。ここに示すように、ロボット制御システム1は、力覚情報取得部11、電流情報取得部12、重量情報学習部13a、メモリ14、重量情報推定部15a、モータ制御部16を備えている。
図5は、本実施例のロボット制御システム1の機能ブロック図である。ここに示すように、ロボット制御システム1は、力覚情報取得部11、電流情報取得部12、重量情報学習部13a、メモリ14、重量情報推定部15a、モータ制御部16を備えている。
重量情報学習部13aでは、電流情報取得部12が得た電流情報Iに基づいて、重量情報を推定するための学習を行う。メモリ14には、取得した力覚情報、電流情報I、および、重量情報学習部13aで学習した重量情報推定モデルMNを保存する。重量情報推定部15aは、重量情報推定モデルMNを利用し、電流情報取得部12が得た電流情報Iから重量情報を推定する。モータ制御部16は、重量情報推定部15aで推定した重量情報か、力覚情報取得部11で取得した力覚情報を用いて、ロボット2にピックアンドプレース作業を実施させる。
[重量学習処理]
ここで、図6のフローチャートを用いて、重量情報学習部13aでの学習の詳細を説明する。なお、ここでの学習処理は、一定時間経過毎に実施してもよいし、操作者からの指令に応じて実施してもよい。
ここで、図6のフローチャートを用いて、重量情報学習部13aでの学習の詳細を説明する。なお、ここでの学習処理は、一定時間経過毎に実施してもよいし、操作者からの指令に応じて実施してもよい。
まず、ステップS11では、ロボット制御システム1は、ロボット2に荷物4を持ち上げさせた後、その荷物4を所定の手先位置Pまで移動させ、微小時間停止する動作を実施させる。これにより、各ジョイントJのモータの電流情報Iが定常値に収束するため、この後の重量情報を推定しやすくなる。なお、ロボット2の手先を特定の手先位置Pまで移動させるのは、重量推定時のロボット2の各軸及び各節の姿勢を同一とすることで、各モータへの自重のかかり方を統一し、荷物4の重量を正確に推定するためである。
ここで、各ジョイントJi(i=1~6)のモータの電流情報Ii[A]と、モータ負荷Ti[N・m]の関係式を(式1)に示す。
Kiはモータ比例定数、Aiは電流振幅[A]、fは周波数[Hz]、θiは位相角である。
一般的に、ロボット2の各モータのモータ負荷Tは、モータの回転や姿勢維持に必要な負荷と、減速機構の駆動に必要な負荷と、ロボット2の節毎の自重支持に必要な負荷の和である。このため、所定の手先位置Pでの荷物4の重量によるモータ負荷は、(式1)の単純計算によっては求まらない。
そこで、本実施例では、荷物の重量を推定するために、(式2)に示すように、荷物4(手先負荷)を持ち上げたときのモータ負荷Ti,mから、荷物4(手先負荷)を持たないときのモータ負荷Ti,0を減算することで、モータトルクの変動量ΔTを抽出し、その変動量ΔTに基づいて荷物4の重量を推定する。
ΔTi、Pは所定の手先位置Pでのモータ負荷変動量、Ii、mは手先負荷がある場合のモータ電流[A]、Ii、0は手先負荷がない場合のモータ電流[A]、Ai、mは手先負荷がある場合のモータ電流振幅[A]、Ai、0は手先負荷がない場合のモータ電流振幅[A]、θi、mは手先負荷がある場合の位相角、θi、0は手先負荷がない場合の位相角である。なお、式2では、荷物4の有無によるモータトルクの変動量ΔTを算出したが、重量の異なる二種類の荷物4を持ち上げた場合のモータトルクの変動量ΔTを算出しても良い。前者から学習した重量情報推定モデルMNを利用する場合は荷物4の絶対重量を推定することができ、後者からから学習した重量情報推定モデルMNを利用する場合は荷物4の相対重量を推定することができる。
次に、ステップS12では、ロボット制御システム1は、力覚情報取得部11が得た力覚情報と、電流情報取得部12が得た電流情報をメモリ14に蓄積する。
ステップS13では、ロボット制御システム1は、メモリ14を読み込んで、学習済みの重量情報推定モデルMNが存在するか確認する。存在する場合には、過去に重量情報の学習が行われたと判定し、ステップS14-16へ進む。一方、存在しない場合には、過去に一度も力覚情報の学習が行われていないと判定し、ステップS17-19へ進む。
学習済みの重量情報推定モデルMNが存在する場合、まず、ステップS14では、重量情報学習部13aは、学習済みの重量情報推定モデルMNを読み込む。
次に、ステップS15では、重量情報学習部13aは、学習済みの重量情報推定モデルMNに、S12で蓄積した電流情報Iを入力として与え、重量情報を推定する。
ここで、図7を用いて、重量情報推定モデルMNの入出力の一例を説明する。ここに示すように、本実施例の重量情報推定モデルMNは、ロボット2のジョイントJ1-J6の電流情報I1-I6を与えたときに、Z軸方向の反力における差分Nを重力情報として出力するものである。同一地点である手先位置Pで計測された、ロボット2の電流情報Iの差分は、手先負荷の違いによるZ軸方向の反力の差分Nとして顕在化する。
S16では、重量情報学習部13aは、S11で取得した力覚情報と電流情報Iを用いて、再学習を実施し、重量情報推定モデルMNの精度を更に高める。再学習は、次のように行う。すなわち、電流情報Iと重量情報推定モデルMNによる推定重量情報と、S11で実際に得た力覚情報の差分Nの誤差を最小化するように、機械学習の一種であるニューラルネットワークによる学習を繰り返すことで、重量情報推定モデルMNのパラメータ精度を高めていく。
ステップS16を終えると、ステップS20では、重量情報学習部13aは、ステップS16で再学習した重量情報推定モデルMNをメモリ14に保存する。
一方、学習済みの重量情報推定モデルMNが存在しない場合、まず、ステップS17では、重量情報学習部13aは、各ジョイントJの電流情報Iから、図7の方法で新規に重量情報推定モデルMNを作成する。
次に、ステップS18では、重量情報学習部13aは、ステップS17で作成した重量情報推定モデルMNに、S12で蓄積した電流情報Iを入力として与え、重量情報を推定する。
ステップS19では、重量情報学習部13aは、S12で取得した力覚情報と電流情報Iを用いて学習を実施する。学習は、次のように行う。すなわち、電流情報Iと重量情報推定モデルMNによる推定重量情報と、S12で実際に得た手先負荷の有無による力覚情報の差分Nの誤差を最小化するように、機械学習の一種であるニューラルネットワークによる学習を繰り返すことで、重量情報推定モデルMNのパラメータ精度を高めていく。学習を一定回数繰り返した段階、または、学習率の向上が見られなくなった段階で、学習を終了する。
ステップS19を終えると、ステップS20では、重量情報学習部13aは、ステップS19で学習した重量情報推定モデルMNをメモリ14に保存する。
[実作業中の挙動]
重量情報推定部15aは、重量情報学習部13aがメモリ14に保存した重量情報推定モデルMNを利用して、電流情報取得部12が得た電流情報Iから荷物4の重量情報を推定する。
重量情報推定部15aは、重量情報学習部13aがメモリ14に保存した重量情報推定モデルMNを利用して、電流情報取得部12が得た電流情報Iから荷物4の重量情報を推定する。
モータ制御部16は、力覚情報取得部11の出力が正常である場合は、力覚情報取得部11が取得した力覚情報に基づいて荷物4の重量を検出し、力覚情報取得部11の出力が異常である場合は、重量情報推定部15aを利用して荷物4の重量を推定する。これにより、力覚センサー21が故障した場合であっても、重量情報推定部15aによる推定重量情報を利用して、荷物4を重量ごとに仕分けるピックアンドプレース作業を継続することができる。
以上詳細に説明したように、本実施例によれば、電流情報から重量情報を推定する重量情報推定モデルMNにより、例えば学習後に力覚センサーが故障した場合においても、電流情報の入力で重量情報を精度よく推定可能となるため、フェールセーフの機能として、故障時の危険回避行動が可能となる。
次に、本発明の実施例3に係るロボット制御システムについて、図8を用いて説明する。なお、上記した実施例との共通点は重複説明を省略する。
実施例1では、力覚センサー21を備えたロボット2を制御対象としたが、本実施例では、力覚センサー21を備えないロボット2Aを制御対象としている。なお、ロボット2Aは、力覚センサー21を備えないこと以外は実施例1のロボット2と同仕様である。
本実施例のロボット制御システム1のメモリ14には、実施例1で学習した力覚情報推定モデルMFが登録されている。このため、本実施例のロボット制御システム1は、力覚情報推定モデルMFを利用することで、力覚センサー21を備えないロボット2Aから取得した電流情報Iに基づいて力覚情報を推定でき、推定力覚情報を用いて、ロボット2Aでのフィードバック制御を実現することができる。
従って、力覚センサー21を備えないロボット2Aを大量に使用する環境下では、高価な力覚センサーの使用数を大幅に削減でき、大幅なコスト低減を実現できる。
次に、本発明の実施例4に係るロボット制御システムについて、図9を用いて説明する。なお、上記した実施例との共通点は重複説明を省略する。
実施例2では、力覚センサー21を備えたロボット2を制御対象としたが、本実施例では、力覚センサー21を備えないロボット2Aを制御対象としている。なお、ロボット2Aは、力覚センサー21を備えないこと以外は実施例2のロボット2と同仕様である。
本実施例のロボット制御システム1のメモリ14には、実施例2で学習した重量情報推定モデルMNが登録されている。このため、本実施例のロボット制御システム1は、重量情報推定モデルMNを利用することで、力覚センサー21を備えないロボット2Aから取得した電流情報Iに基づいて重量情報を推定でき、推定重量情報を用いて、ロボット2Aに荷物4を重量ごとに仕分ける、ピックアンドプレース作業を実施させることができる。
従って、力覚センサー21を備えないロボット2Aを大量に使用する環境下では、高価な力覚センサーの使用数を大幅に削減でき、大幅なコスト低減を実現できる。
1 ロボット制御システム
11 力覚情報取得部
12 電流情報取得部
13 力覚情報学習部
13a 重量情報学習部
14 メモリ
15 力覚情報推定部
15a 重量情報推定部
16 モータ制御部
2 ロボット(力覚センサーあり)
21 力覚センサー
22 ピッキング装置
2A ロボット(力覚センサーなし)
3 ベルトコンベア
4 荷物
MF 力覚情報推定モデル
MN 重量情報推定モデル
11 力覚情報取得部
12 電流情報取得部
13 力覚情報学習部
13a 重量情報学習部
14 メモリ
15 力覚情報推定部
15a 重量情報推定部
16 モータ制御部
2 ロボット(力覚センサーあり)
21 力覚センサー
22 ピッキング装置
2A ロボット(力覚センサーなし)
3 ベルトコンベア
4 荷物
MF 力覚情報推定モデル
MN 重量情報推定モデル
Claims (8)
- 力覚センサーを備えたロボットを制御するロボット制御システムであって、
前記力覚センサーが検出した力覚情報を取得する力覚情報取得部と、
前記ロボットの各軸モータから電流情報を取得する電流情報取得部と、
前記ロボットの動作時の前記力覚情報と前記電流情報に基づいて、力覚情報推定モデルを学習する力覚情報学習部と、
前記ロボットの動作時に、前記力覚情報推定モデルに基づいて、動作に対応する力覚情報を推定する力覚情報推定部と、
前記力覚情報取得部が取得した力覚情報、または、前記力覚情報推定部が推定した力覚情報に基づいて、前記各軸モータを制御するモータ制御部と、
を具備することを特徴とするロボット制御システム。 - 請求項1に記載のロボット制御システムにおいて、
前記力覚情報推定部は、前記電流情報を前記力覚情報推定モデルに入力することで、力覚情報を推定することを特徴とするロボット制御システム。 - 請求項1または請求項2に記載のロボット制御システムにおいて、
前記力覚情報取得部の出力が正常である場合は、前記力覚情報取得部が取得した力覚情報に基づいて、前記ロボットをフィードバック制御し、
前記力覚情報取得部の出力が異常である場合は、前記力覚情報推定部が推定した力覚情報に基づいて、前記ロボットをフィードバック制御することを特徴とするロボット制御システム。 - 力覚センサーを備えたロボットを制御するロボット制御システムであって、
前記力覚センサーが検出した力覚情報を取得する力覚情報取得部と、
前記ロボットの各軸モータから電流情報を取得する電流情報取得部と、
前記ロボットが荷物を把持したときの前記力覚情報と前記電流情報に基づいて、重量情報推定モデルを学習する重量情報学習部と、
前記ロボットが荷物を把持した場合に、前記重量情報推定モデルに基づいて、荷物に対応する重量情報を推定する重量情報推定部と、
前記力覚情報取得部が取得した力覚情報、または、前記重量情報推定部が推定した重量情報に基づいて、前記各軸モータを制御するモータ制御部と、
を具備することを特徴とするロボット制御システム。 - 請求項4に記載のロボット制御システムにおいて、
前記重量情報推定部は、前記電流情報を前記重量情報推定モデルに入力することで、重量情報を推定することを特徴とするロボット制御システム。 - 請求項4または請求項5に記載のロボット制御システムにおいて、
前記力覚情報取得部の出力が正常である場合は、前記力覚情報取得部が取得した力覚情報に基づいて、前記ロボットを制御し、
前記力覚情報取得部の出力が異常である場合は、前記重量情報推定部が推定した重量情報に基づいて、前記ロボットを制御することを特徴とするロボット制御システム。 - 力覚センサーを備えないロボットを制御するロボット制御システムであって、
前記ロボットの動作時に各軸モータから得られる電流情報を取得する電流情報取得部と、
請求項1のロボット制御システムが学習した力覚情報推定モデルを登録したメモリと、
前記ロボットの動作時の前記電流情報を前記力覚情報推定モデルに入力することで、力覚情報を推定する力覚情報推定部と、
を具備することを特徴とするロボット制御システム。 - 力覚センサーを備えないロボットを制御するロボット制御システムであって、
前記ロボットの動作時に各軸モータから得られる電流情報を取得する電流情報取得部と、
請求項4のロボット制御システムが学習した重量情報推定モデルを登録したメモリと、
前記ロボットの動作時の前記電流情報を前記重量情報推定モデルに入力することで、重量情報を推定する重量情報推定部と、
を具備することを特徴とするロボット制御システム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020109352A JP2022006841A (ja) | 2020-06-25 | 2020-06-25 | ロボット制御システム |
PCT/JP2021/015160 WO2021261055A1 (ja) | 2020-06-25 | 2021-04-12 | ロボット制御システム |
US18/010,406 US20230286170A1 (en) | 2020-06-25 | 2021-04-12 | Robot control system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020109352A JP2022006841A (ja) | 2020-06-25 | 2020-06-25 | ロボット制御システム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2022006841A true JP2022006841A (ja) | 2022-01-13 |
Family
ID=79282363
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020109352A Pending JP2022006841A (ja) | 2020-06-25 | 2020-06-25 | ロボット制御システム |
Country Status (3)
Country | Link |
---|---|
US (1) | US20230286170A1 (ja) |
JP (1) | JP2022006841A (ja) |
WO (1) | WO2021261055A1 (ja) |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3818986B2 (ja) * | 2003-07-08 | 2006-09-06 | ファナック株式会社 | 嵌合装置 |
JP6006965B2 (ja) * | 2012-04-13 | 2016-10-12 | 本田技研工業株式会社 | 動力伝達装置 |
JP2018027581A (ja) * | 2016-08-17 | 2018-02-22 | 株式会社安川電機 | ピッキングシステム |
JP6577527B2 (ja) * | 2017-06-15 | 2019-09-18 | ファナック株式会社 | 学習装置、制御装置及び制御システム |
US10369701B1 (en) * | 2018-10-30 | 2019-08-06 | Mujin, Inc. | Automated package registration systems, devices, and methods |
JP7159525B2 (ja) * | 2018-11-29 | 2022-10-25 | 京セラドキュメントソリューションズ株式会社 | ロボット制御装置、学習装置、及びロボット制御システム |
-
2020
- 2020-06-25 JP JP2020109352A patent/JP2022006841A/ja active Pending
-
2021
- 2021-04-12 WO PCT/JP2021/015160 patent/WO2021261055A1/ja active Application Filing
- 2021-04-12 US US18/010,406 patent/US20230286170A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
WO2021261055A1 (ja) | 2021-12-30 |
US20230286170A1 (en) | 2023-09-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4595727B2 (ja) | 外力推定システム及び外力推定方法、並びにコンピュータ・プログラム | |
Colomé et al. | External force estimation during compliant robot manipulation | |
JP5327722B2 (ja) | ロボットの負荷推定装置及び負荷推定方法 | |
EP2406041B1 (en) | Robot apparatus and control method therefor | |
US10583557B2 (en) | Redundant underactuated robot with multi-mode control framework | |
CN110662635A (zh) | 机器人的碰撞处理 | |
WO2008001713A1 (fr) | Robot articulé et son programme de commande | |
Patarinski et al. | Robot force control: a review | |
WO2018212265A1 (ja) | ロボットシステム及びロボットシステムの制御方法 | |
JP2009285824A (ja) | ロボットマニピュレーターの制御装置及びその制御方法 | |
Yamawaki et al. | Iterative learning of variable impedance control for human-robot cooperation | |
Sotoudehnejad et al. | Counteracting modeling errors for sensitive observer-based manipulator collision detection | |
Lim et al. | Momentum observer-based collision detection using LSTM for model uncertainty learning | |
Borghesan et al. | Constraint-based specification of hybrid position-impedance-force tasks | |
Khan et al. | Adaptive multi-dimensional compliance control of a humanoid robotic arm with anti-windup compensation | |
WO2021261055A1 (ja) | ロボット制御システム | |
Yousefizadeh et al. | Unknown external force estimation and collision detection for a cooperative robot | |
Khatib et al. | Torque-position transformer for task control of position controlled robots | |
Zhu et al. | Experimental verifications of virtual-decomposition-based motion/force control | |
Jlassi et al. | An event-controlled online trajectory generator based on the human-robot interaction force processing | |
Xia et al. | Hybrid force/position control of industrial robotic manipulator based on Kalman filter | |
JP7270580B2 (ja) | ロボットの制御装置、制御方法、及びプログラム | |
WO2022203933A1 (en) | Dynamic torque saturation limits for robot actuator(s) | |
Leite et al. | Adaptive passivity-based hybrid pose/force control for uncertain robots | |
Jung et al. | Variable stiffness control via external torque estimation using lstm |