IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ アズビル株式会社の特許一覧

<>
  • 特開-位置補正装置及び位置補正方法 図1
  • 特開-位置補正装置及び位置補正方法 図2
  • 特開-位置補正装置及び位置補正方法 図3
  • 特開-位置補正装置及び位置補正方法 図4
  • 特開-位置補正装置及び位置補正方法 図5
  • 特開-位置補正装置及び位置補正方法 図6
  • 特開-位置補正装置及び位置補正方法 図7
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023067328
(43)【公開日】2023-05-16
(54)【発明の名称】位置補正装置及び位置補正方法
(51)【国際特許分類】
   B25J 13/08 20060101AFI20230509BHJP
【FI】
B25J13/08 Z
【審査請求】未請求
【請求項の数】4
【出願形態】OL
(21)【出願番号】P 2021178450
(22)【出願日】2021-11-01
(71)【出願人】
【識別番号】000006666
【氏名又は名称】アズビル株式会社
(74)【代理人】
【識別番号】110003166
【氏名又は名称】弁理士法人山王内外特許事務所
(72)【発明者】
【氏名】盧 佳晨
【テーマコード(参考)】
3C707
【Fターム(参考)】
3C707BS10
3C707LT13
3C707LV18
(57)【要約】
【課題】従来に対し、ロボットに対する発熱量に応じた位置補正を改善可能とする。
【解決手段】軌道情報に基づいて、ロボット2の動作を制御する動作制御部102と、ロボット2が有するモータの消費電流及び回転速度を示す情報を取得するモータ情報取得部104と、モータ情報取得部104による取得結果に基づいて、モータの発熱量を算出する発熱量算出部105と、モータの発熱量とロボット2が有するフレームの熱膨張量との関係を示す位置補正モデル及び発熱量算出部105により算出された当該モータの発熱量に基づいて、当該ロボット2の先端位置に対する補正量を算出する補正量算出部109と、補正量算出部109により算出された補正量に基づいて、軌道情報が示す先端位置を補正する補正部110とを備えた。
【選択図】図2
【特許請求の範囲】
【請求項1】
軌道情報に基づいて、ロボットの動作を制御する動作制御部と、
前記ロボットが有するモータの消費電流及び回転速度を示す情報を取得するモータ情報取得部と、
前記モータ情報取得部による取得結果に基づいて、前記モータの発熱量を算出する発熱量算出部と、
前記モータの発熱量と前記ロボットが有するフレームの熱膨張量との関係を示す位置補正モデル及び前記発熱量算出部により算出された当該モータの発熱量に基づいて、当該ロボットの先端位置に対する補正量を算出する補正量算出部と、
前記補正量算出部により算出された補正量に基づいて、軌道情報が示す先端位置を補正する補正部と
を備えた位置補正装置。
【請求項2】
前記フレームの温度及び当該フレームの周囲の環境温度を示す情報を取得する温度情報取得部と、
前記温度情報取得部による取得結果及び前記発熱量算出部により算出された前記モータの発熱量に基づいて、当該モータの発熱量と前記フレームの上昇温度との関係を示すモデルを構築する第1モデル構築部と、
前記フレームの熱膨張係数及び前記温度情報取得部による取得結果に基づいて、前記フレームの熱膨張量を算出する熱膨張量算出部と、
前記第1モデル構築部により構築されたモデル及び前記熱膨張量算出部により算出された前記フレームの熱膨張量に基づいて、位置補正モデルを構築する第2モデル構築部とを備え、
前記補正量算出部は、前記第2モデル構築部により構築された位置補正モデルを用いて、前記ロボットの先端位置に対する補正量を算出する
ことを特徴とする請求項1記載の位置補正装置。
【請求項3】
前記補正部は、前記補正量算出部により算出された補正量を、軌道情報が示す先端位置に加算することで、当該先端位置の補正を行う
ことを特徴とする請求項1又は請求項2記載の位置補正装置。
【請求項4】
動作制御部が、軌道情報に基づいて、ロボットの動作を制御するステップと、
モータ情報取得部が、前記ロボットが有するモータの消費電流及び回転速度を示す情報を取得するステップと、
発熱量算出部が、前記モータ情報取得部による取得結果に基づいて、前記モータの発熱量を算出するステップと、
補正量算出部が、前記モータの発熱量と前記ロボットが有するフレームの熱膨張量との関係を示す位置補正モデル及び前記発熱量算出部により算出された当該モータの発熱量に基づいて、当該ロボットの先端位置に対する補正量を算出するステップと、
補正部が、前記補正量算出部により算出された補正量に基づいて、軌道情報が示す先端位置を補正するステップと
を有する位置補正方法。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、ロボットに対して発熱量に応じた位置補正を行う位置補正装置及び位置補正方法に関する。
【背景技術】
【0002】
従来、ロボット(ロボットアーム)に対し、ロボットが有するフレームの温度を推定して、ロボットの先端位置を補正する方法が知られている(例えば特許文献1参照)。より具体的には、この方法では、ロボットが有するモータの温度を温度センサによって測定することでフレームの温度を推定し、ロボットの先端の目標位置に対し、フレームの温度の影響による位置ずれを考慮した駆動指令を算出する。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2014-649号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
一方、例えば産業用ロボットのようなロボットの活用範囲は精密作業にも広がっており、温度の影響に対する位置補正については、常に精度の向上と改善が求められている。
例えば、産業用ロボットの用途として、曲面の連続溶接又は曲面の連続研磨のような連続動作(連続プロセス)がある。これに対し、特許文献1に示されたような温度センサにより測定された温度を利用する場合、温度センサによる測定が温度センサの時定数がある分だけ事後的な測定になるため、連続動作におけるロボットの位置補正も事後的な補正になってしまう。また、モータの温度の測定に基づくフレームの温度の推定では、具体的且つ合理的な物理式でのアプローチに限界がある。
【0005】
この発明は、上記のような課題を解決するためになされたもので、従来に対し、ロボットに対する発熱量に応じた位置補正を改善可能な位置補正装置を提供することを目的としている。
【課題を解決するための手段】
【0006】
この発明に係る位置補正装置は、軌道情報に基づいて、ロボットの動作を制御する動作制御部と、ロボットが有するモータの消費電流及び回転速度を示す情報を取得するモータ情報取得部と、モータ情報取得部による取得結果に基づいて、モータの発熱量を算出する発熱量算出部と、モータの発熱量とロボットが有するフレームの熱膨張量との関係を示す位置補正モデル及び発熱量算出部により算出された当該モータの発熱量に基づいて、当該ロボットの先端位置に対する補正量を算出する補正量算出部と、補正量算出部により算出された補正量に基づいて、軌道情報が示す先端位置を補正する補正部とを備えたことを特徴とする。
【発明の効果】
【0007】
この発明によれば、上記のように構成したので、従来に対し、ロボットに対する発熱量に応じた位置補正を改善可能となる。
【図面の簡単な説明】
【0008】
図1】実施の形態1に係るロボットシステムの構成例を示す図である。
図2】実施の形態1に係るロボットコントローラの構成例を示す図である。
図3】実施の形態1に係るロボットコントローラによる位置補正モデルの構築動作例を示すフローチャートである。
図4】モータの発熱量とフレームの上昇温度との関係(単軸)の一例を示す図である。
図5】モータの発熱量とフレームの熱膨張量との関係(単軸)の一例を示す図である。
図6】実施の形態1に係るロボットコントローラによる位置補正動作例を示すフローチャートである。
図7】実施の形態1に係るロボットコントローラによる位置補正動作例を示す図である。
【発明を実施するための形態】
【0009】
以下、この発明の実施の形態について図面を参照しながら詳細に説明する。
実施の形態1.
図1は実施の形態1に係るロボットシステムの構成例を示す図である。
ロボットシステムは、図1に示すように、ロボットコントローラ1、及び、1つ以上の関節軸を有するロボット(ロボットアーム)2を備えている。ロボット2は、関節軸毎にモータ(不図示)を有し、ロボットコントローラ1によりモータが制御されることで動作する。
【0010】
ロボットコントローラ1は、ロボット2が有するモータを制御することで、ロボット2を動作させる。また、ロボットコントローラ1は、ロボット2に対し、ロボット2の発熱量に応じて位置補正を行う機能(位置補正装置の機能)を有する。
このロボットコントローラ1は、図2に示すように、動作作成部101、動作制御部102、温度情報取得部103、モータ情報取得部104、発熱量算出部105、モデル構築部(第1モデル構築部)106、熱膨張量算出部107、モデル構築部(第2モデル構築部)108、補正量算出部109及び補正部110を備えている。
【0011】
なお、ロボットコントローラ1は、システムLSI(Large Scale Integration)等の処理回路、又はメモリ等に記憶されたプログラムを実行するCPU(Central Processing Unit)等により実現される。
【0012】
動作作成部101は、ロボット2に対する軌道情報を生成する。この際、動作作成部101は、外部から受付けたロボット2に対する動作条件に基づいて、ロボット2に対する軌道情報を生成する。
【0013】
動作制御部102は、動作作成部101により生成された軌道情報に基づいて、ロボット2の動作を制御する。
なお、動作作成部101により生成された軌道情報に対し、補正部110によりロボット2の先端位置の補正が行われた場合には、動作制御部102は、補正部110による補正後の軌道情報に基づいて、ロボット2の動作を制御する。
【0014】
温度情報取得部103は、ロボット2が有するフレーム(不図示)の温度及び当該フレームの周囲の環境温度を示す情報を取得する。フレームは、ロボット2が有する外部ケース及び継ぎ手パイプ等の部位である。
【0015】
モータ情報取得部104は、ロボット2が有するモータの消費電流及び回転速度を示す情報を取得する。
【0016】
発熱量算出部105は、モータ情報取得部104による取得結果に基づいて、モータの発熱量を算出する。
【0017】
モデル構築部106は、温度情報取得部103による取得結果及び発熱量算出部105により算出されたモータの発熱量に基づいて、モータの発熱量とフレームの上昇温度との関係を示すモデルを構築する。
【0018】
熱膨張量算出部107は、フレームの熱膨張係数及び温度情報取得部103による取得結果に基づいて、フレームの熱膨張量を算出する。
【0019】
モデル構築部108は、モデル構築部106により構築されたモデル及び熱膨張量算出部107により算出されたフレームの熱膨張量に基づいて、モータの発熱量とフレームの熱膨張量との関係を示すモデル(位置補正モデル)を構築する。
【0020】
補正量算出部109は、モデル構築部108により構築された位置補正モデル及び発熱量算出部105により算出されたモータの発熱量に基づいて、ロボット2の先端位置に対する補正量を算出する。
【0021】
補正部110は、補正量算出部109により算出された補正量に基づいて、動作作成部101により生成された軌道情報が示す先端位置を補正する。
【0022】
なお上記では、ロボットコントローラ1(位置補正装置)が、位置補正を行う機能(動作制御部102、モータ情報取得部104、発熱量算出部105、補正量算出部109及び補正部110)に加え、位置補正モデルを構築する機能(動作制御部102、温度情報取得部103、モータ情報取得部104、発熱量算出部105、モデル構築部106、熱膨張量算出部107及びモデル構築部108)を有する場合を示した。しかしながら、これに限らず、位置補正モデルを構築する機能は、ロボットコントローラ1(位置補正装置)とは別の装置に構成されていてもよい。
【0023】
次に、図1,2に示す実施の形態1に係るロボットコントローラ1による位置補正モデルの構築動作例について、図3を参照しながら説明する。
すなわち、図1,2に示す実施の形態1に係るロボットコントローラ1は、事前に、ロボット2に対して実際に特定の作業動作を実施させ、その際の温度情報(フレームの温度及び環境温度を示す情報)及びモータ情報(消費電流及び回転速度を示す情報)を取得することで、位置補正に必要なモデル(位置補正モデル)を構築する。
【0024】
図1,2に示す実施の形態1に係るロボットコントローラ1による位置補正モデルの構築動作例では、図3に示すように、まず、動作作成部101は、外部から受付けたロボット2に対する動作条件に基づいて、ロボット2に対する軌道情報を生成する。
【0025】
この際、まず、ユーザは、外部UI(ユーザインタフェース)を利用し、ロボット2に対する動作条件を入力する。そして、動作作成部101は、ユーザにより入力されたロボット2に対する動作条件を受付ける(ステップST301)。
【0026】
ここで、ロボット2に対する動作条件としては、例えば、動作ポイント(動作waypoint)、動作最高速度、及び、待機時間(Wait time)が挙げられる。動作ポイントは、ロボット2の先端の移動開始位置となる始点及び移動終了位置となる終点である。動作最高速度は、ロボット2の先端の最高移動速度である。待機時間は、始点又は終点或いはその両方で停止する時間である。
例えば、ユーザは、始点としてポイント(座標)Aを入力とし、終点としてポイント(座標)Bを入力し、動作最高速度としてC[m/s]を入力し、A又はB或いはその両方に停止する時間を入力する。
【0027】
次いで、動作作成部101は、受付けた動作条件に基づいて、ロボット2に対する軌道情報を生成する(ステップST302)。すなわち、動作作成部101は、動作条件に基づいて、モーションプロファイル(ロボット2の速度及び先端位置等を含む時系列データ)を生成する。
【0028】
次いで、動作制御部102は、動作作成部101により生成された軌道情報に基づいて、ロボット2の動作を制御する(ステップST303)。すなわち、動作制御部102は、軌道情報が示すデータを指令値として、ロボット2を駆動して制御する。
【0029】
次いで、温度情報取得部103は、ロボット2が有するフレームの温度及び当該フレームの周囲の環境温度を示す情報を取得する(ステップST304)。なお、温度情報取得部103は、動作制御部102によってロボット2が動作している期間(1サイクル)でのフレームの温度及び環境温度を示す情報を取得する。
【0030】
また、モータ情報取得部104は、モータの消費電流及び回転速度を示す情報を取得する(ステップST305)。なお、モータ情報取得部104は、動作制御部102によってロボット2が動作している期間(1サイクル)での消費電流及び回転速度を示す情報を取得する。
【0031】
次いで、発熱量算出部105は、モータ情報取得部104による取得結果に基づいて、モータの発熱量を算出する(ステップST306)。
【0032】
ここで、モータの発熱量は、下式(1)で表される銅損と、下式(2)で表される鉄損の2つに分けられる。式(1)において、Pcは銅損を示し、Rはモータの巻き線抵抗値を示し、Iはロボット2の連続動作における1サイクルでのモータの実効電流値(上記モータの消費電流から算出可能)を示す。また、式(2)において、Piは鉄損を示し、kfは等価静摩擦係数を示し、kvは等価粘性抵抗係数を示し、ωはロボット2の連続動作における1サイクルでのモータの平均回転速度(上記モータの回転速度から算出可能)を示す。なお、R、kf及びkvは例えばモータの製造メーカが有するデータから取得可能である。また、Iは例えばモータインバータに設けられた電流センサを用いることで実測可能である。また、ωは例えば回転位置検出器を用いることで実測可能である。
Pc=R・I^2 (1)
Pi=kf・ω+kv・ω^2 (2)
【0033】
次いで、モデル構築部106は、温度情報取得部103による取得結果及び発熱量算出部105により算出されたモータの発熱量に基づいて、モータの発熱量とフレームの上昇温度との関係を示すモデルを構築する(ステップST307)。この際、モデル構築部106は、機械学習又は統計学計算等によりモデルの構築を行う。
なお、フレームの上昇温度は下式(3)で表される。式(3)において、ΔTはフレームの上昇温度を示し、T1はフレームの温度を示し、T0は環境温度を示している。
ΔT=T1-T0 (3)
【0034】
図4に、ロボットが有する1つの関節軸(単軸)におけるモータの発熱量とフレームの上昇温度との関係の一例を示す。
図4では、縦軸がフレームの上昇温度を示し、横軸が時間を示している。また、図4では、モータの発熱量が20Wの場合、30Wの場合、45Wの場合、55Wの場合、90Wの場合をそれぞれ示している。なお、図4において、実線は実測値であり、点線は予測値である。
【0035】
また、熱膨張量算出部107は、フレームの熱膨張係数及び温度情報取得部103による取得結果に基づいて、フレームの熱膨張量を算出する(ステップST308)。フレームの熱膨張量は下式(4)で表される。式(4)において、δはフレームの熱膨張量を示し、αは熱線膨張係数を示す。
δ=α・ΔT (4)
【0036】
なお、ロボット2が多軸関節ロボットである場合、事前に、関節軸毎に熱を加えてフレームの熱膨張量を測定することで、各関節軸の熱膨張係数を得る。
【0037】
次いで、モデル構築部108は、モデル構築部106により構築されたモデル及び熱膨張量算出部107により算出されたフレーム熱膨張量に基づいて、モータの発熱量とフレームの熱膨張量との関係を示すモデル(位置補正モデル)を構築する(ステップST309)。この際、モデル構築部108は、機械学習又は統計学計算等によりモデルの構築を行う。
【0038】
図5に、ロボットが有する1つの関節軸(単軸)におけるモータの発熱量とフレームの熱膨張量との関係の一例を示す。
図5では、縦軸がフレームの熱膨張量を示し、横軸が時間を示している。また、図5では、モータの発熱量が20Wの場合、30Wの場合、45Wの場合、55Wの場合、90Wの場合をそれぞれ示している。なお、図5において、実線は実測値であり、点線は予測値である。
【0039】
次に、図1,2に示す実施の形態1に係るロボットコントローラ1による位置補正動作例について、図6,7を参照しながら説明する。
図1,2に示す実施の形態1に係るロボットコントローラ1による位置補正動作例では、図6に示すように、まず、動作作成部(図7に示す動作作成プログラム)101は、外部から受付けたロボット2に対する動作条件に基づいて、ロボット2に対する軌道情報を生成する(ステップST601,602)。この動作作成部101によるステップST601,602に示す動作は、図3に示すステップST301,302に示す動作と同様の動作である。
【0040】
次いで、動作制御部(図7に示す動作制御器)102は、動作作成部101により生成された軌道情報に基づいて、ロボット2の動作を制御する(ステップST603)。この動作制御部102によるステップST603に示す動作は、図3に示すステップST303に示す動作と同様の動作である。
【0041】
次いで、モータ情報取得部104は、モータの消費電流及び回転速度を示す情報を取得する(ステップST604)。なお、モータ情報取得部104は、常時、モータの消費電流及び回転速度を示す情報の取得を行う。
【0042】
次いで、位置補正装置は、連続動作における1サイクルが終了したかを判定する(ステップST605)。このステップST605において、位置補正装置は、連続動作における1サイクルが終了していないと判定した場合、待機状態となる。
【0043】
一方、位置補正装置は連続動作における1サイクルが終了したと判定した場合、発熱量算出部105は、発熱量算出部105は、モータ情報取得部104による取得結果に基づいて、モータの発熱量を算出する(ステップST606)。この発熱量算出部105によるステップST606に示す動作は、図3に示すステップST306に示す動作と同様の動作である。
【0044】
次いで、補正量算出部109は、モデル構築部108により構築された位置補正モデル及び発熱量算出部105により算出されたモータの発熱量に基づいて、ロボット2の先端位置に対する補正量を算出する(ステップST607)。すなわち、補正量算出部109は、実際のモータの発熱量を位置補正モデルに当てはめることでフレームの熱膨張量を推定し、当該フレームの熱膨張量からロボット2の先端位置に対する補正量を算出する。
【0045】
なお、ロボット2が多軸関節ロボットである場合、ロボット2の先端位置の誤差(補正量)とフレームの熱膨張量との関係は以下のようになる。
例えばロボット2が3軸ロボットである場合、関節座標系においてフレームの熱膨張量をベクトル化し、更に座標変換によりロボット座標系に変換すると、下式(5)~(12)のようになる。式(5)~(12)において、δ(ベクトル)=(x、y、z)はロボットXYZ座標系における第x(x=1~3)軸のフレームの熱膨張量のベクトルを示し、Σδはロボット2の先端位置の誤差を示している。また、αは第x軸のフレームの熱線膨張係数を示し、ΔTは第x軸のフレームの上昇温度を示している。

