(57)【要約】【課題】複数の駆動部を備える多関節型のロボットにおいて特定の駆動部における故障を抑制し、ロボットの耐用年数の低下を招くおそれを低減することができるロボットシステムを提供する。【解決手段】ロボットシステム１は、多関節型のロボット２の各軸を駆動するためのモータおよび当該モータの出力を伝達するための歯車機構を有する複数の駆動部に対し、モータを駆動するための駆動指令を個別に出力する。そして、作業サイクル中に各駆動部に対して駆動指令が出力されたか否かを個別に判定し、作業サイクル内で駆動指令が出力されていないと判定された駆動部に対し、当該駆動部のモータを駆動させるための補助駆動指令を出力する。【選択図】図１
2014034093.tif 000002
【特許請求の範囲】
【請求項１】
互いに回転可能に連結された複数のアームを駆動することにより予め定められている作業サイクルを繰り返し実行可能な多関節型のロボットを制御するためのロボットシステムであって、
前記ロボットの各軸にそれぞれ設けられ、各軸を駆動するためのモータおよび前記モータの出力を出力軸側に連結されている前記アームに伝達する歯車機構を有する複数の駆動部と、
複数の前記駆動部に対し、当該駆動部の前記モータを駆動するための駆動指令を個別に出力する指令出力手段と、
前記作業サイクル中に複数の前記駆動部に対して前記駆動指令が出力されたか否かを個別に判定する判定手段と、
複数の前記駆動部のうち前記作業サイクル中に前記駆動指令が出力されていないと判定された前記駆動部に対し、当該駆動部の前記モータを駆動するための補助駆動指令を出力する補助指令出力手段と、
を備えることを特徴とするロボットシステム。
【請求項２】
前記作業サイクルには、前記アームを予め設定される教示点間で移動させる際、前記アームの移動軌跡を相対的に重視した作業動作と、前記アームの移動速度を相対的に重視した移動動作とが含まれ、
前記判定手段は、前記アームの移動が前記作業動作あるいは前記移動動作のいずれであるかをさらに判定し、
前記補助指令手段は、前記作業サイクル内の前記移動動作中に、前記歯車機構の歯の噛み合い位置を少なくとも１歯以上移動させる補助駆動指令を出力することを特徴とする請求項１記載のロボットシステム。
【請求項３】
前記判定手段は、前記作業サイクル中に複数の前記移動動作が含まれている場合、いずれが最も動作時間の長い前記移動動作であるかをさらに判定し、
前記補助指令手段は、前記判定手段により最も長いと判定された前記移動動作中に前記補助駆動指令を出力することを特徴とする請求項２記載のロボットシステム。
【請求項４】
前記判定手段は、作業対象となるワークを移送しているか否かをさらに判定し、
前記補助指令手段は、前記判定手段により前記ワークを移送していないと判定された期間に前記補助駆動指令を出力することを特徴とする請求項１から３のいずれか一項記載のロボットシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、歯車機構を用いて各アームを駆動する多関節型のロボットを制御するためのロボットシステムに関する。
【背景技術】
【０００２】
複数のアームを有する多関節型のロボットは、各軸に対応して複数の駆動部が設けられている。各駆動部は、各軸を駆動するためのモータと、そのモータの出力を出力軸側に連結されているアームに伝達する歯車機構とを有している。この歯車機構は、例えば周知の波動歯車装置等が採用されており、各軸で歯数が異なるといった差違はあるものの、構造自体は概ね共通した設計となっている。そして、このような歯車機構は潤滑剤が減少すると歯車の破損を招く等のおそれがあることから、例えば特許文献１では、動作中の歯車に対して十分な潤滑を行うための対策が提案されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−７９６２７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
さて、ロボット等の産業機器は、一般的に予め耐用年数が想定されており、その耐用年数に耐えうる設計がなされている。具体的には、上記したように複数の駆動部を有する多関節型のロボットの場合、各駆動部の耐用年数が概ね一致するように設計されている。
しかしながら、実際にロボットを設置して予め定められている作業サイクルを繰り返し実行させた際、上記したように耐用年数が概ね一致するはずの駆動部のうち特定の駆動部が想定よりも短い期間で故障し、ロボット全体としての耐用年数の低下を招くことがあった。
【０００５】
本発明は、上記事情に鑑みてなされたものであり、その目的は、複数の駆動部を備える多関節型のロボットにおいて特定の駆動部における故障を抑制し、ロボットの耐用年数の低下を招くおそれを低減することができるロボットシステムを提供することにある。
【課題を解決するための手段】
【０００６】
発明者は、故障したロボットを調査した結果、想定よりも短い期間で故障する駆動部が作業サイクル中に動作していない駆動部に集中していることを見いだした。多関節型のロボットの場合、様々な作業を実行する可能性があることから汎用性を考慮して複数の駆動部が設けられているものの、作業内容によっては全く動作しない駆動部も存在する。ただし、駆動部が動作しなければ歯車機構も動作しないことから、歯車機構の歯が摩耗したり破損したりするおそれは小さく、一般論で言えば、動作していない駆動部に故障が集中する状況は考えにくい。そこで、発明者は、駆動部に故障が生じる過程をさらに詳細に解析した結果、動作していない駆動部に故障が集中するのは、作業内容に対して可動軸の構成に冗長性のある多関節型のロボットに特有の現象であることを見いだした。
【０００７】
多関節型のロボットにおいては、他の駆動部の動作やアームの移動に起因する振動が動作していない駆動部に伝達される。そして、ロボットは予め定められている作業サイクルを繰り返し実行することから、動作していない駆動部には繰り返し振動が伝達されることになる。その振動は、動作していない駆動部の歯車機構にも伝達される。歯車機構の潤滑剤としては粘度が比較的大きい潤滑油が一般的に用いられており、その潤滑油は、歯車機構が動作していない状況では固体に近い性質となっている。このため、歯車機構に振動が伝達されると、その振動によって潤滑油が部分的に欠落し、歯車機構の歯の間に潤滑油が存在しない欠落領域が比較的小さい範囲でまず発生する。この欠落領域は、作業サイクルが繰り返し実行されることによって、すなわち、振動が繰り返し伝達されることによって徐々に拡大していく。その際、噛み合った歯同士が直接的に接触する状態となり、その状態でさらに振動が繰り返し伝達された結果、直接的に接触した歯が損傷し、駆動部の故障を招いていたのである。
【０００８】
そこで、請求項１記載の発明では、ロボットシステムは、多関節型のロボットの各軸を駆動するためのモータおよび当該モータの出力を伝達するための歯車機構を有する複数の駆動部に対し、作業サイクル中に各駆動部に対して駆動指令が出力されたか否かを個別に判定し、作業サイクル中に駆動指令が出力されていないと判定された駆動部に対し、当該駆動部のモータを駆動させるための補助駆動指令を出力する。つまり、作業サイクル中には本来であれば動作しない駆動部を動作させている。
【０００９】
これにより、駆動部つまりは歯車機構が動作すれば潤滑剤がその都度拡散され、発生した欠落領域に他の部位から潤滑剤が補填されることから発生した欠落領域の補修、欠落領域の拡大の防止、ならびに、潤滑剤が補填されることから欠落領域の発生そのものの抑制が可能となる。その結果、歯車機構の歯が直接的に接触することが無くなり、ロボットの動作に伴って振動が伝達されたとしても歯車の損傷や破損等が生じるおそれを低減することができる。したがって、複数の駆動部を備える多関節型のロボットにおいて特定の駆動部における故障が抑制され、ロボットの耐用年数の低下を招くおそれを低減することができる。
【００１０】
請求項２記載の発明では、アームを予め設定される教示点間で移動させる際にアームの移動軌跡を相対的に重視した作業動作とアームの移動速度を相対的に重視した移動動作とのうち、移動動作中に、歯車機構の歯の噛み合い位置を少なくとも１歯以上移動させる補助駆動指令を出力する。なお、作業動作とは、アームを教示点間で移動させる際、ワークを掴んだり組み付けたりする等の作業を行うために移動軌跡を相対的に重視してアームを滑らかに移動させる制御を行うときの動作であり、一般的にはＣＰ（Continuous Path）動作と呼ばれている。また、移動動作とは、アームを教示点間で移動させる際、移動速度を相対的に重視して教示点間を素早く移動させる制御を行うときの動作、換言すると、軌跡をそれほど重視しない動作であり、一般的にはＰＴＰ（Point To Point）動作と呼ばれている。以下、便宜的に、作業動作をＣＰ動作、移動動作をＰＴＰ動作と称する。
【００１１】
上記したように作業サイクル中に動作しなかった駆動部を動作させることでその駆動部の故障を抑制することができるものの、ロボットの場合、いつ駆動部を動作させるかを考慮する必要がある。すなわち、ロボットは所定の作業サイクルを繰り返し実行することから、例えば一回の作業サイクルが終了する毎に対象となる駆動部を動作させると、次の作業サイクルを実行するまでに本来の作業では不要な時間を要することになり、作業を行うために要する時間（以下、タクトタイムと称する）が長くなる。そして、タクトタイムが長くなると、所定の作業量をこなすためには余分に時間が掛かる一方、予め作業時間が決められている場合には実行可能な作業サイクル数が低下することになり、生産効率が低下する。このため、ロボットにおいては、タクトタイムに影響を与えないように対象となる駆動部を動作させることが求められる。
【００１２】
さて、ロボットの作業サイクルに上記したＣＰ動作やＰＴＰ動作が含まれることは一般的に知られている。このため、タクトタイムに影響を与えることなく、また、ロボットの本来の作業に影響を与えることなく（アームの軌跡に大きな影響を与えることなく）駆動部を動作させるには、ＰＴＰ動作中に動作させることがまず考えられる。しかし、潤滑剤を満遍なく拡散させるために例えば歯車機構の歯の噛み合い位置を一回転させるような動作を行わせると、アームが大きく移動してしまい、いくら軌跡をそれほど重視していないＰＴＰ動作中といえども、アームやハンドあるいはハンドに保持されたワーク等が周辺設備に衝突するおそれがある。つまり、どの時期に駆動部を動作させればよいかは、ＰＴＰ動作中であればよいといった単純な問題ではない。
【００１３】
ここで、発明者による解析結果が有効活用されることになる。すなわち、発明者によって、潤滑剤の欠落領域が上記したように比較的小さい範囲でまず発生すること、さらに、発生当初の欠落領域が１歯未満程度の大きさであることが見いだされている。このため、発生当初の欠落領域に潤滑剤を拡散させるためには、潤滑剤が欠落していない部位に噛み合わせればよいこと、すなわち、歯車機構の歯の噛み合い位置を１歯以上移動させればよいことが明らかになった。換言すると、発生当初の欠落領域に対処するためには、アームを大きく動かす必要がないことが明らかになった。さらに、噛み合い位置を１歯以上動かせばよいことから、ＰＴＰ動作中に十分実施可能であると考えられる。
【００１４】
このような解析結果の裏付けに基づいて、請求項２記載のロボットシステムでは、対象となる駆動部を、ＰＴＰ動作中に歯車機構の歯の噛み合い位置を１歯以上移動させるように動作させている。これにより、発生当初の欠落領域に潤滑剤を拡散させることが可能となり、欠落領域の拡大を抑制することができるとともに、駆動部が動作すれば潤滑剤が拡散されることから、欠落領域の発生そのものを抑制することができる。また、潤滑剤を拡散させるための動作はＰＴＰ動作中に実施可能な動作であることから、ＰＴＰ動作中に駆動部の動作が完了する。したがって、タクトタイムが長くなる等の影響を与えることが無く、生産効率が低下するおそれを抑制することができる。
【００１５】
請求項３記載の発明では、判定手段は、作業サイクル中に複数のＰＴＰ動作が存在する場合、最も動作時間の長いＰＴＰ動作を判定し、補助指令出力手段は、最も動作時間の長いＰＴＰ動作中に補助駆動指令を出力する。動作時間が長ければ、補助駆動指令により動作させた駆動部を確実に本来の位置まで戻すことができるようになることに加えて、そのＰＴＰ動作中での噛み合い位置の移動量の増加を図ることができるので、欠落領域の発生および拡大をさらに抑制することができる。
【００１６】
請求項４記載の発明では、ワークを移送していないと判定された期間に補助駆動指令を出力する。ロボットは、与えられた指令に基づいて動作することから、通常は対象となるワークがどのようなものであるかを自身で把握することができない。そこで、ワークを移送していないと判定された時期に補助駆動指令を出力することにより、本来の作業サイクルでは想定していない駆動部が動作したとしても、その動作に起因してワークが設備装置に衝突する等の不具合を生じさせることがない。
【図面の簡単な説明】
【００１７】
【図１】本発明の第１実施形態によるロボットシステムの構成を概略的に示す図
【図２】ロボットシステムの電気的構成を概略的に示す図
【図３】歯車機構を模式的に示す図
【図４】ＣＰ動作およびＰＴＰ動作の一例を模式的に示す図
【図５】図３のＶ領域の拡大図で、潤滑油の欠落領域の遷移を模式的に示す図
【図６】ロボットシステムの制御の流れを示す図
【図７】本発明の第２実施形態によるロボットシステムの構成を概略的に示す図
【発明を実施するための形態】
【００１８】
（第１実施形態）
以下、本発明の第１実施形態について、図１〜図６を参照しながら説明する。
図１に示すように、一般的な産業用に用いられるロボットシステム１は、多関節型のロボット２、ロボット２を制御するコントローラ３、コントローラ３に接続されたティーチングペンダント４を備えている。
【００１９】
ロボット２は、いわゆる６軸の垂直多関節型ロボットとして周知の構成を備えており、ベース５上に、Ｚ方向の軸心を持つ第１軸（Ｊ１）を介してショルダ６が水平方向に回転可能に連結されている。ショルダ６には、Ｙ方向の軸心を持つ第２軸（Ｊ２）を介して上方に延びる下アーム７の下端部が垂直方向に回転可能に連結されている。下アーム７の先端部には、Ｙ方向の軸心を持つ第３軸（Ｊ３）を介して第一上アーム８が垂直方向に回転可能に連結されている。第一上アーム８の先端部には、Ｘ方向の軸心を持つ第４軸（Ｊ４）を介して第二上アーム９が捻り回転可能に連結されている。第二上アーム９の先端部には、Ｙ方向の軸心を持つ第５軸（Ｊ５）を介して手首１０が垂直方向に回転可能に連結されている。手首１０には、Ｘ方向の軸心を持つ第６軸（Ｊ６）を介してフランジ１１が捻り回転可能に連結されている。
【００２０】
ベース５、ショルダ６、下アーム７、第一上アーム８、第二上アーム９、手首１０およびフランジ１１は、ロボット２のアームとして機能し、アームの先端となるフランジ１１には、図示は省略するが、ハンド（エンドエフェクタとも呼ばれる）が取り付けられる。ハンドは、例えば図示しないワークを保持して移送したり、ワークを加工する工具等が取り付けられる。ロボット２に設けられている各軸（Ｊ１〜Ｊ６）には、それぞれに対応して駆動部２３（図２参照）が設けられている。
【００２１】
コントローラ３は、図２に示すように、ＣＰＵ１２、ＲＯＭ１３およびＲＡＭ１４、駆動回路１５、位置検出回路１６等を備えている。ＣＰＵ１２は、ＲＯＭ１３あるいはＲＡＭ１４等に記憶されているプログラムに基づいてコントローラ３全体を制御するとともに、周知のように、ロボット２に予め定められている作業サイクルを繰り返し実行させるための各種の指令を出力する。このＣＰＵ１２は、指令部１７、判定部１８および補助指令部１９を有している。これら指令部１７、判定部１８および補助指令部１９は、本実施形態ではＣＰＵ１２により実行されるプログラムによってソフトウェア的に構成されている。なお、指令部１７、判定部１８および補助指令部１９は、ハードウェア的に構成してもよい。
【００２２】
指令部１７は、ロボット２の駆動部２３を動作させるための駆動指令、つまり、モータ２０（図２参照）を駆動するための実行命令を各駆動部２３に対して個別に出力する。指令部１７は、特許請求の範囲に記載した指令手段を構成している。
判定部１８は、作業サイクル中にロボットの駆動部２３に対して駆動指令が出力されたか否かを個別に判定するとともに、作業サイクル中のアームの移動が作業動作（前述したＣＰ動作）あるいは移動動作（前述したＰＴＰ動作）のいずれであるか、ＰＴＰ動作中にワークを保持しているか否かをさらに判定する。判定部１８は、特許請求の範囲に記載した判定手段を構成している。以下、作業動作をＣＰ動作、移動動作をＰＴＰ動作と称して説明する。
【００２３】
補助指令部１９は、作業サイクル中に駆動指令が出力されていないと判定された駆動部２３に対してモータを駆動するための補助駆動指令を出力する。本実施形態では、補助駆動指令として、後述する減速機２２の歯車機構の歯の噛み合い位置を１歯以上移動させることができる補助駆動指令を出力する。この場合、例えば一般的な構成のロボット２では、第４軸（Ｊ４）のギア比＝１００、第５軸（Ｊ５）の中心からハンド先端までの距離＝２００ｍｍとすると、モータを１回転（モータの出力軸が１回転。歯車機構を一回転させるわけではない）させることでハンドの先端は最大で約１３ｍｍ（２π÷１００×２００＝４π）しか動作しない。補助指令部１９は、特許請求の範囲に記載した補助指令手段を構成している。
【００２４】
駆動回路１５は、ＣＰＵ１２から出力された指令をロボット２に与えるための電気信号に変換する例えばインバータ回路等により構成されている。ロボット２は、第１軸Ｊ１〜第６軸Ｊ６をそれぞれ駆動するための複数のモータ２０、および各モータ２０に対応して設けられているエンコーダ２１を備えている。位置検出回路１６は、モータ２０の回転位置を検出するエンコーダ２１からの信号が入力され、モータ２０の回転位置を検出する。ＣＰＵ１２は、位置検出回路１６で検出したモータ２０の回転位置に基づいて、モータ２０をフィードバック制御する。
【００２５】
ロボット２では、モータ２０の出力は、減速機２２を介してアームに伝達される。これらモータ２０および減速機２２は、駆動部２３を構成している。なお、図２では、各駆動部２３によって駆動されるショルダ６、下アーム７、第一上アーム８、第二上アーム９、手首１０およびフランジ１１を便宜的にアームと示している。本実施形態では、減速機２２としていわゆる波動歯車装置を採用している。
【００２６】
この減速機２２は、図３に示すように、内周面に内歯３０が形成された円環状の剛性内歯歯車３１、この剛性内歯歯車３１の内側に同心状に設けられ、外歯３２を有する可撓性外歯歯車３３を備えている。可撓性外歯歯車３３は、図示は省略するが周知のように全体形状としてカップ状に形成されており、カップ状の底部に出力軸が取り付けられる。また、剛性内歯歯車３１の内歯３０と可撓性外歯歯車３３の外歯３２との間には、潤滑剤としての潤滑油Ｗ（図５参照）が充填されている。この潤滑油Ｗは、一般的に比較的粘性が高く、剛性内歯歯車３１と可撓性外歯歯車３３とが動作していれば歯車間に拡散して潤滑剤として機能する一方、動作していない状態では、固体に近い状態となる。なお、潤滑剤としては、油性のものに限らず、他のものであっても良い。
【００２７】
外歯３２の内周側にはウエーブベアリング３４が配設されている。このウエーブベアリング３４は、可撓性外輪３５、可撓性内輪３６、可撓性外輪３５と可撓性内輪３６との間に配列された複数個のボール３７とから構成されている。ウエーブベアリング３４の内側、つまり可撓性内輪３６の内周には、楕円形の剛性カム３８が固定されている。この剛性カム３８には、モータ２０の出力軸を連結するためのキー溝３９付きの嵌合孔４０が形成されている。
【００２８】
このような構成の減速機２２は、ウエーブベアリング３４の可撓性内輪３６および可撓性外輪３５が楕円形に撓められ、可撓性外輪３５が楕円形に撓むことによって、外歯３２形成部分が楕円形に撓められる。その結果、楕円形に撓んだ部分の長径方向両端部の２箇所において、外歯３２が部分的に剛性内歯歯車３１の内歯３０に噛み合うようになる。そして、剛性カム３８がモータ２０により回転駆動されると、可撓性外歯歯車３３の楕円形に撓んだ部分の長径部分が周方向に移動し、外歯３２の内歯３０に対する噛み合い位置が周方向に移動する。このとき、外歯３２が内歯３０よりも例えば２枚少なく設定されているので、噛み合い位置の移動に伴って、剛性内歯歯車３１と可撓性外歯歯車３３との間で相対的な回転が発生する。そして、可撓性外歯歯車３３が出力軸となってモータ２０の減速回転が取り出される。
【００２９】
図１に示すように、ティーチングペンダント４は、例えば薄型の略矩形箱状に形成されており、概ね使用者が携帯あるいは所持して操作可能な程度の大きさとなっている。ティーチングペンダント４には、各種キースイッチやタッチパネルが設けられており、使用者は、それらキースイッチやタッチパネル等により種々の入力操作を行う。ティーチングペンダント４は、ケーブルを経由してコントローラ３に接続され、通信インターフェイスを経由してコントローラ３との間で高速のデータ転送を実行するようになっており、キースイッチ等の操作により入力された操作信号等の情報はティーチングペンダント４からコントローラ３へ送信される。
【００３０】
ここで、ロボット２が実行する作業サイクルについて説明する。
作業サイクルは、予め定められている教示点を経由して、例えばワークの移送等を繰り返し行う作業である。例えば図４は、教示点Ｐ１を初期位置として、教示点Ｐ２まで移動した後、教示点Ｐ３にてワークをピックアップし、ワークを保持した状態で教示点Ｐ２、Ｐ１を経由した後、教示点Ｐ４にてワークをプレースする作業サイクルを模式的に示している。より具体的には、教示点Ｐ１−Ｐ２間ではアームが水平方向に大きく移動し、教示点Ｐ２−Ｐ３間およびＰ１−Ｐ４間ではアームが垂直に移動している。
【００３１】
この場合、アームが水平移動する際には例えば第１軸（Ｊ１）が駆動され、アームが垂直移動する際には例えば第２軸（Ｊ２）、第３軸（Ｊ３）や第５軸（Ｊ５）が駆動されるものとする。また、アームが水平方向に大きく移動する教示点Ｐ１−Ｐ２間では、移動速度を重視したＰＴＰ動作が行われ、ワークを所定位置からピックアップする教示点Ｐ２−Ｐ３間およびワークを所定位置にプレースする教示点Ｐ１−Ｐ４間では、位置決めの正確性を増すために移動軌跡を重視したＣＰ動作が行われているものとする。
【００３２】
この図４に示す作業サイクルでは、アームを捻る動作（第４軸（Ｊ４）を駆動する動作）が必要ないため、第４軸（Ｊ４）は動作していない。換言すると、第４軸（Ｊ４）に対応して設けられている駆動部２３には、作業サイクル中に駆動指令が出力されていない。以下、本実施形態では第４軸（Ｊ４）に対応して設けられている駆動部２３のように作業サイクル中に動作しない駆動部２３を、便宜的に非動作駆動部と称し、動作しない状態を非動作状態と称する。
【００３３】
さて、非動作駆動部では、作業サイクルが繰り返し実行されると、図５（ａ）〜（ｄ）に示すように、剛性内歯歯車３１の内歯３０と可撓性外歯歯車３３の外歯３２とが直接接触する可能性のある状態となるおそれがある。具体的には、内歯３０と外歯３２との間に充填されている潤滑油Ｗは、通常であれば図５（ａ）に示すように拡散しているものの、非動作状態が続くと潤滑油Ｗが徐々に固体に近い状態となる。その状態で作業サイクルが繰り返し実行されると、つまり、非動作駆動部に他の駆動部２３やロボット２自体からの振動が伝達されると、図５（ｂ）に示すように、概ね１歯未満程度の大きさで潤滑油Ｗが部分的に欠落し、欠落領域Ｒが形成される。この図５（ｂ）は、発生当初の欠落領域Ｒの状態を示している。
【００３４】
この状態でさらに作業サイクルが繰り返し実行されると、欠落領域Ｒは、図５（ｃ）に示すように徐々に拡大していく。このように欠落領域Ｒが大きくなると、内歯３０と外歯３２とが直接的に接触するようになる。そして、作業サイクルが繰り返し実行され、振動が伝達されると、内歯３０と外歯３２とが接触を繰り返すようになり、その結果として、図５（ｄ）に示すように、例えば内歯３０が欠ける等の破損部位Ｋが形成される。この状態では、破損部位Ｋがあることから、例えば作業サイクルが変更されて非動作駆動部が駆動されるようになると正常に動作せず、故障となってしまう。
【００３５】
このように、多関節型のロボット２では、特定の駆動部２３が全く動作しない状態で作業サイクルが繰り返し実行されることがあり、動作していないことから本来であれば耐用年数に影響がないと思われるその駆動部２３において、耐用年数が反って低下してしまうという現象が起こり得る。そして、この現象は、作業内容に対して駆動軸が冗長性を備えた構成となっている多関節型のロボット２に特有の問題である。
【００３６】
そこで、ロボットシステム１は、以下のようにしてこの問題に対処している。以下、作業サイクル中の処理の流れとともに説明する。図６に示す各変数の意味は以下の通りであり、また、上記したように本実施形態では非作動軸として第４軸（Ｊ４）を想定しているため第４軸（図６では「４軸目」と記載する）を対象として説明する。
・Ｎ：第４軸を動作させるための駆動指令の出力（補助駆動指令の出力）を、作業サイクル中の何番目のＰＴＰ動作で行うか。なお、Ｎ＝０の場合はどのＰＴＰ動作にも該当しないため、補助駆動指令の出力は行われない。
【００３７】
・Ｆ：第４軸（Ｊ４）が動作したか否かを示すフラグ。作業サイクル開始時に０にリセットされ、第４軸が動作すると１にセットされる。
・Ｍ：作業サイクル中の何回目のＰＴＰ動作であるかを表すカウンタ。ＭとＮとを比較して、ＰＴＰ動作中に第４軸（Ｊ４）を動作させるか否かを判定する。
・Ｎ１：次の作業サイクルにおいて、何回目のＰＴＰ動作で補助駆動指令を出力するのかを示す変数。本実施形態では、一番動作時間が長いＰＴＰ動作が選択される。
・ＴＭＡＸ：作業サイクル中における最も動作時間の長いＰＴＰ動作の動作時間を格納するための変数。
・Ｈ：ハンド(エンドエフェクタ)でワークを保持していない状態（ワークを移送していない状態）でＰＴＰ動作が行えたか否かを示すフラグ。作業サイクル開始時に０にリセットされ、非保持中にＰＴＰ動作が行えれば１にセットされる。非保持中のＰＴＰ動作にて優先的に補助駆動指令を出力するために参照する。
【００３８】
・Ｔ：実行されるＰＴＰ動作の動作時間を格納するための変数。
ロボットシステム１のコントローラ３は、図６に示す処理を繰り返し実行しており、作業サイクルを開始すると、Ｎを０とし（Ｓ１）、Ｆを０とし（Ｓ２）、Ｍを０とし（Ｓ３）、Ｎ１を０とし（Ｓ４）、ＴＭＡＳを０とし（Ｓ５）、Ｈを０とする（Ｓ６）ことで、各変数を初期化する。続いて、コントローラ３は、実行命令が動作命令（モータ２０を駆動するための駆動指令）であるか否かを判定し（Ｓ７）、動作命令でない場合には（Ｓ７：ＮＯ）、ステップＳ１１に移行する。なお、実行命令としては、動作命令以外に、フローを分岐する制御命令等があるが、説明の簡略化のために、ここでは制御命令については詳細な説明を省略する。
【００３９】
コントローラ３は、ステップＳ７において実行命令が動作命令であると判定すると（Ｓ７：ＹＥＳ）、４軸目が動作するか否かを判定し（Ｓ８）、４軸目が動作する場合には（Ｓ８：ＹＥＳ）、Ｆを１とする（Ｓ９）。これにより、この作業サイクル中には４軸目が動作することが示される。一方、４軸目が動作しない場合には（Ｓ８：ＮＯ）、Ｆを１とすることなくステップＳ１０に移行して、当該動作における起動補完方法がＰＴＰであるか否か、すなわち、ＰＴＰ動作であるか否かを判定する。そして、ＰＴＰ動作でなければ（Ｓ１０：ＮＯ）、ステップＳ１１に移行する。
【００４０】
これに対して、コントローラ３は、起動補完方法がＰＴＰである場合には（Ｓ１０：ＹＥＳ）、ＭをＭ＋１とインクリメントして（Ｓ１７）、今回のＰＴＰ動作が作業サイクル中の何番目のＰＴＰ動作であるかを記憶する。なお、ステップＳ９でＦ＝１つまり４軸目が動作する場合であってもＰＴＰ動作であれば（Ｓ１０：ＹＥＳ）ステップＳ１７に移行するのは、そのＰＴＰ動作の動作時間等を予め計測しておき、今後の作業サイクルにおいて補助駆動指令の出力対象となるかを判定するためである。
【００４１】
続いて、コントローラ３は、Ｍ＝Ｎであるかを判定し（Ｓ１８）、今回はＮ＝０、Ｍ＝１であるため（Ｓ１８：ＮＯ）、Ｔに動作時間（今回のＰＴＰ動作の動作時間）を記憶する（Ｓ２０）。続いて、エンドエフェクタＩＯがＯＦＦであるか否かを判定し（Ｓ２１）、エンドエフェクタＩＯがＯＦＦ、つまり、エンドエフェクタが開放されてワークを保持していない状態であれば（Ｓ２１：ＹＥＳ）、現時点ではＨ＝０であるので（Ｓ２２：ＹＥＳ）、Ｈを１とし（Ｓ２３）、Ｎ１に現在のＭを代入し（Ｓ２４）、ＴＭＡＸに現在のＴを代入した後（Ｓ２５）、ステップＳ１１に移行する。つまり、今回のＰＴＰ動作がワークを保持していない状態で行えたことを記憶する（Ｈを１とする）とともに、現時点でのＴをＰＴＰ動作の最大の動作時間として記憶する（ＴＭＡＸ←Ｔとする）。なお、Ｔは、ステップＳ２５において初期化される。
【００４２】
一方、コントローラ３は、エンドエフェクタＩＯがＯＦＦでない場合には（Ｓ２１：ＮＯ）、現時点ではＨ＝０であるので（Ｓ２６：ＹＥＳ）、つまり、ワークを保持していない状態のＰＴＰ動作が現時点ではまだ特定されていないので、ＴがＴＭＡＸを超えていれば（Ｓ２７：ＹＥＳ）、ステップＳ２４、Ｓ２５を実行した後、ステップＳ１１に移行する。これにより、今回のＰＴＰ動作はワークを保持している状態で行われたものであるものの、補助駆動指令の出力することが可能なＰＴＰ動作として一旦記憶する。
【００４３】
ステップＳ１１に移行すると、コントローラ３は、１サイクルが終了したか否かを判定し、１サイクルが終了していなければ（Ｓ１１：ＮＯ）、次の行（次の命令）を実行し（Ｓ１５）、ステップＳ７に移行して、上記したように４軸目が動作するか、ＰＴＰ動作であるか等の判定を繰り返す。そして、ＰＴＰ動作（Ｓ１０：ＹＥＳ）中にエンドエフェクタＩＯがＯＦＦ（Ｓ２１：ＹＥＳ）であって、ステップＳ２２においてＨ＝０でなければ、すなわち、過去にワークを保持しない状態で行われたＰＴＰ動作があってＨ＝１とされている場合には（Ｓ２２：ＮＯ）、今回のＴがＴＭＡＸを超えていれば（Ｓ２７：ＹＥＳ）、Ｎ１にＭを代入することで（Ｓ２４）、補助駆動命令を出力する対象とうなるＰＴＰ動作の順番を、より動作時間の長いものに更新する。そして、現在のＴをＴＭＡＸに代入する（Ｓ２５）。なお、過去に計測したＰＴＰ動作の動作時間のほうが今回の動作時間よりも長ければ、つまり、ＴがＴＭＡＸを超えていなければ（Ｓ２７：ＮＯ）、そのままステップＳ１１に移行するので、ＰＴＰ動作の順番は更新されない。また、エンドエフェクタＩＯがＯＦＦでない場合において（Ｓ２１：ＮＯ）、Ｈ＝０でなければ（Ｓ２６：ＮＯ）、つまり、既にワークを保持しない状態で実行されたＰＴＰ動作を特定してＨ＝１とされていれば、やはりＰＴＰ動作の順番を更新することなく、ステップＳ１１に移行する。
【００４４】
このように、コントローラ３は、作業サイクル中の各ＰＴＰ動作について、その動作時間とワークを保持しているか否かを判定し、動作時間が長いもの、また、ワークを保持していないものを優先して、何番目のＰＴＰ動作が補助駆動命令を出力するものとして適当であるかを判定している。
さて、コントローラ３は、ステップＳ１１において１サイクルが終了したと判定すると（Ｓ１１：ＹＥＳ）、Ｆ＝０であるかを判定する（Ｓ１２）。つまり、その作業サイクル中に４軸目が動作したか否かを判定する。そして、Ｆ＝０でなければ（Ｓ１２：ＮＯ）、作業サイクル中に４軸目が動作していることから、Ｎを０に初期化した後（Ｓ１４）、次のサイクルを実行して（Ｓ１６）、ステップＳ２に移行する。
【００４５】
これに対して、コントローラ３は、Ｆ＝０であれば（Ｓ１２：ＹＥＳ）、ＮにＮ１を代入して（Ｓ１３）、つまり、次の作業サイクルで４軸目を動作させるためのＰＴＰ動作の順番を記憶して、次のサイクルを実行し（Ｓ１６）、ステップＳ２に移行する。そして、次の作業サイクルにおいて、ＰＴＰ動作が行われた際（Ｓ１０：ＹＥＳ）、ＭをＭ＋１として（Ｓ１７）、つまり、ＰＴＰ動作の順番を作業サイクルの開始からインクリメントしていき、Ｍ＝Ｎとなったとき（Ｓ１８：ＹＥＳ）、すなわち、前回の作業サイクルで記憶した順番のＰＴＰ動作のときに、４軸目を動作させる（Ｓ１９）。これにより、ＰＴＰ動作中、且つ、ワークを保持していないことを優先した状態で、４軸目が動作する。
【００４６】
このように、ロボットシステム１では、本来の作業サイクルでは動作しない非動作駆動部である第４軸（Ｊ４）に対応する駆動部２３を動作させることにより、非動作状態で振動が伝達されることにより発生する欠落領域Ｒに対して、発生当初には潤滑油Ｗを補充することができ、また、非動作駆動部を駆動させて潤滑油Ｗの拡散を促進しておくことで、欠落領域Ｒの発生そのものを抑制している。
【００４７】
以上説明した本実施形態によれば、次のような効果を奏する。
作業サイクル中に各軸が動作したか否か、つまり、各駆動部２３に対して駆動指令（動作命令）が出力されたか否かを判定し、駆動指令が出力されていないと判定された駆動部２３である非動作駆動部に対し、当該駆動部２３のモータ２０を駆動させるための補助駆動指令（動作命令）を出力する。これにより、本来の作業サイクル中には動作しない駆動部２３つまりは減速機２２が動作し、その動作に伴って減速機２２内の潤滑油Ｗの拡散が促進され、欠落領域Ｒの発生および拡大が抑制される。すなわち、剛性内歯歯車３１と可撓性外歯歯車３３の歯が直接的に接触することが無くなる。したがって、非動作駆動部に振動が伝達されたとしても、歯の損傷や破損等が生じるおそれが低減され、非動作駆動部つまり特定の駆動部２３における故障の発生を抑制でき、ロボットの耐用年数の低下を招くおそれを低減することができる。
【００４８】
非動作駆動部を剛性内歯歯車３１と可撓性外歯歯車３３との噛み合い位置が１歯以上移動するように動作させているので、図５に示したような発生当初の欠落領域Ｒに潤滑油Ｗを拡散させることができ、欠落領域Ｒの拡大を抑制することができる。また、駆動部２３が動作すれば潤滑油Ｗの拡散が促進されることから、欠落領域Ｒの発生そのものを抑制することができる。
【００４９】
このとき、ＰＴＰ動作中に非動作駆動部を動作させているので、タクトタイムが長くなる等の影響を与えることが無く、また、潤滑油Ｗを拡散させるためには上記したように、噛み合い位置を１歯以上移動させればよいのでＰＴＰ動作中に確実に駆動部２３の動作を完了させることができ、生産効率が低下するおそれを抑制することができる。また、ＰＴＰ動作中に動作させるので、ロボット２の本来のアームの軌跡に影響を与えることがない。
【００５０】
作業サイクル中に複数のＰＴＰ動作が存在する場合、最も動作時間の長いＰＴＰ動作を判定し、最も動作時間の長いＰＴＰ動作中に補助駆動指令を出力するようにしたので、動作時間が長ければ、補助駆動指令により動作させた駆動部２３を確実に本来の位置まで戻すことができるため、本来の作業に影響を与えることがない。また、動作時間が長ければ、そのＰＴＰ動作中での噛み合い位置の移動量を増加させることができるので、欠落領域Ｒの発生およびその拡大をより一層抑制することができる。
【００５１】
ワークを保持していない（移送していない）ＰＴＰ動作を優先して補助駆動指令を出力するようにしたので、本来の作業サイクルでは想定していない駆動部２３が動作したとしても、その動作に起因してワークが設備装置に衝突する等の不具合を生じさせることがない。
本実施形態では、作業サイクル毎に非動作駆動部に対して補助駆動指令を出力するようにしているので、作業サイクル毎に駆動部２３が駆動され、潤滑油Ｗが拡散する。この場合、一般的には作業サイクルは１分程度と考えられるので、欠落領域Ｒが発生する前に非動作駆動部が動作する状態をすることができ、欠落領域Ｒの発生をより確実に予防することができる。
【００５２】
（第２実施形態）
第１実施形態では６軸の垂直多関節型ロボットを例示したが、図７に示すような４軸の水平多関節型ロボットに適用してもよい。なお、第１実施形態と実質的に共通する部位には同一の符号を付し、詳細な説明は省略する。
【００５３】
図７に示すように、ロボットシステム６１を構成するロボット６２は、設置面に固定されるベース６３と、このベース６３上にＺ方向の軸心を持つ第１軸（Ｊ６１）を中心に回転可能に連結された第一アーム６４と、第一アーム６４の先端部上にＺ方向の軸心を持つ第２軸（Ｊ６２）を中心に回転可能に連結された第二アーム６５と、第二アーム６５の先端部に上下動可能（矢印Ａ方向）で且つＺ方向の軸心を持つ第３軸（Ｊ６３）を中心に回転可能に設けられたシャフト６６とから構成されている。シャフト６６の先端部（下端部）には、ツールなどを取り付けるためのフランジ６７が位置決めされて着脱可能に取り付けられるようになっている。
【００５４】
このような構成においても、第１実施形態の図６と同様の処理を行うことにより、複数の軸に対応して設けられている駆動部２３が非動作駆動部であるか否かを判定し、作業サイクル中のＰＴＰ動作中に補助駆動指令を出力することにより、欠落領域Ｒの拡大や発生そのものを抑制することができる等、第１実施形態と同様の効果を得ることができる。
【００５５】
（その他の実施形態）
本発明は上記した各実施形態に限定されるものではなく、次のような変形または拡張が可能である。
各実施形態では減速機２２として波動歯車装置を例示したが、歯車を利用するものでれば他の構成のものであっても本発明を適用することができる。
第１実施形態では第４軸（Ｊ４）を対象としたが、他の軸を対象として図６と同様の処理を実行することにより、ロボット２に設けられている複数の駆動部２３の全てに対して非動作駆動部と判定された場合には動作させることができるようになり、第１実施形態と同様の効果を得ることができる。
【００５６】
もちろん、全ての軸を対象として個別に図６と同様の処理を行い、非動作駆動部と判定された全ての駆動部２３に対して同一の作業サイクル中に個別に補助駆動指令を出力するようにしてもよい。その場合、複数の非動作駆動部が特定された場合には、同一のＰＴＰ動作中に補助駆動指令を出力してもよいし、異なるＰＴＰ動作でそれぞれ補助駆動指令を出力するようにしてもよい。
【００５７】
各実施形態では減速機２２の歯車機構の歯を１歯以上移動させるような補助駆動指令を出力するようにしたが、補助駆動指令を出力するＰＴＰ動作の動作時間に応じて、その移動量を帳調整するようにしてもよい。例えば、ＰＴＰ動作の動作時間が長ければ、移動量を大きくしてもよい。これは、動作時間が長ければＰＴＰ動作が終了するまでに本来の噛み合い位置に戻すことができるためである。このようにすれば、潤滑油Ｗの拡散をさらに促進でき、欠落領域Ｒの発生より確実に予防できるようになる。
【００５８】
各実施形態では潤滑油Ｗとして非動作状態では個体に近い性質を有するものを例示したが、常時液体の性質を有するものであってもよい。この場合、潤滑油Ｗの量が減少した部位すなわち潤滑油Ｗが切れた部位が欠落領域Ｒに相当すると考えればよいことから、図６と同様の処理を実行することにより、各実施形態と同様の効果を得ることができる。
【００５９】
第１実施形態では６軸ロボット、第２実施形態では４軸ロボットを例示したが、例えば７軸ロボットなど軸数が異なるロボットであっても本発明を適用することができる。
各実施形態では駆動部２３に対して駆動指令が出力されたか否かを判定するようにしたが、エンコーダ２１により検出されるモータ２０の回転位置から間接的にモータ２０が駆動されたか否かを判定する構成としてもよい。
【符号の説明】
【００６０】
図面中、１はロボットシステム、２はロボット、６はショルダ（アーム）、７は下アーム（アーム）、８は第一上アーム（アーム）、９は第二上アーム（アーム）、１０は手首（アーム）、１７は指令部（指令出力手段）、１８は判定部（判定手段）、１９は補助指令部（補助指令出力手段）、２０はモータ、２２は減速機（歯車機構）、２３は駆動部、６１はロボットシステム、６２はロボット、６４は第一アーム（アーム）、６５は第二アーム（アーム）、６６はシャフト（アーム）、Ｊ１〜Ｊ６、Ｊ６１〜Ｊ６４は軸を示す。
【図１】
2014034093.tif 000003
【図２】
2014034093.tif 000004
【図３】
2014034093.tif 000005
【図４】
2014034093.tif 000006
【図５】
2014034093.tif 000007
【図６】
2014034093.tif 000008
【図７】
2014034093.tif 000009