(57)【要約】【課題】専用のセンサを用いることなく良好に軸部材（作業軸）の原点位置設定を行う。【解決手段】アーム３（第２リンク３ｂ）と、これに支持される作業軸４と、作業軸４に備えられる軸側ストッパ３０と、アーム３に備えられるアーム側ストッパ３４とを備えたロボット１Ａについて、ストッパ３０の上面３０ａとストッパ３４の下面３４ａとが当接する位置を作業軸４の軸方向原点位置として、この位置を基準に、ストッパ３０の突起部３０ｂとストッパ３４の側面３４ｂとが当接し得る作業軸４の高さ位置を定める工程と、作業軸４を移動させ、前記上面３０ａと前記下面３４ａとを当接させることにより軸方向原点位置を設定する工程と、この軸方向原点位置に基づき、作業軸４を前記高さ位置に配置する工程と、この高さ位置で作業軸４を回転させて、ストッパ３４の側面３４ｂに突起部３０ｂを当接させることで、作業軸４の回転方向原点位置を設定する工程とを含む。【選択図】図２
2015077649.tif 000002
【特許請求の範囲】
【請求項１】
ベース部材と、このベース部材に対して軸方向の移動および軸心回りの回転を行う軸部材と、前記軸部材の軸方向の移動に伴い互いに前記軸方向に当接可能なように、前記軸部材に備えられる第１軸方向当接部および前記ベース部材に備えられる第２軸方向当接部と、前記軸部材が前記軸方向の特定位置に配置された状態において当該軸部材が回転することにより、当該回転方向に互いに当接可能なように、前記軸部材に備えられる第１回転方向当接部および前記ベース部材に備えられる第２回転方向当接部と、を備えたロボットについて、前記第１軸方向当接部と前記第２軸方向当接部とが当接する位置を前記軸部材の軸方向原点位置として、予め当該軸方向原点位置を基準に前記特定位置を定める準備工程と、
前記軸部材を移動させ、前記第１軸方向当接部と前記第２軸方向当接部とを当接させることにより前記軸方向原点位置を設定する軸方向原点設定工程と、
前記軸方向原点設定工程において設定された軸方向原点位置に基づき、前記軸部材を前記軸方向に移動させて前記特定位置に配置する軸移動工程と、
前記特定位置に配置した前記軸部材を回転させて前記第１回転方向当接部と前記第２回転方向当接部とを当接させることにより、当該軸部材の回転方向原点位置を設定する回転方向原点設定工程と、を含むことを特徴とするロボットの原点設定方法。
【請求項２】
請求項１に記載のロボットの原点設定方法において、
前記軸方向原点設定工程は、前記第１軸方向当接部と前記第２軸方向当接部とが接近するように、前記軸部材を前記軸方向に移動させて当該軸部材が停止した位置を第１仮原点位置として取得する第１仮原点設定工程と、
前記第１仮原点設定工程の後、前記軸部材を所定角度だけ回転させ、前記第１軸方向当接部と前記第２軸方向当接部とが接近するように、前記軸部材を前記軸方向に移動させて、当該軸部材が停止した位置を第２仮原点位置として取得する第２仮原点設定工程と、
前記第１仮原点位置および前記第２仮原点位置のうち、予め定められている設定条件に基づき何れか一方の仮原点位置を軸方向原点位置として設定する本原点設定工程と、を含むことを特徴とするロボットの原点設定方法。
【請求項３】
請求項１に記載のロボットの原点設定方法において、
前記軸方向原点設定工程では、前記第１軸方向当接部と前記第２軸方向当接部とが接近するように、前記軸部材を前記軸方向に移動させて当該軸部材が停止した位置を仮原点位置として取得する処理を、前記軸部材を所定角度だけ回転させながら複数回実行し、連続して取得した仮原点位置のうち、予め設定された複数の数だけ仮原点位置が同一となったときに、当該同一となる仮原点位置を軸方向原点位置として設定することを特徴とするロボットの原点設定方法。
【請求項４】
ベース部材と、このベース部材に対して軸方向の移動および軸心回りの回転を行う軸部材とを備えたロボットであって、
前記軸部材の軸方向の移動に伴い互いに前記軸方向に当接可能なように、前記軸部材に備えられる第１軸方向当接部および前記ベース部材に備えられる第２軸方向当接部と、
前記軸部材が前記軸方向の特定位置に配置された状態において当該軸部材が回転することにより、当該回転方向に互いに当接可能なように、前記軸部材に備えられる第１回転方向当接部および前記ベース部材に備えられる第２回転方向当接部と、
前記第１軸方向当接部と前記第２軸方向当接部とが前記軸方向に当接する位置を基準として予め定められた前記特定位置を記憶する記憶手段と、
前記軸部材の前記軸方向の移動および回転を制御する制御手段と、を備え、
前記制御手段は、前記軸部材を移動させ、前記第１軸方向当接部と前記第２軸方向当接部とを当接させることにより前記軸方向原点位置を設定する軸方向原点設定処理と、この軸方向原点設定処理において設定した軸方向原点位置に基づき、前記軸部材を前記特定位置に配置する軸移動処理と、前記特定位置に配置した前記軸部材を回転させて前記第１回転方向当接部と前記第２回転方向当接部とを当接させることにより、当該軸部材の回転方向原点位置を設定する回転方向原点設定処理と、を実行する、ことを特徴とするロボット。
【請求項５】
請求項４に記載のロボットにおいて、
前記軸方向原点設定処理は、
前記第１軸方向当接部と前記第２軸方向当接部とが接近するように、前記軸部材を前記軸方向に移動させて当該軸部材が停止した位置を第１仮原点位置として取得する第１仮原点設定処理と、
前記第１仮原点設定処理の後、前記軸部材を所定角度だけ回転させ、前記第１軸方向当接部と前記第２軸方向当接部とが接近するように、前記軸部材を前記軸方向に移動させて当該軸部材が停止した位置を第２仮原点位置として取得する第２仮原点設定処理と、
前記第１仮原点位置および前記第２仮原点位置のうち、予め定められている設定条件に基づき何れか一方の仮原点位置を軸方向原点位置として設定する本原点設定処理と、を含むことを特徴とするロボット。
【請求項６】
請求項４に記載のロボットにおいて、
前記軸方向原点設定処理は、前記第１軸方向当接部と前記第２軸方向当接部とが接近するように、前記軸部材を前記軸方向に移動させて当該軸部材が停止した位置を仮原点位置として取得する処理を、前記軸部材を所定角度だけ回転させながら複数回実行し、連続して取得した仮原点位置のうち、予め設定された複数の数だけ仮原点位置が同一となったときに、当該同一となる仮原点位置を軸方向原点位置として設定するものである、ことを特徴とするロボット。
【請求項７】
請求項４乃至６の何れか一項に記載のロボットにおいて、
前記軸部材は、前記第１軸方向当接部と前記第１回転方向当接部とが一体に備えられた鍔状の軸側当接部材を有する、ことを特徴とするロボット。
【請求項８】
請求項４乃至７の何れか一項に記載のロボットにおいて、
前記ベース部材は、前記第２軸方向当接部と前記第２回転方向当接部とが一体に備えられたベース側当接部材を有する、ことを特徴とするロボット。
【請求項９】
請求項４に記載のロボットにおいて、
前記軸部材は、第１端部と第２端部とを有し、
前記第１軸方向当接部および前記第２軸方向当接部は、前記ベース部材のうち、前記第１端部の側に設けられ、
前記第１回転方向当接部および前記第２回転方向当接部は、前記ベース部材のうち、前記第２端部の側に設けられている、ことを特徴とするロボット。
【請求項１０】
請求項４に記載のロボットにおいて、
第１回転方向当接部および前記第２回転方向当接部のうち一方は、これら回転方向当接部同士が前記軸方向に互いに当接したときに弾性的に後退する、ことを特徴とするロボット。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、モータにより回転駆動および昇降駆動される軸部材を備えるロボットの原点設定方法およびロボットに関するものである。
【背景技術】
【０００２】
従来から、アーム（ベース）に対してロボットハンド機構が作業軸（軸部材）を介して支持され、モータの駆動力により作業軸とロボットハンド機構とが一体的に回転されるスカラ型ロボット（以下、ロボットと略す）が公知である。そして、特許文献１には、この種のロボットに関し、電源投入時などに、前記作業軸の回転方向の原点位置を、専用のセンサを用いることなく設定する方法（原点出し方法）が開示されている。その方法は、予め、ロボットハンド機構側に上向きに突出するドグ（突出部）を設ける一方、アーム側に下向きに突出するストッパを設けておき、作業軸を回転させてドグとストッパとを周方向に当接させることで、その当接位置を基準として回転方向の原点位置を設定するというものである。このようなセンサレスの原点設定方法は、ロボット構成の簡素化および低廉化を図る上で有用なものである。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第３２６８７０５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記ロボットとしては、ロボットハンド機構が作業軸と共に回転するのみならず、作業軸と共に上下方向に移動するものもある。このようなロボットにおいて上記方法に基づき回転方向の原点設定を行うには、予めドグとストッパとが周方向に当接可能となる高さ位置に作業軸（ロボットハンド機構）を配置した上で、当該作業軸を回転させてドグとストッパとを当接させることが必要となる。この場合、ロボット構成の簡素化および低廉化を考慮すると、回転方向の原点設定の場合と同様に、専用のセンサを用いることなく、作業軸を上記高さ位置に配置し、その上で、上記方法に従って回転方向の原点位置を設定できるのが好適である。しかし、この点に関する具体的な方法や構成は特許文献１には一切開示されていない。
【０００５】
本発明は、このような事情に鑑みてなされたものであり、軸方向の移動及び回転が可能な軸部材を備えたロボットに関して、専用のセンサを用いることなく良好に軸部材の原点位置設定を行うことができる技術を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記の課題を解決するために、本発明に係るロボットの原点設定方法は、ベース部材と、このベース部材に対して軸方向の移動および軸心回りの回転を行う軸部材と、前記軸部材の軸方向の移動に伴い互いに前記軸方向に当接可能なように、前記軸部材に備えられる第１軸方向当接部および前記ベース部材に備えられる第２軸方向当接部と、前記軸部材が前記軸方向の特定位置に配置された状態において当該軸部材が回転することにより、当該回転方向に互いに当接可能なように、前記軸部材に備えられる第１回転方向当接部および前記ベース部材に備えられる第２回転方向当接部と、を備えたロボットについて、前記第１軸方向当接部と前記第２軸方向当接部とが当接する位置を前記軸部材の軸方向原点位置として、予め当該軸方向原点位置を基準に前記特定位置を定める準備工程と、前記軸部材を移動させ、前記第１軸方向当接部と前記第２軸方向当接部とを当接させることにより前記軸方向原点位置を設定する軸方向原点設定工程と、前記軸方向原点設定工程において設定された軸方向原点位置に基づき、前記軸部材を前記軸方向に移動させて前記特定位置に配置する軸移動工程と、前記特定位置に配置した前記軸部材を回転させて前記第１回転方向当接部と前記第２回転方向当接部とを当接させることにより、当該軸部材の回転方向原点位置を設定する回転方向原点設定工程と、を含むものである。
【０００７】
この方法によれば、電源投入時などには、軸部材を軸方向に移動させて第１軸方向当接部と第２軸方向当接部とを当接させることにより、前記軸方向原点位置を特定（設定）することができる。そして、この軸方向原点位置を基準に予め定められている前記特定位置に軸部材を移動させた上で、軸部材を回転させるため、前記第１回転方向当接部と前記第２回転方向当接部とを適切に当接させて回転方向原点位置を設定することができる。
【０００８】
なお、軸部材の回転方向において第１回転方向当接部と第２回転方向当接部とが同じ位置にある状態で軸方向原点設定工程を実行すると、第１軸方向当接部と第２軸方向当接部とが当接する前に、第１回転方向当接部と第２回転方向当接部とが前記軸方向に当接してしまい、その結果、誤った位置で前記軸方向原点位置が設定されることが考えられる。このような不都合は、次のような方法により解決される。
【０００９】
すなわち、上記の原点設定方法において、前記軸方向原点設定工程は、前記第１軸方向当接部と前記第２軸方向当接部とが接近するように、前記軸部材を前記軸方向に移動させて当該軸部材が停止した位置を第１仮原点位置として取得する第１仮原点設定工程と、前記第１仮原点設定工程の後、前記軸部材を所定角度だけ回転させ、前記第１軸方向当接部と前記第２軸方向当接部とが接近するように、前記軸部材を前記軸方向に移動させて、当該軸部材が停止した位置を第２仮原点位置として取得する第２仮原点設定工程と、前記第１仮原点位置および前記第２仮原点位置のうち、予め定められている設定条件に基づき何れか一方の仮原点位置を軸方向原点位置として設定する本原点設定工程とを含む。
【００１０】
この方法によれば、回転角度が互いに異なる位置で一旦仮原点位置をそれぞれ取得しておき、予め定められている設定条件に照らし合わせて仮原点位置のうち何れが軸方向原点位置に該当するのかを判断するので、本来の軸方向原点位置とは異なる位置が誤って軸方向原点位置として設定されることを回避することが可能となる。
【００１１】
なお、この本来の軸方向原点位置とは異なる位置が誤って軸方向原点位置として設定されることを回避するためには、次のような方法を適用することも考えられる。
【００１２】
すなわち、前記軸方向原点設定工程では、前記第１軸方向当接部と前記第２軸方向当接部とが接近するように、前記軸部材を前記軸方向に移動させて当該軸部材が停止した位置を仮原点位置として取得する処理を、前記軸部材を所定角度だけ回転させながら複数回実行し、連続して取得した仮原点位置のうち、予め設定された複数の数だけ仮原点位置が同一となったときに、当該同一となる仮原点位置を軸方向原点位置として設定する。
【００１３】
要するに、第１回転方向当接部と第２回転方向当接部とが軸方向に当接し得る範囲（軸部材の回転方向における範囲）が限られている構造では、上記のように複数の位置で仮原点位置を取得して同一の位置となるものの数を調べることで、本来の軸方向原点位置を正確に特定する事が可能となる。よって、本来の軸方向原点位置とは異なる位置が誤って軸方向原点位置として設定されることを回避することが可能となる。
【００１４】
一方、本発明のロボットは、ベース部材と、このベース部材に対して軸方向の移動および軸心回りの回転を行う軸部材とを備えたロボットであって、前記軸部材の軸方向の移動に伴い互いに前記軸方向に当接可能なように、前記軸部材に備えられる第１軸方向当接部および前記ベース部材に備えられる第２軸方向当接部と、前記軸部材が前記軸方向の特定位置に配置された状態において当該軸部材が回転することにより、当該回転方向に互いに当接可能なように、前記軸部材に備えられる第１回転方向当接部および前記ベース部材に備えられる第２回転方向当接部と、前記第１軸方向当接部と前記第２軸方向当接部とが前記軸方向に当接する位置を基準として予め定められた前記特定位置を記憶する記憶手段と、
前記軸部材の前記軸方向の移動および回転を制御する制御手段と、を備え、前記制御手段は、前記軸部材を移動させ、前記第１軸方向当接部と前記第２軸方向当接部とを当接させることにより前記軸方向原点位置を設定する軸方向原点設定処理と、この軸方向原点設定処理において設定した軸方向原点位置に基づき、前記軸部材を前記特定位置に配置する軸移動処理と、前記特定位置に配置した前記軸部材を回転させて前記第１回転方向当接部と前記第２回転方向当接部とを当接させることにより、当該軸部材の回転方向原点位置を設定する回転方向原点設定処理と、を実行するものである。
【００１５】
この構成によれば、電源投入時などに、上述した原点設定方法に従って、軸部材の軸方向および回転方向の原点設定を自動的に実行することが可能となる。
【００１６】
このロボットにおいて、前記軸方向原点設定処理は、前記第１軸方向当接部と前記第２軸方向当接部とが接近するように、前記軸部材を前記軸方向に移動させて当該軸部材が停止した位置を第１仮原点位置として取得する第１仮原点設定処理と、前記第１仮原点設定処理の後、前記軸部材を所定の所定角度だけ回転させ、前記第１軸方向当接部と前記第２軸方向当接部とが接近するように、前記軸部材を前記軸方向に移動させて当該軸部材が停止した位置を第２仮原点位置として取得する第２仮原点設定処理と、前記第１仮原点位置および前記第２仮原点位置のうち、予め定められている設定条件に基づき何れか一方の仮原点位置を軸方向原点位置として設定する本原点設定処理と、を含むものであるのが好適である。
【００１７】
また、前記軸方向原点設定処理は、前記軸方向原点設定処理は、前記第１軸方向当接部と前記第２軸方向当接部とが接近するように、前記軸部材を前記軸方向に移動させて当該軸部材が停止した位置を仮原点位置として取得する処理を、前記軸部材を所定角度だけ回転させながら複数回実行し、連続して取得した仮原点位置のうち、予め設定された複数の数だけ仮原点位置が同一となったときに、当該同一となる仮原点位置を軸方向原点位置として設定するものであってもよい。
【００１８】
これらの構成によれば、軸方向原点設定処理の際に、第１回転方向当接部と第２回転方向当接部とが前記軸方向に当接し、その結果、誤った位置で前記軸方向原点位置が設定されるという不都合を回避することが可能となる。
【００１９】
なお、上記ロボットにおいて、前記軸部材は、前記第１軸方向当接部と前記第１回転方向当接部とが一体に備えられた鍔状の軸側当接部材を有するものであるのが好適である。
【００２０】
この構成によれば、第１軸方向当接部と前記第１回転方向当接部とが共通の軸側当接部材に設けられているので、軸部材の構造の簡略化および低廉化に寄与する。
【００２１】
また、ベース部材は、前記第２軸方向当接部と前記第２回転方向当接部とが一体に備えられたベース側当接部材を有するものであるのが好適である。
【００２２】
この構成によれば、第２軸方向当接部と前記第２回転方向当接部とが共通のベース側当接部材に設けられているので、ベース部材の構造の簡略化および低廉化に寄与する。
【００２３】
また、上記ロボットにおいて、前記軸部材は、第１端部と第２端部とを有し、前記第１軸方向当接部および前記第２軸方向当接部は、前記ベース部材のうち、前記第１端部の側に設けられ、前記第１回転方向当接部および前記第２回転方向当接部は、前記ベース部材のうち、前記第２端部の側に設けられているものであってもよい。
【００２４】
この構成によれば、軸方向原点設定処理の際に、第１回転方向当接部と第２回転方向当接部とが前記軸方向に当接することが構造的に無くなるため、当該軸方向原点設定処理の迅速化に寄与する。
【００２５】
また、上記ロボットにおいて、第１回転方向当接部および前記第２回転方向当接部のうち一方は、これら回転方向当接部同士が前記軸方向に互いに当接したときに弾性的に後退するものであってもよい。
【００２６】
この構成によれば、軸方向原点設定処理の際に、第１回転方向当接部と第２回転方向当接部とが前記軸方向に当接したとしても、その一方が当該当接に伴い後退することで、第１軸方向当接部と第２軸方向当接部とが確実に当接する。そのため、第１回転方向当接部と第２回転方向当接部とが前記軸方向に当接することにより、誤った位置で軸方向原点位置が設定されることを構造的に回避することが可能となる。しかも、第１回転方向当接部と第２回転方向当接部とが回転方向にずれた位置では、後退可能な回転方向当接部が弾性復帰することで本来の位置が維持される。そのため、軸部材の軸方向および回転方向の原点設定処理をより迅速に行うことが可能となる。
【発明の効果】
【００２７】
以上説明したように、本発明によれば、専用のセンサを用いることなく良好に軸部材の原点位置設定を行うことができる。
【図面の簡単な説明】
【００２８】
【図１】本発明の第１の実施形態に係るスカラ型ロボットを示す側面図である。
【図２】アーム（第２リンク）の先端部分を示す斜視図である。
【図３】スカラ型ロボットの制御系を示すブロック図である。
【図４】コントローラによる作業軸の原点設定制御を説明するフローチャートである。
【図５】（ａ）は、軸側ストッパの突起部がアーム側ストッパの下方に位置する状態、（ｂ）は、軸側ストッパの突起部がアーム側ストッパの下面に当接した状態、（ｃ）は、作業軸が軸方向原点位置に配置された状態（アーム側ストッパの下面に軸側ストッパの上面が当接した状態）それぞれ示す模式である。
【図６】コントローラによる作業軸の原点設定制御の第１変形例を説明するフローチャートである。
【図７】コントローラによる作業軸の原点設定制御の第２変形例を説明するフローチャートである。
【図８】コントローラによる作業軸の原点設定制御の第２変形例を説明するフローチャート（図７の続き）である。
【図９】本発明の第２の実施形態に係るスカラ型ロボットのアーム（第２リンク）を示す模式図である。
【図１０】コントローラによる作業軸の原点設定制御を説明するフローチャートである。
【図１１】（ａ）は、第１アーム側ストッパの下面に対して第１軸側ストッパの上面が当接した状態、（ｂ）は、第２軸側ストッパの突出部が第２アーム側ストッパの上面に当接した状態をそれぞれ示す模式である。
【図１２】本発明の第３の実施形態に係るスカラ型ロボットのアーム（第２リンク）を示す模式図である。
【図１３】コントローラによる作業軸の原点設定制御を説明するフローチャートである。
【図１４】（ａ）は、アーム側ストッパの下面に対して軸側ストッパの突起部が当接した状態、（ｂ）は、作業軸の回転に伴い軸側ストッパの突起部がアーム側ストッパの位置から外側に逃げた状態をそれぞれ示す模式図である。
【図１５】第３の実施形態に係るスカラ型ロボットの変形例を示す模式図である。
【発明を実施するための形態】
【００２９】
以下、添付図面を参照しながら本発明の好ましい実施の一形態について詳述する。
【００３０】
（  第１の実施形態  ）
図１は、本発明の第１の実施形態に係るスカラ型ロボットを側面図で概略的に示している。同図に示すスカラ型ロボット１Ａ（以下、ロボット１Ａと略す）は、基台上に設置される円柱状のアーム支持台２と、このアーム支持台２に連結されるアーム３と、このアーム３の先端部に支持される作業軸４（本発明の軸部材に相当する）とを有する。なお、図１中符号５は、後述するモータ１２、２０及び２２等の電力や制御信号送信用のケーブル等が収容される筒状案内部材であり、アーム支持台２とアーム３の第２リンク３ｂとに亘って接続されている。
【００３１】
アーム３は、前記アーム支持台２に支持されて水平方向に延びる第１リンク３ａと、この第１リンク３ａの先端に支持されて水平方向に延びる第２リンク３ｂとから構成される。
【００３２】
第１リンク３ａは、アーム支持台２の上部に垂直軸周りに回転（旋回）可能に支持されている。この第１リンク３ａは、図外の減速機構を介してアーム支持台２の内部に配置される第１アームモータ１０に連結されており、この第１アームモータ１０により回転駆動される。
【００３３】
また、第２リンク３ｂは、第１リンク３ａの先端上部に垂直軸周りに回転（旋回）可能に支持されている。この第２リンク３ｂは、図外の減速機構を介して当該第２リンク３ｂ上に搭載される第２アームモータ１２に連結されており、この第２アームモータ１２により回転駆動される。
【００３４】
前記作業軸４は、スプライン軸である。作業軸４は、第２リンク３ｂ（本発明のベース部材に相当する）の先端部に、当該第２リンク３ｂを上下方向に貫通する状態で、当該第２リンク３ｂに対して上下方向（軸方向）の移動及び軸心回りの回転が可能となるように支持され、Ｒ軸モータ２０およびＺ軸モータ２２で駆動されるようになっている。
【００３５】
より詳しくは、第２リンク３ｂの先端には、スプラインナット（図示省略）が内嵌されたプーリ１４が回転自在に支持されている。また、第２リンク３ｂにおける前記プーリ１４の近傍位置には、上段プーリ１６ａ及び下段プーリ１６ｂを一体に備えた中継プーリ１６が回転可能に支持されている。そして、第２リンク３ｂにＲ軸モータ２０が搭載され、このＲ軸モータ２０の出力軸に固定されるプーリ１８と前記中継プーリ１６の下段プーリ１６ｂとに亘って伝動ベルト１９が装着されるとともに、前記中継プーリ１６の上段プーリ１６ａと前記プーリ１４とに亘って伝動ベルト１７が装着されている。この構成により、作業軸４がＲ軸モータ２０によって回転駆動される。
【００３６】
また、第２リンク３ｂのうち、作業軸４の側方位置には、上下方向に延び、かつ第２リンク３ｂに回転自在に支持されるボールねじ軸２４が設けられている。このボールねじ軸２４にはナット部材２６が螺合装着されており、このナット部材２６が、作業軸４の上端を回転自在に保持するヘッドホルダ２８に組み付けられている。そして、第２リンク３ｂにＺ軸モータ２２が搭載され、このＺ軸モータ２２の出力軸に固定される図外のプーリとボールねじ軸４０の下端部に固定される図外のプーリとに亘って伝動ベルト２３が装着されている。すなわち、Ｚ軸モータ２２により伝動ベルト２３等を介してボールねじ軸２４が回転駆動されると、このボールねじ軸２４の回転に伴い、作業軸４がヘッドホルダ２８と共に第２リンク３ｂ（スプラインナット）に対して上下方向に移動する。
【００３７】
前記作業軸４には、鍔状の軸側ストッパ３０（本発明の軸側当接部材に相当する）が固定され、第２リンク３ｂの下面のうち、作業軸４の近傍位置には、アーム側ストッパ３４（本発明のベース側当接部材に相当する）が固定されている。これら軸側ストッパ３０およびアーム側ストッパ３４は、ロボット１Ａの電源投入時等に、第２リンク３ｂ（アーム３）に対して作業軸４の軸方向（上下方向）および回転方向の原点位置を設定するための部材である。
【００３８】
図１及び図２に示すように、軸側ストッパ３０は、上下両面が平坦な円環状の部材であり、作業軸４のうち、その先端（下端）近傍の位置に固定されている。この軸側ストッパ３０は、その上面３０ａ（本発明の第１軸方向当接部に相当する）であってその径方向外側寄りの位置に、ほぼ円柱状の突起部３０ｂ（本発明の第１回転方向当接部に相当する）を備えている。当例では、軸側ストッパ３０の上面３０ａにボルトが螺合挿入されることにより、そのボルト頭により前記突起部３０ｂが形成されている。
【００３９】
一方、アーム側ストッパ３４は、作業軸４の外周面に沿うように略扇型に形成されたブロック状の部材である。このアーム側ストッパ３４は、軸側ストッパ３０の上面３０ａが当接可能な平坦な下面３４ａ（本発明の第２軸方向当接部に相当する）と、作業軸４の径方向に延びる垂直な側面であって、作業軸４の回転に伴い、軸側ストッパ３０の突起部３０ｂが当接可能な側面３４ｂ（本発明の第２回転方向当接部に相当する）とを有している。
【００４０】
すなわち、このロボット１Ａでは、アーム側ストッパ３４の下面３４ａに対して軸側ストッパ３０の上面３０ａが当接する位置が作業軸４の軸方向原点位置とされ、また、アーム側ストッパ３４の側面３４ｂに対して軸側ストッパ３０の突起部３０ｂが当接する位置が作業軸４の回転方向原点位置とされている。
【００４１】
アーム側ストッパ３４は、上記の通り略扇型であるが、その中心角θは、軸側ストッパ３０の突起部３０ｂをアーム側ストッパ３４の下面３４ａに当接させた状態から作業軸４を１８０°回転させると、常に、突起部３０ｂがアーム側ストッパ３４の外側（作業軸４の回転方向外側）に逃げるように設定されている。当例では、アーム側ストッパ３４の中心角θは、ほぼ３０°程度に設定されている。
【００４２】
なお、作業軸４のうち、軸側ストッパ３０よりも先端側は作業用機器の装着領域であり、この領域には、例えばロボットアーム等の作業用機器が固定される。
【００４３】
前記ロボット１Ａは、図３に示すようなアームコントローラ５０を備えている。アームコントローラ５０（以下、コントローラ５０と略す）は、作業軸４を含むアーム３全体の動作を統括的に制御するものである。このコントローラ５０は、周知のＣＰＵ、ＲＯＭ、ＲＡＭ等から構成されており、その機能構成として、主制御部５２、記憶部５４およびモータドライバ５６等を含む。
【００４４】
記憶部５４には、ロボット１Ａ全体を制御するためのプログラムやデータが記憶されており、主制御部５２は、前記プログラム等に基づき、モータドライバ５６に制御信号を出力することで、当該モータドライバ５６を介して前記各モータ１１、１２、２０及び２２を制御する。各モータ１１、１２、２０、２２にはそれぞれレゾルバ１１ａ、１２ａ、２０ａ、２２ａが備えられており、各レゾルバ１１ａ、１２ａ、２０ａ、２２ａにより検出される回転角度情報が主制御部５２にフィードバックされる。当実施形態では、主制御部５２およびモータドライバ５６が本発明の制御手段に相当し、記憶部５４が本発明の記憶手段に相当する。
【００４５】
なお、このロボット１Ａには、作業軸４の原点設定のための専用のセンサ類は備えられておらず、電源投入時等などには、記憶部５４に記憶されているプログラム等に従い、主制御部５２の制御に基づき作業軸４の原点位置設定が行われる。
【００４６】
以下、このコントローラ５０による作業軸４の軸方向および回転方向の原点位置設定制御について、図４のフローチャートに従って説明する。
【００４７】
このフローチャートに示す制御は、ロボット１Ａの電源投入によりスタートする。この制御がスタートすると、アームコントローラ５０は、作業軸４を、その回転角度位置を保持した状態で、自然に停止する位置まで上昇させる（ステップＳ１、Ｓ３）。詳しくは、作業軸４の軸側ストッパ３０と第２リンク３ｂ（アーム３）のアーム側ストッパ３４とが上下方向に突き当たって作業軸４が停止する位置まで作業軸４を上昇させる。この場合、コントローラ５０（主制御部５２）は、レゾルバ２２ａから入力される回転角度情報の変化量から作業軸４が停止したか否かを検知する。つまり、上記のようにして作業軸４の上昇が停止すると、これに伴いレゾルバ２２ａから入力される回転角度情報の変化量がほぼ「０」となるため、これにより作業軸４が停止したことを検知することが可能となる。この場合、モータドライバからＺ軸モータ２２に供給される電流値の変化に基づき作業軸４が停止したか否かを検知するようにしてもよい。
【００４８】
作業軸４が停止したと判断すると、コントローラ５０は、電源投入時を基準としてレゾルバ２２ａ、２２ｂから入力される回転角度情報に基づき、上下方向（軸方向）における作業軸４の停止位置を作業軸４の第１仮軸方向原点位置（Ｚ１）として取得（記憶）し、このときの作業軸４の回転角度位置を作業軸４の第１回転角度位置（Ｒ１）として取得する（ステップＳ５）。
【００４９】
次に、コントローラ５０は、作業軸４を予め記憶された所定量（例えば１０ｍｍ）だけ下降させ、さらに作業軸４を１８０°だけ特定方向（当例では下方から見て反時計回り）に回転させた後、作業軸４を上昇させる（ステップＳ７〜Ｓ１１）。そして、ステップＳ３の処理と同様に、作業軸４が停止したか否かを判別する（ステップＳ１３）。
【００５０】
作業軸４が停止したと判断すると、コントローラ５０は、上下方向の当該停止位置を作業軸４の第２仮軸方向原点位置（Ｚ２）として取得するとともに、このときの作業軸４の回転角度位置を作業軸４の第２回転角度位置（Ｒ２）として取得する（ステップＳ１５）。
【００５１】
次に、コントローラ５０は、ステップＳ５で取得した第１仮軸方向原点位置（Ｚ１）と第２仮軸方向原点位置（Ｚ２）とを比較する。ここで、Ｚ１＞Ｚ２の場合、つまり、第２仮軸方向原点位置（Ｚ２）よりも第１仮軸方向原点位置（Ｚ１）の方が高い場合には、コントローラ５０は、作業軸４を若干下降させて当該作業軸４を回転させることにより、作業軸４を前記第１仮回転方向原点位置（Ｒ１）に戻す（ステップＳ１９）。
【００５２】
その後、コントローラ５０は、第１仮軸方向原点位置（Ｚ１）を軸方向原点位置（Ｚ）として設定するとともに、この第１仮軸方向原点位置（Ｚ１）を基準にして所定の回転方向原点設定高さ位置、すなわち、作業軸４の回転に伴い、軸側ストッパ３０の突起部３０ｂをアーム側ストッパ３４の側面３４ｂに当接させることが可能な高さ位置に移動させる（ステップＳ２１）。なお、上記記憶部５４には、本来の軸方向原点位置を基準として定められた回転方向原点設定高さ位置（本発明の設定位置に相当する）を示すデータが記憶されており、ステップＳ２１の処理では、コントローラ５０は、今回設定した軸方向原点位置（Ｚ）、つまり、第１仮軸方向原点位置（Ｚ１）を基準として前記データに基づき作業軸４を移動させる。
【００５３】
そして、コントローラ５０は、さらに作業軸４の回転が停止するまで、つまり、軸側ストッパ３０の突起部３０ｂがアーム側ストッパ３４の側面３４ｂに突き当たって作業軸４が停止する位置まで当該作業軸４を回転させ、作業軸４が停止したと判断すると、回転方向における当該作業軸４の停止位置を作業軸４の回転方向原点位置（Ｒ）として設定する（ステップＳ２３〜Ｓ２７）。これにより本フローチャートを終了する。なお、ステップＳ２５の処理では、ステップＳ３の処理と同様に、コントローラ５０は、レゾルバ２０ａから入力される回転角度情報の変化量から作業軸４が停止したか否かを検知する。
【００５４】
一方、ステップＳ１７の処理で、Ｚ１＜Ｚ２の場合、つまり、第１仮軸方向原点位置（Ｚ１）よりも第２仮軸方向原点位置（Ｚ２）の方が高いと判断した場合には、コントローラ５０は、第２仮軸方向原点位置（Ｚ２）を軸方向原点位置（Ｚ）として設定するとともに、この第２仮軸方向原点位置（Ｚ２）を基準として所定の回転方向原点設定高さ位置に作業軸４を移動させた後（ステップＳ２９）、ステップＳ２３に移行し、上記同様ステップＳ２３〜Ｓ２７の処理を実行することにより、作業軸４の回転方向原点を設定する。
【００５５】
また、ステップＳ１７の処理で、Ｚ１＝Ｚ２の場合、つまり、第１仮軸方向原点位置（Ｚ１）と第２仮軸方向原点位置（Ｚ２）の高さが等しいと判断した場合には、コントローラ５０は、処理をステップＳ２１に移行し、上記同様ステップ２１〜Ｓ２７の処理を実行することにより、作業軸４の回転方向原点を設定する。
【００５６】
すなわち、このロボット１Ａでは、上記の通り、アーム側ストッパ３４の下面３４ａに対して軸側ストッパ３０の上面３０ａが当接する位置が作業軸４の軸方向原点位置（Ｚ）である。しかし、軸側ストッパ３０に突起部３０ｂが設けられる関係上、電源投入時に作業軸４を単に軸方向に移動させるだけでは、図５（ａ）に示すように、アーム側ストッパ３４の真下に突起部３０ｂがある場合には、同図（ｂ）に示すように、アーム側ストッパ３４の下面３４ａに軸側ストッパ３０の突起部３０ｂが当接してしまい、誤った位置で軸方向原点位置（Ｚ）が設定されることが考えられる。そこで、当例では、ステップＳ５、Ｓ１５において、回転角度位置が互いに１８０°異なる位置で作業軸４を上昇させ、その停止位置を第１仮軸方向原点位置（Ｚ１）および第２仮軸方向原点位置（Ｚ２）として取得し、これらの位置を比較することにより何れの位置が作業軸４の真の軸方向原点位置かを判別している。具体的には、軸側ストッパ３０の突起部３０ｂがアーム側ストッパ３４（下面３４ａ）に当接している場合には、この突起部３０ｂの高さ分だけ作業軸４の位置が本来の軸方向原点位置（図５（ｃ））よりも低くなる。従って、ステップＳ１７の処理では、第１仮軸方向原点位置（Ｚ１）および第２仮軸方向原点位置（Ｚ２）のうち、高い方を軸方向原点位置（Ｚ）として設定している。但し、回転角度位置が互いに１８０°異なる位置であっても、共に、軸側ストッパ３０の上面３０ａがアーム側ストッパ３４の下面３４ａに当接する場合があり得るので、この場合には、第１仮軸方向原点位置（Ｚ１）を回転軸方向原点位置（Ｚ）として設定している。
【００５７】
以上のように、このロボット１Ａでは、アーム側ストッパ３４の下面３４ａに対して軸側ストッパ３０の上面３０ａが当接する位置が作業軸４の軸方向原点位置（Ｚ）とされ、また、アーム側ストッパ３４の側面３４ｂに対して軸側ストッパ３０の突起部３０ｂが当接する位置が作業軸４の回転方向原点位置（Ｒ）とされている。そして、電源投入時には、上記の通り、作業軸４を上下方向（軸方向）に移動させて、前記軸側ストッパ３０の上面３０ａとアーム側ストッパ３４の下面３４ａとを当接させることで作業軸４の軸方向原点位置（Ｚ）を設定し、さらにこの軸方向原点位置（Ｚ）を基準に回転方向原点設定高さ位置に移動させた上で、作業軸４を回転させてアーム側ストッパ３４（側面３４ｂ）に軸側ストッパ３０の突起部３０ｂを当接させることにより、作業軸４の回転方向原点位置（Ｒ）を設定する。そのため、専用のセンサを用いることなく、モータ２０ａ、２２ａに設けられるレゾルバ２０ａ、２２ａからの回転角度情報のみで、作業軸４の軸方向および回転方向の原点位置を適切に設定することができる。
【００５８】
特に、このロボット１Ａでは、軸側ストッパ３０の上面３０ａに突起部３０ｂが突設されている関係で、電源投入時に作業軸４を軸方向に移動させるだけでは、アーム側ストッパ３４の下面３４ａに軸側ストッパ３０の突起部３０ｂが当接する場合がある。しかし、このロボット１Ａによれば、上記のように、アーム側ストッパ３４の下面３４ａに対して軸側ストッパ３０の突起部３０ｂを当接させた状態から作業軸４を１８０°回転させると、常に、突起部３０ｂがアーム側ストッパ３４の外側（回転方向外側）に逃げるように当該アーム側ストッパ３４等が形成されている。その上で、回転角度位置が互いに１８０°異なる位置で作業軸４を上昇させて、その停止位置を第１仮軸方向原点位置（Ｚ１）および第２仮軸方向原点位置（Ｚ２）として取得し、これらの位置を比較することにより軸方向原点位置を設定している。そのため、上記のような軸側ストッパ３０の構造を備えながらも、作業軸４の軸方向原点位置（Ｚ）や回転方向原点位置（Ｒ）を正確に設定することができる。
【００５９】
なお、この実施形態においては、上記の通り、本来の軸方向原点位置を基準として定められた回転方向原点設定高さ位置を示すデータが予め記憶部５４に記憶されているが、この回転方向原点設定高さ位置を定め、記憶部５４に記憶させる工程が本発明の準備工程に相当する。また、図４のステップＳ１〜Ｓ２１、Ｓ２９の処理が本発明の軸方向原点設定工程（軸方向原点設定処理）に相当し、ステップＳ２１、Ｓ２９の処理が本発明の軸移動工程（軸移動処理）に相当し、ステップＳ２５〜Ｓ２７が回転方向原点設定工程（回転方向原点設定処理）に相当する。また、ステップＳ１〜Ｓ２１、Ｓ２９の処理のうち、ステップＳ１〜Ｓ５が本発明の第１仮原点設定工程（第１仮原点設定処理）に相当し、ステップＳ７〜Ｓ１５が本発明の第２仮原点設定工程（第２仮原点設定処理）に相当し、ステップＳ１７〜Ｓ２１、Ｓ２９が本発明の本原点設定工程（本原点設定処理）に相当する。そして、ステップＳ１７、Ｓ２１及びＳ２９の処理において軸方向原点位置を設定する際の条件が本発明の設定条件に相当する。
【００６０】
＜  第１変形例  ＞
次に、上記コントローラ５０による、作業軸４の軸方向および回転方向の原点位置設定制御の第１変形例について、図６のフローチャートに従って説明する。
【００６１】
なお、この制御の前提として、アーム側ストッパ３４の前記中心角θは、軸側ストッパ３０の突起部３０ｂをアーム側ストッパ３４の下面３４ａに当接させた状態から作業軸４を３０°回転させると、常に、突起部３０ｂがアーム側ストッパ３４の外側（回転方向外側）に逃げ得るように設定されている。
【００６２】
図６に示す制御では、まず、図４のフローチャートのステップＳ１〜Ｓ１５の処理と同等のステップＳ３１〜４５の処理が実行され、これによりコントローラ５０は、第１仮軸方向原点位置（Ｚ１）と第２仮軸方向原点位置（Ｚ２）とを取得する。但し、ステップＳ３９（図４のステップＳ９の処理に相当）の処理では、コントローラ５０は作業軸４を３０°だけ回転させる。従って、図４の例とは異なり、第１仮軸方向原点位置（Ｚ１）が取得されたときの作業軸４の回転角度と、第２仮軸方向原点位置（Ｚ２）が取得されたときの作業軸４の回転角度の差は３０°である。
【００６３】
作業軸４の第２仮軸方向原点位置（Ｚ２）およびこのときの作業軸４の回転角度位置（Ｒ２）が取得されると、コントローラ５０は、Ｚ１＝Ｚ２か否かを判別する（ステップＳ４７）。ここでＹＥＳと判断した場合には、図４のフローチャートのステップＳ２１〜Ｓ２７の処理と同等のステップＳ５１〜Ｓ５７の処理を実行する。すなわち、コントローラ５０は、第１仮軸方向原点位置（Ｚ１）を軸方向原点位置（Ｚ）として設定するとともに、この第１仮軸方向原点位置（Ｚ１）を基準にして、記憶部５４に記憶されている回転方向原点設定高さ位置に作業軸４を移動させる（ステップＳ５１）。そして、軸側ストッパ３０の突起部３０ｂがアーム側ストッパ３４の側面３４ｂに突き当たって作業軸４が停止する位置まで当該作業軸４を回転させ、作業軸４の停止位置を回転方向原点位置（Ｒ）として設定する（ステップＳ５３〜Ｓ５７）。これにより、本フローチャートを終了する。
【００６４】
これに対して、ステップＳ４７の処理でＮＯと判断した場合には、コントローラ５０は、現在の第１仮軸方向原点位置（Ｚ１）を破棄し、現在の第２仮軸方向原点位置（Ｚ２）を第１仮軸方向原点位置（Ｚ１）に置き換えた後（ステップＳ５９）、処理をステップＳ３７に移行する。そして、ステップＳ３７〜Ｓ４７の処理を繰り返し、最終的にステップＳ４７でＹＥＳと判断すると、ステップＳ５１の処理に移行する。
【００６５】
すなわち、この第１変形例の制御では、作業軸４の回転角度位置を３０°ずつずらしながら軸方向原点位置を取得し、先に取得した作業軸４の仮軸方向原点位置を第１仮軸方向原点位置（Ｚ１）、その後に取得した作業軸４の仮軸方向原点位置を第２仮軸方向原点位置（Ｚ２）として、第１仮軸方向原点位置（Ｚ１）と第２仮軸方向原点位置（Ｚ２）とが同一となった場合に、第１仮軸方向原点位置（Ｚ１）を作業軸４の軸方向原点位置（Ｚ）として設定する。これは、上記の通り、アーム側ストッパ３４の下面３４ａに対して軸側ストッパ３０の突起部３０ｂが当接した状態から作業軸４を３０°回転させると、常に、突起部３０ｂがアーム側ストッパ３４の外側（回転方向外側）に逃げ得るようにアーム側ストッパ３４が形成されており、連続して取得した第１、第２の仮軸方向原点位置（Ｚ１、Ｚ２）が同一になる場合とは、要するに、何れの仮軸方向原点位置（Ｚ１、Ｚ２）もアーム側ストッパ３４の下面３４ａに対して軸側ストッパ３０の上面３０ａが当接した状態を意味する。つまり、作業軸４が本来の軸方向原点位置に配置された状態にあることを意味する。よって、上記のように第１仮軸方向原点位置（Ｚ１）と第２仮軸方向原点位置（Ｚ２）とが同一となったときに、第１仮軸方向原点位置（Ｚ１）を作業軸４の軸方向原点位置（Ｚ）として設定することで、軸方向原点位置（Ｚ）を正確に設定することができる。
【００６６】
なお、図６の例では、ステップＳ５１の処理において、第１仮軸方向原点位置（Ｚ１）を軸方向原点位置（Ｚ）に設定しているが、勿論、第２仮軸方向原点位置（Ｚ２）を軸方向原点位置（Ｚ）に設定してもよい。
【００６７】
なお、この実施形態においては、図６のステップＳ３１〜Ｓ５１、Ｓ５９の処理が本発明の軸方向原点設定工程（軸方向原点設定処理）に相当し、ステップＳ５１の処理が本発明の軸移動工程（軸移動処理）に相当し、ステップＳ５３〜Ｓ５７の処理が回転方向原点設定工程（回転方向原点設定処理）に相当する。
【００６８】
＜  第２変形例  ＞
次に、上記コントローラ５０による、作業軸４の軸方向および回転方向の原点位置設定制御の第２変形例について、図７、図８のフローチャートに従って説明する。
【００６９】
図７、図８に示す制御では、まず、コントローラ５０は、カウンタｎに「１」をセットし（ステップＳ６１）、その後、ステップＳ６３〜Ｓ７７の処理を実行する。このステップＳ６３〜Ｓ７７の処理は、図６のフローチャートのステップＳ３１〜Ｓ４５の処理と実質的に同一であり、これにより、コントローラ５０は、第ｎ仮軸方向原点位置（Ｚｎ）および第ｎ＋１仮軸方向原点位置（Ｚ（ｎ＋１））と、回転角度位置Ｒｎ、Ｒ（ｎ＋１）を取得する。
【００７０】
次に、コントローラ５０は、Ｚｎ＝Ｚ（ｎ＋１）であるか否かを判別し（ステップＳ７９）、ここでＹＥＳと判断した場合には、ステップＳ８１〜Ｓ８７の処理を実行する。この処理は、図６のステップＳ５１〜Ｓ５７に対応する。すなわち、コントローラ５０は、第ｎmax仮軸方向原点位置（Ｚmax）を基準に、記憶部５４に記憶されている回転方向原点設定高さ位置に作業軸４を移動させる。そして、アーム側ストッパ３４の側面３４ｂに対して軸側ストッパ３０の突起部３０ｂが突き当たって作業軸４が停止する位置まで作業軸４を回転させ、作業軸４の停止位置を回転方向原点位置（Ｒ）として設定する。
【００７１】
これに対して、ステップＳ７９の処理でＮＯと判別した場合には、コントローラ５０は、ステップＳ８９〜Ｓ９７の処理を実行することにより、第（ｎ＋２）仮軸方向原点位置（Ｚ（ｎ＋２））をさらに取得する。ステップＳ８９〜Ｓ９７の処理は、上記ステップＳ６９〜Ｓ７７の処理と同等である。そして、既に取得している第ｎ仮軸方向原点位置（Ｚｎ）および第ｎ＋１仮軸方向原点位置（Ｚ（ｎ＋１））のうち、値の大きい方と、第（ｎ＋２）仮軸方向原点位置（Ｚ（ｎ＋２））とが同じか否かを判別し（ステップＳ９９）、ここで同じと判断した場合には、コントローラ５０は、処理をステップＳ８１に移行し、作業軸４の回転方向原点位置（Ｒ）を設定するための処理を実行する。
【００７２】
一方、ステップＳ９９の処理でＮＯと判断した場合には、コントローラ５０は、カウンタｎを「１」インクリメントした後（ステップＳ１００）、処理をステップＳ８９に移行し、ステップＳ８９〜Ｓ９９の処理を繰り返す。そして、最終的に、第ｎ仮軸方向原点位置（Ｚｎ）および第ｎ＋１仮軸方向原点位置（Ｚ（ｎ＋１））のうち、値の大きいものと、第（ｎ＋２）仮軸方向原点位置（Ｚ（ｎ＋２））とが同じになると、処理をステップＳ８１に移行し、作業軸４の回転方向原点位置を設定するための処理を実行する。
【００７３】
つまり、先に説明した図６の第１変形例では、作業軸４の回転角度位置を３０°ずつずらしながら互いに異なる回転角度位置で仮軸方向原点位置を取得し、連続して取得した仮軸方向原点位置が同一となったときに、先に取得した仮軸方向原点位置を軸方向原点位置（Ｒ）とするものである。これに対して、図７の第２変形例は、作業軸４の回転角度位置を３０°ずつずらしながら互いに異なる回転角度位置で仮軸方向原点位置を取得するが、連続して取得した３つの仮軸方向原点位置のうち２つが同一となったときに、後から取得した第ｎmax仮軸方向原点位置（Ｚmax）を軸方向原点位置（Ｒ）とするのである。
【００７４】
このような第２変形例の制御も、理屈は第１変形例の制御と同じであり、第１変形例の場合と同様に、軸方向原点位置（Ｚ）を正確に設定することができる。
【００７５】
なお、図７、図８の例では、ステップＳ８１の処理において、第ｎmax仮軸方向原点位置（Ｚmax）を軸方向原点位置（Ｚ）に設定しているが、勿論、先に取得した仮軸方向原点位置を軸方向原点位置（Ｚ）に設定するようにしてもよい。
【００７６】
なお、この実施形態においては、図７，図９のステップＳ６１〜Ｓ８１及びステップＳ８９〜Ｓ１００の処理が本発明の軸方向原点設定工程（軸方向原点設定処理）に相当し、ステップＳ８１の処理が本発明の軸移動工程（軸移動処理）に相当し、ステップＳ８３〜Ｓ８７の処理が回転方向原点設定工程（回転方向原点設定処理）に相当する。
【００７７】
（  第２の実施形態  ）
図９は、本発明の第２の実施形態に係るスカラ型ロボットのうち、アーム（第２リンク）の部分を模式図で示している。なお、第２の実施形態に係るスカラ型ロボット１Ｂ（以下、ロボット１Ｂと略す）のハード的な構成は、以下に説明する点を除き、基本的には第１の実施形態のロボット１Ａと同一である。
【００７８】
第２実施形態のロボット１Ｂは、作業軸４の下端（本発明の第１端部に相当する）近傍の位置に軸側ストッパ３０が固定され、これに対応するアーム側ストッパ３４が第２リンク３ｂの下面に固定される点で第１実施形態のロボット１Ａと共通する。しかし、第２実施形態のロボット１Ｂでは、さらに軸側ストッパ３０（第１軸側ストッパ３０という）とは別の鍔状の軸側ストッパ３１（第２軸側ストッパ３１という）が作業軸４の上端（本発明の第２端部に相当する）近傍の位置に固定され、これに対応するアーム側ストッパ３５（第２アーム側ストッパ３５という）が第２リンク３ｂの上面に固定さている。
【００７９】
第１軸側ストッパ３０（本発明の第１軸方向当接部に相当する）および第１アーム側ストッパ３４（本発明の第２軸方向当接部に相当する）は、第１軸側ストッパ３０に突起部３０ｂが設けられていない点を除き、第１の実施形態の軸側ストッパ３０及びアーム側ストッパ３４とほぼ同等である。一方、第２アーム側ストッパ３５（本発明の第２回転方向当接部に相当する）は、第２リンク３ｂの上面であって作業軸４の近傍位置に立設された軸状体である。また、第２軸側ストッパ３１（本発明の第１回転方向当接部に相当する）は、その下面のうち径方向外側寄りの位置に、作業軸４の回転に伴い前記第２アーム側ストッパ３５の側面に当接可能な突出部３１ａを備えている。
【００８０】
そして、このロボット１Ｂでは、第１軸側ストッパ３０の上面３０ａと第１アーム側ストッパ３４の下面３４ａとが当接する位置が作業軸４の軸方向原点位置とされ、第２軸側ストッパ３１の突出部３１ａが第２アーム側ストッパ３５の側面に当接する位置が、作業軸４の回転方向原点位置とされている。
【００８１】
次に、第２の実施形態のロボット１Ｂのコントローラ５０による作業軸４の軸方向および回転方向の原点位置設定制御について、図１０のフローチャートに従って説明する。
【００８２】
この制御がスタートすると、コントローラ５０は、作業軸４をその回転角度位置を保持した状態で、自然に停止する位置まで上昇させる（ステップＳ１０１、Ｓ１０３）。そして、作業軸４が停止すると、当該停止位置を作業軸４の軸方向原点位置（Ｚ）として設定する（ステップＳ１０５）。すなわち、第１軸側ストッパ３０には回転方向原点設定用の突起部は設けられておらず、作業軸４を上昇させると、図１１（ａ）に示すように、常に第１アーム側ストッパ３４の下面３４ａに対して第１軸側ストッパ３０の上面３０ａが当接する。従って、作業軸４の上記停止位置を直ちに軸方向原点位置（Ｚ）として設定することができる。
【００８３】
次に、コントローラ５０は、ステップＳ１０５で設定した軸方向原点位置（Ｚ）を基準として、主制御部５２に記憶されている回転方向原点設定高さ位置に向かって作業軸４の移動（下降）を開始させる（ステップＳ１０７）。そして、当該高さ位置に到達する前に作業軸４が停止したか否かを判別する（ステップＳ１０９）。
【００８４】
ここで、ＹＥＳと判断した場合には、コントローラ５０は、予め定められた回転角度だけ作業軸４を回転させた後、作業軸４をさらに下降させ（ステップＳ１１１）、作業軸４が回転方向原点設定高さ位置に到達したか否かを判別する（ステップＳ１１３）。すなわち、第２軸側ストッパ３１の突出部３１ａと第２アーム側ストッパ３５との位置関係によっては、図１１（ｂ）に示すように、第２アーム側ストッパ３５の上面に第２軸側ストッパ３１の突出部３１ａが当接し、作業軸４が原点設定高さ位置に配置されない場合がある。そこで、この場合（ステップＳ１０９でＹＥＳ）には、作業軸４を回転させ、第２アーム側ストッパ３５に対して第２軸側ストッパ３１の突出部３１ａを回転方向に逃がすようにしている。従って、ステップＳ１１１における作業軸４の回転角度は、第２アーム側ストッパ３５に当接した突出部３１ａを確実に逃がすことができる角度に設定されている。なお、コントローラ５０は、前記回転方向原点設定高さ位置と、レゾルバ２２ａから入力される回転角度情報の変化量とに基づきステップＳ１１３の判別を行う。
【００８５】
ステップＳ１１３で作業軸４が原点設定高さ位置に到達したと判別した場合には、コントローラ５０は、第２軸側ストッパ３１の突出部３１ａが第２アーム側ストッパ３５の側面に突き当たって作業軸４が停止する位置まで当該作業軸４を回転させ、当該停止位置を作業軸４の回転方向原点位置（Ｒ）として設定した後（ステップＳ１１５〜Ｓ１１９）、本フローチャートを終了する。
【００８６】
一方、ステップＳ１０９の処理でＮＯと判別した場合、すなわち、作業軸４が原点設定高さ位置に到達した場合には、コントローラ５０は、ステップＳ１１１、Ｓ１１３の処理をスキップしてステップＳ１１５の処理に移行する。これにより、作業軸４を回転させて回転方向原点位置（Ｒ）を設定する。
【００８７】
以上のような第２の実施形態のロボット１Ｂによれば、第１の実施形態のロボット１Ａと同様に、電源投入時の作業軸４の軸方向および回転方向の原点位置設定を、専用のセンサを用いること無く、適切に行うことが可能となる。特に、このロボット１Ｂの場合、作業軸４を上昇させると、常に第１アーム側ストッパ３４の下面３４ａに対して第１軸側ストッパ３０の上面３０ａが当接するので、作業軸４の軸方向原点位置（Ｚ）の設定を速やかに行うことができる。
【００８８】
なお、この実施形態においては、図１０のステップＳ１０１〜Ｓ１０７の処理が本発明の軸方向原点設定工程（軸方向原点設定処理）に相当し、ステップＳ１０７〜Ｓ１１３の処理が本発明の軸移動工程（軸移動処理）に相当し、ステップＳ１１５〜Ｓ１１９の処理が回転方向原点設定工程（回転方向原点設定処理）に相当する。
【００８９】
（  第３の実施形態  ）
図１２は、本発明の第３の実施形態に係るスカラ型ロボットのうち、アーム（第２リンク）の部分を模式図で示している。なお、第３の実施形態に係るスカラ型ロボット１Ｃ（以下、ロボット１Ｃと略す）のハード的な構成は、以下に説明する点を除き、基本的には第１の実施形態のロボット１Ａと同一である。
【００９０】
第３の実施形態のロボット１Ｃでは、軸側ストッパ３０において突起部３０ｂが弾性的に後退可能に構成されている。詳しくは、突起部３０ｂが軸側ストッパ３０の上面３０ａから上方に突出した突出位置と上面３０ａの下方に退避した退避位置とに亘って出没可能となるように支持された上で、圧縮コイルばね等の弾性部材によって突出位置に付勢されている。この点で、ロボット１Ｃは、第１の実施形態のロボット１Ａと構成が相違している。
【００９１】
次に、第３の実施形態のロボット１Ｃのコントローラ５０による作業軸４の軸方向および回転方向の原点位置設定制御について、図１３のフローチャートに従って説明する。
【００９２】
この制御がスタートすると、コントローラ５０は、作業軸４をその回転角度位置を保持した状態で、自然に停止する位置まで上昇させる（ステップＳ１２１、Ｓ１２３）。そして、作業軸４が停止すると、当該停止位置を作業軸４の軸方向原点位置（Ｚ）として設定する（ステップＳ１２５）。このロボット１Ｃでは、上記の通り、軸側ストッパ３０の突起部３０ｂが弾性的に後退可能であり、仮に突起部３０ｂがアーム側ストッパ３４の下方位置にあったとしても、図１４（ａ）に示すように、アーム側ストッパ３４の下面３４ａに当接するに伴い突起部３０ｂが退避位置に押し下げられる。よって、作業軸４を上昇させると、常にアーム側ストッパ３４の下面３４ａに対して軸側ストッパ３０の上面３０ａが当接することとなり、従って、作業軸４の上記停止位置を直ちに軸方向原点位置（Ｚ）として設定することができる。
【００９３】
次に、コントローラ５０は、ステップＳ１２５で設定した軸方向原点位置（Ｚ）を基準として、記憶部５４に記憶されている回転方向原点設定高さ位置へ作業軸４を移動させ、その後、アーム側ストッパ３４の側面に対して軸側ストッパ３０の突出部３１ａが突き当たって作業軸４が停止する位置まで当該作業軸４を回転させる。これにより、当該停止位置を作業軸４の回転方向原点位置（Ｒ）として設定する（ステップＳ１２７〜Ｓ１３３）。なお、このロボット１Ｃでは、図１４（ａ）に示すように突起部３０ｂがアーム側ストッパ３４の下面３４ａに当接して退避位置に押し下げられていれも、ステップＳ１２９の処理で作業軸４が回転してアーム側ストッパ３４の下面３４ａから回転方向に突起部３０ｂの位置がずれると、図１４（ｂ）に示すように、突起部３０ｂが退避位置から突出位置に弾性復帰する。従って、作業軸４を回転させることで、常に、アーム側ストッパ３４の側面３４ｂに対して軸側ストッパ３０の突起部３０ｂを当接させることができる。
【００９４】
以上のような第３の実施形態のロボット１Ｃについても、上述の通り、第１、第２の実施形態のロボット１Ａ、１Ｂと同様に、電源投入時の作業軸４の軸方向および回転方向の原点位置設定を、専用のセンサを用いること無く、適切に行うことが可能となる。
【００９５】
特に、この第３の実施形態のロボット１Ｃによれば、第１の実施形態のロボット１Ａのように、２つ以上の仮軸方向原点位置を取得して真の軸方向原点位置を特定したり、第２の実施形態のロボット１Ｂのように、作業軸４を回転方向原点設定高さ位置に移動させる際に、その途中で一旦作業軸４を回転させるといった処理が発生することがない。そのため、第１、第２の実施形態のロボット１Ａ、１Ｂと比べると、より短時間で作業軸４の軸方向および回転方向の原点位置設定を行うことが可能になるという利点がある。
【００９６】
なお、この実施形態においては、図１０のステップＳ１２１〜Ｓ１２５の処理が本発明の軸方向原点設定工程（軸方向原点設定処理）に相当し、ステップＳ１２７の処理が本発明の軸移動工程（軸移動処理）に相当し、ステップＳ１２９〜Ｓ１３３の処理が回転方向原点設定工程（回転方向原点設定処理）に相当する。
【００９７】
この第３実施形態については、その変形例として、図１５に示すような構成を採用することも可能である。同図に示す構成では、アーム側ストッパ３４側に出没可能な突起部３４ｃ（本発明の第２回転方向当接部に相当する）が設けられ、この突起部３４ｃが軸側ストッパ３０の側面（本発明の第１回転当接部に相当する）に当接するように構成されている。このような構成によっても、図１２の構成と同等の作用効果を享受することができる。
【００９８】
ところで、上述した第１〜第３の実施形態に係るスカラ型ロボット１Ａ〜１Ｃおよびこれらスカラ型ロボット１Ａ〜１Ｃによる作業軸４の原点設定制御（原点設定方法）は、本発明に係るロボットおよびその原点設定方法の好ましい実施形態の例示であって、スカラ型ロボット１Ａ〜１Ｃの具体的な構成や具体的な原点設定方法は、本発明の要旨を逸脱しない範囲で適宜変更可能である。
【００９９】
特に、軸側ストッパ３０、３１、アーム側ストッパ３４、３５および突起部３０ｂ等の具体的な形状や配置は、必ずしも上述した実施形態のものに限定されるものではなく、作業軸４の軸方向および回転方向の原点位置を設定する際に、第２リンク３ｂ（アーム３）に対する作業軸４の移動や回転を拘束できればよく適宜変更可能である。
【０１００】
また、各実施形態では、本発明をいわゆるスカラ型ロボットに適用した例について説明したが、本発明は、ベース部材に対して軸方向の移動および軸心回りの回転を行う作業軸（軸部材）を備えたロボットであれば、スカラ型ロボット以外のロボットについても勿論適用可能である。
【符号の説明】
【０１０１】
１Ａ、１Ｂ、１Ｃ  スカラ型ロボット
２  アーム支持体
３  アーム
３ａ  第１リンク
３ｂ  第２リンク
４  作業軸
３０  軸側ストッパ
３０ａ  上面
３０ｂ  突起部
３４  アーム側ストッパ
３４ａ  下面
３４ｂ  側面
５０  アームコントローラ
５２  主制御部
５４  記憶部
５６  モータドライバ
【図１】
2015077649.tif 000003
【図２】
2015077649.tif 000004
【図３】
2015077649.tif 000005
【図４】
2015077649.tif 000006
【図５】
2015077649.tif 000007
【図６】
2015077649.tif 000008
【図７】
2015077649.tif 000009
【図８】
2015077649.tif 000010
【図９】
2015077649.tif 000011
【図１０】
2015077649.tif 000012
【図１１】
2015077649.tif 000013
【図１２】
2015077649.tif 000014
【図１３】
2015077649.tif 000015
【図１４】
2015077649.tif 000016
【図１５】
2015077649.tif 000017