【0046】
なお、モータ情報取得部104及び補正量算出部109は、図7に示す位置補正プログラム111に相当する。
【0047】
次いで、補正部(図7に示す加算器)110は、補正量算出部109により算出された補正量に基づいて、動作作成部101により生成された軌道情報が示す先端位置を補正する(ステップST608)。この際、図7に示すように、補正部110は、補正量を、軌道情報が示す先端位置(図7に示す目標先端位置指令値)に加算することで、当該先端位置の補正を行う。その後、動作制御部102は、補正部110による補正後の軌道情報に基づいて、ロボット2の動作を制御する。
これにより、ロボットコントローラ1は、ロボット2の発熱により生じる先端位置(図7に示す実際先端位置)の誤差を補正することができる。
【0048】
ここで、溶接又は研磨等といったロボット2の作業の種類、及び、研削押付力等の事前情報(予め規定される作業パラメータ等)を利用すれば、ロボット2が有するモータの発熱に伴う温度上昇及びこれに対応する熱膨張量を推定可能である。そして、この推定に基づいて、予め軌道情報に補正操作に相当する変更を反映すれば、従来の「実測とフィードバック補正」の方式を「予測とフィードフォワード補正」の方式に改善できる。
【0049】
このように、実施の形態1に係る位置補正装置では、フレームの熱膨張量とモータの発熱量との関係を示すモデル(位置補正モデル)を用いることで、実際のモータの発熱量からフレームの熱膨張量を推定し、この熱膨張量からロボット2の先端位置の補正量を算出している。
ここで、モータの発熱量に関わる因子の測定は、時定数特性(ラグ及び測定遅れ)を持っていない。そのため、従来方法(モータの温度を測定し、当該温度からフレームの温度を推定する方法)に対し、連続動作での先端位置補正に適用可能である。また、モータの消費電流及び回転速度は即時変化するため、温度変化より、力制御のような形状又は工程にあわせて動作が変わる場合又は段取り替えが頻繁な少量他品種の場合等のように、動作条件変更の場合への対応も可能となる。
なお、実施の形態1に係る位置補正装置では、ロボット2を連続で動作可能であり、補正のため停止させる必要はない。
【0050】
以上のように、この実施の形態1によれば、位置補正装置は、軌道情報に基づいて、ロボット2の動作を制御する動作制御部102と、ロボット2が有するモータの消費電流及び回転速度を示す情報を取得するモータ情報取得部104と、モータ情報取得部104による取得結果に基づいて、モータの発熱量を算出する発熱量算出部105と、モータの発熱量とロボット2が有するフレームの熱膨張量との関係を示す位置補正モデル及び発熱量算出部105により算出された当該モータの発熱量に基づいて、当該ロボット2の先端位置に対する補正量を算出する補正量算出部109と、補正量算出部109により算出された補正量に基づいて、軌道情報が示す先端位置を補正する補正部110とを備えた。これにより、実施の形態1に係る位置補正装置は、従来に対し、ロボット2に対する発熱量に応じた位置補正を改善可能となる。
【0051】
なお、本願発明はその発明の範囲内において、実施の形態の任意の構成要素の変形、若しくは実施の形態の任意の構成要素の省略が可能である。
【符号の説明】
【0052】
1 ロボットコントローラ
2 ロボット
101 動作作成部
102 動作制御部
103 温度情報取得部
104 モータ情報取得部
105 発熱量算出部
106 モデル構築部
107 熱膨張量算出部
108 モデル構築部
109 補正量算出部
110 補正部
111 位置補正プログラム
図1
図2
図3
図4
図5
図6
図7