(57)【特許請求の範囲】
【請求項１】
駆動源にかかる負荷状態に対応する物理量を検出する負荷状態センサと、
前記駆動源により駆動される手先の工具による被加工物の加工動作時に、前記負荷状態センサが検出した前記負荷状態に対応する物理量を利用して、前記工具の被加工物に対する押し付け力を目標値に保つように力制御されるロボットと、
前記工具による前記被加工物の加工条件に応じた前記駆動源の基準の負荷状態に対応する基準物理量と前記負荷状態センサが検出した前記負荷状態に対応する物理量との比較に基づいて、前記被加工物から前記工具が受ける加工面圧の変化を検出し、前記工具のメンテナンス動作の実行条件の成立、非成立を判定する判定部と、
を備えることを特徴とするロボットの工具メンテナンス判定装置。
【請求項２】
前記実行条件の成立時に、前記工具のメンテナンス動作を前記加工動作に割り込んで前記ロボットに実行させるメンテナンス動作制御部をさらに備えることを特徴とする請求項１記載のロボットの工具メンテナンス判定装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットのツールとして用いる工具のメンテナンスを行うタイミングを判定する装置に関するものである。
【背景技術】
【０００２】
手先にツールを取り付けて各種の作業を行うロボットの一つに、ワークを加工する工具をツールとして用いる加工ロボットがある。加工ロボットの代表例としては、スピンドルモータによって回転される砥石を手先に取り付けたワークの仕上げ加工ロボットがある。仕上げ加工ロボットでは、ロボットの動きを制御して砥石をワークの仕上げ部分に当接させる。その際、砥石のワークに対する押し付け力を目標値に保つために、ロボットの動きを力制御するものもある（例えば、特許文献１）。
【０００３】
ところで、砥石等の研磨工具は、摩耗すると研磨効率が低下する。このため、摩耗の進行に伴ってドレッシングを行って、低下した研磨工具の研磨効率を復元させる必要がある。ドレッシングに関しては、一定量のワークを加工する毎にドレッシングを行うようにする提案がある（例えば、特許文献２）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平４−１６４５８５号公報
【特許文献２】特開２００１−５４８６５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
研磨工具のドレッシングでは、ドレス用の砥石等によって研磨工具の研磨面を削って研磨面の状態を整える。したがって、ドレッシング時の研磨面の削り量を極力抑えることが、研磨工具の寿命を延ばす上で重要となる。そのためには、研磨工具のドレッシングを定期的に行うよりも、必要なときに限って行う方が好ましい。
【０００６】
この種の問題は、ドレッシングを必要とする研磨工具を手先に取り付ける仕上げ加工ロボットに限らず、使用量の増加に伴い交換や調整等のメンテナンスを要する加工工具を手先に取り付ける加工ロボットに全般に広く共通する問題である。
【０００７】
本発明は前記事情に鑑みなされたもので、本発明の目的は、ロボットの手先に取り付けた加工工具をメンテナンスする適切なタイミングを判定することができるロボットの工具メンテナンス判定装置を提供することにある。
【課題を解決するための手段】
【０００８】
上記目的を達成するため、請求項１に記載した本発明のロボットの工具メンテナンス判定装置は、
駆動源にかかる負荷状態に対応する物理量を検出する負荷状態センサと、
前記駆動源により駆動される手先の工具による被加工物の加工動作時に、前記負荷状態センサが検出した前記負荷状態に対応する物理量を利用して、前記工具の被加工物に対する押し付け力を目標値に保つように力制御されるロボットと、
前記工具による前記被加工物の加工条件に応じた前記駆動源の基準の負荷状態に対応する基準物理量と前記負荷状態センサが検出した前記負荷状態に対応する物理量との比較に基づいて、前記被加工物から前記工具が受ける加工面圧の上昇を検出し、前記工具のメンテナンス動作の実行条件の成立、非成立を判定する判定部と、
を備えることを特徴とする。
【０００９】
請求項１に記載した本発明のロボットの工具メンテナンス判定装置によれば、駆動源により駆動させた工具を目標値の押し付け力で被加工物に押し付けると、駆動源の負荷状態は目標の押し付け力に応じた負荷状態となる。しかし、工具が劣化すると、同じ押し付け力で工具を被加工物に押し付けていても駆動源の負荷状態は変化する。
【００１０】
このため、工具による被加工物の加工条件を考慮して定めた駆動源の基準の負荷状態に対応する基準物理量との比較により、ロボットの力制御中に被加工物から工具が受ける加工面圧の上昇を検出して、負荷状態センサが検出する駆動源の実際の負荷状態に対応する物理量を通じて工具の劣化の度合いを認識し、その度合いに基づいて、メンテナンス動作の実行条件の成立、非成立という形で、工具のメンテナンスが必要かどうかを判定することができる。
【００１１】
よって、ロボットの手先に取り付けた加工工具をメンテナンスする適切なタイミングを判定することができる。
【００１２】
また、請求項２に記載した本発明のロボットの工具メンテナンス判定装置は、請求項１に記載した本発明のロボットの工具メンテナンス判定装置において、前記実行条件の成立時に、前記工具のメンテナンス動作を前記加工動作に割り込んで前記ロボットに実行させるメンテナンス動作制御部をさらに備えることを特徴とする。
【００１３】
請求項２に記載した本発明のロボットの工具メンテナンス判定装置によれば、請求項１に記載した本発明のロボットの工具メンテナンス判定装置において、ロボットの手先に取り付けた加工工具を適切なタイミングでメンテナンスすることができる。
【発明の効果】
【００１４】
本発明のロボットの工具メンテナンス判定装置によれば、ロボットの手先に取り付けた加工工具をメンテナンスする適切なタイミングを判定することができる。
【図面の簡単な説明】
【００１５】
【図１】本発明の一実施形態に係るロボットの工具メンテナンス判定装置を有するロボットシステムの概略構成を示す説明図である。
【図２】図１のロボットシステムの電気的な概略構成を示すブロック図である。
【図３】図１のグラインダの砥石を示す拡大斜視図である。
【図４】（ａ），（ｂ）は図１のグラインダの砥石の摩耗が進む前と進んだ後の各状態を示す説明図である。
【図５】図１のグラインダの砥石の摩耗が進んだ場合のグラインダのツールセンターポイントの移動の様子を示す説明図である。
【図６】図１のグラインダの砥石の摩耗の進行による被加工物に対する砥石の接触長さの変化とスピンドルモータの回転トルクの変動との相関を示すグラフである。
【図７】（ａ），（ｂ）は図１のドレッシングテーブル上でドレッシングする前とドレッシングした後のグラインダの砥石をそれぞれ示す説明図である。
【図８】図１の制御用ＰＣのＣＰＵがＲＯＭに格納されたプログラムにしたがって行う制御を示すフローチャートである。
【発明を実施するための形態】
【００１６】
以下、本発明の実施形態について図面を参照しながら説明する。
【００１７】
図１は本発明の一実施形態に係るロボットの工具メンテナンス判定装置を有するロボットシステムの概略構成を示す説明図である。
【００１８】
図１中引用符号１で示す本実施形態のロボットは、ワーク１７（請求項中の被加工物に相当）の表面１７ａ（図４参照）を加工するものである。このワーク１７は、ロボット１の作業エリアに配置される。そして、本実施形態のロボット１は、円柱状の基台３上に設置された多関節型アーム５の先端にフランジ部９を有している。
【００１９】
多関節型アーム５は、基台３側から順に第１乃至第４の４つのアーム部６ａ〜６ｄを有している。基台３と第１アーム部６ａはＡ１軸６ｅで回転可能に連結されている。第１アーム部６ａと第２アーム部６ｂはＡ２軸６ｆで回転可能に連結されている。第２アーム部６ｂと第３アーム部６ｃはＡ３軸６ｇで回転可能に連結されている。第３アーム部６ｃの先端側（第４アーム部６ｄ側）はＡ４軸６ｈにより、基端側（第２アーム部６ｂ側）に対して回転可能とされている。第３アーム部６ｃと第４アーム部６ｄはＡ５軸６ｉで回転可能に連結されている。第４アーム部６ｄの先端には、Ａ６軸６ｊ及び力覚センサ１１を介してフランジ部９が回転可能に連結されている。
【００２０】
このように構成された本実施形態のロボット１においては、多関節型アーム５に内蔵したＡ１〜Ａ６の各軸６ｅ〜６ｊ用のロータリアクチュエータ５Ａ〜５Ｆ（図２参照）に、ロボットコントローラ３１から適切な制御値を与えることで、基台３に対して多関節型アーム５を適切な姿勢とする。
【００２１】
このような構成のロボット１は、位置ベクトルによって各部の位置及び姿勢を管理する。この位置及び姿勢の管理にはロボット座標系が用いられる。ロボット座標系は、ロボット原点Ｏを原点とする座標系である。このロボット原点Ｏは、基台３の設置面３ａの中心点に設定される。
【００２２】
なお、フランジ部９にはエンドエフェクタとしてのグラインダ１３が取り付けられている。グラインダ１３は、ワーク１７の表面１７ａを研磨加工するのに用いられる。
【００２３】
このグラインダ１３は、ロボット１の出荷段階ではフランジ部９に取り付けられていない。したがって、後述するロボットコントローラ３１がロボット１の位置及び姿勢を制御するために有しているロボット座標系における位置ベクトルのデータは、フランジ部９までの分だけである。フランジ部９に取り付けたグラインダ１３の位置及び姿勢の管理には、グラインダ１３の代表点であるツールセンターポイントＴＣＰを原点とするツール座標系が用いられる。
【００２４】
ツール座標系は、ロボット１の受け入れ側において行う較正作業によって、後からロボットコントローラ３１に設定される。ツール座標系の較正は、ロボット１のフランジ部９に対するグラインダ１３の取付点を原点とするロボット手先座標系を用いて行う。具体的には、ロボット手先座標系から見たツール座標系の相対的位置・姿勢を較正することで行う。そして、ロボット手先座標系から見たツール座標系の相対的位置・姿勢を記述する行列やベクトルを表すデータを、ロボットコントローラ３１に与える。
【００２５】
したがって、ロボットコントローラ３１では、ロボット座標系におけるロボット手先座標系の原点の位置ベクトルに基づいて、グラインダ１３のツールセンターポイントＴＣＰのロボット座標系における位置ベクトルを特定する。
【００２６】
図２は、図１のロボットの電気的な概略構成を示すブロック図である。図２に示すように、ロボットコントローラ３１は、ロボット座標系におけるグラインダ１３のツールセンターポイントＴＣＰの座標値を管理し、ロボット１の多関節型アーム５の動作を制御するために、ＣＰＵやＲＡＭ及びＲＯＭを有するコンピュータによって構成される。このロボットコントローラ３１には、ドライブ回路５Ｇ〜５Ｌと、ロータリセンサ５Ｍ〜５Ｒとが接続される。
【００２７】
ドライブ回路５Ｇ〜５Ｌはロータリアクチュエータ５Ａ〜５Ｆに対応している。ロータリアクチュエータ５Ａ〜５Ｆは、ロボット１の多関節型アーム５のＡ１軸乃至Ａ６軸６ｅ〜６ｊを回転させる駆動源である。ロータリセンサ５Ｍ〜５Ｒはロータリアクチュエータ５Ａ〜５Ｆに対応している。ロータリセンサ５Ｍ〜５Ｒは、対応するロータリアクチュエータ５Ａ〜５ＦによるＡ１軸乃至Ａ６軸６ｅ〜６ｊの各軸の回転方向及び回転角度（又は回転量）を検出する。
【００２８】
ロボットコントローラ３１は、力制御でロボット１の多関節型アーム５乃至グラインダ１３を移動させる。力制御では、外部からロボットコントローラ３１に、ワーク１７に対するグラインダ１３の押し付け力と、ロボット座標系におけるグラインダ１３のワーク１７に対する押し付け開始位置とを示すデータが入力される。
【００２９】
そして、ロボットコントローラ３１は、入力されたロボット座標系におけるワーク１７への押し付け開始位置にグラインダ１３を移動させるための、ロータリアクチュエータ５Ａ〜５Ｆの駆動信号を生成し、対応するドライブ回路５Ｇ〜５Ｌに出力する。
【００３０】
また、入力された押し付け力に相当する出力に力覚センサ１１の出力を保つように押し付け開始位置からグラインダ１３をワーク１７の表面１７ａに沿って移動させるための、ロータリアクチュエータ５Ａ〜５Ｆの駆動信号を生成し、対応するドライブ回路５Ｇ〜５Ｌに出力する。
【００３１】
さらに、ロボットコントローラ３１は、外部からの多関節型アーム５の姿勢を示すデータの出力要求に呼応して、要求時点におけるロータリセンサ５Ｍ〜５Ｒの出力を、ロボット１の姿勢データとして外部に出力する。
【００３２】
一方、制御用ＰＣ１９は、ワーク１７の表面１７ａをグラインダ１３で研磨加工するためのロボット１の力制御パターンを決定する処理を行うために、ＣＰＵやＲＡＭ及びＲＯＭを有するコンピュータによって構成される。ＲＡＭは、ＣＰＵがＲＯＭに格納されたプログラムを実行する際の作業エリア等として利用される。制御用ＰＣ１９には、ロボットコントローラ３１やロボット１の力覚センサ１１、後述するトルクセンサ１５が接続されている。
【００３３】
そして、制御用ＰＣ１９は、力覚センサ１１の出力を監視して、ワーク１７の表面１７ａに対するグラインダ１３の砥石１３ｂの押し付け力を一定に保つための指令内容を決定し、決定した指令内容のデータをロボットコントローラ３１に出力する。ロボットコントローラ３１は、制御用ＰＣ１９から受け取った指令内容と、グラインダ１３によるワーク１７の加工内容とに応じて、ロボット１の各ロータリアクチュエータ５Ａ〜５Ｆの駆動内容を決定し、それに応じた駆動信号を対応するドライブ回路５Ｇ〜５Ｌに出力する。
【００３４】
ところで、グラインダ１３は、スピンドルモータ１３ａ（請求項中の駆動源に相当）とこれによって回転される砥石１３ｂ（請求項中の手先の工具に相当）とを有している。砥石１３ｂは、図３の拡大斜視図に示すように、スピンドルモータ１３ａの回転軸１３ｃが一方の端面の中央に挿通された円柱状を呈している。ワーク１７の表面１７ａを研磨加工する際には、スピンドルモータ１３ａによって回転された砥石１３ｂの他方の端面の周縁部が、図４の説明図に示すように、ワーク１７の表面１７ａに押し当てられる。
【００３５】
上述したように、グラインダ１３は、多関節型アーム５と共に、ロボットコントローラ３１の力制御によってワーク１７に対して移動される。このため、砥石１３ｂのワーク１７に対する押し付け力Ｆは、多関節型アーム５の動作の制御を介してロボットコントローラ３１により目標の押し付け力Ｆ１を維持するように制御される。このような力制御を行うために、押し付け力Ｆに相当するグラインダ１３に加わる荷重とその方向が、フランジ部９に取り付けた力覚センサ１１によって検出される。力覚センサ１１の検出出力は、制御用ＰＣ１９（図１参照）に入力される。
【００３６】
ここで、例えば、砥石１３ｂの他方の端面側が接触長さｌ１でワーク１７の表面１７ａと接触し、目標の押し付け力Ｆ１で押し付けられている場合を想定する。このときのスピンドルモータ１３ａの回転トルクＴ１は、スピンドルモータ１３ａの回転数やワーク１７の表面１７ａの粗さ等に応じた比例定数をαとすると、Ｔ１＝α×ｌ１×Ｆ１の式によって表すことができる。
【００３７】
なお、以下の説明では、ロボット座標系における砥石１３ｂの位置を、砥石１３ｂの一方の端面に対するスピンドルモータ１３ａの回転軸１３ｃの挿通箇所Ｐの座標値で管理するものとする。また、本実施形態では、この挿通箇所Ｐを便宜的にグラインダ１３のツールセンターポイントＴＣＰであるものとする。そして、図４（ａ）に示す初期状態におけるツールセンターポイントＴＣＰ（挿通箇所Ｐ）のロボット座標系における位置座標Ｐ１を、Ｐ１（ｘ１，ｙ１，ｚ１）であるものとする。
【００３８】
この初期状態から、仮に、力制御を行わずにグラインダ１３の砥石１３ｂによりワーク１７の表面１７ａを研磨加工し続けると、砥石１３ｂが摩耗して砥石１３ｂのワーク１７に対する押し付け力Ｆが低下し、力覚センサ１１の出力が低下する。
【００３９】
そこで、砥石１３ｂのワーク１７に対する押し付け力Ｆが目標の押し付け力Ｆ１に保たれて、力覚センサ１１の低下した出力が元に戻るように、図４（ｂ）に示すように、ロボットコントローラ３１の制御により砥石１３ｂがワーク１７の表面１７ａに近づくようにグラインダ１３が移動される。
【００４０】
この移動により、グラインダ１３のツールセンターポイントＴＣＰは、図５の説明図に示すように、ツールセンターポイントＴＣＰの元の（初期状態における）位置座標Ｐ１（ｘ１，ｙ１，ｚ１）よりもワーク１７に近い、位置座標Ｐ２（ｘ２，ｙ２，ｚ２）に移動する。
【００４１】
このように、砥石１３ｂの摩耗が進んでグラインダ１３のツールセンターポイントＴＣＰが初期状態の位置座標Ｐ１から位置座標Ｐ２に移動すると、ワーク１７の表面１７ａに対する砥石１３ｂの接触長さｌが、砥石１３ｂが摩耗する前の、グラインダ１３の砥石１３ｂが位置座標Ｐ１にあったときの接触長さｌ１よりも長い接触長さｌ２となる。
【００４２】
このとき、スピンドルモータ１３ａの回転トルクＴ２は、Ｔ２＝α×ｌ２×Ｆ１の式によって表される。回転トルクＴ２は、ワーク１７に対する砥石１３ｂの接触長さｌがｌ１からｌ２に増加するので、これに比例して、図６の説明図に示すように、元の回転トルクＴ１よりも上昇する。
【００４３】
砥石１３ｂの摩耗が進むにつれて、スピンドルモータ１３ａの回転トルクＴがＴ１からＴ２に増加するということは、砥石１３ｂの摩耗が進むにつれてワーク１７の表面１７ａから砥石１３ｂが受ける加工面圧が上がるということである。砥石１３ｂがワーク１７側から受ける加工面圧が上がると、砥石１３ｂからスピンドルモータ１３ａが受ける負荷が増加する。スピンドルモータ１３ａの負荷が増加すると、スピンドルモータ１３ａの回転が過負荷によって頻繁に低下したり停止するようになり、グラインダ１３によるワーク１７の研磨加工にムラが生じたり研磨加工が行えなくなってしまう。
【００４４】
このように、砥石１３ｂの摩耗に伴いグラインダ１３のツールセンターポイントＴＣＰをワーク１７側に移動させると、その移動量に比例して、ワーク１７に対する砥石１３ｂの接触長さｌが増加する。そして、ワーク１７に対する砥石１３ｂの接触長さｌが増加すると、スピンドルモータ１３ａの回転トルクＴが増加する。
【００４５】
そこで、本実施形態では、制御用ＰＣ１９が、グラインダ１３のツールセンターポイントＴＣＰの初期状態の座標位置Ｐ１からの移動量Ｌや、ワーク１７の表面１７ａに対する砥石１３ｂの接触長さｌに比例する、スピンドルモータ１３ａの回転トルクＴを基準にして、グラインダ１３の砥石１３ｂをドレッシングするタイミングを判定する。
【００４６】
そのために、本実施形態のロボット１では、スピンドルモータ１３ａの回転トルクＴ（請求項中の負荷状態に相当）を、図１に示す、スピンドルモータ１３ａに内蔵されたトルクセンサ１５（請求項中の負荷状態センサに相当）によって検出する。トルクセンサ１５の出力は、制御用ＰＣ１９に入力される。
【００４７】
なお、砥石１３ｂのドレッシングは、ロボット１の近傍に配置されたドレッシングテーブル２１上のドレッシング用のダイヤモンド電着砥石２１ａに、砥石１３ｂの先端を回転させながら押し付けることで行う。このドレッシングにより、図７（ａ）に示すように、砥石１３ｂの他方の端面側から中心軸方向に砥石１３ｂが研磨される。これにより、ワーク１７の表面１７ａとの接触長さｌ２が、図７（ｂ）に示すように、ｌ１の接触長さに減り、砥石１３ｂがワーク１７側から受ける加工面圧が元の高さに下がる。
【００４８】
次に、制御用ＰＣ１９のＣＰＵがＲＯＭに格納されたプログラムにしたがって行う、グラインダ１３の砥石１３ｂのドレッシングを行うタイミングの判定に関する制御を、図８のフローチャートを参照して説明する。
【００４９】
まず、制御用ＰＣ１９のＣＰＵは、ロボットコントローラ３１に対してグラインダ１３によるワーク１７の表面１７ａの研磨加工工程の開始を指令する（ステップＳ１）。これにより、ロボットコントローラ３１のＣＰＵは、砥石１３ｂがワーク１７の表面１７ａに目標の押し付け力Ｆ１で押し付けられるように、ロボット１の多関節型アーム５によってグラインダ１３を移動させる。
【００５０】
次に、制御用ＰＣ１９のＣＰＵは、力覚センサ１１の出力から、ワーク１７の表面１７ａに対するグラインダ１３の砥石１３ｂの押し付け力Ｆが、目標の押し付け力Ｆ１よりも低いか否かを確認する（ステップＳ３）。
【００５１】
目標の押し付け力Ｆ１よりも低い場合は（ステップＳ３でＹＥＳ）、制御用ＰＣ１９のＣＰＵは、砥石１３ｂをワーク１７に押し付ける方向にロボット１の多関節型アーム５を移動させる指令を、ロボットコントローラ３１に対して出力する（ステップＳ５）。
【００５２】
一方、目標の押し付け力Ｆ１よりも低くない場合は（ステップＳ３でＮＯ）、制御用ＰＣ１９のＣＰＵは、砥石１３ｂをワーク１７から離す方向にロボット１の多関節型アーム５を移動させる指令を、ロボットコントローラ３１に対して出力する（ステップＳ７）。
【００５３】
そして、制御用ＰＣ１９のＣＰＵは、スピンドルモータ１３ａの回転トルクＴが、ワーク１７の表面１７ａに対するグラインダ１３の砥石１３ｂの押し付け力Ｆが目標の押し付け力Ｆ１であるときの回転トルクＴ１（以下、「目標の回転トルクＴ１」と称する。請求項中の基準の負荷状態に相当）よりも大きいか否かを確認する（ステップＳ９）。
【００５４】
ここで、目標の回転トルクＴ１の算出式、即ち、砥石１３ｂの押し付け力Ｆが目標の押し付け力Ｆ１であるときの回転トルクＴ１の算出式は、上述したように、スピンドルモータ１３ａの回転数やワーク１７の表面１７ａの粗さ等に応じた比例定数αを係数として有している。このため、目標の回転トルクＴ１は、ワーク１７の加工条件に応じて定まる値であることになる。
【００５５】
スピンドルモータ１３ａの回転トルクＴが目標の回転トルクＴ１よりも大きくない場合は（ステップＳ９でＮＯ）、ステップＳ３にリターンする。一方、目標の回転トルクＴ１よりも大きい場合は（ステップＳ９でＹＥＳ）、制御用ＰＣ１９のＣＰＵは、グラインダ１３のツールセンターポイントＴＣＰのデフォルト点からの移動量Ｌが、許容範囲内であるか否かを確認する（ステップＳ１１）。
【００５６】
ここで、グラインダ１３のツールセンターポイントＴＣＰのデフォルト点は、前回の砥石１３ｂのドレッシングの終了地点となる。なお、砥石１３ｂのドレッシングをまだ行っていない場合は、初期状態におけるグラインダ１３のツールセンターポイントＴＣＰの座標位置Ｐ１がデフォルト点となる。
【００５７】
また、移動量Ｌの許容範囲とは、砥石１３ｂが受ける加工面圧（スピンドルモータ１３ａの回転トルクＴ）が許容範囲の上限に達するまで、ワーク１７の表面１７ａに対する砥石１３ｂの接触長さｌが増えない範囲のことである。
【００５８】
即ち、ステップＳ１１の確認は、スピンドルモータ１３ａの回転トルクＴが目標の回転トルクＴ１を超えるまで増加した場合に、その原因が、摩耗に伴う砥石１３ｂの移動によるワーク１７の表面１７ａとの接触長さｌの増加ではない別の原因であるかどうかを判断するためである。
【００５９】
そして、グラインダ１３のツールセンターポイントＴＣＰのデフォルト点からの移動量Ｌが許容範囲の上限以内である場合は（ステップＳ１１でＹＥＳ）、スピンドルモータ１３ａの回転トルクＴの増加が、砥石１３ｂとワーク１７の表面１７ａとの接触長さｌの増加以外の原因であるものとして、後述するステップＳ１７に移行する。
【００６０】
一方、移動量Ｌが許容範囲の上限を超えている場合は（ステップＳ１１でＮＯ）、スピンドルモータ１３ａの回転トルクＴの増加が、砥石１３ｂとワーク１７の表面１７ａとの接触長さｌの増加が原因であるものとして、制御用ＰＣ１９のＣＰＵは、砥石１３ｂのドレッシング工程の開始させる指令を、ロボットコントローラ３１に対して出力する（ステップＳ１３）。
【００６１】
これにより、ロボットコントローラ３１のＣＰＵは、図７（ａ），（ｂ）を参照し先に説明したように、砥石１３ｂの先端がドレッシングテーブル２１上のドレッシング用のダイヤモンド電着砥石２１ａに回転しながら押し付けられるように、ロボット１の多関節型アーム５によってグラインダ１３を移動させる。
【００６２】
ここで、砥石１３ｂのドレッシング量は、砥石１３ｂの中心軸方向の寸法が予め決めておいた一定量短くなる量としても良い。あるいは、ステップＳ９で目標の回転トルクＴ１と比較したスピンドルモータ１３ａの回転トルクＴの値や、ステップＳ１１で許容範囲内であるかどうか確認したグラインダ１３のツールセンターポイントＴＣＰのデフォルト点からの移動量Ｌに応じてその都度決定される量としても良い。
【００６３】
そして、制御用ＰＣ１９のＣＰＵは、ロボットコントローラ３１から通知を受け取ったか否かによって、砥石１３ｂのドレッシングが終了したか否かを確認する（ステップＳ１５）。終了していない場合は（ステップＳ１５でＮＯ）、ステップＳ１３にリターンする。一方、終了した場合は（ステップＳ１５でＹＥＳ）、ステップＳ３にリターンする。
【００６４】
ステップＳ１１でツールセンターポイントＴＣＰの移動量Ｌが許容範囲の上限以内である場合（ＹＥＳ）に進むステップＳ１７では、制御用ＰＣ１９のＣＰＵは、ロボットコントローラ３１からの通知を受け取ったか否かによって、ステップＳ１で開始指令したワーク１７の表面１７ａの研磨加工工程が終了したか否かを確認する（ステップＳ１７）。研磨加工工程が終了していない場合は（ステップＳ１７でＮＯ）、ステップＳ３にリターンし、終了した場合は（ステップＳ１７でＹＥＳ）、一連の処理を終了する。
【００６５】
以上の説明からも明らかなように、本実施形態のロボットシステムでは、図８のフローチャートにおけるステップＳ９及びステップＳ１１が、請求項中の判定部に対応する処理となっている。また、本実施形態のロボットシステムでは、図８中のステップＳ１３及びステップＳ１５と、ステップＳ１３の指令出力に呼応してロボットコントローラ３１のＣＰＵが行う砥石１３ｂのドレッシングに関する処理とが、請求項中のメンテナンス動作制御部に対応する処理となっている。
【００６６】
以上に説明したように、本実施形態のロボットシステムによれば、グラインダ１３の砥石１３ｂをワーク１７の表面１７ａに押し付け力Ｆ１で押し付けて表面１７ａの研磨加工を行う場合、砥石１３ｂの摩耗が進むと表面１７ａとの接触長さｌが増加する。すると、砥石１３ｂがワーク１７から受ける加工面圧が増加し、トルクセンサ１５が検出するスピンドルモータ１３ａの回転トルクＴが増加する。
【００６７】
そこで、スピンドルモータ１３ａの回転トルクＴが、砥石１３ｂと表面１７ａとが接触長さｌ１で接触するときのスピンドルモータ１３ａの回転トルクＴ１を超え、かつ、グラインダ１３のツールセンターポイントＴＣＰの移動量Ｌが許容範囲の上限を超えると、グラインダ１３の砥石１３ｂをドレッシングしてワーク１７の表面１７ａとの接触長さｌを減らすようにした。
【００６８】
このため、ドレッシングが必要になるまで砥石１３ｂが摩耗したタイミングで砥石１３ｂのドレッシングを行うようにして、必要以上に砥石１３ｂがドレッシングにより消耗されてしまうのを防ぐことができる。
【００６９】
なお、本実施形態では、グラインダ１３のツールセンターポイントＴＣＰの初期状態の座標位置Ｐ１からの移動量Ｌと、ワーク１７の表面１７ａに対する砥石１３ｂの接触長さｌに比例する、スピンドルモータ１３ａの回転トルクＴとを基準にして、グラインダ１３の砥石１３ｂをドレッシングするタイミングを判定した。しかし、グラインダ１３の移動量Ｌとスピンドルモータ１３ａの回転トルクＴとのどちらか一方だけを基準にして、ドレッシングタイミングを判定してもよい。
【００７０】
即ち、スピンドルモータ１３ａの回転トルクＴが目標の回転トルクＴ１を超えるまで増加した場合に（図８のステップＳ９でＹＥＳ）、砥石１３ｂのドレッシング工程の開始させる指令を、ロボットコントローラ３１に対して出力する（ステップＳ１３）ようにしてもよい。この場合は、図８のステップＳ１１で行った、グラインダ１３のツールセンターポイントＴＣＰのデフォルト点からの移動量Ｌが許容範囲の上限以内であるか否かの判定が、不要となる。
【００７１】
また、グラインダ１３のツールセンターポイントＴＣＰのデフォルト点からの移動量Ｌが許容範囲の上限を超えている場合に（図８のステップＳ１１でＮＯ）、砥石１３ｂのドレッシング工程の開始させる指令を、ロボットコントローラ３１に対して出力する（ステップＳ１３）ようにしてもよい。この場合は、図８のステップＳ９で行った、スピンドルモータ１３ａの回転トルクＴが目標の回転トルクＴ１よりも大きいか否かの判定が、不要となる。
【００７２】
さらに、グラインダ１３の砥石１３ｂをドレッシングするタイミングの判定は、スピンドルモータ１３ａの回転トルクＴやグラインダ１３の移動量Ｌと基準値との比較の他、スピンドルモータ１３ａの回転トルクＴに対応する物理量とその基準値との比較によって行うこともできる。
【００７３】
なお、本実施形態では、ドレッシングが必要になった時点で実際に砥石１３ｂのドレッシングを行うものとしたが、砥石１３ｂのドレッシングが必要になったことを表示や音声等で通知するだけにしてもよい。
【００７４】
また、本実施形態では、使用に伴い砥石１３ｂのドレッシングが必要になるグラインダ１３を工具（エンドエフェクタ）として多関節型アーム５のフランジ部９に取り付けたロボット１を例に取って説明した。しかし、本発明は、使用に伴いドレッシング以外の、例えば交換や砥粒の薄め液の追加滴下等がメンテナンスとして必要となる工具についても広く適用可能である。
【符号の説明】
【００７５】
１  ロボット
３  基台
３ａ  設置面
５  多関節型アーム
５Ａ〜５Ｆ  ロータリアクチュエータ
５Ｇ〜５Ｌ  ドライブ回路
５Ｍ〜５Ｒ  ロータリセンサ
６ａ  第１アーム部
６ｂ  第２アーム部
６ｃ  第３アーム部
６ｄ  第４アーム部
６ｅ  Ａ１軸
６ｆ  Ａ２軸
６ｇ  Ａ３軸
６ｈ  Ａ４軸
６ｉ  Ａ５軸
６ｊ  Ａ６軸
９  フランジ部
１１  力覚センサ
１３  グラインダ
１３ａ  スピンドルモータ（駆動源）
１３ｂ  砥石（手先の工具）
１３ｃ  スピンドルモータ回転軸
１５  トルクセンサ（負荷状態センサ）
１７  ワーク（被加工物）
１９  制御用ＰＣ（判定部、メンテナンス動作制御部）
２１  ドレッシングテーブル
２１ａ  ダイヤモンド電着砥石
３１  ロボットコントローラ（メンテナンス動作制御部）
ＴＣＰ  ツールセンターポイント
【図１】
0006620401.tif 000002
【図２】
0006620401.tif 000003
【図３】
0006620401.tif 000004
【図４】
0006620401.tif 000005
【図５】
0006620401.tif 000006
【図６】
0006620401.tif 000007
【図７】
0006620401.tif 000008
【図８】
0006620401.tif 000009