JP3670700B2 - ロボット機構制御方法 - Google Patents
ロボット機構制御方法 Download PDFInfo
- Publication number
- JP3670700B2 JP3670700B2 JP03660495A JP3660495A JP3670700B2 JP 3670700 B2 JP3670700 B2 JP 3670700B2 JP 03660495 A JP03660495 A JP 03660495A JP 3660495 A JP3660495 A JP 3660495A JP 3670700 B2 JP3670700 B2 JP 3670700B2
- Authority
- JP
- Japan
- Prior art keywords
- grinding
- robot mechanism
- tool
- robot
- work
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J11/00—Manipulators not otherwise provided for
- B25J11/005—Manipulators for mechanical processing tasks
- B25J11/0065—Polishing or grinding
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Control Of Position Or Direction (AREA)
- Automatic Control Of Machine Tools (AREA)
- Constituent Portions Of Griding Lathes, Driving, Sensing And Control (AREA)
- Numerical Control (AREA)
- Machine Tool Copy Controls (AREA)
- Manipulator (AREA)
Description
【産業上の利用分野】
本発明は、羽根車等の3次元自由曲面を有する作業対象物に対して研削、研磨等の倣い作業を産業用ロボット機構を中心にして実現するロボット機構制御方法及びその装置(システム)に関するものである。
【0002】
【従来の技術】
ロボットによって倣い作業を行うロボット機構制御装置の従来技術としては、「グラインダ作業ロボット」日本ロボット学会誌 Vol.9, No.6, pp.790−793、 1991(従来技術1)、”Model Based Control for a Deburring Robot”Proceedings of the 1992 IEEE/RSJ International Conference on Intelligent Robots and Systems July 7-10 1992 pp.2055-2059(従来技術2)、特開平03−239463号公報(従来技術3)及び特開平01−321158号公報(従来技術4)が知られている。
【0003】
即ち、従来技術1には、位置と力のハイブリッド制御をソフトウエアで行う6軸円筒座標型ロボットと、立体視覚操作装置を組み合わせたグラインダ作業用ロボットが記載されている。
従来技術2には、ロボットによってバリ取り作業を行わせるコンプライアンス制御について記載されている。
従来技術3には、研削対象物の表面の凹凸の状態を計測し、この計測された凹凸の状態に基づいて研削対象となる表面の被研削形状を認識し、この認識された被研削形状に基づいて被研削形状の種類と関連づけて予め設定された加工パターンの中から対応する加工パターンを選択し、この選択された加工パターンに基づいて研削対象物の対応する部分をロボットによって研削する技術が記載されている。
従来技術4には、狭隘部を含む被研削面を予め計測して仕上げ面形状と比較することにより研削量を推定し、仕上げ面形状に対して計画された研削経路を修正して研削するロボットの制御技術が記載されている。
【0004】
【発明が解決しようとする課題】
上記何れの従来技術においても、狭隘部を有する3次元自由曲面形状の作業対象物に対して、狭隘部も含めてロボット機構の手先部に取り付けた工具により支障なく作業できるように予め作業計画を立てておこうとする課題について考慮されていなかった。また何れの従来技術においても、狭隘部を有する3次元自由曲面形状の作業対象物に対して、ロボット機構の手先部に取り付けた工具により支障なく、円滑に、且つ高精度に倣い等の作業をさせようとする課題についても考慮されていなかった。
【0005】
本発明の目的は、上記課題を解決するために、狭隘部を有する3次元自由曲面形状の作業対象物に対してロボット機構の手先部も含め該手先部に取り付けた工具の動作経路等の作業計画を予め立てて、前記工具により作業対象物に対して所望の作業範囲で干渉等支障が発生することなく倣い等の作業ができるようにしたロボット機構制御方法及びその装置を提供することにある。
また本発明の他の目的は、3次元自由曲面形状の作業対象物に対してロボット機構の手先部に取り付けた工具により倣い作業をする場合、力検出手段の能力に応じて倣い動作ができる工具の適切な送り速度を算出して前記作業対象物に対して前記工具が非常に能率よく倣い作業ができるようにしたロボット機構制御方法及びその装置を提供することにある。
また本発明の他の目的は、3次元自由曲面形状の作業対象物とロボット機構の手先部との間における相対的位置・姿勢ずれを補正し、設計データに基づく数値モデルと実際の作業対象物との間において大きく位置誤差や形状誤差が存在してもロボット機構の手先部に取り付けた工具により前記作業対象物に対して高精度の倣い等の作業ができるようにしたロボット機構制御方法及びその装置を提供することにある。
【0006】
また本発明の他の目的は、3次元自由曲面形状の作業対象物に対してロボット機構の手先部に取り付けた工具により作業をしていて何らかの要因で途中で作業を停止させなければならなくなっても、ロボット機構の手先部を支障が生じることなく円滑に、且つ短時間で初期位置に退避でき、また再開する場合においてもロボット機構の手先部を支障が生じることなく円滑に、且つ短時間で、作業対象物へ復帰できるようにしたロボット機構制御方法及びその装置を提供することにある。
また本発明の他の目的は、3次元自由曲面形状の作業対象物における面の方向が大きく変わる狭隘部に対して、ロボット機構の手先部に取り付けた工具により作業する場合においても、前記手先部が干渉することなく、倣い作業ができるようにしたロボット機構制御方法及びその装置を提供することにある。
また本発明の他の目的は、3次元自由曲面形状の作業対象物に対してロボット機構の手先部に取り付けた研削工具または研磨工具により倣い加工作業する場合において、前記工具による加工面の焼き付きを防止して加工精度を向上するようにしたロボット機構制御方法及びその装置を提供することにある。
【0007】
また本発明の他の目的は、3次元自由曲面形状の作業対象物に対してロボット機構の手先部に取り付けた研削工具または研磨工具により倣い加工作業する場合において、研削傷または研磨傷を残さないようにして加工精度を向上するようにしたロボット機構制御方法を提供することにある。
【0008】
【課題を解決するための手段】
上記目的を達成するために、本発明は、入力された3次元自由曲面形状を有する作業対象物の設計データに基づいて作業対象物の3次元モデルを作成して記憶手段に記憶し、該記憶手段に記憶された作業対象物の3次元モデルに基づいて、ロボット機構の手先部に取り付けられた工具が前記作業対象物に対して作業するロボット機構の少なくとも動作経路を算出するロボット機構の動作経路算出工程又はその手段と、該ロボット機構の動作経路算出工程又はその手段で算出されたロボット機構の動作経路に基づいてロボット機構の駆動部を駆動制御しながら、手先部に取り付けられた力検出手段から検出される力信号を用いてコンプライアンス制御により前記工具が3次元自由曲面形状を有する作業対象物に対して作業するようにロボット機構を駆動制御するロボット機構駆動制御工程又はその手段とを備えたことを特徴とするロボット機構制御方法及びその装置である。
【0009】
また本発明は、入力された3次元自由曲面形状を有する作業対象物の設計データに基づいて作業対象物の3次元モデルを作成して記憶手段に記憶し、該記憶手段に記憶された作業対象物の3次元モデルに対して格子点列(近似した要素面)で分割した格子点列データを作成し、該作成された格子点列データに基づいてロボット機構の手先部に取り付けられた工具が前記作業対象物に対して作業するロボット機構の少なくとも動作経路を算出するロボット機構の動作経路算出工程又はその手段と、該ロボット機構の動作経路算出工程又はその手段で算出されたロボット機構の動作経路に基づいてロボット機構の駆動部を駆動制御しながら、手先部に取り付けられた力検出手段から検出される力信号を用いてコンプライアンス制御により前記工具が3次元自由曲面形状を有する作業対象物に対して作業するようにロボット機構を駆動制御するロボット機構駆動制御工程又はその手段とを備えたことを特徴とするロボット機構制御方法及びその装置である。
【0010】
また本発明は、入力された3次元自由曲面形状を有する作業対象物の設計データに基づいて作業対象物の3次元モデルを作成し、該作成された作業対象物の3次元モデルに対して格子点列で分割した格子点列データを作成し、前記作業対象物に対して、ロボット機構の手先部に取付けられる工具による作業の相対的位置・姿勢関係情報を設定し、入力された前記工具の形状を示す情報に基づいて該工具に対して近似的に設定される立体情報と前記作成された格子点列データとの間において前記設定された相対的位置・姿勢関係を付与して、前記格子点列データ上において前記工具の立体情報を逐次移動させて該立体情報の領域内に前記格子点列が含まれないことにより前記作業対象物に対する工具の非干渉領域を算出し、該算出された工具の非干渉領域において、前記格子点列データに基づいて工具が作業対象物に対して作業するロボット機構の少なくとも動作経路を算出するロボット機構の動作経路算出工程と、該ロボット機構の動作経路算出工程で算出されたロボット機構の動作経路に基づいてロボット機構の駆動部を駆動制御して前記工具が作業対象物に対して作業を施すロボット機構駆動制御工程とを備えたことを特徴とするロボット機構制御方法である。
【0011】
また本発明は、入力された3次元自由曲面形状を有する作業対象物の設計データに基づいて作業対象物の3次元モデルを作成し、該作成された作業対象物の3次元モデルに対して格子点列(近似した要素面)で分割した格子点列データを作成し、前記作業対象物に対して、ロボット機構の手先部に取り付けられる工具による作業の相対的位置・姿勢関係情報を設定し、入力された前記工具の形状を示す情報に基づいて該工具に対して近似的に設定される立体情報と前記作成された格子点列データとの間において前記設定された相対的位置・姿勢関係を付与して、前記格子点列データ上において前記工具の立体情報を逐次移動させて前記3次元自由曲面形状を有する作業対象物に対する前記工具の非干渉領域を算出し、前記作業対象物に対して、前記工具をロボット機構の手先部に取り付けた状態におけるロボット機構の相対的位置・姿勢関係情報を該ロボット機構が稼働できるように設定し、前記算出された工具の非干渉領域において、入力された前記ロボット機構の手先部の形状を示す情報に基づいて該手先部に対して設定される近似的に立体情報と前記作成された格子点列データとの間において前記設定されたロボット機構の少なくとも手先部の相対的位置・姿勢関係を付与して、前記格子点列データ上において前記手先部の立体情報を逐次移動させて3次元自由曲面形状を有する作業対象物に対してロボットの手先部が干渉しないことを確認して工具が作業対象物に対して作業するロボット機構の少なくとも動作経路を算出するロボット機構の動作経路算出工程と、該ロボット機構の動作経路算出工程で算出されたロボット機構の動作経路に基づいてロボット機構の駆動部を駆動制御して前記工具が前記作業対象物に対して作業を施すロボット機構駆動制御工程とを備えたことを特徴とするロボット機構制御方法である。
【0012】
また本発明は、入力された3次元自由曲面形状を有する作業対象物の設計データに基づいて作業対象物の3次元モデルを作成し、該作成された作業対象物の3次元モデルに対して格子点列(近似した要素面)で分割した格子点列データを作成し、入力されたロボット機構の手先部に取り付けられる工具の形状を示す情報に基づいて該工具に対して近似的に設定された立体情報を、前記作成された格子点列データ上において該格子点列データに対する工具による作業の相対的位置・姿勢関係を付与して逐次移動させて前記作業対象物に対する前記工具の非干渉領域を算出し、該算出された工具の非干渉領域において、入力された前記ロボット機構の少なくとも手先部の形状を示す情報に基づいて該手先部の形状に対して設定される近似的に立体情報を、前記作成された格子点列データ上において、工具を手先部に取り付けた状態においてロボット機構が稼働するように設定されたロボット機構の少なくとも手先部の相対的位置・姿勢関係を付与して、逐次移動させて3次元自由曲面形状を有する作業対象物に対するロボットの手先部が干渉しないことを確認して工具が作業対象物に対して作業するロボット機構の少なくとも動作経路を算出するロボット機構の動作経路算出工程と、該ロボット機構の動作経路算出工程で算出されたロボット機構の動作経路に基づいてロボット機構の駆動部を駆動制御して前記工具が前記作業対象物に対して作業するようにロボット機構を駆動制御するロボット機構駆動制御工程とを備えたことを特徴とするロボット機構制御方法である。
【0013】
また本発明は、入力された3次元自由曲面形状を有する作業対象物の設計データに基づいて作業対象物の3次元モデルを作成して記憶手段に記憶し、該記憶手段で記憶された作業対象物の3次元モデルに基づいて、ロボット機構の手先部に取り付けられる工具と前記ロボット機構の少なくとも手先部との干渉チェックを別々に行って、前記記憶手段で記憶された作業対象物の3次元モデルに基づいて、前記工具が前記作業対象物に対して作業するロボット機構の少なくとも動作経路を算出するロボット機構の動作経路算出工程又はその手段と、該ロボット機構の動作経路算出工程又はその手段で算出されたロボット機構の動作経路に基づいてロボット機構を駆動制御しながら、手先部に取り付けられた力検出手段から検出される力信号を用いてコンプライアンス制御により前記工具が作業対象物に対して作業するようにロボット機構を駆動制御するロボット機構駆動制御工程又はその手段とを備えたことを特徴とするロボット機構制御方法及びその装置である。
【0014】
また本発明は、3次元自由曲面形状を有する作業対象物の設計データ、ロボット機構の手先部の形状を示す情報及び該ロボット機構の手先部に取り付けられる工具の形状を示す情報を入力する入力手段と、前記作業対象物に対してロボット機構の手先部に取り付けられる工具による作業の相対的位置・姿勢関係情報を設定し、前記作業対象物に対して前記工具をロボット機構の手先部に取り付けた状態におけるロボット機構の相対的位置・姿勢関係情報を該ロボット機構が稼働できるように設定する設定手段と、前記入力手段で入力された3次元自由曲面形状を有する作業対象物の設計データに基づいて作業対象物の3次元モデルを作成し、該作成された作業対象物の3次元モデルに対して格子点列(近似した要素面)で分割した格子点列データを作成し、前記入力手段で入力された前記工具の形状を示す情報に基づいて該工具に対して近似的に設定される立体情報と前記作成された格子点列データとの間において前記設定手段で設定された相対的位置・姿勢関係を付与して、前記格子点列データ上において前記工具の立体情報を逐次移動させて前記3次元自由曲面形状を有する作業対象物に対する前記工具の非干渉領域を算出し、前記算出された工具の非干渉領域において、前記入力手段で入力された前記ロボットの手先部の形状を示す情報に基づいて該手先部に対して設定される近似的に立体情報と前記作成された格子点列データとの間において前記設定手段で設定されたロボット機構の少なくとも手先部の相対的位置・姿勢関係を付与して、前記格子点列データ上において前記手先部の立体情報を逐次移動させて3次元自由曲面形状を有する作業対象物に対してロボットの手先部が干渉しないことを確認して工具が作業対象物に対して作業するロボット機構の少なくとも動作経路を算出する計算手段とを備えたロボット機構の動作経路算出装置を設け、該ロボット機構の動作経路算出装置の計算手段で算出されたロボット機構の動作経路に基づいてロボット機構を駆動制御して前記工具が前記作業対象物に対して作業を施すロボット機構駆動制御装置を設けたことを特徴とするロボット機構制御装置である。
【0015】
また本発明は、3次元自由曲面形状を有する作業対象物の設計データ、ロボット機構の手先部の形状を示す情報及び該ロボット機構の手先部に取り付けられる工具の形状を示す情報を入力する入力手段と、該入力手段で入力された3次元自由曲面形状を有する作業対象物の設計データに基づいて作業対象物の3次元モデルを作成して記憶手段に記憶し、該記憶手段に記憶された作業対象物の3次元モデルに対して格子点列(近似した要素面)で分割した格子点列データを作成し、前記入力手段で入力されたロボット機構の手先部に取り付けられる工具の形状を示す情報に基づいて該工具に対して近似的に設定された立体情報を、前記作成された格子点列データにおいて該格子点列データに対する工具による作業の相対的位置・姿勢関係を付与して逐次移動させて前記3次元自由曲面形状を有する作業対象物に対する前記工具の非干渉領域を算出し、該算出された工具の非干渉領域において、前記入力手段で入力された前記ロボットの手先部の形状を示す情報に基づいて該手先部の形状に対して設定される近似的に立体情報を、前記作成された格子点列データにおいて該格子点列データに対して工具を手先部に取り付けた状態においてロボット機構が稼働するように設定されたロボット機構の少なくとも手先部の相対的位置・姿勢関係を付与して逐次移動させて3次元自由曲面形状を有する作業対象物に対するロボットの手先部が干渉しないことを確認して工具が作業対象物に対して作業するロボット機構の少なくとも動作経路を算出する計算手段とを備えたロボット機構の動作経路算出装置を設け、該ロボット機構の動作経路算出装置の計算手段で算出されたロボット機構の動作経路に基づいてロボット機構を駆動制御して前記工具が前記作業対象物に対して作業を施すロボット機構駆動制御装置を設けたことを特徴とするロボット機構制御装置である。
【0016】
また本発明は、ロボット機構の手先部に取り付けられた力検出手段に印加できる許容力fs または許容モーメントms を入力し、前記力検出手段の先に取り付けられた工具を作業対象物に対して押し付る押付力fR とロボット機構の駆動部を駆動制御することによって前記工具を含めた手先部に対してコンプライアンス制御を行わせる運動モデル(工具を含めた手先部の仮想質量〔M〕、ロボット機構の仮想粘性係数〔C〕、力検出手段における基準点を原点として工具が作業対象物に対して接触する接触点までの距離ベクトルrR、力検出手段における基準点を原点として工具を含めた手先部の重心までの距離ベクトルrG )とを設定し、3次元自由曲面形状を有する作業対象物の設計データに基づいて作業対象物の3次元モデルを作成して記憶手段に記憶し、、得られる前記接触点における作業対象物の曲率半径sに応じて前記設定された押付力fR 及び運動モデルに従って算出される力検出手段に印加される力またはモーメントが前記入力された許容力fs または許容モーメントms 以下になるように作業対象物に対する接線方向の工具の送り速度vを算出する工具の送り速度算出工程と、該工具の送り速度算出工程で算出された工具の送り速度vに基づいて前記力検出手段から検出される工具の作業対象物に対する押付力に応じて前記運動モデルに従ってロボット機構の駆動部を駆動制御して工具を含めた手先部を作業対象物に対してコンプライアンス制御による動作させるロボット機構動作制御工程又はその装置とを備えたことを特徴とするロボット機構制御方法である。
【0017】
また本発明は、ロボット機構の手先部に取り付けられた力検出手段に印加できる許容力fs または許容モーメントms と3次元自由曲面形状を有する作業対象物の設計データとを入力する入力手段と、前記力検出手段の先に取り付けられた工具を作業対象物に対して押し付る押付力fR とロボット機構の駆動部を駆動制御することによって前記工具を含めた手先部に対してコンプライアンス制御を行わせる運動モデル(工具を含めた手先部の仮想質量〔M〕、ロボット機構の仮想粘性係数〔C〕、力検出手段における基準点を原点として工具が作業対象物に対して接触する接触点までの距離ベクトルrR、力検出手段における基準点を原点として工具を含めた手先部の重心までの距離ベクトルrG )とを設定する設定手段と、前記入力手段で入力された3次元自由曲面形状を有する作業対象物の設計データに基づいて作業対象物の3次元モデルを作成して記憶手段に記憶し、、得られる前記接触点における作業対象物の曲率半径sに応じて前記設定手段で設定された押付力fR 及び運動モデルに従って算出される力検出手段に印加される力またはモーメントが前記入力手段で入力された許容力fs または許容モーメントms 以下になるように作業対象物に対する接線方向の工具の送り速度vを算出する計算手段とを備えた工具の送り速度算出装置を設け、該工具の送り速度算出装置における計算手段で算出された工具の送り速度vに基づいて前記力検出手段から検出される工具の作業対象物に対する押付力に応じて前記運動モデルに従ってロボット機構の駆動部を駆動制御して工具を含めた手先部に対してコンプライアンス制御させて工具を作業対象物に対して動作させるロボット機構動作制御装置を設けたことを特徴とするロボット機構制御装置である。
【0018】
また本発明は、3次元自由曲面形状を有する作業対象物をロボット機構に対して粗位置決めし、ロボット機構の動作経路の所望の点において、前記粗位置決めされた作業対象物上の基準となる点におけるロボット機構からの距離を測定し、該測定された距離の基準値とのずれ量を算出して該ずれ量に基づいてロボット機構(ロボット機構に対して設定された座標系)に対する作業対象物の相対的位置・姿勢のずれ量を(例えば上記ロボット機構に対して設定された座標系に対して)補正し、前記ロボット機構の動作経路の所望の複数の点の各々において、前記補正されたロボット機構に対する作業対象物上の所望の複数の点の各々におけるロボット機構からの距離を測定し、該測定された距離の基準値とのずれ量を算出して該ずれ量に基づいて前記工具の動作経路を補正し、該補正された工具の動作経路に基づいてロボット機構の駆動部を駆動制御してロボット機構の手先部に取付けられた力検出手段から検出される工具の作業対象物に対する押付力をフィードバックして運動モデルに従ってロボット機構の駆動部を駆動制御して工具を含めた手先部に対してコンプライアンス制御させて工具を作業対象物に対して動作させることを特徴とするロボット機構制御方法である。
【0019】
また本発明は、3次元自由曲面形状を有する作業対象物をロボット機構に対して粗位置決めする粗位置決め手段と、ロボット機構の動作経路の所望の点において、前記粗位置決めされた作業対象物上の基準となる点におけるロボット機構からの距離を測定し、該測定された距離の基準値とのずれ量を算出して該ずれ量に基づいてロボット機構(ロボット機構に対して設定された座標系)に対する作業対象物の相対的位置・姿勢のずれ量を(例えば上記ロボット機構に対して設定された座標系に対して)補正する作業対象物の相対的位置・姿勢補正手段と、前記ロボット機構の動作経路の所望の複数の点の各々において、前記補正されたロボット機構に対する作業対象物上の所望の複数の点の各々におけるロボット機構からの距離を測定し、該測定された距離の基準値とのずれ量を算出して該ずれ量に基づいて前記工具の動作経路を補正する工具の動作経路補正手段と、該工具の動作経路補正手段によって補正された工具の動作経路に基づいてロボット機構の駆動部を駆動制御してロボット機構の手先部に取付けられた力検出手段から検出される工具の作業対象物に対する押付力をフィードバックして運動モデルに従ってロボット機構の駆動部を駆動制御して工具を含めた手先部に対してコンプライアンス制御させて工具を作業対象物に対して動作させるロボット機構駆動制御手段とを備えたことを特徴とするロボット機構制御装置である。
【0020】
また本発明は、入力された3次元自由曲面形状を有する作業対象物の設計データに基づいて作業対象物の3次元モデルを作成して記憶手段に記憶し、該記憶手段に記憶された作業対象物の3次元モデルに対して格子点列(近似した要素面)で分割した格子点列データを作成し、該作成された格子点列データに基づいてロボット機構の手先部に取付けられた工具が前記作業対象物に対して作業するロボット機構の少なくとも動作経路を算出し、更に該算出された動作経路の内、選択された動作の経路点若しくは教示点を用いて前記工具を前記作業対象物と初期位置との間で退避又は復帰させるロボット機構の退避軌道又は復帰軌道を算出するロボット機構の経路算出工程と、該ロボット機構の経路算出工程で算出されたロボット機構の動作経路に基づいてロボット機構の駆動部を駆動制御して、手先部に取付けられた力検出手段から検出される力信号を用いてコンプライアンス制御により前記工具が3次元自由曲面形状を有する作業対象物に対して作業を施し、該作業の途中において前記ロボット機構の経路算出工程で算出されたロボット機構の退避軌道又は復帰軌道に基づいてロボット機構の駆動部を駆動制御して前記ロボット機構の動作経路と初期位置との間において前記工具を退避又は復帰させるロボット機構駆動制御工程とを備えたことを特徴とするロボット機構制御方法である。
【0021】
また本発明は、入力された3次元自由曲面形状を有する作業対象物の設計データに基づいて作業対象物の3次元モデルを作成して記憶手段に記憶し、該記憶手段に記憶された作業対象物の3次元モデルに対して格子点列(近似した要素面)で分割した格子点列データを作成し、該作成された格子点列データに基づいてロボット機構の手先部に取付けられた工具が前記作業対象物に対して作業するロボット機構の少なくとも動作経路と前記工具を前記作業対象物と初期位置との間で退避又は復帰させるロボット機構の退避軌道又は復帰軌道とを算出するロボット機構の経路算出工程と、該ロボット機構の経路算出工程で算出されたロボット機構の動作経路に基づいてロボット機構の駆動部を駆動制御して、手先部に取付けられた力検出手段から検出される力信号を用いてコンプライアンス制御により前記工具が3次元自由曲面形状を有する作業対象物に対して作業を施し、該作業の途中において前記ロボット機構の経路算出工程で算出されたロボット機構の退避軌道又は復帰軌道に基づいてロボット機構の駆動部を駆動制御して前記ロボット機構の動作経路と初期位置との間において前記工具を退避又は復帰させるロボット機構駆動制御工程とを備えたことを特徴とするロボット機構制御方法である。
【0022】
また本発明は、入力された3次元自由曲面形状を有する作業対象物の設計データに基づいて作業対象物の3次元モデルを作成して記憶手段に記憶し、該記憶手段に記憶された作業対象物の3次元モデルに対して格子点列(近似した要素面)で分割した格子点列データを作成し、該作成された格子点列データに基づいてロボット機構の手先部に取付けられた工具が前記作業対象物に対して作業するロボット機構の少なくとも動作経路を算出し、更に該算出された動作経路の内、選択された動作の経路点若しくは教示点を用いて前記工具を前記作業対象物と初期位置との間で退避又は復帰させるロボット機構の退避軌道又は復帰軌道を算出するロボット機構の経路算出手段と、該ロボット機構の経路算出手段で算出されたロボット機構の動作経路に基づいてロボット機構の駆動部を駆動制御して、手先部に取付けられた力検出手段から検出される力信号を用いてコンプライアンス制御により前記工具が3次元自由曲面形状を有する作業対象物に対して作業を施し、該作業の途中において前記ロボット機構の経路算出手段で算出されたロボット機構の退避軌道又は復帰軌道に基づいてロボット機構の駆動部を駆動制御して前記ロボット機構の動作経路と初期位置との間において前記工具を退避又は復帰させるロボット機構駆動制御手段とを備えたことを特徴とするロボット機構制御装置である。
【0023】
また本発明は、入力された3次元自由曲面形状を有する作業対象物の設計データに基づいて作業対象物の3次元モデルを作成して記憶手段に記憶し、該記憶手段に記憶された作業対象物の3次元モデルに対して格子点列(近似した要素面)で分割した格子点列データを作成し、該作成された格子点列データに基づいてロボット機構の手先部に取付けられた工具が前記作業対象物に対して作業するロボット機構の少なくとも動作経路と前記工具を前記作業対象物と初期位置との間で退避又は復帰させるロボット機構の退避軌道又は復帰軌道とを算出するロボット機構の経路算出手段と、該ロボット機構の経路算出手段で算出されたロボット機構の動作経路に基づいてロボット機構の駆動部を駆動制御して、手先部に取付けられた力検出手段から検出される力信号を用いてコンプライアンス制御により前記工具が3次元自由曲面形状を有する作業対象物に対して作業を施し、該作業の途中において前記ロボット機構の経路算出手段で算出されたロボット機構の退避軌道又は復帰軌道に基づいてロボット機構の駆動部を駆動制御して前記ロボット機構の動作経路と初期位置との間において前記工具を退避又は復帰させるロボット機構駆動制御手段とを備えたことを特徴とするロボット機構制御装置である。
【0024】
また本発明は、3次元自由曲面形状を有する作業対象物の設計データ及びロボット機構の手先部に取付けられる工具の形状を示す情報を入力する入力手段と、前記作業対象物に対してロボット機構の手先部に取付けられる工具による作業の相対的位置・姿勢関係情報を設定する設定手段と、前記入力手段で入力された3次元自由曲面形状を有する作業対象物の設計データに基づいて作業対象物の3次元モデルを作成して記憶手段に記憶させ、該記憶手段に記憶された作業対象物の3次元モデルに対して格子点列で分割した格子点列データを作成し、前記入力手段で入力された前記工具の形状を示す情報に基づいて該工具に対して近似的に設定される立体情報と前記作成された格子点列データとの間において前記設定手段で設定された相対的位置・姿勢関係を付与して、前記格子点列データ上において前記工具の立体情報を逐次移動させて該立体情報の領域内に前記格子点列が含まれないことにより前記作業対象物に対する前記工具の非干渉領域を算出し、該算出された工具の非干渉領域において、前記格子点列データに基づいて工具が作業対象物に対して作業するロボット機構の少なくとも動作経路を算出する計算手段とを備えたロボット機構の動作経路算出装置を設け、該ロボット機構の動作経路算出装置の計算手段で算出されたロボット機構の動作経路に基づいてロボット機構を駆動制御して前記工具が作業対象物に対して作業を施すロボット機構駆動制御装置を設けたことを特徴とするロボット機構制御装置である。
【0025】
また本発明は、入力された3次元自由曲面形状を有する作業対象物の設計データに基づいて作業対象物の3次元モデルを作成して記憶手段に記憶し、該記憶手段に記憶された作業対象物の3次元モデルに対して格子点列(近似した要素面)で分割した格子点列データを作成し、入力されたロボット機構の手先部に取付けられた工具が前記作業対象物に対して接触して作業する作業条件と前記作成された格子点列データとに基づいて、ロボット機構の手先部の少なくとも動作経路を算出するロボット機構の動作経路算出工程と、該ロボット機構の動作経路算出工程で算出されたロボット機構の手先部の動作経路に基づいてロボット機構の駆動部を駆動制御しながら、手先部に取付けられた力検出手段から検出される力信号を用いてコンプライアンス制御により前記工具が3次元自由曲面形状を有する作業対象物に対して作業するようにロボット機構を駆動制御するロボット機構駆動制御工程とを備えたことを特徴とするロボット機構制御方法である。また本発明は、前記ロボット機構制御方法における前記ロボット機構の動作経路算出工程において、前記作業条件として、前記工具が前記作業対象物の所望の点において接触する前記所望の点における接平面または法線に対する角度で示す接触角を含むことを特徴とする。また本発明は、前記ロボット機構制御方法における前記ロボット機構の動作経路算出工程において、前記作業条件として、前記工具が前記作業対象物の所望の点において接触する前記所望の点における接平面または法線に対する角度で示す接触角と前記前記所望の点における法線方向の工具の押付力とを含むことを特徴とする。また本発明は、前記ロボット機構制御方法における前記ロボット機構の動作経路算出工程において、前記作業条件として、前記工具が前記作業対象物の所望の点において接触する前記所望の点における接平面または法線に対する角度で示す接触角と前記所望の点における法線方向の工具の押付力と前記所望の点において作用する工具の押付力の前記接平面または法線に対する角度で示す方向とを含むことを特徴とする。
【0026】
また本発明は、入力された3次元自由曲面形状を有する作業対象物における狭隘部または角部の設計データに基づいて狭隘部または角部の3次元モデルを作成して記憶手段に記憶し、該記憶手段に記憶された狭隘部または角部の3次元モデルに対して格子点列(近似した要素面)で分割した格子点列データを作成し、ロボット機構の手先部に取付けられた工具が前記作業対象物の狭隘部または角部に対して接触して作業する作業条件の内前記狭隘部または角部の所望の点において作用する工具の押付力の方向を前記所望の点における接平面に対して摩擦の条件を満足する範囲内に設定し、前記作成された格子点列データと前記設定された工具の押付力の方向とに基づいて、ロボット機構の手先部の位置・姿勢を補正して非干渉にして前記工具が前記作業対象物の狭隘部または角部に対して作業するロボット機構の少なくとも動作経路を算出するロボット機構の動作経路算出工程と、該ロボット機構の動作経路算出工程で算出されたロボット機構の手先部の動作経路に基づいてロボット機構の駆動部を駆動制御しながら、手先部に取付けられた力検出手段から検出される力信号を用いてコンプライアンス制御により前記工具が3次元自由曲面形状を有する作業対象物の狭隘部または角部に対して作業するようにロボット機構を駆動制御するロボット機構駆動制御工程とを備えたことを特徴とするロボット機構制御方法である。
【0027】
また本発明は、3次元自由曲面形状を有する作業対象物の設計データとロボット機構の手先部に取付けられた工具が前記作業対象物に対して接触して作業する作業条件とを入力する入力手段を有し、該入力手段で入力された前記作業対象物の設計データに基づいて作業対象物の3次元モデルを作成して記憶手段に記憶させ、該記憶手段に記憶した作業対象物の3次元モデルに対して格子点列(近似した要素面)で分割した格子点列データを作成し、該作成された格子点列データと前記入力手段で入力された前記作業条件とに基づいてロボット機構の手先部の少なくとも動作経路を算出するロボット機構の動作経路算出手段と、該ロボット機構の動作経路算出手段で算出されたロボット機構の手先部の動作経路に基づいてロボット機構の駆動部を駆動制御しながら、手先部に取付けられた力検出手段から検出される力信号を用いてコンプライアンス制御により前記工具が3次元自由曲面形状を有する作業対象物に対して作業するようにロボット機構を駆動制御するロボット機構駆動制御手段とを備えたことを特徴とするロボット機構制御装置である。
【0028】
また本発明は、3次元自由曲面形状を有する作業対象物における狭隘部または角部の設計データを入力し、ロボット機構の手先部に取付けられた工具が前記作業対象物の狭隘部または角部に対して接触して作業する作業条件の内前記狭隘部または角部の所望の点において作用する工具の押付力の方向を前記所望の点における接平面に対して摩擦の条件を満足する範囲内に設定する入力手段を有し、該入力手段で入力された狭隘部または角部の設計データに基づいて狭隘部または角部の3次元モデルを作成して記憶手段に記憶させ、該記憶手段に記憶された狭隘部または角部の3次元モデルに対して格子点列(近似した要素面)で分割した格子点列データを作成し、該作成された格子点列データと前記入力手段で設定された工具の押付力の方向とに基づいて、ロボット機構の手先部の位置・姿勢を補正して非干渉にして前記工具が前記作業対象物の狭隘部または角部に対して作業するロボット機構の少なくとも動作経路を算出するロボット機構の動作経路算出手段と、該ロボット機構の動作経路算出手段で算出されたロボット機構の手先部の動作経路に基づいてロボット機構の駆動部を駆動制御しながら、手先部に取付けられた力検出手段から検出される力信号を用いてコンプライアンス制御により前記工具が3次元自由曲面形状を有する作業対象物の狭隘部または角部に対して作業するようにロボット機構を駆動制御するロボット機構駆動制御手段とを備えたことを特徴とするロボット機構制御装置である。
また本発明は、入力された3次元自由曲面形状の加工対象物の設計データに基づいて加工対象物の3次元モデルを作成して記憶手段に記憶させ、該記憶手段に記憶された加工対象物の3次元モデルに基づいて、ロボット機構の手先部に取付けられた研削工具若しくは研磨工具が前記加工対象物に対して研削加工若しくは研磨加工を施すロボット機構の少なくとも動作経路を算出するロボット機構の動作経路算出工程又はその手段と、該ロボット機構の動作経路算出工程又はその手段で算出されたロボット機構の動作経路に基づいてロボット機構の駆動部を駆動制御して、手先部に取付けた力検出手段から検出される押付力と研削工具若しくは研磨工具を含めて手先部に対して設定された運動モデルとに基づいてロボット機構の駆動部をコンプライアンス制御して前記研削工具若しくは研磨工具により前記加工対象物に対して研削加工若しくは研磨加工するロボット機構駆動制御工程又はその手段とを有することを特徴とするロボット機構制御方法及びその装置である。
【0029】
また本発明は、入力された3次元自由曲面形状の加工対象物の設計データに基づいて加工対象物の3次元モデルを作成して記憶手段に記憶させ、該記憶手段に記憶された加工対象物の3次元モデルに基づいて、ロボット機構の手先部に取付けられた研削工具若しくは研磨工具が前記加工対象物に対して研削加工若しくは研磨加工を施すロボット機構の少なくとも動作経路を算出するロボット機構の動作経路算出工程又はその手段と、該ロボット機構の動作経路算出工程又はその手段で算出されたロボット機構の動作経路に基づいてロボット機構の駆動部を駆動制御して、手先部に取付けた力検出手段から検出される押付力と研削工具若しくは研磨工具を含めて手先部に対して設定された運動モデルとに基づいてロボット機構の駆動部をコンプライアンス制御して前記研削工具若しくは研磨工具により前記加工対象物に対して研削加工若しくは研磨加工する際発生する温度を温度測定手段で測定し、該測定された温度に基づいて前記ロボット機構の駆動部に対するコンプライアンス制御の制御変数または前記加工対象物に対する研削工具若しくは研磨工具の加工速度を制御して研削工具若しくは研磨工具による加工対象物への焼き付きを防止するロボット機構駆動制御工程又はその手段とを有することを特徴とするロボット機構制御方法及びその装置である。
また本発明は、研削部材若しくは研磨部材を回転駆動するように構成した研削工具若しくは研磨工具を手先部に取付けたロボット機構の駆動部を、ロボット機構の動作経路に基づいて駆動制御して、前記研削部材若しくは研磨部材における加工対象物の被加工面との接触部の回転接線方向を前記研削工具若しくは研磨工具の前記動作経路に沿った送り方向に対して傾斜させた状態で前記加工対象物の被加工面に対して回転駆動される研削部材若しくは研磨部材を接触させてロボット機構の手先部に取付けた力検出手段から検出される押付力と前記研削工具若しくは研磨工具を含めて手先部に対して設定された運動モデルとに基づいてロボット機構の駆動部をコンプライアンス制御して前記回転駆動される研削部材若しくは研磨部材により前記加工対象物の被加工面を研削加工若しくは研磨加工することを特徴とするロボット機構制御方法である。
【0030】
また本発明は、外力を検出する手段と速度または位置を検出する手段とを備え3次元自由曲面形状の作業対象物に倣って作業する多自由度ロボットの制御方法であって、前記外力を検出する手段の検出能力から前記ロボットの動作速度を設定して前記ロボットを動作させることを特徴とするロボットの制御方法である。
【0031】
また本発明は、外力を検出する手段と速度または位置を検出する手段とを備え3次元自由曲面形状の作業対象物に倣って作業する多自由度ロボットの制御方法にであって、前記ロボットの動作経路のみならず、前記倣い作業に必要な押しつけ力、TCP(Tool Center Point )データ、前記倣い作業をコンプライアンス制御方法で実現する場合は、コンプライアンス制御変数など、前記ロボットの制御変数の一部または全てを前記ロボットの制御装置の外部に個別にまたは組み合わせて記憶して、前記ロボットの外部からの指令や前記ロボットの内部状態からの判断または前記ロボットの外部にあるセンサからの判断または前記ロボットの内部にあるセンサからの判断によってロボットの制御装置にオンラインで自動に転送することを特徴とする。
【0032】
また本発明は、外力を検出する手段と速度または位置を検出する手段を備える多自由度ロボットが、3次元自由曲面形状の作業対象物に対して倣って作業するか周期的に接触して作業する場合の前記ロボットの動作経路生成方法であって、前記作業対象物の加工面上までの前記切削または研削する手段に取り付けたツールの加工深さと加工幅が、前記作業対象物が平面であるときの加工深さと加工幅と同等になるように、前記作業対象物に対する前記切削または研削する手段に取り付けた前記ツールの接触角を決めることを特徴とする。
また本発明は、外力を検出する手段と速度または位置を検出する手段を備える多自由度ロボットが、3次元自由曲面形状の作業対象物に対して倣って作業するか周期的に接触して作業する場合のロボットの動作経路生成方法であって、直方体に前記作業対象物の表面上の点列が含まれるかどうかを調べることで作業対象物の表面上と物体(作業工具やロボットの手先部)の干渉の有無を判断して衝突のない経路を作成することを特徴とする。
また本発明は、外力を検出する手段と速度または位置を検出する手段を備える多自由度ロボットが、3次元自由曲面形状の作業対象物に対して倣って作業するか周期的に接触して作業する場合のロボットの動作経路生成方法であって、円柱に前記作業対象物の表面上の任意の点が含まれるかどうかを調べることで作業対象物の表面上と物体(作業工具やロボットの手先部)の干渉の有無を判断して衝突のない経路を作成することを特徴とする。
【0033】
また本発明は、外力を検出する手段と速度または位置を検出する手段を備える多自由度ロボットが、3次元自由曲面形状の作業対象物に対して倣って作業するか周期的に接触して作業する場合のロボットの動作経路生成方法であって、前記ロボットの手先部に取り付けられる作業工具や前記ロボットの手先部を直方体または円柱あるいはそれぞれの組み合せに近似して、前記作業対象物の表面上の点列または前記作業対象物の表面上の任意の点が含まれるかどうかを調べることで、前記作業工具や前記ロボットの手先部と前記作業対象物の表面上の干渉の有無を判断して衝突のない経路を作成することを特徴とする。また本発明は、前記ロボットの動作経路生成方法であって、前記作業工具や前記ロボットの手先部を直方体または円柱あるいはそれぞれの組み合わせに近似したものを一定の寸法で大きくしていくことを特徴とする。また本発明は、前記ロボットの動作経路生成方法であって、前記作業対象物の表面上に、粗い間隔で点列を設定する場合に、最終の細かい間隔の点列をそれに一番近く、それより小さな2の指数乗に設定し、粗い間隔の点列を前記2の指数乗の半分に設定または更にそれの半分またはそれの繰り返しの値に設定して、前記点列の個々と作業工具やロボットの手先部との干渉の有無を判断し、前記粗い間隔の点列において干渉する領域と干渉しない領域の境界部分だけを改めて細かい点列を設定して干渉の有無を判断して衝突のない経路を作成することを特徴とする。
【0034】
また本発明は、3次元自由曲面形状の作業対象物に対して倣って作業するか周期的に接触して作業するロボットの動作経路生成方法であって、前記作業対象物の表面上に、まず粗い間隔で点列を設定し、前記点列の個々と前記ロボットの手先効果器や前記ロボットとの干渉の有無を判断し、前記粗い間隔の点列において干渉する領域と干渉しない領域の境界部分だけ改めて細かい点列を設定して干渉の有無を判断して衝突のない経路を作成することを特徴とする。
また本発明は、3次元自由曲面形状の作業対象物に対して倣って作業するか周期的に接触して作業するロボットの動作経路生成方法であって、前記ロボットの位置や姿勢に関係なく作業工具と前記作業対象物の表面上だけの干渉を調べ、干渉のない前記作業対象物の表面上の点列についてだけ前記ロボットの手先部との干渉の有無を判断して衝突のない経路を作成することを特徴とする。
また本発明は、3次元自由曲面形状の作業対象物に対して倣って作業するか周期的に接触して作業するロボットの動作経路生成方法であって、前記3次元自由曲面形状の外形線上の点列の間隔を曲面上の点列の間隔よりも狭くして前記ロボットの手先効果器との干渉を調べ、干渉のない前記作業対象物の表面上の点列についてだけ前記ロボットとの干渉の有無を判断して衝突のない経路を作成することを特徴とする。
また本発明は、3次元自由曲面形状の作業対象物に対して倣って作業するか周期的に接触して作業するロボットの動作経路生成方法において、作業経路途中に存在する周辺装置との干渉を周辺装置を点列で表し、前記点列の個々と作業工具やロボットの手先部との干渉の有無を判断して衝突のない経路を作成することを特徴とする。
また本発明は、3次元自由曲面形状の作業対象物を研削するロボットの動作経路生成方法であって、研削する砥石の回転軸と前記砥石の接触点を含む平面と異なる平面にロボットの基準軸(偏差角β)を設定することを特徴とする。
また本発明は、周辺装置を含め冗長自由度を持つロボットシステムであって、ロボットの手先部と3次元自由曲面形状の作業対象物との干渉が少なく、前記ロボットの稼働範囲内に前記作業対象物の表面上の点列を多く含むものから前記ロボットと前記作業対象物の表面上との干渉の有無を判断し、干渉しないで最も多く作業できる値を前記冗長自由度の値として使用することを特徴とする。
【0035】
【作用】
前記構成により、3次元自由曲面形状の作業対象物に対してロボット機構に力制御機能(コンプライアンス制御機能)をもたせてロボット機構の手先部に取付けられた作業工具により倣い作業または周期的に接触して作業する場合における作業計画(特に動作経路及び接触角、その他コンプライアンス制御変数(押付力、倣い速度、運動モデル))を、作業工具及びロボット機構の手先部が作業対象物と干渉することなく、容易に、効率良く作成することができ、その結果前記作業対象物に対してロボット機構に対して最適なコンプライアンス制御を行って作業工具による高精度の加工等の作業を実現することができる。
また前記構成により、3次元自由曲面形状の作業対象物に対してロボット機構に力制御機能(コンプライアンス制御機能)をもたせてロボット機構の手先部に取付けられた作業工具により倣い作業または周期的に接触して作業する場合における作業計画の内、最適倣い速度vを、力検出手段に印加できる許容力fs または許容モーメントms や作業対象物の曲率などを用いて設定できるようにして、工具の作業対象物に対する効率の良い倣い作業を実現することができる。
また前記構成により3次元自由曲面形状の作業対象物に対してロボット機構に力制御機能(コンプライアンス制御機能)をもたせてロボット機構の手先部に取付けられた作業工具により倣い作業または周期的に接触して作業する場合において、前記作業対象物とロボット機構との間において高精度の相対的位置決めを実現し、更に作業対象物に位置誤差や形状誤差がある場合においても工具を作業対象物に適切な状態で倣わせて加工等の作業を実現することができる。
また前記構成により、3次元自由曲面形状の作業対象物に対してロボット機構に力制御機能(コンプライアンス制御機能)をもたせてロボット機構の手先部に取付けられた作業工具により倣い作業または周期的に接触して作業する場合において、任意の時点において作業を中断し、任意の時点において作業を再開することができ、しかも非常停止状態からの復帰動作(ロボット機構の手先部を自動で退避して初期状態に戻す機能が不可欠である。)を自動で行うことができる。
【0036】
また前記構成により、3次元自由曲面形状の作業対象物の狭隘部または角部に対してロボット機構に力制御機能(コンプライアンス制御機能)をもたせてロボット機構の手先部に取付けられた作業工具により倣い作業または周期的に接触して作業する場合において、ロボット機構の姿勢変化を小さく抑えて作業計画をたてることにより、作業工具が作業対象物に干渉することなく、より広範囲に亘って円滑な作業を実現することができる。
また前記構成により、3次元自由曲面形状の加工対象物に対してロボット機構に力制御機能(コンプライアンス制御機能)をもたせてロボット機構の手先部に取付けられた研削又は研磨工具により倣い研削又は研磨加工する場合において、研削又は研磨工具の加工対象物へに焼き付きを防止して高精度の加工を実現することができる。
また前記構成により、3次元自由曲面形状の加工対象物に対してロボット機構に力制御機能(コンプライアンス制御機能)をもたせてロボット機構の手先部に取付けられた研削又は研磨工具により倣い研削又は研磨加工する場合において、研削傷または研磨傷、即ち砥石目の跡を残さないようにして高精度の研削または研磨加工を実現することができる。
【0037】
【実施例】
以下、本発明の実施例を図1から図22を参照して説明する。
図1は、本発明を実施する装置の構成例である。本図は、鋳造された羽根車を、研削等の加工作業を行う3次元自由曲面形状を有する作業対象物1の例としている。研削等の作業を行う作業対象物1は、ポンプの羽根車やタービンブレード、船舶用スクリュなどがある。この他、研削等の加工作業を行う3次元自由曲面形状を有する作業対象物には、形状として、管状部品、線状部品、棒状部品、板状部品などがあり、材質または製造方法として、鋳造品、引き抜き加工品、圧延加工品、焼結加工品などがある。コンプライアンス制御を実現するため、手首部分(手首の座標系をα,β,γとする。)に例えば6自由度の力(fα,fβ,fγ)とトルク(mα,mβ,mγ)を検出する力センサ2を設置した例えば6自由度多関節型ロボット機構3を用いる。ロボット機構3の各関節には、各関節を回転駆動するモータ等の駆動手段3aと、各関節の回転角及び回転角速度を検出するセンサ3bが設置されている。ロボット機構3の手先部(手先効果器)4には、測定用の触針5や研削等の作業を行うツール(作業工具:グラインダ)6等を交換着脱できるツール交換装置用電磁弁14を内蔵したツール交換装置4aが設置されている。測定用の触針5や研削等の作業を行うツール(作業工具:グラインダ)6等を交換できるようにする。ツール(作業工具)6は、回転駆動されるオフセット砥石39が備えられている。ロボット機構3の各関節に設けられた駆動手段は、ロボットコントローラ7により制御され、ツール6に任意の機械コンプライアンスを与えて研削を行う。コンプライアンス制御については、具体的には特開昭60−108285号公報に記載されている。研削等の加工対象物(羽根車)1を載置するポジショナ(位置決め装置)8は、エンコーダを備えたモータ等の駆動手段8aによる傾斜ε方向の回転駆動によって研削等の加工対象物1の姿勢を変化させて位置決めすることができ、更にエンコーダを備えたモータ等の駆動手段8bによる回転φ方向の回転駆動によって研削等の加工対象物1の回転位置を変化させて位置決めすることができように構成されている。このポジショナ8によって研削等の加工対象物1の回転φ方向の回転位置及び傾斜ε方向の姿勢を様々とることができるため、ロボット機構3は加工対象物1に対して研削等の加工作業領域の拡大を図ることができる。更にロボット機構3は、走行レール9aに沿って走行できる走行駆動手段(エンコーダも備えている。)9bを備えた走行ユニット(走査軸)9上に取り付けられ、走行軸方向に走行可能に構成している。13は、ツール交換装置用台座である。
【0038】
シーケンサ10は、研削作業の手順の管理と現場作業者との通信を行う。コンピュータ11は、ロボット機構3の動作プログラムの生成とロボット機構3の動作の監視を行う。コンピュータ11には、「図8に示すように、力センサ2の許容力fs と許容モーメントms 、ツール6の研削等の加工対象物1への押しつけ力fR とモーメントmR 、研削等の加工速度v、力センサ2の計測基準点Os を原点としたTCP(Tool Center Point)の位置ベクトルと重心の位置ベクトル、仮想係数、(但し、これらの内、自動的にコントローラ7から取得できる場合は入力する必要がないことは明らかである。)」等を入力するミーボードやマウスなどの入力手段41が設置されている。ホストコンピュータ33は、ロボット機構3の動作経路の計画とポジショナ8や走査軸(走行ユニット)9の位置決め計画とを行う。そのために、ホストコンピュータ33には、「図21、図23及び図26に示すように、多数の種類のワーク(研削等の加工対象物)1の各々の設計データ261、ロボット機構3、ポジショナ8及び走行ユニット9の設計データ(幾何学的情報)並びに各種研削に用いられる各種ツール6の各々設計データ264(211)」、「図11(a)(b)に示すように、各種ツールにおいて各種ワークの材質に応じた平坦な面に試験的に(実験により)研削等の加工をして図14に示すデータをとり、研削等の加工深さΔtや面の仕上がり精度に基づいて決定される例えば最適な砥石接触角(ワーク接触角)αopと最適な研削等の加工幅Kop、及びロボット機構8とワーク1との間の相対的位置関係のデータ212」、「ワーク1上において研削等の加工しない領域のデータ217」、「ポジショナ8に載置するワークの代表となる種類(羽根車の設計変数)の指定251(図25に示す。)」等を入力するマウスやキーボードやディスク等の入力手段40を備えている。
【0039】
図2は、制御系のブロックダイアグラムである。制御装置は、シーケンサ10とコンピュータ11とロボットコントローラ7を中心に構成される。シーケンサ10は、作業手順の管理、作業者とのインターフェースのための操作盤12、ポジショナ8・走行ユニット9・ツール(グラインダ)6・ツール交換装置用台座13の制御を行う。コンピュータ11は、作業内容の管理、ロボット3の動作プログラムの生成、力センサ2によるロボットの押しつけ力の管理を行う。ロボットコントローラ7は、ロボット機構3の各関節の駆動座標系とロボット機構3全体の座標系との間の速度も含めた座標変換プログラム、コンプライアンス制御プログラム等のロボット機構3の動作制御プログラムが格納されて、該格納されたロボット機構3の動作制御プログラムに基づいたロボット機構3の動作制御と、ツール交換装置用電磁弁14の制御とを行う。
研削等の加工作業の計画を行うホストコンピュータ33は、ネットワーク31を介してコンピュータ11に接続されている。ネットワーク31は、例えばイーサネットケーブルによる通信や無線による通信や電話回線による通信や光ファイバによる通信などがある。各装置間には、指令を伝える通信回線16が敷設される。通信回線16は、例えばイーサネットケーブルによる通信や光ファイバによる通信やフラットケーブルによるパラレル通信や複数の入出力部をもつメモリICによる通信がある。更に力センサ2の計測値をコンピュータ11で常に監視するために、A/D変換器15が設置される。
特にコンピュータ11とロボットコントローラ7の間の通信回線16は、ロボットの動作プログラムなど大きなサイズのデータを高速に転送する必要があるために、コンピュータ11のデータバスとロボットコントローラ7のデータバスを直接接続する。直接に接続する方法としては、例えば、図24に示すように、2つの入出力部を持つメモリICによる方法などがある。
【0040】
ホストコンピュータ33とコンピュータ11は、例えばホストコンピュータ33は事務所に設置し、コンピュータ11は生産現場に設置するなどして作業効率を上げる構成とする。しかしコンピュータ11の能力が十分であれば、ホストコンピュータ33とデータベース32の機能をコンピュータ11が有して、ホストコンピュータ33とデータベース32とネットワーク31を廃止しても良い。
【0041】
次にホストコンピュータ33による研削等の加工対象物1に対するロボット機構3による動作経路等を作成する作業計画について説明する。まずホストコンピュータ33がロボット機構3による動作経路等の作業計画を作成する前に、予め入力手段40を用いて、図21、図23及び図26に示すように、多数の種類のワーク(研削等の対象物)1の各々の設計データ261、ロボット機構3、ポジショナ8及び走行ユニット9の設計データ(幾何学的情報)並びに各種研削等の加工に用いられる各種ツール6の各々設計データ264(211)」、「図11(a)(b)に示すように、各種ツールにおいて各種ワークの材質に応じた平坦な面に試験的に(実験により)研削等の加工をして図14に示すデータをとり、研削等の加工深さ(以降研削深さと称す。)Δtや面の仕上がり精度に基づいて決定される例えば最適な砥石接触角(ワーク接触角)αopと最適な研削等の加工幅(以後研削幅と称す。)Kop、及びロボット機構8とワーク1との間の相対的位置関係のデータ212」、「ワーク1上において研削等の加工しない領域のデータ217」等を入力して、図2及び図29に示すハードディスク32に格納または記憶しておくことが必要である。
【0042】
そして、図21、図23及び図26に示すように、図29に示すCPU301は、メモリ302に記憶されたプログラムに基づいて、前記ハードディスク32に格納された多数の種類のワーク(研削等の加工対象物)1の各々の設計データ261(211)から、種類毎に、図9に示すようなワーク(研削等の加工対象物:羽根車)1の3次元モデル262(212)を作成し、ハードディスク32に記憶させる。またCPU301は、メモリ302に記憶されたプログラムに基づいて、前記ハードディスク32に格納されたロボット機構3、ポジショナ8及び走行ユニット9の設計データ(幾何学的情報)並びに各種研削等の加工に用いられる各種ツール6の各々設計データ264(211)から、図16に示すようなロボット機構3、ポジショナ8及び走行ユニット9(ポジショナ8及び走行ユニット9は必ずしも3次元モデルを作成する必要はない。即ち、ポジショナ8及び走行ユニット9の設計データ(幾何学的情報)をそのまま利用することもできる。)並びに各種ツール6の3次元モデル265(213)を作成し、ハードディスク32に記憶させる。
【0043】
次に、作業者は、まずホストコンピュータ33において研削等の加工の作業計画を行うために、各種ワーク(研削等の加工対象物)1から代表する種類(羽根車の設計変数)の指定251(図25に示す。)を入力手段40で行うことにより、CPU301は、予めデータベース32に保存してある本研削等の加工システムの3次元数値モデル(ロボット機構8とワーク1との間の相対的位置関係のデータ212も含む)262、265(213)と例えば最適な砥石接触角(ワーク接触角)αopと最適な研削幅Kop267とを呼び出し、ロボット機構3の動作経路等を自動で短時間で計画する。計画された動作経路データは、データベース32に保存される。保存される動作経路データは、非干渉で、研削する領域におけるロボット機構の座標系で表現された教示点(格子点)の位置や姿勢からなる教示点列データ、TCP(Tool Center Point)の位置や姿勢からなるTCP列データ、加工対象物の種類及びツールの種類の情報などがある。
【0044】
次にCPU301によるロボット機構3の動作経路等の生成計画について説明する。ところで、狭隘な部分を含む複雑な3次元自由曲面形状を有する作業対象物の一つとして例えば図1に示すような羽根車1がある。羽根車1には羽根が複数枚ついており、鋳物で一体製作されている。この羽根面1を倣い研削等の加工をする場合を例にしてロボット機構3の動作経路等を生成することについて説明する。
まず、CPU301が行う羽根面上に定義する点の設定方法について説明する。羽根車1の回転軸を含む平面で複数切断してできる羽根の断面上で、羽根面を表す曲線を、例えば、等間隔に分割する点列を定義する。羽根の断面は、例えば図3の羽根断面の一部19が対応し、羽根面を表す曲線は、例えば図3の羽根表面18が対応する。そして、各断面同志同じ順番の分割点を結んでできる曲線を定義する。特にこの分割点を結んでできる曲線をこれより流線と呼ぶことにする。このようにして、羽根断面上の羽根を表す曲線と流線を羽根全体に亘って定義すると、図9に示すように、羽根を格子状に表すことができる。
格子点は、研削等の加工作業(以降研削作業と称す。)におけるロボット機構3の動作経路に用いる教示点に利用する。図10に示すように、ある格子点P0に対して、周囲の4点P1,P2,P3,P4の位置情報から格子点P0における羽根の法線成分NをCPU301で近似計算できるので、ロボット機構3の研削等の加工方向(以降研削方向と称す。)Vを流線方向に定義し、ツール(グラインダ)6の姿勢をこの研削方向Vと羽根の法線成分Nとから定義すれば、格子点P0における教示点を算出することができる。
【0045】
即ち、羽根車の場合、複数枚の羽根の表面、裏面及びハブ面を研削等の加工をする必要がある。この表面、裏面及びハブ面を研削加工をするために、CPU301は、図9に示すように、データベース32に保存されている研削対象物1の3次元モデル262に対して、例えば、外形線にほぼ平行に面を等分割して(研削等の加工方向に格子点間隔を設定263して)、研削等の加工経路を設定する。そしてプログラムによって研削加工部位(表面、裏面、ハブ面のいずれか)の指定268が行われる。ロボット機構3の経路は3次元自由曲線を点列で近似するのが一般的である。そこで、それぞれの研削加工経路を曲線に沿って等分割する。すると図9に示すメッシュ状の格子の交点からなる格子点列データが得られ、メモリ302に記憶される。以降この点列を格子点列データと呼ぶ。
ところで羽根は複雑な3次元曲面形状をなし、更に図1に示すように隣接する羽根同志の隙間は狭いため、図9に示す膨大な数の格子点をロボット機構の教示点として、図1や図2に示すロボット機構3に付属した教示ペンダント30を使用して人手で教示することは困難である。そこで前記したようにホストコンピュータ33において、羽根車の設計データをもとに羽根の表面、裏面及びハブ面上に格子点列データを作成し、メモリ302に記憶する。しかし、この格子点列データをそのままロボット機構3の教示点として研削加工をすると、羽根車1の狭隘部などを研削加工をするときに、ロボット機構3の研削加工ツールであるグラインダ6が羽根車1に衝突したり、ロボット機構3の手先部やアームが羽根車1に衝突する問題がある。このように作業対象物とロボット機構やツールが衝突する状態を干渉と呼ぶ。よって、ロボット機構3で羽根車1を研削加工をするには、必要があればツール6も選択してこの干渉が発生しない状態を作りだし、それでもなお干渉が発生する場合は干渉しない羽根の領域を最大限研削加工をする必要がある。そこで、図9に示す膨大な数の格子点列の中から干渉しない領域をホストコンピュータ33で短時間に求める必要がある。
【0046】
膨大な数の格子点列の中から干渉しない領域を求めるには、2つの課題がある。1つは、ロボット機構3やツール6が羽根車(研削等の加工対象物)1と干渉する状態をどのように定義するかである。3次元形状の羽根車1と3次元形状のロボット機構3やツール6が、互いに接触したり、重なり合う状態を数式で表さなければならない。もう1つは、膨大な数の格子点列から、如何に短時間に干渉しない領域を求めるかである。実際の羽根車1に教示する格子点は数千点にたっするため、ロボット機構3が研削等の加工ができる干渉しない羽根の最大領域を、図1に示すポジショナ8や走行ユニット9の最適な状態を探して求めなければならない。
【0047】
次にホストコンピュータ33において、ツール6やロボット機構3と羽根車(研削加工対象物)1が干渉しない、研削加工用の動作経路の作成手順を図21〜図23、図26〜図28を参照して説明する。
まず、上記のように、ポジショナ8や走行ユニット9の最適な状態を探すために、メモリ302に記憶されたプログラムの中に、ポジショナと走行ユニットの値の組合せ(必要に応じて砥石軸の値も設定する。)の設定269が行われている。即ち、ロボット機構3の羽根車1に対する姿勢は、様々な状態をとることができるため、最適な状態を探す必要がある。何故なら、図1に示す研削システムにおいては、回転φと傾斜εが可能なポジショナ8と走行ユニット9とツール6に取り付けられた砥石39の回転軸の合計4軸が冗長な自由度をとるために、ある研削点に対して4自由度の位置及び姿勢を決めることが必要となる。そこで、この4軸の値を適当な間隔で刻み、4軸全ての組合せにおいてCPU301は、図28に示す291において非干渉領域における研削可能領域が最も大きい(ロボット機構3の手先部の動作範囲が最も大きいことを示す。)ところのポジショナと走行ユニットとがとる位置及び姿勢の値の組み合わせを選出することになる。そこでポジショナと走行ユニットの値の組合せの設定269として、例えば、ポジショナ8の2軸は、回転φと傾斜εとのそれぞれについて回転基準から角度60度毎6通り、走行ユニット9の走行軸は基準位置から0.5m毎5通り、砥石回転軸は、回転基準から45度毎の8通りとして刻む。この組み合わせは、6*6*5*8で1440の組み合わせとなり、図26及び図28に示すポジショナと走行軸の組み合わせ終了290のno2901が上記組み合わせが繰り返されることになる。その結果、CPU301は、291において、非干渉領域における研削可能領域が最も大きいポジショナと走行ユニットとがとる位置及び姿勢の値の組み合わせが選出されることになる。そして選出された組み合わせが、ネットワーク31を介してコンピュータ11に送信されることになる。
【0048】
次に、図26に示す270において、CPU301は、研削方向の格子点間隔の設定263に基づいて、生成された羽根車の3次元モデルの指定された研削部位(表面、裏面、ハブ面)に対して格子点列データ2701を図9に示すように生成し、メモリ302に格納する。必要に応じて、研削部位毎に生成された格子点列データ2701をディスプレイI/F304を介してディスプレイ305上に表示をすることができる。図9における格子点の間隔は、目的の研削量に対するツール(グラインダ)6の砥石39の形状(264において入力された研削ツールの設計データ(モデル用データ)または265において生成された研削ツールの3次元モデルからCPU301は知ることができる。)と被研削面に対する砥石39の接触の状態(例えば267で入力される平面研削時の最適な研削幅K)と被研削面の曲面の状態(262で生成される羽根車の3次元モデルからCPU301が算出する曲率中心と曲率半径s)とによってCPU301は決定する。
以下CPU301が270において格子点列データ2701を生成する前に、CPU301が行う格子点の間隔の決定方法について詳しく説明する。まず、羽根面上の格子点に対して、図20に示すように研削方向と交わる方向の並び具合を、研削ピッチCpと呼ぶことにする。263にて行う研削方向の格子点の間隔は、被研削面の曲面の凹凸、即ち262で生成される羽根車の3次元モデルからCPU301が算出する曲率中心と曲率半径Sとの具合によって決定される。羽根の縁など、被研削面の曲面の状態が急激に変化している部分は、多くの格子点を与えて大きな曲面の変化に対応できるように多くの格子点を与える。一方、平坦な面など、被研削面の曲面の状態がそれほど変化していない部分は、少ない格子点でも対応することができる。一方、研削ピッチCpは、被研削面を1回で研削するときの最適な研削幅Kop(267において入力される。)の大きさによって決定する。最適な研削幅Kopは、図11に示す最適な砥石の接触角αopによって決定される。ツール(グラインダ)6の被研削面への押しつけ力が一定で、接触角αが大きくなると、図12に示すように研削幅Kが小さくなり、研削深さΔtが大きくなる関係にある。これらの関係の中で、要求される被研削面の仕上げ度合いを最も満たす条件を選ぶことにより最適な研削幅Kopが求められる。
【0049】
次にCPU301が行うワーク(研削加工対象物:羽根車)1と研削ツール6との非干渉領域の算出214について説明する。
まず、CPU301は、メモリ302に記憶された格子点列データ2701から、図27に示す271において、各格子点Pの座標データを読み出して、各格子点Pの座標において262において生成された羽根車の3次元モデルから算出される曲率中心及び曲率半径sと指定する研削方向から法線ベクトルNと研削方向ベクトルVとを算出し、メモリ302に記憶する。
次にCPU301は、図27に示す273において、各格子点Pにおける研削ツールの接触角αop’を算出し、274において、各格子点Pにおける研削ツールの姿勢を算出する。この3次元自由曲面上の各格子点Pにおける研削ツールの接触角αop’の算出273と各格子点Pにおける研削ツールの姿勢の算出について具体的に説明する。即ち、各格子点Pにおける研削ツールの接触角αop’が算出されると、272において算出された各格子点Pにおける法線ベクトルNと研削ベクトルVとから研削ツールの姿勢を算出することができる。
【0050】
ツール接触角とは、図11に示すように、ツール(グラインダ)6におけるオフセット砥石39と研削加工面の成す角度のことである。曲面を研削加工するには、その曲面を研削加工するのに適した研削速度Vや押し付け力fR、オフセット砥石39の接触角αop’がある。そこで、まず3次元自由曲面を削るための砥石の最適な接触角αop’を得る方法について説明する。図11に示すように、予め、試験的に実験により、各種ツール(グラインダ)において、各種材質の平面を有する被加工物に対して研削速度および押しつけ力を変えながら付与し、接触角αを変えて研削加工して、加工精度(仕上がり精度)から最適な研削速度Vopと、最適な押し付け力fRop と、最適な接触角αopを決める。なお、最適な研削速度Vopや押し付け力fRop を決めた状態で、接触角αを変えると図12に示すように研削幅Kと研削深さΔtとの関係が得られる。即ち、被加工物の加工面が平面の場合、接触角αを大きくすると、研削深さΔtが大きくなって加工精度(仕上がり精度)が悪くなると共に研削幅Kも小さくなり、接触角αを小さくすると研削深さが小さくなって加工精度が向上すると共に研削幅Kは大きくなる関係を有している。従って、要求される加工精度(仕上がり精度)から、最適な接触角αopが決定され、この最適な接触角αopから最適な研削幅Kopも求まる。そこで、このように決定された最適な砥石接触角(ワーク接触角)αopと最適な研削幅Kop267とが前記した通り、入力手段40によりハードディスク32に格納されることになる。なお、加工精度も含めて図12に示すようなデータを予め入力手段40を用いてハードディスク32にデータテーブルとして格納しておき、ワークの種類および加工対象物の材質等を入力手段40で指定すると、CPU301が最適な砥石接触角(ワーク接触角)αopと最適な研削幅Kop267とを求めることができる。
【0051】
このようにして、ハードディスク32には、加工対象物が平面で形成された場合において、ワークの種類および加工対象物の材質に対応した最適な砥石接触角(ワーク接触角)αopと最適な研削幅Kop267(必要に応じて最適研削深さΔtopも含む)とが格納されていることになる。しかし、図13に示すように、加工対象物が羽根車のように3次元自由曲面の場合には、ハードディスク32に格納された最適な砥石接触角αopをそのまま使用することはできない。即ち、ある曲面(262で生成される羽根車の3次元モデルからCPU301が算出する曲率半径s)においては、平面を研削するときとほぼ同じ関係(例えば最適な研削幅及び/又は最適な研削深さ)となるようにワークの接触角を求めて変える必要がある。具体的には、曲面が砥石39に対して凸のときには、研削幅Kが小さくなるので接触各α’を最適な接触角αopより小さくし、凹のときには、研削幅Kが大きくなるので接触角α’を最適な接触角αopより大きくする必要がある。ここで、曲面の凹凸は、例えば図14に示すように、砥石39の被研削面との接触点(格子点P)に対して一定の開き角ψにある砥石の円周上の点を高さの測定点として定め、この測定点から被研削面に鉛直方向(法線方向)に直線を降ろしてその降ろした足の長さHによってCPU301は知ることができる。つまり、接触角が一定であれば、図14(b)を拡大して図15に示すように、平面における測定点からの足の長さH0よりも凸図における測定点からの足の長さH1のほうが大きい。そこで測定点からの足の長さH1をH0とほぼ等しくなるように接触角αop’を算出すれば、平面を研削するのとほぼ同じ最適な研削幅Kopを得ることができる。即ち、このようにCPU301は、262で生成される羽根車の3次元モデルから算出される各格子点Pにおける曲率半径sと267において入力される平面研削時の最適な接触角αopから、各格子点Pにおける接触角αop’を算出することができる。
【0052】
次に前記実施例においては、274において、研削ツールの姿勢として、図6(b)に示すように法線ベクトルN方向を向かして、最適な接触角αopを取るように算出することについて説明したが、研削加工対象物1において、図6(b)(c)に示す狭隘部又は角部を研削するとき、押しつけ力38が被研削面の法線方向に発生させるように面の法線方向に対して軸付き砥石グラインダ34などの研削ツールが一定の姿勢(接触角αop’)になるように算出したのでは、研削ツール34の姿勢が被研削面の法線方向と一致して90度程度大きく変化することになり、ロボット機構を構成する部材の内手先部近傍が上記研削加工対象物1に干渉する危険性が増加して、上記狭隘部又は角部において、後述する図21に示す216(具体的には図22に示す226)で算出される非干渉の格子点からなる非干渉領域を得ることができなくなってくる。
【0053】
ところで、実際研削するとき、図6(a)に示すように研削ツール34が被研削面に押しつけ力38を加えることになる。しかし、押しつけ力38の方向を、法線方向に正確でなくても、研削面の仕上げ精度においては殆ど変化がないことが確認された。そこで、研削ツール34の接触点において、摩擦円錐(研削ツールと被研削面との間において接触点で押しつけ力によって所望以上の値の摩擦が生じる法線を中心とした角度範囲)37を定義する。この定義された摩擦円錐37のデータを入力手段40により入力してハードディスク32に記憶させる。そこで、CPU301は、研削加工対象物1の3次元モデルにより、狭隘部又は角部と判定したとき、その狭隘部又は角において設定された格子点Pに対して、研削ツールの姿勢を法線方向に対して上記定義された摩擦円錐の範囲内で図6(c)に示すように変化させるように算出する。これにより、CPU301は、研削加工対象物1の狭隘部又は角部において、後述する図21に示す216(具体的には図22に示す226)で算出されるロボット機構による非干渉の格子点からなる非干渉領域を作り、又は拡大することができ、その結果、ロボット機構を構成する部材の内手先部近傍を研削加工対象物1の狭隘部又は角部に対して干渉しない動作経路データを算出することができる。その結果、実際の研削等の加工作業においても、研削加工対象物1の狭隘部又は角部に対して研削等の加工作業を実行することができる。
【0054】
また前記実施例においては、274において、研削ツール34の姿勢として、研削ツールの軸心を、図5(b)に示すように研削等の加工方向ベクトルV方向に対して90度を向かして(偏差角β=0°にして)、最適な接触角αop’を取るように算出することについて説明したが、CPU301が、研削ツール34が軸付き砥石グラインダのような場合、研削ツール34の姿勢として、βが所望の傾斜角になるように算出すれば、実際の研削等の加工作業を研削加工対象物1に対して実行する際、仕上げ精度を著しく向上することができる。即ち、軸付き砥石グラインダ34は、グラインダの長手方向に砥石の回転軸があり、グラインダの先に円筒型の軸付き砥石が設置されているので、狭隘部など比較的細かい部分を研削する場合に適した研削ツールである。このような研削ツール34を用いて偏差角βがほぼ0度にして被研削面を研削加工した場合、図5(a)に示すように、研削加工方向V43に砥石目の跡が線状に残り、仕上げ精度を低下させることになる。しかし、274において、研削ツール34の姿勢として、この偏差角βを0度より大きく、90度より小さい適当な10〜30度の角度に設定すれば、実際研削作業する際、研削ツールの回転軸の方向42と研削の送り方向V43が一致しなくなり、砥石目の跡が残らない仕上げ精度の良い研削面を得ることができる。
【0055】
次にこの研削ツール6と研削対象物(羽根車)1の干渉チェックについて説明する。まず干渉の状態の定義について説明する。前もってCPU301は、図26に示す266において、265において生成された研削ツール(ロボット機構3の手先部(手首フランジ)4及び手先部4に取り付けた力センサ2も含む)6の3次元モデルに基づいて、図16に示すように立体(直方体または円柱)図形の集合に近似してメモリ302に格納する。即ち、前もってCPU301は、266において、265において生成された研削ツール6やロボット機構3等の3次元モデルに基づいて、図16に示すように、研削ツール(砥石39(円柱図形近似)、グラインダ本体6a(円柱図形近似)、グラインダホルダ6b(直方体図形近似)、ツール交換装置4a(円柱図形近似)、6軸力センサ2(円柱図形近似)))及びロボット機構3の手先部(手首フランジ)4(直方体近似)を、それぞれを包含する最小の直方体や円柱などの立体図形の集合に近似してメモリ302に格納する。そしてディスプレイ305は、この研削ツール6に対して近似された立体(直方体または円柱)図形をメモリ302から読み出してディスプレイI/F304を介して表示できるように構成されている。
【0056】
次に、CPU301は、図27に示す274において図10に示すように算出された各格子点Pにおける研削ツールの姿勢(各格子点Pにおける法線ベクトルNと研削方向ベクトルV、及び研削ツールの最適接触角αop’に基づいて算出される。)を算出する。そしてCPU301は、271において設定された各格子点Pに対して、図9に示すように、研削ツールを近似した立体図形を移動させていって、順次274において算出された研削ツールの姿勢で位置付けして(研削ツールの接触点を格子点にする)、275において前記研削ツールを近似した立体図形を各格子点の位置と姿勢に変換する。そしてCPU301は、各格子点Pにおいて順次移動して位置付けされた研削ツールを近似した立体図形の例えば中心を基準(原点)にして、270において生成された各研削部位(表面、裏面、ハブ面)毎の羽根面の目的とする格子点列が各立体図形に含まれていないこと、即ち非干渉であることを276においてチェックする。即ち、図17に示すように、CPU301は、研削ツールに近似されて設定された直方体については、直方体の中心を基準点(原点)として、直方体の寸法を、X方向についてD、Y方向についてW、Z方向についてH’とする(266において決定される。)。そしてCPU301は、直方体座標系で表される格子点列の任意の格子点の座標をP(px,py,pz)を次に示す(数1)式の関係を満たすか否かの演算を行い、各研削部位における研削対象物面(3次元自由曲面)上の任意の点Pは、(数1)式の関係を満たさないときはnoとなり、非干渉点277を示す演算結果を出力し、(数1)式の関係を満たすときは直方体に含まれる干渉点278を示す演算結果を出力することになる。
【0057】
【数1】
【0058】
また図18に示すように、研削ツールに近似されて設定された円柱については、CPU301は、円柱の中心を基準点(原点)として、円柱の寸法を直径についてR、Z方向についてH”とする(266において決定される。)。そしてCPU301は、円柱座標系で表される格子点列の任意の格子点の座標をP(px,py,pz)を次に示す(数2)式の関係を満たすか否かの演算を行い、各研削部位における研削対象物面(3次元自由曲面)上の任意の点Pは、(数2)式の関係を満たさないときはnoとなり、非干渉点277を示す演算結果を出力し、(数2)式の関係を満たすときは円柱に含まれる干渉点278を示す演算結果を出力することになる。
【0059】
【数2】
【0060】
CPU301は、図27に示す271〜276の演算操作を、研削加工対象物の面(3次元自由曲面)上の全ての格子点に施して、(数1)及び(数2)式を満たす干渉点と満たさない非干渉点とが算出される。
しかし、研削加工対象物上に生成される格子点列は、膨大な数になり、しかも複数の研削部位が存在するため、干渉しない領域を短時間で算出するためには、次に説明する方法ととるのが良い。これは、図9にしめすように、研削加工対象物の面(羽目面)上の格子点の格子間隔を調整しながら干渉の演算処理を行う方法である。即ち、図19に示すように、図27に示す271で設定する格子点Pを、最初に研削加工対象物の面(羽目面)上に研削経路を定義する教示点Tの間隔より大きな間隔で設定し、CPU301は、279において大きな間隔で設定された全ての格子点について干渉チェックの演算処理を行う。ここで、研削ツールに対して近似した立体図形(直方体、円柱等)の大きさが、最初に設定した格子点間隔より小さい場合には、実際には研削ツールと被研削面(羽根面)とが干渉していても、格子点が研削ツールに対して近似した立体図形に含まれず、干渉を検出することができなくなってしまう。従って、CPU301は、干渉しそうな領域については、図27に示す280〜282の演算処理を行う必要がある。即ち、干渉しそうな領域は、十分に格子間隔を細かく取って干渉のチェックを行わなければならない。そこで、CPU301は、干渉しそうな領域(干渉する境界)として、図19に示すようにある領域内で周りの4つの格子点を調べて4つの格子点に干渉点と非干渉点の両方を含む場合を、干渉しそうな領域(干渉する境界)として抽出する。図19において、干渉しそうな領域(干渉する境界)は網掛けの領域で表される。そして、CPU301は、282において、この網掛けの部分(干渉する境界)に270において生成された格子点列データに基づいて更に細かい格子点を設定する。該設定された細かい格子点において、CPU301は、前記したのと同様に272〜276において干渉チェックが行われる。以上のようなCPU301による干渉チェック処理を、研削経路を定義する教示点Tの間隔や近似した立体図形の大きさに対して十分に細かい格子点間隔になるまで、272〜282において実行される。
【0061】
この処理を行えば、最初から細かい均一の格子間隔で格子点を設定して干渉チェックを行うことよりも、干渉チェックする格子点の数を大幅に減らすことが可能となり、CPU301によるロボット機構の動作経路の生成の計算時間を大幅に短縮することができる。なお、これらの干渉チェックの状態を、ディスプレイ305上に表示することができるので、ディスプレイ305の画面を見ながら、干渉チェックについて目視により確認することができる。
以上格子点間隔が十分に細かい?280からyesの信号2801が出力されると、CPU301は、図28に示す283において、非干渉点を集めて非干渉領域をメモリ302に記憶して設定する。以上までが、図21及び図23に示すワークと研削ツールの非干渉領域の算出214である。
【0062】
次にCPU301が演算処理する図21に示すロボット稼働領域の算出215とワークとロボットの非干渉領域の算出216とについて、図22、図23及び図28等を参照して説明する。まずCPU301は、269において、ポジショナと走行ユニットの値の組み合わせが設定されているので、研削加工対象物の面(羽根面)に設定された格子点の座標を、265におけるロボット機構とポジショナとの相対的位置ベクトル情報を用いてロボット機構3の座標系に変換することができる。また、CPU301は、272において算出されていた法線ベクトルNと研削方向ベクトルV並びに274において算出された研削ツールの姿勢を、265におけるロボット機構とポジショナとの相対的位置ベクトル情報を用いてロボット機構3の座標系に変換することができる。また265において、ロボット機構3及び研削ツール6の幾何学的情報も知ることができる。そこで、CPU301は、283においてメモリ302に記憶して設定された非干渉領域の中から284において各格子点を設定すると、該設定された格子点の座標からロボット機構3の座標系に変換することによって、ロボット機構3の手先部4の基準点の位置、及び姿勢をロボット機構の座標系で算出する。そしてCPU301は、この算出されたロボット機構3の手先部4の基準点の位置、及び姿勢から、ロボット機構3を構成する各部材(肩、上腕、前腕、手首等)の関節角度を、265においてハードディスク32に格納されたロボット機構3及び研削ツール6の幾何学的情報に基づいてロボットの逆運動学を解くことによって演算して求め、更に223においてロボット機構3を構成する各部材毎の座標も計算し、これら計算に基づいて286においてロボット機構の作業範囲(稼働できる範囲、ロボット機構を構成する全ての部材が稼働できる範囲)をチェックし、ロボットの作業範囲(稼働できる範囲)である場合には、非干渉領域中の格子点は研削可能な点(稼働できる点)288として出力し、ロボットの作業範囲(稼働できる範囲)でない場合には、非干渉領域中の格子点は研削不可能な点(稼働できる点)288として出力する。これを非干渉領域中の全格子点の終了228がyesになるまで、繰返し、ロボット機構の作業範囲(稼働できる範囲)がチェックされる。
【0063】
もし、ロボット機構の作業範囲(稼働できる範囲)をチェックする際に、ロボット機構を構成する全ての部材(肩、上腕、前腕、手首等の内、特に手先部4の近傍)が加工対象物(羽根車)1に干渉する可能性がある場合には、研削可能領域と研削不可能領域との境界において、前記研削ツール6と同様に干渉チェックが行われる。即ち、CPU301は、224においてCPU301は、全ての格子点をロボット機構3の各部材(肩、上腕、前腕、手首)毎の座標系へ変換し、225においてこの変換された全ての格子点の座標が、研削可能領域と研削不可能領域との境界近傍において、ロボット機構の各部材に対して近似された立体図形(直方体、円柱)に含まれているかをチェックし、含まれている場合にはロボット機構における干渉領域の格子点227とし、含まれていない場合はロボット機構における非干渉領域の格子点226とする。上記ロボット機構に対する干渉チェックは、ロボット機構を構成する全ての部材(肩、上腕、前腕、手先)について行う必要はなく、干渉しそうな少なくとも手先部4の近傍(前腕の先端部)について実行すれば良い。
【0064】
更にCPU301は、ポジショナと走行ユニットの値の組み合わせ終了290がnoの場合、2901によりポジショナと走行ユニットの値の組み合わせの設定269に戻し、研削ツールの干渉チェック及びロボット機構の作業範囲(稼働範囲)のチェックを行い、ポジショナと走行ユニットの値の組み合わせがすべて終了したとき290をyesとする。このように加工対象物のある部位(例えば、表面、裏面、ハブ面)について、ポジショナと走行ユニットの値の各組み合わせ毎に、288に研削可能な点で形成される研削可能領域が算出され、ポジショナと走行ユニットの値の組み合わせが290において終了すると、CPU301は、291において、288に算出されたポジショナと走行ユニットの値の各組み合わせにおける研削可能領域を比較して最も大きい研削可能領域を示すポジショナと走行ユニットの値の組合せを選出する。そして、CPU301は、加工対象物の全ての部位(例えば、表面、裏面、ハブ面、又は異なる加工対象物でも良い。)について、2921により戻して全部位が終了するまで268〜291を繰り返して実行し、291において最後まで残ったポジショナと走行ユニットの値の組合せによって、最適なポジショナの回転φ方向の回転位置と傾斜ε方向の姿勢及び最適な走行ユニットの走行軸位置が決定される。
【0065】
またワーク(加工対象物)とロボット機構との間における非干渉領域が最大となるポジショナと走行ユニットの値の組合せ291を図23に示す234〜238により決定しても良い。即ち、最適なポジショナと走行ユニットの値の組合せは、ロボット機構の稼働範囲(研削可能範囲)が最大になるように決定した場合、ロボット機構を構成する部材(特に手先部の近傍の部材、手首及び前腕の先端部)が加工対象物(羽根車)と干渉する場合がある。そのため、ロボット機構を構成する部材が加工対象物に干渉しない条件で、ロボット機構の稼働範囲をできるだけ大きくして、最適なポジショナと走行ユニットの値の組合せ291を決定することにある。そこで、まずCPU301は、図23に示す「走行ユニット、ポジショナの値の各組合せでの各ワーク毎又はワークの各部位毎のロボット機構の稼働領域(研削可能領域)の算出234」を、図28に示す288において、ポジショナと走行ユニットの値の各組み合わせにおいて、研削可能な点で形成される研削可能領域(稼働領域)が算出される(288において算出された研削可能点及び該研削可能点で形成される研削可能領域(稼働領域)はメモリ302に記憶され、これらのデータをディスプレイ305において表示することもできる。)。そしてCPU301は、図23に示す「走行ユニット、ポジショナの値の各組合せでの全ワーク毎又はワークの各部位毎のロボット機構の稼働領域(研削可能領域)の算出235」を、図28に示す292において全ての部位について終了するまで、ポジショナと走行ユニットの値の各組合せ毎の288において残られる(いずれかの部位において研削不可能点として算出されたら研削可能点から除外される。即ち、論理積が取られる。)研削可能点で形成された研削可能領域(稼働領域)を算出する。そしてCPU301は、図23に示す236において、この算出された研削可能領域(稼働領域)の大きさに基づいて、走行ユニット、ポジショナの値の各組合せを、研削可能領域(稼働領域)の大きい順に並び換える。
【0066】
次に研削可能領域(稼働領域)の大きい方の走行ユニット、ポジショナの値の組合せから、CPU301は、図23に示す237において、図22に示す内容と同様な演算処理によって加工対象物(ワーク)とロボット機構との間の干渉チェックを行って非干渉領域の格子点で形成された非干渉領域を算出する。そして、CPU301は、図23に示す238において、237において算出された非干渉領域が最大になった、研削可能領域(稼働領域)の大きい走行ユニット、ポジショナの値の組合せを、最適な走行ユニットとポジショナ(必要に応じて砥石軸)の値の組合せとして決定する。
なお、前記実施例においては、研削ツールが1種類の場合について説明したが、一つの加工対象物に対して複数種類の研削ツールを使用して研削等の加工を行う場合がある。その場合には、図26に示すフローにおいて「研削部位を指定268」の前、又はその後に「研削ツールの種類の指定」を挿入し、図28に示すフローにおいて「全部位終了?292」の後、又はその前に「研削ツール全種類終了?」を挿入し、研削ツール全種類終了がnoの場合、研削ツールの種類の指定に戻して繰返し演算処理を行うようにすれば良いことは明らかである。このように研削ツールの種類を換えることによって、益々、加工対象物に対する研削ツールによる非干渉領域の拡大を図ることができると共に、加工対象物の形状に適合させて高精度な加工も実現することができる。
以上により、CPU301は、加工対象物における全て部位(例えば、羽根車の表面、裏面、ハブ面)又は全ての加工対象物に対して、研削ツール及びロボット機構による非干渉領域の格子点列データを算出し、更に最適なポジショナの回転φ方向の回転位置及び傾斜ε方向の姿勢並びに走行ユニットの走行軸の位置(更に必要に応じて砥石軸の回転位置)を決定し、これらのデータを例えばモメリ302またはハードディスク32に記憶する。
また、加工対象物1において、研削しない領域がある場合には、図21に示す217において、入力手段40により研削しない領域を入力してハードディスク32に格納することが必要となる。するとCPU301は、入力された研削しない領域に基づいて研削しない領域の格子点列データを生成し、前記算出された非干渉領域の格子点列データから研削しない領域の格子点列データを削除することによって非干渉で、研削する領域の格子点列データが生成され、例えばモメリ302またはハードディスク32に記憶する。
【0067】
次に、図21に示す研削経路データ生成219について説明する。即ち、ホストコンピュータ33において、CPU301は、219において、ハードディスク32及びメモリ302に記憶された非干渉で、研削する領域の格子点列データ(教示点列データ)(270において生成される格子点列データの内、非干渉で、研削する領域のものを用いても良い。)、最適なポジショナの回転φ方向の回転位置及び傾斜ε方向の姿勢並びに走行ユニットの走行軸の位置(更に必要に応じて砥石軸の回転位置)(269において設定されるポジショナと走行ユニットの値の組合せから最適なものを抽出しても良い。)、272において算出される加工対象物の各格子点における法線ベクトルNと研削等の加工方向ベクトルV、274において算出される各格子点における研削等のツールの姿勢に基づいて、ロボット機構によるツールを取り付ける手先部の動作経路データ(研削経路データ)、即ち作業計画を作成する。即ち、265におけるロボット機構とポジショナとの相対的位置ベクトル情報を用いて加工対象物に対するデータを、ロボット機構3の座標系に変換することによって、ロボット機構による動作経路データ(研削経路データ)(非干渉で、研削する領域におけるロボット機構の座標系で表現された教示点(格子点)の位置や姿勢からなる教示点列データ(教示点列情報)、TCP(Tool Center Point)の位置や姿勢からなるTCP列データ(TCP列情報)、加工対象物の種類及びツールの種類の情報など)、即ち該動作経路データからなる作業計画を作成し、ハードディスク32に記憶格納する。
【0068】
以上が予めホストコンピュータ33が行うロボット機構による動作経路データ(研削経路データ)、即ち作業計画である。なお、この作業計画は、ホストコンピュータ33で行う実施例について説明したが、コンピュータ11で行っても良いことは明らかである。
【0069】
次に、コンピュータ11、ロボットコントローラ7及びシーケンサ10による処理及び制御によって、実際の研削等の加工対象物(羽根車)に対してロボット機構3の手先部4のツール交換装置4aに装着されたツール(グラインダ)6によって研削等の加工作業を行うこと(図30に示す312)について説明する。まず、コンピュータ11は、受信指示を上記ホストコンピュータ33に出して、図30に311で示すように、ホストコンピュータ33において計画され、データベース32に格納されたロボット機構の動作経路データ(非干渉で、研削する領域におけるロボット機構の座標系で表現された教示点(格子点)の位置や姿勢からなる教示点列データ、TCP(Tool Center Point)の位置や姿勢からなるTCP列データ、指定された加工対象物の種類及びツールの種類のデータ等)をネットワーク31を介して受信する。
また、コンピュータ11には、入力手段41により、「図8に示すように、力センサ2の許容力fs と許容モーメントms 、ツール6の加工対象物1への押しつけ力fR とモーメントmR 、加工速度v(ホストコンピュータ33から得ても良い。)、力センサ2の計測基準点Os を原点としたTCP(Tool Center Point)の位置ベクトルと重心の位置ベクトル(ホストコンピュータ33から得ても良い。)、ツール(手先部も含む)の仮想係数(仮想質量[M]、仮想粘性係数[C])、(但し、これらの内、自動的にコントローラ7又はホストコンピュータ33から取得できる場合は入力する必要がないことは明らかである。)」等が入力されて、メモリ(図示せず)に記憶される。また、コンピュータ11は、入力手段41またはホストコンピュータ33から、加工対象物1の3次元モデルデータ(ベクトルを有する曲率半径s)が入力または送信されてメモリに記憶される。
【0070】
次に加工対象物である羽根車1をポジショナ8の上に図1に示すように搭載する。しかし、羽根車1をポジショナ8に搭載する際、少なくとも羽根車の回転φ方向には、搭載誤差(設置誤差)が生じるものとする。そこで、コンピュータ11は、ホストコンピュータ33から受信した最適なポジショナの回転φ方向の回転位置と傾斜ε方向の姿勢及び走行ユニットの走行軸位置をシーケンサ10に送信し、シーケンサ10は、ポジショナ8の駆動手段8a,8bをエンコーダから検出される回転位置情報に基づいて制御してポジショナ8を位置決めし、即ちポジショナ8に対して搭載誤差(設置誤差)を有する羽根車1が粗位置決めされ、走行ユニット9の駆動手段9bをエンコーダから検出される走行軸位置情報に基づいて走行ユニット9を位置決めし、即ち走行ユニット9上に設けられたロボット機構3を位置決めする。
ついで、コンピュータ11、ロボットコントローラ7及びシーケンサ10が行う加工対象物1のロボット機構3に対する高精度の相対的位置決め(図30に示す313)について説明する。まず、触針5をロボット機構3のツール交換装置4aに装着する。そして、コンピュータ11は、ロボットコントローラ7に指令して羽根車1の羽根面上に定義されている複数の加工基準点に上記触針5を当てて力センサ2から検出される力が所望の値になるようにロボット機構3を構成している所望の関節の駆動手段3aを駆動し、センサ3bで検出される各関節の回転角を基にロボット機構3の座標系に基づく触針5の位置座標を算出し、これをポジショナ8の座標系に変換することによって本来あるべき複数の加工基準点の位置座標との搭載誤差(設置誤差)を算出し、この搭載誤差(設置誤差)をシーケンサ10に送信し、シーケンサ10は、この搭載誤差をポジショナ8にフィードバックしてポジショナ8の回転位置を補正することによって、加工対象物(羽根車)1は、ロボット機構3に対して高精度に位置決めされたことになる。
【0071】
なお、加工対象物(羽根車)1のロボット機構3に対する高精度な位置決めは、上記のように、ポジショナ8の回転位置をハードで補正する以外に、コンピュータ11においてロボット機構3に対して設定されるロボット基準座標系を上記搭載誤差分補正することによって行うことができる。即ち、ロボット機構3に対して設定されるロボット基準座標系と加工対象物(羽根車)1上に設定される基準座標との間において、機械またはソフトにおいて、高精度に位置決めされれば良いことは明らかである。また、上記実施例においては、加工対象物(羽根車)1とロボット機構3との間の相対的誤差を、ロボット機構3の手先部4に触針5を取り付けて測定したが、該触針5の代わりに、レーザ測長器や超音波センサなどの非接触式の測定手段をロボット機構3の手先部4に取り付けて上記相対的誤差を測定することができる。なお、走行ユニット9も含めてロボット機構3に設置誤差が発生しないとした場合には、ポジショナ8のベースにレーザ測長器や超音波センサなどの非接触式の測定手段を設置して、加工対象物(羽根車)1上の複数の基準点を直接測定することによって、ポジショナ8も含めて加工対象物(羽根車)1の設置誤差を測定することができる。
【0072】
次に、図30に示す加工対象物の形状誤差に基づくロボット機構の動作経路補正(修正)314について説明する。即ち、触針5をロボット機構3のツール交換装置4aに装着する。そして、コンピュータ11は、ホストコンピュータ33から受信したロボット機構の動作経路データから、加工対象物(羽根車)1の羽根面上の複数の教示点(格子点)の位置座標を抽出し、更にロボットコントローラ7に指令して羽根車1の羽根面上の前記複数の教示点(格子点)に対応する点に上記触針5を当てて力センサ2から検出される力が所望の値になるようにロボット機構3を構成している所望の関節の駆動手段3aを駆動し、センサ3bで検出される各関節の回転角を基にロボット機構3の座標系に基づく触針5の先端の位置座標を算出し、前記抽出された複数の教示点(格子点)の位置座標と前記算出された触針の先端の位置座標との相違によって羽根車の羽根の捻じれや大きなうねり等の羽根の製作誤差を算出し(測定し)、該算出(測定)された羽根の製作誤差について、ホストコンピュータ33から受信したロボット機構の動作経路データに対して補正を加えて修正する。なお、測定点が教示点と異なる場合には、製作誤差を、周囲の教示点Tの位置座標に対して逆の直線または曲線補間によってロボット機構の動作経路データに対して補正を加えて修正する必要がある。即ち、触針5を取り付けたロボット機構3により、ロボットコントローラ7からのコンプライアンス制御による倣い動作を利用して、ロボット機構3の座標系で図3に示すように羽根面18の位置座標を測定する。測定は時間を節約するために、実際の加工経路を用いず、コンピュータ11が羽根面18に3本の測定線を設定し、コンピュータ11からの設定指令に基づいて、この測定線上の数点を触針5がコンプライアンス制御による倣い動作するようにロボットコントローラ7がロボット機構3に対して制御することにより、これら測定線上の数点の位置座標を測定する。羽根車断面19では、測定線は20、21、22の点で表わされている。次にこの測定データを用いて、コンピュータ11は、周囲の教示点Tの位置座標を基に、補間処理を行って、ホストコンピュータ33から計画されたロボット機構の加工経路17と比較して算出される製作誤差を該ロボット機構の加工経路17に対して補正修正して、羽根表面18に教示された加工経路23を得る。なお、上記実施例においては、羽根車1の製作誤差を、ロボット機構3の手先部4に触針5を取り付けて測定したが、該触針5の代わりに、レーザ測長器や超音波センサなどの非接触式の測定手段をロボット機構3の手先部4に取り付けて上記製作誤差を測定することができる。なお、走行ユニット9も含めてロボット機構3に設置誤差が発生しないとした場合には、ポジショナ8のベースにレーザ測長器や超音波センサなどの非接触式の測定手段を設置して、羽根車の羽根表面の複数の測定点を直接測定することによって、羽根車1の羽根の製作誤差を測定することができる。但し、この場合、この羽根車1の羽根の製作誤差を、ロボット機構3の座標系に変換する必要がある。
【0073】
以上説明したように、ホストコンピュータ33で計画されたロボット機構の動作経路データには、羽根車等の加工対象物1の製作誤差や設置誤差等については、図3に示す実際研削等の加工する加工対象物1の表面18に対しては教示されていない。そうすると、ロボット機構3の手先部4にツール6を取り付けて実際コンプライアンス制御による被加工面への倣い動作によって加工する際、倣い動作において修正しきれないような大きな誤差がある場合には、加工残りや焼き付きなどの弊害が生じてしまうことになる。そこで、被加工面18をロボット機構3で測定することによってこの誤差を低減し、ホストコンピュータ33で計画されたロボット機構の加工経路(動作経路)18を補正することによって、加工残しや焼き付き等のない安定した研削等の加工を実現することができる。
次に、図3に示す研削ツールのコンプライアンス制御による倣い動作における最適倣い速度vf の設定315について説明する。即ち、ロボット3の動作速度を、外力を検出する手段(力センサ2)の検出能力から設定することについて、ツール(グラインダ)6の作業モデルを用いて図8を参照して説明する。コンプライアンス制御で被加工面への押しつけ力制御をして研削等の加工を行うためには、ツール6で押し付けている力を力センサ2で計測して適切な押しつけ力になるように制御する。このとき、ある動作速度に対して被加工面に倣うための倣い速度が発生する。この倣い速度は、作業モデルとの関係から決まる範囲があるために作業者が自由に設定することはできない。このことを図7に示すツール6の作業モデルを用いて述べる。なお、力センサ2から手先の全ての部分をツールと呼ぶことにする。この作業モデルには以下の仮定を設ける。
【0074】
(a)押しつけ力方向の位置偏差を考慮せず、被加工面上の接線を移動方向とする動作を倣い動作とする。
(b)ツール(手先部を含む。)6の運動をツール重心25の質点の運動と近似し、仮想質量[M]をツールの質量Mに設定する。
(c)コンプライアンス制御による倣い動作は、TCP(Tool Center Point)に対し行う。
(d)ツール6と被加工面は、唯一TCP(Tool Center Point)で点接触する。
【0075】
(e)研削等の加工により発生する力・モーメントは無視する。
上記仮定(a)より、コンプライアンス制御の運動モデルを定義する式は(数3)式のようになる。
【0076】
【数3】
【0077】
q:ツールに加わる外力と設定値との偏差
v:ツールの速度
[M]:仮想質量
[C]:仮想粘性係数
なお以降では、仮想質量[M]と仮想粘性係数[C]をまとめて仮想係数と呼ぶことにする。
【0078】
力センサ2の力の許容入力(力センサ2に印加可能な力の許容値)fs とモーメントの許容入力(力センサ2に印加可能なモーメントの許容値)ms における制約条件は、次の(数4)式及び(数5)式によって表せる。
【0079】
【数4】
【0080】
【数5】
【0081】
但し、fR :押しつけ力の力設定値
mR :押しつけ力のモーメント設定値
fd :押しつけ力の力設定値fR からの偏差、(fd =−q)
md :押しつけ力のモーメント設定値mR からの偏差
rR :計測基準点(力センサ2の基準点)を原点としたTCP(Tool Center Point)の位置
rG :計測基準点(力センサ2の基準点)を原点としたツール重心25の位置
vG :ツール重心25における速度
g :重力加速度
x :外積演算子
曲率半径sの被加工面上の点を速度vで運動するとき、瞬間の角速度wは、次に示す(数6)式よって表せる。ここで曲率半径sを、曲率の中心を起点とし、被加工面上の点を表す大きさ|s|のベクトルとする。
【0082】
【数6】
【0083】
TCP(Tool Center Point)でのツールの速度vと、重心でのツールの速度vG との関係は、次に示す(数7)式によって表せる。
【0084】
【数7】
【0085】
よって(数4)式及び(数5)式によって力センサ2の力の許容入力(力センサ2に印加可能な力の許容値)fs と力センサ2のモーメントの許容入力(力センサ2に印加可能なモーメントの許容値)ms における制約条件は、各々(数4)式、(数5)式から最終的に次に示す(数8)式、(数9)によって表せる。
【0086】
【数8】
【0087】
【数9】
【0088】
ここで、ベクトルAは、次に示す(数10)式によって表せる。
【0089】
【数10】
【0090】
また、倣い速度vf は、次に示す(数11)式で表せる。
【0091】
【数11】
【0092】
・:内積演算子
従って、倣い速度vf は、(数3)式で表されるコンプライアンス制御で決まるものであるが、(数8)式、(数9)式で表されるように、被加工面の3次元自由曲面形状(ベクトルである曲率半径s)、力センサ2の許容入力(力センサ2に印加可能な許容値)fs ,ms 、ツールの仮想係数(仮想質量[M]、仮想粘性係数[C])、ツール重心及びTCP(Tool Center Point)の位置ベクトル(力センサ2の基準点を原点としたTCP(Tool Center Point)の位置rR 及び力センサ2の基準点を原点としたツール重心25の位置rG )、押しつけ力(押しつけ力の力設定値fR )、加工速度vといった多くの要因から決まる範囲に含まれていなければならない。
【0093】
そこで、予め、被加工面の3次元自由曲面形状(曲率半径s)、力センサ2に印加できる許容値fs ,ms 、ツールの仮想質量[M]、ツール重心及びTCP(Tool Center Point)の位置ベクトル(rR ,rG )を設定し、設定仮想粘性係数[C]、設定押しつけ力fR 、設定加工速度vも独立した変数とみなして試行錯誤により設定したのでは、目的の加工作業(特に被加工面の形状(曲率半径s)が多く、大きく変化する3次元自由曲面を有する場合)に対して適切な倣い速度を得ることができない。
【0094】
これに対し、コンピュータ11は、入力手段41またはロボットコントローラ7またはホストコンピュータ33から得られる被加工面の3次元自由曲面形状(ベクトルである曲率半径s)、力センサ2の許容入力(力センサ2に印加可能な許容値)fs ,ms 、ツールの仮想係数(仮想質量[M]、仮想粘性係数[C])、ツール重心及びTCP(Tool Center Point)の位置ベクトル(力センサ2の基準点を原点としたTCP(Tool Center Point)の位置rR 及び力センサ2の基準点を原点としたツール重心25の位置rG )、押しつけ力(押しつけ力の力設定値fR )、加工速度vに基づいて、(数3)式、(数8)式及び(数9)式で表される加工作業モデル(コンプライアンス制御モデル)を用いることによって、適切な倣い速度vf を得るための指針を得ることができる。即ち、コンピュータ11は、仕上げ精度、ワーク材質、砥石組成、グラインダ回転数などの要因から決まる押しつけ力fR と加工速度vと、仮想係数(仮想質量[M]、仮想粘性係数[C])とを、加工作業モデル((数3)式、(数8)式及び(数9)の関係からなるコンプライアンス制御モデル)を満たすように算出すれば、力センサ2に印加可能な許容値fs ,ms 及び被加工面の3次元自由曲面形状に応じた適切な倣い速度vf を得ることが可能となる。また、コンピュータ11は、TCP(Tool Center Point)の位置ベクトル(力センサ2の基準点を原点としたTCP(Tool Center Point)の位置rR )を、前記加工作業モデル((数3)式、(数8)式及び(数9)の関係からなるコンプライアンス制御モデル)を満たすように調節設定することにより、適切な倣い速度vf を得ることが可能となる。さらに、コンピュータ11は、適切な倣い速度vf を得るために前記加工作業モデルを満たすようにツール重心やツール質量を決定してそれを出力手段(印刷装置)(図示せず)または表示手段(ディスプレイ)(図示せず)に出力または表示するようにすれば、使用者は、前記決定されたツール重心やツール質量に適応したツールの種類を選択することができ、更に決定されたツール重心やツール質量に適応したツールを設計することができる。
【0095】
以上説明したように、コンピュータ11は、ホストコンピュータ33で計画されたロボット機構の動作経路データ(加工経路データ)(このデータが教示点列データからなる場合において、その途中の経路データも必要な場合には、その教示点の間を周囲の教示点の座標データに基づいて直線または曲線補間演算を施すこすことによって算出することができる。)と、該動作経路に応じて算出された研削等の加工速度v及び適切な倣い速度vf 及びTCP(Tool Center Point)の位置ベクトル(力センサ2の基準点を原点としたTCP(Tool Center Point)の位置rR )と、入力されて設定された押しつけ力fR 等及び仮想係数(仮想質量[M]、仮想粘性係数[C])とをロボットコントローラ7へ送信する。
次に、羽根車等の加工対象物物1に対して実際の研削等の加工作業を行うことについて説明する。作業者は、まずポジショナ8に羽根車等の加工対象物1を搭載する。そして、入力手段41からコンピュータ11に対して、例えば加工対象物の種類を入力する。すると、コンピュータ11は、ネットワーク31を介してホストコンピュータ33から目的とする加工対象物の種類に対応したロボット機構の動作経路データを選び出し、ネットワーク31を介して転送を受ける。そして、コンピュータ11は、この選びだされたロボット機構の動作経路に基づいて、経路補間(直線または曲線補間)演算を施すと共に、加工速度v及び最適倣い速度vf 等を算出してロボット機構の動作プログラムを生成する。
【0096】
その後、作業者は、運転開始・停止の指令を操作盤12を通してシーケンサ10に対して指令する。予め作業手順を記憶しているシーケンサ10は、コンピュータ11に対して作業を指令する。作業指令を受けたコンピュータ11は、作業内容に応じてポジショナ8や走行軸9の位置決めデータをシーケンサ10に転送する。位置決めデータを受けたシーケンサ10は、前記に説明したように、ポジショナ8や走行軸9の位置決めや、ツール6やツール交換装置用台座13の制御を行い、コンピュータ11に対して、まず前記に説明したように、加工対象物の形状誤差に基づくロボット機構の動作経路補正314についての指令を出す。そして、コンピュータ11は、加工対象物の形状誤差に基づくロボット機構の動作経路補正314を行って、最終のロボット機構の動作プログラムを生成する。即ち、このロボット機構の動作経路補正は、基になるホストコンピュータ33で計画されたロボット機構の動作経路に対して行っても良いし、生成されたロボット機構の動作プログラムに対して行っても良いことは明らかである。このように、コンピュータ11は最終のロボット機構の動作プログラムの生成が終了すると、この最終のロボット機構の動作プログラムをロボットコントローラ7にデータバスが直結されている通信回線16を介して高速に転送する。更にコンピュータ11は、予め管理し、前記した如く得られるTCPデータやコンプライアンス制御変数などの加工動作の制御に必要な変数もロボットコントローラ7にデータバスが直結されている通信回線16を介して高速に転送する。これら最終のロボット機構の動作プログラムや制御変数を転送されたロボットコントローラ7は、最終のロボット機構の動作プログラムや制御変数に基づいてロボット機構の手先部に装着されたツール6の押しつけ力が設定値になるようにロボット機構の各関節の駆動手段を駆動制御してツールをコンプライアンス制御させて3次元自由曲面を有する加工対象物1に対して加工を施して、ツール及び手先部が3次元自由曲面を有する加工対象物と干渉することなく、しかも加工すべき全ての領域に亘って非常に能率良く、しかも非常に高精度に仕上げ加工を施すことができる。
【0097】
次に、ロボット機構3が研削等の加工作業を途中で中断・中止し、その後再開する場合について説明する。即ち、作業者がこの加工システムに対して作業を中断させたい場合は、加工作業の中断の命令を操作盤12を通してシーケンサ10に対して指令する。するとシーケンサ10は、コンピュータ11に対して作業の中断を指令する。そしてコンピュータ11は、ロボット機構3が現在羽根車などの加工対象物1のどの部分を研削等の加工をしているのかの座標を、ロボット機構の各関節に設けられたセンサ3bから検出される各関節の回転角度等をロボット座標系に座標変換することによってロボットコントローラ7から検知し、その部分から、退避するのに最も適した教示点を、いままで加工していた教示点T(格子点P)の列(ホストコンピュータ33で計画されて転送を受けたロボット機構の動作経路データ(教示点Tの列データ))の中から選び出し、退避軌道の計画を行う。同時に、作業を再開するときのために同じような方法で復帰軌道の計画を行う。その後、コンピュータ11は、ロボットコントローラ7にロボット機構3の停止を指令し、新たな動作軌道として先ほど計画した退避軌道を転送する。そしてロボットコントローラ7に退避軌道の実行を指令し、ロボット機構3が退避する。一方、加工中非常停止状態になった場合、コンピュータ11がシーケンサ10やロボットコントローラ7から非常停止原因を検知し、作業者に非常停止原因を報告する。非常停止原因が除去された後、作業者は、操作盤12を介してシーケンサに復帰を指令する。するとシーケンサ10は、コンピュータ11に対してロボット機構の復帰を指令する。そしてコンピュータ11は、ロボット機構がどのような状態で停止しているのかをロボットコントローラ7から検知し、退避するのに最も適した教示点をいままで加工していた教示点T(格子点P)の列(ホストコンピュータ33で計画されて転送を受けたロボット機構の動作経路データ(教示点Tの列データ))の中から選び出し、退避軌道の計画を行う。同時に、作業を再開するときのために同じような方法で復帰軌道の計画を行う。その後、コンピュータ11は、新たな動作軌道として先ほど計画した退避軌道をロボットコントローラ7に転送する。そしてコンピュータ11は、ロボットコントローラ7に退避軌道の実行を指令し、ロボットコントローラ7がロボット機構3を退避する。図4は、加工作業を中断させたい場合や非常停止状態からロボット機構3を復帰させたい場合の退避軌道と復帰軌道の計画の方法を説明した図である。ロボット機構3の研削等の動作経路の教示点Tは、ホストコンピュータ33によって干渉チェックが行われて非干渉の格子点Pとして、加工対象物の被加工面(羽根車1の羽根面)上に定義されている。図中のToは初期状態の教示点、Taは3次元自由曲面を有する被加工面の上空に定義された点、T1からT12までは、被加工面上の点である。被加工面が特に狭隘部または角部の中にあるときは、ロボット機構が被加工面に到達するときに不用意に接触しないように複数の点を適切に教示することが必要である。通常、ロボット機構3の手先部(ツール)は、ToからTaを通り、T1から順番にT12までを移動して加工を行った後、T12−T11−T10−T9−T8−T1と通り、Taを通ってToに戻る。ここで、T6付近を加工しているときに作業中断要求があったとする。すると、ロボット機構3は、T7で加工を中断し、ホストコンピュータ33で計画されて転送を受けたロボット機構の動作経路データ(教示点Tの列データ)に基づいてコンピュータ11によって独自に計画されたT7−T8−T1−Ta−Toを通る退避軌道に沿ってロボットコントローラ7からの制御によって動作を行う。その後作業を再開するときには、ロボット機構3は、前記コンピュータ11によって独自に計画したTo−Ta−T1−T8−T7を通る復帰軌道に沿ってロボットコントローラ7からの制御によって実行した後、加工作業を再開する。非常停止からの退避軌道や復帰軌道も同様にしてホストコンピュータ33で計画されて転送を受けたロボット機構の動作経路データ(教示点Tの列データ)に基づいてコンピュータ11によって計画される。例えばこのとき、T11付近で退避軌道を計画しなければならないとき、コンピュータ11は、T11−T7−T1−Ta−Toなど、何らかの法則によりホストコンピュータ33において干渉チェックが行われた教示点Tの列の中から選択して軌道を計画すればよい。特に干渉チェックが行われていない点を使用したい場合には、コンピュータ11は、なんらかの形でロボット機構3が加工対象物1と干渉しないことを確認することが必要である。以上説明したように、コンピュータ11は、ロボット機構3が加工対象物1と干渉しない範囲で、再短距離の退避軌道や復帰軌道を自動的に計画するので、操作盤12によるロボット機構3に対する作業の中断、作業の再開を指示、または非常時の作業の中止、作業の再開を非常に円滑に行うことができる。
【0098】
次に加工対象物1へのツール6の焼き付きを防止するための実施例について説明する。即ち、図7は、研削等の被加工面の温度を検出してコンプライアンス制御手法の制御変数を調整することを羽根断面上で説明した図である。3次元自由曲面を有する被加工面の温度を検出するセンサ(例えば、赤外線温度計、放射温度計等)24を手先部4(例えばツール6の先)に設置して被加工面の温度を計測し、温度計測値をコンピュータ11に転送する。コンピュータ11は、温度計測値を解析して焼き付きが発生しそうな温度であると判断した場合には、押しつけ力が小さくなるようにコンプライアンス制御における制御変数の修正値を算出し、該制御変数の修正値を、ロボットコントローラ7に転送する。ロボットコントローラ7は修正された制御変数により直ちにロボット機構3のツール6に対してコンプライアンス制御を行い、ツール6による被加工面の焼き付きを防ぐ。なお、被加工面の温度を測定するセンサ24をロボット機構の手先部4に設置したのは、ツール6の加工経路に追従させて、ツールと加工対象物との間の接触点近傍の温度を比較的正確に計測してツール6による被加工面の焼き付きを防止して仕上がり精度の優れた加工を実現することができる。
次にロボットシステム作業計画部240とロボットシステム制御部242の間にメモリを共有する手段241を設置して、大量のデータを高速に転送する実施例について図21を参照して説明する。加工対象物が羽根車のように、3次元自由曲面を有して複雑な形状した多数の羽根に対して、ロボット機構3による研削等の加工作業を行う場合、溶接作業やバリ取り作業と異なり、作業対象の加工する経路を、線ではなく面で計画しなければならないため、ロボットシステム制御部(ロボットコントローラ7)240で大量のデータを高速に処理する必要がある。よって、今までの、ロボットシステム制御部(ロボットコントローラ7)242の内部の限られた容量の記憶手段や、ロボットシステム作業計画部(ホストコンピュータ33またはコンピュータ11)240からシリアル通信でデータをロボットシステム制御部242に転送するのでは、能力に不足する問題があった。よって本発明では、入出力手段が2回線設置された読み書き可能な半導体メモリ(DualPortRAM)241を設置することによって、ロボットシステム作業計画部240からもロボットシステム制御部242からも自らの半導体メモリに読み書きするのと同じ速度でDualPortRAM241に読み書きできるようにして、ロボットシステムの動作データ(動作経路データ)2411やロボットシステムの制御変数(被加工面の形状に応じた加工速度v及び最適倣い速度vf と、設定された押しつけ力fR と、仮想係数(仮想質量[M]、仮想粘性係数[C])、rG ,rR 等)2412などの大量のデータを高速に転送することを実現している。具体的には、ロボットシステム作業計画部240は、図1や図2に示されるホストコンピュータ33またはコンピュータ11に、ロボットシステム制御部242は図1や図2に示されるロボットコントローラ7に、ロボットシステムは図1や図2に示される、ロボット機構3、力センサ2、ツール6、走行ユニット9、ポジショナ8、ツール交換装置用台座13、ツール交換装置用電磁弁14に対応する。
【0099】
図22は、ロボット機構3による羽根車1の加工手順を説明した図である。羽根車1は、気体または液体または固体またはそれらを組み合わせたものに使用される羽根を1枚か複数枚有したものを対象とするものである。羽根車1は、複雑な3次元自由曲面形状の羽根が重なり合うように構成されている。よって、切削や研削の加工を行うためには、羽根表面上に適切に倣い、羽根同士が重なりあった部分に潜り込んで加工しなければならない。そこで、本発明は、ロボット機構3でこれらの切削や研削の加工を行うために、羽根車1の設計変数(羽根車の種類)を入力手段40で入力することにより、ホストコンピュータ33またはコンピュータ11において、羽根車の種類毎の羽根車の設計モデル(3次元モデル)に基づいて、ツール及びロボット機構の手先部近傍の干渉チェックとロボット機構の稼働範囲のチェックとを行ってポジショナと走行ユニットとによって羽根車とロボット機構との間の相対的位置・姿勢関係を決定しながら、ロボットシステムの動作用データ(動作経路データ等)を自動で作成して計画し、更にコンピュータ11において、実際の羽根車1の位置誤差(設置誤差)や形状誤差を測定して該測定された位置誤差(設置誤差)や形状誤差を上記羽根車の設計モデルまたはロボットシステムの動作用データ(動作経路データ等)に対して補正して、最終のロボットシステムの動作用データ(動作経路データ等)を作成して計画することにある。そして、本発明は、ロボットコントローラ7は、計画された最終のロボットシステムの動作用データ(動作経路データ等)に基づいて、例えば、外力を検出する手段と速度または位置を検出する手段と備えたロボット機構3の手先部に取り付けたツール6をコンプライアンス制御させることによって、実際の羽根車1を、干渉させることなく、仕上がり精度が優れた研削加工を実現することにある。また、本実施例によれば、羽根車1のみならず、3次元自由曲面をした、鋳造品、引き抜き加工品、圧延加工品、焼結加工品などの切削等の加工作業に適用することができる。
【0100】
【発明の効果】
本発明によれば、3次元自由曲面形状の作業対象物に対してロボット機構に力制御機能(コンプライアンス制御機能)をもたせてロボット機構の手先部に取付けられた作業工具により倣い作業または周期的に接触して作業する場合における作業計画(特に動作経路及び接触角、その他コンプライアンス制御変数(押付力、倣い速度、運動モデル))を、作業工具及びロボット機構の手先部が作業対象物と干渉することなく、容易に、効率良く作成することができ、その結果前記作業対象物に対してロボット機構に対して最適なコンプライアンス制御を行って作業工具による高精度の加工等の作業を実現することができる効果を奏する。
【0101】
また本発明によれば、3次元自由曲面形状の作業対象物に対してロボット機構に力制御機能(コンプライアンス制御機能)をもたせてロボット機構の手先部に取付けられた作業工具により倣い作業または周期的に接触して作業する場合における作業計画の内、最適倣い速度vを、力検出手段に印加できる許容力fs または許容モーメントms や作業対象物の曲率などを用いて設定できるようにして、工具の作業対象物に対する効率の良い倣い作業を実現することができる効果を奏する。
また本発明によれば、3次元自由曲面形状の作業対象物に対してロボット機構に力制御機能(コンプライアンス制御機能)をもたせてロボット機構の手先部に取付けられた作業工具により倣い作業または周期的に接触して作業する場合において、前記作業対象物とロボット機構との間において高精度の相対的位置決めを実現し、更に作業対象物に位置誤差や形状誤差がある場合においても工具を作業対象物に適切な状態で倣わせて加工等の作業を実現することができる効果を奏する。
【0102】
また本発明によれば、3次元自由曲面形状の作業対象物に対してロボット機構に力制御機能(コンプライアンス制御機能)をもたせてロボット機構の手先部に取付けられた作業工具により倣い作業または周期的に接触して作業する場合において、任意の時点において作業を中断し、任意の時点において作業を再開することができ、しかも非常停止状態からの復帰動作(ロボット機構の手先部を自動で退避して初期状態に戻す機能が不可欠である。)を自動で行うことができる効果を奏する。
また本発明によれば、3次元自由曲面形状の作業対象物の狭隘部または角部に対してロボット機構に力制御機能(コンプライアンス制御機能)をもたせてロボット機構の手先部に取付けられた作業工具により倣い作業または周期的に接触して作業する場合において、ロボット機構の姿勢変化を小さく抑えて作業計画をたてることにより、作業工具が作業対象物に干渉することなく、より広範囲に亘って円滑な作業を実現することができる効果を奏する。
【0103】
また本発明によれば、3次元自由曲面形状の加工対象物に対してロボット機構に力制御機能(コンプライアンス制御機能)をもたせてロボット機構の手先部に取付けられた研削又は研磨工具により倣い研削又は研磨加工する場合において、研削又は研磨工具の加工対象物へに焼き付きを防止して高精度の加工を実現することができる効果を奏する。
また本発明によれば、3次元自由曲面形状の加工対象物に対してロボット機構に力制御機能(コンプライアンス制御機能)をもたせてロボット機構の手先部に取付けられた研削又は研磨工具により倣い研削又は研磨加工する場合において、研削傷または研磨傷、即ち砥石目の跡を残さないようにして高精度の研削または研磨加工を実現することができる効果を奏する。
【図面の簡単な説明】
【図1】本発明に係わるロボットシステム、その作業計画部及びその制御部からなる全体の概略構成を示した図である。
【図2】本発明に係わるロボットシステムの制御系のブロックダイアグラムである。
【図3】本発明に係わるロボット機構の動作経路補正について説明するために加工対象物である羽根の断面を示した図である。
【図4】本発明に係わる研削等の加工作業を中断させたい場合や非常停止状態からロボットを復帰させたい場合において、ロボット機構の動作軌道の計画方法を説明するための図である。
【図5】本発明に係わる加工対象物をロボット機構により研削等の加工を行うためのツールの姿勢を設定する方法を説明するための図である。
【図6】本発明に係わる加工対象物の狭隘部または角部をロボット機構により研削等の加工をするときロボット機構と加工対象物が干渉しにくいツールの姿勢を設定する方法を説明した図である。
【図7】本発明に係わるツールによる被加工面への焼き付きを防ぐ実施例を羽根車断面で示した図である。
【図8】本発明に係わる力センサの検出能力からロボット機構の動作速度を設定することについて、ツールの作業モデルを用いて説明した図である。
【図9】本発明に係わるロボット機構の動作経路データを作成する方法について、羽根車の3次元モデルを分割した格子点列とロボット機構のツールとの位置関係を示した図である。
【図10】本発明に係わる格子点P0における羽根法線ベクトルNと研削方向ベクトルVとを示した図である。
【図11】本発明に係わるロボット機構の動作経路を作成する際、砥石の最適な接触角を算出するために、実験により平面から形成された研削面を砥石によって研削する状態を示した側面図である。
【図12】図11に示す実験研削によって得られる砥石接触角αと研削幅Kと研削深さΔtとの関係を示す図である。
【図13】本発明に係わるロボット機構の動作経路を作成する際、砥石の最適な接触角を算出するための、3次元自由曲面で形成された研削面に対して砥石を接触させる状態を示した側面図である。
【図14】図13と同様に平面で形成された研削面と3次元自由曲面で形成された研削面との間において、研削面と砥石との間の接触状態を示す図である。
【図15】図14(b)を拡大して示した図である。
【図16】本発明に係わるロボット機構の動作経路を作成する際、研削ツール及びロボット手首に対して近似して設定される直方体と円柱の集合からなる立体図形を示す図である。
【図17】本発明に係わるロボット機構の動作経路を作成する際、直方体に近似されたロボット機構のモデルまたは研削ツールの一部のモデルと加工対象物の3次元モデルとの間において行う干渉チェックを説明するための図である。
【図18】本発明に係わるロボット機構の動作経路を作成する際、円柱(円筒体)に近似されたロボット機構のモデルまたは研削ツールの一部のモデルと加工対象物の3次元モデルとの間において行う干渉チェックを説明するための図である。
【図19】本発明に係わるロボット機構の動作経路を作成する際、加工対象物の3次元モデル上において、非干渉領域と干渉領域との境界において、格子点間隔を細かくして詳細に干渉チェックを行うことを説明するための図である。
【図20】本発明に係わるロボット機構の動作経路を作成する際、加工対象物の3次元モデル上に格子点間隔を設定することを示す図である。
【図21】本発明に係わるコンピュータにおいてロボット機構の動作経路を作成する手順をフローチャートで示した図である。
【図22】本発明に係わるコンピュータにおいてロボット機構の動作経路を作成する際、ロボット機構のモデルと加工対象物の3次元モデルとの間で行われる干渉チェックの手順をフローチャートで示した図である。
【図23】本発明に係わるコンピュータにおいてロボット機構の動作経路を作成する際、ポジショナと走行ユニットの値の組合せを決定する手順をフローチャートで示した図である。
【図24】本発明に係わるデータ転送において作業計画部と制御部の間にメモリを共有する手段を設置して大量のデータを高速に転送することを説明するための図である。
【図25】本発明に係わるコンピュータにおいて羽根車の設計変数(種類)を指定するところからロボット機構の動作経路を作成する手順を簡単に示したフローチャート図である。
【図26】本発明に係わるコンピュータにおいてロボット機構の動作経路を作成する手順の内、初めの部分を詳細に示したフローチャート図である。
【図27】本発明に係わるコンピュータにおいてロボット機構の動作経路を作成する手順の内、中間の部分を詳細に示したフローチャート図である。
【図28】本発明に係わるコンピュータにおいてロボット機構の動作経路を作成する手順の内、終りの部分を詳細に示したフローチャート図である。
【図29】本発明に係わるホストコンピュータの構成を示す図である。
【図30】本発明に係わるコンピュータ、ロボットコントローラ及びシーケンサの処理、制御に基づく加工作業の準備とその後のコンプライアンス制御に基づく加工作業の流れを簡単に示したフローチャート図である。
【符号の説明】
1…羽根車(加工対象物)、2…力センサ、3…ロボット機構
4…ツール交換装置、5…触針、6…ツール(グラインダ)
7…ロボットコントローラ、8…ポジショナ、9…走行ユニット(走行軸)
10…シーケンサ、11…コンピュータ、12…操作盤
15…A/D変換器
24…温度センサ、25…ツール重心、31…ネットワーク
32…ハードディスク(データベース)、33…ホストコンピュータ
40、41…入力手段、301…CPU、302…メモリ
305…ディスプレイ
240…ロボットシステム計画部、241…Dual Port RAM
242…ロボットシステム制御部
Claims (3)
- 入力された3次元自由曲面形状を有する研削対象物の設計データに基づいて研削対象物の3次元モデルを作成し、該作成された研削対象物の3次元モデルに対して、研削方向と交わる方向のピッチCpを、目的の研削量に対する砥石の形状、研削加工面に対する砥石の接触状態及び前記3次元モデルから算出される研削加工面の曲面の状態に応じて決定した格子点列で分割した格子点列データを作成し、該作成された格子点列データの各格子点に対して前記研削工具を近似した立体図形を、前記3次元モデルから算出される各格子点における法線ベクトルN及び研削方向を示す研削ベクトルV並びに各格子点における砥石と研削加工面の曲面の接線との成す角度である研削工具の接触角αop ’で付与される研削工具の姿勢で位置付けしながら移動させていって前記各立体図形が前記格子点列に含まれていないことによって前記研削対象物に対する前記研削工具の非干渉領域を算出し、該算出された研削工具の非干渉領域において、前記格子点列データと前記各格子点における前記研削工具の姿勢とに基づいて前記研削工具が前記研削対象物に対して研削加工するロボット機構の動作経路を算出するロボット機構の動作経路算出工程と、
該ロボット機構の動作経路算出工程で算出されたロボット機構の動作経路に基づいてロボット機構の駆動部を駆動制御し、手先部に取付けられた力検出手段から検出される研削工具の押付け力信号を用いた研削加工運動モデルに基づくコンプライアンス制御により前記切削工具が前記各格子点において前記研削工具の姿勢を取りながら前記研削対象物に対して倣って研削加工を施すロボット機構駆動制御工程とを有することをロボット機構制御方法。 - 前記ロボット機構駆動制御工程において、前記研削加工運動モデルに基づくコンプライアンス制御により、前記切削工具が前記研削対象物の研削加工面を倣う倣い速度vfが、研削対象物に対する接線方向の切削工具の送り速度vが得られるような前記切削工具が前記研削対象物に接触する接触点における研削対象物のベクトルである曲率半径sに応じた速度であることを特徴とする請求項1記載のロボット機構制御方法。
- 前記ロボット機構の動作経路算出工程において、更に、前記格子点列データ及び前記各格子点における研削工具の姿勢をロボット座標系に変換し、該変換されたロボット座標系での格子点列データ及び該ロボット座標系での各格子点における研削工具の姿勢に基づいてロボット機構の稼動できる範囲において少なくとも手先部について研削対象物に対する干渉チェックを行って、前記研削工具が前記研削対象物に対して研削加工するロボット機構の動作経路を算出することを特徴とする請求項1記載のロボット機構制御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP03660495A JP3670700B2 (ja) | 1994-04-27 | 1995-02-24 | ロボット機構制御方法 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP8939694 | 1994-04-27 | ||
JP6-89396 | 1994-04-27 | ||
JP03660495A JP3670700B2 (ja) | 1994-04-27 | 1995-02-24 | ロボット機構制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0816225A JPH0816225A (ja) | 1996-01-19 |
JP3670700B2 true JP3670700B2 (ja) | 2005-07-13 |
Family
ID=26375681
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP03660495A Expired - Fee Related JP3670700B2 (ja) | 1994-04-27 | 1995-02-24 | ロボット機構制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3670700B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101269303B1 (ko) * | 2012-08-13 | 2013-05-29 | 최병근 | 표면 처리 장치 |
Families Citing this family (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3749970B2 (ja) * | 2001-11-15 | 2006-03-01 | 株式会社池貝 | ワークの曲面加工システム及び曲面加工方法 |
CN100462675C (zh) * | 2005-12-23 | 2009-02-18 | 鸿富锦精密工业(深圳)有限公司 | 三次元离线扫描编程系统及方法 |
ITBG20070006A1 (it) * | 2007-01-18 | 2008-07-19 | Costanzo Perico | Gruppo per la finitura di una superficie tridimensionale di un manufatto e macchina comprendente tale gruppo. |
JP2009274191A (ja) * | 2008-05-17 | 2009-11-26 | National Univ Corp Shizuoka Univ | 作業用ロボットおよび同作業用ロボットに適用されるコンピュータプログラム |
JP5399331B2 (ja) * | 2010-06-30 | 2014-01-29 | 株式会社ナガセインテグレックス | ワークの研削加工方法及び研削盤、それに用いる移動経路データの演算プログラム並びにその記憶媒体 |
JP5505138B2 (ja) * | 2010-07-05 | 2014-05-28 | 株式会社安川電機 | ロボット装置およびロボット装置による把持方法 |
JPWO2013057788A1 (ja) * | 2011-10-18 | 2015-04-02 | 株式会社安川電機 | 作業ユニットおよび作業ユニット作製方法 |
CN102922388B (zh) * | 2012-11-01 | 2015-11-25 | 上海交通大学 | 大口径复杂光学镜面精密研抛机器人系统 |
JP6209392B2 (ja) * | 2013-08-12 | 2017-10-04 | Dmg森精機株式会社 | 干渉確認装置 |
CN103878666B (zh) * | 2014-03-28 | 2016-06-29 | 中国科学院自动化研究所 | 一种自由曲面机器人打磨系统 |
JP6390832B2 (ja) * | 2014-06-18 | 2018-09-19 | 株式会社Ihi | 加工軌道生成装置と方法 |
FR3030338B1 (fr) * | 2014-12-23 | 2019-05-03 | Institut De Recherche Technologique Jules Verne | Procede et dispositif pour la preparation a l’assemblage d’une piece de grandes dimensions |
CN104858712B (zh) * | 2015-04-10 | 2017-09-22 | 深圳市圆梦精密技术研究院 | 曲面零件的加工方法及曲面零件的加工设备 |
JP2017177280A (ja) * | 2016-03-30 | 2017-10-05 | 株式会社Ihi | ロボットシステム及びその制御方法 |
CN106808357A (zh) * | 2017-01-20 | 2017-06-09 | 广东省智能制造研究所 | 胚体表面打磨装置与方法 |
CN107052950B (zh) * | 2017-05-25 | 2018-10-12 | 上海莫亭机器人科技有限公司 | 一种复杂曲面打磨抛光系统及方法 |
US20180348730A1 (en) * | 2017-06-01 | 2018-12-06 | X Development Llc | Automatic Generation of Toolpaths |
CN107225461A (zh) * | 2017-06-06 | 2017-10-03 | 武汉理工大学 | 一种基于在线测量的汽车铸锻件飞边自动打磨系统及工艺 |
FR3067957B1 (fr) * | 2017-06-26 | 2020-10-23 | Capsix | Dispositif de gestion des deplacements d'un robot et robot de soin associe |
JP6585666B2 (ja) | 2017-07-03 | 2019-10-02 | ファナック株式会社 | 速度一定が要求されるアプリケーションにおいて学習制御を行うロボット及びその制御方法 |
CN107263255A (zh) * | 2017-08-02 | 2017-10-20 | 无锡中车时代智能装备有限公司 | 大型叶片类工件机器人协同打磨系统及方法 |
JP7332015B2 (ja) * | 2018-10-04 | 2023-08-23 | 株式会社大林組 | 建築作業装置および建築作業方法 |
JP7215056B2 (ja) * | 2018-10-04 | 2023-01-31 | 株式会社大林組 | 建築作業装置および建築作業方法 |
CN109533458A (zh) * | 2018-12-21 | 2019-03-29 | 广东赛德英斯智能装备有限公司 | 一种种类自适应式物品柔触抓取方法及实现该方法的装置 |
JP6653777B1 (ja) | 2019-02-01 | 2020-02-26 | 株式会社大気社 | 自動研磨システム |
CN110549177B (zh) * | 2019-07-25 | 2021-08-17 | 上海航天设备制造总厂有限公司 | 一种回转体表面的机器人打磨装备与方法 |
CN110625629B (zh) * | 2019-10-29 | 2023-05-02 | 中国科学院长春光学精密机械与物理研究所 | 一种大口径光学复杂曲面的立式加工检测集成方法 |
JP2021133470A (ja) | 2020-02-28 | 2021-09-13 | セイコーエプソン株式会社 | ロボットの制御方法およびロボットシステム |
JP2021154439A (ja) | 2020-03-27 | 2021-10-07 | セイコーエプソン株式会社 | 教示方法 |
CN112223009B (zh) * | 2020-09-03 | 2021-12-21 | 山东科技大学 | 一种可一次完成非球面曲面加工与测量的精密装置 |
JP2022066034A (ja) * | 2020-10-16 | 2022-04-28 | 新東工業株式会社 | 自動研磨システム及び自動研磨装置 |
CN112454001A (zh) * | 2020-10-27 | 2021-03-09 | 沈阳透平机械股份有限公司 | 一种二元叶轮的加工方法 |
CN112809167B (zh) * | 2020-12-31 | 2022-06-07 | 哈尔滨工业大学 | 一种用于大曲率管件全位置焊接的机器人焊缝跟踪方法 |
JP2023017417A (ja) * | 2021-07-26 | 2023-02-07 | 株式会社日立製作所 | 位置ずれ算出装置及び位置ずれ算出方法 |
CN114029970B (zh) * | 2021-10-13 | 2023-08-22 | 河钢工业技术服务有限公司 | 一种钢卷端面检测机器人及其路径规划方法 |
CN115570573B (zh) * | 2022-12-07 | 2023-03-17 | 广东省科学院智能制造研究所 | 一种机器人高性能涂胶轨迹规划方法、介质及系统 |
CN116587268B (zh) * | 2023-04-14 | 2024-01-23 | 大连理工大学 | 一种空间大面域机器人铣削加工精度提升方法 |
CN117066966B (zh) * | 2023-10-17 | 2023-12-15 | 中国航发沈阳黎明航空发动机有限责任公司 | 整体叶环空间曲面接刀余量量化及角向调整的加工方法 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5775295A (en) * | 1980-10-28 | 1982-05-11 | Kawasaki Steel Corp | Method for correction of weld zone |
SE456977B (sv) * | 1985-06-14 | 1988-11-21 | Asea Ab | Robotutrustning foer utfoerande av en arbetsoperation paa ett objekt |
JPS6273307A (ja) * | 1985-09-26 | 1987-04-04 | Toshiba Corp | ロボツトの制御装置 |
JPS637268A (ja) * | 1986-06-25 | 1988-01-13 | Inoue Japax Res Inc | 研削装置 |
JPS6324305A (ja) * | 1986-07-16 | 1988-02-01 | Honda Motor Co Ltd | 工具通路デ−タの作成方法 |
JP3217351B2 (ja) * | 1990-06-07 | 2001-10-09 | 株式会社東芝 | 力制御装置及びそれを用いたロボット |
JP3020986B2 (ja) * | 1990-03-13 | 2000-03-15 | 株式会社日立製作所 | 多自由度ロボットの制御方法 |
JPH07104703B2 (ja) * | 1990-09-28 | 1995-11-13 | ヤマハ株式会社 | ロボットの教示装置 |
JPH0629684B2 (ja) * | 1990-11-30 | 1994-04-20 | 工業技術院長 | 触覚センサ |
JP3340143B2 (ja) * | 1991-09-27 | 2002-11-05 | マツダ株式会社 | 研磨ツールの制御装置 |
JPH0588720A (ja) * | 1991-09-27 | 1993-04-09 | Yaskawa Electric Corp | ロボツトの原点位置復帰制御方法とその装置 |
JPH05143146A (ja) * | 1991-09-30 | 1993-06-11 | Yamaha Corp | ロボツトの教示装置 |
JP3166981B2 (ja) * | 1992-02-21 | 2001-05-14 | 株式会社日立製作所 | バリ取り/磨き経路教示データ生成方法およびバリ取り/磨きロボット制御方法、並びにバリ取り/磨きロボットシステム |
JPH05165509A (ja) * | 1991-12-12 | 1993-07-02 | Hitachi Ltd | バリ取りロボットの経路生成方法 |
-
1995
- 1995-02-24 JP JP03660495A patent/JP3670700B2/ja not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101269303B1 (ko) * | 2012-08-13 | 2013-05-29 | 최병근 | 표면 처리 장치 |
Also Published As
Publication number | Publication date |
---|---|
JPH0816225A (ja) | 1996-01-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3670700B2 (ja) | ロボット機構制御方法 | |
Huang et al. | SMART robotic system for 3D profile turbine vane airfoil repair | |
CN107052950B (zh) | 一种复杂曲面打磨抛光系统及方法 | |
EP1592536B1 (en) | A method and a system for programming an industrial robot to move relative to defined positions on an object, including generation of a surface scanning program | |
CN104858748B (zh) | 一种叶片进排气边磨削机器人自动化装备 | |
Nagata et al. | CAD/CAM-based position/force controller for a mold polishing robot | |
Shi et al. | Improving surface quality of selective laser sintered rapid prototype parts using robotic finishing | |
US20050159840A1 (en) | System for surface finishing a workpiece | |
JP5720876B2 (ja) | 加工ロボット及びその重力補償方法 | |
JP6418483B2 (ja) | 加工軌道生成装置と方法 | |
CN114454060B (zh) | 一种机器人自适应曲面跟踪恒力磨抛方法及系统 | |
JPH01271102A (ja) | 非円形断面体ワーク加工用工作機械及びその制御方法 | |
Yang et al. | The effect of characteristics of free-form surface on the machined surface topography in milling of panel mold | |
JP6390832B2 (ja) | 加工軌道生成装置と方法 | |
CN113932753A (zh) | 一种轮毂法兰盘打磨的轮廓标定方法 | |
JP6323744B2 (ja) | 研磨ロボットとその制御方法 | |
Lin et al. | Research on arc-shaped wheel wear and error compensation in arc envelope grinding | |
Wen et al. | Robotic surface finishing of curved surfaces: Real-Time identification of surface profile and control | |
JP2021186929A (ja) | 多軸ロボットの制御方法 | |
Tian et al. | Research on robotic automatic machining for welding groove of complex integral impeller | |
JP7035467B2 (ja) | 加工装置 | |
JPH07210230A (ja) | 力制御ロボットによるパイプ表面の倣い制御方法 | |
JPH0698567B2 (ja) | 自由曲面加工機 | |
JPH09267282A (ja) | 多関節ロボットの作業対象物位置検出装置 | |
Chen et al. | An automated 3D polishing robotic system for repairing turbine airfoils |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040123 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040203 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040402 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20041228 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050228 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20050412 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050415 |
|
LAPS | Cancellation because of no payment of annual fees |