JP6922213B2 - マニプレータの暖機運転要否判定装置 - Google Patents

マニプレータの暖機運転要否判定装置 Download PDF

Info

Publication number
JP6922213B2
JP6922213B2 JP2016251904A JP2016251904A JP6922213B2 JP 6922213 B2 JP6922213 B2 JP 6922213B2 JP 2016251904 A JP2016251904 A JP 2016251904A JP 2016251904 A JP2016251904 A JP 2016251904A JP 6922213 B2 JP6922213 B2 JP 6922213B2
Authority
JP
Japan
Prior art keywords
warm
temperature
manipulator
joint
predetermined
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.)
Active
Application number
JP2016251904A
Other languages
English (en)
Other versions
JP2018103312A (ja
Inventor
大介 川瀬
大介 川瀬
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Denso Wave Inc
Original Assignee
Denso Wave Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Denso Wave Inc filed Critical Denso Wave Inc
Priority to JP2016251904A priority Critical patent/JP6922213B2/ja
Publication of JP2018103312A publication Critical patent/JP2018103312A/ja
Application granted granted Critical
Publication of JP6922213B2 publication Critical patent/JP6922213B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Manipulator (AREA)

Description

本発明は、マニプレータの暖機運転の要否を判定する判定装置に関する。
従来、ロボットのアーム(マニプレータ)の先端を移動させる位置である動作点を教示(設定)して、教示した動作点をアームの先端が通るように、アームを動作させるものがある(特許文献1参照)。
特開2016−144861号公報
ところで、動作点の教示を行った時のアームの温度と、ロボットにより作業を行う時のアームの温度とが異なることがある。その場合、現在のアームの温度では、教示した通りにアームを動作させることができない場合があることに、本願発明者は着目した。
本発明は、こうした課題を解決するためになされたものであり、設定した通りにマニプレータを動作させるために暖機運転が必要であるか否か判定することのできるマニプレータの暖機運転要否判定装置を提供することにある。
上記課題を解決するための第1の手段は、
複数のリンクと、前記複数のリンクを相対回転可能に接続する関節と、を備えるマニプレータの暖機運転の要否を判定する判定装置であって、
前記マニプレータの所定点が移動する位置として設定された第1位置、前記第1位置を設定する時の設定温度における前記複数のリンクの長さ、及び所定温度における前記複数のリンクの長さに基づいて、前記第1位置に前記所定点を移動させるために前記所定温度において前記マニプレータの暖機運転が必要であるか否か判定する。
上記構成によれば、マニプレータにおいて、複数のリンクが関節により相対回転可能に接続されている。ここで、複数のリンクが相対回転することにより、リンクの温度が上昇する。リンクは温度の上昇に伴って熱膨張するため、リンクの長さは温度に応じて変化する。このため、例えば高温時に関節を完全に伸ばした状態でマニプレータの所定点の位置(動作点)を設定(教示)すると、低温時にリンクの長さが足りず、設定した位置(第1位置)に所定点を移動させることができない。
ここで、マニプレータの所定点が移動する位置として設定された第1位置に所定温度において所定点を移動させることが可能か否かは、第1位置、第1位置を設定する時の設定温度における複数のリンクの長さ、及び所定温度における複数のリンクの長さにより決まる。そして、所定温度において第1位置に所定点を移動させることが不可能である場合は、リンクの長さを第1位置の設定時におけるリンクの長さまで伸ばすために、マニプレータの暖機運転が必要となる。したがって、第1位置、設定温度における複数のリンクの長さ、及び所定温度における複数のリンクの長さに基づいて、第1位置に所定点を移動させるために所定温度においてマニプレータの暖機運転が必要であるか否か判定することができる。
第2の手段では、前記暖機運転が必要であると判定された場合に、前記暖機運転が必要であることを通知する必要通知部を備える。
上記構成によれば、暖機運転が必要であると判定された場合に、暖機運転が必要であることが通知される。このため、ユーザは、マニプレータの温度が所定温度では、第1位置に所定点を移動させることが不可能であるため、マニプレータの暖機運転が必要であることを知ることができる。
第3の手段では、前記所定温度は、前記マニプレータの現在の温度であり、前記暖機運転が必要であると判定された場合に、前記第1位置に前記所定点を移動させることが可能となるまで前記マニプレータの暖機運転を実行する暖機運転実行部を備える。
上記構成によれば、第1位置に所定点を移動させるために、マニプレータの現在の温度においてマニプレータの暖機運転が必要であるか否か判定される。そして、暖機運転が必要であると判定された場合に、第1位置に所定点を移動させることが可能となるまでマニプレータの暖機運転が実行される。したがって、暖機運転が必要である場合に暖機運転が実行され、第1位置に所定点を移動させることが可能となる。
第4の手段では、前記暖機運転実行部は、前記暖機運転が必要であると判定された場合に、前記第1位置に前記所定点を移動させることが可能となる前記マニプレータの温度よりも、前記マニプレータの温度を所定の余裕温度だけ上昇させて前記暖機運転を終了する。
上記構成によれば、暖機運転が必要であると判定された場合に、第1位置に所定点を移動させることが可能となるマニプレータの温度よりも、マニプレータの温度が所定の余裕温度だけ上昇させられて暖機運転が終了される。このため、暖機運転後にマニプレータの温度が若干下がったとしても、第1位置に所定点を移動させることが不可能になることを抑制することができる。詳しくは、暖機運転したタイミングと、第1位置への移動タイミングとは一致するとは限らない。例えばロボット(マニプレータ)での作業は目標点への移動動作と目標点周辺での姿勢変更動作、他の設備との連携待ちによる待機等によって成り立っている。このため、少し間をおいた結果として冷却されてからとか、熱量加算が少し足りなくてアーム長が少し短くなってから第1位置へ移動させることも考えられる。そのような場合は、第1位置へ到達するにはアーム長が足りなくなるので、それに対する事前熱量蓄積として余裕温度分の暖機運転を行っている。さらに、マニプレータの温度が余裕温度だけ上昇させられると暖機運転が終了されるため、マニプレータの暖機運転を過剰に実行することを抑制することができ、マニプレータの作業性が低下することを抑制することができる。
第5の手段では、前記暖機運転実行部により前記暖機運転が実行される際に、前記暖機運転の推定終了時刻を通知する終了通知部を備える。
上記構成によれば、暖機運転実行部により暖機運転が実行される際に、暖機運転の推定終了時刻が通知される。このため、ユーザは、暖機運転が終了すると推定される時刻を知ることができ、マニプレータの作業予定を立て易くなる。
第6の手段では、前記マニプレータは、複数の前記関節を備えており、前記暖機運転が必要であると判定された場合に、前記複数の関節のうちどの関節を暖機運転すべきであるかを判定する関節判定部を備える。
マニプレータが複数の関節を備えている場合、それぞれの関節の温度上昇がリンクの温度上昇に与える影響がそれぞれ異なる。このため、どの関節を暖機運転するかによって、マニプレータの暖機運転終了までの時間が異なる。
この点、暖機運転が必要であると判定された場合に、複数の関節のうちどの関節を暖機運転すべきであるかが判定される。したがって、マニプレータの暖機運転を効率的に実行させることができる。
所定温度では移動させることが不可能である第1位置へ所定点を移動させるためには、所定点から第1位置の方向へ所定点が移動するようにリンクを伸ばす必要がある。ここで、各リンクの長さに応じて、各リンクの温度が上昇した際の各リンクの伸び量が異なる。さらに、各リンクの方向と、所定点から第1位置への方向との角度に応じて、各リンクが伸びた際に所定点が第1位置の方向へ移動する割合が異なる。
この点、第7の手段では、前記関節判定部は、各リンクの長さ及び方向を表す第1ベクトルと、前記所定点から前記第1位置へのベクトルである第2ベクトルとの内積に基づいて、前記複数の関節のうちどの関節を暖機運転すべきであるかを判定するといった構成を採用している。したがって、各リンクの長さ及び方向を考慮して、どの関節を暖機運転すべきであるかを適切に判定することができる。換言すれば、第1位置への到達とは関係ない関節の暖機は省略(通常の動作で温まることを期待)し、その分だけ暖機時間を短縮したり電力消費を抑制したりすることが可能になる。
1つの関節の温度が上昇した場合、その関節に接続されたリンクを介して、隣の関節や隣の関節に接続されたリンクまで熱が伝達されることがある。
この点、第8の手段では、前記関節判定部は、各関節の温度上昇が各リンクの熱膨張に及ぼす影響に基づいて、前記複数の関節のうちどの関節を暖機運転すべきであるかを判定するといった構成を採用している。したがって、各関節の温度上昇が各リンクの熱膨張に及ぼす影響を考慮して、どの関節を暖機運転すべきであるかを適切に判定することができる。
第9の手段では、前記関節判定部によりどの関節を暖機運転すべきであるか判定された場合に、前記暖機運転すべきであると判定された関節を通知する関節通知部を備える。
上記構成によれば、どの関節を暖機運転すべきであるか判定された場合に、暖機運転すべきであると判定された関節が通知される。したがって、ユーザは、どの関節を暖機運転すべきであるか知ることができる。
アーム及びコントローラを示す模式図。 電源ON直後の伸び状態のアームを示す模式図。 暖機動作後の伸び状態のアームを示す模式図。 伸び状態における位置から角度への逆変換を示す模式図。 曲げ状態における位置から角度への逆変換を示す模式図。 スプライン軌道及び動作点を示す模式図。 どの関節を暖機運転すべきかを判定する態様を示す模式図。 時間とアームの温度上昇との関係を示すグラフ。 設定温度における限界角度と所定温度での動作可否を示す模式図。
(第1実施形態)
以下、垂直多関節ロボットの第2軸及び第3軸を構成する複数のリンク及び関節に具現化した第1実施形態について、図面を参照して説明する。
図1に示すように、アーム10(マニプレータに相当)は、リンクL1,L2、及び関節J1,J2を備えている。リンクL1は、関節J1により回転可能に支持されている。関節J2は、リンクL1とリンクL2とを相対回転可能に接続している。関節J1,J2は、前段のリンクに固定された軸受けと、この軸受けを介して回転可能に支持された回転軸とを備えている。この回転軸は、次段のリンクに接続されており、モータ及び減速機等を備える駆動装置により回転させられる。リンクL1において、関節J2と反対側の端部の中心(1点)は、リンクL1,L2の動作の基点Bに設定されている。リンクL2において、関節J2と反対側の端部の中心は、アーム10の位置を表す所定点Cに設定されている。
関節J1,J2には、それぞれエンコーダ11,12が設けられている。エンコーダ11,12は、それぞれの関節において回転軸の回転角度を検出する。また、エンコーダ11,12は、それぞれ温度センサを備えている。温度センサは、エンコーダの温度、ひいてはモータの温度を検出する。エンコーダ11,12により検出された各回転軸の回転角度、及び温度センサにより検出された各エンコーダの温度は、コントローラ20へ出力される。
アーム10の動作状態は、コントローラ20により制御される。コントローラ20(動作判定装置、及び暖機運転要否判定装置に相当)は、CPU、ROM、RAM、入出力インターフェース等を備えるマイクロコンピュータである。コントローラ20は、エンコーダ11,12及び温度センサによる検出値に基づいて、所定点Cを目標位置に移動させる。
詳しくは、コントローラ20は、各温度センサにより検出される温度に基づいて、リンクL1,L2の温度を算出する。コントローラ20は、基準温度(例えば20℃)におけるリンクL1,L2の長さ、基準温度とリンクL1,L2の温度との差、及びリンクL1,L2の熱膨張係数に基づいて、リンクL1,L2の長さを算出する。コントローラ20は、所定点Cの目標位置及びリンクL1,L2の長さに基づいて、関節J1,J2の目標回転角度を算出する(目標位置から目標回転角度への逆変換)。そして、コントローラ20は、エンコーダ11,12によりそれぞれ検出される回転角度が、関節J1,J2のそれぞれの目標回転角度になるように、関節J1,J2のモータをそれぞれフィードバック制御する。なお、コントローラ20は、関節J1,J2の回転角度及びリンクL1,L2の長さに基づいて、所定点Cの位置を算出する(回転角度から位置への変換)。
ここで、図2に示すように、コントローラ20の電源ON直後(アーム10の暖機動作前)は、アーム10の温度が低く、リンクL1,L2の長さが短くなっている。標準温度(例えば40℃)においてリンクL1,L2の長さが500.0mmであるのに対して、電源ON直後(例えば20℃)においてリンクL1,L2の長さが499.8mmになっている。
一方、図3に示すように、アーム10暖機動作後は、アーム10の温度が高く、リンクL1,L2の長さが長くなっている。標準温度(例えば40℃)においてリンクL1,L2の長さが500.0mmであるのに対して、暖機動作後(例えば60℃)においてリンクL1,L2の長さが500.2mmになっている。
このため、図3に示す暖機動作後にアーム10の関節J2を完全に伸ばした状態で、所定点Cを移動させる位置である動作点を教示(設定)すると、図2に示す電源ON直後にアーム10の関節J2を完全に伸ばしたとしても、教示した動作点(以下、「教示点」という)に所定点Cを移動させることができない。この場合、コントローラ20は、所定点Cの目標位置としての教示点及びリンクL1,L2の長さに基づいて、関節J1,J2の目標回転角度を算出しようとしても、目標回転角度を算出することができない(目標回転角度の解なし)。
なお、暖機動作の前後でアーム10の温度が異なる場合だけでなく、ロボットの動作環境の温度が場所や季節により変化した場合や、アーム10の動作状態(発熱状態)が変化した場合も、同様の問題が生じ得る。
コントローラ20(第1位置算出部に相当)は、図4(a)及び図5(a)に示すように、ユーザによる所定点Cの動作点の教示時に、教示時の温度(例えば60℃)におけるリンクL1,L2の長さ及び教示点に基づいて、所定点Cが移動する位置である第1位置を算出する。各教示点に所定点Cを直線的に移動させる場合は、各教示点を第1位置とすればよい。
しかしながら、図6に示すように、動作点P1,P2,P4,P5の間を、所定点Cがスプライン軌道T(動作軌道に相当)で移動する場合は、スプライン軌道T上において教示点ではない点P3に所定点Cを移動させることができない場合がある。スプライン軌道Tは、動作点P1,P2,P4,P5を通る滑らかな曲線として規定される。例えば、スプライン軌道Tにおいて点P3の付近の曲率は他の部分の曲率よりも大きくなっており、点P3の両脇に、関節J2を完全に伸ばした状態で動作点P2,P4が設定されている。この場合、点P3に所定点Cを移動させることができない。
したがって、コントローラ20は、スプライン軌道T上の全ての点を上記第1位置とする。すなわち、第1位置は、動作点P1,P2,P4,P5により規定されるスプライン軌道T上の点P3を含んでいる。
コントローラ20(角度算出部に相当)は、図4(b)及び図5(b)に示すように、所定温度(例えば0℃)におけるリンクL1,L2の長さに基づいて、算出された第1位置に所定点Cを移動させる時の関節J1,J2の回転角度を算出する。詳しくは、コントローラ20は、基準温度(例えば20℃)におけるリンクL1,L2の長さ(例えば499.8mm)、基準温度とリンクL1,L2の温度との差(例えば40℃−20℃=20℃)、及びリンクL1,L2の熱膨張係数に基づいて、0℃でのリンクL1,L2の長さを算出する。そして、コントローラ20は、第1位置及びリンクL1,L2の長さに基づいて、関節J1,J2の回転角度を算出する(位置から回転角度への逆変換)。
そして、コントローラ20(角度判定部に相当)は、回転角度の算出結果に基づいて、現在の温度(所定温度)において第1位置に所定点Cを移動させることが可能であるか否か判定する。詳しくは、図4(b)に示すように、コントローラ20は、回転角度が算出されなかった場合に、現在の温度において第1位置に所定点Cを移動させることが不可能であると判定する。このとき、コントローラ20は、第1位置に所定点Cを移動させるために、現在の温度においてアーム10の暖機運転が必要であると判定する。また、図5(b)に示すように、コントローラ20は、算出された回転角度θ12,θ22が、それぞれ関節J1,J2により実現可能な角度であった場合に、現在の温度において第1位置に所定点Cを移動させることが可能であると判定する。このとき、コントローラ20は、第1位置に所定点Cを移動させるために、現在の温度においてアーム10の暖機運転が必要でないと判定する。
さらに、アーム10の暖機運転が必要であると判定された場合に、コントローラ20(必要通知部に相当)は、アーム10の暖機運転が必要であることをユーザに通知する。具体的には、コントローラ20に接続されたモニタやティーチングペンダントにより、アーム10の暖機運転が必要であることを表示させたり、音声で通知させたりする。
アーム10は複数の関節J1,J2を備えており、それぞれの関節J1,J2の温度上昇がリンクL1,L2の温度上昇に与える影響がそれぞれ異なる。このため、どの関節を暖機運転するかによって、アーム10の暖機運転終了までの時間が異なる。
そこで、コントローラ20(関節判定部に相当)は、暖機運転が必要であると判定された場合に、複数の関節J1,J2のうちどの関節を暖機運転すべきであるかを判定する。なお、簡易的に関節J1,J2のみを対象として説明するが、その他の関節も対象とする場合も手順は同様である。
詳しくは、図7に示すように、基点Bから関節J2の中心点Mへのベクトルv1、中心点Mから所定点Cへのベクトルv2、所定点Cから例えば点P3(第1位置に相当)へのベクトルv3を考える。ベクトルv1,2は、各リンクL1,L2の長さ及び方向を表すベクトルである。
所定温度では移動させることが不可能である点P3へ所定点Cを移動させるためには、所定点Cから点P3の方向へ所定点Cが移動するようにリンクL1,L2を伸ばす必要がある。ここで、各リンクL1,L2の長さに応じて、各リンクL2L2の温度が上昇した際の各リンクL1,L2の伸び量が異なる。さらに、リンクL1,L2の方向(ベクトルv1,v2の方向)と、所定点Cから点P3への方向(ベクトルv3の方向)との角度に応じて、各リンクL1,L2が伸びた際に所定点Cが点P3の方向へ移動する割合が異なる。
そこで、コントローラ20は、各リンクL1,L2の長さ及び方向を表すベクトルv1,v2(第1ベクトルに相当)と、所定点Cから点P3へのベクトルであるベクトルv3(第2ベクトルに相当)との内積に基づいて、複数の関節J1,J2のうちどの関節を暖機運転すべきであるかを判定する。
また、1つの関節の温度が上昇した場合、その関節に接続されたリンクを介して、隣の関節や隣の関節に接続されたリンクまで熱が伝達される。例えば、関節J1の温度が上昇した場合、関節J1に接続されたリンクL1を介して、隣の関節J2や関節J2に接続されたリンクL2まで熱が伝達される。
そこで、コントローラ20は、各関節J1,J2の温度上昇が各リンクL1,L2の熱膨張に及ぼす影響に基づいて、複数の関節J1,J2のうちどの関節を暖機運転すべきであるかを判定する。
具体的には、以下の式により、関節Jnの温度上昇により所定点Cが点P3の方向へ移動する量である移動量Cnを算出する。v1mは、各リンクLmの長さ及び方向を表す第1ベクトルである。v20は、所定点Cから点P3へのベクトルである第2ベクトルである。kmnは、各リンクLmが関節Jnの温度上昇により熱膨張する量(比率)を表す熱膨張係数である。なお、熱膨張係数kmnは、予め実験等に基づいて取得しておくことができる。
Cn=(v11・v20)×k1n+(v12・v20)×k2n+・・・+(v1m・v20)×kmn
例えば、図7に示すように、関節J1の温度上昇により所定点Cが点P3の方向へ移動する量である移動量C1は次式で算出される。C1=(v1・v3)×k11+(v2・v3)×k21。同様にして、関節J2の温度上昇により所定点Cが点P3の方向へ移動する量である移動量C2は次式で算出される。C2=(v1・v3)×k12+(v2・v3)×k22。そして、コントローラ20は、移動量C1と移動量C2とのうち、移動量が大きい方の関節を暖機運転すべき関節であると判定する。すなわち、コントローラ20は、移動量Cnのうち移動量が最も大きい関節を暖機運転すべき関節であると判定する。そして、コントローラ20(関節通知部に相当)は、暖機運転すべきであると判定された関節をユーザに通知する。
加えて、暖機運転が必要であると判定された場合に、コントローラ20(可能温度算出部に相当)は、点P3(第1位置)に所定点Cを移動させることが可能となるアーム10の温度Te1を算出する。具体的には、コントローラ20は、上昇後の温度におけるリンクL1,L2の長さと熱膨張係数とに基づいて、算出された第1位置に所定点Cを移動させる時の関節J1,J2の回転角度を算出することができるようになる温度Te1を算出する。このとき、コントローラ20は、各リンクL1,L2の温度を個別に算出して、算出した各リンクL1,L2の温度に基づいて温度Te1を算出してもよいし、リンクL1,L2の温度の平均値に基づいて温度Te1を算出してもよい。そして、コントローラ20は、温度Te1に所定の余裕温度ΔTを足した温度を、暖機目標温度Te2(=Te1+ΔT)として算出する。
コントローラ20(暖機運転実行部に相当)は、点P3に所定点Cを移動させることが可能となるまでアーム10の暖機運転を実行する。具体的には、コントローラ20はアーム10の温度を暖機目標温度Te2まで上昇させて暖機運転を終了する。このとき、コントローラ20は、上記暖機運転すべきであると判定された関節を暖機運転する。
暖機運転を実行することにより、図8に示すようにアーム10の温度が上昇する。図8に示す関係は、ロボットの動作条件に応じて、予め取得しておくことができる。そこで、コントローラ20(終了通知部に相当)は、暖機運転が実行される際に、図8に示す関係に基づいて、アーム10の温度が暖機目標温度Te2になる暖機運転の推定終了時刻t1を推定してユーザに通知する。なお、コントローラ20は、暖機運転開始後の所定期間におけるアーム10の温度上昇態様から、図8に示す温度上昇曲線を予測し、予測した温度上昇曲線と暖機目標温度Te2とに基づいて推定終了時刻t1を推定してもよい。
以上詳述した本実施形態は、以下の利点を有する。
・アーム10の所定点Cが移動する位置として設定された動作点P1〜P5(第1位置)に現在の温度(所定温度)において所定点Cを移動させることが可能か否かは、第1位置、第1位置を教示(設定)する時の設定温度におけるリンクL1,L2の長さ、及び所定温度におけるリンクL1,L2の長さにより決まる。そして、所定温度において第1位置に所定点Cを移動させることが不可能である場合は、リンクL1,L2の長さを第1位置の設定時におけるリンクL1,L2の長さまで伸ばすために、アーム10の暖機運転が必要となる。したがって、第1位置、設定温度における複数のリンクL1,L2の長さ、及び所定温度における複数のリンクL1,L2の長さに基づいて、第1位置に所定点Cを移動させるために所定温度においてアーム10の暖機運転が必要であるか否か判定することができる。
・暖機運転が必要であると判定された場合に、暖機運転が必要であることがユーザに通知される。このため、ユーザは、アーム10の温度が現在の温度では、第1位置に所定点Cを移動させることが不可能であるため、アーム10の暖機運転が必要であることを知ることができる。
・暖機運転が必要であると判定された場合に、第1位置に所定点Cを移動させることが可能となるまでアーム10の暖機運転が実行される。したがって、暖機運転が必要である場合に暖機運転が実行され、第1位置に所定点Cを移動させることが可能となる。
・暖機運転が必要であると判定された場合に、第1位置に所定点Cを移動させることが可能となるアーム10の温度Te1よりも、アーム10の温度が所定の余裕温度ΔTだけ上昇させられて暖機運転が終了される。このため、暖機運転後にアーム10の温度が若干下がったとしても、第1位置に所定点Cを移動させることが不可能になることを抑制することができる。さらに、アーム10の温度が余裕温度ΔTだけ上昇させられると暖機運転が終了されるため、アーム10の暖機運転を過剰に実行することを抑制することができ、アーム10の作業性が低下することを抑制することができる。
・暖機運転が実行される際に、暖機運転の推定終了時刻t1が通知される。このため、ユーザは、暖機運転が終了すると推定される時刻t1を知ることができ、アーム10の作業予定を立て易くなる。
・暖機運転が必要であると判定された場合に、複数の関節J1,J2のうちどの関節を暖機運転すべきであるかが判定される。したがって、アーム10の暖機運転を効率的に実行させることができる。
・コントローラ20は、各リンクL1,L2の長さ及び方向を表す第1ベクトルと、所定点Cから第1位置へのベクトルである第2ベクトルとの内積に基づいて、複数の関節J1,J2のうちどの関節を暖機運転すべきであるかを判定している。したがって、各リンクL1,L2の長さ及び方向を考慮して、どの関節を暖機運転すべきであるかを適切に判定することができる。
・コントローラ20は、各関節J1,J2の温度上昇が各リンクL1,L2の熱膨張に及ぼす影響(熱膨張係数kmn)に基づいて、複数の関節J1,J2のうちどの関節を暖機運転すべきであるかを判定している。したがって、各関節J1,J2の温度上昇が各リンクL1,L2の熱膨張に及ぼす影響を考慮して、どの関節を暖機運転すべきであるかを適切に判定することができる。
・どの関節を暖機運転すべきであるか判定された場合に、暖機運転すべきであると判定された関節がユーザに通知される。したがって、ユーザは、どの関節を暖機運転すべきであるか知ることができる。
なお、第1実施形態を、以下のように変更して実施することもできる。
・上記の各通知のうち少なくとも一部を省略してもよい。
・上記実施形態では、アーム10の暖機運転が必要であると判定された場合に、コントローラ20は、アーム10の暖機運転が必要であることをユーザに通知していた。この場合に、コントローラ20はアーム10の暖機運転を実行せず、ユーザの指示や操作によりアーム10の暖機運転を実行させることもできる。
・アーム10の暖機運転が必要であると判定された場合に、コントローラ20は、アーム10の暖機運転が必要であることをユーザに通知せず、暖機運転を実行することもできる。
・上記実施形態では、コントローラ20は、アーム10の温度を暖機目標温度Te2まで上昇させて暖機運転を終了していた。これに対して、アーム10の温度がその後に上昇する見込みがあれば、コントローラ20は、アーム10の温度を温度Te1まで上昇させて暖機運転を終了してもよい。
・上記実施形態では、暖機運転が必要であると判定された場合に、コントローラ20は、複数の関節J1,J2のうちどの関節を暖機運転すべきであるか判定していた。これに対して、コントローラ20は、複数の関節J1,J2のうちどの関節を暖機運転すべきであるか判定せず、アーム10全体を暖機運転することもできる。
・各リンク(第1ベクトル)の長さ及び方向のうち一方のみを考慮してもよい。また、第1ベクトルと第2ベクトルとの内積、及び各関節J1,J2が各リンクL1,L2の熱膨張に及ぼす影響のうち、一方のみを考慮してもよい。
・アーム10による作業時に限らず、シミュレーションによるアーム10の動作確認時に、第1位置に所定点Cを移動させるために所定温度においてアーム10の暖機運転が必要であるか否か判定してもよい。その場合、コントローラ20は、シミュレーションにおいて、設定した第1位置、設定した温度におけるリンクL1,L2の長さ、及び所定温度におけるリンクL1,L2の長さに基づいて、第1位置に所定点Cを移動させるために所定温度においてアーム10の暖機運転が必要であるか否か判定すればよい。
(第2実施形態)
以下、所定温度において第1位置に所定点Cを移動させることが可能であるか否か判定する構成、すなわち第1位置に所定点Cを移動させるために所定温度においてアーム10の暖機運転が必要であるか否か判定する構成を変更した第2実施形態について、第1実施形態との相違点を中心に説明する。なお、第1実施形態と同一の部分については、同一の符号を付すことにより説明を省略する。
図2に示すように、所定温度(例えば20℃)において所定点Cを移動させることができる基点Bから最も離れた位置は、関節J2を完全に伸ばした状態での所定点Cの位置となる。したがって、図3に示すように、動作点の教示時(例えば60℃)に算出した第1位置がこの位置よりも外側にある場合は、所定温度において所定点Cを第1位置に移動させることができない。
そこで、本実施形態では、コントローラ20(長さ判定部に相当)は、動作点の教示時の温度における基点Bから第1位置までの距離と、所定温度(現在の温度)において関節J2を完全に伸ばした状態での基点Bから所定点Cまでの長さとに基づいて、所定温度において第1位置に所定点Cを移動させることが可能であるか否か判定する。すなわち、コントローラ20は、第1位置に所定点Cを移動させるために、所定温度においてアーム10の暖機運転が必要であるか否か判定する。
詳しくは、コントローラ20は、動作点の教示時の温度における基点Bから第1位置までの距離が、所定温度において関節J2を完全に伸ばした状態での基点Bから所定点Cまでの長さよりも長い場合に、所定温度において第1位置に所定点Cを移動させることが不可能であると判定する。そして、コントローラ20は、第1位置に所定点Cを移動させるために、作業時(現在)の温度が所定温度であればアーム10の暖機運転が必要であると判定する。また、コントローラ20は、動作点の教示時の温度における基点Bから第1位置までの距離が、所定温度において関節J2を完全に伸ばした状態での基点Bから所定点Cまでの長さよりも短い場合に、作業時(現在)の温度が所定温度であれば第1位置に所定点Cを移動させることが可能であると判定する。そして、コントローラ20は、第1位置に所定点Cを移動させるために、所定温度においてアーム10の暖機運転が必要でないと判定する。
本実施形態は、以下の利点を有する。
・動作点の教示時の温度における基点Bから第1位置までの距離と、所定温度において関節J2を完全に伸ばした状態での基点Bから所定点Cまでの長さとに基づいて、所定温度において所定点Cを第1位置に移動させることが可能であるか否か判定される。そして、第1位置に所定点Cを移動させるために、所定温度においてアーム10の暖機運転が必要であるか否か判定される。このため、教示した通りにアーム10を動作させるために、暖機運転が必要であるか否かを、簡易な演算により高速で判定することができる。
・第1位置に所定点Cを移動させるために、所定温度においてアーム10の暖機運転が必要であることを、簡易な演算により高速で判定することができる。
・第1位置に所定点Cを移動させるために、所定温度においてアーム10の暖機運転が必要でないことを、簡易な演算により高速で判定することができる。
なお、第2実施形態を、以下のように変更して実施することもできる。
・アーム10による作業時に限らず、シミュレーションによるアーム10の動作確認時に、第1位置に所定点Cを移動させることが可能であるか否か、ひいては第1位置に所定点Cを移動させるために所定温度においてアーム10の暖機運転が必要であるか否か判定してもよい。その場合、コントローラ20は、シミュレーションにおいて、設定した第1位置、設定した温度におけるリンクL1,L2の長さ、及び作業時を想定した所定温度におけるL1,L2に基づいて、設定した温度における基点Bから第1位置までの距離と、所定温度において関節J2を完全に伸ばした状態での基点Bから所定点Cまでの長さとに基づいて、第1位置に所定点Cを移動させるために所定温度においてアーム10の暖機運転が必要であるか否か判定すればよい。
(第3実施形態)
所定温度において第1位置に所定点Cを移動させることが可能であるか否か判定する構成、すなわち第1位置に所定点Cを移動させるために所定温度においてアーム10の暖機運転が必要であるか否か判定する構成を変更した第3実施形態について、第1実施形態との相違点を中心に説明する。なお、第1実施形態と同一の部分については、同一の符号を付すことにより説明を省略する。
コントローラ20(限界角度算出部に相当)は、図9(b)に示すように、所定温度(例えば20℃)におけるリンクL1,L2の長さa0,b0、リンクL1,L2の熱膨張による長さ変化をそれぞれ補正する補正係数M1,M2、及び関節J2の角度を設定(教示)する時の設定温度(例えば60℃)と所定温度との温度差Δに基づいて、図9(b)に示すように所定温度(現在の温度)において関節J2を完全に伸ばした状態のアーム10の所定点Cの位置である第1位置に、図9(a)に示すように設定温度において所定点Cを移動させる時の関節J2の角度である限界角度θ1を算出する。
ここで、図9(a)に示すように、設定温度においてリンクL1の長さをa1、リンクL2の長さをb1、基点Bから所定点Cまでの長さをc1とする。余弦定理により、以下の(1)式が成立する。なお、c1^2は、c1の二乗を表す。
c1^2=a1^2+b1^2−2×a1×b1×cos(π−θ1) ・・・(1)
cosθ1をテイラー展開して、θ1を0に近い微小角度として第3項以降を省略すると、(1)式を以下の(2)式のように変形することができる。
c1^2=a1^2+b1^2+2×a1×b1×(1−θ1^2/2)・・・(2)
(2)式をθ1^2について解くと、以下の(3)式で表すことができる。
θ1^2={(a1+b1)^2−c1^2}/(a1×b1) ・・・(3)
また、設定温度におけるリンクL1の長さa1は、所定温度におけるリンクL1の長さa0、上記補正係数M1、及び設定温度と所定温度との温度差Δを用いて、a1=a0+M1×Δで表すことができる。同様に、設定温度におけるリンクL2の長さb1は、b1=b0+M2×Δで表すことができる。そして、図9(b)に示すように、所定温度において関節J2を完全に伸ばした状態での基点Bから所定点Cまでの長さc0=a0+b0と、図9(a)に示すように、設定温度における基点Bから所定点Cまでの長さc1とが等しいとする(c1=c0)。すなわち、図9(a)の所定点Cの位置と、図9(b)の所定点Cの位置とが等しいとする。これらの式を上記(3)式に代入すると、以下の(4)式のように表すことができる。
θ1^2={(a0+M1×Δ+b0+M2×Δ)^2−(a0+b0)^2}/{(a0+M1×Δ)×(b0+M2×Δ)} ・・・(4)
(4)式を展開して微小値となる項を省略すると、以下の(5)式のように表すことができる。
θ1^2=2×(a0+b0)×(M1+M2)×Δ/(a0×b0) ・・・(5)
したがって、限界角度θ1は、以下の(6)式で表すことができる。
θ1=√{2×(a0+b0)×(M1+M2)×Δ/(a0×b0)}・・・(6)
この限界角度θ1は、図9(a)に示すように設定温度において関節J2を完全に伸ばした状態に近い状態で関節J2の角度θを設定する場合に、これ以上関節J2の設定角度θを小さく設定すると、図9(b)に示すように所定温度(<設定温度)において関節J2を完全に伸ばしても設定温度での所定点Cの位置まで所定点Cを移動させることができなくなる角度である。なお、所定温度(作業時の温度)が設定温度(教示時の温度)よりも高い場合は、設定温度において関節J2を完全に伸ばした状態のアーム10の所定点Cの位置に、所定温度において所定点Cを問題なく移動させることができる。
このため、コントローラ20(判定部に相当)は、算出した限界角度θ1よりも設定角度θが小さい場合に、図9(b)に示すように所定温度において上記第1位置(図9(a)の所定点Cの位置)に所定点Cを移動させることが不可能であると判定する。すなわち、コントローラ20は、第1位置に所定点Cを移動させるために、作業時(現在)の温度が所定温度であればアーム10の暖機運転が必要であると判定する。また、コントローラ20は、算出した限界角度θ1よりも設定角度θが大きい場合に、所定温度において第1位置に所定点Cを移動させることが可能であると判定する。すなわち、コントローラ20は、第1位置に所定点Cを移動させるために、作業時(現在)の温度が所定温度であればアーム10の暖機運転が必要でないと判定する。
以上詳述した本実施形態は、以下の利点を有する。
・算出された限界角度θ1と、設定角度θとに基づいて、所定温度において第1位置に所定点Cを移動させることが可能であるか否か、すなわち第1位置に所定点Cを移動させるために所定温度においてアーム10の暖機運転が必要であるか否か判定することができる。
・コントローラ20は、算出した限界角度θ1よりも設定角度θが小さい場合に、所定温度においてアーム10の暖機運転が必要であると判定することができる。
・コントローラ20は、算出した限界角度θ1よりも設定角度θが大きい場合に、所定温度においてアーム10の暖機運転が必要でないと判定することができる。
・余弦定理、cos関数のテイラー展開を用い、所定温度において関節J2を完全に伸ばした状態を考慮すると、限界角度θ1を(6)式で表すことができる。したがって、簡易な式により限界角度θ1を算出することができ、コントローラ20の演算負荷を軽減することができる。
また、第1〜第3実施形態を、以下のように変更して実施することもできる。
・基点Bは、リンクL1において、関節J2と反対側の端部の中心(1点)に限らず、関節J1と関節J2との間に設定することもできる。
・アーム10の暖機運転の要否を判定する温度である所定温度は、アーム10を動作させる環境の温度やアーム10の動作状態(発熱状態)に応じて、任意に設定することができる。
・各温度におけるリンクL1,L2の長さを予め算出して記憶しておき、コントローラ20は、動作点の設定時の温度や所定温度に応じて、記憶されたリンクL1,L2の長さを読み込んで用いてもよい。
・教示点にアーム10の所定点Cを移動させる動作とは別に、教示点から所定方向へ所定距離だけ所定点Cを移動させる動作をアーム10に実行させる場合がある。この場合、教示点から所定方向へ所定距離の位置を、所定点Cが移動する位置である第1位置に含めればよい。
・垂直多関節ロボットの第2軸及び第3軸を構成するリンクL1,L2及び関節J1,J2に限らず、水平多関節ロボットの第1軸及び第2軸を構成する複数のリンク及び関節に具現化することもできる。さらに、ロボットのアーム10に限らず、複数のリンクと、複数のリンクを相対回転可能に接続する関節と、を備えるマニプレータに具現化することもできる。また、リンクの数は2つに限らず、3つ以上であっても、同様の考え方によりマニプレータの暖機運転の要否を判定することができる。
10…アーム(マニプレータ)、20…コントローラ(暖機運転要否判定装置)、J1…関節、J2…関節、L1…リンク、L2…リンク。

Claims (9)

  1. 複数のリンクと、前記複数のリンクを相対回転可能に接続する関節と、を備えるマニプレータの暖機運転の要否を判定する判定装置であって、
    前記マニプレータの所定点が移動する位置として設定された第1位置、前記第1位置を設定する時の設定温度における前記複数のリンクの長さ、及び所定温度における前記複数のリンクの長さに基づいて、前記所定温度において前記第1位置に前記所定点を移動させることが不可能であると判定した場合に前記第1位置に前記所定点を移動させるために前記所定温度において前記マニプレータの暖機運転が必要である判定するマニプレータの暖機運転要否判定装置。
  2. 前記暖機運転が必要であると判定された場合に、前記暖機運転が必要であることを通知する必要通知部を備える請求項1に記載のマニプレータの暖機運転要否判定装置。
  3. 前記所定温度は、前記マニプレータの現在の温度であり、
    前記暖機運転が必要であると判定された場合に、前記第1位置に前記所定点を移動させることが可能となるまで前記マニプレータの暖機運転を実行する暖機運転実行部を備える請求項1又は2に記載のマニプレータの暖機運転要否判定装置。
  4. 前記暖機運転実行部は、前記暖機運転が必要であると判定された場合に、前記第1位置に前記所定点を移動させることが可能となる前記マニプレータの温度よりも、前記マニプレータの温度を所定の余裕温度だけ上昇させて前記暖機運転を終了する請求項3に記載のマニプレータの暖機運転要否判定装置。
  5. 前記暖機運転実行部により前記暖機運転が実行される際に、前記暖機運転の推定終了時刻を通知する終了通知部を備える請求項3又は4に記載のマニプレータの暖機運転要否判定装置。
  6. 前記マニプレータは、複数の前記関節を備えており、
    前記暖機運転が必要であると判定された場合に、前記複数の関節のうちどの関節を暖機運転すべきであるかを判定する関節判定部を備える請求項1〜5のいずれか1項に記載のマニプレータの暖機運転要否判定装置。
  7. 前記関節判定部は、各リンクの長さ及び方向を表す第1ベクトルと、前記所定点から前記第1位置へのベクトルである第2ベクトルとの内積に基づいて、前記複数の関節のうちどの関節を暖機運転すべきであるかを判定する請求項6に記載のマニプレータの暖機運転要否判定装置。
  8. 前記関節判定部は、各関節の温度上昇が各リンクの熱膨張に及ぼす影響に基づいて、前記複数の関節のうちどの関節を暖機運転すべきであるかを判定する請求項6又は7に記載のマニプレータの暖機運転要否判定装置。
  9. 前記関節判定部によりどの関節を暖機運転すべきであるか判定された場合に、前記暖機運転すべきであると判定された関節を通知する関節通知部を備える請求項6〜8のいずれか1項に記載のマニプレータの暖機運転要否判定装置。
JP2016251904A 2016-12-26 2016-12-26 マニプレータの暖機運転要否判定装置 Active JP6922213B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016251904A JP6922213B2 (ja) 2016-12-26 2016-12-26 マニプレータの暖機運転要否判定装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016251904A JP6922213B2 (ja) 2016-12-26 2016-12-26 マニプレータの暖機運転要否判定装置

Publications (2)

Publication Number Publication Date
JP2018103312A JP2018103312A (ja) 2018-07-05
JP6922213B2 true JP6922213B2 (ja) 2021-08-18

Family

ID=62784942

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016251904A Active JP6922213B2 (ja) 2016-12-26 2016-12-26 マニプレータの暖機運転要否判定装置

Country Status (1)

Country Link
JP (1) JP6922213B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7400211B2 (ja) 2019-05-16 2023-12-19 セイコーエプソン株式会社 ロボットシステム、制御装置およびロボットの制御方法
JPWO2022071106A1 (ja) * 2020-09-30 2022-04-07

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015150676A (ja) * 2014-02-19 2015-08-24 キヤノン株式会社 ロボット装置、ロボット制御方法及びプログラム、並びに記録媒体
JP6771888B2 (ja) * 2015-01-29 2020-10-21 キヤノン株式会社 ロボット装置、制御方法、物品の製造方法、プログラム及び記録媒体

Also Published As

Publication number Publication date
JP2018103312A (ja) 2018-07-05

Similar Documents

Publication Publication Date Title
JP6922213B2 (ja) マニプレータの暖機運転要否判定装置
US20090171505A1 (en) Device and method for controlling robot arm, robot, and robot arm control program
JP2019014031A5 (ja) ロボットの制御装置、ロボットシステム、並びに、カメラの校正方法
EP3078459B1 (en) Robot controlling method, robot apparatus, program and recording medium
US9409269B2 (en) Positioning apparatus, working system, and hot working apparatus
US8170287B2 (en) Real-time self collision and obstacle avoidance
US20060195228A1 (en) Robot locus control method and apparatus and program of robot locus control method
Qin et al. Multi-furcation in a derivative queer-square mechanism
Kaloorazi et al. Determination of the maximal singularity-free workspace of 3-DOF parallel mechanisms with a constructive geometric approach
JP2011101918A (ja) ロボット及びロボットシステム
JP4822061B2 (ja) 双腕ロボット
JP6636950B2 (ja) 対象物に作用するパラレルロボット及びその実施方法
US9337768B2 (en) Motor control device, walking assist device, and motor control method
CN112476423B (zh) 机器人的关节电机控制方法、装置、设备及存储介质
JP2003039353A (ja) マニピュレータの制御方法
JP2014000649A (ja) ロボット制御装置、ロボット装置、ロボット制御方法、プログラム及び記録媒体
JP6805812B2 (ja) マニプレータの動作判定装置
Campa et al. Kinematic modeling and control of the hexapod parallel robot
JP2018103310A (ja) マニプレータの動作判定装置
JP2010110878A (ja) 多関節型ロボット装置およびその制御方法
JP2015066669A (ja) ロボット装置及びロボット制御方法
JP2015089583A (ja) ロボット装置
JP2015150676A (ja) ロボット装置、ロボット制御方法及びプログラム、並びに記録媒体
JP6875450B2 (ja) 制御装置、グリース冷却方法および管理装置
JP2013052451A (ja) ロボット制御システム、ロボットシステム及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20191023

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200925

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201013

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201209

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210629

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210712

R150 Certificate of patent or registration of utility model

Ref document number: 6922213

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150