(57)【特許請求の範囲】
【請求項１】
加工ツールを用いてワークに対する加工工程を実行するロボットシステムであって、
前記加工ツール及び前記ワークのいずれか一方を保持し、前記加工ツール及び前記ワークを互いに対して相対移動させるように動作するロボットと、
前記加工ツール又は前記ワークが取付けられていて、前記ロボットと協働して前記加工ツール又は前記ワークの作用点の位置を変更する１自由度以上のアクチュエータと、
前記ロボットの動作を制御する制御装置と、を備えており、
前記制御装置は、
予め定められる動作軌道に従って前記ロボットを動作させるロボット制御部と、
前記加工ツールと前記ワークとの間に作用する力を検出する力検出部と、
前記アクチュエータに取付けられた前記加工ツール又は前記ワークの作用点の現在位置を検出する位置検出部と、
前記力検出部により検出される力が予め定められる値に近づくように、前記アクチュエータに取付けられた前記加工ツール又は前記ワークの作用点の目標位置を求める力制御部と、
前記加工ツール又は前記ワークの作用点の前記目標位置に応じて、前記ロボットの動作軌道の位置補正量及び前記アクチュエータの位置補正量を算出する位置補正部と、
を備えており、
前記位置補正部によって単位時間ごとに算出される前記ロボットの動作軌道の位置補正量が、予め定められる値以下に制限されるようになる、ロボットシステム。
【請求項２】
前記アクチュエータ及び該アクチュエータの位置を検出する位置センサが、前記ロボットの手首部に設けられており、
前記ワークが前記ロボットの可動範囲内に配置されている、請求項１に記載のロボットシステム。
【請求項３】
前記ロボットが前記ワークを保持できるように形成されており、
前記アクチュエータ及び該アクチュエータの位置を検出する位置センサが、前記ロボットの可動範囲内の所定位置に固定されている、請求項１に記載のロボットシステム。
【請求項４】
前記アクチュエータ及び該アクチュエータの位置を検出する位置センサが、前記ロボットの手首部に設けられており、
前記加工ツールが、前記ロボットの可動範囲内の所定位置に固定されている、請求項１に記載のロボットシステム。
【請求項５】
前記加工ツールが前記ロボットの手首部に取付けられており、
前記アクチュエータ及び該アクチュエータの位置を検出する位置センサが、前記ロボットの可動範囲内の所定位置に固定されている、請求項１に記載のロボットシステム。
【請求項６】
前記制御装置が、前記アクチュエータの可動範囲の上限または下限に達したときに、前記ロボットをアラーム停止させること、又は前記ロボットの現在の位置及び姿勢と、前記アクチュエータの現在の位置とのうちの少なくとも一方を記録すること、のうちの少なくとも一方を実行する実行部をさらに備える、請求項１から５のいずれか１項に記載のロボットシステム。
【請求項７】
前記制御装置が、前記ロボットの前記動作軌道を、前記位置補正部により算出される位置補正量に従って補正されたロボットの動作軌道に置き換える置換部をさらに備える、請求項１から６のいずれか１項に記載のロボットシステム。
【請求項８】
前記加工ツールと前記ワークとの間に作用する力を検出する力センサが、前記ロボットの手首部に取付けられている、請求項１から７のいずれか１項に記載のロボットシステム。
【請求項９】
前記加工ツールと前記ワークとの間に作用する力を検出する力センサが、前記ロボットの可動範囲内の所定位置に固定されている、請求項１から７のいずれか１項に記載のロボットシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、加工ツールをワークに対して所定の力で押圧しながら、それら加工ツール及びワークを相対移動させることによって、ワークに対して所定の加工工程を実行するロボットシステムに関する。
【背景技術】
【０００２】
ロボットを用いてワークの研磨又はバリ取りを実行するロボットシステムが公知である。このようなロボットシステムでは、ロボットの手首に取り付けられた加工ツール（グラインダ、サンダなど）を、ロボットの可動範囲内に位置決めされたワークの表面に対して押圧しながらロボットを動作させる。或いは、ロボットによりワークを把持し、ワークをロボットの可動範囲内に固定された加工ツールに対して押圧しながらロボットを動作させる。ところで、ワークの位置決め、又はロボットによるワークの把持位置には誤差が生じることがある。或いはワークの個体差又は加工ツールの摩耗量などに起因して加工ツールとワークとの位置関係に誤差が生じることがある。そのような誤差に起因して加工品質が低下するのを防止するため、種々の方法が提案されている。
【０００３】
特許文献１には、ロボット手首と研磨又はバリ取り用の工具との間にコンプライアンス機構を備えたロボットにおいて、工具がワークに当接するようにロボットの動作軌道を教示する方法が開示されている。この公知技術によれば、ワークの位置決め誤差、把持位置の誤差、又はワークの形状ないし寸法に個体差がある場合でも、コンプライアンス機構のストローク範囲内であれば、それら誤差を吸収でき、ワークの研磨又はバリ取りを適切に実行できる。
【０００４】
特許文献２及び特許文献３には、ロボット手首と研磨又はバリ取り用の工具との間に、アクチュエータを備えた力制御機構が取付けられたロボットにおいて、工具がワークに当接するようにロボットの動作軌道を教示する方法が開示されている。この公知技術によれば、ワークの位置決め誤差、把持位置の誤差、又はワークの形状ないし寸法に個体差がある場合でも、工具とワークとの間の接触力が一定になるように制御される。したがって、力制御機構のストローク範囲内であれば、種々の要因に起因する誤差を吸収できる。
【０００５】
特許文献４及び特許文献５には、ロボット手首と研磨又はバリ取り用の工具の間に力センサを備えたロボットにおいて、工具がワークに当接するようにロボットの動作軌道を教示する方法が開示されている。この公知技術によれば、インピーダンス制御、又はハイブリッド制御などの公知の方法で力制御を行い、工具とワークとの間の接触力が一定になるようにロボットが制御される。この公知技術によれば、工具を所定の力で任意の方向からワークに対して押圧できる。また、ロボットの可動範囲は大きいので、理論上は大きな誤差を吸収できる。
【０００６】
特許文献６には、コンプライアンス機構を手首部に備えたロボットを用いて、研磨又はバリ取り用の工具がワークに当接するようにロボットの動作軌道を教示する方法が開示されている。この公知技術によれば、工具がワークから受ける反力を測定し、その反力が所定の値になるようにロボット軌道をリアルタイムで補正する。
【０００７】
特許文献７には、力覚センサ及び流体圧シリンダ装置を備えたロボットシステムにおいて、力覚センサの検出データに基づいて、ロボットの目標速度、目標軌道、流体圧シリンダ装置の目標押圧力、加工工具の目標動作速度の内、少なくとも１つを調整する方法が開示されている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００９-１７２６９２号公報
【特許文献２】米国特許５４４８１４６号明細書
【特許文献３】特開平６-２２６６７１号公報
【特許文献４】特開昭６０-１５５３５６号公報
【特許文献５】特開平８-０８７３３６号公報
【特許文献６】特開平２-０１５９５６号公報
【特許文献７】特開２０１１−０４１９９２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
特許文献１に記載の方法では、コンプライアンス機構に柔軟な部位が含まれる場合、コンプライアンス機構が水平方向に向けられたとき、又は鉛直方向に対して傾斜させられたときに、コンプライアンス機構が重力により変形してしまう。その結果、位置誤差を吸収できなくなったり、又は過度の押圧力が発生したりすることがある。また、位置誤差又はワークの個体差の合計がコンプライアンス機構のストロークより大きい場合には、誤差を吸収できなくなる。コンプライアンス機構がバネで構成される場合は、位置誤差の大きさと押圧力が比例する関係にあるので、場所に応じて押圧力が変化することになり、加工品質が一定にならない。
【００１０】
特許文献２及び特許文献３に記載の方法は、力制御機構が水平方向に向けられたり、鉛直方向に対して傾斜させられたりしても、機構部が変形する問題はない。しかしながら、特許文献１に記載の方法と同様に、コンプライアンス機構のストロークより大きな誤差を吸収することはできない。
【００１１】
特許文献４及び特許文献５に記載の方法は、ロボット本体の動作を通じて押圧力の制御を行うので、力制御の応答性は、ロボット本体の質量、イナーシャ及び剛性、並びにロボットを駆動するアクチュエータの性能などに影響を受ける。一般的に、機構部の質量及びイナーシャが大きくなるほど、応答性は低下する傾向にある。したがって、大型のロボットでは力制御の応答性が不十分になり、要求される加工品質を達成できないことがある。同様に、特許文献６に記載の方法も、押圧力制御の応答性は、ロボット本体の質量、イナーシャ及び剛性、並びにロボットを駆動するアクチュエータの性能などに影響を受ける。
【００１２】
特許文献７に記載の方法によれば、流体圧シリンダの変位量を測定し、その流体圧シリンダの位置が機械的な上限に達したときに、ロボットの目標軌道を修正する。そのため、流体圧シリンダのストロークより大きな誤差量も吸収可能である。しかしながら、ストロークが上限に達して初めてロボットの軌道が修正されるので、短時間ながら工具とワークとが非接触状態になったり、過剰な押圧力が発生したりする虞がある。
【００１３】
したがって、位置決め誤差、又はワークの形状ないし寸法に個体差があるような場合であっても、バリ取り又は研磨などの所定の加工工程を適切に実行できるロボットシステムが求められている。
【課題を解決するための手段】
【００１４】
１番目の発明によれば、加工ツールを用いてワークに対する加工工程を実行するロボットシステムであって、前記加工ツール及び前記ワークのいずれか一方を保持し、前記加工ツール及び前記ワークを互いに対して相対移動させるように動作するロボットと、前記加工ツール又は前記ワークが取付けられていて、前記ロボットと協働して前記加工ツール又は前記ワークの作用点の位置を変更する１自由度以上のアクチュエータと、前記ロボットの動作を制御する制御装置と、を備えており、前記制御装置は、予め定められる動作軌道に従って前記ロボットを動作させるロボット制御部と、前記加工ツールと前記ワークとの間に作用する力を検出する力検出部と、前記アクチュエータに取付けられた前記加工ツール又は前記ワークの作用点の現在位置を検出する位置検出部と、前記力検出部により検出される力が予め定められる値に近づくように、前記アクチュエータに取付けられた前記加工ツール又は前記ワークの作用点の目標位置を求める力制御部と、前記加工ツール又は前記ワークの作用点の前記目標位置に応じて、前記ロボットの動作軌道の位置補正量及び前記アクチュエータの位置補正量を算出する位置補正部と、を備えており、前記位置補正部によって単位時間ごとに算出される前記ロボットの動作軌道の位置補正量が、予め定められる値以下に制限されるようになる、ロボットシステムが提供される。
２番目の発明によれば、１番目の発明に係るロボットシステムにおいて、前記アクチュエータ及び該アクチュエータの位置を検出する位置センサが、前記ロボットの手首部に設けられており、前記ワークが前記ロボットの可動範囲内に配置されている。
３番目の発明によれば、１番目の発明に係るロボットシステムにおいて、前記ロボットが前記ワークを保持できるように形成されており、前記アクチュエータ及び該アクチュエータの位置を検出する位置センサが、前記ロボットの可動範囲内の所定位置に固定されている。
４番目の発明によれば、１番目の発明に係るロボットシステムにおいて、前記アクチュエータ及び該アクチュエータの位置を検出する位置センサが、前記ロボットの手首部に設けられており、前記加工ツールが、前記ロボットの可動範囲内の所定位置に固定されている。
５番目の発明によれば、１番目の発明に係るロボットシステムにおいて、前記加工ツールが前記ロボットの手首部に取付けられており、前記アクチュエータ及び該アクチュエータの位置を検出する位置センサが、前記ロボットの可動範囲内の所定位置に固定されている。
６番目の発明によれば、１番目から５番目のいずれかの発明に係るロボットシステムにおいて、前記制御装置が、前記アクチュエータの可動範囲の上限または下限に達したときに、前記ロボットをアラーム停止させること、又は前記ロボットの現在の位置及び姿勢と、前記アクチュエータの現在の位置とのうちの少なくとも一方を記録すること、のうちの少なくとも一方を実行する実行部をさらに備える。
７番目の発明によれば、１番目から６番目のいずれかの発明に係るロボットシステムにおいて、前記制御装置が、前記ロボットの前記動作軌道を、前記位置補正部により算出される位置補正量に従って補正されたロボットの動作軌道に置き換える置換部をさらに備える。
８番目の発明によれば、１番目から７番目のいずれかの発明に係るロボットシステムにおいて、前記加工ツールと前記ワークとの間に作用する力を検出する力センサが、前記ロボットの手首部に取付けられている。
９番目の発明によれば、１番目から７番目のいずれかの発明に係るロボットシステムにおいて、前記加工ツールと前記ワークとの間に作用する力を検出する力センサが、前記ロボットの可動範囲内の所定位置に固定されている。
【００１５】
これら及び他の発明の目的、特徴及び利点は、添付図面に示される本発明の例示的な実施形態に係る詳細な説明を参照することによって、より明らかになるであろう。
【発明の効果】
【００１６】
本発明によれば、ワークの位置決め誤差が大きかったり、ワークの形状ないし寸法に個体差があったりするような場合であっても、ワークのバリ取り又は研磨などの加工工程を適切に実行できる。また、力制御の応答性は、ロボットから独立して制御される１自由度以上のアクチュエータの性能に応じて決まるので、ロボットの構成にかかわらず良好な加工品質を達成できる。
【図面の簡単な説明】
【００１７】
【図１】一実施形態に係るロボットシステムの概略構成を示す図である。
【図２】一実施形態に係るロボットシステムの機能ブロック図である。
【図３】１自由度を有するアクチュエータを備えた加工ツールの概略構成を示す図である。
【図４】２自由度を有するアクチュエータを備えた加工ツールの概略構成を示す図である。
【図５Ａ】ロボットの動作軌道に沿って移動する加工ツールを示す図である。
【図５Ｂ】ロボットの動作軌道に沿って移動する加工ツールを示す図である。
【図６】一実施形態に係るロボットシステムにおいて実行される処理の流れを示すフローチャートである。
【図７】別の実施形態に係るロボットシステムの概略構成を示す図である。
【図８】別の実施形態に係るロボットシステムの概略構成を示す図である。
【図９】別の実施形態に係るロボットシステムの概略構成を示す図である。
【図１０】別の実施形態に係るロボットシステムの概略構成を示す図である。
【図１１】別の実施形態に係るロボットシステムの概略構成を示す図である。
【図１２】別の実施形態に係るロボットシステムの機能ブロック図である。
【図１３】別の実施形態に係るロボットシステムの機能ブロック図である。
【発明を実施するための形態】
【００１８】
以下、添付図面を参照して本発明の実施形態を説明する。本発明の理解を助けるため、図示される各構成要件の縮尺は適宜変更されている。同一又は対応する構成要素には、同一の参照符号が使用される。
【００１９】
図１は、一実施形態に係るロボットシステムの概略構成を示している。ロボットシステム１０は、ロボット２によりワーク７のバリ取り又は研磨などの加工工程を実行するのに使用される。ロボット２は、例えば図示されるような６軸の多関節ロボットである。他の構成を有する任意の公知のロボット２が使用されてもよい。ロボット２は、通信ケーブル１１などの公知の通信手段を介して制御装置３から送出される制御指令に従って、位置及び姿勢を変更できるようになっている。
【００２０】
ロボット２のアーム２１の先端に設けられた手首部２２には、力センサ４、アクチュエータ５、及び加工ツール６が取付けられている。アクチュエータ５と手首部２２との間に設けられた力センサ４は、加工ツール６に作用する外力を検出する。すなわち、力センサ４は、ワーク７に対する加工を実行する際に、ワーク７に対して押圧される加工ツール６に作用する反力を検出できるようになっている。加工ツール６は、例えばグラインダ、サンダなどのバリ取り又は研磨などの加工に使用される公知の工具である。
【００２１】
アクチュエータ５には、手首部２２とは反対側の端部に加工ツール６が取付けられている。アクチュエータ５は、ロボット２の動作機構とは別個に１以上の自由度を有する。アクチュエータ５は、例えばサーボモータ、空気圧シリンダ、油圧シリンダなどから動力を受けるように形成される。例えば、アクチュエータ５がサーボモータによって駆動される場合、ボールねじなどを介して回転運動が直線運動に変換される。アクチュエータ５は、後述する力制御部３３による力制御に従って動作し、加工ツール６の作用点６１の位置を調整できるようになっている。加工ツール６の作用点６１は、加工工程においてワーク７に接触する箇所である。
【００２２】
アクチュエータ５は、アクチュエータ５の位置を検出する位置センサ５１を備えている。位置センサ５１により検出されるアクチュエータ５の位置に基づいて、加工ツール６の作用点６１の位置が算出される。位置センサ５１は、例えばパルスエンコーダ、レゾルバ又はリニアスケールなどである。
【００２３】
図３は、加工ツール６を移動させるアクチュエータ５の構成例を示している。図示されるアクチュエータ５は１自由度を有していて、加工ツール６を矢印Ａ３で示される方向（Ｘ軸に対して平行な方向）に移動可能である。ワーク７に対する加工を実行する際、加工ツール６の作用点６１は、ワーク７に対する押圧力が所定の値になる目標位置に向かってアクチュエータ５によって移動させられる。アクチュエータ５による加工ツール６の作用点６１の可動範囲は、アクチュエータ５のボールねじの長さ、又はシリンダの可動範囲などに応じて定まる。
【００２４】
図４は、加工ツール６を移動させるアクチュエータ５の別の構成例を示している。図示されるアクチュエータ５は２自由度を有していて、加工ツール６を矢印Ａ４１，Ａ４２で示される方向（Ｘ軸及びＹ軸に対してそれぞれ平行な方向）に移動可能である。この場合、アクチュエータ５は、Ｘ軸方向及びＹ軸方向のそれぞれにおいて力制御に従って動作し、それにより、加工ツール６が、加工ツール６とワーク７との間に作用するＸ−Ｙ平面における力が所定の値になる目標位置に向かって移動させられる。Ｘ−Ｙ平面における加工ツール６の作用点６１の可動範囲は、アクチュエータ５のボールねじの長さ、又はシリンダの可動範囲などに応じて定まる。
【００２５】
ワーク７は、ロボット２の可動範囲内の所定の位置に位置決めされている。或いは、ワーク７は、ロボット２の可動範囲内の未知の位置に設けられていてもよい。ロボットシステム１０は、ワーク７に対して加工ツール６を所定の力で押圧しながら、ロボット２の位置及び姿勢を変更し、加工ツール６を、ワーク７の表面７ａのバリが形成された部位又は研磨対象の部位に沿って移動させることによって、ワーク７を加工する。
【００２６】
制御装置３は、ＣＰＵと、ＲＯＭと、ＲＡＭと、入力デバイス及び表示デバイスなどの外部装置との間で信号及びデータを送受信するインタフェースと、を含むハードウェア構成を有するデジタルコンピュータである。制御装置３は、予め定められる制御周期で後述する種々の機能を実行する。
【００２７】
図２は、ロボットシステム１０の機能ブロック図である。図示されるように、制御装置３は、ロボット制御部３１と、力検出部３２と、力制御部３３と、位置検出部３４と、位置補正部３５と、を備えている。
【００２８】
ロボット制御部３１は、ロボット２の手首部２２に設けられている加工ツール６の作用点６１が、予め定められる動作軌道に沿って移動するように、ロボット２に対する制御指令を生成する。ロボット制御部３１によって生成される制御指令に従って、ロボット２の各関節軸に設けられたサーボモータに駆動電流が供給されるようになっている。
【００２９】
力検出部３２は、ロボット２の手首部２２に設けられた力センサ４によって、加工ツール６とワーク７の間に作用する力を検出する。力センサ４は、例えば歪みゲージを利用するセンサ、静電容量の変化を検出して力を求めるセンサ、又は歪みを光学的に検出するセンサなどである。力センサ４は任意の公知の力センサであってよく、特定の検出原理には限定されない。力センサ４は、１方向の力を検出できるセンサであってもよいし、或いは必要に応じて互いに直交する２方向又は３方向の力を検出するセンサであってもよい。
【００３０】
力制御部３３は、加工ツール６とワーク７との間に作用する力が所定の値に近づくようにアクチュエータ５の位置を制御する。力制御部３３は、例えばインピーダンス制御、ダンピング制御、剛性制御、ハイブリッド制御などを利用して力制御を実行する。力制御の応答性は、アクチュエータ５及びその制御装置の性能、アクチュエータ５にかかる負荷の大きさなどに応じて定まる。本実施形態において、アクチュエータ５にかかる負荷は、主として加工ツール６及び加工ツール６の取付部品に起因するものであって比較的小さい。したがって、アクチュエータ５は、力制御に対して良好な応答性を有する。アクチュエータ５を制御する制御装置が、ロボット２を制御する制御装置３とは別個に設けられていてもよい。その場合、力制御部３３及び後述する位置補正部３５の一部の機能は、制御装置３とは別個のコンピュータに実装される。
【００３１】
位置検出部３４は、アクチュエータ５に備え付けられた位置センサ５１からアクチュエータ５の位置を検出する。さらに、位置検出部３４は、アクチュエータの位置から加工ツール６の作用点６１をさらに演算により求めることができる。
【００３２】
次に、ロボット２及びアクチュエータ５をデジタル制御する方式について説明する。
インピーダンス制御に基づいて、以下の式（１）を満足するように力制御を一定の制御周期Δｔで実行する。なお、アクチュエータ５は、図３に例示した１自由度を有するアクチュエータであり、アクチュエータ５の移動方向は位置センサ５１に対して設定される座標系のＸ軸方向とする。
【００３３】
【数１】
0005927259.tif 000002
【００３４】
なお、式（１）のマス係数、ダンパ係数及びバネ係数、並びに加工ツール６の設定位置、設定速度及び設定加速度、並びに力目標値は、オペレータによって入力される設定値である。加工ツール６の作用点６１の実位置は、位置検出部３４の出力値である。加工ツール６の作用点６１の実速度は、例えば位置検出部３４の出力値の差分から求められる。
【００３５】
式（１）から、加工ツール６の作用点６１の目標加速度を求める次の式（２）が得られる。
【００３６】
【数２】
0005927259.tif 000003
【００３７】
式（２）の右辺を２階積分することにより、加工ツール６の作用点６１の目標位置が求められる。制御周期Δtの間、式（２）の右辺の値が一定であると仮定すると、Δｔ後の目標位置は、次の式（３）で表せる。
【００３８】
【数３】
0005927259.tif 000004
【００３９】
加工ツール６の作用点６１の現在位置は、位置検出部３４の出力値である。加工ツール６の作用点６１の現在速度は、位置検出部３４の出力値の差分から計算により求められる。
【００４０】
図４を参照して説明したような２自由度のアクチュエータを使用するときは、位置センサ５１の座標系のＸ軸方向及びＹ軸方向について、それぞれ独立に求められる式（１）を立てる（Ｙ軸方向については、式中の「ｘ」を「ｙ」に読み替える）。そして、１自由度のアクチュエータの場合と同様に、式（３）から、Ｘ軸方向及びＹ軸方向それぞれについて加工ツール６の作用点６１の目標位置を求めればよい。
【００４１】
位置補正部３５は、力制御部３３によって求められた加工ツール６の作用点６１の目標位置に従って、アクチュエータ５の位置補正量を算出する。ところで、力制御部３３によって制御される加工ツール６の作用点６１のストロークは、前述したように、アクチュエータ５のボールねじの長さ又はシリンダの可動範囲などに応じて定まる。図５Ａには、直線状に定められた動作軌道Ｔ５に従ってロボット２を動作させたときの加工ツール６を示している。ロボット２は、例えば手首部２２の先端に設定される基準点２３が、動作軌道Ｔ５を通って移動するように制御される。ロボット２の動作軌道は、例示される直線状の動作軌道Ｔ５に限定されず、アクチュエータ５の可動範囲内で加工を実行できるように、ワーク７の表面７ａの形状などを考慮して設定される。すなわち、ワーク７の表面７ａの形状に従って湾曲していてもよい。
【００４２】
ところで、ワーク７の位置決め誤差が予想の範囲を超えて大きかったり、ワーク７の形状が未知であるか、若しくはワーク７の形状ないし寸法の個体差が大きかったりした場合、力制御中に作用点６１の目標位置がアクチュエータ５の可動範囲から外れることもありうる。その場合、図５Ａにおいて破線で示されるように、加工ツール６の作用点６１がワーク７の表面７ａに達することができずに、力制御を実行できなくなる。反対に、加工ツール６がワーク７に対して接近しすぎて、過剰な押圧力が加工ツール６とワーク７との間に発生することもある。
【００４３】
そこで、位置補正部３５は、前述した式（３）で得られる加工ツール６の作用点６１の目標位置が、アクチュエータ５の可動範囲に対応する所定の範囲から外れる場合に、力制御部３３に基づくアクチュエータ５の位置補正に加えて、ロボット２の動作軌道の位置補正を実行する。すなわち、ロボット２の動作軌道を自動的に補正し、アクチュエータ５の位置補正量に加えてロボット２の位置補正量を算出することによって、式（３）で求められた目標位置を実現する。図５Ｂは、位置補正部３５によって位置補正された動作軌道Ｔ５’を示している。破線で示された位置において、ロボット２の動作軌道Ｔ５’は、ワーク７に接近するように補正される。したがって、アクチュエータ５の可動範囲内において、加工ツール６をワーク７に対して所定の押圧力で押圧できるようになる。
【００４４】
式（３）で求められる加工ツール６の作用点６１の目標位置Ｐｔをアクチュエータ５の可動範囲内で実現する方法として、次の方法を採用できる。図３を参照して説明した１自由度のアクチュエータ５を例として説明するが、２自由度を有するアクチュエータにおいては、Ｘ軸方向及びＹ軸方向それぞれについて同様の計算を行えばよい。例えば、位置補正部３５は、Ｐｔ＞Ｐｍ＋Ｐｒが成立する場合、加工ツール６の作用点６１の目標位置を（Ｐｔ−Ｐｃ）に補正する。Ｐｍは、アクチュエータ５がその可動範囲の中心に位置するときの加工ツール６の作用点６１の位置である。Ｐｒは、Ｐｍ＋Ｐｒ及びＰｍ−Ｐｒがともにアクチュエータ５の可動範囲に含まれるように、予め設定される。Ｐｒは、例えばゼロ以上であって、アクチュエータ５のストロークの半分以下の値であるが、加工工程中にアクチュエータ５の可動範囲から外れないようにするために、ストロークの半分より十分に小さい値に設定するのが望ましい。目標位置Ｐｔは、位置センサ５１の座標系において記述される値である。さらに、位置補正部３５は、ロボット２の動作軌道を位置センサ５１の座標系のＸ軸方向（アクチュエータ５の動作方向）にＰｃだけ補正する。Ｐｃは固定値であり、例えばロボットの機種に応じて設定されてもよい。また、Ｐｔが可動範囲の限界に近づくのに従って、Ｐｃが大きくなるように設定されてもよい。
【００４５】
Ｐｔ＜Ｐｍ−Ｐｒが成立する場合は、加工ツール６の作用点６１の目標位置を（Ｐｔ＋Ｐｃ）に補正するとともに、ロボット２の動作軌道を、位置センサの座標系のＸ軸方向に−Ｐｃだけ補正する。
【００４６】
ロボット２が無理なく動作できるようにするために、１制御周期Δｔにおけるロボット２の動作軌道の位置補正量Ｐｃに上限を設けてもよい。その場合、位置補正量Ｐｃが予め定められる上限値を超えるときは、位置補正量Ｐｃが当該上限値に置き換えられる。或いは、ローパスフィルタなどを介して、位置補正量Ｐｃが整値Ｐｃ’によって置換されてもよい。或いは、１制御周期Δｔにおける位置補正量を制限するとともに、複数回の制御周期Δｔの間にわたって位置補正を実行してもよい。
【００４７】
なお、図４に示したような２自由度アクチュエータの場合には、Ｘ軸方向とは独立してＹ軸方向において、ロボット２の動作軌道の位置補正量を求めればよい。
【００４８】
図６を参照して、一実施形態に係るロボットシステム１０において実行される処理の流れを説明する。ステップＳ６０１〜Ｓ６０７までの処理は、所定の制御周期Δｔで実行される。ロボットシステム１０が加工工程を開始すると、ステップＳ６０１において、ロボット制御部３１が予め教示ないし指定された動作軌道に従ってロボット２を動作させる。ステップＳ６０２において、力検出部３２が、加工ツール６とワーク７との間に作用する力を検出する。
【００４９】
次いで、ステップＳ６０３において、位置検出部３４は、アクチュエータ５の現在位置を検出し、さらにアクチュエータ５の位置から加工ツール６の作用点６１の現在位置を計算する。ステップＳ６０４において、力制御部３３は、ステップＳ６０２で取得した力が所定の押圧力に近づくようにアクチュエータ５の位置、ひいては加工ツール６の作用点６１の目標位置を前述した式（３）に従って算出する。さらに、加工ツール６の作用点６１の目標位置に対応するアクチュエータ５の目標位置を算出する。
【００５０】
ステップＳ６０５では、ステップＳ６０４において求められたアクチュエータ５の目標位置が、アクチュエータ５の可動範囲に基づいて予め定められる範囲内にあるか否かを判定する。判定に用いられる範囲は、前述したように、アクチュエータ５の可動範囲の限界に達する前に動作軌道の変更の要否を判断できるようにある程度余裕を持たせた範囲である。
【００５１】
ステップＳ６０５における判定が否定された場合、加工ツール６の作用点６１を目標位置に移動させようとしたときに、アクチュエータ５の可動範囲を超える虞がある。したがって、力制御を適切に実行するために、ステップＳ６０６において、位置補正部３５は、加工ツール６がワーク７に接近するように、或いはワーク７から離間するように、ロボット２の動作軌道を変更する位置補正量を算出する。そして、ステップＳ６０７では、位置補正部３５は、加工ツール６の作用点６１が目標位置に到達するように、ステップＳ６０４で求められたアクチュエータ５の目標位置から、ステップＳ６０６で求められたロボット２の動作軌道の位置補正量を差し引いたアクチュエータ５の位置補正量を算出する。
【００５２】
他方、ステップＳ６０５における判定が肯定された場合、ロボット２の動作軌道を変更する必要はなく、アクチュエータ５を動作させるのみによって力制御を実行できるとみなせる。したがって、ステップＳ６０６をバイパスしてステップＳ６０７に進み、位置補正部３５が、ステップＳ６０４において求められたアクチュエータ５の目標位置に従ってアクチュエータ５の位置補正量を算出する。
【００５３】
本実施形態に係るロボットシステム１０によれば、次の利点が得られる。
（１）力制御に従って加工工程を実行する際に、加工ツール６とワーク７との相対的位置関係をアクチュエータ５によって変更できる。したがって、力制御に対する応答性が、ロボット２の構成から独立して、アクチュエータ５に応じて定まるようになる。通常、アクチュエータ５にかかる負荷は小さく、アクチュエータは良好な応答性を実現できるので、力制御に対して優れた応答性を有するロボットシステム１０を提供できるようになる。
【００５４】
（２）加工ツール６の作用点６１の目標位置がアクチュエータ５の可動範囲を超える場合は、ロボット２の動作軌道を自動的に変更する。それにより、アクチュエータ５の可動範囲に制限されなくなるので、誤差が大きい場合であっても、加工工程を適切に実行できるようになる。
【００５５】
（３）位置補正部３５によって算出された位置補正量が予め定められる上限値を超えるような場合、位置補正量が当該上限値になるように制限される。それにより、ロボット２又はアクチュエータ５が１制御周期Δｔにおいて急激に移動するのを防止できるようになる。
【００５６】
図７は、別の実施形態に係るロボットシステム１０の概略構成を示している。本実施形態において、ロボット２の手首部２２には、ワーク７を保持可能な保持ツール６２が取付けられている。他方、加工ツール６は、支持体１２を介してロボット２の可動範囲内に固定されている。すなわち、ロボット２は、ワーク７を保持ツール６２で保持した状態で位置及び姿勢を変更することにより、ワーク７を加工ツール６に対して相対的に移動できるようになっている。保持ツール６２は、例えば開閉する爪を備えたハンド、負圧を利用して吸引力を発生する吸着ツール、磁気的にワーク７を吸着する磁気式ツールなどである。支持体１２と加工ツール６との間には、力センサ４と、位置センサ５１と、アクチュエータ５と、が設けられている。本実施形態においては、ワーク７が加工ツール６に対して所定の押圧力が発生するように、アクチュエータ５及びロボット２によってワーク７の作用点及び加工ツール６の作用点６１を互いに対して相対的に移動させることにより、加工工程を実行する。ワーク７の作用点は、加工されるべきワーク７の表面７ａにおいて定められる加工ツール６との接触点である。制御装置３の機能的構成は前述した実施形態と同様である。
【００５７】
図８は、別の実施形態に係るロボットシステム１０の概略構成を示している。本実施形態において、ロボット２の手首部２２には、ワーク７を保持可能な保持ツール６２と、アクチュエータ５と、位置センサ５１と、力センサ４と、が取付けられている。他方、加工ツール６は、支持体１２を介してロボット２の可動範囲内に固定されている。本実施形態においては、ワーク７と加工ツール６との間に所定の押圧力が発生するように、アクチュエータ５及びロボット２によってワーク７の作用点及び加工ツール６の作用点６１を互いに対して相対的に移動させることにより、加工工程を実行する。制御装置３の機能的構成は前述した実施形態と同様である。
【００５８】
図９は、別の実施形態に係るロボットシステム１０の概略構成を示している。本実施形態において、ロボット２は、加工ツール６を手首部２２に備えている。他方、支持体１２には、力センサ４と、位置センサ５１と、アクチュエータ５と、アクチュエータ５に取付けられていてワーク７を保持可能な保持ツール６２と、が設けられている。本実施形態では、ワーク７と加工ツール６との間に所定の押圧力が発生するように、ロボット２が加工ツール６の作用点６１を移動させるとともに、アクチュエータ５が保持ツール６２によって保持されたワーク７の作用点を移動させる。制御装置３の機能的構成は前述した実施形態と同様である。
【００５９】
図１０は、別の実施形態に係るロボットシステム１０の概略構成を示している。本実施形態において、ロボット２の手首部２２には、位置センサ５１と、アクチュエータ５と、保持ツール６２と、が取付けられている。他方、支持体１２には、力センサ４と、加工ツール６と、が固定されている。本実施形態においては、ロボット２及びアクチュエータ５が協働して加工ツール６の作用点６１及びワーク７の作用点を互いに相対移動させることによって、ワーク７に対する加工工程を実行する。制御装置３の機能的構成は前述した実施形態と同様である。
【００６０】
図１１は、別の実施形態に係るロボットシステム１０の概略構成を示している。本実施形態において、ロボット２は、力センサ４及び加工ツール６を手首部２２に備えている。他方、位置センサ５１、アクチュエータ５、及び保持ツール６２が支持体１２に固定されている。本実施形態においては、ロボット２及びアクチュエータ５が協働して加工ツール６の作用点６１及びワーク７の作用点を互いに対して相対移動させることによって、ワーク７に対する加工工程を実行する。制御装置３の機能的構成は前述した実施形態と同様である。
【００６１】
図１２は、別の実施形態に係るロボットシステム１０の機能ブロック図である。本実施形態によれば、制御装置３は、図２に示される構成に加えて、実行部３６をさらに備えている。実行部３６は、位置センサ５１によって検出されるアクチュエータ５の位置がアクチュエータ５の可動範囲の上限値又は下限値に達しているとき、或いは上限値又は下限値に十分に近づいたときに、ロボット２をアラーム停止する。すなわち、アクチュエータ５が可動範囲の限界に概ね達した際に、ロボットシステム１０はオペレータに異常を通知できる。オペレータは、それに対して、例えば対象のワーク７を不良品として、良品と区別して廃棄したり、或いは設定を変更して加工工程を再実行したりすることができる。
【００６２】
別の実施形態において、実行部３６は、アクチュエータ５が可動範囲の限界に概ね達したときのロボット２の現在位置及びアクチュエータ５の現在位置のうちの少なくとも１つを記録するように構成されてもよい。その場合、ロボットシステム１０は、ロボット２をアラーム停止することなく加工工程を実行し、オペレータは、後で異常が生じた箇所を検査したり、或いは設定を変更して加工工程を再実行したりすることができる。
【００６３】
図１３は、別の実施形態に係るロボットシステム１０の機能ブロック図である。本実施形態によれば、制御装置３は、図２に示される構成に加えて、置換部３７をさらに備えている。置換部３７は、位置補正部３５によって算出される位置補正量に従って補正された動作軌道を記憶するとともに、ロボット制御部３１によって用いられるロボット２の動作軌道を補正後の動作軌道に置換する。
【００６４】
例えば、異なる製造ロットのワークにおいては、形状ないし寸法の個体差が大きい場合であっても、同一製造ロット内では個体差が小さいことがある。そのような場合、製造ロットの切替り後に初めて実行される加工工程において補正されたロボットの動作軌道を新たな動作軌道として記憶しておけば、次に製造ロットが切替るまでの期間は、ワーク７ごとにロボット２の動作軌道を毎回補正する必要がなくなる。したがって、より安定した加工が可能になる。
【００６５】
以上、本発明の種々の実施形態について説明したが、当業者であれば、他の実施形態によっても本発明の意図する作用効果を実現できることを認識するであろう。特に、本発明の範囲を逸脱することなく、前述した実施形態の構成要素を削除又は置換することができるし、公知の手段をさらに付加することができる。また、本明細書において明示的又は暗示的に開示される複数の実施形態の特徴を任意に組合せることによっても本発明を実施できることは当業者に自明である。
【符号の説明】
【００６６】
１０    ロボットシステム
１１    通信ケーブル
１２    支持体
２    ロボット
２１    アーム
２２    手首部
２３    基準点
３    制御装置
３１    ロボット制御部
３２    力検出部
３３    力制御部
３４    位置検出部
３５    位置補正部
３６    実行部
３７    置換部
４    力センサ
５    アクチュエータ
５１    位置センサ
６    加工ツール
６１    作用点
６２    保持ツール
７    ワーク
７ａ    表面
【図１】
0005927259.tif 000005
【図２】
0005927259.tif 000006
【図３】
0005927259.tif 000007
【図４】
0005927259.tif 000008
【図５Ａ】
0005927259.tif 000009
【図５Ｂ】
0005927259.tif 000010
【図６】
0005927259.tif 000011
【図７】
0005927259.tif 000012
【図８】
0005927259.tif 000013
【図９】
0005927259.tif 000014
【図１０】
0005927259.tif 000015
【図１１】
0005927259.tif 000016
【図１２】
0005927259.tif 000017
【図１３】
0005927259.tif 000018