(57)【要約】【課題】流体圧シリンダ装置を介して加工工具とワークとを押し付けながら加工を行う加工ロボットシステムにおいて、過負荷を防止するとともに加工の品質及び信頼性を向上させる。【解決手段】加工ロボットシステム１０２は、ロボット手先部１６に支持された加工工具９２に加わる力及びモーメントを検出する力覚センサ９０と、所定の制御パラメータに従ってロボット１４及び流体圧シリンダ装置２２を制御するシステム制御装置１００とを備える。システム制御装置は、力覚センサの検出データに基づいて、倣い作業中に加工工具とワークとの間に作用している作用力を算出し、作用力に応じて手先部の目標軌道、目標移動速度及び流体圧シリンダ装置の目標押圧力を調整する。また、流体圧シリンダ装置が変位させる物体に作用する重力及び慣性力が流体圧シリンダ装置に及ぼしているシリンダ影響力を算出し、シリンダ影響力を補償するように目標押圧力を調整する。【選択図】図１８
2011041992.tif 000002
【特許請求の範囲】
【請求項１】
加工工具とワークとの一方である第１対象物を、ロボットの手先部に支持し、該加工工具と該ワークとの他方である第２対象物を、該手先部から離れて配置された支持部に支持し、該手先部又は該支持部に設置された流体圧シリンダ装置を介して該第１対象物と該第２対象物とを互いに押し付けながら、該第１対象物と該第２対象物とを相対移動させて該加工工具により該ワークを加工する、加工ロボットシステムにおいて、
前記手先部の目標軌道、前記手先部の目標移動速度及び前記流体圧シリンダ装置の目標押圧力を、それぞれパラメータとして記憶する記憶装置と、
前記手先部に支持された前記第１対象物、又は前記支持部に支持された前記第２対象物に加わる、力及びモーメントの少なくとも一方を検出する検出装置と、
前記記憶装置に記憶した前記パラメータに従って、前記ロボット及び前記流体圧シリンダ装置を制御する制御装置とを具備し、
前記制御装置は、
前記検出装置が検出した前記力及びモーメントの少なくとも一方のデータに基づいて、倣い作業中に前記加工工具と前記ワークとの間に作用している作用力を算出する作用力算出部と、
前記作用力算出部が算出した前記作用力に応じて、前記手先部の前記目標軌道、前記手先部の前記目標移動速度及び前記流体圧シリンダ装置の前記目標押圧力のうちの、少なくとも１つのパラメータを調整する第１のパラメータ調整部と、
前記流体圧シリンダ装置の作動により変位する物体に作用する重力及び慣性力が、前記流体圧シリンダ装置の作動に及ぼしているシリンダ影響力を算出する影響力算出部と、
前記影響力算出部が算出した前記シリンダ影響力を補償するように、前記流体圧シリンダ装置の前記目標押圧力を調整する第２のパラメータ調整部とを具備すること、
を特徴とする加工ロボットシステム。
【請求項２】
前記目標軌道に沿って移動する前記手先部の移動方向が、前記流体圧シリンダ装置の作動による前記第１対象物と前記第２対象物との相対的な押し付け方向に交差する方向である、請求項１に記載の加工ロボットシステムにおいて、
前記作用力算出部は、前記加工工具と前記ワークとの間に、前記移動方向に平行な方向へ作用している前記作用力を算出する、
請求項１に記載の加工ロボットシステム。
【請求項３】
前記検出装置が、前記ロボットに設けられて、前記手先部に支持された前記第１対象物に加わる前記力及びモーメントの少なくとも一方を検出する、請求項１又は２に記載の加工ロボットシステムにおいて、
前記制御装置は、
前記目標軌道に沿った前記手先部の移動により変位する物体に作用する重力及び慣性力が、前記検出装置の検出動作に及ぼしている検出影響力及び検出影響モーメントの少なくとも一方を算出する検出影響算出部と、
前記検出影響算出部が算出した前記検出影響力及び前記検出影響モーメントの少なくとも一方を補償するように、前記検出装置が検出した前記力及びモーメントの少なくとも一方のデータを補正するデータ補正部とを具備し、
前記作用力算出部は、前記データ補正部が補正した前記力及びモーメントの少なくとも一方のデータを用いて、前記作用力を算出する、
請求項１又は２に記載の加工ロボットシステム。
【請求項４】
前記検出装置が、前記力及びモーメントの双方を検出する、請求項１〜３のいずれか１項に記載の加工ロボットシステムにおいて、
前記制御装置は、
前記検出装置が検出した前記力及びモーメントの双方のデータに基づいて、倣い作業中に前記加工工具と前記ワークとが互いに接触している接触位置を算出する接触位置算出部と、
前記接触位置算出部が算出した前記接触位置に応じて、前記手先部の前記目標軌道、前記手先部の前記目標移動速度及び前記流体圧シリンダ装置の前記目標押圧力のうちの、少なくとも１つのパラメータを調整する第３のパラメータ調整部とを具備する、
請求項１〜３のいずれか１項に記載の加工ロボットシステム。
【請求項５】
前記加工工具が、駆動部を有する可動工具である、請求項１〜４のいずれか１項に記載の加工ロボットシステムにおいて、
前記記憶装置は、前記可動工具の前記駆動部の目標動作速度をパラメータとして記憶し、
前記制御装置は、
前記作用力算出部が算出した前記作用力に応じて、前記可動工具の前記駆動部の前記目標動作速度を調整する第４のパラメータ調整部を具備する、
請求項１〜４のいずれか１項に記載の加工ロボットシステム。
【請求項６】
前記制御装置は、
前記作用力算出部が算出した前記作用力に基づいて、前記ワークの加工済領域の加工状態を良否判定する加工状態判定部を具備する、
請求項１〜５のいずれか１項に記載の加工ロボットシステム。
【請求項７】
前記制御装置は、
前記流体圧シリンダ装置の作動により変位する物体に作用する重力及び慣性力が、前記流体圧シリンダ装置に及ぼしているシリンダ影響モーメントを算出する影響モーメント算出部と、
前記影響モーメント算出部が算出した前記シリンダ影響モーメントに応じて、前記手先部の前記目標軌道と前記目標移動速度との少なくとも一方を調整する第５のパラメータ調整部とを具備する、
請求項１〜６のいずれか１項に記載の加工ロボットシステム。
【請求項８】
前記流体圧シリンダ装置のピストン変位量を検出する変位検出センサを具備する、請求項１〜７のいずれか１項に記載の加工ロボットシステムにおいて、
前記制御装置は、
前記目標軌道に沿った前記手先部の移動中に、前記変位検出センサが検出した前記ピストン変位量を参照して、前記ピストン変位量が前記流体圧シリンダ装置の構造によって予め定められた上限値又は下限値である場合に、前記ピストン変位量を該上限値と該下限値との間の値に移行させるように、前記手先部の前記目標軌道を調整する第６のパラメータ調整部を具備する、
請求項１〜７のいずれか１項に記載の加工ロボットシステム。
【請求項９】
前記流体圧シリンダ装置のピストン変位量を検出する変位検出センサと、前記ロボットの制御軸動作位置を検出する軸位置検出部とを具備する、請求項１〜８のいずれか１項に記載の加工ロボットシステムにおいて、
前記制御装置は、
前記目標軌道に沿った前記手先部の移動中に、前記変位検出センサが検出した前記ピストン変位量のデータと前記軸位置検出部が検出した前記制御軸動作位置のデータとに基づいて、前記第１対象物の位置を複数点で算出し、該複数点に亘る該位置の変化に基づいて前記手先部の実際の移動方向を算出し、該実際の移動方向に対し零以外の予め定めた押し付け角度を成す方向に、前記流体圧シリンダ装置の作動による前記第１対象物と前記第２対象物との相対的な目標押し付け方向を決定する押付方向決定部と、
前記押付方向決定部が決定した前記目標押し付け方向に対して前記手先部の移動方向が前記押し付け角度を成すように、前記手先部の前記目標軌道を調整する第７のパラメータ調整部とを具備する、
請求項１〜８のいずれか１項に記載の加工ロボットシステム。
【請求項１０】
前記流体圧シリンダ装置のピストン変位量を検出する変位検出センサと、前記ロボットの制御軸動作位置を検出する軸位置検出部とを具備する、請求項１〜８のいずれか１項に記載の加工ロボットシステムにおいて、
前記制御装置は、
前記手先部の移動中に、前記変位検出センサが検出した前記ピストン変位量のデータと前記軸位置検出部が検出した前記制御軸動作位置のデータとに基づいて、前記第１対象物の位置を複数点で算出し、該複数点に亘る該位置の変化に基づいて前記手先部の実際の移動方向を算出し、該実際の移動方向に対し零以外の予め定めた押し付け角度を成す方向に、前記流体圧シリンダ装置の作動による前記第１対象物と前記第２対象物との相対的な目標押し付け方向を決定する押付方向決定部と、
前記押付方向決定部が決定した前記目標押し付け方向に対して前記手先部の移動方向が前記押し付け角度を成すように、前記手先部の前記目標軌道を生成する目標軌道生成部とを具備する、
請求項１〜８のいずれか１項に記載の加工ロボットシステム。
【請求項１１】
前記流体圧シリンダ装置のピストン変位量を検出する変位検出センサと、前記ロボットの制御軸動作位置を検出する軸位置検出部とを具備する、請求項１〜８のいずれか１項に記載の加工ロボットシステムにおいて、
前記流体圧シリンダ装置は、互いに交差する複数の制御軸を有し、
前記制御装置は、
前記目標軌道に沿った前記手先部の移動中に、前記変位検出センサが検出した前記ピストン変位量のデータと前記軸位置検出部が検出した前記制御軸動作位置のデータとに基づいて、前記第１対象物の位置を複数点で算出し、該複数点に亘る該位置の変化に基づいて前記手先部の実際の移動方向を算出し、該実際の移動方向に対し予め定めた押し付け角度を成す方向に、前記流体圧シリンダ装置の作動による前記第１対象物と前記第２対象物との相対的な目標押し付け方向を決定する押付方向決定部と、
前記押付方向決定部が決定した前記目標押し付け方向に、前記流体圧シリンダ装置の作動による前記第１対象物と前記第２対象物との相対的な実際の押し付け方向が一致するように、前記流体圧シリンダ装置の前記複数の制御軸を動作させて押圧力を制御するシリンダ動作指令部とを具備する、
請求項１〜８のいずれか１項に記載の加工ロボットシステム。
【請求項１２】
前記ロボットの制御軸動作位置を検出する軸位置検出部を具備する、請求項１〜１１のいずれか１項に記載の加工ロボットシステムにおいて、
前記流体圧シリンダ装置は、ピストンを解除可能に固定するピストン固定部を備え、
前記制御装置は、
加工作業の完了後に、前記ピストン固定部により前記ピストンを固定した状態で、前記検出装置が検出する前記力及びモーメントの少なくとも一方のデータを参照して、前記加工工具と前記ワークとの間に予め定めた力が作用するように前記加工工具を前記ワークの加工済領域に接触させながら前記手先部を移動させるロボット動作指令部と、
加工作業の完了後に、前記ロボット動作指令部が前記手先部を移動させている間に、前記検出装置が検出する前記力及びモーメントの少なくとも一方のデータ、又は前記軸位置検出部が検出する前記制御軸動作位置のデータに基づいて、前記ワークの前記加工済領域の加工状態の良否を判定する加工状態判定部とを具備する、
請求項１〜１１のいずれか１項に記載の加工ロボットシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、加工ロボットシステムに関する。
【背景技術】
【０００２】
ロボットを用いてワークのバリ取り、研磨、研削等の自動加工を行う加工ロボットシステムでは、ロボットのアーム先端に支持した加工工具を、アーム先端から離れて配置された治具等の支持部に支持したワークに対し、ロボットの動作により適切な力で押し付けながら移動させて加工する工程が行われている。或いは、ロボットのアーム先端に取り付けたハンドでワークを支持し、そのワークを、アーム先端から離れて配置された治具等の支持部に支持した加工工具に対し、ロボットの動作により適切な力で押し付けながら移動させて加工する場合もある。
【０００３】
このようなバリ取り、研磨、研削等の自動加工作業においては、一定水準の加工品質を維持するために、加工工具とワークとを相互に押し付けている力を、常に適当な大きさに調節できることが好ましい。その目的で従来、ロボットの動作に加え、流体圧調節弁により作動流体の圧力を制御可能な流体圧シリンダ装置を用いて、流体圧シリンダ装置が発生する押圧力を調節しながら加工工具とワークとを相互に押し付けるようにしたシステム構成が採用されている。
【０００４】
例えば、特許文献１には、ロボットに流体圧シリンダ及び研磨ツールを取り付け、流体圧シリンダの押圧力により研磨ツールを被研磨面（塗膜）に対し直交方向に押し付けて塗膜研磨を行うシステムにおいて、研磨ツールの姿勢変化に伴う流体圧シリンダの実効負荷を圧力センサにより検出し、実効負荷と鉛直姿勢時における流体圧シリンダの基準負荷とに基づいて修正押圧力を演算し、修正押圧力に基づいて流体圧シリンダの押圧力を制御することで、研磨ツールを安定した押圧力で被研磨面に押し付ける構成が記載されている。
【０００５】
特許文献２には、ロボットアームに空気圧シリンダ装置及び回転ツールを取り付け、ロボットアーム及び空気圧シリンダ装置の作動により回転ツールを被処理面に押し当てながら被処理面に沿って移動させて曲面研磨を行うシステムにおいて、ロボットアームによって時々刻々と姿勢を変化させられることによる空気圧シリンダ装置の進退方向角度の変化に基づいて、空気圧シリンダ装置が発生する押圧力の補正量を演算し、この補正量に従って空気圧シリンダ装置の作動空気圧を変化させることで、空気圧シリンダ装置の姿勢変化に伴う押圧力への重力の影響を補償する構成が記載されている。
【０００６】
特許文献３には、産業用ロボット及び流体圧シリンダ装置を用いて加工工具とワークとを相互に押し付けながら加工を行うシステムにおいて、加工工具の作動電流値の変化に従って流体圧シリンダ装置の制御信号を調節することで、加工工具とワークとの間に常に一定の押し付け力を得て加工品質を一定化する構成が記載されている。
【０００７】
特許文献４には、ロボットアームにフローティング機構を介して工具を取り付け、電空レギュレータによりフローティング機構のエア圧力を調節することで工具の押し付け力を制御しながら加工を行うシステムにおいて、工具の回転数に応じて、電空レギュレータによる工具の押し付け力及びロボットアームによる工具の送り速度を変化させることで、バリの大きさに応じたバリ取り作業を実施する構成が記載されている。
【０００８】
特許文献５には、ロボットに一対のベローズシリンダを介してグラインダを取り付け、個々のベローズシリンダに所定圧の空気を供給して加工を行うシステムにおいて、ベローズシリンダの作動によるグラインダの位置をリニアセンサで検出し、この位置情報に基づき各ベローズシリンダへの供給空気圧を変化させることで、グラインダや被研削物の位置ずれによる押し付け力の変動を補償する構成が記載されている。
【０００９】
特許文献６には、ロボットにフローティングシリンダ装置を介して回転砥石を取り付け、フローティングシリンダ装置により回転砥石を工作物に押し付けて加工を行うシステムにおいて、ロボットの動作中に、距離センサを用いてフローティングシリンダ装置のストローク量を検出し、検出したストローク量に基づきロボットによる回転砥石の動作軌跡を自動修正することで、高精度の自動教示を可能にする構成が記載されている。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開平６−２１８６７１号公報
【特許文献２】特開平６−３３９８４８号公報
【特許文献３】特開平７−８０７９１号公報
【特許文献４】特開平８−１４０４号公報
【特許文献５】特開平１１−２０７６１３号公報
【特許文献６】特許第２５５２７４３号公報
【発明の概要】
【発明が解決しようとする課題】
【００１１】
流体圧シリンダ装置を介して加工工具とワークとを互いに押し付けながら、加工工具とワークとを相対移動させて加工工具によりワークを加工する加工ロボットシステムにおいては、ロボット、流体圧シリンダ装置、加工工具、ワーク等のシステム構成要素に過負荷が掛からないようにするとともに、加工の品質及び信頼性を向上できるようにすることが要求されている。特に、加工作業中に加工工具とワークとの間に実際に作用している力の大きさに応じて、ロボットの動作や流体圧シリンダ装置の押圧力を適当に調節できるようにし、また、流体圧シリンダ装置の作動により変位する物体（ピストン及びピストンに支持した加工工具又はワーク等）に作用する重力や慣性力の影響を相殺して、加工工具とワークとの間の押し付け力を最適化できるようにすることが所望されている。
【課題を解決するための手段】
【００１２】
本発明は、その一態様として、加工工具とワークとの一方である第１対象物を、ロボットの手先部に支持し、加工工具とワークとの他方である第２対象物を、手先部から離れて配置された支持部に支持し、手先部又は支持部に設置された流体圧シリンダ装置を介して第１対象物と第２対象物とを互いに押し付けながら、第１対象物と第２対象物とを相対移動させて加工工具によりワークを加工する、加工ロボットシステムにおいて、手先部の目標軌道、手先部の目標移動速度及び流体圧シリンダ装置の目標押圧力を、それぞれパラメータとして記憶する記憶装置と、手先部に支持された第１対象物、又は支持部に支持された第２対象物に加わる、力及びモーメントの少なくとも一方を検出する検出装置と、記憶装置に記憶したパラメータに従って、ロボット及び流体圧シリンダ装置を制御する制御装置とを具備する加工ロボットシステムを提供する。この加工ロボットシステムにおいて、制御装置は、検出装置が検出した力及びモーメントの少なくとも一方のデータに基づいて、倣い作業中に加工工具とワークとの間に作用している作用力を算出する作用力算出部と、作用力算出部が算出した作用力に応じて、手先部の目標軌道、手先部の目標移動速度及び流体圧シリンダ装置の目標押圧力のうちの、少なくとも１つのパラメータを調整する第１のパラメータ調整部と、流体圧シリンダ装置の作動により変位する物体に作用する重力及び慣性力が、流体圧シリンダ装置の作動に及ぼしているシリンダ影響力を算出する影響力算出部と、影響力算出部が算出したシリンダ影響力を補償するように、流体圧シリンダ装置の目標押圧力を調整する第２のパラメータ調整部とを具備する。
【発明の効果】
【００１３】
本発明に係る加工ロボットシステムでは、倣い作業中に加工工具とワークとの間に実際に作用している作用力の大きさに応じて、手先部の目標軌道及び、目標移動速度並びに流体圧シリンダ装置の目標押圧力のうちの、少なくとも１つのパラメータを適当に調節することができるので、そのような調整後のパラメータを用いてロボットや流体圧シリンダ装置を制御することにより、作用力を適正化することができる。また、流体圧シリンダ装置の作動により変位する物体に作用する重力や慣性力の影響を相殺するように、流体圧シリンダ装置の目標押圧力を調整することができるので、そのような調整後の目標押圧力を用いて流体圧シリンダ装置を制御することにより、加工工具とワークとの間の押し付け力を最適化できる。したがって本発明によれば、ロボット、支持部、流体圧シリンダ装置、加工工具、ワーク等のシステム構成要素に過負荷が掛からないようにして、それらシステム構成要素の構造的安定性及び安全性を高めることができ、また、作用力の適正化及び押し付け力の最適化により、過剰加工や加工不足を回避して加工の品質及び信頼性を向上させることができる。
【図面の簡単な説明】
【００１４】
【図１】本発明の一実施形態による加工ロボットシステムの基本的構成を示す機能ブロック図である。
【図２】本発明の他の実施形態による加工ロボットシステムに具備される制御装置の構成を示す機能ブロック図である。
【図３】本発明のさらに他の実施形態による加工ロボットシステムに具備される制御装置の構成を示す機能ブロック図である。
【図４】本発明のさらに他の実施形態による加工ロボットシステムに具備される制御装置の構成を示す機能ブロック図である。
【図５】本発明のさらに他の実施形態による加工ロボットシステムに具備される制御装置の構成を示す機能ブロック図である。
【図６】本発明のさらに他の実施形態による加工ロボットシステムに具備される制御装置の構成を示す機能ブロック図である。
【図７】本発明のさらに他の実施形態による加工ロボットシステムに具備される制御装置の構成を示す機能ブロック図である。
【図８】本発明のさらに他の実施形態による加工ロボットシステムに具備される制御装置の構成を示す機能ブロック図である。
【図９】本発明のさらに他の実施形態による加工ロボットシステムに具備される制御装置の構成を示す機能ブロック図である。
【図１０】本発明のさらに他の実施形態による加工ロボットシステムに具備される制御装置の構成を示す機能ブロック図である。
【図１１】本発明のさらに他の実施形態による加工ロボットシステムに具備される制御装置の構成を示す機能ブロック図である。
【図１２】本発明に係る加工ロボットシステムの典型的なシステム構成の一例を模式図的に示す図である。
【図１３】本発明に係る加工ロボットシステムの典型的なシステム構成の他の例を模式図的に示す図である。
【図１４】本発明に係る加工ロボットシステムの典型的なシステム構成のさらに他の例を模式図的に示す図である。
【図１５】本発明に係る加工ロボットシステムの典型的なシステム構成のさらに他の例を模式図的に示す図である。
【図１６】本発明に係る加工ロボットシステムの典型的なシステム構成のさらに他の例を模式図的に示す図である。
【図１７】本発明に係る加工ロボットシステムの典型的なシステム構成のさらに他の例を模式図的に示す図である。
【図１８】本発明の好適な実施形態による加工ロボットシステムの構成を示す機能ブロック図である。
【図１９】図１８の加工ロボットシステムにおけるバリ取り作業を模式図的に示す図で、（ａ）加工工具及びワークを概略で示す斜視図、並びに（ｂ）加工工具及びワークを概略で示す側面図である。
【図２０】図１８の加工ロボットシステムにおけるパラメータ調整処理を示す制御フローチャートである。
【図２１】図１８の加工ロボットシステムにおける他のパラメータ調整処理を示す制御フローチャートである。
【図２２】図１８の加工ロボットシステムにおける他のパラメータ調整処理を示す制御フローチャートである。
【図２３】ワークに対する加工工具の接触位置を模式図的に示す図で、（ａ）接触位置が工具根元側にずれている状態、（ｂ）接触位置が工具先端側にずれている状態、及び（ｃ）工具が摩耗している状態を、それぞれ示す。
【図２４】図１８の加工ロボットシステムにおける他のパラメータ調整処理を示す制御フローチャートである。
【図２５】図１８の加工ロボットシステムにおける他のパラメータ調整処理を示す制御フローチャートである。
【図２６】図１８の加工ロボットシステムにおける他のパラメータ調整処理を示す制御フローチャートである。
【図２７】図１８の加工ロボットシステムにおける他のパラメータ調整処理を示す制御フローチャートである。
【発明を実施するための形態】
【００１５】
以下、添付図面を参照して、本発明の実施の形態を詳細に説明する。全図面に渡り、対応する構成要素には共通の参照符号を付す。
【００１６】
図１は、本発明の一実施形態による加工ロボットシステム１０の基本的構成を示す機能ブロック図である。加工ロボットシステム１０は、加工工具とワークとの一方である第１対象物１２を、ロボット１４の手先部１６に支持し、加工工具とワークとの他方である第２対象物１８を、手先部１６から離れて配置された支持部２０に支持し、手先部１６又は支持部２０に設置された流体圧シリンダ装置２２を介して第１対象物１２と第２対象物１８とを互いに押し付けながら、第１対象物１２と第２対象物１８とを相対移動させて加工工具によりワークを加工するものである。
【００１７】
加工ロボットシステム１０は、手先部１６の目標軌道、手先部１６の目標移動速度及び流体圧シリンダ装置２２の目標押圧力を、それぞれパラメータとして記憶する記憶装置２４と、手先部１６に支持された第１対象物１２、又は支持部２０に支持された第２対象物１８に加わる、力及びモーメントの少なくとも一方を検出する検出装置２６と、記憶装置２４に記憶した上記のパラメータに従って、ロボット１４及び流体圧シリンダ装置２２を制御する制御装置２８とを備える。
【００１８】
制御装置２８は、検出装置２６が検出した力及びモーメントの少なくとも一方のデータに基づいて、倣い作業中に加工工具とワークとの間に作用している作用力を算出する作用力算出部３０と、作用力算出部３０が算出した作用力に応じて、手先部１６の目標軌道、手先部１６の目標移動速度及び流体圧シリンダ装置２２の目標押圧力のうちの、少なくとも１つのパラメータを調整する第１のパラメータ調整部３２と、流体圧シリンダ装置２２の作動により変位する物体に作用する重力及び慣性力が、流体圧シリンダ装置２２の作動に及ぼしているシリンダ影響力を算出する影響力算出部３４と、影響力算出部３４が算出したシリンダ影響力を補償するように、流体圧シリンダ装置２２の目標押圧力を調整する第２のパラメータ調整部３６とを備えて構成される。
【００１９】
本発明において、ロボット１４は、関節ロボット、直角座標ロボット等の、様々な機械構成のアーム（図示せず）を有する産業用ロボットから構成できる。この場合、第１対象物１２を移動させるアームの動作の自由度は、特に限定されない。また、手先部１６とは、ロボット１４のアーム先端の手首と手首よりも末端側に設置されるエンドエフェクタ等の機器類とを包含する領域を意味する。第１対象物１２が加工工具である場合には、手先部１６に例えば工具ホルダ（図示せず）が設置され、第１対象物１２がワークである場合には、手先部１６に例えばハンド（図示せず）が設置される。
【００２０】
ここで、手先部１６の軌道、移動速度等の制御パラメータは、特に断りの無い限り、手先部１６に設けられる手先部座標系の制御パラメータとする。手先部座標系とは、オペレータが必要に応じて手先部１６又はその周囲空間の所望位置に設定する座標系であり、原点を制御基準点として、ロボット１４の基準座標系（絶対座標系又は機械座標系）に対する手先部１６の位置及び姿勢を定める座標系である。なお、本発明において、手先部１６の軌道（又は目標軌道）とは、特に断りの無い限り、手先部１６の位置及び姿勢の双方によって規定されるものとする。
【００２１】
支持部２０は、ワークや工具を搭載するテーブル、刃物台等の、ロボット１４とは別体の支持構造物と支持構造物の末端に設置される工具ホルダやハンド等の機器類とから構成でき、第２対象物１８を静止状態で支持する固定式の構造や、第２対象物１８を支持した状態で移動可能な可動式の構造を採用できる。また、支持部２０を、ロボット１４の機体の一部としてロボットベース部（図示せず）に設けたり、ロボット１４とは別のロボットから構成したりすることもできる。第２対象物１８が加工工具である場合には、支持部２０に例えば工具ホルダ（図示せず）が設置され、第２対象物１８がワークである場合には、支持部２０に例えばハンドや治具（図示せず）が設置される。
【００２２】
加工工具は、ワークのバリ取り、研磨、研削等の、工具をワークに対し適当な力で押し付けながら相対移動させて遂行する加工に使用される、種々の工具であることができる。加工工具は、回転刃を有するグラインダや直動刃を有するサンダ等の可動工具と、やすりやスクレーパ等の固定工具との、いずれであってもよい。加工工具には、工具座標系を設定できる。工具座標系とは、オペレータが必要に応じて加工工具に設定する座標系であり、加工工具上の任意の位置（例えばワークに接触させる加工工具上の目標接触位置）を原点として、加工工具の位置及び姿勢を定める座標系である。第１対象物１２が加工工具である場合には、工具座標系の位置及び姿勢を、ロボット１４の各関節の動作角度（すなわち各制御軸の動作位置）及び流体圧シリンダ装置２２のピストン変位量から求めることができる。
【００２３】
本発明において、倣い作業とは、第１対象物１２と第２対象物１８とを互いに押し付けながら、第１対象物１２と第２対象物１８とを相対移動させる行為である。したがって、加工工具を用いたワーク加工作業は、倣い作業の一例である。本発明における倣い作業の他の例としては、後述するように、手先部１６の目標軌道を自動的に生成したり、手先部１６の目標軌道や目標移動速度、流体圧シリンダ装置２２の目標押圧力といったパラメータを調整したりすることを目的として、加工工具の刃先を適当なカバーで覆った状態でワークに押し付けて相対移動させたり、回転式の可動工具を駆動せずに自由回転可能な状態でワークに押し付けて相対移動させたり、或いは加工工具の代わりに加工能力の無い適当なダミー部品（本願ではこのようなダミー部品もその目的から「加工工具」の一種とする。）を手先部１６又は支持部２０に支持してワークに押し付けて相対移動させたりする作業を挙げることができる。
【００２４】
流体圧シリンダ装置２２は、作動空気や作動油の圧力制御によって出力部（一般にピストン）に所望の押圧力を、出力部の位置に関わらず一定に生じさせることができる駆動装置であって、流体圧調節弁（図示せず）を介して流体供給源（図示せず）に接続される。流体圧シリンダ装置２２の構造は特に限定されず、単動式でも複動式でもよいし、また単一のピストンを備える１軸の構成に限らず、互いに交差する方向へ移動可能な複数のピストンを組み合わせた複軸の構成とすることもできる。流体圧シリンダ装置２２は、ロボット１４の手先部１６に設置されるか或いは支持部２０に設置されて、ロボット１４や支持部２０（可動構造の場合）の動作とは無関係に、第１又は第２対象物１２、１８を所望の方向へ所望の一定押圧力の下で移動させることができる。流体圧シリンダ装置２２は、それ自体、後述するような種々のシステム構成に応じて、手先部１６又は支持部２０の一構成要素となる。
【００２５】
流体圧シリンダ装置２２は、必要に応じてピストン（図示せず）を解除可能に固定できる構成とすることもできる。ここで、第１対象物１２が加工工具である場合には、例えば、流体圧シリンダ装置２２のピストンを予め定めた基準位置で固定したときの、加工工具上の目標接触位置（ワークに接触する位置）に、前述した手先部座標系の原点（制御基準点）を設定することができる。なお、手先部座標系を加工工具上に設定する場合には、流体圧シリンダ装置２２のピストン変位量を常時考慮するか或いはピストンを固定することにより、手先部座標系における加工工具の位置及び姿勢と前述した工具座標系における加工工具の位置及び姿勢とを一致させることができる。この場合、手先部座標系の原点（制御基準点）を、工具座標系における工具中心点（ＴＣＰ）に設定することもできる。
【００２６】
検出装置２６は、所望の検出軸数（例えば１〜３軸の力検出方向、１〜３軸のモーメント検出方向）を有する力覚センサから構成できる。或いは検出装置２６を、ロボット１４の制御軸や支持部２０（可動構造の場合）の制御軸の駆動回路から構成する（つまり電圧値や電流値の変化に基づき力やモーメントを算定する構成とする）こともできる。検出装置２６が検出した力やモーメントのデータは、制御装置２８に入力される。検出装置２６が力覚センサから構成される場合、力覚センサ（検出装置２６）は、ロボット１４のアーム先端の手首（図示せず）と流体圧シリンダ装置２２との間、流体圧シリンダ装置２２と第１対象物１２との間、若しくは支持部２０と第２対象物１８との間（以上、流体圧シリンダ装置２２がロボット手先部１６に設置される場合。）、又は、支持部２０のテーブル、刃物台等の支持構造物（図示せず）と流体圧シリンダ装置２２との間、流体圧シリンダ装置２２と第２対象物１８との間、若しくはロボット１４のアーム先端の手首（図示せず）と第１対象物１２との間（以上、流体圧シリンダ装置２２が支持部２０に設置される場合。）に設置できる。
【００２７】
制御装置２８は、ロボットコントローラ、ＰＬＣ（プログラマブルコントローラ）、流体圧シリンダ装置２２のコントローラ等の、既存の制御機器を適宜組み合わせることで構成できる。或いは、加工ロボットシステム１０のための新たな制御装置２８として、所要の機能を統合した汎用コンピュータを用いることもできる。いずれの場合も、作用力算出部３０、第１のパラメータ調整部３２、影響力算出部３４及び第２のパラメータ調整部３６は、それら個々の機能を実現するソフトウェアとして、ＣＰＵ（中央処理装置）に予め用意することができる。
【００２８】
記憶装置２４は、ロボットコントローラや汎用コンピュータ等の制御機器に用意される記憶装置から構成できる。この場合、記憶装置２４として、制御機器の内蔵メモリや、制御機器に取外し可能に接続できる外付けメモリを使用できる。
【００２９】
記憶装置２４が記憶する「手先部１６の目標軌道、手先部１６の目標移動速度及び流体圧シリンダ装置２２の目標押圧力」といったパラメータは、ロボット１４を動かす直接教示、ＣＡＤデータ等を用いるオフライン教示、オペレータによる数値入力等によって用意できる。また、後述する種々の手法により調整された調整後のパラメータを、記憶装置２４に記憶することもできる。さらに、後述する手法により制御装置２８が自動的に手先部１６の目標軌道を生成して、記憶装置２４に記憶することもできる。記憶装置２４に格納した調整後のパラメータや生成されたパラメータは、倣い作業に際してのロボット１４や流体圧シリンダ装置２２の制御に使用されるか、或いはさらなる調整を受けることができる。
【００３０】
作用力算出部３０が算出する「加工工具とワークとの間に作用している作用力」とは、倣い作業に際して加工工具とワークとを相互接触状態で相対移動させる間に、加工工具とワークとの間に実際に生じる力（加工作業中の場合は押し付け力や切削抵抗力等の合力）を意味する。作用力の方向は、特に限定されない。また、「作用力を算出する」とは、作用力を直接的な測定ではなく計算により求める（すなわち推定する）ことを意味する。算出された作用力は、記憶装置２４に格納できる。なお、作用力の算出手法の詳細は、適当な例により後述する。
【００３１】
第１のパラメータ調整部３２が行う「作用力に応じて、手先部１６の目標軌道、手先部１６の目標移動速度及び流体圧シリンダ装置２２の目標押圧力のうちの、少なくとも１つのパラメータを調整する」という行為は、倣い作業実行中の実際の作用力を参照しながら、手先部１６の軌道及び移動速度並びに流体圧シリンダ装置２２の押圧力の少なくとも１つを変化させて倣い作業の状況を適宜調節することを目的として、記憶装置２４に格納した所望のパラメータ（初期値又は調整後の値）を調整する行為である。第１のパラメータ調整部３２による調整後のパラメータは、記憶装置２４に格納できる。ここで、どのパラメータを調整するか、またどのようにして調整するかについては、例えば、パラメータ毎に予め設定した種々の手法から、使用する加工工具の種類、加工対象のワークの種類、目的とする加工状態、ロボット１４の動作自由度等の諸条件に応じて適宜選択できるように構成できるものであり、その詳細は適当な例により後述する。
【００３２】
影響力算出部３４が参照する「流体圧シリンダ装置２２の作動により変位する物体」とは、流体圧シリンダ装置２２のピストン等の出力側可動要素と、ピストンに支持される物体（システム構成により異なり、第１対象物１２、第２対象物１８、ハンド、工具ホルダ、力覚センサ等）との、双方を含むものである。
【００３３】
影響力算出部３４が算出する「重力及び慣性力が、流体圧シリンダ装置２２の作動に及ぼしているシリンダ影響力」とは、流体圧シリンダ装置２２のピストン等の出力側可動要素の位置、速度及び加速度並びに出力側可動要素に生じる押圧力を変動させ得る外力を意味する。シリンダ影響力の方向は、特に限定されない。また、「シリンダ影響力を算出する」とは、シリンダ影響力を直接的な測定ではなく計算により求める（すなわち推定する）ことを意味する。算出されたシリンダ影響力は、記憶装置２４に格納できる。なお、シリンダ影響力の算出手法の詳細は、適当な例により後述する。
【００３４】
第２のパラメータ調整部３６が行う「シリンダ影響力を補償するように、流体圧シリンダ装置２２の目標押圧力を調整する」という行為は、シリンダ影響力を相殺して加工工具とワークとの間に適正な押し付け力を生じさせることを目的として、記憶装置２４に格納したパラメータ（初期値又は調整後の値）を調整する（つまり目標押圧力を増加させるか減少させる）行為である。第１のパラメータ調整部３２が実際の作用力に応じて流体圧シリンダ装置２２の目標押圧力を調整する場合には、第１のパラメータ調整部３２による調整後の目標押圧力を、第２のパラメータ調整部３６がさらに調整するように構成できる。或いは、シリンダ影響力の相殺を目的とした第２のパラメータ調整部３６による調整後の目標押圧力を、第１のパラメータ調整部３２が実際の作用力に応じてさらに調整するように構成することもできる。第２のパラメータ調整部３６による調整後の目標押圧力は、記憶装置２４に格納できる。
【００３５】
制御装置２８はさらに、手先部１６の目標軌道、手先部１６の目標移動速度及び流体圧シリンダ装置２２の目標押圧力のうち、第１及び第２のパラメータ調整部３２、３６の少なくとも一方が調整した調整後の少なくとも１つのパラメータを用いて、ロボット１４及び流体圧シリンダ装置２２の少なくとも一方への操作指令を作成し出力する操作指令部３８を、備えることができる。
【００３６】
操作指令部３８が行う「手先部１６の目標軌道、手先部１６の目標移動速度及び流体圧シリンダ装置２２の目標押圧力のうち、調整後の少なくとも１つのパラメータを用いて、ロボット１４及び流体圧シリンダ装置２２の少なくとも一方への操作指令を作成」するという行為は、操作指令の作成に必要な種々のパラメータやデータの中で、手先部１６の目標軌道、手先部１６の目標移動速度及び流体圧シリンダ装置２２の目標押圧力のうちのいずれかが「調整」されている場合には、その「調整後」のパラメータを用いて操作指令を作成する、という行為である。なお、調整後のパラメータのみを排他的に用いて操作指令を作成することも有り得る。作成された操作指令は、記憶装置２４に格納できる。
【００３７】
上記構成を有する加工ロボットシステム１０においては、作用力算出部３０が、倣い作業中に加工工具とワークとの間に実際に作用している作用力を算出し、第１のパラメータ調整部３２が、作用力に応じて所要のパラメータを調整するように、制御装置２８を構成したから、倣い作業中に実際に生じている作用力の大きさが、適正範囲（つまりロボット１４、支持部２０、流体圧シリンダ装置２２、加工工具、ワーク等のシステム構成要素への過負荷を防止するとともに所望の加工品質及び加工信頼性を確保する観点で予め適正とされた範囲）から逸脱（過剰又は不足）している場合に、手先部１６の軌道及び移動速度並びに流体圧シリンダ装置２２の押圧力のうちの少なくとも１つを自動的に変化させるように、目標軌道、目標移動速度及び目標押圧力のうちの少なくとも１つのパラメータを適当に調整することができる。そして、そのような調整後のパラメータを用いてロボット１４や流体圧シリンダ装置２２を制御することで、倣い作業（特に実際の加工作業）を中断したり実際の作用力の大きさが適正範囲に収まるような作業状況に変更したりする（すなわち倣い作業（特に加工作業）の状況を自動調節する）ことが可能になる。したがって、加工ロボットシステム１０によれば、ロボット１４、支持部２０、流体圧シリンダ装置２２、加工工具、ワーク等のシステム構成要素に過負荷が掛からないようにして、それらシステム構成要素の構造的安定性及び安全性を高めることができ、また、作用力の適正化により、過剰加工や加工不足を回避して加工の品質及び信頼性を向上させることができる。
【００３８】
さらに、加工ロボットシステム１０においては、影響力算出部３４が、重力及び慣性力が流体圧シリンダ装置２２の作動に及ぼしているシリンダ影響力を算出し、第２のパラメータ調整部３６が、シリンダ影響力を補償するべく流体圧シリンダ装置２２の目標押圧力を調整するように、制御装置２８を構成したから、倣い作業中に手先部１６の姿勢の変化や加速度の付加によってシリンダ影響力が発生したときに、シリンダ影響力を相殺するように目標押圧力を適当に調整することができる。そして、そのような調整後の目標押圧力を用いて流体圧シリンダ装置を制御することで、流体圧シリンダ装置２２の押圧力を自動的に変化させ、加工工具とワークとの間に生じる押し付け力の大きさを、所望の加工品質を確保する観点で予め最適とされた範囲に収まるように調節することが可能になる。したがって、加工ロボットシステム１０によれば、押し付け力の最適化により、過剰加工や加工不足を回避して加工の品質及び信頼性を著しく向上させることができる。
【００３９】
なお、制御装置２８がそれ自体に操作指令部３８を備える構成とすることで、操作指令部３８が迅速に、第１のパラメータ調整部３２による調整後のパラメータ（目標軌道、目標移動速度、目標押圧力）を用いてロボット１４又は流体圧シリンダ装置２２への操作指令を出力でき、また、第２のパラメータ調整部３６による調整後のパラメータ（目標押圧力）を用いて流体圧シリンダ装置２２への操作指令を出力できる。
【００４０】
また、詳細は省略するが、可動構造の支持部２０に流体圧シリンダ装置２２を設置したシステム構成の場合には、支持部２０の動作に関する制御パラメータ（軌道や速度等）を、第１のパラメータ調整部３２による調整対象に含ませることもできる。この場合、第１のパラメータ調整部３２による調整後の制御パラメータを用いて、支持部２０の動作を制御することが可能になる。このような構成によっても、システム構成要素に過負荷が掛からないようにしてそれらシステム構成要素の構造的安定性及び安全性を高めることができ、また、作用力の適正化により加工の品質及び信頼性を向上させることができる。
【００４１】
加工ロボットシステム１０において、検出装置２６による上記した検出動作及び制御装置２８による上記した制御動作は、例えば、ロボットコントローラがロボット１４に作業を行わせる際に予め定めた時間間隔でロボット１４の各制御軸や種々のセンサ等のフィードバック情報をリアルタイムで取得して逐次指令を生成するタイミング（いわゆる制御周期）で、実行することができる。このようにすれば、例えばロボット１４が実際に加工作業を遂行している最中に、一連の加工動作制御フローにおけるルーチンワークとして所定の制御周期毎に自動的に、手先部１６の目標軌道、手先部１６の目標移動速度及び流体圧シリンダ装置２２の目標押圧力のうちの少なくとも１つのパラメータが必要に応じて調整されて、作用力の適正化や押し付け力の最適化がリアルタイムで行われることになる。したがって、加工作業が進行する間、加工対象面の状況に的確に対応して常に高い加工品質を維持することができ、以て加工の歩留まりを改善することができる。
【００４２】
ところで、ワークのバリ取り、研磨、研削等の加工作業においては、ワークに対する加工工具の押し付け方向を最適化することで、高い加工品質を維持することができる。例えば、ワークの研磨や研削に際しては、一般に、ワークの加工対象面（平面でない場合は加工対象部位を含む仮想上の接平面）に対し直交する方向へ加工工具を押し付けながら加工を行う。それにより、加工対象面を全体に均一に加工することができる。ただし、ロボット１４の動作により加工工具とワークとを相対移動させて、広範囲に広がる加工対象面を漸進的に加工する際には、移動速度や切削抵抗等の種々の条件を考慮して、ワークの加工対象面（又は加工対象部位の接平面）に対し、直交方向だけでなく、直交方向から幾分ずれた方向へ加工工具を押し付けながら加工する場合もある。他方、ワークのバリ取りに際しては、加工工具がバリの末端面に対して必ずしも直交する方向へ押し付けられる訳ではなく、実験やオペレータの経験に基づき、バリの形状やワーク上での位置に応じた最適な押し付け方向を決定している（バリ取り作業に際しての加工工具の押し付け方向については、さらに後述する。）。
【００４３】
このような観点で、加工ロボットシステム１０は、目標軌道に沿って移動する手先部１６の移動方向が、流体圧シリンダ装置２２の作動による第１対象物１２と第２対象物１８との相対的な押し付け方向に直交又は斜交する方向であるように、構成することができる。この場合、検出装置２６は、少なくとも押し付け方向に直交する方向の力、又は押し付け方向に平行な軸線の周りのモーメントを検出できる構成を有する。そして、作用力算出部３０は、加工工具とワークとの間に、手先部１６の移動方向に平行な方向（つまり押し付け方向に交差する方向）へ作用している作用力（正確には実際の作用力の手先部移動方向への成分）を算出するように構成される。この構成によれば、流体圧シリンダ装置２２に負荷による圧力変動（つまり力の緩衝作用）を生じさせ得る押し付け方向の作用力ではなく、流体圧シリンダ装置２２自体によるそのような力の緩衝作用を受けない方向の作用力に基づいて、第１のパラメータ調整部３２によるパラメータ調整を実行できる。なお、「押し付け方向に直交又は斜交する方向」とは、方向を示す軸線同士が幾何学的に交わる構成だけでなく、軸線同士が互いに平行ではない位置関係で離隔する構成を包含する。
【００４４】
ここで、検出装置２６を構成する力覚センサが、ロボット１４のアーム先端の手首（図示せず）と流体圧シリンダ装置２２との間、又は支持部２０と流体圧シリンダ装置２２との間に設置される場合や、検出装置２６がロボット１４の制御軸や支持部２０（可動構造の場合）の制御軸の駆動回路から構成される場合には、上記した流体圧シリンダ装置２２による力の緩衝作用に起因して、押し付け方向に平行な方向への力の検出値、又は押し付け方向に直交する軸の周りのモーメントの検出値が、力やモーメントの実際値に対する誤差を含み得るものとなる。したがって上記したように、押し付け方向の作用力ではなく、流体圧シリンダ装置２２による力の緩衝作用を受けない（よって検出装置２６による力やモーメントの検出値が実際値に対する誤差を含まない）方向の作用力に基づいて、パラメータ調整を行うことにより、ロボット１４の動作を一層的確に制御して、システム構成要素への過負荷を防止し、加工の品質及び信頼性を向上させることが可能になる。
【００４５】
なお、目標軌道に沿って移動する手先部１６の移動方向が、流体圧シリンダ装置２２の作動による第１対象物１２と第２対象物１８との相対的な押し付け方向に一致する、という構成は、例えば、ワーク表面上で局所的に突出する突起物に対し、ロボット１４に支持した加工工具をワーク表面に沿って進行させながら、加工工具の刃先を突起物に衝突させて切除するような構成として、実現し得るものである。本発明に係る加工ロボットシステム１０は、このような構成にも適用できるものである。
【００４６】
作用力算出部３０が、加工工具とワークとの間に、流体圧シリンダ装置２２の作動による押し付け方向（つまりピストン変位方向）に平行な方向へ作用している作用力（正確には実際の作用力の押し付け方向への成分）を算出する構成では、前述したように、検出装置２６の構成や設置場所によっては、流体圧シリンダ装置２２による力の緩衝作用に起因して、検出装置２６による力やモーメントの検出値が実際値に対する誤差を含むことが懸念される。しかし、このような作用力が、例えば流体圧シリンダ装置２２自体の緩衝作用を超越するほどに大きくまた急激なものであった場合には、検出装置２６が、実際値に対する誤差を実質的に含むことなく力やモーメントを検出できるから、作用力算出部３０が作用力を算出でき、第１のパラメータ調整部３２がパラメータ調整を実行できることになる。
【００４７】
図２〜図１１は、本発明の他の様々な実施形態による加工ロボットシステムに具備される制御装置２８Ａ〜２８Ｊの構成を、機能ブロック図で示す。前提として、各実施形態による加工ロボットシステムは、図１の加工ロボットシステム１０に対応する基本的構成を有するものとし、対応する構成要素には共通の参照符号を付してその説明を省略するとともに、手先部１６及び支持部２０の図示を省略する。
【００４８】
図２に示す実施形態は、検出装置２６が、ロボット１４に設けられて、手先部１６に支持された第１対象物１２と手先部１６との間に加わる力及びモーメントの少なくとも一方を検出するシステム構成に適用されるものである。この実施形態において、制御装置２８Ａは、図１の制御装置２８が備えている各部３０〜３６に加えてさらに、目標軌道に沿った手先部１６の移動により変位する物体に作用する重力及び慣性力が、検出装置２６の検出動作に及ぼしている検出影響力及び検出影響モーメントの少なくとも一方を算出する検出影響算出部４０と、検出影響算出部４０が算出した検出影響力及び検出影響モーメントの少なくとも一方を補償するように、検出装置２６が検出した力及びモーメントの少なくとも一方のデータを補正するデータ補正部４２とを備える。そして、作用力算出部３０は、データ補正部４２が補正した力及びモーメントの少なくとも一方のデータを用いて、作用力を算出する。なお制御装置２８Ａは、制御装置２８と同様に、操作指令部３８を備えることができる。
【００４９】
図２の実施形態では、検出装置２６は、ロボット１４の手首（図示せず）と流体圧シリンダ装置２２との間、若しくは流体圧シリンダ装置２２と第１対象物１２との間（以上、流体圧シリンダ装置２２がロボット手先部１６に設置される場合。）、又はロボット１４の手首（図示せず）と第１対象物１２との間（流体圧シリンダ装置２２が支持部２０に設置される場合。）に設置される力覚センサから構成できる。或いは検出装置２６を、ロボット１４の制御軸の駆動回路から構成することもできる。
【００５０】
検出影響算出部４０が参照する「目標軌道に沿った手先部１６の移動により変位する物体」とは、検出装置２６が力覚センサからなる場合には、ロボット１４の手首に直接又は間接に支持される物体であって、システム構成により異なり、流体圧シリンダ装置２２、第１対象物１２、第２対象物１８、ハンド、工具ホルダ等を含むものである。他方、検出装置２６がロボット１４の制御軸の駆動回路からなる場合には、参照する制御軸よりもロボット末端側に位置する全ての物体を包含する。
【００５１】
検出影響算出部４０が算出する「重力及び慣性力が、検出装置２６の検出動作に及ぼしている検出影響力及び検出影響モーメントの少なくとも一方」とは、検出装置２６の検出結果を変動させ得る外的影響を意味する。検出影響力及び検出影響モーメントの方向は、特に限定されない。また、「検出影響力及び検出影響モーメントの少なくとも一方を算出する」とは、検出影響力や検出影響モーメントを直接的な測定ではなく計算により求める（すなわち推定する）ことを意味する。算出された検出影響力及び検出影響モーメントは、記憶装置２４に格納できる。なお、検出影響力又は検出影響モーメントの算出手法の詳細は、適当な例により後述する。
【００５２】
上記実施形態による制御装置２８Ａにおいては、検出影響算出部４０が、重力及び慣性力が検出装置２６の検出動作に及ぼしている検出影響力及び検出影響モーメントの少なくとも一方を算出し、データ補正部４２が、算出された検出影響力及び検出影響モーメントの少なくとも一方を補償するように検出装置２６の検出データを補正し、作用力算出部３０が、そのようにして補正されたデータを用いて作用力を算出するように構成したから、加工作業等の倣い作業中に手先部１６の姿勢の変化や加速度の付加によって検出影響力又は検出影響モーメントが発生したときに、検出影響力又は検出影響モーメントを相殺するように検出装置２６の検出データを自動補正することで、力やモーメントの検出値と実際値との誤差を低減し、以て、作用力算出部３０が算出する作用力の精度を向上させることができる。したがって、制御装置２８Ａを有する加工ロボットシステムによれば、システム構成要素への過負荷の防止並びに加工の品質及び信頼性の向上といった効果が一層確実なものとなる。
【００５３】
図３に示す実施形態は、検出装置２６が、力及びモーメントの双方を検出するシステム構成に適用されるものである。この実施形態において、制御装置２８Ｂは、図１の制御装置２８が備えている各部３０〜３６に加えてさらに、検出装置２６が検出した力及びモーメントの双方のデータに基づいて、倣い作業中に加工工具とワークとが互いに接触している接触位置を算出する接触位置算出部４４と、接触位置算出部４４が算出した接触位置に応じて、手先部１６の目標軌道、手先部１６の目標移動速度及び流体圧シリンダ装置２２の目標押圧力のうちの、少なくとも１つのパラメータを調整する第３のパラメータ調整部４６とを備える。また制御装置２８Ｂは、制御装置２８と同様に、操作指令部３８を備えることができる。
【００５４】
図３の実施形態では、流体圧シリンダ装置２２及び検出装置２６の設置場所及び構成は限定されない。また、接触位置算出部４４が算出する「加工工具とワークとが互いに接触している接触位置」とは、倣い作業実行中に実際にワークに接触している加工工具上の位置（例えば工具座標系、ロボット１４の基準座標系、検出装置２６が力覚センサからなる場合のセンサ固有の座標系等における座標）を意味し、「接触位置を算出する」とは、接触位置を直接的な測定ではなく計算により求める（すなわち推定する）ことを意味する。算出された接触位置は、記憶装置２４に格納できる。なお、接触位置の算出手法の詳細は、適当な例により後述する。
【００５５】
第３のパラメータ調整部４６が行う「接触位置に応じて、手先部１６の目標軌道、手先部１６の目標移動速度及び流体圧シリンダ装置２２の目標押圧力のうちの、少なくとも１つのパラメータを調整する」という行為は、倣い作業実行中の加工工具とワークとの実際の接触位置を参照しながら、手先部１６の軌道及び移動速度並びに流体圧シリンダ装置２２の押圧力の少なくとも１つを変化させて倣い作業（特に実際の加工作業）の状況を適宜調節することを目的として、記憶装置２４に格納した所望のパラメータ（初期値又は調整後の値）を調整する行為である。第３のパラメータ調整部４６による調整後のパラメータは、記憶装置２４に格納できる。ここで、第３のパラメータ調整部４６がどのパラメータを調整するか、またどのようにして調整するかについては、例えば、パラメータ毎に予め設定した種々の手法から、使用する加工工具の種類、加工対象のワークの種類、目的とする加工状態、ロボット１４の動作自由度等の諸条件に応じて適宜選択できるように構成できるものであり、その詳細は適当な例により後述する。
【００５６】
第１〜第３のパラメータ調整部３２、３６、４６は、オペレータが予め適当に設定した順序で、パラメータ調整を実行するように構成できる。この場合、第１〜第３のパラメータ調整部３２、３６、４６のうち実行順序が最初のパラメータ調整部が、記憶装置２４に格納した所望のパラメータを調整し、次のパラメータ調整部が、最初のパラメータ調整部による調整後の値を含む、記憶装置２４に格納した所望のパラメータを調整し、最後のパラメータ調整部が、最初のパラメータ調整部及び次のパラメータ調整部による調整後の値を含む、記憶装置２４に格納した所望のパラメータを調整することになる。或いは、第１〜第３のパラメータ調整部３２、３６、４６が、順序を定めずに並行して、記憶装置２４に格納した所望のパラメータを調整するように構成することもできる。ただし、第１及び第３のパラメータ調整部３２、４６が流体圧シリンダ装置２２の目標押圧力を調整する場合は、その前又は後に、第２のパラメータ調整部３６による調整を原則として実行するものとする。
【００５７】
操作指令部３８は、前述した第１又は第２のパラメータ調整部３２、３６による調整後の少なくとも１つのパラメータに加えて、又はその代わりに、第３のパラメータ調整部４６が調整した少なくとも１つのパラメータを用いて、ロボット１４及び流体圧シリンダ装置２２の少なくとも一方への操作指令を作成することができる。作成された操作指令は、記憶装置２４に格納できる。前述したように第１及び第３のパラメータ調整部３２、４６が同じパラメータを調整する場合には、例えば、それらパラメータ調整部３２、４６による調整に、重み付け等により予め優先順位を設定しておき、優先順位が高い方の調整後のパラメータを、操作指令部３８が操作指令の作成に用いるように構成することができる。第１及び第３のパラメータ調整部３２、４６が流体圧シリンダ装置２２の目標押圧力を調整する場合にも、操作指令部３８が、優先順位が高い方の調整後の目標押圧力を、第２のパラメータ調整部３６による調整の前又は後に、選択するように構成できる。
【００５８】
また、第１〜第３のパラメータ調整部３２、３６、４６によるパラメータの調整量（すなわち変化量）に予め限界値を定めておき、調整量が限界値を超えたパラメータについては、そのままの値では操作指令部３８が操作指令の作成に用いることができないように構成することもできる。例えば、前述したように第１〜第３のパラメータ調整部３２、３６、４６が所定の順序でパラメータ調整を実行する構成とした場合には、先に実行したパラメータ調整部による所望のパラメータの調整量が限界値を超えていないときに、その調整後のパラメータを、次のパラメータ調整部がさらに調整できるように構成することができる。この場合、先に実行したパラメータ調整部による所望のパラメータの調整量が限界値を超えたときには、そのパラメータについては調整後のものではなく、限界値に等しい調整量を含むパラメータを、次のパラメータ調整部がさらに調整できるように構成することができる。なお、パラメータの調整量の限界値は、システム構築の際に行う実験やオペレータの経験に基づき、予め設定できるものである。
【００５９】
ロボット１４に加工作業等の倣い作業を教示する際に、ロボット１４の手先部１６に支持した第１対象物１２に対して、前述した手先部座標系を設定し、手先部座標系を、その位置及び姿勢を変化させながら、実際のロボット１４又はロボットモデルにより、予め用意した複数の教示点に順次移動させる教示作業を行う場合がある。また、加工工具とワークとを相互に接触させる所望の接触位置（つまり目標接触位置）が、工具座標系の原点であるように、倣い作業を教示することも行われている。このような構成では、倣い作業実行中の加工工具とワークとの実際の接触位置が常に目標接触位置に合致していることが要求される。しかし現実には、教示軌道の誤差、ワーク形状のばらつき、加工工具の摩耗等に起因して、実際の接触位置と目標接触位置との間にずれが生じることが懸念されている。
【００６０】
このような状況下で、上記実施形態による制御装置２８Ｂにおいては、接触位置算出部４０が、倣い作業中の加工工具とワークとの実際の接触位置を算出し、第３のパラメータ調整部４６が、算出された接触位置に応じて少なくとも１つのパラメータを調整するように構成したから、教示軌道の誤差、ワーク形状のばらつき、加工工具の摩耗等により実際の接触位置が目標接触位置からずれた場合であっても、手先部１６の軌道及び移動速度並びに流体圧シリンダ装置２２の押圧力のうちの少なくとも１つを自動的に変化させるように、目標軌道、目標移動速度及び目標押圧力のうちの少なくとも１つのパラメータを適当に調整することができる。そして、そのような調整後のパラメータを用いてロボット１４や流体圧シリンダ装置２２を制御することで、特に加工作業中の加工工具によるワーク加工能力を一定に維持して、ワーク加工量の変動及び加工品質の低下を抑制する（すなわち加工作業の状況を調節する）ことが可能になる。したがって、上記した制御装置２８Ｂを有する加工ロボットシステムによれば、加工の品質及び信頼性を一層向上させることができる。
【００６１】
図４に示す実施形態は、加工工具が、駆動部を有する可動工具４８であって、記憶装置２４が、図１の記憶装置２４に記憶される種々のパラメータに加えて、可動工具４８の駆動部の目標動作速度をパラメータとして記憶するシステム構成に適用されるものである。この実施形態において、制御装置２８Ｃは、図１の制御装置２８が備えている各部３０〜３６に加えてさらに、作用力算出部３０が算出した作用力に応じて、可動工具４８の駆動部の目標動作速度を調整する第４のパラメータ調整部５０を備える。また制御装置２８Ｃは、第４のパラメータ調整部５０による調整後の目標動作速度を用いて、可動工具４８の駆動部への操作指令を作成し出力する操作指令部３８を、制御装置２８と同様に備えることができる。
【００６２】
図４の実施形態では、流体圧シリンダ装置２２及び検出装置２６の設置場所及び構成は限定されない。また、第４のパラメータ調整部５０が行う「作用力に応じて、可動工具４８の駆動部の目標動作速度を調整する」という行為は、倣い作業実行中の実際の作用力を参照しながら、可動工具４８の駆動部の動作速度を変化させて倣い作業（特に実際の加工作業）の状況を適宜調節することを目的として、記憶装置２４に格納したパラメータ（初期値又は調整後の値）を調整する行為である。第４のパラメータ調整部５０による調整後の目標動作速度は、記憶装置２４に格納できる。なお、第４のパラメータ調整部５０による目標動作速度の調整手法の詳細は、適当な例により後述する。
【００６３】
操作指令部３８は、ロボット１４及び流体圧シリンダ装置２２の少なくとも一方への操作指令の作成に加えて、又はその代わりに、第４のパラメータ調整部５０が調整したパラメータ（目標動作速度）を用いて、可動工具４８の駆動部への操作指令を作成することができる。作成された操作指令は、記憶装置２４に格納できる。
【００６４】
上記実施形態による制御装置２８Ｃにおいては、第４のパラメータ調整部５０が、算出された実際の作用力に応じて可動工具４８の駆動部の目標動作速度を調整するように構成したから、実際の作用力の大きさが適正範囲から逸脱している場合に、可動工具４８の駆動部の動作速度を自動的に変化させるように、目標動作速度を適当に調整することができる。そして、そのような調整後の目標動作速度を用いて可動工具４８を制御することで、特に加工作業中の実際の作用力の大きさが適正範囲に収まるような作業状況に変更する（すなわち加工作業の状況を自動調節する）ことが可能になる。したがって、上記した制御装置２８Ｃを有する加工ロボットシステムによれば、加工の品質及び信頼性を一層向上させることができる。なお、図３に示す制御装置２８Ｂを、加工工具が可動工具４８であって記憶装置２４が可動工具４８の駆動部の目標動作速度も記憶するシステム構成に適用する場合には、第３のパラメータ調整部４６を、加工工具とワークとの接触位置に応じて、手先部１６の目標軌道、手先部１６の目標移動速度、流体圧シリンダ装置２２の目標押圧力及び可動工具４８の目標動作速度のうちの、少なくとも１つのパラメータを調整する構成とすることができる。
【００６５】
図５に示す実施形態において、制御装置２８Ｄは、図１の制御装置２８が備えている各部３０〜３６に加えてさらに、作用力算出部３０が算出した作用力に基づいて、ワークの加工済領域の加工状態を良否判定する加工状態判定部５２を備える。また制御装置２８Ｄは、制御装置２８と同様に、操作指令部３８を備えることができる。この実施形態では、流体圧シリンダ装置２２及び検出装置２６の設置場所及び構成は限定されない。
【００６６】
加工状態判定部５２が行う「作用力に基づいて、ワークの加工済領域の加工状態を良否判定する」という行為は、倣い作業の一種である加工作業の実行中に実際の作用力を参照しながらリアルタイムで、或いは記憶装置２４に格納した作用力の時系列データを加工作業完了後に参照して、当該作用力の大きさや変動態様に基づき加工状態の良否を判断する行為である。なお、加工状態判定部５２による加工状態の良否判定手法の詳細は、適当な例により後述する。
【００６７】
上記実施形態による制御装置２８Ｄにおいては、加工状態判定部５２が、算出された作用力に基づいてワークの加工済領域の加工状態を良否判定するように構成したから、一連の加工動作制御フローにおけるルーチンワークとして自動的に、或いはオペレータの要求に従って随時に、迅速かつ容易にワークの加工状態の良否を判断することができる。したがって、上記実施形態による制御装置２８Ｄを有する加工ロボットシステムによれば、加工の品質及び信頼性を一層向上させることができる。また、加工作業中に良否を判定する構成とすれば、加工作業完了後に良否判定を行う構成に比べて、良否判定のための時間を節約することができる。
【００６８】
図６に示す実施形態において、制御装置２８Ｅは、図１の制御装置２８が備えている各部３０〜３６に加えてさらに、流体圧シリンダ装置２２の作動により変位する物体に作用する重力及び慣性力が、流体圧シリンダ装置２２に及ぼしているシリンダ影響モーメントを算出する影響モーメント算出部５４と、影響モーメント算出部５４が算出したシリンダ影響モーメントに応じて、手先部１６の目標軌道と目標移動速度との少なくとも一方を調整する第５のパラメータ調整部５６とを備える。また制御装置２８Ｅは、制御装置２８と同様に、操作指令部３８を備えることができる。
【００６９】
図６の実施形態では、流体圧シリンダ装置２２及び検出装置２６の設置場所及び構成は限定されない。また、影響モーメント算出部５４が算出する「重力及び慣性力が、流体圧シリンダ装置２２に及ぼしているシリンダ影響モーメント」とは、流体圧シリンダ装置２２の構成部品に捻りや曲げの応力を生じさせ得るモーメントを意味し、「シリンダ影響モーメントを算出する」とは、シリンダ影響モーメントを直接的な測定ではなく計算により求める（すなわち推定する）ことを意味する。シリンダ影響モーメントの方向は、特に限定されない。算出されたシリンダ影響モーメントは、記憶装置２４に格納できる。なお、シリンダ影響モーメントの算出手法は、図１の制御装置２８に関連して説明したシリンダ影響力の算出手法に準ずる。
【００７０】
第５のパラメータ調整部５６が行う「シリンダ影響モーメントに応じて、手先部１６の目標軌道と目標移動速度との少なくとも一方を調整する」という行為は、倣い作業実行中に生じるシリンダ影響モーメントを参照しながら、手先部１６の軌道及び移動速度の少なくとも一方を変化させて流体圧シリンダ装置２２の構成部品に生ずる応力を軽減することを目的として、記憶装置２４に格納した所望のパラメータ（初期値又は調整後の値）を調整する行為である。第５のパラメータ調整部５６による調整後のパラメータは、記憶装置２４に格納できる。ここで、第５のパラメータ調整部５６がいずれのパラメータを調整するか、またどのようにして調整するかについては、例えば、パラメータ毎に予め設定した種々の手法（手先部１６の速度低下、停止、軌道の円滑化等）から、使用する加工工具の種類、加工対象のワークの種類、目的とする加工状態、ロボット１４の動作自由度等の諸条件に応じて適宜選択できるように構成できるものである。
【００７１】
操作指令部３８は、前述した第１又は第２のパラメータ調整部３２、３６による調整後の少なくとも１つのパラメータに加えて、又はその代わりに、第５のパラメータ調整部５６が調整した少なくとも１つのパラメータを用いて、ロボット１４及び流体圧シリンダ装置２２の少なくとも一方への操作指令を作成することができる。作成された操作指令は、記憶装置２４に格納できる。前述したように、第１及び第５のパラメータ調整部３２、５６が同じパラメータを調整する場合には、例えば、それらパラメータ調整部３２、５６による調整に、重み付け等により予め優先順位を設定しておき、優先順位が高い方の調整後のパラメータを、操作指令部３８が操作指令の作成に用いるように構成することができる。また、制御装置２８Ｂと同様に、第１、第２及び第５のパラメータ調整部３２、３６、５６によるパラメータの調整量（すなわち変化量）に予め限界値を定めておき、調整量が限界値を超えたパラメータについては、そのままの値では操作指令部３８が操作指令の作成に用いることができないように構成することもできる。
【００７２】
上記実施形態による制御装置２８Ｅにおいては、第５のパラメータ調整部５６が、シリンダ影響モーメントに応じて手先部１６の目標軌道や目標移動速度を調整するように構成したから、手先部１６の動作に起因して流体圧シリンダ装置２２に所定の閾値を超えるシリンダ影響モーメントが印加されたときに、手先部１６の動作を自動的に変化させるように、目標軌道及び目標移動速度のうちの少なくとも一方のパラメータを適当に調整することができる。そして、そのような調整後のパラメータを用いてロボット１４を制御することで、所定の閾値を超えるシリンダ影響モーメントを低減することが可能になる。したがって、上記した制御装置２８Ｅを有する加工ロボットシステムによれば、流体圧シリンダ装置２２の構成部品に過大な応力が生じないようにして流体圧シリンダ装置２２の構造的安定性及び安全性を高めることができ、以て、加工の品質及び信頼性を一層向上させることができる。
【００７３】
図７に示す実施形態は、流体圧シリンダ装置２２のピストン変位量を検出する変位検出センサ５８をさらに備えるシステム構成に適用されるものである。この実施形態において、制御装置２８Ｆは、図１の制御装置２８が備えている各部３０〜３６に加えてさらに、目標軌道に沿った手先部１６の移動中に、変位検出センサ５８が検出したピストン変位量を参照して、ピストン変位量が流体圧シリンダ装置２２の構造によって予め定められた上限値又は下限値である場合に、ピストン変位量を上限値と下限値との間の値に移行させるように、手先部１６の目標軌道を調整する第６のパラメータ調整部６０を備える。また制御装置２８Ｆは、制御装置２８と同様に、操作指令部３８を備えることができる。
【００７４】
図７の実施形態では、流体圧シリンダ装置２２及び検出装置２６の設置場所及び構成は限定されない。変位検出センサ５８は、例えばリニアエンコーダ等の、直線的に変位する物体の変位量を検出できるものであればよい。変位検出センサ５８が検出したピストン変位量のデータは、制御装置２８Ｆに入力される。
【００７５】
第６のパラメータ調整部６０が行う「ピストン変位量を上限値と下限値との間の値に移行させるように、手先部１６の目標軌道を調整する」という行為は、手先部１６が目標軌道に沿って移動している間に流体圧シリンダ装置２２のピストン変位量が上限値又は下限値であるとき（すなわち流体圧シリンダ装置２２が目標押圧力を生じていない可能性が有るとき）に、手先部１６の軌道を変化させて流体圧シリンダ装置２２を目標押圧力を生じ得る位置に移動させることを目的として、記憶装置２４に格納したパラメータ（初期値又は調整後の値）を調整する行為である。第６のパラメータ調整部６０による目標軌道の調整手法としては、例えば、ロボット１４の各制御軸の駆動部に過大な負荷が掛からないようにしながら、予め指定した移動量だけ迅速に目標軌道を変更したり、変位検出センサ５８からフィードバックされるピストン変位量が予め指定した数値を示すまで、目標軌道を変更したりする手法を挙げることができる。第６のパラメータ調整部６０による調整後のパラメータは、記憶装置２４に格納できる。
【００７６】
操作指令部３８は、前述した第１又は第２のパラメータ調整部３２、３６による調整後の少なくとも１つのパラメータに加えて、又はその代わりに、第６のパラメータ調整部６０が調整したパラメータ（目標軌道）を用いて、ロボット１４及び流体圧シリンダ装置２２の少なくとも一方への操作指令を作成することができる。作成された操作指令は、記憶装置２４に格納できる。前述したように、第１及び第６のパラメータ調整部３２、６０が同じパラメータを調整する場合には、例えば、それらパラメータ調整部３２、６０による調整に、重み付け等により予め優先順位を設定しておき、優先順位が高い方の調整後のパラメータを、操作指令部３８が操作指令の作成に用いるように構成することができる。また、制御装置２８Ｂと同様に、第１、第２及び第６のパラメータ調整部３２、３６、６０によるパラメータの調整量（すなわち変化量）に予め限界値を定めておき、調整量が限界値を超えたパラメータについては、そのままの値では操作指令部３８が操作指令の作成に用いることができないように構成することもできる。
【００７７】
ここで、流体圧シリンダ装置２２の作動（したがって目標押圧力）が、前述したシリンダ影響力を補償するように第２のパラメータ調整部３６によって適切に調整されていることを前提とすると、流体圧シリンダ装置２２のピストン変位量が上限値又は下限値であるときには、加工工具とワークとが互いに接触せずに離れてしまっているか、或いは加工工具とワークとが流体圧シリンダ装置の作動ストローク以上に互いに接近しようとしている（したがって過剰な押し付け力が生じている）可能性がある。いずれの状況下でも、流体圧シリンダ装置２２は目標押圧力を正確に発生することが困難である。
【００７８】
このような状況下で、上記実施形態による制御装置２８Ｆにおいては、第６のパラメータ調整部６０が、流体圧シリンダ装置２２のピストン変位量が上限値又は下限値であるときに上限値と下限値との間の値に移行させるべく手先部１６の目標軌道を調整するように構成したから、加工工具とワークとが互いに接触せずに離れてしまっているときには、加工工具とワークとを互いに接触させる方向へ手先部１６の軌道を自動的に変化させ、また、加工工具とワークとが流体圧シリンダ装置の作動ストローク以上に互いに接近しようとしている（したがって過剰な押し付け力が生じている）ときには、加工工具とワークとを互いに離反させる方向へ手先部１６の軌道を自動的に変化させるように、目標軌道を適当に調整することができる。そして、そのような調整後のパラメータ（目標軌道）を用いてロボット１４を制御することで、流体圧シリンダ装置２２を、目標押圧力を適正に生じ得る位置に移動させることが可能になる。したがって、上記した制御装置２８Ｆを有する加工ロボットシステムによれば、ロボット１４、支持部２０、流体圧シリンダ装置２２、加工工具、ワーク等のシステム構成要素に過負荷が掛からないようにしてそれらシステム構成要素の構造的安定性及び安全性を高めることができ、また、加工工具とワークとの間の押し付け力の最適化により加工の品質及び信頼性を一層向上させることができる。
【００７９】
図８に示す実施形態は、流体圧シリンダ装置２２のピストン変位量を検出する変位検出センサ５８と、ロボット１４の制御軸動作位置を検出する軸位置検出部６２とをさらに備えるシステム構成に適用されるものである。この実施形態において、制御装置２８Ｇは、図１の制御装置２８が備えている各部３０〜３６に加えてさらに、目標軌道に沿った手先部１６の移動中に、変位検出センサ５８が検出したピストン変位量のデータと軸位置検出部６２が検出した制御軸動作位置のデータとに基づいて、第１対象物１２の位置を複数点で算出し、それら複数点に亘る位置の変化に基づいて手先部１６の実際の移動方向を算出し、算出した実際の移動方向に対し零以外の予め定めた押し付け角度を成す方向に、流体圧シリンダ装置２２の作動による第１対象物１２と第２対象物１８との相対的な目標押し付け方向を決定する押付方向決定部６４と、押付方向決定部６４が決定した目標押し付け方向に対して手先部１６の移動方向が上記押し付け角度を成すように、手先部１６の目標軌道を調整する第７のパラメータ調整部６６とを備える。また制御装置２８Ｇは、制御装置２８と同様に、操作指令部３８を備えることができる。
【００８０】
図８の実施形態では、流体圧シリンダ装置２２及び検出装置２６の設置場所及び構成は限定されない。変位検出センサ５８は、例えばリニアエンコーダ等の、直線的に変位する物体の変位量を検出できるものであればよい。変位検出センサ５８が検出したピストン変位量のデータは、制御装置２８Ｇに入力される。軸位置検出部６２は、例えばロボット１４の個々の制御軸を駆動するサーボモータに設けられるパルスコーダ等の動作角度検出器から構成できる。軸位置検出部６２が検出した制御軸動作位置のデータは、制御装置２８Ｇに入力される。
【００８１】
押付方向決定部６４が行う「流体圧シリンダ装置２２の作動による第１対象物１２と第２対象物１８との相対的な目標押し付け方向を決定する」という行為は、ワークのバリ取り、研磨、研削等の加工作業に際し、種々の誤差要因により手先部１６の実際の移動方向が必ずしも目標軌道に沿った方向ではない可能性を考慮した上で、ワークの加工対象面が結果的に最高の品質で加工されることを目的として、手先部１６が目標軌道に沿って移動している間に、手先部１６の実際の移動方向と予め定めた所望の押し付け角度とに基づき、流体圧シリンダ装置２２による最適な目標押し付け方向を確定する行為である。ここで、この実施形態では、目標軌道に沿って移動する手先部１６の移動方向が、流体圧シリンダ装置２２の作動による第１対象物１２と第２対象物１８との相対的な押し付け方向に一致する、という構成を除外する。決定された目標押し付け方向は、記憶装置２４に格納できる。なお、押付方向決定部６４による目標押し付け方向の決定手法の詳細は、適当な例により後述する。
【００８２】
第７のパラメータ調整部６６が行う「押付方向決定部６４が決定した目標押し付け方向に対して手先部１６の移動方向が上記押し付け角度を成すように、手先部１６の目標軌道を調整する」という行為は、手先部１６の目標軌道に従って得られる流体圧シリンダ装置２２の押し付け方向が最適な押し付け方向からずれている可能性を考慮した上で、手先部１６の軌道を変化させて流体圧シリンダ装置２２が最適な押し付け方向で作動できるようにすることを目的として、記憶装置２４に格納したパラメータ（初期値又は調整後の値）を調整する行為である。第７のパラメータ調整部６６による調整後のパラメータは、記憶装置２４に格納できる。なお、第７のパラメータ調整部６６による目標軌道の調整手法の詳細は、適当な例により後述する。
【００８３】
操作指令部３８は、前述した第１又は第２のパラメータ調整部３２、３６による調整後の少なくとも１つのパラメータに加えて、又はその代わりに、第７のパラメータ調整部６６が調整したパラメータ（目標軌道）を用いて、ロボット１４及び流体圧シリンダ装置２２の少なくとも一方への操作指令を作成することができる。作成された操作指令は、記憶装置２４に格納できる。前述したように、第１及び第７のパラメータ調整部３２、６６が同じパラメータを調整する場合には、例えば、それらパラメータ調整部３２、６６による調整に、重み付け等により予め優先順位を設定しておき、優先順位が高い方の調整後のパラメータを、操作指令部３８が操作指令の作成に用いるように構成することができる。また、制御装置２８Ｂと同様に、第１、第２及び第７のパラメータ調整部３２、３６、６６によるパラメータの調整量（すなわち変化量）に予め限界値を定めておき、調整量が限界値を超えたパラメータについては、そのままの値では操作指令部３８が操作指令の作成に用いることができないように構成することもできる。
【００８４】
なお、流体圧シリンダ装置２２による押し付け方向は、１軸の構成においてはピストンの作動方向と同義であり、手先部１６の軌道や支持部２０（可動構造の場合）の可動部の構造によって一義的に決まる。他方、２軸以上の複軸の流体圧シリンダ装置２２では、複数のピストンの作動方向の合成方向が押し付け方向になり、手先部１６の軌道や支持部２０の構造に加えて、各軸方向への押圧力によって決まる。
【００８５】
上記実施形態による制御装置２８Ｇにおいては、押付方向決定部６４が、流体圧シリンダ装置２２による最適な目標押し付け方向を決定し、第７のパラメータ調整部６６が、最適な目標押し付け方向に従って手先部１６の目標軌道を調整するように構成したから、流体圧シリンダ装置２２の押し付け方向が最適な押し付け方向からずれている場合に、押し付け方向のずれを補正する方向へ手先部１６の軌道を自動的に変化させるように、目標軌道を適当に調整することができる。そして、そのような調整後のパラメータ（目標軌道）を用いてロボット１４を制御することで、流体圧シリンダ装置２２を最適な押し付け方向で作動させることが可能になり、以て、加工工具とワークとの間の押し付け力を最適化することが可能になる。したがって、上記した制御装置２８Ｇを有する加工ロボットシステムによれば、加工工具とワークとの間の押し付け力の最適化により加工の品質及び信頼性を一層向上させることができる。また、手先部１６の目標軌道をロボット１４に教示する際に、大雑把な軌道を教示することが許容されるので、教示作業が容易になる利点も得られる。
【００８６】
図９に示す実施形態は、図８の実施形態と同様に、流体圧シリンダ装置２２のピストン変位量を検出する変位検出センサ５８と、ロボット１４の制御軸動作位置を検出する軸位置検出部６２とをさらに備えるシステム構成に適用されるものである。この実施形態において、制御装置２８Ｈは、図１の制御装置２８が備えている各部３０〜３６に加えてさらに、手先部１６の移動中に、変位検出センサ５８が検出したピストン変位量のデータと軸位置検出部６２が検出した制御軸動作位置のデータとに基づいて、第１対象物１２の位置を複数点で算出し、それら複数点に亘る位置の変化に基づいて手先部１６の実際の移動方向を算出し、算出した実際の移動方向に対し零以外の予め定めた押し付け角度を成す方向に、流体圧シリンダ装置２２の作動による第１対象物１２と第２対象物１８との相対的な目標押し付け方向を決定する押付方向決定部６８と、押付方向決定部６８が決定した目標押し付け方向に対して手先部１６の移動方向が上記押し付け角度を成すように、手先部１６の目標軌道を生成する目標軌道生成部７０とを備える。また制御装置２８Ｈは、制御装置２８と同様に、操作指令部３８を備えることができる。
【００８７】
図９の実施形態では、流体圧シリンダ装置２２及び検出装置２６の設置場所及び構成は限定されない。変位検出センサ５８は、例えばリニアエンコーダ等の、直線的に変位する物体の変位量を検出できるものであればよい。変位検出センサ５８が検出したピストン変位量のデータは、制御装置２８Ｈに入力される。軸位置検出部６２は、例えばロボット１４の個々の制御軸を駆動するサーボモータに設けられるパルスコーダ等の動作角度検出器から構成できる。軸位置検出部６２が検出した制御軸動作位置のデータは、制御装置２８Ｈに入力される。
【００８８】
押付方向決定部６８が行う「流体圧シリンダ装置２２の作動による第１対象物１２と第２対象物１８との相対的な目標押し付け方向を決定する」という行為は、ワークのバリ取り、研磨、研削等の加工作業に際し、ワークの加工対象面が結果的に最高の品質で加工されることを目的として、手先部１６が目標軌道（ただし目標軌道生成部７０が生成した現在位置までの目標軌道）に沿って移動している間に、手先部１６の現在位置までの実際の移動方向と予め定めた所望の押し付け角度とに基づき、流体圧シリンダ装置２２による最適な目標押し付け方向を確定する行為である。ここで、この実施形態では、目標軌道に沿って移動する手先部１６の移動方向が、流体圧シリンダ装置２２の作動による第１対象物１２と第２対象物１８との相対的な押し付け方向に一致する、という構成を除外する。決定された目標押し付け方向は、記憶装置２４に格納できる。なお、押付方向決定部６８による目標押し付け方向の決定手法の詳細は、適当な例により後述する。
【００８９】
目標軌道生成部７０が行う「押付方向決定部６８が決定した目標押し付け方向に対して手先部１６の移動方向が上記押し付け角度を成すように、手先部１６の目標軌道を生成する」という行為は、流体圧シリンダ装置２２が最適な押し付け方向で作動できるようにすることを目的として、手先部１６の目標軌道という制御パラメータを自動的かつ逐次的に生成する行為である。ここでは、手先部１６の初期位置、初期移動方向、初期移動速度等の初期パラメータに従ってロボット１４が手先部１６の移動を開始した後に、押付方向決定部６８による目標押付方向の決定と、目標軌道生成部７０による目標軌道の生成とが、例えば制御周期毎に、自動的に遂行される。目標軌道生成部７０が生成したパラメータは、記憶装置２４に格納できる。なお、目標軌道生成部７０による目標軌道の生成手法の詳細は、適当な例により後述する。
【００９０】
操作指令部３８は、目標軌道生成部７０が生成したパラメータ（目標軌道）を用いて、ロボット１４への操作指令を作成することができる。さらに操作指令部３８は、記憶装置２４に格納したパラメータ（初期値又は調整後の値。目標軌道生成部７０が生成したパラメータを含む。）に対する前述した第１又は第２のパラメータ調整部３２、３６による調整後の少なくとも１つのパラメータを用いて、ロボット１４及び流体圧シリンダ装置２２の少なくとも一方への操作指令を作成することができる。作成された操作指令は、記憶装置２４に格納できる。
【００９１】
上記実施形態による制御装置２８Ｈにおいては、押付方向決定部６８が、流体圧シリンダ装置２２による最適な目標押し付け方向を決定し、目標軌道生成部７０が、最適な目標押し付け方向に従って手先部１６の目標軌道を自動的かつ逐次的に生成するように構成したから、ロボット１４に手先部１６の目標軌道を教示することなく、手先部１６の初期位置、初期移動方向、初期移動速度等の初期パラメータを設定するだけで、倣い作業を実行しながら、ワークの加工対象面に正確に倣う手先部１６の目標軌道を容易に生成することができる。そして、そのようにして生成したパラメータ（目標軌道）を用いてロボット１４を制御することで、流体圧シリンダ装置２２を最適な押し付け方向で作動させることが可能になり、以て、加工工具とワークとの間の押し付け力を最適化することが可能になる。したがって、上記した制御装置２８Ｈを有する加工ロボットシステムによれば、加工工具とワークとの間の押し付け力の最適化により加工の品質及び信頼性を一層向上させることができる。
【００９２】
図１０に示す実施形態は、図８の実施形態と同様に、流体圧シリンダ装置２２のピストン変位量を検出する変位検出センサ５８と、ロボット１４の制御軸動作位置を検出する軸位置検出部６２とをさらに備えるシステム構成に適用されるものである。この実施形態において、流体圧シリンダ装置２２は、互いに交差する複数の制御軸を備えた複軸の構成を有する。また、この実施形態において、制御装置２８Ｉは、図１の制御装置２８が備えている各部３０〜３６に加えてさらに、目標軌道に沿った手先部１６の移動中に、変位検出センサ５８が検出したピストン変位量のデータと軸位置検出部６２が検出した制御軸動作位置のデータとに基づいて、第１対象物１２の位置を複数点で算出し、それら複数点に亘る位置の変化に基づいて手先部１６の実際の移動方向を算出し、算出した実際の移動方向に対し予め定めた押し付け角度を成す方向に、流体圧シリンダ装置２２の作動による第１対象物１２と第２対象物１８との相対的な目標押し付け方向を決定する押付方向決定部７２と、押付方向決定部７２が決定した目標押し付け方向に、流体圧シリンダ装置２２の作動による第１対象物１２と第２対象物１８との相対的な実際の押し付け方向が一致するように、流体圧シリンダ装置２２の複数の制御軸を動作させて押圧力を制御するシリンダ動作指令部７４とを備える。制御装置２８Ｉは、制御装置２８と同様に、操作指令部３８を備えることができ、その場合には、シリンダ動作指令部７４を操作指令部３８に組み込むことができる。
【００９３】
図１０の実施形態では、流体圧シリンダ装置２２及び検出装置２６の設置場所及び構成は、流体圧シリンダ装置２２が複軸の構成を有する点以外は、限定されない。変位検出センサ５８は、例えばリニアエンコーダ等の、直線的に変位する物体の変位量を検出できるものであればよい。変位検出センサ５８が検出したピストン変位量のデータは、制御装置２８Ｉに入力される。軸位置検出部６２は、例えばロボット１４の個々の制御軸を駆動するサーボモータに設けられるパルスコーダ等の動作角度検出器から構成できる。軸位置検出部６２が検出した制御軸動作位置のデータは、制御装置２８Ｉに入力される。
【００９４】
押付方向決定部７２が行う「流体圧シリンダ装置２２の作動による第１対象物１２と第２対象物１８との相対的な目標押し付け方向を決定する」という行為は、ワークのバリ取り、研磨、研削等の加工作業に際し、ワークの加工対象面が結果的に最高の品質で加工されることを目的として、手先部１６が目標軌道に沿って移動している間に、手先部１６の実際の移動方向と予め定めた所望の押し付け角度とに基づき、複軸の流体圧シリンダ装置２２による最適な目標押し付け方向を確定する行為である。ここで、この実施形態は、目標軌道に沿って移動する手先部１６の移動方向が、流体圧シリンダ装置２２の作動による第１対象物１２と第２対象物１８との相対的な押し付け方向に一致する、という構成を包含する。決定された目標押し付け方向は、記憶装置２４に格納できる。なお、押付方向決定部７２による目標押し付け方向の決定手法は、図８の実施形態における押付方向決定部６４による決定手法と同様の手法とすることができる。
【００９５】
シリンダ動作指令部７４が行う「流体圧シリンダ装置２２の複数の制御軸を動作させて押圧力を制御する」という行為は、複軸の流体圧シリンダ装置２２が最適な押し付け方向で作動できるようにすることを目的として、流体圧シリンダ装置２２の個々の制御軸への動作指令（したがって個々のピストン圧力（流体圧シリンダ装置２２の押圧力の分力）の指令）を作成し出力する行為である。作成した動作指令は、記憶装置２４に格納できる。
【００９６】
上記実施形態による制御装置２８Ｉにおいては、押付方向決定部７２が、複軸の流体圧シリンダ装置２２による最適な目標押し付け方向を決定し、シリンダ動作指令部７４が、最適な目標押し付け方向に従って流体圧シリンダ装置２２の複数の制御軸を動作させるように構成したから、倣い作業を実行しながら、複軸の流体圧シリンダ装置２２を最適な押し付け方向で作動させることができ、以て、加工工具とワークとの間の押し付け力を最適化することができる。したがって、上記した制御装置２８Ｉを有する加工ロボットシステムによれば、加工工具とワークとの間の押し付け力の最適化により加工の品質及び信頼性を一層向上させることができる。また、手先部１６の目標軌道をロボット１４に教示する際に、大雑把な軌道を教示することが許容されるので、教示作業が容易になる利点も得られる。
【００９７】
図１１に示す実施形態は、ロボット１４の制御軸動作位置を検出する軸位置検出部６２をさらに備えるシステム構成に適用されるものである。この実施形態において、流体圧シリンダ装置２２は、ピストン（図示せず）を解除可能に固定するピストン固定部７６を備える。また、この実施形態において、制御装置２８Ｊは、図１の制御装置２８が備えている各部３０〜３６に加えてさらに、加工作業の完了後に、ピストン固定部７６により流体圧シリンダ装置２２のピストンを固定した状態で、検出装置２６が検出する力及びモーメントの少なくとも一方のデータを参照して、加工工具とワークとの間に予め定めた力が作用するように加工工具をワークの加工済領域に接触させながら手先部１６を移動させるロボット動作指令部７８と、加工作業の完了後に、ロボット動作指令部７８が手先部１６を移動させている間に、検出装置２６が検出する力及びモーメントの少なくとも一方のデータ、又は軸位置検出部６２が検出する制御軸動作位置のデータに基づいて、ワークの加工済領域の加工状態の良否を判定する加工状態判定部８０とを備える。制御装置２８Ｊは、制御装置２８と同様に、操作指令部３８を備えることができ、その場合には、ロボット動作指令部７８を操作指令部３８に組み込むことができる。
【００９８】
図１１の実施形態では、流体圧シリンダ装置２２及び検出装置２６の設置場所及び構成は、流体圧シリンダ装置２２がピストン固定部７６を備える点以外は、限定されない。ピストン固定部７６は、例えば制御装置２８Ｊからの指令に従って、ピストンを固定状態と可動状態との間で切り替えるように動作できる。軸位置検出部６２は、例えばロボット１４の個々の制御軸を駆動するサーボモータに設けられるパルスコーダ等の動作角度検出器から構成できる。軸位置検出部６２が検出した制御軸動作位置のデータは、制御装置２８Ｊに入力される。
【００９９】
ロボット動作指令部７８が行う「加工工具とワークとの間に予め定めた力が作用するように加工工具をワークの加工済領域に接触させながら手先部１６を移動させる」という行為は、種々の加工作業の完了後に、ワークの加工済領域の加工状態を検出することを目的として、加工工具とワークとの間に作用する力が所定の大きさになるようにロボット１４の個々の制御軸への動作指令を作成し出力する行為である。作成した動作指令は、記憶装置２４に格納できる。
【０１００】
加工状態判定部８０が行う「検出装置２６が検出する力及びモーメントの少なくとも一方のデータ、又は軸位置検出部６２が検出した制御軸動作位置のデータに基づいて、ワークの加工済領域の加工状態を良否判定する」という行為は、加工作業の完了後、ロボット動作指令部７８により手先部１６が移動している間に検出装置２６又は軸位置検出部６２が取得した検出データに基づき、加工状態の良否を判断する行為である。判定結果は、記憶装置２４に格納できる。なお、加工状態判定部８０による加工状態の良否判定手法の詳細は、適当な例により後述する。
【０１０１】
上記実施形態による制御装置２８Ｊにおいては、加工作業の完了後に、ピストン固定部７６により流体圧シリンダ装置２２のピストンを固定した状態で、ロボット動作指令部７８が、加工工具をワークの加工済領域に所定の力で接触させながら手先部１６を移動させ、加工状態判定部８０が、検出装置２６又は軸位置検出部６２の検出データに基づいてワークの加工済領域の加工状態を良否判定するように構成したから、一連の加工動作制御フローにおけるルーチンワークとして自動的に、或いはオペレータの要求に従って随時に、迅速かつ容易にワークの加工状態の良否を判断することができる。したがって、上記した制御装置２８Ｊを有する加工ロボットシステムによれば、加工の品質及び信頼性を一層向上させることができる。また、前述した種々のパラメータ調整を行うために用いられる検出装置２６を利用して、ワークの加工状態の良否判定を実施できるので合理的である。
【０１０２】
図２〜図１１に示す制御装置２８Ａ〜２８Ｊが有する種々の追加機能実現部は、それらのうちの幾つかを不都合が生じないように適当に組み合わせて、図１に示す加工ロボットシステム１０の制御装置２８に加入することができる。いずれの組み合わせ機能を有する制御装置２８によっても、ロボット、支持部、流体圧シリンダ装置、加工工具、ワーク等のシステム構成要素に過負荷が掛からないようにして、それらシステム構成要素の構造的安定性及び安全性を高めることができ、また、作用力の適正化及び押し付け力の最適化により、過剰加工や加工不足を回避して加工の品質及び信頼性を向上させることができる、という、本発明の加工ロボットシステム１０に共通する効果が奏される。なお、制御装置２８Ａ〜２８Ｊから図１の制御装置２８の基本構成を除外して、それぞれに独自の機能を有する別の制御装置を構成することもできる。
【０１０３】
図１２〜図１７は、流体圧シリンダ装置２２がロボット１４の手先部１６に設置されるとともに検出装置２６が力覚センサ９０から構成される加工ロボットシステム１０の、幾つかの典型的なシステム構成を模式図的に例示する。
【０１０４】
図１２に示すシステム構成では、力覚センサ９０が、ロボット１４のアーム先端の手首９１と流体圧シリンダ装置２２との間に設置され、流体圧シリンダ装置２２の出力部に、第１対象物１２である加工工具９２が工具ホルダ９４に支持されて固定的に取り付けられている。また、ロボット１４から離れて配置されたテーブル等の支持構造物９５（支持部２０の一部）に、第２対象物１８であるワーク９６が治具（図示せず）により固定して支持されている。
【０１０５】
図１３に示すシステム構成では、力覚センサ９０が、ロボット１４の手首９１と流体圧シリンダ装置２２との間に設置され、流体圧シリンダ装置２２の出力部に、第１対象物１２であるワーク９６がハンド９８に把持されて固定的に取り付けられている。また、ロボット１４から離れて配置された支持構造物９５に、第２対象物１８である加工工具９２が工具ホルダ９４により固定して支持されている。
【０１０６】
図１４に示すシステム構成では、ロボット１４から離れて配置された支持構造物９５に、第２対象物１８であるワーク９６がハンド９８に把持されて固定的に支持され、力覚センサ９０が、支持構造物９５とワーク９６（具体的にはハンド９８）との間に設置されている。また、ロボット１４の手首９１に取り付けられた流体圧シリンダ装置２２の出力部に、第１対象物１２である加工工具９２が工具ホルダ９４に支持されて固定的に取り付けられている。
【０１０７】
図１５に示すシステム構成では、ロボット１４から離れて配置された支持構造物９５に、第２対象物１８である加工工具９２が工具ホルダ９４に支持されて固定的に支持され、力覚センサ９０が、支持構造物９５と加工工具９２（具体的には工具ホルダ９４）との間に設置されている。また、ロボット１４の手首９１に取り付けられた流体圧シリンダ装置２２の出力部に、第１対象物１２であるワーク９６がハンド９８に把持されて固定的に取り付けられている。
【０１０８】
図１６に示すシステム構成では、複軸の構成を有する流体圧シリンダ装置２２がロボット１４の手首９１に取り付けられ、力覚センサ９０が、ロボット１４の手首９１と流体圧シリンダ装置２２との間に設置されるとともに、流体圧シリンダ装置２２の出力部に、第１対象物１２である加工工具９２が工具ホルダ９４に支持されて固定的に取り付けられている。
【０１０９】
図１７に示すシステム構成では、複軸の構成を有する流体圧シリンダ装置２２がロボット１４の手首９１に取り付けられ、力覚センサ９０が、流体圧シリンダ装置２２の出力部に設置されるとともに、力覚センサ９０に、第１対象物１２である加工工具９２が工具ホルダ９４に支持されて固定的に取り付けられている。
【０１１０】
図示及び他のいずれのシステム構成においても、記憶装置２４及び制御装置２８を内蔵するシステム制御装置１００（図１２〜図１５）が、ロボット１４、流体圧シリンダ装置２２、力覚センサ９０、加工工具９２、ハンド９８等に接続されて信号を送受する構成とすることができる。
【０１１１】
次に、図１８〜図２７を参照して、前述した全ての制御装置２８、２８Ａ〜２８Ｊの機能を組み込んだシステム制御装置１００を備える、本発明の１つの好適な実施形態による加工ロボットシステム１０２の構成を、さらに詳細に説明する。なお、加工ロボットシステム１０２は、ワーク９６のバリ取り作業を実行するための、図１２に示すシステム構成を有するものとする。
【０１１２】
加工ロボットシステム１０２において、ロボット１４は、例として６自由度の多関節型ロボットの構成を有し、システム制御装置１００の操作指令部３８からの指令により各関節の動作角度（すなわち各制御軸の動作位置）が制御されて、アーム先端の手先部１６の位置及び姿勢が任意に変化するようになっている。ロボット１４には、軸位置検出部６２として、各制御軸を駆動するサーボモータにパルスコーダ等の動作角度検出器が設けられ、各制御軸の動作角度の検出信号（制御軸動作位置のデータＤ１）が、ロボット１４からシステム制御装置１００の操作指令部３８にフィードバックされる。
【０１１３】
ロボット１４の手先部１６に支持されている加工工具９２は、ロボット１４から見て末端側を頂点とする円錐形の回転刃９２ａ（図１２）を有し、回転刃９２ａがそれ自体の軸線を中心に回転してワーク９６（図１２）の加工対象面を切削するグラインダ（可動工具４８）である。加工工具９２は、駆動部１０４を有しており、システム制御装置１００の操作指令部３８からの指令により、駆動部１０４が回転刃９２ａの回転速度を調節する。加工工具９２は、エア駆動式であっても電動式であってもよく、エア駆動式の場合は作動空気の圧力を制御することにより、また電動式の場合は電圧を制御することにより、回転刃９２ａの回転速度が制御される。
【０１１４】
加工工具９２は、流体圧シリンダ装置２２を介して、ロボット１４の手先部１６に支持されている。流体圧シリンダ装置２２は、空気等の作動流体の圧力によって動作する出力部（すなわちピストン）を備え、作動流体の圧力を調節する流体圧調節弁１０６を介して流体供給源（図示せず）に接続される。流体圧調節弁１０６は、システム制御装置１００の操作指令部３８から出力される目標押圧力の指令値に従って、流体圧シリンダ装置２２に供給する作動流体の圧力を調節する。流体圧調節弁１０６としては、周知の電空レギュレータや電空比例弁等を用いることができる。このような構成を有する流体圧シリンダ装置２２では、ピストンに生じる押圧力が、ピストンの全可動範囲において（つまりピストン変位量によらず）、流体圧調節弁１０６によって調節された作動流体の圧力に対応する一定の値になる。それにより、加工ロボットシステム１０２で用いられる流体圧シリンダ装置２２は、加工工具９２の回転刃９２ａの回転軸線に直交する方向へピストンを動作させ、加工工具９２（回転刃９２ａ）とワークとの間に所定の押し付け力を調節可能に生じさせる。
【０１１５】
図示実施形態では、流体圧シリンダ装置２２は基本的に、無負荷状態では作動流体の圧力によりピストンが作動ストロークの限界位置まで移動する単動式かつ１軸の構成を有する。また流体圧シリンダ装置２２は、非作動時に適当な位置でピストンを固定できるピストン固定部７６（図１１）を備えている。ピストン固定部７６は、流体圧シリンダ装置２２の作動を必要とする作業以外でロボット１４を動作させるとき等に、ピストンが意図せず変位してロボット動作に影響を与えたりすることを防止できる。さらに、流体圧シリンダ装置２２には、ピストン変位量を検出する変位検出センサ５８が設けられている。変位検出センサ５８によって検出されたピストン変位量のデータＤ２は、システム制御装置１００に入力される。
【０１１６】
図示実施形態では、流体圧シリンダ装置２２とロボット１４の手首９１（図１２）との間に、検出装置２６として力覚センサ９０が設置されている。力覚センサ９０は、Ｘ、Ｙ、Ｚの直交３軸方向の力（ベクトル）とＸ、Ｙ、Ｚの個々の軸の周りのモーメントとを検出する６軸の構成を有する（本願では、これらＸ軸、Ｙ軸、Ｚ軸からなる座標系を力覚センサ座標系と称する。）。力覚センサ９０としては、種々の検出原理による様々な種類のものが知られており、図示実施形態では力覚センサ９０の種類は限定されない。力覚センサ９０によって検出された力及びモーメントのデータＤ３は、システム制御装置１００に入力される。
【０１１７】
ロボット１４の周囲の所定位置には、支持構造物９５（支持部２０の一部）として、ワーク９６を固定して支持するテーブルが配置されている（図１２）。ロボット１４は、図１９に例示するように、システム制御装置１００による制御下で手先部１６を適宜に動作させて、加工工具９２をワーク９６の指定された縁部９６ａに沿って縁部９６ａに倣うように進行させ、それにより、ワーク９６の縁部９６ａに形成されたバリ９６ｂを切削除去するバリ取り作業を遂行することができる（図１９（ａ））。このときロボット１４は、システム制御装置１００による制御下で、加工工具９２の進行方向Ｔ１が常に、流体圧シリンダ装置２２による加工工具９２の押し付け方向Ｔ２に直交する方向になるように、手先部１６の姿勢を随時変化させることが好ましい。それにより、ワーク９６に対する加工工具９２の押し付け力が、流体圧シリンダ装置２２が発生する一定の押圧力に対応する値に調節される。このようにして、加工工具９２の押し付け力を常に適切に調節することにより、加工の品質を向上させることができる。
【０１１８】
ここで、図１９に示す加工例では、流体圧シリンダ装置２２による加工工具９２の押し付け方向Ｔ２は、加工工具９２を倣わせるワーク９６の縁部９６ａ（つまりバリのない正規のワーク輪郭）の接線に対して直交し、かつ縁部９６ａを含むワーク９６上の一表面９６ｃに対して平行な方向となっている。また図示実施形態では、加工工具９２の回転刃９２ａは、押し付け方向Ｔ２が加工工具９２の回転軸線に略直交する方向であるときに、バリ取り作業を効率良く円滑に遂行できるような、先端角の比較的大きな円錐形状を有するものとする（図１９（ｂ））。加工工具９２が、先端角の比較的小さな円錐形の回転刃９２ａを有する場合や、円筒形の回転刃９２ａを有する場合には、加工工具９２の回転軸線を押し付け方向Ｔ２に対して適当に傾けるように、工具ホルダの配置を調整したり手先部１６の姿勢を制御したりすることで、バリ取り作業を効率良く円滑に遂行できる。また図示しないが、図１９に示す加工例において、流体圧シリンダ装置２２による加工工具９２の押し付け方向Ｔ２を、加工工具９２を倣わせるワーク９６の縁部９６ａの接線に対して直交し、かつ縁部９６ａを含むワーク９６上の一表面９６ｃに対して直交ないし交差する方向とすることもできる。ただしこの場合、加工工具９２とワーク９６の他表面との干渉が生じないことを前提とする。
【０１１９】
ロボット１４の手先部１６の上記した動作制御を行うために、システム制御装置１００は、制御パラメータとして手先部１６の目標軌道Ｐ１を記憶する記憶装置２４を内蔵している。操作指令部３８は、ワーク９６の縁部９６ａに沿う形態に設定された目標軌道Ｐ１を用いて、ロボット１４の手先部１６を目標軌道Ｐ１に沿って移動させるために要するロボット１４の個々の制御軸の動作を演算し、算出した動作に対応する指令をロボット１４の各制御軸のサーボモータに出力する。このとき、システム制御装置１００は、流体圧シリンダ装置２２による加工工具９２の押し付け方向が常に、目標軌道Ｐ１に沿った加工工具９２の進行方向に対して予め定めた押し付け角度を成す方向（特に上記した直交方向）になるように、ロボット１４の手先部１６の姿勢を制御する。なお、ロボット１４の個々の制御軸の動作制御には、目標軌道Ｐ１に沿って移動するロボット１４の手先部１６の目標移動速度Ｐ２が必要であり、この目標移動速度Ｐ２も制御パラメータとして予め記憶装置２４に記憶される。
【０１２０】
記憶装置２４にはさらに、流体圧シリンダ装置２２が発生する目標押圧力Ｐ３と、加工工具９２の目標動作（回転）速度Ｐ４とが、制御パラメータとして記憶される。操作指令部３８は、これら制御パラメータＰ３及びＰ４に基づいて、流体圧シリンダ装置２２の流体圧調節弁１０６及び加工工具９２の駆動部１０４に相応の指令を出力する。
【０１２１】
記憶装置２４に記憶される上記した制御パラメータＰ１〜Ｐ４は、例えば周知の教示作業によって予め設定できる。或いは、目標押圧力Ｐ３や目標動作速度Ｐ４は、ワーク９６の材質等の属性に応じて、オペレータが経験的に所定の値に設定することもできる。また目標軌道Ｐ１は、ワーク９６のＣＡＤデータに基づいて設定してもよい。さらに、システム制御装置１００による調整後の各パラメータＰ１〜Ｐ４や、システム制御装置１００が自動的に生成した目標軌道Ｐ１も、記憶装置２４に記憶される。
【０１２２】
システム制御装置１００は、倣い作業（実際のバリ取り作業やその予備作業）中に取得した情報に基づいて、記憶装置２４に記憶される上記した種々の制御パラメータＰ１〜Ｐ４を適宜調整する第１〜第７のパラメータ調整部３２、３６、４６、５０、５６、６０、６６（図１〜図１１）を有している（以下、パラメータ調整部１０８と総称する。）。またシステム制御装置１００は、目標軌道Ｐ１を生成する目標軌道生成部７０と、加工状態を判定する加工状態判定部５２、８０とを有している。システム制御装置１００は、倣い作業の実行中に取得した情報に基づいて、パラメータ調整部１０８が、ロボット１４の手先部１６の目標軌道等の制御パラメータＰ１〜Ｐ４を自動的に調整したり、目標軌道生成部７０が手先部１６の目標軌道Ｐ１を自動的に生成したり、加工状態判定部５２、８０がワーク９６の加工（バリ取り）状態を自動的に判定したりすることにより、前述したように、システム構成要素の構造的安定性及び安全性を高め、また加工の品質及び信頼性を向上させる。
【０１２３】
パラメータ調整部１０８、目標軌道生成部７０及び加工状態判定部５２、８０を有するシステム制御装置１００の、パラメータ調整、目標軌道生成及び加工状態判定に関する幾つかの代表的な制御フローの詳細を、図２０〜図２７を参照して以下に説明する。
【０１２４】
システム制御装置１００は、一般的構成として、ロボット１４の動作制御に際し、予め定めた時間間隔（いわゆる制御周期）でロボット１４の各制御軸や種々のセンサ等のフィードバック情報をリアルタイムで取得して、必要に応じて速度や加速度等を差分により演算し、制御指令を作成して出力する。図２０〜図２７に示す一連の制御フローは、システム制御装置１００が、ロボット１４に倣い作業を実行させている間に、このような制御周期毎に繰り返して実行するものである。また図２０〜図２７は、パラメータ調整部１０８が行うパラメータ調整、目標軌道生成部７０が行う目標軌道生成、及び加工状態判定部５２、８０が行う加工状態判定に関する処理を示すものであって、操作指令部３８による処理については図示を省略している。操作指令部３８は、記憶装置２４に記憶した制御パラメータ（パラメータ調整部１０８が調整した制御パラメータや目標軌道生成部７０が生成した目標軌道を含む。）を用いて、ロボット１４の個々の制御軸のサーボモータ、流体圧シリンダ装置２２の流体圧調節弁１０６、及び加工工具９２の駆動部１０４への操作指令を作成して出力する。このような操作指令部３８による処理については、公知の手法で実行できるものであるから、その説明を省略する。
【０１２５】
図２０は、前述した作用力算出部３０（図１等）、第１のパラメータ調整部３２（図１等）、検出影響算出部４０（図２）、データ補正部４２（図２）及び第４のパラメータ調整部５０（図４）の機能を実行するための制御フローを示す。
【０１２６】
まず、ステップＳ１（検出影響算出部４０が行う検出影響力及び検出影響モーメントの算出工程の一部に相当）で、流体圧シリンダ装置２２の変位検出センサ５８から取得したピストン変位量のデータＤ２を用いて、力覚センサ９０に支持される物体（すなわち流体圧シリンダ装置２２、工具ホルダ９４、加工工具９２）の重心位置を算出（推定）する。流体圧シリンダ装置２２が作動すると、そのピストン変位量に応じて、ピストン自体や加工工具９２等の位置が変化し、それに伴い、力覚センサ９０に支持される物体（流体圧シリンダ装置２２、工具ホルダ９４、加工工具９２）の全体としての重心位置が変化するから、重心位置をピストン変位量の関数として求めるのである。
【０１２７】
力覚センサ９０に支持される物体の重心位置を算出するために、流体圧シリンダ装置２２からその作動により変位する物体（すなわちピストン等の出力側可動要素、工具ホルダ９４、加工工具９２）を取り外した状態で、ロボット１４の手先部１６を幾つかの異なる姿勢に動かして、個々の姿勢で力覚センサ９０が検出する力及びモーメントのデータＤ３を取得する。ここで、手先部１６が任意の姿勢にあるときに力覚センサ９０が検出する、力覚センサ座標系での力の検出値Ｆｓ１と原点周りのモーメントの検出値Ｍｓ１とは、以下のように表される。
Ｆｓ１＝Ｆｏｆ＋Ｍｆ・ｇｓ    ・・・式（１−１）
Ｍｓ１＝Ｍｏｆ＋ｒｆ×（Ｍｆ・ｇｓ）    ・・・式（１−２）
【０１２８】
ここで、
Ｆｏｆ：力覚センサ９０の力の検出値のオフセット（既知補正量）、
Ｍｏｆ：力覚センサ９０のモーメントの検出値のオフセット（既知補正量）、
Ｍｆ：流体圧シリンダ装置２２のうち、出力側可動要素を除いた部分の質量、
ｒｆ：流体圧シリンダ装置２２のうち出力側可動要素を除いた部分の、力覚センサ座標系での重心位置ベクトル、
ｇｓ：力覚センサ座標系で表す重力ベクトル。
また、記号「×」は外積演算子である。
したがって、手先部１６を幾つかの姿勢に動かしたときに力覚センサ９０が検出する力及びモーメントのデータＤ３を用いれば、上記の式（１−１）及び（１−２）から、Ｍｆ及びｒｆを算出することができる。
【０１２９】
続いて、流体圧シリンダ装置２２にその作動により変位する物体（ピストン等の出力側可動要素、工具ホルダ９４、加工工具９２）を取り付け、ピストン変位量を基準量０に設定した状態でピストンを固定する。その状態で、再びロボット１４の手先部１６を幾つかの姿勢に動かして、個々の姿勢で力覚センサ９０が検出する力及びモーメントのデータＤ３を取得する。そして、力覚センサ９０に支持される物体（流体圧シリンダ装置２２、工具ホルダ９４、加工工具９２）の合計質量Ｍａと、ピストン変位量が基準量０のときの力覚センサ９０に支持される物体の力覚センサ座標系での重心位置ベクトルｒａ［０］とを、上述のＭｆ及びｒｆと同様にして（つまり式（１−１）及び（１−２）でＭｆ及びｒｆをＭａ及びｒａ［０］にそれぞれ置き換えて）、力及びモーメントのデータＤ３に基づき算出することができる。
【０１３０】
続いて、流体圧シリンダ装置２２の作動により変位する物体（ピストン等の出力側可動要素、工具ホルダ９４、加工工具９２）の合計質量Ｍｔを、以下の関係式から算出する。
Ｍａ＝Ｍｆ＋Ｍｔ      ・・・式（１−３）
【０１３１】
また、ピストン変位量が基準量０のときの力覚センサ座標系での、流体圧シリンダ装置２２の作動により変位する物体の重心位置ベクトルｒｔ［０］は、ピストン変位量が基準量０のときの各種物体の質量と重心位置ベクトルとの以下の関係式（１−４）から、算出できる。
Ｍａ・ｒａ［０］＝Ｍｆ・ｒｆ＋Ｍｔ・ｒｔ［０］      ・・・式（１−４）
【０１３２】
他方、ピストン変位量が任意量ｄのときの、各種物体の質量Ｍｆ、Ｍａ、Ｍｔと重心位置ベクトルｒｆ、ｒａ［ｄ］、ｒｔ［ｄ］とは、以下の関係式（１−５）を満たす。
Ｍａ・ｒａ［ｄ］＝Ｍｆ・ｒｆ＋Ｍｔ・ｒｔ［ｄ］      ・・・式（１−５）
【０１３３】
また、ピストン変位量が基準量０から任意量ｄに変化したときの、力覚センサ座標系でのピストンの変位ベクトルをｒｓ［ｄ］とすると、以下の関係式が成立する。
ｒｔ［ｄ］＝ｒｔ［０］＋ｒｓ［ｄ］      ・・・式（１−６）
【０１３４】
ｒｓ［ｄ］は、力覚センサ９０と流体圧シリンダ装置２２との取り付け位置関係に基づいて算出できる。したがって、式（１−５）及び（１−６）から、ピストン変位量が任意量ｄのときの力覚センサ座標系での、力覚センサ９０に支持される物体（流体圧シリンダ装置２２、工具ホルダ９４、加工工具９２）の重心位置ベクトルｒａ［ｄ］を、算出することができる。
【０１３５】
このようにして、変位検出センサ５８から取得したピストン変位量のデータＤ２に基づいて、力覚センサ座標系での、力覚センサ９０に支持される物体の重心位置ベクトルｒａ［ｄ］を算出することができる。ここで、加工工具９２の摩耗等によるＭａやＭｔの経時変化を考慮して、システムのメンテナンス等の適当な時期に、ＭａやＭｔの評価を実行するようにしてもよい。
【０１３６】
なお、流体圧シリンダ装置２２の作動ストロークが比較的小さく、その作動時にも、力覚センサ９０に支持される物体の重心位置がさほど変化しない構造の場合には、ステップＳ１の大部分を省略できる。この場合、ピストン変位量ｄに関わらず、上記したようにして算出したＭａ及びｒａ［０］を、力覚センサ９０に支持される物体の質量及び重心位置ベクトルとして用いることができる。また、上記した重心位置の算出手法は一例であって、実測等の他の手法により、力覚センサ９０に支持される物体の重心位置を求めてもよい。しかし、上記手法によれば、別の計測器等を用いることなく、加工ロボットシステム１０２が本質的に有する構成要素によって重心位置を求めることができる利点がある。
【０１３７】
次に、ステップＳ２（検出影響算出部４０が行う算出工程の一部に相当）で、力覚センサ９０に支持される物体（流体圧シリンダ装置２２、工具ホルダ９４、加工工具９２）に作用する重力及び慣性力が、力覚センサ９０の検出動作に及ぼしている検出影響力及び検出影響モーメントを算出（推定）する。これらの検出影響力及び検出影響モーメントは、力覚センサ９０に支持される物体の位置、速度及び加速度を求めることにより、算出することができる。
【０１３８】
算出手法としては、公知の手法、例えば、ニュートン・オイラー法を用いる手法（例えば特開２００８―１４２８１０号公報参照）を採用できる。ニュートン・オイラー法を用いる場合、以下のロボットマニピュレータの動力学方程式におけるＨ（θ，ｄθ／ｄｔ）及びＧ（θ）の項を解く手法を、検出影響力及び検出影響モーメントの算出に利用できる。
【０１３９】
【数１】
2011041992.tif 000003
【０１４０】
ここで、
τ：関節トルクベクトル、
θ：関節角度ベクトル、
Ｍ（θ）：質量行列、
Ｈ（θ，ｄθ／ｄｔ）：遠心力やコリオリ力等のマニピュレータの運動によって生じる力ベクトル、
Ｇ(θ)：重力ベクトル。
【０１４１】
上記の式（２−１）において、Ｈ（θ，ｄθ／ｄｔ）及びＧ（θ）の項が、それぞれ慣性力及び重力によって発生する力成分に対応している。したがって、力覚センサ９０に支持される物体の質量及び重心位置が分かっていれば、これら各項を解く上記手法により、力覚センサ９０に支持される物体に作用する重力及び慣性力が、力覚センサ９０の検出動作に及ぼしている検出影響力及び検出影響モーメントを算出することができる。なお、ここで算出する検出影響力及び検出影響モーメントは、厳密には、力覚センサ座標系の原点に対する影響を評価するものである。
【０１４２】
ステップＳ２では、力覚センサ９０に支持される物体の重心位置、速度及び加速度のデータが必要となる。これらのデータは、ステップＳ１で求めた力覚センサ９０に支持される物体の力覚センサ座標系での重心位置ｒａ［ｄ］のデータと、ロボット１４の軸位置検出部６２から取得した個々の制御軸の動作位置のデータＤ１とから、求めることができる。すなわち、ロボット１４の各制御軸の動作位置から力覚センサ９０の現在位置を求めることができ、この現在位置と、力覚センサ９０に支持される物体の力覚センサ座標系での重心位置ｒａ［ｄ］とから、ロボットの基準座標系（絶対座標系又は機械座標系）での、力覚センサ９０に支持される物体の現在の重心位置を求めることができる。そして、力覚センサ９０に支持される物体のロボット基準座標系での現在の重心位置と、前の計算周期で求めた重心位置とから、速度や加速度の現在値を求めることができる。
【０１４３】
なお、力覚センサ９０に支持される物体の重心位置、速度及び加速度は、実測等の他の手法で求めてもよい。例えば、ロボット１４に加速度センサを取り付けて、当該加速度センサの検出信号から、力覚センサ９０に支持される物体の加速度を求めることができる。
【０１４４】
次に、ステップＳ３（データ補正部４２が行うデータ補正工程に相当）で、力覚センサ９０から取得した力及びモーメントのデータＤ３に対し、力覚センサ９０に支持される物体（流体圧シリンダ装置２２、工具ホルダ９４、加工工具９２）に作用する重力及び慣性力の影響を補償する。すなわち、力覚センサ９０が検出した力及びモーメントから、ステップＳ２で求めた検出影響力及び検出影響モーメントを、それぞれ差し引くことにより、力及びモーメントのデータＤ３を補正する。
【０１４５】
次に、ステップＳ４（作用力算出部３０が行う作用力算出工程に相当）で、ステップＳ３による補正後の力及びモーメントのデータＤ３に基づき、加工工具９２の回転刃９２ａに予め設定した工具座標系原点にワーク９６から加えられる力及びモーメントを求め、工具座標系原点における力及びモーメントの値に基づき、加工工具９２とワーク９６との間に実際に作用している作用力を算出（推定）する。なお、工具座標系原点を制御基準点に置換しても同程度の結果を予期できる場合は、工具座標系原点の代わりに制御基準点を用いることができる（以下、同様。）。
【０１４６】
ここでは、流体圧シリンダ装置２２による加工工具９２のワーク９６に対する押し付け方向（すなわちピストン変位方向）Ｔ２の作用力成分と、押し付け方向Ｔ２に直交する方向の作用力成分とを求める。押し付け方向Ｔ２の作用力成分は、工具座標系原点に加えられる力（ベクトル）と、押し付け方向Ｔ２を表す単位ベクトルとの内積によって求めることができる。そして、押し付け方向Ｔ２の作用力成分を、工具座標系原点に加えられる力から差し引くことによって、押し付け方向Ｔ２に直交する方向の作用力成分を求めることができる。また、工具座標系原点に加えられる力（ベクトル）と、押し付け方向Ｔ２に直交する任意の方向を表す単位ベクトルとの内積から、当該任意の方向への作用力成分を求めることができる。なお、上記手法で求めた押し付け方向Ｔ２の作用力成分は、厳密には、前述した流体圧シリンダ装置２２自体による力の緩衝作用の結果、ワーク９６と加工工具９２との間に実際に作用している力に対応しないものとなるが、これについては後述する。
【０１４７】
また、工具座標系原点に加えられる力覚センサ座標系原点周りのモーメントと、力覚センサ座標系における工具座標系原点の位置ベクトルとから、加工工具９２とワーク９６との間に実際に作用している作用力を求めることもできる。検出装置２６として６軸の力覚センサ９０を備えた図示実施形態では、力及びモーメントの一方又は双方のデータＤ３を用いて、上記した各手法で作用力を求める。なお図示実施形態とは異なり、力及びモーメントのいずれか一方のみを検出可能な検出装置を備えたシステム構成においては、検出した力又はモーメントのデータを用いて、上記手法で作用力を求めることができる。
【０１４８】
次に、ステップＳ５（第１及び第４のパラメータ調整部３２、５０が行うパラメータ調整工程に相当）で、パラメータ調整部１０８は、ステップＳ４で求めた作用力（ここでは押し付け方向Ｔ２に直交する方向の作用力成分Ｆｎ）に応じて、記憶装置２４に記憶した制御パラメータＰ１〜Ｐ４を調整する。ここで、ロボット１４の手先部１６を、加工工具９２の進行方向Ｔ１が常に流体圧シリンダ装置２２による加工工具９２の押し付け方向Ｔ２に直交する方向になるように制御するシステム構成では、押し付け方向Ｔ２に直交する方向の作用力成分Ｆｎとして加工工具９２の進行方向Ｔ１の作用力成分を用いて、この作用力成分に応じて制御パラメータＰ１〜Ｐ４を調整することが有利である。
【０１４９】
加工工具９２の進行方向Ｔ１の作用力成分を用いる場合には、ステップＳ４で、加工工具９２の進行方向Ｔ１を算出（推定）する。進行方向Ｔ１は、ロボット１４の制御軸動作位置のデータＤ１と、流体圧シリンダ装置２２のピストン変位量のデータＤ２と、加工工具９２に設定した工具座標系原点の位置データと、手先部１６に設置した力覚センサ９０、流体圧シリンダ装置２２、加工工具９２等の取り付け構造の寸法データとを用いることで、算出できる。すなわち、これらのデータから、例えば力覚センサ座標系における加工工具９２の工具座標系原点の現在位置（又は加工工具９２とワーク９６との相対位置）を、制御周期毎に求めることができ、複数の制御周期で求めた加工工具９２の現在位置（又は加工工具９２とワーク９６との相対位置）の変化に基づいて、加工工具９２の実際の進行方向Ｔ１を算出することができる。
【０１５０】
なお図示実施形態とは異なり、支持部２０に設置した流体圧シリンダ装置２２がワーク９６を支持するシステム構成においては、ワーク９６の位置データを取得した上で、上記と同様にして加工工具９２とワーク９６との相対位置を求めることにより、加工工具９２の進行方向Ｔ１を算出できる。ただし、相対位置を求めた制御周期の回数が少ない間は、算出される進行方向Ｔ１の誤差が大きくなる場合があるので、所定回数以上の制御周期で位置情報を獲得するまでは、進行方向Ｔ１の作用力成分を求めないようにすることが好ましい。
【０１５１】
加工工具９２の進行方向Ｔ１の作用力成分は、工具座標系原点に加えられる力（ベクトル）と、進行方向Ｔ１を表す単位ベクトルとの内積によって求めることができる。また必要に応じて、押し付け方向Ｔ２の単位ベクトルと進行方向Ｔ１の単位ベクトルとの外積により、押し付け方向Ｔ２と進行方向Ｔ１との双方に直交する方向の単位ベクトルを求め、この単位ベクトルと工具座標系原点に加えられる力（ベクトル）との内積により、押し付け方向Ｔ２と進行方向Ｔ１との双方に直交する方向の作用力成分を求めることもできる。
【０１５２】
そこで、ステップＳ５で、押し付け方向Ｔ２に直交する方向の作用力成分（例えば加工工具９２の進行方向Ｔ１の作用力成分）Ｆｎに応じて、パラメータ調整を実行する。ここでは具体例として、下記（１）〜（７）に示すいずれかの調整手法を実施できるものとする。なお下記において、ロボット１４の手先部１６の調整前の目標移動速度Ｐ２＝Ｖｔｏ、流体圧シリンダ装置２２の調整前の目標押圧力Ｐ３＝Ｆｏ、加工工具９２の調整前の目標動作速度Ｐ４＝Ｖｒｏとする。
【０１５３】
（１）作用力成分Ｆｎが所定の閾値Ｆｔｈｆ１よりも大きい場合、ロボット１４の各制御軸の駆動部に過大な負荷が掛からないようにしながら、ロボット１４を減速させて停止させる（目標移動速度Ｐ２の調整）。
【０１５４】
（２）作用力成分Ｆｎが所定の閾値Ｆｔｈｆ２よりも大きい場合、ロボット１４の各制御軸の駆動部に過大な負荷が掛からないようにしながら、直ちにロボット１４の手先部１６の移動方向を反転して、加工工具９２の進行方向Ｔ１の逆方向の単位ベクトルと押し付け方向Ｔ２の逆方向の単位ベクトルとを足し合わせた方向へ手先部１６を移動させた後、ロボット１４を減速させて停止させる（目標軌道Ｐ１及び目標移動速度Ｐ２の調整）。
【０１５５】
（３）作用力成分Ｆｎが所定の閾値Ｆｔｈｆ３よりも大きい場合、ロボット１４の手先部１６の目標移動速度Ｖｔｏに、作用力成分Ｆｎに応じた１未満の係数を掛けて、より小さい目標移動速度Ｖｔｎに調整するとともに、流体圧シリンダ装置２２の目標押圧力Ｆｏに、作用力成分Ｆｎに応じた１未満の係数を掛けて、より小さい目標押圧力Ｆｓｐｎに調整する（目標移動速度Ｐ２及び目標押圧力Ｐ３の調整）。以下の演算を行う。
Ｖｔｎ＝｛（１−αｆｖ３）・ｅｘｐ｛−βｆｖ３・（｜Ｆｎ｜−Ｆｔｈｆ３）｝＋αｆｖ３｝・Ｖｔｏ
ここで、αｆｖ３及びβｆｖ３は定数であり、０＜βｆｖ３、０≦αｆｖ３＜１、０≦Ｆｔｈｆ３＜｜Ｆｎ｜である。
Ｆｓｐｎ＝｛（１−αｆｆ３）・ｅｘｐ｛−βｆｆ３・（｜Ｆｎ｜−Ｆｔｈｆ３）｝＋αｆｆ３｝・Ｆｏ
ここで、αｆｆ３及びβｆｆ３は定数であり、０＜βｆｆ３、０≦αｆｆ３＜１、０≦Ｆｔｈｆ３＜｜Ｆｎ｜である。
【０１５６】
（４）作用力成分Ｆｎが所定の閾値Ｆｔｈｆ４よりも大きい場合、ロボット１４の手先部１６の目標移動速度Ｖｔｏに、作用力成分Ｆｎに応じた１未満の係数を掛けて、より小さい目標移動速度Ｖｔｎに調整するとともに、加工工具９２の目標動作速度Ｖｒｏに、作用力成分Ｆｎに応じた１未満の係数を掛けて、より小さい目標動作速度Ｖｒｎに調整する（目標移動速度Ｐ２及び目標動作速度Ｐ４の調整）。以下の演算を行う。
Ｖｔｎ＝｛（１−αｆｖ４）・ｅｘｐ｛−βｆｖ４・（｜Ｆｎ｜−Ｆｔｈｆ４）｝＋αｆｖ４｝・Ｖｔｏ
ここで、αｆｖ４及びβｆｖ４は定数であり、０＜βｆｖ４、０≦αｆｖ４＜１、０≦Ｆｔｈｆ４＜｜Ｆｎ｜である。
Ｖｒｎ＝｛（１−αｆｒ４）・ｅｘｐ｛−βｆｒ４・（｜Ｆｎ｜−Ｆｔｈｆ４）｝＋αｆｒ４｝・Ｖｒｏ
ここで、αｆｒ４及びβｆｒ４は定数であり、０＜βｆｒ４、０≦αｆｒ４＜１、０≦Ｆｔｈｆ４＜｜Ｆｎ｜である。
【０１５７】
（５）作用力成分Ｆｎに応じて、ワーク９６の外形に倣うようにロボット１４の手先部１６の軌道を修正しながら、手先部１６の移動速度、流体圧シリンダ装置２２の押圧力及び加工工具９２の動作速度を調整する（目標軌道Ｐ１、目標移動速度Ｐ２、目標押圧力Ｐ３及び目標動作速度Ｐ４の調整）。
作用力成分Ｆｎが所定の閾値Ｆｔｈｆ５よりも大きい場合、ロボット１４の手先部１６の目標軌道Ｐ１を押し付け方向Ｔ２の逆方向へ、作用力成分Ｆｎに応じた距離Ｄｓｆｔ５だけずらすように調整するとともに、流体圧シリンダ装置２２の目標押圧力Ｆｏに、作用力成分Ｆｎに応じた１未満の係数を掛けて、より小さい目標押圧力Ｆｓｐｎに調整する。同時に、ロボット１４の手先部１６の目標移動速度Ｖｔｏに、作用力成分Ｆｎに応じた１未満の係数を掛けて、より小さい目標移動速度Ｖｔｎに調整するとともに、加工工具９２の目標動作速度Ｖｒｏに、作用力成分Ｆｎに応じた１未満の係数を掛けて、より小さい目標動作速度Ｖｒｎに調整して、加工工具９２とワーク９６との相対速度を減少させる。以下の演算を行う。
Ｄｓｆｔ５＝｛１−ｅｘｐ｛−βｆｄ５・（｜Ｆｎ｜−Ｆｔｈｆ５）｝｝・αｆｄ５
ここで、αｆｄ５及びβｆｄ５は定数であり、０＜βｆｄ５、０≦αｆｄ５、０≦Ｆｔｈｆ５＜｜Ｆｎ｜である。
Ｆｓｐｎ＝｛（１−αｆｆ５）・ｅｘｐ｛−βｆｆ５・（｜Ｆｎ｜−Ｆｔｈｆ５）｝＋αｆｆ５｝・Ｆｏ
ここで、αｆｆ５及びβｆｆ５は定数であり、０＜βｆｆ５、０≦αｆｆ５＜１、０≦Ｆｔｈｆ５＜｜Ｆｎ｜である。
Ｖｔｎ＝｛（１−αｆｖ５）・ｅｘｐ｛−βｆｖ５・（｜Ｆｎ｜−Ｆｔｈｆ５）｝＋αｆｖ５｝・Ｖｔｏ
ここで、αｆｖ５及びβｆｖ５は定数であり、０＜βｆｖ５、０≦αｆｖ５＜１、０≦Ｆｔｈｆ５＜｜Ｆｎ｜である。
Ｖｒｎ＝｛（１−αｆｒ５）・ｅｘｐ｛−βｆｒ５・（｜Ｆｎ｜−Ｆｔｈｆ５）｝＋αｆｒ５｝・Ｖｒｏ
ここで、αｆｒ５及びβｆｒ５は定数であり、０＜βｆｒ５、０≦αｆｒ５＜１、０≦Ｆｔｈｆ５＜｜Ｆｎ｜である。
また、作用力成分Ｆｎが所定の閾値Ｆｔｈｆ５２（＜Ｆｔｈｆ５）よりも小さい場合、ロボット１４の手先部１６の目標軌道Ｐ１を押し付け方向Ｔ２へ、作用力成分Ｆｎに応じた距離Ｄｓｆｔ５２だけずらすように調整するとともに、流体圧シリンダ装置２２の目標押圧力Ｆｏに、作用力成分Ｆｎに応じた１を超える係数を掛けて、予め定めた最大目標押圧力を超えない範囲で、より大きい目標押圧力Ｆｓｐｎに調整する。同時に、ロボット１４の手先部１６の目標移動速度Ｖｔｏに、作用力成分Ｆｎに応じた１を超える係数を掛けて、より大きい目標移動速度Ｖｔｎに調整するとともに、加工工具９２の目標動作速度Ｖｒｏに、作用力成分Ｆｎに応じた１を超える係数を掛けて、より大きい目標動作速度Ｖｒｎに調整して、加工工具９２とワーク９６との相対速度を増加させる。以下の演算を行う。
Ｄｓｆｔ５２＝｛１−ｅｘｐ｛−βｆｄ５２・（Ｆｔｈｆ５２−｜Ｆｎ｜）｝｝・αｆｄ５２
ここで、αｆｄ５２及びβｆｄ５２は定数であり、０＜βｆｄ５２、０≦αｆｄ５２、０≦｜Ｆｎ｜＜Ｆｔｈｆ５２である。
Ｆｓｐｎ＝｛（αｆｆ５２−１）・（１−ｅｘｐ｛−βｆｆ５２・（Ｆｔｈｆ５２−｜Ｆｎ｜）｝）＋１｝・Ｆｏ
ここで、αｆｆ５２及びβｆｆ５２は定数であり、０＜βｆｆ５２、１≦αｆｆ５２、０≦｜Ｆｎ｜＜Ｆｔｈｆ５２である。
Ｖｔｎ＝｛（αｆｖ５２−１）・（１−ｅｘｐ｛−βｆｖ５２・（Ｆｔｈｆ５２−｜Ｆｎ｜）｝）＋１｝・Ｖｔｏ
ここで、αｆｖ５２及びβｆｖ５２は定数であり、０＜βｆｖ５２、１≦αｆｖ５２、０≦｜Ｆｎ｜＜Ｆｔｈｆ５２である。
Ｖｒｎ＝｛（αｆｒ５２−１）・（１−ｅｘｐ｛−βｆｒ５２・（Ｆｔｈｆ５２−｜Ｆｎ｜）｝）＋１｝・Ｖｒｏ
ここで、αｆｒ５２及びβｆｒ５２は定数であり、０＜βｆｒ５２、１≦αｆｒ５２、０≦｜Ｆｎ｜＜Ｆｔｈｆ５２である。
【０１５８】
（６）作用力成分Ｆｎが所定の閾値Ｆｔｈｆ６よりも小さい場合、ロボット１４の手先部１６の目標軌道Ｐ１を押し付け方向Ｔ２へ、作用力成分Ｆｎに応じた距離Ｄｓｆｔ６だけずらすように調整する（目標軌道Ｐ１の調整）。以下の演算を行う。
Ｄｓｆｔ６＝｛１−ｅｘｐ｛−βｆｄ６・（Ｆｔｈｆ６−｜Ｆｎ｜）｝｝・αｆｄ６
ここで、αｆｄ６及びβｆｄ６は定数であり、０＜βｆｄ６、０≦αｆｄ６、０≦｜Ｆｎ｜＜Ｆｔｈｆ６である。
【０１５９】
（７）作用力成分Ｆｎが所定の閾値Ｆｔｈｆ７よりも小さい場合、流体圧シリンダ装置２２の目標押圧力Ｆｏに、作用力成分Ｆｎに応じた１を超える係数を掛けて、予め定めた最大目標押圧力を超えない範囲で、より大きい目標押圧力Ｆｓｐｎに調整する（目標押圧力Ｐ３の調整）。以下の演算を行う。
Ｆｓｐｎ＝｛（αｆｆ７−１）・（１−ｅｘｐ｛−βｆｆ７・（Ｆｔｈｆ７−｜Ｆｎ｜）｝）＋１｝・Ｆｏ
ここで、αｆｆ７及びβｆｆ７は定数であり、０＜βｆｆ７、１≦αｆｆ７、０≦｜Ｆｎ｜＜Ｆｔｈｆ７である。
【０１６０】
上記（１）〜（７）の調整手法は、例えば、予めそれぞれの閾値Ｆｔｈｆ１〜Ｆｔｈｆ７に大小関係を付与しておき、作用力成分Ｆｎとそれら閾値との比較結果に従い、（１）〜（７）のいずれかの調整手法を自動選択して実施するように構成できる。或いは、加工工具９２やワーク９６の属性、ワーク９６の加工対象領域の現状、目的とする加工品質の程度、ロボット１４の動作自由度等の諸条件に応じて、（１）〜（７）の調整手法のうちでいずれか１つ以上の調整手法を実施するよう、予め設定しておくこともできる。また、上記した種々の閾値及び係数は、システム構築の際に行う実験やオペレータの経験に基づき、予め設定できるものである。
【０１６１】
なお、ステップＳ５において、押し付け方向Ｔ２に直交する方向の作用力成分Ｆｎに応じてパラメータ調整を実行する代わりに、押し付け方向Ｔ２に平行な軸の周りの作用モーメントの大きさに応じて、同様にパラメータ調整を実行することもできる。ここで作用モーメントとは、押し付け方向Ｔ２に直交する方向の作用力成分Ｆｎによって、力覚センサ座標系の原点の周りに生じるモーメントを意味する。この場合には、上記（１）〜（７）の調整手法の各演算式における作用力成分Ｆｎに代えて、作用モーメントの大きさを用いればよい。
【０１６２】
最後に、ステップＳ６（第１及び第４のパラメータ調整部３２、５０が行うパラメータ調整工程に相当）で、パラメータ調整部１０８は、ステップＳ４で求めた作用力（ここでは押し付け方向Ｔ２の作用力成分Ｆｎ′）に応じて、記憶装置２４に記憶した制御パラメータＰ１〜Ｐ４を調整する。ここで、押し付け方向Ｔ２の作用力成分Ｆｎ′は、前述したように、流体圧シリンダ装置２２自体による力の緩衝作用の結果、ワーク９６と加工工具９２との間に実際に作用している力に対応しない。しかし、押し付け方向Ｔ２の作用力成分Ｆｎ′が、流体圧シリンダ装置２２のピストンを作動ストロークの限界を超えて押しやる程に大きい場合や、流体圧シリンダ装置２２による力の緩衝作用が働かない程に急激に加わった場合には、力覚センサ９０が検出した力のデータは、実際の押し付け方向Ｔ２の作用力成分Ｆｎ′に実質的に対応するものとなる。ステップＳ６は、このような状況を考慮して実行するものである。なお、ステップＳ６のパラメータ調整は、ステップＳ５のパラメータ調整に対し、付加的に実施することができる。
【０１６３】
ここでは具体例として、下記（１）〜（４）に示すいずれかの調整手法を実施できるものとする。なお下記において、ロボット１４の手先部１６の調整前の目標移動速度Ｐ２＝Ｖｔｏ、流体圧シリンダ装置２２の調整前の目標押圧力Ｐ３＝Ｆｏ、加工工具９２の調整前の目標動作速度Ｐ４＝Ｖｒｏとする。
【０１６４】
（１）作用力成分Ｆｎ′が所定の閾値Ｆｔｈｆｏ１よりも大きい場合、ロボット１４の各制御軸の駆動部に過大な負荷が掛からないようにしながら、ロボット１４を減速させて停止させる（目標移動速度Ｐ２の調整）。
（２）作用力成分Ｆｎ′が所定の閾値Ｆｔｈｆｏ２よりも大きい場合、ロボット１４の各制御軸の駆動部に過大な負荷が掛からないようにしながら、直ちにロボット１４の手先部１６の移動方向を反転して、加工工具９２の進行方向Ｔ１の逆方向の単位ベクトルと押し付け方向Ｔ２の逆方向の単位ベクトルとを足し合わせた方向へ手先部１６を移動させた後、ロボット１４を減速させて停止させる（目標軌道Ｐ１及び目標移動速度Ｐ２の調整）。
（３）作用力成分Ｆｎ′が所定の閾値Ｆｔｈｆｏ３よりも大きい場合、ロボット１４の手先部１６の目標軌道Ｐ１を押し付け方向Ｔ２の逆方向へ、適当な距離Ｄｆｏ３だけずらすように調整する（目標軌道Ｐ１の調整）。
（４）作用力成分Ｆｎ′が所定の閾値Ｆｔｈｆｏ４よりも大きい場合、ロボット１４の手先部１６の目標軌道Ｐ１を押し付け方向Ｔ２の逆方向へ、適当な距離Ｄｆｏ４だけずらすように調整するとともに、ロボット１４の手先部１６の目標移動速度Ｖｔｏに、１未満の適当な係数を掛けて、より小さい目標移動速度Ｖｔｎに調整し、かつ、流体圧シリンダ装置２２の目標押圧力Ｆｏに、１未満の適当な係数を掛けて、より小さい目標押圧力Ｆｓｐｎに調整する（目標軌道Ｐ１、目標移動速度Ｐ２及び目標押圧力Ｐ３の調整）。以下の演算を行う。
Ｖｔｎ＝αｆｏｖ４・Ｖｔｏ
Ｆｓｐｎ＝αｆｏｆ４・Ｆｏ
ここで、αｆｏｖ４及びαｆｏｆ４は定数であり、０≦αｆｏｖ４＜１、０≦αｆｏｆ４＜１である。
【０１６５】
上記（１）〜（４）の調整手法は、例えば、予めそれぞれの閾値Ｆｔｈｆｏ１〜Ｆｔｈｆｏ４に大小関係を付与しておき、作用力成分Ｆｎ′とそれら閾値との比較結果に従い、（１）〜（４）のいずれかの調整手法を自動選択して実施するように構成できる。或いは、加工工具９２やワーク９６の属性、ワーク９６の加工対象領域の現状、目的とする加工品質の程度、ロボット１４の動作自由度等の諸条件に応じて、（１）〜（４）の調整手法のうちでいずれか１つ以上の調整手法を実施するよう、予め設定しておくこともできる。また、上記した種々の閾値及び係数は、システム構築の際に行う実験やオペレータの経験に基づき、予め設定できるものである。
【０１６６】
また、ステップＳ５とステップＳ６とで同じ制御パラメータを調整することになる場合には、それらステップでの調整手法同士に不整合が生じないように、両ステップにおける同一制御パラメータの調整手法に重み付け等により予め優先順位を設定しておき、優先順位が高い方の調整手法を実施するように構成する。例えば、ステップＳ５の（３）とステップＳ６の（１）とを実施することになる場合には、ステップＳ６の（１）を優先してロボット１４を減速停止させるように、予め設定してもよい。同一制御パラメータに対する調整手法に不整合が生じない場合（例えばいずれもロボット１４の減速停止）、両方を実施できる。
【０１６７】
なお、ステップＳ６においても、押し付け方向Ｔ２の作用力成分Ｆｎ′に応じてパラメータ調整を実行する代わりに、押し付け方向Ｔ２に直交する軸の周りの作用モーメントの大きさに応じて、同様にパラメータ調整を実行することもできる。ここでの作用モーメントは、押し付け方向Ｔ２の作用力成分Ｆｎ′によって、力覚センサ座標系の原点の周りに生じるモーメントを意味する。この場合には、上記（１）〜（４）の調整手法の各演算式における作用力成分Ｆｎ′に代えて、作用モーメントの大きさを用いればよい。
【０１６８】
このように、図２０に示す制御フローによれば、力覚センサ９０が検出した力及びモーメントのデータＤ３を用いて、倣い作業中に加工工具９２とワーク９６との間に実際に作用している作用力を算出し、この作用力の所望方向の成分に応じて、ロボット１４の手先部１６の目標軌道Ｐ１及び目標移動速度Ｐ２、流体圧シリンダ装置２２の目標押圧力Ｐ３、並びに加工工具９２の目標動作速度Ｐ４のうちの、少なくとも１つの制御パラメータを調整しているから、前述したように、加工作業中に加工工具９２とワーク９６の間に作用する作用力をリアルタイムで適正化して、システム構成要素の構造的安定性及び安全性を高めるとともに加工の品質及び信頼性を向上させることができる。
【０１６９】
なお、上記制御フローで使用している変位検出センサ５８からのデータは、流体圧シリンダ装置２２のピストンの位置を直接的に表すものであって、力覚センサ９０が支持する物体の重心位置の変化等を正確に把握するのに有効なものである。しかし本発明では、変位検出センサ５８を省略し、流体圧シリンダ装置２２のピストンが零変位の基準位置に置かれていると仮定して、上記重心位置等を近似的に求めるようにしてもよい。
【０１７０】
図２１は、前述した影響力算出部３４（図１等）及び第２のパラメータ調整部３６（図１等）の機能を実行するための制御フローを示す。
【０１７１】
まず、ステップＳ１１（影響力算出部３４が行うシリンダ影響力の算出工程の一部に相当）で、流体圧シリンダ装置２２の作動により変位する物体（ピストン等の出力側可動要素、工具ホルダ９４、加工工具９２）の重心位置を算出（推定）する。ここでは、ピストン変位量が任意量ｄのときの力覚センサ座標系での、流体圧シリンダ装置２２の作動により変位する物体の重心位置ベクトルｒｔ［ｄ］（前述したステップＳ１で用いた式（１−６）から得られる）を使用できる。この重心位置ベクトルｒｔ［ｄ］と、ロボット１４の制御軸動作位置のデータＤ１から求められる手先部１６上の力覚センサ９０の位置とから、流体圧シリンダ装置２２の作動により変位する物体の重心位置を求めることができる。なお、このような重心位置の算出手法は一例であって、実測等の他の手法により、流体圧シリンダ装置２２の作動により変位する物体の重心位置を求めてもよい。しかし、上記手法によれば、別の計測器等を用いることなく、加工ロボットシステム１０２が本質的に有する構成要素によって重心位置を求めることができる利点がある。
【０１７２】
次に、ステップＳ１２（影響力算出部３４が行う算出工程の一部に相当）で、流体圧シリンダ装置２２の作動により変位する物体（ピストン等の出力側可動要素、工具ホルダ９４、加工工具９２）に作用する重力及び慣性力が、流体圧シリンダ装置２２の作動に及ぼしているシリンダ影響力を算出（推定）する。シリンダ影響力は、流体圧シリンダ装置２２の作動により変位する物体の重心位置及び質量から、例えば、前述したステップＳ２で説明した手法と同様の手法により、算出することができる。つまり、ステップＳ１１で算出した流体圧シリンダ装置２２の作動により変位する物体の重心位置と、前述したステップＳ１で算出した同物体の質量Ｍｔとに基づき、前述した動力学方程式（２−１）におけるＨ（θ，ｄθ／ｄｔ）及びＧ（θ）の項を解くことで、シリンダ影響力を算出できる。なお、ここで算出するシリンダ影響力は、流体圧シリンダ装置２２のピストンに対する影響を評価するものである。
【０１７３】
最後に、ステップＳ１３（第２のパラメータ調整部３６が行うパラメータ調整工程に相当）で、パラメータ調整部１０８は、記憶装置２４に記憶した流体圧シリンダ装置２２の目標押圧力Ｐ３に対し、流体圧シリンダ装置２２の作動により変位する物体（ピストン等の出力側可動要素、工具ホルダ９４、加工工具９２）に作用する重力及び慣性力の影響を補償する。すなわち、ステップＳ１２で求めたシリンダ影響力と流体圧シリンダ装置２２による押し付け方向Ｔ２の単位ベクトルとの内積から、シリンダ影響力の押し付け方向Ｔ２の成分を求め、このシリンダ影響力成分を相殺するように、目標押圧力Ｐ３を調整する（つまり増加させるか減少させる）。なお、図示しないが、ステップＳ１２でさらに、前述した影響モーメント算出部５４（図６）の機能としてシリンダ影響モーメントを算出し、ステップＳ１３でさらに、前述した第５のパラメータ調整部５６（図６）の機能として目標軌道Ｐ１と目標移動速度Ｐ２との少なくとも一方を調整するように構成することもできる。
【０１７４】
このように、図２１に示す制御フローによれば、重力及び慣性力が流体圧シリンダ装置２２の作動に及ぼしているシリンダ影響力を算出し、このシリンダ影響力を補償するように流体圧シリンダ装置２２の目標押圧力Ｐ３を調整しているから、前述したように、加工作業中に手先部１６の姿勢の変化や加速度の付加によってシリンダ影響力が発生したときにも、流体圧シリンダ装置２２による加工工具９２のワーク９６に対する押し付け力を最適化して、加工の品質及び信頼性を著しく向上させることができる。
【０１７５】
特に、加工ロボットシステム１０２では、流体圧シリンダ装置２２と力覚センサ９０とを組み合わせてロボット１４の手先部１６に設置しているので、手先部１６に支持される加工工具９２、工具ホルダ９４、ワーク９６、ハンド９８等の種類が変更された場合でも、力覚センサ９０が支持する物体や流体圧シリンダ装置２２の作動により変位する物体の質量や重心位置を、容易に算出することができる。その結果、力覚センサ９０が支持する物体や流体圧シリンダ装置２２の作動により変位する物体に作用する重力や慣性力が、パラメータ調整に及ぼす影響を、容易に相殺することができる。
【０１７６】
図２２は、前述した接触位置算出部４４（図３）及び第３のパラメータ調整部４６（図３）の機能を実行するための制御フローを示す。
【０１７７】
まず、ステップＳ２１（接触位置算出部４４が行う接触位置の算出工程に相当）で、倣い作業中に加工工具９２とワーク９６とが互いに実際に接触している接触位置を、以下の手順により算出（推定）する。
【０１７８】
力覚センサ９０が検出する力覚センサ座標系での力Ｆｓと原点の周りのモーメントＭｓとは、次式で表される（ただし押し付け方向Ｔ２の力成分は除外する。）。
Ｆｓ＝Ｍａ・Ｇｓ＋Ｆｉｎ＋Ｆｔ      ・・・式（３−１）
Ｍｓ＝Ｍａ・（ｒａ［ｄ］×Ｇｓ）＋ｒａ［ｄ］×Ｆｉｎ＋ｒｃ×Ｆｔ      ・・・式（３−２）
【０１７９】
ここで、
Ｍａ：力覚センサ９０に支持される物体（流体圧シリンダ装置２２、工具ホルダ９４、加工工具９２）の質量、
ｒａ[ｄ]：力覚センサ座標系での、力覚センサ９０に支持される物体の重心位置ベクトル、
Ｆｉｎ：力覚センサ座標系での、力覚センサ９０に支持される物体の重心に作用する慣性力ベクトル、
Ｇｓ：力覚センサ座標系での、力覚センサ９０に支持される物体の重心に作用する重力ベクトル、
ｒｃ：力覚センサ座標系での、加工工具９２とワーク９６との接触位置ベクトル、
Ｆｔ：力覚センサ座標系での、加工工具９２とワーク９６との接触位置に作用する力ベクトル。
【０１８０】
ここで、
Ｆｓ′＝Ｆｓ−Ｍａ・Ｇｓ−Ｆｉｎ
Ｍｓ′＝Ｍｓ−Ｍａ・（ｒａ［ｄ］×Ｇｓ）−ｒａ［ｄ］×Ｆｉｎ
と置くと、式（３−１）及び（３−２）から、以下の関係式が成立する。
Ｍｓ′＝ｒｃ×Ｆｓ′      ・・・式（３−３）
【０１８１】
力Ｆｓ及びモーメントＭｓは、力覚センサ９０の検出データとして取得できる。質量Ｍａ及び重心位置ベクトルｒａ［ｄ］は、例えば、図２０のステップＳ１で説明した手法により算出できる。慣性力ベクトルＦｉｎは、例えば、図２０のステップＳ２で説明した手法により算出できる。重力ベクトルＧｓは、ロボット１４の制御軸動作位置のデータＤ１と、手先部１６に取り付けられる力覚センサ９０及び力覚センサ９０に支持される物体の、全体の取り付け位置関係（力覚センサ９０自体の姿勢と力覚センサ９０に支持される物体の重心位置との関係）とに基づいて算出できる。ここで、重力ベクトルＧｓは、力覚センサ座標系で見た重力ベクトルであるので、ロボット１４の取り付け姿勢が異なる場合（例えば、ロボット１４の設置床面が傾いていたりロボット１４を壁面や天井に設置したりする場合）も考慮されている。
【０１８２】
ここで式（３−３）において、Ｆｓ′、Ｍｓ′、ｒｃを、以下のように記述する。
【０１８３】
【数２】
2011041992.tif 000004
【０１８４】
加工工具９２とワーク９６との接触位置が、流体圧シリンダ装置２２による押し付け方向（ピストン変位方向）Ｔ２に平行でかつ加工工具９２の回転軸線を含む仮想平面内に存在すると仮定すると、接触位置ベクトルｒｃの成分であるｒｘ、ｒｙ、ｒｚの間には、一次式で表される関係式が成立する。ここでは、押し付け方向Ｔ２が力覚センサ座標系のＹ軸に平行で、手先部１６の進行方向Ｔ１が同Ｘ軸に平行で、加工工具９２とワーク９６との接触位置が同Ｘ軸に直交する仮想平面に存在すると仮定する。このとき、仮想平面の存在する条件をｒｘ＝ｒ１（ｒ１は定数）とすると、式（３−３）から、Ｆｘ′≠０のときに次式が得られる（Ｆｘ′＝０のときには、進行方向Ｔ１には力が加わっていないことになるので、ワーク９６に接近する方向へ手先部１６ｂの軌道をずらすなどの調整を行ってもよい。）。
【０１８５】
【数３】
2011041992.tif 000005
【０１８６】
式（３−４）から、加工工具９２とワーク９６との接触位置ベクトルｒｃが得られる。なお、式（３−４）で得られるのは、力覚センサ座標系での座標値であり、ロボット１４の基準座標系での座標値が必要な場合には、ロボット１４の制御軸動作位置のデータＤ１及び力覚センサ９０のロボット１４への取り付け位置関係から算出すればよい。
【０１８７】
次に、ステップＳ２２（第３のパラメータ調整部４６が行うパラメータ調整工程に相当）で、パラメータ調整部１０８は、ステップＳ２１で算出した加工工具９２とワーク９６との接触位置ｒｃに応じて、所要の制御パラメータＰ１〜Ｐ４を下記のようにして調整する。
【０１８８】
図２３に示すように、加工工具９２が、ロボット１４から見て末端側を頂点とする円錐形の回転刃９２ａを有する場合、加工工具９２とワーク９６との目標接触位置１１０に対して、倣い作業中の実際の接触位置１１２が、教示軌道の誤差やワーク形状のばらつき等に起因してずれを生じると、実際の接触位置１１２における回転刃９２ａの周速度が、目標接触位置１１０における周速度から変化する。例えば、実際の接触位置１１２が、目標接触位置１１０よりも工具根元側にずれている場合には、接触位置１１２での回転刃９２ａの周速度が、目標接触位置１１０での周速度よりも速くなる（図２３（ａ））。また、接触位置１１２が、目標接触位置１１０よりも工具先端側にずれている場合には、接触位置１１２での回転刃９２ａの周速度が、目標接触位置１１０での周速度よりも遅くなる（図２３（ｂ））。
【０１８９】
このような観点から、回転刃９２ａが円錐形の場合に限らず、予め回転刃９２ａの形状データをＣＡＤ等のデータから取得したりオペレータが形状モデルデータを数値等で入力したりしておけば、目標接触位置とステップＳ２１で算出した実際の接触位置ｒｃとの関係及び回転刃９２ａの形状データに基づき、接触位置ｒｃでの回転刃９２ａの周速度と目標接触位置での周速度との同異及び高低を予測できる。回転刃９２ａの周速度の変動は、加工の品質や信頼性に影響を及ぼすものである。
【０１９０】
そこで、回転刃９２ａの周速度が目標接触位置での周速度よりも速くなると予測される位置に接触位置ｒｃが存在する場合、具体例として、下記（１）〜（４）に示すいずれかの調整手法を実施できるように構成する。なお下記において、ロボット１４の手先部１６の調整前の目標移動速度Ｐ２＝Ｖｔｏ、流体圧シリンダ装置の調整前の目標押圧力Ｐ３＝Ｆｏ、加工工具９２の調整前の目標動作速度Ｐ４＝Ｖｒｏとする。また、加工工具９２の工具座標系（ここでは、加工工具９２上の目標接触位置を原点とし、工具回転軸に対して平行な軸を１つの軸とする座標系）において、目標接触位置と実際の接触位置ｒｃ（力覚センサ座標系での値を変換したもの）との間の工具径方向に見た最短距離（すなわち、工具回転軸から目標接触位置までの最短距離と工具回転軸から実際の接触位置までの最短距離との差）をＤａとする。
【０１９１】
（１）加工工具９２の回転軸に沿った方向の接触位置ｒｃの座標が、同方向の目標接触位置の座標と同じになるように、ロボット１４の手先部１６の軌道を修正する（目標軌道Ｐ１の調整）。
【０１９２】
（２）ロボット１４の手先部１６の目標移動速度Ｖｔｏに、距離Ｄａに応じた１を超える係数を掛けて、より大きい目標移動速度Ｖｔｎに調整する（目標移動速度Ｐ２の調整）。以下の演算を行う。
Ｖｔｎ＝｛（αｐｖ２−１）・｛１−ｅｘｐ（−βｐｖ２・Ｄａ）｝＋１｝・Ｖｔｏ
ここで、αｐｖ２及びβｐｖ２は定数であり、０＜βｐｖ２、１≦αｐｖ２、０≦Ｄａである。
【０１９３】
（３）流体圧シリンダ装置２２の目標押圧力Ｆｏに、距離Ｄａに応じた１未満の係数を掛けて、より小さい目標押圧力Ｆｓｐｎに調整する（目標押圧力Ｐ３の調整）。以下の演算を行う。
Ｆｓｐｎ＝｛（１−αｐｆ３）・ｅｘｐ（−βｐｆ３・Ｄａ）＋αｐｆ３｝・Ｆｏ
ここで、αｐｆ３及びβｐｆ３は定数であり、０＜βｐｆ３、０≦αｐｆ３＜１、０≦Ｄａである。
【０１９４】
（４）加工工具９２の目標動作速度Ｖｒｏに、距離Ｄａに応じた１未満の係数を掛けて、より小さい目標動作速度Ｖｒｎに調整する（目標動作速度Ｐ４の調整）。以下の演算を行う。
Ｖｒｎ＝｛（１−αｐｒ４）・ｅｘｐ（−βｐｒ４・Ｄａ）＋αｐｒ４｝・Ｖｒｏ
ここで、αｐｒ４及びβｐｒ４は定数であり、０＜βｐｒ４、０≦αｐｒ４＜１、０≦Ｄａである。
【０１９５】
上記（１）〜（４）の調整手法は、例えば、加工工具９２やワーク９６の属性、ワーク９６の加工対象領域の現状、目的とする加工品質の程度、ロボット１４の動作自由度等の諸条件に応じて、（１）〜（４）の調整手法のうちでいずれか１つ以上の調整手法を実施するよう、予め設定しておくことができる。また、上記した種々の係数は、システム構築の際に行う実験やオペレータの経験に基づき、予め設定できるものである。
【０１９６】
他方、回転刃９２ａの周速度が目標接触位置１１０での周速度よりも遅くなると予測される位置に接触位置ｒｃが存在する場合、具体例として、下記（５）〜（８）に示すいずれかの調整手法を実施できるように構成する。なお、下記における文字の定義は、上記（１）〜（４）と同様である。
【０１９７】
（５）加工工具９２の回転軸に沿った方向の接触位置ｒｃの座標が、同方向の目標接触位置の座標と同じになるように、ロボット１４の手先部１６の軌道を修正する（目標軌道Ｐ１の調整）。
【０１９８】
（６）ロボット１４の手先部１６の目標移動速度Ｖｔｏに、距離Ｄａに応じた１未満の係数を掛けて、より小さい目標移動速度Ｖｔｎに調整する（目標移動速度Ｐ２の調整）。以下の演算を行う。
Ｖｔｎ＝｛（１−αｐｄｖ２）・ｅｘｐ（−βｐｄｖ２・Ｄａ）＋αｐｄｖ２｝・Ｖｔｏ
ここで、αｐｄｖ２及びβｐｄｖ２は定数であり、０＜βｐｄｖ２、０≦αｐｄｖ２＜１、０≦Ｄａである。
【０１９９】
（７）流体圧シリンダ装置２２の目標押圧力Ｆｏに、距離Ｄａに応じた１を超える係数を掛けて、より大きい目標押圧力Ｆｓｐｎに調整する（目標押圧力Ｐ３の調整）。以下の演算を行う。
Ｆｓｐｎ＝｛（αｐｄｆ３−１）・｛１−ｅｘｐ（−βｐｄｆ３・Ｄａ）｝＋１｝・Ｆｏ
ここで、αｐｄｆ３及びβｐｄｆ３は定数であり、０＜βｐｄｆ３、１≦αｐｄｆ３、０≦Ｄａである。
【０２００】
（８）加工工具９２の目標動作速度Ｖｒｏに、距離Ｄａに応じた１を超える係数を掛けて、より大きい目標動作速度Ｖｒｎに調整する（目標動作速度Ｐ４の調整）。以下の演算を行う。
Ｖｒｎ＝｛（αｐｄｒ４−１）・｛１−ｅｘｐ（−βｐｄｒ４・Ｄａ）｝＋１｝・Ｖｒｏ
ここで、αｐｄｒ４及びβｐｄｒ４は定数であり、０＜βｐｄｒ４、１≦αｐｄｒ４、０≦Ｄａである。
【０２０１】
上記（５）〜（８）の調整手法は、例えば、加工工具９２やワーク９６の属性、ワーク９６の加工対象領域の現状、目的とする加工品質の程度、ロボット１４の動作自由度等の諸条件に応じて、（５）〜（８）の調整手法のうちでいずれか１つ以上の調整手法を実施するよう、予め設定しておくことができる。また、上記した種々の係数は、システム構築の際に行う実験やオペレータの経験に基づき、予め設定できるものである。
【０２０２】
このように、図２２に示す制御フローによれば、倣い作業中に加工工具９２とワーク９６とが互いに実際に接触している接触位置を算出し、この接触位置に応じて、ロボット１４の手先部１６の目標軌道Ｐ１及び目標移動速度Ｐ２、流体圧シリンダ装置２２の目標押圧力Ｐ３、並びに加工工具９２の目標動作速度Ｐ４のうちの、少なくとも１つの制御パラメータを調整しているから、前述したように、教示軌道の誤差やワーク形状のばらつき等により実際の接触位置が目標接触位置からずれた場合であっても、加工工具９２によるワーク加工能力を一定に維持して、ワーク加工量の変動及び加工品質の低下を抑制し、以て、加工の品質及び信頼性を一層向上させることができる。
【０２０３】
図２２に示す制御フローでは、ステップＳ２１で算出した加工工具９２とワーク９６との接触位置に基づき、加工工具９２の回転刃９２ａの摩耗量を推測することもできる。例えば、円錐形の回転刃９２ａにおいて、図２３（ｃ）に示すように、目標接触位置１１０に対して工具先端側にずれている実際の接触位置１１２が、回転刃９２ａの形状データから得られる位置１１２′よりも工具回転軸線に近い位置に有る場合、この偏差分だけ回転刃９２ａが摩耗していると推測できる。
【０２０４】
そこで、回転刃９２ａが円錐形の場合に限らず、目標接触位置とステップＳ２１で算出した実際の接触位置ｒｃとの関係及び回転刃９２ａの形状データに基づき、回転刃９２ａが摩耗していない状態で予期される接触位置（仮想点）と、ステップＳ２１で算出した実際の接触位置ｒｃとの、工具径方向に見た最短距離（すなわち、工具回転軸から予期接触位置（仮想点）までの最短距離と工具回転軸から実際の接触位置までの最短距離との差）Ｄａ２が、所定の閾値を超える場合、ステップＳ２２において、具体例として下記（９）〜（１２）に示すいずれかの調整手法を実施できるように構成する。なお、下記における文字の定義は、上記（１）〜（４）と同様である。
【０２０５】
（９）回転刃９２ａが、回転軸線に沿った位置に応じて半径が変化する形状（例えば円錐形）を有する場合、加工工具９２とワーク９６との実際の接触位置を、当該接触位置での周速度が大きくなる方向へずらすことを目的として、ロボット１４の手先部１６の軌道を、回転軸線に沿った方向であって回転刃９２ａの半径が大きくなる方向へ、距離Ｄａ２に応じた距離Ｄｐｗ１だけ修正する（目標軌道Ｐ１の調整）。以下の演算を行う。
Ｄｐｗ１＝｛１−ｅｘｐ（−βｐｗｄ１・Ｄａ２）｝・αｐｗｄ１
ここで、αｐｗｄ１及びβｐｗｄ１は定数であり、０＜βｐｗｄ１、０≦αｐｗｄ１、０≦Ｄａ２である。
【０２０６】
（１０）流体圧シリンダ装置２２の目標押圧力Ｆｏに、距離Ｄａ２に応じた１を超える係数を掛けて、より大きい目標押圧力Ｆｓｐｎに調整する（目標押圧力Ｐ３の調整）。以下の演算を行う。
Ｆｓｐｎ＝｛（αｐｗｆ２−１）・｛１−ｅｘｐ（−βｐｗｆ２・Ｄａ２）｝＋１｝・Ｆｏ
ここで、αｐｗｆ２及びβｐｗｆ２は定数であり、０＜βｐｗｆ２、１≦αｐｗｆ２、０≦Ｄａ２である。
【０２０７】
（１１）加工工具９２の目標動作速度Ｖｒｏに、距離Ｄａ２に応じた１を超える係数を掛けて、より大きい目標動作速度Ｖｒｎに調整する（目標動作速度Ｐ４の調整）。以下の演算を行う。
Ｖｒｎ＝｛（αｐｗｒ２−１）・（１−ｅｘｐ（−βｐｗｒ２・Ｄａ２））＋１｝・Ｖｒｏ
ここで、αｐｗｒ２及びβｐｗｒ２は定数であり、０＜βｐｗｒ２、１≦αｐｗｒ２、０≦Ｄａ２である。
【０２０８】
（１２）現在の作業の終了後に、加工工具９２を交換する。
【０２０９】
上記（９）〜（１２）の調整手法は、例えば、加工工具９２やワーク９６の属性、ワーク９６の加工対象領域の現状、目的とする加工品質の程度、ロボット１４の動作自由度等の諸条件に応じて、（９）〜（１２）の調整手法のうちでいずれか１つ以上の調整手法を実施するよう、予め設定しておくことができる。また、上記した種々の係数は、システム構築の際に行う実験やオペレータの経験に基づき、予め設定できるものである。これらの調整手法により、加工工具９２の摩耗により実際の接触位置が目標接触位置からずれた場合であっても、加工工具９２によるワーク加工能力を一定に維持して、ワーク加工量の変動及び加工品質の低下を抑制し、以て、加工の品質及び信頼性を一層向上させることができる。さらに、図２２に示す制御フローによれば、目標接触位置と実際の接触位置とのずれや推測される工具摩耗量が、予め定めた限界値を越えた場合に、システム制御装置１００がそれを異常と判断して、作業を強制的に中断したり工具交換をオペレータに報知したりすることができるので、システムの安全性を一層高めることができる。
【０２１０】
図２４は、前述した第６のパラメータ調整部６０（図７）の機能を実行するための制御フローを示す。
【０２１１】
流体圧シリンダ装置２２の作動（したがって目標押圧力）が、前述したシリンダ影響力を補償するように第２のパラメータ調整部３６（図１等）によって適切に調整されていることを前提として、まずステップＳ３１で、流体圧シリンダ装置２２のピストン変位量が上限値（つまりピストンが押し付け方向Ｔ２のストローク限界位置に有る）又は下限値（つまりピストンが押し付け方向Ｔ２の反対方向のストローク限界位置に有る）であるか否かを判断する。
【０２１２】
ピストン変位量が上限値であるときには、加工工具９２とワーク９６とが互いに接触せずに離れてしまっている可能性がある。そこで、ステップＳ３２で、流体圧シリンダ装置２２のピストン変位量が上限値と下限値との間の値に移行するように、ロボット１４の手先部１６の軌道を、加工工具９２がワーク９６に接近する方向へずらす（目標軌道Ｐ１の調整）。それにより、加工工具９２とワーク９６との間の押し付け力を最適化し、加工不足を回避して加工の品質及び信頼性を著しく向上させることができる。
【０２１３】
他方、ピストン変位量が下限値であるときには、加工工具９２とワーク９６とが流体圧シリンダ装置２２の作動ストローク以上に互いに接近しようとしている（したがって過剰な押し付け力が生じている）可能性がある。そこで、ステップＳ３２で、流体圧シリンダ装置２２のピストン変位量が上限値と下限値との間の値に移行するように、ロボット１４の手先部１６の軌道を、加工工具９２がワーク９６から離れる方向へずらす（目標軌道Ｐ１の調整）。それにより、加工工具９２とワーク９６との間の押し付け力を最適化し、システム構成要素の構造的安定性及び安全性を高めるとともに過剰加工を回避して加工の品質及び信頼性を著しく向上させることができる。
【０２１４】
なお、上記いずれの場合も、手先部１６の軌道修正量（つまりピストン変位量の移行先の値）は任意であり、システム構築の際に行う実験やオペレータの経験に基づき、予め設定できるものである。また、軌道の修正手法としては、例えば、ロボット１４の各制御軸の駆動部に過大な負荷が掛からないようにしながら、予め指定した移動量（ピストンストローク／ｎ（ｎ＞０））だけ目標軌道を変更したり、変位検出センサ５８（図１８）からフィードバックされるピストン変位量が予め指定した数値を示すまで、目標軌道を変更したりする手法を挙げることができる。なお、ステップＳ３１で、流体圧シリンダ装置２２のピストン変位量が上限値及び下限値のいずれでもないと判断したときには、ステップＳ３３で、ロボット１４の手先部１６の目標軌道Ｐ１を調整しないようにすることができる。
【０２１５】
図２５は、前述した押付方向決定部６４（図８）及び第７のパラメータ調整部６６（図８）の機能を実行するための制御フローを示す。
【０２１６】
まず、ステップＳ４１（押付方向決定部６４が行う目標押し付け方向の決定工程の一部に相当）で、図２０のステップＳ５に関連して説明した手法と同様の手法により、倣い作業中の加工工具９２の実際の進行方向Ｔ１（つまりロボット１４の工具座標系原点の実際の移動方向）を算出（推定）する。すなわち、ロボット１４の制御軸動作位置のデータＤ１と、流体圧シリンダ装置２２のピストン変位量のデータＤ２と、加工工具９２に設定した工具座標系原点（目標接触位置）の位置データと、手先部１６に設置した力覚センサ９０、流体圧シリンダ装置２２、加工工具９２等の取り付け位置関係とを用いて、加工工具９２の工具座標系原点の現在位置を制御周期毎に求め、複数の制御周期で求めた加工工具９２の現在位置の変化に基づいて、加工工具９２の実際の進行方向Ｔ１を算出する。なお、この制御フローは、加工工具９２の進行方向Ｔ１（工具座標系原点の移動方向）が流体圧シリンダ装置２２による押し付け方向Ｔ２に直交する構成に限らず、進行方向Ｔ１が押し付け方向Ｔ２に任意角度で斜交する構成にも適用できるものである。
【０２１７】
次に、ステップＳ４２（押付方向決定部６４が行う目標押し付け方向の決定工程の一部に相当）で、ステップＳ４１で算出した加工工具９２の進行方向Ｔ１（工具座標系原点の移動方向）の単位ベクトルに対し、零以外の予め定めた押し付け角度を成す方向に、流体圧シリンダ装置２２の作動による加工工具９２のワーク９６に対する最適な目標押し付け方向を決定する。ここで、加工工具９２をワーク９６の指定された縁部９６ａ（図１９）に沿って縁部９６ａに倣うように進行させる倣い作業においては、加工工具９２の進行方向Ｔ１に対して予め定めた角度を成す方向、というだけでは、接線（つまり進行方向Ｔ１に平行な軸線）を中心とする回転方向に見れば同じ「予め定めた角度を」成す方向が無限に存在する。そこで、目標押し付け方向を決定する手法として、下記のような幾つかの異なる手法を実施できる。
【０２１８】
第１の決定手法では、ロボット１４に倣い作業を実施させる前の準備作業として、オペレータが、加工工具９２のワーク９６に対する目標接触位置（ここでは工具座標系原点。制御基準点の場合もある。）を含み加工工具９２の回転軸線に直交する仮想平面上で、加工工具９２の進行方向ベクトル（ステップＳ４１で算出）の当該仮想平面への投影ベクトルに対し、所望の押し付け角度φ１を成す方向が目標押し付け方向であるとして、押し付け角度φ１を予め用意しておく（したがって、進行方向ベクトルに対して目標押し付け方向を直交させる構成では、押し付け角度φ１は９０度である。）。そして、ロボット１４が倣い作業を実施している最中に、システム制御装置１００が、加工工具９２のワーク９６に対する目標接触位置（ここでは工具座標系原点。制御基準点の場合もある。）を含み加工工具９２の回転軸線に直交する作業中の（つまり随時変動し得る）仮想平面を求め、この作業中の仮想平面に、ステップＳ４１で求めた進行方向Ｔ１の単位ベクトルを投影して作業中の投影ベクトルを算出する。そして、この作業中の投影ベクトルと、予め用意した押し付け角度φ１との関係から、随時変動し得る目標押し付け方向を決定する。
【０２１９】
第２の決定手法では、ロボット１４に倣い作業を実施させる前の準備作業として、加工工具９２を倣わせる縁部９６ａを含むワーク９６上の特定表面（特にロボット１４の基準座標系における平面（特定表面が曲面の場合には任意の接平面）の傾き）を、ロボット１４により当該特定表面上の任意箇所を三点計測することにより算出（又は近似推定）し、オペレータが、加工工具９２のワーク９６に対する目標接触位置（ここでは工具座標系原点。制御基準点の場合もある。）を含みこの特定表面に平行する仮想平面上で、加工工具９２の進行方向ベクトル（ステップＳ４１で算出）の当該仮想平面への投影ベクトルに対し、所望の押し付け角度φ２を成す方向が目標押し付け方向であるとして、押し付け角度φ２を予め用意しておく（したがって、進行方向ベクトルに対して目標押し付け方向を直交させる構成では、押し付け角度φ２は９０度である。）。そして、ロボット１４が倣い作業を実施している最中に、システム制御装置１００が、加工工具９２のワーク９６に対する目標接触位置（ここでは工具座標系原点。制御基準点の場合もある。）を含み上記特定表面に平行する作業中の（つまり随時変動し得る）仮想平面を求め、この作業中の仮想平面に、ステップＳ４１で求めた進行方向Ｔ１の単位ベクトルを投影して作業中の投影ベクトルを算出する。そして、この作業中の投影ベクトルと、予め用意した押し付け角度φ２との関係から、随時変動し得る目標押し付け方向を決定する。
【０２２０】
第１の決定手法では、目標押し付け方向は、加工工具９２の回転軸線に直交する平面内で決定される。これに対し、第２の決定手法では、目標押し付け方向は、加工工具９２を倣わせる縁部９６ａを含むワーク９６上の特定表面（例えば図１９に示す表面９６ｃ）に平行な平面内で決定される。第２の決定手法において、縁部９６ａを含むワーク９６上の特定表面が曲面であってその接平面の傾きが縁部９６ａに沿って絶えず変化している場合には、縁部９６ａに沿った所望の長さ領域内で、代表的な接平面を予め設定しておいてもよい。この場合、ＣＡＤ等によるワーク９６の形状データを用いることで、代表的な接平面を比較的容易に設定できる。
【０２２１】
第３の決定手法では、ロボット１４に倣い作業を実施させる前の準備作業として、押し付け角度φ１、φ２を用意する代わりに、オペレータが、加工工具９２を倣わせる縁部９６ａ上の複数の任意の位置において、共通する方向を有する互いに平行な所望の単位ベクトルを予め用意しておく。例えば、縁部９６ａが二次元曲線の場合には、この縁部９６ａを包含する仮想平面上で所望の方向を定め、縁部９６ａ上の複数の任意の位置のそれぞれにおいてこの方向を有する単位ベクトルを設定することができる。また、縁部９６ａが直線の場合には、この縁部９６ａを包含する実平面に直交する仮想平面上で所望の方向を定め、縁部９６ａ上の複数の任意の位置のそれぞれにおいてこの方向を有する単位ベクトルを設定することができる。そして、ロボット１４が倣い作業を実施している最中に、システム制御装置１００が、縁部９６ａ上の予め定めた複数の任意の位置において、予め設定した互いに平行な単位ベクトルとステップＳ４１で求めた進行方向Ｔ１の単位ベクトルとの外積により、随時変動し得る目標押し付け方向（ベクトル）を決定する。
【０２２２】
第３の決定手法では、目標押し付け方向は、縁部９６ａ上の複数の任意の位置における互いに平行な単位ベクトルの方向に従って決定される。これらの単位ベクトルの方向が、ステップＳ４１で求めた進行方向Ｔ１の単位ベクトルの方向と一致する場合には、オペレータが準備作業として単位ベクトルを設定し直すようにすれば良い。
【０２２３】
なお、加工ロボットシステム１０２を、加工工具９２をワーク９６の指定された表面に沿って当該表面に倣うように進行させる研磨や研削等の作業に適用する場合は、ロボット１４に倣い作業を実施させる前の準備作業として、又はロボット１４が倣い作業を実施している最中に、ワーク９６の加工対象面上の直線に並ばない任意箇所を三点計測することにより、加工対象面を算出（又は近似推定）し、加工対象面の法線の方向を算出し、この法線の方向を目標押し付け方向として決定することができる。
【０２２４】
最後に、ステップＳ４３（第７のパラメータ調整部６６が行うパラメータ調整工程に相当）で、パラメータ調整部１０８は、ステップＳ４２で算出した目標押し付け方向に従い、記憶装置２４に記憶した手先部１６の目標軌道Ｐ１を調整する。ここでは、流体圧シリンダ装置２２のピストンの作動方向（単動式かつ１軸の場合）を目標押し付け方向に合致させることを目的として、制御周期毎の加工工具９２とワーク９６との目標接触位置（ここでは工具座標系原点。制御基準点の場合もある。）を変えることなく、制御周期毎の手先部１６の姿勢を変化させるように目標軌道Ｐ１を調整する。ここで、目標軌道Ｐ１における制御周期毎の手先部１６の位置及び姿勢は、流体圧シリンダ装置２２の目標押し付け方向が、ロボット１４の手先部１６の目標軌道Ｐ１に沿った移動方向に対して所望の角度を成す、という条件から算出できる。
【０２２５】
このように、図２５に示す制御フローによれば、ロボット１４の手先部１６の移動中に流体圧シリンダ装置２２による最適な目標押し付け方向を決定し、その最適な目標押し付け方向に従って手先部１６の目標軌道Ｐ１を調整しているから、流体圧シリンダ装置２２の押し付け方向が最適な押し付け方向からずれている場合に、手先部１６の軌道を自動的に変化させて流体圧シリンダ装置２２を最適な押し付け方向で作動させることができ、その結果、加工工具９２とワーク９６との間の押し付け力（特に、加工対象領域の接線や接平面に直交する方向へ加わる力）が所望の大きさからずれることを抑制する（つまり最適化する）ことができる。また、記憶装置２４に記憶した目標軌道Ｐ１が、流体圧シリンダ装置２２による押し付け方向を最適な方向にするものでない場合にも、目標軌道Ｐ１（したがって押し付け方向）を自動的に最適化できるため、目標軌道Ｐ１の教示が容易になる利点がある。
【０２２６】
図２６は、前述した押付方向決定部６８（図９）及び目標軌道生成部７０（図９）の機能を実行するための制御フローを示す。図２６の制御フローは、図２５の制御フローにおける目標押し付け方向決定ステップ（Ｓ４２）及び目標軌道調整ステップ（Ｓ４３）に代えて、押付方向決定部６８及び目標軌道生成部７０が、加工工具９２の現在位置の変化に基づいて次の位置を自動的に推定し、流体圧シリンダ装置２２による最適な目標押し付け方向に従って手先部１６の目標軌道Ｐ１を生成するステップを有するものである。
【０２２７】
まず、ロボット１４に倣い作業を実施させる前の準備作業として、オペレータが、目標軌道の無い状態で手先部１６を移動させるための初期パラメータ（例えば、手先部１６の初期位置、初期移動方向及び初期移動速度、手先部１６の初期移動方向と流体圧シリンダ装置２２の初期押し付け方向との関係、手先部１６の最終位置、加工工程における総加工距離や総加工時間、加工工具９２を倣わせるワーク９６の縁部９６ａを含む表面９６ｃの高さ等）を設定し、システム制御装置１００に入力する。システム制御装置１００は、この初期パラメータに従い手先部１６を移動させることで、倣い作業を開始する。
【０２２８】
初期パラメータに従う倣い作業が開始されると、ステップＳ５１（押付方向決定部６８が行う目標押し付け方向の決定工程の一部に相当）で、ロボット１４の制御軸動作位置のデータＤ１と、流体圧シリンダ装置２２のピストン変位量のデータＤ２と、加工工具９２に設定した工具座標系原点（目標接触位置）の位置データと、手先部１６に設置した力覚センサ９０、流体圧シリンダ装置２２、加工工具９２等の取り付け位置関係とを用いて、加工工具９２の工具座標系原点の現在位置を制御周期毎に求め、複数の制御周期で求めた加工工具９２の現在位置の変化に基づいて、加工工具９２の実際の進行方向Ｔ１の単位ベクトルを算出（推定）する。次に、ステップＳ５２（押付方向決定部６８が行う目標押し付け方向の決定工程の一部に相当）で、加工工具９２（工具座標系原点）が通過した制御周期毎の位置の変化から、手先部１６が次に進むべき位置を推定する。例えば、制御周期毎の工具座標系原点の位置の履歴に基づき、最小二乗近似で次の制御周期の工具座標系原点の位置を推定できる。
【０２２９】
次に、ステップＳ５３（押付方向決定部６８が行う目標押し付け方向の決定工程の一部に相当）で、ステップＳ５１で算出した加工工具９２の進行方向Ｔ１（工具座標系原点の移動方向）の単位ベクトルに対し、前述したステップＳ４２と同様の手法により、零以外の予め定めた押し付け角度を成す方向に、流体圧シリンダ装置２２の作動による加工工具９２のワーク９６に対する最適な目標押し付け方向を決定する。最後にステップＳ５４（目標軌道生成部７０が行う目標軌道生成工程に相当）で、ステップＳ５２で推定したロボット１４の手先部１６の次位置における流体圧シリンダ装置２２のピストンの作動方向（単動式かつ１軸の場合）が、ステップＳ５３で算出した目標押し付け方向に合致するように、手先部１６の次位置での姿勢を求める。これらステップＳ５１〜Ｓ５４を、予め定めた終点位置に手先部１６が達するまで繰り返すことにより、流体圧シリンダ装置２２の作動方向を所望の押し付け方向に合致させた目標軌道Ｐ１を、自動的に生成することができる。
【０２３０】
このように、図２６に示す制御フローによれば、ロボット１４の手先部１６の移動中に流体圧シリンダ装置２２による最適な目標押し付け方向を逐次的に決定し、その最適な目標押し付け方向に従って手先部１６の目標軌道Ｐ１を自動的に生成しているから、ロボット１４に手先部１６の目標軌道をワーク形状に基づいて正確に教示することなく、前述した幾つかの初期パラメータを設定するだけで、倣い作業を実行しながら、ワーク９６の加工対象領域に正確に倣う手先部１６の目標軌道Ｐ１を容易に生成することができる。このような目標軌道Ｐ１の自動生成フローは、実際の加工作業（図示実施形態ではバリ取り作業）の実行中に、工具座標系原点の現在位置の変化とそれに基づいた次位置の推定、及び現在の進行方向とそれに対応する目標押し付け方向（次位置でのピストン作動方向に対応）の決定により、それ以降の工具座標系原点の位置及び手先部１６の姿勢を随時算出するようにして、行うことができる。或いは、加工作業を実行せずに、加工工具９２を例えば回転自在な状態にしてワーク９６や別途用意したマスターワークの加工対象領域に倣わせるように、ロボット１４の手先部１６を動作させることで、目標軌道Ｐ１を生成することもできる。目標軌道Ｐ１に沿って移動する手先部１６の目標移動速度Ｐ２は、ワーク９６や加工の種類等に応じてシステム制御装置１００が自動的に設定するようにしてもよいし、オペレータが設定するようにしてもよい。なお、このようにして生成した目標軌道Ｐ１を記憶装置２４に格納しておくことで、パラメータ調整部１０８が当該目標軌道Ｐ１を随時、必要に応じて調整することもできる。
【０２３１】
上記した目標軌道Ｐ１の調整（図２５）及び生成（図２６）の制御フローでは、いずれも、流体圧シリンダ装置２２のピストンを固定することなく、ピストン変位量のデータＤ２を用いて加工工具９２の進行方向Ｔ１を算出している。これに代えて、流体圧シリンダ装置２２のピストンをピストン固定部７６（図１１）により所定位置に固定した状態で、ロボット１４の動作により、ワーク９６又はマスターワークの加工対象領域に加工工具９２を押し付けながら加工工具９２を移動させることで、加工工具９２の進行方向Ｔ１の算出に必要なデータ（特にロボット１４の制御軸動作位置のデータＤ１）を取得することもできる。この方法では、システム制御装置１００は、手先部１６に設置した力覚センサ９０による検出データＤ３を参照しながら、例えば加工工具９２の進行方向に直交する方向であって加工対象領域に接近する方向への押し付け力が所定値になるように加工工具９２を移動させて、制御周期毎のデータＤ１を取得する。なおこの方法では、加工工具９２は回転刃９２ａが外力により回転自在な状態にしておくことが好ましい。或いは、加工工具９２の回転刃９２ａを適当なカバーで覆ったり、加工工具９２の代わりに切削能力の無いダミー部品を使用したりしてもよい。
【０２３２】
上記した目標軌道Ｐ１の調整（図２５）又は生成（図２６）の手法は、例えば既述の特許文献６に記載されるフローティングシリンダ装置を用いた手法に比べて、様々なワーク９６に対する目標軌道Ｐ１をより適切に調整又は生成できるものである。図示実施形態による目標軌道Ｐ１の調整又は生成手法では、手先部１６をその位置及び姿勢の双方を変化させてワーク９６の加工対象領域に倣わせながら、目標軌道Ｐ１を調整又は生成するようにしているから、三次元的に曲がった加工対象領域に対しても、手先部１６の姿勢を適切に変化させて、流体圧シリンダ装置２２の作動による加工工具９２のワーク９６に対する押し付け方向を最適化した目標軌道Ｐ１を得ることができる。また、フローティングシリンダ装置を用いた手法では、目標軌道からのずれがフローティングシリンダ装置の最大ストロークを超えるほど大きな場合に、加工工具の動作軌跡の修正が困難になることが危惧される。これに対し、特に流体圧シリンダ装置２２のピストンをピストン固定部７６（図１１）により所定位置に固定した状態で実行する前述した手法によれば、フローティングシリンダ装置の最大ストロークのような動作上の制約が無いので、目標軌道からのずれがフローティングシリンダ装置の最大ストロークを超えるほど大きな場合にも、目標軌道Ｐ１を適切に調整又は生成できる。また、ロボット１４の手先部１６の位置を目標軌道Ｐ１の位置として直接利用できるので、各制御軸の動作位置の算出も容易である。
【０２３３】
図１０を参照して説明したように、互いに交差する複数の制御軸を備えた複軸の流体圧シリンダ装置２２を採用したシステム構成では、上記したステップＳ４２又はＳ５３と同様にして目標押し付け方向を決定し（押付方向決定部７２（図１０）の機能）、流体圧シリンダ装置２２の複軸の作動による加工工具９２のワーク９６への押し付け方向が目標押し付け方向に合致するように、流体圧シリンダ装置２２の各軸の作動圧力を制御してシリンダ押圧力を調整する（シリンダ動作指令部７４（図１０）の機能）構成とすることができる。この構成によれば、倣い作業を実行しながら、複軸の流体圧シリンダ装置２２を最適な押し付け方向で作動させることができる。このとき、記憶装置２４に記憶した目標軌道Ｐ１が、複軸の流体圧シリンダ装置２２による押し付け方向を最適な方向にするものでない場合にも、目標軌道Ｐ１（したがって押し付け方向）を自動的に最適化できるため、目標軌道Ｐ１の教示が容易になる利点がある。
【０２３４】
上記構成において、流体圧シリンダ装置２２が二次元空間（以下、作動平面と称する。）内で任意方向に作動できる自由度を有する場合には、力覚センサ９０によって検出される力の、作動平面に直交する方向の成分だけが、加工工具９２とワーク９６との間に実際に作用する作用力（同方向の作用力成分）に対応することになる。作動平面に平行な方向については、流体圧シリンダ装置２２の各軸のピストンを作動ストロークの限界を超えて押しやる程に大きい力（成分）や、流体圧シリンダ装置２２の各軸における力の緩衝作用が働かない程に急激な力（成分）が、そのような方向へ加工工具９２に加わったときに、力覚センサ９０が検出する力が実際の作用力に実質的に対応する。したがって、上記構成においても、前述した１軸の流体圧シリンダ装置２２を採用したシステム構成における押し付け方向Ｔ２の作用力成分Ｆｎ′と同様の観点で、作動平面に平行な方向については、力覚センサ９０によって検出される力が加工工具９２とワーク９６の間に実際に作用する作用力に正確には対応しないことを考慮して、パラメータ調整を行うことが好ましい。
【０２３５】
図２７は、前述したロボット動作指令部７８（図１１）及び加工状態判定部８０（図１１）の機能を実行するための制御フローを示す。
【０２３６】
まず、ステップＳ６１（ロボット動作指令部７８が行う手先部移動工程に相当）で、加工作業（図示実施形態ではバリ取り作業）の完了後に、オペレータがピストン固定部７６（図１１）により流体圧シリンダ装置２２のピストンを固定した状態で、加工工具９２を例えば回転自在な状態にしてワーク９６の加工済領域に倣わせるように、ロボット１４の手先部１６を動作させる。このとき、加工工具９２やワーク９６への悪影響を防止する等の目的で、加工工具９２を適当なダミー部品に置き換えることもできるが、加工工具９２をそのまま使用することで迅速な処理を行うことができる利点がある（以下、加工工具９２をそのまま使用する構成を説明する）。加工工具９２をワーク９６の加工済領域に倣わせる間は、力覚センサ９０が検出した力及びモーメントのデータＤ３を用いて手先部１６の動作を制御することで、加工工具９２とワーク９６の間に、例えば進行方向Ｔ１に直交する押し付け方向Ｔ２へ予め定めた大きさの力を作用させる。
【０２３７】
次に、ステップＳ６２（加工状態判定部８０が行う加工状態判定工程に相当）で、上記したように手先部１６を移動させている間に、ワーク９６の加工済領域の表面形状データや、力覚センサ９０が検出する力及びモーメントのデータＤ３（力又はモーメントのいずれかのデータでもよい）を、所定の時間間隔で取得し、かつ記憶装置２４に格納して、下記の手法によりワーク９６の加工状態の良否を判定し、かつ判定結果を記憶装置２４に格納する。ここで、ワーク９６の加工済領域の表面形状データだけを用いる場合には、ピストン固定部７６（図１１）により流体圧シリンダ装置２２のピストンを固定することなく、ロボット１４の制御軸動作位置のデータＤ１及び流体圧シリンダ装置２２のピストン変位量のデータＤ２から工具座標系原点の位置を算出して、加工済領域の表面形状データを求めることもできる。
【０２３８】
ここでは具体例として、下記（１）及び（２）のいずれかに示す判定手法を実施できるものとする。
（１）所定の時間間隔での工具座標系原点（又は制御基準点）の位置の変動が、滑らかであるか否かを判定する。例えば、ワーク９６の加工済領域の表面形状データから得られる工具座標系原点（又は制御基準点）の位置の変動量が、予め定めた閾値を超えているか否かを判断し、閾値を超えている場合には、当該時間間隔の領域の加工状態が良くないと判定する。
【０２３９】
（２）所定の時間間隔での加工工具９２とワーク９６との間の作用力の変動が、滑らかであるか否かを判定する。例えば、力覚センサ９０の検出データに基づいて算出した加工工具９２とワーク９６との間の作用力の値の変動量が、予め定めた閾値を超えているか否かを判断し、閾値を超えている場合には、当該時間間隔の領域の加工状態が良くないと判定する。また、力覚センサ９０の検出データに基づいて算出した加工工具９２とワーク９６との間の作用力の値が、予め定めた閾値を超えている領域が有るか否かを判断し、そのような領域が有る場合には、当該領域の加工状態が良くないと判定する。
【０２４０】
上記（１）及び（２）の判定手法は、例えば、加工工具９２やワーク９６の属性、目的とする加工品質の程度、ロボット１４の動作自由度等の諸条件に応じて、（１）及び（２）の判定手法のうちでいずれか１つ以上の判定手法を実施するよう、予め設定しておくことができる。また、上記した各閾値は、システム構築の際に行う実験やオペレータの経験に基づき、予め設定できるものである。
【０２４１】
このように、図２７に示す制御フローによれば、加工作業の完了後に、加工工具９２をワーク９６の加工済領域に所定の力で接触させながら手先部１６を移動させて、加工済領域の表面形状データ又は力覚センサ９０の検出データを取得することで、ワーク９６の加工済領域の加工状態を良否判定するようにしたから、一連の加工動作制御フローにおけるルーチンワークとして自動的に、或いはオペレータの要求に従って随時に、迅速かつ容易にワーク９６の加工状態の良否を判断することができる。なお、加工状態が良くないと判定された領域については、記憶装置２４に格納したデータに基づいて、当該領域のみ、又は加工済領域全体を、再度加工するようにすればよい。
【０２４２】
上記した加工状態の良否判定フローは、加工作業の実行中にリアルタイムで行うこともできる。この場合、力覚センサ９０の検出データから算出される加工工具９２とワーク９６との間の作用力のデータを用いて、加工状態の良否を判定し、判定結果を記憶装置２４に格納することができる（前述した加工状態判定部５２（図５）の機能）。なお、判定に用いる作用力のデータは、加工工具９２とワーク９６との間に作用する作用力を的確に把握するのに有利な進行方向Ｔ１の作用力成分のデータとすることが好ましい。
【０２４３】
判定手法の具体例として、作用力が予め定めた閾値より小さい場合には、ワーク９６と加工工具９２との接触状態が不十分で削り残しが存在する可能性があり、加工状態が良くないと判定することができる。また、作用力が予め定めた閾値より大きい場合には、過大なバリ等に起因して適正な加工を実行できていない可能性があり、加工状態が良くないと判定することができる。なお、加工状態が良くないと判定された領域については、記憶装置２４に格納したデータに基づいて、当該領域のみ、又は加工済領域全体を、再度加工するようにすればよい。
【符号の説明】
【０２４４】
１０、１０２    加工ロボットシステム
１２    第１対象物
１４    ロボット
１６    手先部
１８    第２対象物
２０    支持部
２２    流体圧シリンダ装置
２４    記憶装置
２６    検出装置
２８、２８Ａ〜２８Ｊ    制御装置
３０    作用力算出部
３２    第１のパラメータ調整部
３４    影響力算出部
３６    第２のパラメータ調整部
３８    操作指令部
４０    検出影響算出部
４２    データ補正部
４４    接触位置算出部
４６    第３のパラメータ調整部
４８    可動工具
５０    第４のパラメータ調整部
５２、８０    加工状態判定部
５４    影響モーメント算出部
５６    第５のパラメータ調整部
５８    変位検出センサ
６０    第６のパラメータ調整部
６２    軸位置検出部
６４、６８、７２    押付方向決定部
６６    第７のパラメータ調整部
７０    目標軌道生成部
７４    シリンダ動作指令部
７６    ピストン固定部
７８    ロボット動作指令部
９０    力覚センサ
９２    加工工具
９６    ワーク
１００    システム制御装置
１０８    パラメータ調整部
【図１】
2011041992.tif 000006
【図２】
2011041992.tif 000007
【図３】
2011041992.tif 000008
【図４】
2011041992.tif 000009
【図５】
2011041992.tif 000010
【図６】
2011041992.tif 000011
【図７】
2011041992.tif 000012
【図８】
2011041992.tif 000013
【図９】
2011041992.tif 000014
【図１０】
2011041992.tif 000015
【図１１】
2011041992.tif 000016
【図１２】
2011041992.tif 000017
【図１３】
2011041992.tif 000018
【図１４】
2011041992.tif 000019
【図１５】
2011041992.tif 000020
【図１６】
2011041992.tif 000021
【図１７】
2011041992.tif 000022
【図１８】
2011041992.tif 000023
【図１９】
2011041992.tif 000024
【図２０】
2011041992.tif 000025
【図２１】
2011041992.tif 000026
【図２２】
2011041992.tif 000027
【図２３】
2011041992.tif 000028
【図２４】
2011041992.tif 000029
【図２５】
2011041992.tif 000030
【図２６】
2011041992.tif 000031
【図２７】
2011041992.tif 000032