JP2023066171A - 質量推定方法、制御装置およびロボットシステム - Google Patents
質量推定方法、制御装置およびロボットシステム Download PDFInfo
- Publication number
- JP2023066171A JP2023066171A JP2021176726A JP2021176726A JP2023066171A JP 2023066171 A JP2023066171 A JP 2023066171A JP 2021176726 A JP2021176726 A JP 2021176726A JP 2021176726 A JP2021176726 A JP 2021176726A JP 2023066171 A JP2023066171 A JP 2023066171A
- Authority
- JP
- Japan
- Prior art keywords
- mass
- workpiece
- work
- estimation method
- time point
- 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
- 238000000034 method Methods 0.000 title claims abstract description 119
- 230000008569 process Effects 0.000 claims description 39
- 239000012636 effector Substances 0.000 claims description 35
- 238000012545 processing Methods 0.000 claims description 25
- 238000012937 correction Methods 0.000 claims description 12
- 238000004364 calculation method Methods 0.000 claims description 5
- 230000008859 change Effects 0.000 claims description 4
- 238000005259 measurement Methods 0.000 description 21
- 230000015654 memory Effects 0.000 description 14
- 238000012546 transfer Methods 0.000 description 11
- 230000032258 transport Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 10
- 230000001133 acceleration Effects 0.000 description 9
- 238000004891 communication Methods 0.000 description 9
- 230000000694 effects Effects 0.000 description 6
- 230000014509 gene expression Effects 0.000 description 6
- 210000000707 wrist Anatomy 0.000 description 6
- 230000004048 modification Effects 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 230000010365 information processing Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 239000004065 semiconductor Substances 0.000 description 3
- 238000007792 addition Methods 0.000 description 2
- 238000005401 electroluminescence Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000000630 rising effect Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 238000001179 sorption measurement Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 210000000078 claw Anatomy 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000000691 measurement method Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 229920002239 polyacrylonitrile Polymers 0.000 description 1
- 201000006292 polyarteritis nodosa Diseases 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
Images
Landscapes
- Manipulator (AREA)
Abstract
【課題】ワークを保持している最中に、ワークの質量を精度よく推定する。【解決手段】質量推定方法は、ロボット10の吸着ハンド25によりワークWを保持している状態で、ワークWの質量を推定する。質量推定方法は、第1時点t0におけるワークWの鉛直方向の第1速度v0を取得するステップと、第2時点t1におけるワークWの鉛直方向の第2速度v1を取得するステップと、第1時点t0から第2時点t1までの期間にわたってワークWに加わる力の力積に相当する値を算出するステップと、第1速度v0、第2速度v1および前記力積に相当する値に基づいてワークWの質量を推定するステップと、を有する。【選択図】図4
Description
本開示は、質量推定方法、制御装置およびロボットシステムに関する。
従来、ロボットシステムにおいて、ロボットがワークを保持して搬送している最中に、当該ワークの質量を推定する技術が知られている。例えば、特許文献1には、ロボットのハンドがワークを搬送している間に、ロボットにかかる力、加速度、遠心力やコリオリ力による加速度ベクトル等のデータを用いて、ワークの質量を推定する技術が開示されている。
しかしながら、ワークの搬送時に計測した加速度の情報は、ノイズ性能に優れず、ワークの質量の推定精度が低下する可能性がある。また、加速度を計測する加速度センサをロボットに設置した場合には、ロボットシステムの製造コストが増加することになる。
本開示は、ワークを保持している最中に、ワークの質量を精度よく推定することができる質量推定方法、制御装置およびロボットシステムを提供する。
本開示の一態様によれば、ロボットのエンドエフェクタによりワークを保持している状態で、前記ワークの質量を推定する質量推定方法であって、第1時点における前記ワークの所定の方向の第1速度を取得するステップと、前記第1時点よりも後の第2時点における前記ワークの前記所定の方向の第2速度を取得するステップと、前記第1時点から前記第2時点までの期間にわたって前記ワークに加わる力の力積に相当する値を算出するステップと、前記第1速度、前記第2速度、および前記力積に相当する値に基づいて前記ワークの質量を推定するステップと、を有する、質量推定方法が提供される。
一態様によれば、ワークを保持している最中に、ワークの質量を精度よく推定することができる。
以下、図面を参照して本開示を実施するための形態について説明する。各図面において、同一構成部分には同一符号を付し、重複した説明を省略する場合がある。
図1は、本開示の一実施形態に係るロボットシステム1を概略的に示す説明図である。図1に示すように、ロボットシステム1は、パレット50に複数積み重ねられたワークWを、搬送先のコンベヤ60等に積み下ろしするデパレタイズシステムとして構成される。なお、ロボットシステム1は、デパレタイズシステムに限定されず、例えば、ワークWを積み付けするパレタイズシステムにも適用し得る。あるいは、本開示の技術は、ピックアップ位置からドロップオフ位置にワークWを搬送する種々のロボットシステムに適用し得る。
ロボットシステム1は、ワークWを把持して搬送するロボット10と、ロボット10を制御する制御装置70と、を備える。
ロボット10は、ベース11と、ベース11の上部に設置される複数のアーム20と、各アーム20同士を連結する複数の関節部30と、を有する垂直多関節タイプの搬送ロボットである。
複数のアーム20は、ベース11側から末端側に向かって順に、第1アーム21、第2アーム22、第3アーム23および手首部24を有する。第1アーム21は、回動部12を介してベース11に取り付けられ、鉛直方向に沿って起立している。回動部12は、ベース11内に回動用モータ12mを有し、複数のアーム20全体をベース11と相対的に鉛直軸回り(θ方向)に回転させる。
ロボット10の複数の関節部30は、第1アーム21と第2アーム22間に設置される第1関節部31、第2アーム22と第3アーム23間に設置される第2関節部32、および第3アーム23と手首部24間に設置される第3関節部33を含む。ロボット10の内部には、回動部12、第1~第3関節部31、32、33の各々を独立して回転させる動作装置34が設けられている。例えば、動作装置34は、第1~第3関節部31、32、33内の各々に関節用モータ34mを有するとともに、回動用モータ12mおよび各関節用モータ34mを回転駆動させるモータドライバ(不図示)を有する。動作装置34は、回動用モータ12m、各関節用モータ34mに対してPID制御を行いつつ、回動用モータ12m、各関節用モータ34mの各エンコーダとモータドライバとの間でフィードバック制御を行う。動作装置34は、回動部12、第1~第3関節部31、32、33を独立して動作させることで、目的の3次元位置に吸着ハンド25を精度よく配置できる。
さらに、ロボット10は、エンドエフェクタである吸着ハンド25を手首部24(複数のアーム20の末端)に備える。吸着ハンド25は、図示しないエア機構により吸着パッド25a内のエアを吸引することによりワークWを保持する一方で、エア機構からエアを供給することにより保持したワークWを解放する。なお、エンドエフェクタは、吸着ハンド25に限定されず、ワークWの姿勢を変動せずにワークWを保持可能な種々の構成を適用し得る。例えば、エンドエフェクタは、ワークWをクランプする複数の爪を備えたものでもよい。
ロボット10は、力を計測する計測器である力センサ40を、手首部24の内部に備える。エンドエフェクタである吸着ハンド25は、力センサ40を介して手首部24に支持されている。本実施形態において、力センサ40は、X軸方向、Y軸方向およびZ軸方向の各力と、X軸回り、Y軸回りおよびZ軸回りの力のモーメントとを計測する6軸力覚センサを用いている。一例として、力センサ40は、センサ内の軸毎の構造物にかかる変形を歪ゲージにより計測して力に換算するものを適用できる。
力センサ40は、ワークWを把持して搬送している最中に、吸着ハンド25から受ける力を継続的に計測して、その計測値のデータを制御装置70に送信する。なお、後述する質量推定方法では、ワークWからZ軸方向(鉛直方向)にかかる力の計測値をデータとして利用する。このため、計測器は、Z軸方向にかかる力を計測可能であればよく、例えば、Z軸方向の荷重を計測するロードセル等を適用してもよい。
制御装置70は、以上のロボット10に対して有線通信または無線通信可能に接続され、ロボット10の動作を制御する。また、制御装置70は、ロボット10によりワークWを保持している最中に、ワークWの質量を推定する質量推定方法を実施する。本実施形態に係る制御装置70は、Z軸方向(鉛直方向:所定の方向)の力と、力の作用時間とを掛け合わせる力積の概念を用いてワークWの質量を推定する。以下、この質量推定方法の原理について説明していく。
第1時点t0において鉛直方向の第1速度v0の質量Mの物体が、第2時点t1において鉛直方向の第2速度v1であるとする。このとき運動量保存の法則では、鉛直方向の運動量の変化であるM(v1-v0)は、鉛直方向上側の速度および力を正とすると、第1時点t0~第2時点t1の期間に加わる鉛直方向の外力Fおよび重力Mgの力積∫(F(t)-Mg)dtと等しくなる。つまり、以下の式(1)が成り立っている。
そして、上記の式(1)から質量Mを求める演算式に変形すると、以下の式(2)のようになる。
ただし、ロボットシステム1の実際の運用において、制御装置70は、第1時点t0~第2時点t1まで期間の力を連続的に取得して積分値を算出しなくてもよい。例えば、力センサ40は、適宜の計測単位(例えば100ミリ秒)でZ軸方向の力の計測値(データ)を離散的に計測している。このため、制御装置70は、離散値である力センサ40の計測値を受信すると、次の受信タイミングまでZ軸方向の力を保持(零次ホールド)して、これら保持したZ軸方向の力の第1時点t0から第2時点t1まで積和を算出する。ここで「積和」とは、力センサ40が複数の計測時点それぞれにおいて計測するZ軸方向の力と、計測単位の時間間隔(例えば100ミリ秒)とを乗じた計測単位当たりの力積を、第1時点t0から第2時点t1までの期間にわたって合算することをいう。すなわち以下の式(3)に示すように、制御装置70は、離散化されたZ軸方向の外力F(t)と、計測単位の時間間隔Δtと、を乗じた積を合算した積和を算出することで、物体の質量Mに近似できる。
なお、積和の算出は、上記のように、力センサ40の計測値を零次ホールドして一定のΔtの間隔で計算することに限定されない。例えば、積和の算出では、ある計測時点での力センサ40の計測値とその計測時点のタイムスタンプとが紐づいていれば、ある計測時点Aでの力とその計測時点A~次の計測時点Bのタイムスタンプの時間差(時間間隔Δt)とを乗じた値、その計測時点Bでの力とその計測時点B~次の計測時点Cのタイムスタンプの時間差(時間間隔Δt)とを乗じた値、…を順次合算して、式(3)の分子部分を得てもよい。
また、力センサ40が計測する物体の質量Mは、ワークWの質量m2の他に、上記したエンドエフェクタ(吸着ハンド25)の質量m1も加わっている。そのため、実際のワークWの質量m2の算出では、吸着ハンド25の質量m1の影響を取り除く補正処理を行う。ただし、力センサ40の計測値は、オフセットしたり、温度ドリフトしたりする。吸着ハンド25の質量m1を取り除く際に、静止時に取得した静止計測値をオフセットとして保存し、動作時に取得した動作計測値から静止計測値を単純に差し引いても、吸着ハンド25の質量m1か、力センサ40の計測値のオフセットかを区別できない。
このため、制御装置70は、吸着ハンド25の質量m1を取り除く補正方法として、力センサ40のオフセットにおいて、吸着ハンド25の質量m1ごとオフセットをとってゼロとする。つまり、手首にかかる外力Fではなく、吸着ハンド25の質量m1ごとオフセットしたF-m1g=F'を使って上記の式(1)を変形する。この場合、ワークWの質量m2は、以下の式(4)となる。
また、上記の式(4)にV=v1-v0、T=t1-t0を代入すると、以下の式(5)のようになる。
さらに、制御装置70は、上述したように力センサ40の離散化されたZ軸方向の力の積和を算出することで、以下の式(6)に示すようにワークWの質量m2を近似的に算出できる。
すなわち、制御装置70は、式(6)を用いることで、ワークWの質量m2を算出できる。式(6)のパラメータにおいて、吸着ハンド25の質量m1は、ロボット10の使用前に予め測定を行って、制御装置70の記憶部80(図2参照)に記憶しておけばよい。また、式(6)のパラメータにおいて、F'(t)は力センサ40によって計測されたZ軸方向の力のデータを用いる。
さらに、式(6)のパラメータのうち第1速度v0、第2速度v1は、Z軸方向のワークWの速度であり、ロボット10がワークWを保持して浮上させている間に、種々の計測方法または算出方法によって得ることが可能である。例えば、ロボットシステム1は、以下の(a)~(d)の方法のうちいずれか1つ(または複数)を実施することにより、第1時点t0の第1速度v0および第2時点t1の第2速度v1を得ることができる。
(a)制御装置70が認識している吸着ハンド25またはワークWの位置(換言すれば、各アーム20間の位置)の微小時間における変化(差分)を当該微小時間でわった値を速度とする。微小時間とは、第1時点t0から第2時点t1までの期間よりも充分に短い期間である。例えば、微小時間とは、ある時点から次の時点までの時間間隔でよく、ある時点から当該微小時間の経過時点までの当該対象の位置の差分を当該微小時間で割った値を、当該時点の対象の速度として計算してよい。
(b)各アーム20の位置に対して何らかの多項式フィッティングをかけることで得られた多項式について、各アーム20の第1時点t0、第2時点t1における1階微分を速度とする。
(c)各アーム20を連結している各関節部30の角速度および各アーム20のリンク長からワークWの速度を計算する。
(d)図示しない三次元位置計測器等を用いて第1時点t0、第2時点t1におけるワークWまたは吸着ハンド25の位置を計測し、位置の微小時間における差分を当該微小時間で割った値を速度とする。
(a)制御装置70が認識している吸着ハンド25またはワークWの位置(換言すれば、各アーム20間の位置)の微小時間における変化(差分)を当該微小時間でわった値を速度とする。微小時間とは、第1時点t0から第2時点t1までの期間よりも充分に短い期間である。例えば、微小時間とは、ある時点から次の時点までの時間間隔でよく、ある時点から当該微小時間の経過時点までの当該対象の位置の差分を当該微小時間で割った値を、当該時点の対象の速度として計算してよい。
(b)各アーム20の位置に対して何らかの多項式フィッティングをかけることで得られた多項式について、各アーム20の第1時点t0、第2時点t1における1階微分を速度とする。
(c)各アーム20を連結している各関節部30の角速度および各アーム20のリンク長からワークWの速度を計算する。
(d)図示しない三次元位置計測器等を用いて第1時点t0、第2時点t1におけるワークWまたは吸着ハンド25の位置を計測し、位置の微小時間における差分を当該微小時間で割った値を速度とする。
すなわち、ワークWの第1速度v0、第2速度v1は、ロボット10の姿勢あるいは速度が時間情報とともに保存されていれば、第1時点t0と第2時点t1における吸着ハンド25の位置の微小時間における差分を当該微小時間でわった値や各関節部30の角速度の順運動学計算から取得可能である。
図2は、質量推定方法の実施時に、制御装置70に形成される機能ブロックを示すブロック図である。図2に示すように、制御装置70は、質量推定方法を実施においてプログラムの実行下に、ロボット制御部81、力情報取得部82、速度情報取得部83、質量推定部84を内部に形成する。
ロボット制御部81は、ロボット10によるワークWの搬送を制御する機能部である。ロボット制御部81は、図示しないカメラ、センサ等の情報に基づきパレット50に載せられている複数のワークWの中から搬送対象とするワークWを選択する。そして、ロボット制御部81は、現在の吸着ハンド25の3次元位置と、搬送対象のワークWの3次元位置とを特定して、吸着ハンド25の移動経路を設定する。その後、ロボット制御部81は、設定した移動経路に基づき各関節部30を動作して、吸着ハンド25をワークWの直上に移動し、さらに吸着ハンド25を鉛直方向下側に移動することでワークWを吸着保持する。
図3は、ワークWの搬送動作を示す説明図であり、(A)はワーク持ち上げ工程を示す、(B)はワーク水平搬送工程を示す。ワークWの保持後、ロボット制御部81は、図3(A)に示すように、各関節部30を動作して、吸着ハンド25を鉛直方向上側に上昇させるワーク持ち上げ工程を行う。制御装置70は、このワーク持ち上げ工程におけるワークWのZ軸方向の上昇中にワークWの質量推定方法を実施する。なお、質量推定方法は、ワークWのZ軸方向の上昇中に実施することに限定されず、上記式(1)~(6)を用いれば、ワークWを浮上させて静止した状態でもワークWの質量m2を推定できる。
ワーク持ち上げ工程後、ロボット制御部81は、図3(B)に示すように、回動部12および各関節部30を動作して、各アーム20全体を鉛直軸回りに回転させ、ワークWの搬送先の直上に吸着ハンド25を移動させるワーク水平搬送工程を行う。質量推定方法は、このワーク水平搬送工程でも、力センサ40が計測するZ軸方向の力、およびZ軸方向の速度(水平方向のみに移動の場合は速度が0)を用いてワークWの質量m2を推定できる。
そして、ワーク水平搬送工程後に、ロボット制御部81は、各関節部30を動作して、吸着ハンド25を鉛直方向下側に下降させてコンベヤ60上にワークWを載置するワーク降し工程を行う。最後に、ロボット制御部81は、吸着ハンド25によるワークWの保持を解除することで、搬送対象のワークWの搬送を終了する。さらにワークWの積み下ろしを行う場合、ロボット制御部81は、搬送対象のワークWを新たに特定して、以上の動作を繰り返す。これにより、ロボットシステム1は、パレット50に積まれた複数のワークWを順次積み下ろすことができる。
また、制御装置70の力情報取得部82は、ロボット10によるワークWの保持を認識すると、力センサ40による力の計測を行う。上記したように、本実施形態に係る力センサ40は6軸の力を計測するが、質量推定方法では、Z軸方向成分の力が分かればよい。このため、力情報取得部82は、力センサ40から6軸の力の各情報を受信した際に、質量推定方法のためにZ軸方向の力を抽出して時間情報とともに記憶部80に記憶する。力情報取得部82は、適宜のサンプリングタイミング毎にZ軸方向の力の情報を蓄積し続けることで、吸着ハンド25およびワークWから力センサ40にかかる外力Fを監視することができる。また、6軸の力の各情報は、ロボット制御部81等のロボット10を動作する制御に使用する。
制御装置70の速度情報取得部83は、ロボット10によるワークWの保持状態で、ワークWの速度を取得し、時間情報とともに記憶部80に記憶していく。ワークWの速度を取得する方法は、上記した(a)~(d)の方法を用いることができる。本実施形態において、速度情報取得部83は、(a)の方法により第1時点t0、第2時点t1における吸着ハンド25のZ軸方向の位置をロボット制御部81から取得し、位置の微小時間における差分に基づいて速度を算出する。
制御装置70の質量推定部84は、力情報取得部82が取得したZ軸方向の力および速度情報取得部83が取得したワークWの速度を用いて、ワークWの質量m2を推定する。また上記したように、質量推定部84は、吸着ハンド25の質量m1を予め記憶しており、ワークWの質量m2を算出において上記の式(6)を使用して、この吸着ハンド25の質量m1を取り除く補正を行う。
制御装置70は、質量推定部84によりワークWの質量m2を推定すると、ロボット制御部81によるワークWの搬送において、推定したワークWの質量m2を利用する。例えば、ロボット制御部81は、ワークWの質量m2に基づき、回動部12や各関節部30のモータに対する電力供給量を補正する。これにより、ワークWの質量m2が重い場合には、電力供給量を増やすことで回動部12や各関節部30のトルクを大きくすることができる。逆にワークWの質量m2が軽い場合には、電力供給量を減らすことで回動部12や各関節部30のトルクを小さくすることができる。すなわち、制御装置70は、ワークWの搬送時の動作(加速度等)を制御することで、より安定した搬送を行うことができる。
さらに、制御装置70は、質量推定部84により推定したワークWの質量m2を、例えば、複数のワークWを管理する管理コンピュータ等の外部装置9A、9B(図5参照)に送信してもよい。管理コンピュータは、複数のワークW毎の質量m2を認識することで、ワークWの管理や移送等を良好に行うことができる。
本実施形態に係るロボットシステム1は、基本的には以上のように構成され、以下その動作(質量推定方法)について説明する。
ロボットシステム1は、制御装置70の制御下にロボット10の動作を制御して、パレット50上詰まれたワークWの積み下ろしを行う。この積み下ろしにおけるワークWの搬送時に、制御装置70は、ワークWの質量m2を推定する。図4は、質量推定方法の処理フローを示すフローチャートである。
質量推定方法において、制御装置70は、ロボット制御部81によりロボット10の動作を制御して、搬送対象のワークWに吸着ハンド25を移動してワークWを保持する(ステップS1)。ロボット10によりワークWを保持すると、ロボット制御部81は、ワークWの搬送動作を実施する(ステップS2)。ワークWの搬送動作では、上記したように、ワークWを鉛直方向上側に上昇させるワーク持ち上げ工程、回動部12を回転してワークWを搬送先の上方に移動させるワーク水平搬送工程、ワークWを下降させるワーク降し工程等を行う。
また、速度情報取得部83は、ロボット10によるワークWの搬送状態(浮上状態)をロボット制御部81から取得し、適宜の第1時点t0におけるワークWの第1速度v0を取得する(ステップS3)。上記したように、ワークWの第1速度v0は、ロボット制御部81から吸着ハンド25(ワークW)の位置を継続的に取得し、位置の微小時間における差分に基づき算出することができる。
さらに、力情報取得部82は、第1時点t0~第2時点t1までにおいて、力センサ40が任意の時間間隔Δt毎にサンプリングしたZ軸方向の外力F'を取得し(ステップS4)、時間情報とともに記憶部80に記憶していく。第1時点t0~第2時点t1の期間の間隔は、特に限定されるものではないが、例えば、0.5秒~1秒程度の範囲に設定されるとよい。
質量推定部84は、力情報取得部82が取得した期間のZ軸方向の外力F'の積和を算出する(ステップS5)。これにより、積和は、第1時点t0~第2時点t1までの外力F'の時間積分∫F'(t)dtに近似できる。
そして、速度情報取得部83は、第2時点t1においてロボット制御部81からの吸着ハンド25の位置を取得すると、位置の微小時間における差分に基づき第2時点t1におけるワークWの第2速度v1を算出する(ステップS6)。
以上の処理によって、式(6)の右辺のパラメータが揃うことになり、質量推定部84は、式(6)を用いてワークWの質量m2を推定し(ステップS7)、推定したワークWの質量m2を記憶部80に記憶する。なお、質量推定部84は、ステップS7の後、ステップS2に戻りワークWの質量m2の推定を複数回繰り返してもよい。そして、質量推定部84は、得られた複数のワークWの質量m2の平均値を算出することで、ワークWの質量m2の推定精度を高めることができる。
このように、制御装置70は、搬送動作においてロボット10がワークWを垂直に上昇している第1時点t0~第2時点t1において取得されるデータからワークWの質量m2を推定する。これにより、制御装置70は、推定された質量m2に基づいて、ワークWをコンベヤ60まで搬送する動作(例えば加速度)を適切に制御できる。
あるいは、制御装置70は、ワークWの搬送過程の異なる工程で、ワークWの質量m2をそれぞれ推定してもよい。例えば、制御装置70は、ワーク持ち上げ工程においてワークWの質量m2を推定する持ち上げ時推定処理と、ワーク水平搬送工程においてワークWの質量m2を推定する水平搬送時推定処理とで異なる処理を行うことができる。一例として、ワーク持ち上げ工程時では、ロボット制御部81によるワークWの搬送に利用するために、ワークWの質量m2を直ちに認識したほうがよい。このため、質量推定方法は、持ち上げ時推定処理において、ワークWの質量m2を短期間に得るために、上記のステップS2~S7の処理フローを1回だけ実施する、または期間を短くする等してワークWの質量m2を粗く推定する。これにより、ワークWの質量m2を直ちに得ることができる。その後、制御装置70は、管理コンピュータによるワークWの管理のために、ワーク水平搬送工程において、ワークWの質量m2を精度よく認識できるようにする。例えば、水平搬送時推定処理では、上記のステップS2~S7を複数回実施することで、ワークWの質量m2の推定精度を高めるとよい。
なお、本開示の質量推定方法、制御装置70およびロボットシステム1は、以上の構成に限定されず、種々の変形例をとり得ることは勿論である。例えば、力センサ40が計測する計測値において吸着ハンド25(エンドエフェクタ)の質量m1の影響を取り除く補正方法は、上記した力センサ40のオフセットを吸着ハンド25ごととる方法に限定されず、以下の第1変形例や第2変形例を実施してもよい。
〔第1変形例〕
第1変形例に係る質量推定方法は、力センサ40のオフセットについて計測タイミングでのキャンセルを行わずに、力センサ40から出力された計測値をそのまま使用する。すなわち、制御装置70は、質量推定方法において上記の式(3)を用いて質量Mを算出し、最終的に算出された質量Mから吸着ハンド25の質量m1を差し引くことで、ワークWの質量m2を推定してもよい。これにより制御装置70は、ワークWの質量m2を一層簡単に得ることができる。
第1変形例に係る質量推定方法は、力センサ40のオフセットについて計測タイミングでのキャンセルを行わずに、力センサ40から出力された計測値をそのまま使用する。すなわち、制御装置70は、質量推定方法において上記の式(3)を用いて質量Mを算出し、最終的に算出された質量Mから吸着ハンド25の質量m1を差し引くことで、ワークWの質量m2を推定してもよい。これにより制御装置70は、ワークWの質量m2を一層簡単に得ることができる。
〔第2変形例〕
第2変形例に係る質量推定方法は、力センサ40のオフセットをとる際に、力センサ40にかかる力を0とするのではなく、吸着ハンド25がかける力m1gとなるようにする。そうすると、力センサ40のオフセットだけを排除することが可能となる。例えば、吸着ハンド25がワークWを保持していない状態で、力センサ40の計測値を、吸着ハンド25の力m1gとする。そして、質量推定方法において、制御装置70は、吸着ハンド25の質量m1およびワークWの質量m2を加えた質量Mを推定し、推定後の質量Mから質量m1を差し引くことで、ワークWの質量m2をより精度よく得ることができる。
第2変形例に係る質量推定方法は、力センサ40のオフセットをとる際に、力センサ40にかかる力を0とするのではなく、吸着ハンド25がかける力m1gとなるようにする。そうすると、力センサ40のオフセットだけを排除することが可能となる。例えば、吸着ハンド25がワークWを保持していない状態で、力センサ40の計測値を、吸着ハンド25の力m1gとする。そして、質量推定方法において、制御装置70は、吸着ハンド25の質量m1およびワークWの質量m2を加えた質量Mを推定し、推定後の質量Mから質量m1を差し引くことで、ワークWの質量m2をより精度よく得ることができる。
〔制御装置の構成〕
質量推定方法を行う制御装置70の一部または全部は、ハードウェアで構成されていてもよいし、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)等が実行するソフトウェア(プログラム)の情報処理で構成されてもよい。ソフトウェアの情報処理で構成される場合には、前述した実施形態における各装置の少なくとも一部の機能を実現するソフトウェアを、CD-ROM(Compact Disc-Read Only Memory)、USB(Universal Serial Bus)メモリ等の非一時的な記憶媒体(非一時的なコンピュータ可読媒体)に収納し、コンピュータに読み込ませることにより、ソフトウェアの情報処理を実行してもよい。また、通信ネットワークを介して当該ソフトウェアがダウンロードされてもよい。さらに、ソフトウェアの処理の全部または一部がASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)等の回路に実装されることにより、当該ソフトウェアによる情報処理がハードウェアにより実行されてもよい。
質量推定方法を行う制御装置70の一部または全部は、ハードウェアで構成されていてもよいし、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)等が実行するソフトウェア(プログラム)の情報処理で構成されてもよい。ソフトウェアの情報処理で構成される場合には、前述した実施形態における各装置の少なくとも一部の機能を実現するソフトウェアを、CD-ROM(Compact Disc-Read Only Memory)、USB(Universal Serial Bus)メモリ等の非一時的な記憶媒体(非一時的なコンピュータ可読媒体)に収納し、コンピュータに読み込ませることにより、ソフトウェアの情報処理を実行してもよい。また、通信ネットワークを介して当該ソフトウェアがダウンロードされてもよい。さらに、ソフトウェアの処理の全部または一部がASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)等の回路に実装されることにより、当該ソフトウェアによる情報処理がハードウェアにより実行されてもよい。
ソフトウェアを収納する記憶媒体は、光ディスク等の着脱可能なものでもよいし、ハードディスク、メモリ等の固定型の記憶媒体であってもよい。また、記憶媒体は、コンピュータ内部に備えられてもよいし(主記憶装置、補助記憶装置等)、コンピュータ外部に備えられてもよい。
図5は、前述した実施形態における制御装置70のハードウェア構成の一例を示すブロック図である。制御装置70は、一例として、プロセッサ71と、主記憶装置72(メモリ)と、補助記憶装置73(メモリ)と、ネットワークインタフェース74と、デバイスインタフェース75と、を備え、これらがバス76を介して接続されたコンピュータ7として実現されてもよい。
図5のコンピュータ7は、各構成要素を一つ備えているが、同じ構成要素を複数備えていてもよい。また、図5では、1台のコンピュータ7が示されているが、ソフトウェアが複数台のコンピュータにインストールされて、当該複数台のコンピュータそれぞれがソフトウェアの同一のまたは異なる一部の処理を実行してもよい。この場合、コンピュータそれぞれがネットワークインタフェース74等を介して通信して処理を実行する分散コンピューティングの形態であってもよい。つまり、前述した実施形態における制御装置70は、1または複数の記憶装置に記憶された命令を1台または複数台のコンピュータが実行することで機能を実現するシステムとして構成されてもよい。また、端末から送信された情報をクラウド上に設けられた1台または複数台のコンピュータで処理し、この処理結果を端末に送信するような構成であってもよい。
前述した実施形態における制御装置70の各種演算は、1または複数のプロセッサを用いて、またはネットワークを介した複数台のコンピュータを用いて、並列処理で実行されてもよい。また、各種演算が、プロセッサ内に複数ある演算コアに振り分けられて、並列処理で実行されてもよい。また、本開示の処理、手段等の一部または全部は、ネットワークを介してコンピュータ7と通信可能なクラウド上に設けられたプロセッサおよび記憶装置の少なくとも一方により実現されてもよい。このように、前述した実施形態における各装置は、1台または複数台のコンピュータによる並列コンピューティングの形態であってもよい。
プロセッサ71は、少なくともコンピュータの制御または演算のいずれかを行う電子回路(処理回路、Processing circuit、Processing circuitry、CPU、GPU、FPGA、ASIC等)であってもよい。また、プロセッサ71は、汎用プロセッサ、特定の演算を実行するために設計された専用の処理回路または汎用プロセッサと専用の処理回路との両方を含む半導体装置のいずれであってもよい。また、プロセッサ71は、光回路を含むものであってもよいし、量子コンピューティングに基づく演算機能を含むものであってもよい。
プロセッサ71は、コンピュータ7の内部構成の各装置等から入力されたデータやソフトウェアに基づいて演算処理を行ってもよく、演算結果や制御信号を各装置等に出力してもよい。プロセッサ71は、コンピュータ7のOS(Operating System)や、アプリケーション等を実行することにより、コンピュータ7を構成する各構成要素を制御してもよい。
前述した実施形態における制御装置70は、1または複数のプロセッサ71により実現されてもよい。ここで、プロセッサ71は、1チップ上に配置された1または複数の電子回路を指してもよいし、2つ以上のチップあるいは2つ以上のデバイス上に配置された1または複数の電子回路を指してもよい。複数の電子回路を用いる場合、各電子回路は有線または無線により通信してもよい。
主記憶装置72は、プロセッサ71が実行する命令および各種データ等を記憶してもよく、主記憶装置72に記憶された情報がプロセッサ71により読み出されてもよい。補助記憶装置73は、主記憶装置72以外の記憶装置である。なお、これらの記憶装置は、電子情報を格納可能な任意の電子部品を意味するものとし、半導体のメモリでもよい。半導体のメモリは、揮発性メモリまたは不揮発性メモリのいずれでもよい。前述した実施形態における制御装置70において各種データ等を保存するための記憶装置は、主記憶装置72または補助記憶装置73により実現されてもよく、プロセッサ71に内蔵される内蔵メモリにより実現されてもよい。例えば、前述した実施形態における記憶部80は、主記憶装置72または補助記憶装置73により実現されてもよい。
前述した実施形態における制御装置70が、少なくとも1つの記憶装置(メモリ)と、この少なくとも1つの記憶装置に接続(結合)される少なくとも1つのプロセッサで構成される場合、記憶装置1つに対して、少なくとも1つのプロセッサが接続されてもよい。また、プロセッサ1つに対して、少なくとも1つの記憶装置が接続されてもよい。また、複数のプロセッサのうち少なくとも1つのプロセッサが、複数の記憶装置のうち少なくとも1つの記憶装置に接続される構成を含んでもよい。また、複数台のコンピュータに含まれる記憶装置とプロセッサによって、この構成が実現されてもよい。さらに、記憶装置がプロセッサと一体になっている構成(例えば、L1キャッシュ、L2キャッシュを含むキャッシュメモリ)を含んでもよい。
ネットワークインタフェース74は、無線または有線により、通信ネットワーク8に接続するためのインタフェースである。ネットワークインタフェース74は、既存の通信規格に適合したもの等、適切なインタフェースを用いればよい。ネットワークインタフェース74により、通信ネットワーク8を介して接続された外部装置9Aと情報のやり取りが行われてもよい。なお、通信ネットワーク8は、WAN(Wide Area Network)、LAN(Local Area Network)、PAN(Personal Area Network)等の何れかまたはそれらの組み合わせであってよく、コンピュータ7と外部装置9Aとの間で情報のやり取りが行われるものであればよい。WANの一例としてインターネット等があり、LANの一例としてIEEE802.11やイーサネット(登録商標)等があり、PANの一例としてBluetooth(登録商標)やNFC(Near Field Communication)等がある。
デバイスインタフェース75は、外部装置9Bと直接接続するUSB等のインタフェースである。
外部装置9Aはコンピュータ7と通信ネットワーク8を介して接続されている装置である。外部装置9Bはコンピュータ7と直接接続されている装置である。
外部装置9Aまたは外部装置9Bは、一例として、入力装置であってもよい。入力装置は、例えば、カメラ、マイクロフォン、モーションキャプチャ、各種センサ、キーボード、マウス、タッチパネル等のデバイスであり、取得した情報をコンピュータ7に与える。また、パーソナルコンピュータ、タブレット端末、スマートフォン等の入力部とメモリとプロセッサを備えるデバイスであってもよい。
また、外部装置9Aまたは外部装置9Bは、一例として、出力装置でもよい。出力装置は、例えば、LCD(Liquid Crystal Display)、有機EL(Electro Luminescence)パネル等の表示装置であってもよいし、音声等を出力するスピーカ等であってもよい。また、パーソナルコンピュータ、タブレット端末またはスマートフォン等の出力部とメモリとプロセッサを備えるデバイスであってもよい。
また、外部装置9Aまた外部装置9Bは、記憶装置(メモリ)であってもよい。例えば、外部装置9Aはネットワークストレージ等であってもよく、外部装置9BはHDD等のストレージであってもよい。
また、外部装置9Aまたは外部装置9Bは、前述した実施形態における各装置の構成要素の一部の機能を有する装置でもよい。つまり、コンピュータ7は、外部装置9Aまたは外部装置9Bに処理結果の一部または全部を送信してもよいし、外部装置9Aまたは外部装置9Bから処理結果の一部または全部を受信してもよい。
本明細書(請求項を含む)において、「データを入力として/を用いて/データに基づいて/に従って/に応じて」等の表現(同様な表現を含む)が用いられる場合は、特に断りがない場合、データそのものを用いる場合や、データに何らかの処理を行ったもの(例えば、ノイズ加算したもの、正規化したもの、データから抽出した特徴量、データの中間表現等)を用いる場合を含む。また、「データを入力として/を用いて/データに基づいて/に従って/に応じて」何らかの結果が得られる旨が記載されている場合(同様な表現を含む)、特に断りがない場合、当該データのみに基づいて当該結果が得られる場合や、当該データ以外の他のデータ、要因、条件および/または状態にも影響を受けて当該結果が得られる場合を含む。また、「データを出力する」旨が記載されている場合(同様な表現を含む)、特に断りがない場合、データそのものを出力として用いる場合や、データに何らかの処理を行ったもの(例えば、ノイズ加算したもの、正規化したもの、データから抽出した特徴量、各種データの中間表現等)を出力として用いる場合を含む。
本明細書(請求項を含む)において、「AがBするよう構成される(A configured to B)」との表現が用いられる場合は、要素Aの物理的構造が、動作Bを実行可能な構成を有するとともに、要素Aの恒常的(permanent)または一時的(temporary)な設定(setting/configuration)が、動作Bを実際に実行するように設定(configured/set)されていることを含んでよい。例えば、要素Aが汎用プロセッサである場合、当該プロセッサが動作Bを実行可能なハードウェア構成を有するとともに、恒常的(permanent)または一時的(temporary)なプログラム(命令)の設定により、動作Bを実際に実行するように設定(configured)されていればよい。また、要素Aが専用プロセッサ、専用演算回路等である場合、制御用命令およびデータが実際に付属しているか否かとは無関係に、当該プロセッサの回路的構造等が動作Bを実際に実行するように構築(implemented)されていればよい。
本明細書において、ある実施形態の有する特定の構成について特定の効果(advantage/result)が得られる旨が記載されている場合、別段の理由がない限り、当該構成を有する他の1つまたは複数の実施形態についても当該効果が得られると理解されるべきである。但し、当該効果の有無は、一般に種々の要因、条件および/または状態に依存し、当該構成により必ず当該効果が得られるものではないと理解されるべきである。当該効果は、種々の要因、条件および/または状態が満たされたときに実施形態に記載の当該構成により得られるものに過ぎず、当該構成または類似の構成を規定したクレームに係る発明において、当該効果が必ずしも得られるものではない。
本明細書(請求項を含む)において、複数のハードウェアが所定の処理を行う場合、各ハードウェアが協働して所定の処理を行ってもよいし、一部のハードウェアが所定の処理の全てを行ってもよい。また、一部のハードウェアが所定の処理の一部を行い、別のハードウェアが所定の処理の残りを行ってもよい。本明細書(請求項を含む)において、「1または複数のハードウェアが第1の処理を行い、1または複数のハードウェアが第2の処理を行う」等の表現(同様な表現を含む)が用いられている場合、第1の処理を行うハードウェアと第2の処理を行うハードウェアは同じものであってもよいし、異なるものであってもよい。つまり、第1の処理を行うハードウェアおよび第2の処理を行うハードウェアが、1または複数のハードウェアに含まれていればよい。なお、ハードウェアは、電子回路、電子回路を含む装置等を含んでよい。
本明細書(請求項を含む)において、複数の記憶装置(メモリ)がデータの記憶を行う場合、複数の記憶装置のうち個々の記憶装置は、データの一部のみを記憶してもよいし、データの全体を記憶してもよい。また、複数の記憶装置のうち一部の記憶装置がデータを記憶する構成を含んでもよい。
以上の実施形態で説明した本開示の技術的思想および効果について以下に記載する。
本開示の第1の態様は、ロボット10のエンドエフェクタ(吸着ハンド25)によりワークWを保持している状態で、ワークWの質量を推定する質量推定方法であって、第1時点t0におけるワークWの所定の方向の第1速度v0を取得するステップと、第1時点t0よりも後の第2時点t1におけるワークWの所定の方向の第2速度v1を取得するステップと、第1時点t0から第2時点t1までの期間にわたってワークWに加わる力の力積に相当する値を算出するステップと、第1速度v0、第2速度v1および力積に相当する値に基づいてワークWの質量を推定するステップと、を有する。
上記によれば、質量推定方法は、ロボット10がワークWを保持している最中に、第1速度v0、第2速度v1および力積に相当する値を用いることで、タクトタイムを阻害することなく、ワークWの質量を精度よく推定することができる。すなわち、質量推定方法は、ノイズの影響を受け易い加速度センサの加速度情報を使用せずに、第1時点t0~第2時点t1の期間における所的の方向の力積を使用する。その結果、質量推定方法は、ノイズに優れた質量を推定でき、また加速度センサが必要なくなることで製造コストを削減することも可能となる。また、この質量推定方法では、外乱オブザーバのように推定器にフィードバックを持たないので、推定値が発散するリスクが小さくなり、安定して推定を行うことができる。
また、ワークWの質量を推定するステップでは、期間におけるワークWの所定の方向の運動量の変化と、期間におけるワークWの所定の方向の力の力積とが等しいとする運動量保存の法則に基づき、ワークWの質量を推定する。このように所定の方向の力積を利用することで、質量推定方法は、簡単かつ精度よく質量を推定できる。この場合、質量推定方法は、ノイズ性能に優れない計測器(力センサ40、ロードセル等)を適用することも可能となり、製造コストの低廉化を促すことができる。
また、ワークWに加わる所定の方向の力を計測器(力センサ40)により計測するステップを有し、ワークWに加わる力の力積に相当する値を算出するステップでは、計測器により計測した所定の方向の力を期間にわたって積分することで、積分値を算出する。このようにワークWに加わる力の力積に相当する値として算出した積分値を用いることで、質量推定方法は、ワークWの質量を良好に推定できる。
また、ワークWに加わる力の力積に相当する値を算出するステップでは、複数時点において計測器(力センサ40)が計測した所定の方向の力を用いて、積分値を算出する。このように、質量推定方法は、計測器により複数時点で計測した離散的な計測値を用いて、積分値を得ることができる。
また、積分値の算出は、複数時点における所定の方向の力と、それぞれの時点に対応する時間間隔と、を乗じた積を合算した積和を積分値とする。計測器が計測した複数時点の所定の方向の力とその時間間隔とを乗じた積を合算した積和により、質量推定方法は、積分値を良好に近似できる。また、質量推定方法は、積和を用いることで、取得したデータの時間方向の間隔が一定でない非リアルタイムなシステムでも破綻しなくなる。言い換えれば、質量推定方法は、サンプリング周期の変動に強いものとなる。
また、ワークWの質量m2を推定するステップでは、エンドエフェクタ(吸着ハンド25)の質量m1を取り除く補正処理を行う。これにより、質量推定方法は、エンドエフェクタの質量m1の影響を受けないワークWの質量m2を推定できる。
また、補正処理は、ワークWを保持していない状態で計測器(力センサ40)が計測した計測値が0となるようにエンドエフェクタ(吸着ハンド25)の質量m1ごとオフセットし、ワークWの質量m2を推定するステップにおいて、計測器の所定の方向の力からエンドエフェクタの力を減算する。これにより、質量推定方法は、エンドエフェクタの質量m1の影響を精度よく取り除くことができる。
また、補正処理は、ワークWの質量m2を推定するステップにおいて計測器(力センサ40)の所定の方向の力を用いて質量Mを推定し、推定した質量Mからエンドエフェクタ(吸着ハンド25)の質量m1を減算する。これにより、質量推定方法は、エンドエフェクタの質量m1を簡単に取り除くことができる。
また、補正処理は、ワークWを保持していない状態で計測器(力センサ40)が計測した計測値をエンドエフェクタ(吸着ハンド25)からかかる力とし、ワークWの質量m2を推定するステップにおいて計測器の所定の方向の力を用いてエンドエフェクタの質量m1とワークの質量m2を加えた質量Mを推定し、推定した質量Mからエンドエフェクタの質量m1を減算する。この場合でも、質量推定方法は、エンドエフェクタの質量m1の影響を精度よく取り除くことができる。
また、第1速度v0の取得および第2速度v1の取得は、制御装置70が認識しているエンドエフェクタ(吸着ハンド25)またはワークWの位置の微小時間における差分を用いる。これにより、質量推定方法は、第1速度v0および第2速度v1を容易に取得できる。
また、第1速度v0の取得および第2速度v1の取得は、制御装置70が認識しているエンドエフェクタ(吸着ハンド25)またはワークWの位置に対して多項式フィッティングをかけることで得られた多項式について、第1時点t0における1階微分を第1速度v0とし、第2時点t1における1階微分を第2速度v1とする。これにより、質量推定方法は、より精度が高い第1速度v0および第2速度v1を得ることが可能となる。
第1速度v0の取得および第2速度v1の取得は、ロボット10の複数の関節部30の角速度および複数のアーム20のリンク長に基づき第1速度v0および第2速度v1を算出する。各関節部30の角速度および各アーム20のリンク長は、ロボット10の制御において一般的に計測および認識しているものであるため、この構成でも質量推定方法は、第1速度および第2速度を簡単に得ることができる。
期間は、ロボット10が所定の方向に沿ってワークWを持ち上げる期間に含まれる。これにより、質量推定方法は、ワークWを持ち上げている間の力に基づき、ワークWの質量をスムーズに推定できる。なお、ロボット10がワークWを持ち上げる方向は、鉛直方向だけでなく、鉛直方向に対して傾斜した方向でもよい。
また、期間は、ロボット10が水平方向にワークWを移動する期間に含まれる。この場合でも、質量推定方法は、所定の方向の力の成分を取り出すことで、ワークWの質量を推定できる。
また、第1速度v0を取得するステップ、第2速度v1を取得するステップ、ワークに加わる力の力積に相当する値を算出するステップおよびワークWの質量を推定するステップを複数回繰り返して、推定された複数のワークWの質量に基づき1つのワークの質量を得る。これにより、質量推定方法は、ワークWの質量をより一層精度よく推定できる。
また、所定の方向は、鉛直方向である。これにより、質量推定方法は、ワークWから鉛直方向にかかる力に基づき、ワークWの質量を安定的に推定できる。
ロボット10は、鉛直方向に沿ってワークWを持ち上げる工程と、ワークWを水平方向に移動する工程と、を順に行い、ワークWを持ち上げる工程では、ワークWの質量を粗く推定し、ワークWを水平方向に移動する工程では、ワークWを持ち上げる工程よりも精度よくワークWの質量を推定する。これにより、質量推定方法は、ワークWを持ち上げる工程で粗く推定した質量に基づき、ワークWの搬送制御の補正を行い、さらにワークWを水平方向に移動する工程でより精度の高いワークWの質量を推定できる。
また、本開示の第2の態様は、ロボット10のエンドエフェクタ(吸着ハンド25)によりワークWを保持している状態で、ワークWの質量を推定する制御装置70であって、第1時点t0におけるワークWの所定の方向の第1速度v0を取得し、かつ第1時点t0よりも後の第2時点t1におけるワークWの所定の方向の第2速度v1を取得する速度情報取得部83と、第1時点t0から第2時点t1までの期間にわたってワークWに加わる力の力積に相当する値を算出し、第1速度v0、第2速度v1および前記力積に相当する値に基づいてワークWの質量を推定する質量推定部84と、を有する。
また、本開示の第3の態様は、ワークWを保持するエンドエフェクタ(吸着ハンド25)を有するロボット10と、ロボット10を制御するとともにワークWを保持している状態で、ワークWの質量を推定する制御装置70とを有するロボットシステム1であって、制御装置70は、第1時点t0におけるワークWの所定の方向の第1速度v0を取得し、かつ第1時点t0よりも後の第2時点t1におけるワークWの所定の方向の第2速度v1を取得する速度情報取得部83と、第1時点t0から第2時点t1までの期間にわたってワークWに加わる力の力積に相当する値を算出し、第1速度v0、第2速度v1および前記力積に相当する値に基づいてワークWの質量を推定する質量推定部84と、を有する。
上記の第2の態様および第3の態様でも、ワークWを保持している最中に、ワークWの質量を精度よく推定することができる。
なお、上述の各実施形態において、力情報取得部82はワークWに加わる鉛直方向の力の情報を取得し、速度情報取得部83はワークWの鉛直方向の速度を取得し、質量推定部84は、取得された鉛直方向の力および速度の情報に基づいてワークWの質量を推定する。しかし、力積の概念および運動量保存の法則にしたがってワークWの質量を推定するために用いられる情報は、鉛直方向の力および速度に限定されず、ワークWに加わる所定の方向の力、およびワークWの当該所定の方向の速度の情報を用いてよい。すなわち、上述の各実施形態で説明される鉛直方向は、この所定の方向の一例である。
以上、本開示の実施形態について詳述したが、本開示は上記した個々の実施形態に限定されるものではない。特許請求の範囲に規定された内容およびその均等物から導き出される本発明の概念的な思想と趣旨を逸脱しない範囲において、種々の追加、変更、置き換え、部分的削除等が可能である。例えば、前述した実施形態において、数値または数式を説明に用いている場合、これらは例示的な目的で示されたものであり、本開示の範囲を限定するものではない。また、実施形態で示した各動作の順序も例示的なものであり、本開示の範囲を限定するものではない。
Claims (19)
- ロボットのエンドエフェクタによりワークを保持している状態で、前記ワークの質量を推定する質量推定方法であって、
第1時点における前記ワークの所定の方向の第1速度を取得するステップと、
前記第1時点よりも後の第2時点における前記ワークの前記所定の方向の第2速度を取得するステップと、
前記第1時点から前記第2時点までの期間にわたって前記ワークに加わる力の力積に相当する値を算出するステップと、
前記第1速度、前記第2速度、および前記力積に相当する値に基づいて前記ワークの質量を推定するステップと、を有する、
質量推定方法。 - 前記ワークの質量を推定するステップでは、前記期間における前記ワークの前記所定の方向の運動量の変化と、前記期間における前記ワークの前記所定の方向の力の力積とが等しいとする運動量保存の法則に基づき、前記ワークの質量を推定する、
請求項1に記載の質量推定方法。 - 前記ワークに加わる前記所定の方向の力を計測器により計測するステップを有し、
前記ワークに加わる力の力積に相当する値を算出するステップでは、前記計測器により計測した前記所定の方向の力を前記期間にわたって積分することで、積分値を算出する、
請求項1または2に記載の質量推定方法。 - 前記ワークに加わる力の力積に相当する値を算出するステップでは、複数時点において前記計測器が計測した前記所定の方向の力を用いて、前記積分値を算出する、
請求項3に記載の質量推定方法。 - 前記積分値の算出は、前記複数時点における前記所定の方向の力と、それぞれの時点に対応する時間間隔と、を乗じた積を合算した積和を前記積分値とする、
請求項4に記載の質量推定方法。 - 前記ワークの質量を推定するステップでは、前記エンドエフェクタの質量を取り除く補正処理を行う、
請求項3乃至5のいずれか1項に記載の質量推定方法。 - 前記補正処理は、前記ワークを保持していない状態で前記計測器が計測した計測値が0となるように前記エンドエフェクタの質量ごとオフセットし、前記ワークの質量を推定するステップにおいて、前記計測器の前記所定の方向の力から前記エンドエフェクタの力を減算する、
請求項6に記載の質量推定方法。 - 前記補正処理は、前記ワークの質量を推定するステップにおいて前記計測器の前記所定の方向の力を用いて質量を推定し、推定した質量から前記エンドエフェクタの質量を減算する、
請求項6に記載の質量推定方法。 - 前記補正処理は、前記ワークを保持していない状態で前記計測器が計測した計測値を前記エンドエフェクタからかかる力とし、前記ワークの質量を推定するステップにおいて前記計測器の前記所定の方向の力を用いて前記エンドエフェクタの質量と前記ワークの質量を加えた質量を推定し、推定した質量から前記エンドエフェクタの質量を減算する、
請求項6に記載の質量推定方法。 - 前記第1速度の取得および前記第2速度の取得は、制御装置が認識している前記エンドエフェクタまたは前記ワークの位置の微小時間における差分を用いる、
請求項1乃至9のいずれか1項に記載の質量推定方法。 - 前記第1速度の取得および前記第2速度の取得は、制御装置が認識している前記エンドエフェクタまたは前記ワークの位置に対して多項式フィッティングをかけることで得られた多項式について、前記第1時点における1階微分を前記第1速度とし、前記第2時点における1階微分を前記第2速度とする、
請求項1乃至9のいずれか1項に記載の質量推定方法。 - 前記第1速度の取得および前記第2速度の取得は、前記ロボットの複数の関節部の角速度および複数のアームのリンク長に基づき前記第1速度および前記第2速度を算出する、
請求項1乃至9のいずれか1項に記載の質量推定方法。 - 前記期間は、前記ロボットが前記所定の方向に沿って前記ワークを持ち上げる期間に含まれる、
請求項1乃至12のいずれか1項に記載の質量推定方法。 - 前記期間は、前記ロボットが水平方向に前記ワークを移動する期間に含まれる、
請求項1乃至12のいずれか1項に記載の質量推定方法。 - 前記第1速度を取得するステップ、前記第2速度を取得するステップ、前記ワークに加わる力の力積に相当する値を算出するステップおよび前記ワークの質量を推定するステップを複数回繰り返して、推定された複数の前記ワークの質量に基づき1つの前記ワークの質量を得る、
請求項1乃至14のいずれか1項に記載の質量推定方法。 - 前記所定の方向は、鉛直方向である、
請求項1乃至15のいずれか1項に記載の質量推定方法。 - 前記ロボットは、前記鉛直方向に沿って前記ワークを持ち上げる工程と、前記ワークを水平方向に移動する工程と、を行い、
前記ワークを持ち上げる工程では、前記ワークの質量を粗く推定し、前記ワークを水平方向に移動する工程では、前記ワークを持ち上げる工程よりも精度よく前記ワークの質量を推定する、
請求項16のいずれか1項に記載の質量推定方法。 - ロボットのエンドエフェクタによりワークを保持している状態で、前記ワークの質量を推定する制御装置であって、
第1時点における前記ワークの所定の方向の第1速度を取得し、かつ前記第1時点よりも後の第2時点における前記ワークの前記所定の方向の第2速度を取得する速度情報取得部と、
前記第1時点から前記第2時点までの期間にわたって前記ワークに加わる力の力積に相当する値を算出し、前記第1速度、前記第2速度および前記力積に相当する値に基づいて前記ワークの質量を推定する質量推定部と、を有する、
制御装置。 - ワークを保持するエンドエフェクタを有するロボットと、前記ロボットを制御するとともに前記ワークを保持している状態で、前記ワークの質量を推定する制御装置とを有するロボットシステムであって、
前記制御装置は、
第1時点における前記ワークの所定の方向の第1速度を取得し、かつ前記第1時点よりも後の第2時点における前記ワークの前記所定の方向の第2速度を取得する速度情報取得部と、
前記第1時点から前記第2時点までの期間にわたって前記ワークに加わる力の力積に相当する値を算出し、前記第1速度、前記第2速度および前記力積に相当する値に基づいて前記ワークの質量を推定する質量推定部と、を有する、
ロボットシステム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021176726A JP2023066171A (ja) | 2021-10-28 | 2021-10-28 | 質量推定方法、制御装置およびロボットシステム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021176726A JP2023066171A (ja) | 2021-10-28 | 2021-10-28 | 質量推定方法、制御装置およびロボットシステム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2023066171A true JP2023066171A (ja) | 2023-05-15 |
Family
ID=86322023
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021176726A Pending JP2023066171A (ja) | 2021-10-28 | 2021-10-28 | 質量推定方法、制御装置およびロボットシステム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2023066171A (ja) |
-
2021
- 2021-10-28 JP JP2021176726A patent/JP2023066171A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11247341B2 (en) | Control apparatus, transport apparatus, computer readable storage medium, and control method | |
CN109318226B (zh) | 机器人控制装置、机器人控制方法及存储介质 | |
JP5383760B2 (ja) | ワーク質量測定機能を備えたロボット | |
JP5695223B2 (ja) | ロボット、ロボットの制御装置、制御方法、及び制御プログラム | |
US10589424B2 (en) | Robot control device, robot, and robot system | |
JP6380828B2 (ja) | ロボット、ロボットシステム、制御装置、及び制御方法 | |
JP6420298B2 (ja) | ロボットを制御するロボット制御装置、およびロボットに加わる外乱値を推定する方法 | |
JP2019093481A (ja) | ロボットシステム及びロボットシステムの制御方法 | |
JP4737209B2 (ja) | パワーアシスト装置およびその制御方法 | |
JP7136729B2 (ja) | ロボットを用いて負荷の重量及び重心位置を推定するための装置、方法、プログラム、制御装置及びロボットシステム | |
KR20210069041A (ko) | 정보 처리 장치, 제어 방법 및 프로그램 | |
JP6795540B2 (ja) | ロボットを用いた負荷の重量及び重心位置を推定するための装置、方法及びプログラム | |
Qin et al. | A new approach to the dynamic parameter identification of robotic manipulators | |
JP2007098501A (ja) | ロボットシステム | |
US11752621B2 (en) | Article transport system having plurality of movable parts | |
US11597083B2 (en) | Robot apparatus, robot system, control method of robot apparatus, product manufacturing method using robot apparatus, and storage medium | |
CN112236272B (zh) | 把持姿态评价装置和把持姿态评价程序 | |
JP2013132726A (ja) | ロボットの制御方法、及びロボット | |
JP2021194725A (ja) | 目標力上限値設定方法およびロボットシステム | |
EP3970927A1 (en) | Suction pad and deformation measuring device | |
JP2023066171A (ja) | 質量推定方法、制御装置およびロボットシステム | |
KR101294250B1 (ko) | 그리퍼 파지력 연산방법 및 그 장치 | |
JP7466003B2 (ja) | ロボットシステム、ピッキング方法およびコンピュータプログラム | |
JP6149791B2 (ja) | 重心推定装置、及び重心推定方法 | |
JP2013185846A (ja) | 質量測定装置 |