(57)【要約】【課題】作業者の熟練度に関わらずロボットの軸の原点出しの精度を良好にする。【解決手段】ロボットシステム１は、複数の軸を有するロボット２、コントローラ３および表示部１６を備え、原点出しの対象とする軸である対象軸の角度が基準角度となるように対象軸を回転させた状態で対象軸を駆動するモータ１３の回転角度を検出するエンコーダ１５の検出値と対象軸の実際の角度との関係を較正する原点出しを行うためのシステムである。コントローラ３は、軸指定処理部１９、表示処理部２０および実行処理部２１を備える。軸指定処理部１９は、対象軸を指定する。表示処理部２０は、対象軸の角度が基準角度になるとともに対象軸として指定されなかった非対象軸の角度がエンコーダ１５の検出値に基づいて検出される現在角度になるようなロボット２の姿勢を表す姿勢表示を表示部１６に表示させる。実行処理部２１は、作業者による実行のための操作に応じて原点出しを実行する。【選択図】図２
2020179462.tif 000002
【特許請求の範囲】
【請求項１】
ロボットが有する複数の軸のうち原点出しの対象とする前記軸である対象軸の角度が予め定められた基準角度となるように作業者が前記対象軸を回転させた状態で前記対象軸を駆動するモータの回転角度を検出するエンコーダの検出値と前記対象軸の実際の角度との関係を較正する原点出しを行うための方法であって、
前記対象軸を指定する軸指定処理手順と、
前記複数の軸のうち前記軸指定処理手順において指定されなかった前記軸を非対象軸としたとき、前記対象軸の角度が前記基準角度になるとともに前記非対象軸の角度が前記エンコーダの検出値に基づいて検出される現在角度になるような前記ロボットの姿勢を表す姿勢表示を表示装置に表示させる表示処理手順と、
前記作業者による実行のための操作に応じて前記原点出しを実行する実行処理手順と、
を含むロボットの原点出し方法。
【請求項２】
前記表示処理手順では、
前記姿勢表示として、前記ロボットの外観を模式的に表すような表示を行うようになっている請求項１に記載のロボットの原点出し方法。
【請求項３】
前記表示処理手順では、
前記複数の軸のそれぞれに関する角度を前記表示装置に表示させるようになっており、
前記対象軸の角度の表示態様と前記非対象軸の角度の表示態様とは、互いに異なる表示態様とされている請求項１または２に記載のロボットの原点出し方法。
【請求項４】
前記表示処理手順では、
前記姿勢表示を、断続的または連続的に更新するようになっている請求項１から３のいずれか一項に記載のロボットの原点出し方法。
【請求項５】
さらに、前記対象軸に対応する前記基準角度が、前記ロボットのアームが所定の物体に接触したときの角度とされている場合、前記基準角度に基づいて前記原点出しの際に前記対象軸を回転させるべき方向を求めるとともに、前記エンコーダの検出値に基づいて前記対象軸が現時点で回転されている方向を求め、それら各方向が一致しないときに前記対象軸を回転させる方向に誤りがある旨を前記作業者に対して報知する報知処理手順を含む請求項１から４のいずれか一項に記載のロボットの原点出し方法。
【請求項６】
複数の軸を有するロボットと、前記ロボットの動作を制御するコントローラと、前記ロボットに関する表示を行うための表示装置と、を備え、前記複数の軸のうち原点出しの対象とする前記軸である対象軸の角度が予め定められた基準角度となるように作業者が前記対象軸を回転させた状態で前記対象軸を駆動するモータの回転角度を検出するエンコーダの検出値と前記対象軸の実際の角度との関係を較正する原点出しを行うためのシステムであって、
前記コントローラは、
前記対象軸を指定する軸指定処理部と、
前記複数の軸のうち前記軸指定処理において指定されなかった前記軸を非対象軸としたとき、前記対象軸の角度が前記基準角度になるとともに前記非対象軸の角度が前記エンコーダの検出値に基づいて検出される現在角度になるような前記ロボットの姿勢を表す姿勢表示を前記表示装置に表示させる表示処理部と、
前記作業者による実行のための操作に応じて前記原点出しを実行する実行処理部と、
を備えるロボットの原点出しシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の軸を有するロボットの軸の原点出しを行うためのロボットの原点出し方法およびロボットの原点出しシステムに関する。
【背景技術】
【０００２】
例えば産業用のロボットシステムにおいては、コントローラが認識する各軸の位置情報とロボットアームの実際の位置との関係を較正すること、言い換えるとロボットの各軸の原点位置を較正することが必要となる。なお、本明細書では、このような原点位置の較正のことを原点出しと称することがある。原点出しは、ロボットアーム（軸）の原点と、そのロボットアームを駆動するモータの回転角度を検出するエンコーダの原点と、を合わせ込む作業である。
【０００３】
このような原点出しは、例えば特許文献１に記載されているように、基本的には出荷前の段階で工場にて行われる。ただし、ロボットなどが工場から出荷されて設置先に設置された後であっても、モータおよび減速機の一方または双方が故障してその交換が行われた場合、エンコーダの電池が電池切れを起こした場合などには、上述した原点出しを再度行う必要があった。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−２７４１８８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
原点出しが行われる際、まず、原点出しの作業を実施する作業者は、原点出しの対象となる軸の角度が予め定められた基準角度となるように、ロボットアームを回転させる。なお、本明細書では、原点出しの対象となる軸のことを対象軸と称することがある。このようにして対象軸の角度が基準角度に一致するように回転された状態で、基準角度とエンコーダの検出値から計算して得られる検出角度との差に基づいて、原点出しのためのデータ、つまり基準角度と検出角度とを対応させる補正用データが生成され、その補正用データがコントローラに記憶される。コントローラは、エンコーダの検出値と補正用データとに基づいて、ロボットアームの実際の角度を精度良く検出することが可能となる。
【０００６】
上述した基準角度は、次の２つの方法のいずれかにより定めることができる。１つ目は、メカニカルに決める方法である。メカニカルに決める方法では、ロボットアームが所定の物体に接触したときの角度が基準角度とされる。具体的には、メカニカルに決める方法では、メカストッパ（メカエンド）などのメカニカルな構造体にロボットアームが押し当てられた際の角度、ノックピン（位置決めピン）を用いてロボットアームが固定された際の角度などが基準角度とされる。２つ目は、目視で決める方法である。目視で決める方法では、予め原点出しの対象となる回転軸を挟む２つのロボットアームにマーキングを施しておき、それらのマーキングが所定の状態（例えば、２つのマークが連なるような状態など）となる角度、ロボットアームが水平となる０度や垂直となる９０度などが基準角度とされる。
【０００７】
目視で決める方法は、メカニカルに決める方法に比べ、作業者の熟練度に起因する角度のばらつきが発生し易く、作業者の熟練度が低い場合には原点出しの精度が低くなるおそれがある。一方、メカニカルに決める方法は、目視で決める方法に比べ、作業者の熟練度に起因する角度のばらつきが発生し難いため、基本的には原点出しの精度を向上させることができる。しかし、メカニカルに決める方法では、次のようなケースにおいて問題が生じるおそれがある。
【０００８】
すなわち、メカニカルな構造体にロボットアームを押し当てる場合、作業者は、ロボットアーム（軸）を現在位置から正方向に回転させて押し当てるのか、または、負方向に回転させて押し当てるのかを、正確に把握することが難しい場合がある。例えば、６軸の垂直多関節型ロボットにおいて、５軸の原点出しを行う場合、４軸の角度が０度の場合と１８０度の場合とでは、押し当てる方向が反転することになる。
【０００９】
そして、このようなロボットでは、４軸の角度が０度の場合と１８０度の場合とにおけるロボットの状態（姿勢）の違いは、例えばコネクタの有無などによって判別するしかなく、作業の経験が浅い、つまり熟練度の比較的低い作業者では、このような違いを判別することが極めて困難となる。そのため、このようなロボットの５軸の原点出しの際には、熟練度の比較的低い作業者は、例えば保守マニュアルなどを確認しながら、それに基づいてロボットアームを動かしたとしても、対象軸を基準角度とは異なる誤った角度に動かしてしまう可能性があり、その結果、原点出しの精度が低下するおそれがある。
【００１０】
このように、従来、原点出しの精度は、その作業を行う作業者の熟練度に大きく依存していた。工場で行われる原点出しは、ロボットの生産に携わる者など比較的熟練度の高い作業者により行われることが通常であるため、その精度を良好にすることができるが、工場出荷後に行われる原点出しは、例えばロボットのユーザなどの比較的熟練度の低い作業者により行われることもあり得ることから、その精度を良好にすることが難しい。
【００１１】
本発明は上記事情に鑑みてなされたものであり、その目的は、作業者の熟練度に関わらずロボットの軸の原点出しの精度を良好にすることができるロボットの原点出し方法およびロボットの原点出しシステムを提供することにある。
【課題を解決するための手段】
【００１２】
請求項１に記載のロボットの原点出し方法は、ロボットが有する複数の軸のうち原点出しの対象とする軸である対象軸の角度が予め定められた基準角度となるように作業者が対象軸を回転させた状態で、対象軸を駆動するモータの回転角度を検出するエンコーダの検出値と対象軸の実際の角度との関係を較正する原点出しを行うための方法である。この方法には、対象軸を指定する軸指定処理手順と、表示処理手順と、作業者による実行のための操作に応じて原点出しを実行する実行処理手順と、が含まれている。
【００１３】
表示処理手順は、複数の軸のうち軸指定処理手順において指定されなかった軸を非対象軸としたとき、対象軸の角度が基準角度になるとともに非対象軸の角度がエンコーダの検出値に基づいて検出される現在角度になるようなロボットの姿勢を表す姿勢表示を表示装置に表示させる手順である。このように、対象軸に対応する姿勢だけでなく、非対象軸に対応する姿勢をも表示させるようにすることで、原点出しを行う際にロボットが取るべき正しい姿勢、言い換えると、原点出しを実行する際におけるロボットの最終的な姿勢が表示装置に表示されることになる。
【００１４】
作業者は、このような表示処理手順により表示されたロボットの姿勢を確認しながら、実際のロボットが表示された姿勢と同じ姿勢を取るように対象軸を動かす（回転させる）ことにより、対象軸を容易に且つ確実に基準角度に固定することができる。その後、作業者は、実行のための操作をすることにより、対象軸が確実に基準角度に固定された状態で原点出しを行うことができる。
【００１５】
このような原点出し方法によれば、表示装置に表示される情報が原点出しの作業に関する作業手順書のような役割を果たし、その結果、原点出しの作業を行う作業者は、保守マニュアルなどを確認しなくとも、対象軸を容易に且つ確実に基準角度に固定することが可能となる。また、上記方法によれば、作業者は、実際のロボットが表示装置に表示された姿勢と同じ姿勢を取るように対象軸を動かせばよいだけであるため、前述したような垂直多関節型ロボットの５軸の原点出しを行う際における回転方向の誤りの発生を防止することができる。
【００１６】
このように、上記原点出し方法によれば、その作業を行う作業者の熟練度にかかわらずロボットの軸の原点出しの精度を良好にすることができる。したがって、このような原点出しの方法は、出荷前に工場で行われる比較的熟練度の高い作業者により行われる原点出しに適用することはもちろん、工場出荷後にロボットなどの設置先で行われる比較的熟練度の低い作業者（例えばロボットのユーザ）により行われる原点出しにも適用することができ、このような工場出荷後の原点出しにおいて特に有益なものとなる。
【００１７】
ロボットに関する作業の経験がある程度あるような作業者であれば、表示処理手順により表示される姿勢表示として、例えばロボットの軸（関節）、アームなどを記号化した簡略的な表示であっても、実際のロボットが表示された姿勢と同じ姿勢を取るように対象軸を動かすことは比較的容易であると考えられる。しかし、ロボットの作業の経験がほとんどないような作業者（ロボットを新規に購入したユーザなど）の場合、このような簡略的な表示では、実際のロボットが表示された姿勢と同じ姿勢を取るように対象軸を動かすことが難しくなることも考えられる。
【００１８】
そこで、請求項２に記載の原点出し方法における表示処理手順では、姿勢表示として、ロボットの外観を模式的に表すような表示を行うようになっている。このようにすれば、作業者は、表示処理手順により表示された姿勢表示を確認しながら、実際のロボットの外観が表示されたロボットの外観と同じになるように対象軸を動かすことにより、対象軸を容易に且つ確実に基準角度に固定することができる。
【００１９】
この場合、作業者は、あくまでもロボットの見た目が表示されたものと同じになるように対象軸を動かすだけでよいため、ロボットに関する作業の経験が非常に浅い作業者であっても、対象軸を一層容易に且つ確実に基準角度に固定することができる。したがって、上記方法によれば、より経験の浅い作業者が原点出しの作業を行う場合であっても、ロボットの軸の原点出しの精度を良好に維持することができる。
【００２０】
請求項３に記載の原点出し方法における表示処理手順では、複数の軸のそれぞれに関する角度を表示装置に表示させるようになっている。また、この場合、対象軸の角度の表示態様と非対象軸の角度の表示態様とは、互いに異なる表示態様とされている。このようにすれば、作業者は、現在の原点出しの対象となっている軸がどの軸であるのかを表示態様の違いにより容易に認識することができる。したがって、上記方法によれば、作業者は、現在、原点出しの対象となっている軸を確実に動かすことができるとともに、原点出しの対象となっていない軸を誤って動かしてしまうことを防止できるという効果が得られる。
【００２１】
請求項４に記載の原点出し方法における表示処理手順では、姿勢表示を、断続的または連続的に更新するようになっている。これによれば、作業者が対象軸を基準角度に向けて回転させている際に作業者による誤操作など何らかの原因により非対象軸が動いてしまった場合でも、姿勢表示における非対象軸に対応するロボットの姿勢は、実際の姿勢と同様の姿勢となるように変化する。その結果、上記方法によれば、原点出しを実行する際におけるロボットの最終的な姿勢が常に表示装置に表示されることになり、前述した効果を確実に得ることができる。
【００２２】
対象軸に対応する基準角度が前述したメカニカルに決める方法で定められている場合、原点出しが行われる際に対象軸を回転させるべき方向は一意に定まることになる。また、対象軸に対応するエンコーダの検出値は、正しい値を示していないものの、その検出値の変化から対象軸が回転されている方向は求めることができる。そこで、請求項５に記載の原点出し方法は、次のような内容の報知処理手順を含んでいる。
【００２３】
すなわち、報知処理手順では、対象軸に対応する基準角度が、ロボットのアームが所定の物体に接触したときの角度とされている場合、その基準角度に基づいて原点出しの際に対象軸を回転させるべき方向が求められる。また、報知処理手順では、エンコーダの検出値に基づいて対象軸が現時点で回転されている方向が求められる。さらに、報知処理手順では、それら各方向が一致しないときに対象軸を回転させる方向に誤りがある旨を作業者に対して報知するようになっている。
【００２４】
このような方法によれば、作業者が対象軸をメカニカルな方法で定められた基準角度となるように回転させる際に、誤った方向に回転させた場合でも、その誤りが報知される。そのため、上記方法によれば、作業者が、表示装置に表示された姿勢表示を確認しても正しい回転方向を理解できなかった場合、表示装置に表示された姿勢表示の確認を怠った場合などにおいても、対象軸の回転方向を正しい方向へと促すことができる。したがって、上記方法によれば、前述したような垂直多関節型ロボットの５軸の原点出しを行う際における回転方向の誤りの発生を一層効果的に防止することができる。
【００２５】
請求項６に記載のロボットの原点出しシステムは、上記したロボットの原点出し方法と共通する技術的思想に基づくものである。したがって、このようなロボットの原点出しシステムによっても、上記した原点出し方法と同様に、作業者の熟練度にかかわらずロボットの軸の原点出しの精度を良好にすることができる。
【図面の簡単な説明】
【００２６】
【図１】第１実施形態に係るロボットシステムの構成を模式的に示す図
【図２】第１実施形態に係るロボットシステムの電気的構成を模式的に示す図
【図３】第１実施形態に係る対象軸の角度が基準角度となるように手首を回転させる作業の実施前後におけるロボットの状態を模式的に示す図
【図４】第１実施形態に係る原点出しの際にコントローラで実行される処理内容を模式的に示す図
【図５】第１実施形態に係る表示処理により表示される画面の具体例を模式的に示す図
【図６】第１実施形態に係る第４軸の角度が０度の場合のロボットの状態を模式的に示す図
【図７】第１実施形態に係る第４軸の角度が１８０度の場合のロボットの状態を模式的に示す図
【図８】第２実施形態に係るロボットシステムの電気的構成を模式的に示す図
【発明を実施するための形態】
【００２７】
以下、ロボットの原点出しシステムの複数の実施形態について図面を参照して説明する。なお、各実施形態において実質的に同一の構成には同一の符号を付して説明を省略する。
（第１実施形態）
以下、第１実施形態について図１〜図７を参照して説明する。
【００２８】
図１に示すロボットシステム１は、例えば一般的な産業用ロボットシステムであり、ロボット２、ロボット２の動作を制御するコントローラ３およびロボット２に関する操作および表示を行うためのティーチングペンダント４を備えている。ロボット２は、例えば６軸の垂直多関節型ロボットである。
【００２９】
ロボット２は、ベース５、ベース５に水平方向に回転可能に支持されたショルダ部６、ショルダ部６に上下方向に回転可能に支持された下アーム７、下アーム７に上下方向に回転可能に支持された第１の上アーム８、第１の上アーム８に捻り回転可能に支持された第２の上アーム９、第２の上アーム９に上下方向に回転可能に支持された手首１０および手首１０に捻り回転可能に支持されたフランジ１１から構成されている。ベース５、ショルダ部６、下アーム７、第１の上アーム８、第２の上アーム９、手首１０およびフランジ１１は、ロボット２のアームとして機能し、アーム先端であるフランジ１１には、図示はしないが、エンドエフェクタ（手先）が取り付けられる。
【００３０】
この場合、ベース５とショルダ部６との間を連結する回転関節の関節軸を第１軸Ｊ１、ショルダ部６と下アーム７との間を連結する回転関節の関節軸を第２軸Ｊ２、下アーム７と第１の上アーム８との間を連結する回転関節の関節軸を第３軸Ｊ３、第１の上アーム８と第２の上アーム９との間を連結する回転関節の関節軸を第４軸Ｊ４、第２の上アーム９と手首１０との間を連結する回転関節の関節軸を第５軸Ｊ５、手首１０とフランジ１１との間を連結する回転関節の関節軸を第６軸Ｊ６とする。
【００３１】
図２に示すように、ロボット２に設けられる複数の軸Ｊ１〜Ｊ６、ひいては各アーム１２は、それぞれに対応して設けられるモータ１３により駆動される。また、この場合、各モータ１３は、例えばギアである減速機１４を介して各アーム１２（軸Ｊ１〜Ｊ６）を駆動するようになっている。各モータ１３の近傍には、それぞれの回転軸の回転角度を検出するためのエンコーダ１５が設けられている。
【００３２】
エンコーダ１５は、例えばアブソリュートエンコーダであり、モータ１３の１回転内の回転角度を検出する機能と、モータ１３が何回転したかをカウントして記憶する機能と、を備えている。エンコーダ１５の検出値には、モータ１３の１回転内の回転角度を表す１回転データと、モータ１３が何回転したかを表す多回転データと、が含まれる。エンコーダ１５は、コントローラ３から供給されるロボットシステム１の主電源により動作するようになっている。
【００３３】
また、エンコーダ１５は、コントローラ３の電源がオフになるなどして主電源の供給が停止された場合でも、ロボット２に内蔵されたバックアップ用の電池により多回転データのカウントおよび保持（記憶）を行うようになっている。なお、エンコーダ１５では、このような電池が消耗して電池切れを起こした場合、１回転データは保持されるものの、多回転データについては消滅する。
【００３４】
ティーチングペンダント４は、例えば使用者が携帯あるいは手に所持して操作可能な程度の大きさで、例えば薄型の略矩形箱状に形成されている。ティーチングペンダント４は、表面部の中央部に例えば液晶ディスプレイからなる表示部１６を有している。表示部１６には、各種の画面が表示される。表示部１６は、ロボット２に関する表示を行うための表示装置の一例である。表示部１６は、タッチパネルで構成されている。またティーチングペンダント４には、表示部１６の周囲に各種のキースイッチ１７が設けられている。キースイッチ１７および上記タッチパネルに設けられるタッチスイッチは、図２に示す操作部１８に対応している。使用者は、操作部１８により種々の入力操作を行う。
【００３５】
ティーチングペンダント４は、ケーブルを経由してコントローラ３に接続され、通信インターフェイスを経由してコントローラ３との間で高速のデータ転送を実行するようになっており、操作部１８の操作により入力された操作信号などの情報はティーチングペンダント４からコントローラ３へ送信される。また、コントローラ３は、ティーチングペンダント４へ制御信号や表示用の信号などとともに駆動用の電力を供給する。
【００３６】
ユーザは、上記のティーチングペンダント４を用いてロボット２の運転や設定などの各種機能を実行可能であり、例えば操作部１８の操作により、予め記憶されている制御プログラムを呼び出して、ロボット２の起動や各種のパラメータの設定などを実行できる。さらに、このような構成のロボットシステム１は、ロボット２をマニュアル操作で動作させて各種の教示作業、ロボット２の各軸Ｊ１〜Ｊ６の原点出しなども実行可能となっている。したがって、本実施形態のロボットシステム１は、ロボットの原点出しシステムに相当する。
【００３７】
上記した原点出しとは、ロボット２の各軸Ｊ１〜Ｊ６の原点位置を較正することである。この場合、原点出しでは、複数の軸Ｊ１〜Ｊ６のうち原点出しの対象とする軸である対象軸の角度が予め定められた基準角度となるように作業者が対象軸を回転させた状態で、対象軸を駆動するモータ１３の回転角度を検出するエンコーダ１５の検出値と対象軸の実際の角度との関係が較正される。なお、基準角度の決め方などの詳細については、従来技術の説明において記載した通りである。コントローラ３は、ＣＰＵ、ＲＯＭ、ＲＡＭなどを備えており、上記した原点出しを実行するための構成を備えている。
【００３８】
すなわち、図２に示すように、コントローラ３は、軸指定処理部１９、表示処理部２０および実行処理部２１などの機能ブロックを備えている。これら各機能ブロックは、コントローラ３のＣＰＵがＲＯＭなどに格納されているプログラムを実行することでプログラムに対応する処理を実行することにより実現されている、つまりソフトウェアにより実現されている。なお、これら各機能ブロックの少なくとも一部をハードウェアにより実現してもよい。
【００３９】
軸指定処理部１９は、原点出しを行う作業者（例えばユーザ）の操作部１８に対する所定の操作に応じて対象軸を指定する。軸指定処理部１９により実行される各処理は、軸指定処理手順に相当する。なお、以下の説明などでは、複数の軸Ｊ１〜Ｊ６のうち軸指定処理部１９により指定されなかった軸を非対象軸とする。表示処理部２０は、対象軸の角度が基準角度になるとともに非対象軸の角度がエンコーダ１５の検出値に基づいて検出される現在角度になるようなロボット２の姿勢を表す姿勢表示を表示部１６に表示させる。
【００４０】
この場合、表示処理部２０は、上述した姿勢表示を、断続的に、具体的には、所定の時間間隔毎に更新するようになっている。なお、表示処理部２０は、上述した姿勢表示を、連続的に更新するようにしてもよい。このような表示処理部２０により実行される各処理は、表示処理手順に相当する。
【００４１】
実行処理部２１は、作業者の操作部１８に対する実行のための操作に応じて原点出しを実行する。具体的には、実行処理部２１は、上記実行のための操作が行われると、その時点でのエンコーダ１５の検出値から計算して得られる対象軸の検出角度と基準角度との差に基づいて、基準角度と検出角度とを対応させる補正用データを生成し、その補正用データをコントローラ３のＲＯＭなどに記憶する、といった処理を実行する。実行処理部２１により実行される各処理は、実行処理手順に相当する。このような原点出しが行われることにより、コントローラ３は、エンコーダ１５の検出値と補正用データとに基づいて、各軸Ｊ１〜Ｊ６の実際の角度を精度良く検出することが可能となる。
【００４２】
次に、上記構成の作用について説明する。
［１］原点出し方法の流れ
上記構成のロボットシステム１を用いたロボット２の各軸Ｊ１〜Ｊ６の原点出しは、次のような流れで行われる。なお、ここでは、軸Ｊ５を対象とする場合を例にして原点出しの流れを説明する。この場合、軸Ｊ５に対応する基準角度は、前述したメカニカルに決める方法で定められており、メカエンドに押し当てたときの角度（例えば約１２２度）に設定されている。
【００４３】
まず、原点出しの作業を実施する作業者は、原点出しの対象となる軸Ｊ５の角度が予め定められた基準角度となるように、手首１０を動作（回転）させる。この場合、図３の左側の図に示すように、作業者が手首１０を回転させる前の状態のロボット２において、軸Ｊ５の角度は、およそ０度となっている。したがって、作業者は、軸Ｊ５の角度が０度から基準角度である約１２２度へと変化するように手首１０を回転させる。
【００４４】
このように作業者による手首１０の回転が行われることにより、図３の右側の図に示すように、ロボット２は、軸Ｊ５の角度が基準角度である約１２２度とされる。このようにして軸Ｊ５の角度が基準角度となるように手首１０が回転された状態で、基準角度とエンコーダ１５の検出値から計算して得られる検出角度との差に基づいて、前述した補正用データの生成および記憶が行われる。
【００４５】
［２］原点出しの際にコントローラ３で実行される処理
原点出しの際にコントローラ３を主体として実行される処理は、図４に示すような内容となる。なお、ここでは、ロボット２が工場から出荷されて設置先に設置された後に再度行われる原点出しを例にして説明を行う。なお、本明細書では、このように再度行われる原点出しのことを原点復旧と称することがある。図４に示す原点出しに関する一連の処理は、作業者の操作部１８に対する所定の操作に応じて開始される。
【００４６】
まず、ステップＳ１００では、軸指定の操作が有ったか否かが判断される。ここで、作業者によって軸指定のための操作が行われると、ステップＳ１００で「ＹＥＳ」となり、ステップＳ２００に進む。なお、軸指定のための操作としては、例えば表示部１６に表示された各軸Ｊ１〜Ｊ６を表すアイコンのうちいずれかをタッチ操作して選択するといった操作、表示部１６に表示された軸番号を入力するための入力欄に対して所望する軸の番号（数字）を入力するといった操作など、様々な態様の操作を適用することができる。
【００４７】
ステップＳ２００では、作業者の操作により指定された軸が対象軸に設定される。ステップＳ２００の実行後はステップＳ３００に進み、作業者の操作により指定されなかった軸が非対象軸に設定される。ステップＳ２００およびＳ３００が実行されることにより、ロボット２の各軸Ｊ１〜Ｊ６のそれぞれが対象軸および非対象軸のいずれかに分類される。詳細は後述するが、このような分類を行うのは、対象軸および非対象軸で表示の態様を異ならせることを目的としている。ステップＳ３００の実行後はステップＳ４００に進み、表示処理部２０によって前述した各処理（表示処理）が実行される。
【００４８】
表示処理が実行されると、表示部１６には図５に示すような画面が表示される。このような画面の内容については後述する。ステップＳ４００の実行後はステップＳ５００に進み、原点出しを実行するための操作が有ったか否かが判断される。ここで、作業者によって原点出しを実行するための操作が行われると、ステップＳ５００で「ＹＥＳ」となり、ステップＳ６００に進む。なお、原点出しを実行するための操作の内容については後述する。ステップＳ６００では、実行処理部２１によって前述した各処理（実行処理）が実行される。ステップＳ６００の実行後、原点出しに関する一連の処理が終了となる。
【００４９】
［３］表示処理により表示される画面
表示処理が実行されることにより表示される画面は、具体的には図５に示すような画面となる。この場合、軸Ｊ５が対象軸に設定されているとともに、軸Ｊ１〜Ｊ４およびＪ６が非対象軸に設定されているものとする。図５に示すように、画面上部の領域２２の左端部には、現在実施中の作業を示す文字である「原点復旧」が表示されている。領域２２の下側に設けられた領域２３には、各軸Ｊ１〜Ｊ６のそれぞれに関する角度（基準角度および現在角度）を表す角度表示２４、ロボット２の姿勢を表す姿勢表示２５、実行キー２６およびＣＡＮＣＥＬキー２７が表示されている。
【００５０】
角度表示２４に表示される基準角度は、各軸Ｊ１〜Ｊ６のそれぞれについて予め定められた角度である。したがって、角度表示２４に表示される基準角度の値は、各軸Ｊ１〜Ｊ６が動いた（回転した）場合でも変化することはない。また、角度表示２４に表示される現在角度は、各軸のＪ１〜Ｊ６のそれぞれについて、その時点におけるエンコーダ１５の検出値に基づいて検出される角度である。したがって、角度表示２４に表示される現在角度の値は、各軸Ｊ１〜Ｊ６が動いた（回転した）場合、それに応じて変化する。
【００５１】
角度表示２４では、対象軸である軸Ｊ５の角度の表示態様と非対象軸である軸Ｊ１〜Ｊ４およびＪ６の角度の表示態様とが、互いに異なる表示態様とされている。具体的には、対象軸（Ｊ５）の角度が表示された欄は、その背景が白色とされているのに対し、非対象軸（Ｊ１〜Ｊ４およびＪ６）の角度が表示された欄は、その背景がグレーとされている、つまり非対象軸の角度はグレーアウト表示となっている。
【００５２】
この時点では、対象軸である軸Ｊ５の原点出しは完了しおらず、軸Ｊ５について原点位置の整合性が取れていない。そのため、軸Ｊ５の現在角度、つまりエンコーダ１５の検出値に基づいて検出される角度は、例えば軸Ｊ５から先の部分（フランジ１１など）が軸Ｊ４までの構造物（第２の上アーム９）にめり込むような、実際にはあり得ないような数値を示している。姿勢表示２５は、対象軸（Ｊ５）の角度が基準角度になるとともに非対象軸（Ｊ１〜Ｊ４およびＪ６）の角度が現在角度になるようなロボット２の姿勢を表している。この場合、姿勢表示２５は、ロボット２の外観を模式的に表すような表示、より具体的にはロボット２を３次元画像として表示したもの（３Ｄ表示）となっている。
【００５３】
実行キー２６およびＣＡＮＣＥＬキー２７は、いずれも作業者によりタッチ操作可能な操作キーである。実行キー２６がタッチ操作されると、実行処理部２１によって実行処理が実行される、つまり原点出しが実行される。そして、原点出しが完了した旨が表示されるなどした後、図５に示す画面全体が閉じられる（非表示とされる）。
【００５４】
このように、本実施形態では、実行キー２６に対するタッチ操作が、原点出しを実行するための操作となっている。なお、原点出しを実行するための操作としては、例えば特定のキースイッチ１７に対する操作など、様々な態様の操作を適用することができる。ＣＡＮＣＥＬキー２７がタッチ操作されると、実行処理、つまり原点出しが実行されることなく、図５に示す画面全体が閉じられる（非表示とされる）。
【００５５】
以上説明したように、本実施形態によれば次のような効果が得られる。
本実施形態のロボットシステム１を用いてロボット２の原点出しが行われる際、コントローラ３では、原点出しを行う作業者の操作に応じて対象軸を指定する処理と、対象軸の角度が基準角度になるとともに非対象軸の角度が現在角度になるようなロボット２の姿勢を表す姿勢表示を表示部１６に表示させる表示処理と、作業者の操作に応じて原点出しを実行する実行処理と、が実行される。
【００５６】
上述した表示処理により表示される姿勢表示では、対象軸に対応する姿勢だけでなく、非対象軸に対応する姿勢をも表示させるようになっている。これにより、原点出しを行う際にロボット２が取るべき正しい姿勢、言い換えると、原点出しを実行する際におけるロボット２の最終的な姿勢が表示部１６に表示されることになる。作業者は、このようにして表示部１６に表示されたロボット２の姿勢を確認しながら、実際のロボット２が表示された姿勢と同じ姿勢を取るように対象軸を動かす（回転させる）ことにより、対象軸を容易に且つ確実に基準角度に固定することができる。その後、作業者は、実行のための操作をすることにより、対象軸が確実に基準角度に固定された状態で原点出しを行うことができる。
【００５７】
このような本実施形態の原点出し方法によれば、表示部１６に表示される情報が原点出しの作業に関する作業手順書のような役割を果たし、その結果、原点出しの作業を行う作業者は、保守マニュアルなどを確認しなくとも、対象軸を容易に且つ確実に基準角度に固定することが可能となる。また、上記方法によれば、作業者は、実際のロボット２がティーチングペンダント４の表示部１６に表示された姿勢と同じ姿勢を取るように対象軸を動かせばよいだけである。そのため、本実施形態によれば、以下に説明するように、６軸の垂直多関節型ロボットであるロボット２の第５軸Ｊ５の原点出しを行う際における回転方向の誤りの発生を防止することができる。
【００５８】
すなわち、ロボット２の軸Ｊ５の原点出しを行う際、作業者は、手首１０を現在位置から正方向に回転させてメカエンドに押し当てるのか、または、負方向に回転させてメカエンドに押し当てるのかを、正確に把握することが難しい場合がある。ロボット２において、軸Ｊ５の原点出しを行う場合、軸Ｊ４の角度が０度の場合と１８０度の場合とでは、押し当てる方向が反転することになる。
【００５９】
そして、図６に示すように軸Ｊ４の角度が０度の場合と、図７に示すように軸Ｊ４が１８０度の場合と、におけるロボット２の状態（姿勢）の違いは、例えばコネクタ２８の有無などによって判別するしかなく、作業の経験が浅い、つまり熟練度の比較的低い作業者では、このような違いを判別することが極めて困難となる。そのため、ロボット２の５軸の原点出しの際には、熟練度の比較的低い作業者は、例えば保守マニュアルなどを確認しながら、それに基づいて手首１０を動かしたとしても、対象軸を基準角度とは異なる誤った角度に動かしてしまう可能性があり、その結果、原点出しの精度が低下するおそれがある。
【００６０】
本実施形態の原点出し方法によれば、原点出しを実行する際におけるロボット２の最終的な姿勢が表示部１６に表示されることになるため、軸Ｊ４の角度が０度の場合には手首１０が正方向に回転されて押し当てられたロボット２の姿勢が表示され、軸Ｊ４の角度が１８０度の場合には手首１０が負方向に回転されて押し当てられたロボット２の姿勢が表示される。そして、作業者は、実際のロボット２が表示部１６に表示された姿勢と同じ姿勢を取るように対象軸を動かせばよいだけであるため、ロボット２の軸Ｊ５の原点出しを行う際における回転方向の誤りの発生を防止することができる。
【００６１】
このように、本実施形態の原点出し方法によれば、その作業を行う作業者の熟練度にかかわらずロボット２の各軸Ｊ１〜Ｊ６の原点出しの精度を良好にすることができる。したがって、このような原点出しの方法は、出荷前に工場で行われる比較的熟練度の高い作業者により行われる原点出しに適用することはもちろん、工場出荷後にロボット２などの設置先で行われる比較的熟練度の低い作業者（例えばロボット２のユーザ）により行われる原点出しにも適用することができ、このような工場出荷後の原点出しにおいて特に有益なものとなる。
【００６２】
ロボット２に関する作業の経験がある程度あるような作業者であれば、表示処理により表示される姿勢表示として、例えばロボット２の軸（関節）、アームなどを記号化した簡略的な表示であっても、実際のロボット２が表示された姿勢と同じ姿勢を取るように対象軸を動かすことは比較的容易であると考えられる。しかし、ロボット２の作業の経験がほとんどないような作業者（ロボット２を新規に購入したユーザなど）の場合、このような簡略的な表示では、実際のロボット２が表示された姿勢と同じ姿勢を取るように対象軸を動かすことが難しくなることも考えられる。
【００６３】
そこで、本実施形態の原点出し方法における表示処理では、姿勢表示として、ロボット２の外観を模式的に表すような表示（３Ｄ表示）を行うようになっている。このようにすれば、作業者は、原点出しを行う際、表示部１６に表示された姿勢表示を確認しながら、実際のロボット２の外観が表示されたロボット２の外観と同じになるように対象軸を動かすことにより、対象軸を容易に且つ確実に基準角度に固定することができる。
【００６４】
この場合、作業者は、あくまでもロボット２の見た目が表示されたものと同じになるように対象軸を動かすだけでよいため、ロボット２に関する作業の経験が非常に浅い作業者であっても、対象軸を一層容易に且つ確実に基準角度に固定することができる。したがって、本実施形態の原点出し方法によれば、より経験の浅い作業者が原点出しの作業を行う場合であっても、ロボット２の軸の原点出しの精度を良好に維持することができる。
【００６５】
この場合、表示処理では、ロボット２の軸Ｊ１〜Ｊ６のそれぞれに関する角度を表示部１６に表示させるようになっている。また、この場合、対象軸の角度の表示態様と非対象軸の角度の表示態様とは、互いに異なる表示態様とされている。具体的には、対象軸の角度が表示された欄は、その背景が白色とされているのに対し、非対象軸の角度が表示された欄は、その背景がグレーとされている。
【００６６】
このようにすれば、作業者は、現在の原点出しの対象となっている軸がどの軸であるのかを表示態様の違いにより容易に認識することができる。したがって、本実施形態の原点出し方法によれば、作業者は、現在、原点出しの対象となっている軸を確実に動かすことができるとともに、原点出しの対象となっていない軸を誤って動かしてしまうことを防止できるという効果が得られる。
【００６７】
この場合、表示処理では、姿勢表示を、断続的または連続的に更新するようになっているため、次のような効果が得られる。すなわち、作業者が対象軸を基準角度に向けて回転させている際に作業者による誤操作など何らかの原因により非対象軸が動いてしまった場合でも、姿勢表示における非対象軸に対応するロボット２の姿勢は、実際の姿勢と同様の姿勢となるように変化する。その結果、本実施形態の原点出し方法によれば、原点出しを実行する際におけるロボット２の最終的な姿勢が常に表示装置に表示されることになり、前述した効果を確実に得ることができる。
【００６８】
（第２実施形態）
以下、第２実施形態について図８を参照して説明する。
図８に示すように、本実施形態のロボットシステム３１は、第１実施形態のロボットシステム１に対し、コントローラ３に代えてコントローラ３２を備えている点が異なる。コントローラ３２は、コントローラ３に対し、報知処理部３３が追加されている点が異なる。
【００６９】
対象軸に対応する基準角度が前述したメカニカルに決める方法で定められている場合、原点出しが行われる際に対象軸を回転させるべき方向は、対象軸の現在角度に関係なく、正方向または負方向のいずれかに一意に定まることになる。また、原点出しが実行される前の期間において、対象軸に対応するエンコーダ１５の検出値は、正しい値を示していないものの、その検出値の変化から対象軸が回転されている方向は求めることができる。具体的には、検出値の変化が正の値であれば回転方向は正方向であることが分かり、検出値の変化が負の値であれば回転方向は負方向であることが分かる。
【００７０】
そこで、報知処理部３３は、対象軸に対応する基準角度が、ロボット２のアーム１２が所定の物体（メカエンド、位置決めピンなど）に接触したときの角度とされている場合、その基準角度に基づいて原点出しの際に対象軸を回転させるべき方向を求める。また、報知処理部３３は、エンコーダ１５の検出値の変化に基づいて対象軸が現時点で回転されている方向を求める。
【００７１】
さらに、報知処理部３３は、上述したようにして求めた各方向が一致しないとき、対象軸を回転させる方向に誤りがある旨を作業者に対して報知する報知処理を実行する。なお、報知処理としては、例えば、表示部１６に回転方向が誤っている旨を表す警告メッセージを表示させたり、エラー音などを発生させたり、様々な態様の報知を採用することができる。このような報知処理部３３により実行される各処理は、報知処理手順に相当する。
【００７２】
以上説明したように、本実施形態によれば次のような効果が得られる。
本実施形態の原点出し方法によれば、作業者が対象軸をメカニカルな方法で定められた基準角度となるように回転させる際に、誤った方向に回転させた場合でも、その誤りが報知される。そのため、上記方法によれば、作業者が、表示部１６に表示された姿勢表示を確認しても正しい回転方向を理解できなかった場合、表示部１６に表示された姿勢表示の確認を怠った場合などにおいても、対象軸の回転方向を正しい方向へと促すことができる。したがって、本実施形態によれば、前述したような垂直多関節型ロボットの５軸の原点出しを行う際における回転方向の誤りの発生を一層効果的に防止することができる。
【００７３】
（その他の実施形態）
なお、本発明は上記し且つ図面に記載した各実施形態に限定されるものではなく、その要旨を逸脱しない範囲で任意に変形、組み合わせ、あるいは拡張することができる。
上記各実施形態で示した数値などは例示であり、それに限定されるものではない。
【００７４】
本発明は、一般的な産業用ロボットシステムであるロボットシステム１、３１に用いられるものに限らず、複数の軸を有するロボットと、そのロボットの動作を制御するコントローラと、そのロボットに関する表示を行うための表示装置とを備えたロボットシステム全般に適用することができる。
【００７５】
表示装置としては、ティーチングペンダント４の表示部１６に限らずともよく、例えば、コントローラ３、３２から与えられる表示用の信号に基づいて各種の表示を行うディスプレイなどの表示装置であってもよいし、コントローラ３、３２との通信が可能とされたパーソナルコンピュータ、モバイル操作端末（例えばスマートフォン、タブレット端末など）などの表示装置であってもよい。
【００７６】
表示処理により表示される姿勢表示として、例えばロボット２の軸（関節）、アームなどを記号化した簡略的な表示としてもよい。表示処理において、対象軸の角度の表示態様と非対象軸の角度の表示態様とを同じ表示態様としてもよい。
上記各実施形態では、本発明の原点出し方法について対象軸が１つの場合を例に説明したが、対象軸が複数ある場合でも同様の原点出し方法を適用することができる。
【００７７】
上記各実施形態では原点出しの際に実行される一連の処理、つまり軸指定処理手順、表示処理手順および実行処理手順がコントローラ３、３２により行われるようになっていたが、それら処理の一部または全部を別の装置（例えば、ティーチングペンダント４に代えて用いられるモバイル操作端末など）が行うようにしてもよい。すなわち、コントローラ３、３２とは別の装置により軸指定処理部、表示処理部および実行処理部などを構成してもよい。
【００７８】
上記各実施形態において、軸指定処理部１９は、作業者の操作部１８に対する操作に応じて対象軸を指定する処理を実行するようになっていたが、自動的に対象軸を指定する処理を実行するようにしてもよい。例えば、エンコーダ１５の電池切れを診断する診断機能を有するシステムである場合、軸指定処理部１９は、その診断機能により電池切れが検出されたものに対応する軸を、自動的に対象軸に指定（設定）するようにしてもよい。
【符号の説明】
【００７９】
２…ロボット、３、３２…コントローラ、１６…表示部、１３…モータ、１５…エンコーダ、１９…軸指定処理部、２０…表示処理部、２１…実行処理部、３３…報知処理部、Ｊ１〜Ｊ６…軸。
【図１】
2020179462.tif 000003
【図２】
2020179462.tif 000004
【図３】
2020179462.tif 000005
【図４】
2020179462.tif 000006
【図５】
2020179462.tif 000007
【図６】
2020179462.tif 000008
【図７】
2020179462.tif 000009
【図８】
2020179462.tif 000010