(57)【特許請求の範囲】
【請求項１】
工具軌跡を示す点列の各点の指令位置データと指令送り速度データとを用いて状態量を算出する状態量演算部と、
前記状態量を該状態量に対応する所定の閾値と比較し、前記状態量が前記閾値よりも大きい場合に、前記閾値比較を満足する前記各点列での工具の通過速度を算出する通過速度決定部と、
を備える速度制御装置において、
前記状態量演算部は、前記点列の各点の前記指令位置データにおける連続する４点について、該４点のうちの前半の２点を結ぶ速度ベクトルと、後半の２点を結ぶ速度ベクトルとの差を算出し、該算出した速度ベクトル差を用いて前記状態量を算出し、
前記通過速度決定部は、前記４点の前半２点の後半側と後半２点の前半側との２点間での工具の通過速度を算出することを特徴とする速度制御装置。
【請求項２】
工具軌跡を示す点列の各点の指定位置データと指令送り速度データとを用いて状態量を算出する状態量演算部と、
前記状態量を該状態量に対応する所定の閾値と比較し、前記状態量が前記閾値よりも大きい場合に、前記閾値比較を満足する前記各点列での工具の通過速度を算出する通過速度決定部と、
を備える速度制御装置において、
前記状態量演算部は、前記点列の各点の前記指令位置データにおける連続する４点について、該４点のうちの前半の２点を結ぶ速度ベクトルと後半の２点を結ぶ速度ベクトルとサンプリング周期とから求めた前記４点での工具の加速度を前記状態量として算出し、
前記閾値は、機械に設定された許容加速度であり、
前記通過速度決定部は、前記４点の前半２点の後半側と後半２点の前半側との２点間での工具の通過速度を算出することを特徴とする速度制御装置。
【請求項３】
工具軌跡を示す点列の各点の指令位置データと指令送り速度データとを用いて状態量を算出する状態量演算部と、
前記状態量を該状態量に対応する所定の閾値と比較し、前記状態量が前記閾値よりも大きい場合に、前記閾値比較を満足する前記各点列での工具の通過速度を算出する通過速度決定部と、
を備える速度制御装置において、
前記状態量演算部は、前記点列の各点の前記指令位置データにおける連続する４点について、該４点のうちの前半の２点を結ぶ速度ベクトルと後半の２点を結ぶ速度ベクトルとのなす角度を前記状態量として算出し、
前記閾値は、前記角度に関する閾値角度であり、
前記通過速度決定部は、前記４点の前半２点の後半側と後半２点の前半側との２点間での工具の通過速度を算出することを特徴とする速度制御装置。
【請求項４】
前記状態量は、４点の前半２点を結ぶ速度ベクトルと後半の２点を結ぶ速度ベクトルとの差である速度ベクトル差であることを特徴とする請求項１に記載の速度制御装置。
【請求項５】
工具軌跡を示す点列の各点の指令位置データと指令送り速度データとを用いて状態量を算出する第１ステップと、
前記状態量を該状態量に対応する所定の閾値と比較し、前記状態量が前記閾値よりも大きい場合に、前記閾値比較を満足する前記各点列での工具の通過速度を算出する第２ステップと、
を備える速度制御方法において、
前記第１ステップでは、前記点列の各点の前記指令位置データにおける連続する４点について、該４点のうちの前半の２点を結ぶ速度ベクトルと、後半の２点を結ぶ速度ベクトルとの差を算出し、該算出した速度ベクトル差を用いて前記状態量を算出し、
前記第２ステップでは、前記４点の前半２点の後半側と後半２点の前半側との２点間での工具の通過速度を算出することを特徴とする速度制御方法。
【請求項６】
工具軌跡を示す点列の各点の指定位置データと指令送り速度データとを用いて状態量を算出する第１ステップと、
前記状態量を該状態量に対応する所定の閾値と比較し、前記状態量が前記閾値よりも大きい場合に、前記閾値比較を満足する前記各点列での工具の通過速度を算出する第２ステップと、
を備える速度制御方法において、
前記第１ステップでは、前記点列の各点の前記指令位置データにおける連続する４点について、該４点のうちの前半の２点を結ぶ速度ベクトルと後半の２点を結ぶ速度ベクトルとサンプリング周期とから求めた前記４点での工具の加速度を前記状態量として算出し、
前記第２ステップでは、前記閾値を機械に設定された許容加速度とし、前記４点の前半２点の後半側と後半２点の前半側との２点間での工具の通過速度を算出することを特徴とする速度制御方法。
【請求項７】
工具軌跡を示す点列の各点の指令位置データと指令送り速度データとを用いて状態量を算出する第１ステップと、
前記状態量を該状態量に対応する所定の閾値と比較し、前記状態量が前記閾値よりも大きい場合に、前記閾値比較を満足する前記各点列での工具の通過速度を算出する第２ステップと、
を備える速度制御方法において、
前記第１ステップでは、前記点列の各点の前記指令位置データにおける連続する４点について、該４点のうちの前半の２点を結ぶ速度ベクトルと後半の２点を結ぶ速度ベクトルとのなす角度を前記状態量として算出し、
前記第２ステップでは、前記閾値を前記角度に関する閾値角度とし、前記４点の前半２点の後半側と後半２点の前半側との２点間での工具の通過速度を算出することを特徴とする速度制御方法。
【請求項８】
前記状態量は、４点の前半２点を結ぶ速度ベクトルと後半の２点を結ぶ速度ベクトルとの差である速度ベクトル差であることを特徴とする請求項５に記載の速度制御方法。
【請求項９】
請求項５〜８のいずれか一つに記載された方法をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ＮＣ工作機械やロボットなどを用いて自由曲面を加工する際に、工具の移動経路が急激に変化する箇所のコーナー位置などの通過速度を制限すべき箇所で確実に工具の通過速度を制限できるようにした速度制御装置、速度制御方法およびその方法をコンピュータに実行させるプログラムに関するものである。
【０００２】
【従来の技術】
金型のような自由曲面を有する形状を、数値制御（ＮＣ）工作機械で加工する場合、自由曲線を微少区間に分割して微少線分データとし、これらの線分データを用いて移動経路を補間し制御する方法が用いられている。
【０００３】
このような手法では、指令データであるＮＣプログラムは、指令送り速度と、微小線分データ（ブロック）の連続で構成される。ＮＣ制御装置では、各微小線分データを解析して、機械の許容加速度内で軌跡に追従できるかどうかを判断し、必要に応じて指令送り速度以下に通過速度（送り速度）を制限する処理を行う。
【０００４】
このように通過速度を制限する方法は、例えば特開平２−１３７００６号公報あるいは特開平３−８４６０４号公報に示されている。
【０００５】
これらの公報に示された従来技術においては、連続する３点における第１点から第２点への速度ベクトルと第２点から第３点への速度ベクトルを用いて連続する２つの速度ベクトル差を求めるか、あるいは連続する２つのブロックの各ベクトルを用いて連続する２つの速度ベクトル差を求め、該求めた速度ベクトル差から加速度を求め、該求めた加速度を機械の許容加速度と比較することで、速度差を評価し、許容加速度の条件を満たしていない場合は、通過速度を制限するようにしている。このように、通過速度を制限することを「クランプする」といい、クランプされる位置をクランプ位置、クランプされた通過速度をクランプ速度と呼ぶ。
【０００６】
上記手法によって通過速度を決定した後、クランプ位置が現在点から所定距離以上の場合には、減速する必要がないので、指令速度ｆ×サンプリング時間Δtで表される移動量（ｆ×Δｔ）で微小線分ブロックを補間することを続け、クランプ位置を所定距離以内で検出したら、クランプ位置においてクランプ速度で通過できるように加減速器によって、前もってクランプ点の手前からサンプリング周期毎に許容加速度内で減速して、加減速処理を施した速度ｆ´×Δｔで表される移動量で微小線分ブロックを補間する。
【０００７】
このように、現在のＮＣ等のサーボシステム制御装置には、指令された軌跡形状を何らかの手段で評価して通過速度を決定する機能が搭載されている。
【０００８】
【発明が解決しようとする課題】
ところで、金型加工のように加工面の滑らかさや連続性が重要視される場合には、所定の送りピッチ（ピックフィード）で隣り合う軌跡の連続的な変化が求められる。このためには、例えば一方の軌跡上にある点Ｐiがコーナーと判定されて減速されるならば、微小送りピッチで隣り合う軌跡のＰi付近の点Ｑiでも、同様にコーナーと判定されて減速させる必要がある。
【０００９】
前記したように、ＮＣ工作機械を動作させるには、ＮＣプログラムを作成する必要があり、金型を対象とする場合には、ＮＣ装置外部のＣＡＭ（Computer Aided Manufacturing）システムでＮＣプログラムを作成するのが一般的である。ＣＡＭシステムでは、理想的には自由曲線である軌跡をユーザーが所望するトレランスを守る範囲で、微小線分に分割したブロックを生成するが、常にコーナー位置から等距離の位置にブロック点が生成されるわけではなく、またコーナー位置にブロック点が出力されるわけでもないので、点列（ブロック点列）の位置や間隔にばらつきがあるのが普通である。このように、ＣＡＭなどの指令軌跡生成装置で生成された指令点列では、工具の移動経路が急激に変化する箇所のコーナー位置に必ずしもブロック点が設定されるとは限らない。
【００１０】
しかしながら、上記した従来技術では、２つのブロック（連続する３点）から、連続する２つの速度ベクトル差を求め、該求めた速度ベクトル差を用いて加速度を求めるようにしているので、指令のされ方によってはコーナー位置（角部）を逃してしまう可能性があり、加速度を過小評価することがあり、減速が必要な箇所で減速が行われない可能性がある。このような事態に対処するためには、減速と判定するための、加速度比較の閾値を小さめに設定しなくてはならず、そうした場合は、移動経路の変化が小さな箇所でも減速することがあり、効率の良い加工をなし得ない。
【００１１】
図３は、隣り合う２つの点列を示すものであり、この図３を用いて従来技術の不具合を説明する。この場合、点列Ｐi-1，Ｐi，Ｐi+1，Ｐi+2と、隣り合う点列Ｑi-1，Ｑi，Ｑi+1，Ｑi+2に対する指令送り速度は同じとして、上記従来手法を用いて連続する２つのブロック（連続する３点）から、通過速度を決定するとする。点Ｐi-1からＰiへの速度ベクトルＶi-1と、点Ｐiから点Ｐi+1への速度ベクトルＶiとを用いて加速度を求めると、速度ベクトルＶi-1と速度ベクトルＶiとの速度ベクトル差は大きいので、求められた加速度は許容加速度を超え、通過速度は制限される。一方、点Ｑi-1から点Ｑiへの速度ベクトルＵi-1と、点Ｑiから点Ｑi+1への速度ベクトルＵiとで加速度を求めると、速度ベクトルＵi-1と速度ベクトルＵiとの速度ベクトル差は小さいので、求められた加速度は許容加速度を超えず、通過速度は制限されない。
【００１２】
このように、従来技術では、隣り合う移動経路の形状がほぼ同じであるにも係わらず、一方の経路のコーナーは減速が行われ、他方の経路のコーナーは減速が行われないといった制御が行われてしまう。
【００１３】
なお、上記の説明では、加速度と許容加速度を比較することで通過速度を制限するか否かを判断する例を示しているが、通過速度の評価方法には、他に、２つの速度ベクトル差と機械に設定された許容速度差を比較する手法や、２つの速度ベクトルの成す角度と閾角度とを比較する手法などがあり、このような手法を用いた場合でも同様の問題が起きる。なぜなら、速度差による手法の場合でも、ベクトルの成す角度による手法の場合でも、移動方向がどれほど変化するかに依存するためである。勿論、通過速度が制限されるか否かは、加速度比較の場合と同様、許容速度差、閾角度の値に依存するが、実際に数値制御装置等に前記従来技術を適用する場合には、点列位置や点間隔のばらつきを考慮して、例えば閾角度は５度や１０度等かなり低めに設定されているのが一般的である。しかし、閾角度を低く設定すると、前述したように、滑らかな曲線軌跡を近似表現した微小ブロックに対してもコーナーと判定してしまって減速し、結果として加工時間が無駄に長くなるという問題が起こる。
【００１４】
この発明は上記に鑑みてなされたもので、進行方向の変化量を確実に捕らえ、隣り合う移動軌跡で配置の異なる点列に対しても通過速度の決定が同じように行うことができる速度制御装置、速度制御方法およびその方法を実行するためのプログラムを得ることを目的としている。
【００１５】
【課題を解決するための手段】
上記目的を達成するためこの発明にかかる速度制御装置は、工具軌跡を示す点列の各点の指令位置データと指令送り速度データとを用いて状態量を算出する状態量演算部と、
前記状態量を該状態量に対応する所定の閾値と比較し、前記状態量が前記閾値よりも大きい場合に、前記閾値比較を満足する前記各点列での工具の通過速度を算出する通過速度決定部とを備える速度制御装置において、前記状態量演算部は、前記点列の各点の前記指令位置データにおける連続する４点について、該４点のうちの前半の２点を結ぶ速度ベクトルと、後半の２点を結ぶ速度ベクトルとの差を算出し、該算出した速度ベクトル差を用いて前記状態量を算出し、前記通過速度決定部は、前記４点の前半２点の後半側と後半２点の前半側との２点間での工具の通過速度を算出することを特徴としている。
【００３２】
【発明の実施の形態】
以下に添付図面を参照して、この発明にかかる速度制御装置、速度制御方法およびその方法を実行するためのプログラムの好適な実施の形態を詳細に説明する。
【００３３】
実施の形態１.
図１はこの発明の実施の形態１の一例を示すブロック図である。本発明の速度制御装置は数値制御装置、ロボット制御装置等の一部として制御装置に組み込まれるが、図１ではこれらの制御装置の機能のうち本発明の特徴を示すのに必要な最低限の機能部分のみを示してある。すなわち、この実施形態１では、速度制御装置は、点列出力部１０、速度差依存状態量算出部２０、点列バッファ３０および通過速度決定部４０を備えている。
【００３４】
点列出力部１０には、外部のＣＡＭシステム（図示せず）あるいは前記制御装置内部の図示しない軌跡データ作成部などから、工具軌跡を示す点列の各点の指令位置データ（軌跡データ）Ｐと、指令送り速度データｆとが入力される。外部ＣＡＭシステムでは、軌跡データ、指令送り速度などを作成して、これらを指令データ出力部を介して点列出力部１０に入力する。制御装置内部の軌跡データ作成部では、曲面モデルと工具モデルから軌跡データを作成し、作成した軌跡データあるいは設定された指令送り速度などを点列出力部１０に入力する。点列出力部１０は、入力された点列の各点の指令位置データ（軌跡データ）Ｐおよび指令送り速度データｆとを、逐次、速度差依存状態量算出部２０に出力する。
【００３５】
速度差依存状態量算出部２０は、本発明の主要部の構成要素であり、少なくとも４点の点列データ（指令位置データ）を記憶できる点列バッファ３０を有し、該点列バッファ３０に記憶された４点の指令位置データおよび指令送り速度データｆを用いて、２つの速度ベクトルの差を算出する。この速度ベクトル差を求めるにあたって、点列バッファ３０に記憶している４点の指令位置データのうち、前半の２点を結ぶ速度ベクトルと後半の２点を結ぶ速度ベクトルの２つの速度ベクトルを算出し、求めた２つの速度ベクトルの差を算出する。
【００３６】
すなわち、図３に示す、点列Ｐi-1，Ｐi，Ｐi+1，Ｐi+2の場合は、前半の２点Ｐi-1からＰiへのベクトルＶi-1と、後半の２点Ｐi+1からＰi+2へのベクトルＶi+1を算出する。また、隣り合う点列Ｑi-1，Ｑi，Ｑi+1，Ｑi+2の場合は、前半の２点Ｑi-1からＱiへのベクトルＵi-1と、後半の２点Ｑi+1からＱi+2へのベクトルＵi+1を算出する。
【００３７】
ここで、速度差依存状態量算出部２０は、この場合は、通過速度を制限するか否かを判断するための状態値として、２つの速度ベクトルについての加速度ａを採用しているものとする。速度差依存状態量算出部２０は、前記求めた速度ベクトル差と、この区域に指令されている送り速度ｆと、この区域のサンプリング周期Δｔを用い、例えば次のような式（１）によってこの区域で発生する現在の加速度ａを求める。
ａ＝ｆ・｜ｖi+1−ｖi-1｜／Δｔ        …（１）
なお、上式（１）において、ｖi-1は前半の速度ベクトルＶi-1を単位化したベクトルであり、ｖi+1は後半の速度ベクトルＶi+1を単位化したベクトルである。
【００３８】
隣り合う軌跡に関しても、先に求めた前記速度ベクトルＵi-1，Ｕi+1について、それぞれを単位化したベクトルｕi-1、ｕi+1を求め、上式（１）にしたがって現在の加速度ａを求める。
【００３９】
そして、速度差依存状態量算出部２０は、このようにして求めた加速度ａを通過速度制限の有無を決定するための状態量として、通過速度決定部４０に入力する。
【００４０】
通過速度決定部４０は、得られた加速度ａと予め設定された許容加速度amaxを比較し、ａ＞amaxである場合、例えば、次式（２）に従って通過速度（送り速度）を制限し、許容加速度amaxで通過できる通過速度ｆlimitを求める。
ｆlimit＝amax・Δｔ／｛２（１−ｖi-1・ｖi+1）｝1/2…（２）
【００４１】
隣り合う軌跡に関しても、入力された加速度ａを許容加速度amaxと比較し、加速度ａが許容加速度amaxよりも大きい場合に、上式（２）にしたがって通過速度ｆlimitを求める。このような処理を４つの点毎に繰り返す。
【００４２】
通過速度決定部４０は、このようにして得られた通過速度ｆlimitを、軌跡データとともに、図示しないサーボシステム制御装置に出力する。サーボシステム制御装置では、軌跡データの示す各々の位置において、入力された通過速度ｆlimitを守るように各軸についての加減速処理を行い、加減速処理を施した速度とサンプリング周期Δｔから単位時間あたりの移動量を算出する補間処理を行った後、１〜複数の軸のサーボモータを駆動する。
【００４３】
このようにこの実施の形態１においては、連続する４点についての指令位置データを用い、該４点のうちの前半の２点を結ぶ速度ベクトルと、後半の２点を結ぶ速度ベクトルとの差を算出し、該算出した速度ベクトル差を用いて該速度ベクトル差に依存する状態量（この場合は加速度ａ）を算出するようにしており、これにより、図２および図３を比較すれば明らかなように、前半の２点のうちの後半側の１点ＰiまたはＱiと、後半の２点のうちの前半側の１点Ｐi+1またはＱi+1との間に角（コーナー）があることを想定した評価をなし得る。したがって、指令された点列の間隔や配置に左右されずに、速度の変化方向を確実に捉えることができ、通過速度を制限すべき個所で確実に通過速度を制限することができるようになる。
【００４４】
また、図２から判るように、ｖi-1とｖi+1の内積と、ｕi-1とｕi+1の内積は、点線で示す理想軌跡が同一形状であれば一致するため、これらの区域が同じ通過速度となることは明らかである。また、隣り合う軌跡形状が連続的に変化していく場合にも４点から求めたベクトルの内積は連続的に変化していくため、通過速度も連続的に変化する。
【００４５】
なお、速度差依存状態量算出部２０において、通過速度制限の有無を決定するための状態量として、２つの速度ベクトルのなす角度θあるいは速度ベクトル差自体Δｆを用いてもよい。
【００４６】
状態量として、２つの速度ベクトルのなす角度θを用いた場合は、通過速度決定部４０では、この角度θを閾値角度θmaxと比較し、θ＞θmaxである場合に通過速度の制限を行う。
【００４７】
また、状態量として、速度ベクトル差Δｆを用いた場合は、通過速度決定部４０では、この速度ベクトル差Δｆを許容速度差Δｆmaxと比較し、Δｆ＞Δｆmaxである場合に通過速度の制限を行う。
【００４８】
また、上記説明では、加速度ａを式（１）によって求め、制限する通過速度ｆlimitを式（２）によって算出したが、他の任意の算出式によって加速度ａ、通過速度ｆlimit、さらには速度差Δｆ、速度ベクトルの成す角度θを求めても、本発明の特徴である４点の位置データを用いる通加速度の制限処理を用いる効果が発揮されるのは明らかである。
【００４９】
実施の形態２．
つぎに、この発明の実施の形態２について説明する。本出願人は、特願２０００−６４２３５号において、曲面モデルと使用工具モデルから直接サーボ指令値を生成するシステムを既に出願している。この出願においては、現在補間点が補間している位置より所定量先行して評価点が生成されていき、評価点が生成されたパラメータと評価点間の距離を用いて次の補間点を求める区間を決定し、２つの評価点の間で曲面モデルと工具モデルから直接補間点を生成する発明が示されている。
【００５０】
この出願に示されたシステムでは、評価点を用いて通過速度の判定および決定を行うが、補間時に評価点間を結んだ直線上に補間点を算出するのではなく、曲面と工具モデルから直接補間点を求めるため、通過速度の判定時には、評価点間に形状が急峻に変化することを見越した評価を行わねばならない。そこで、この特願２０００−６４２３５号において示されている曲面モデルと使用工具モデルから直接サーボ指令値を生成するシステムにおいて、本発明を適用すれば、補間時にも安全な通過速度決定を行うことが可能になる。
【００５１】
なお、上記した手法をプログラム化し、コンピュータに実行させるようにすれば、そのプログラムがコンピュータ読み取り可能となり、これによって、上記の手法をコンピュータによって実行することができる。
【００５２】
【発明の効果】
以上説明したように、この発明によれば、連続する４点についての指令位置データを用い、該４点のうちの前半の２点を結ぶ速度ベクトルと、後半の２点を結ぶ速度ベクトルとの差を算出し、該算出した速度ベクトル差を用いて該速度ベクトル差に依存する状態量を算出するようにしており、これにより前半の２点のうちの後半側の１点と、後半の２点のうちの前半側の１点との間に角があることを想定した評価をなし得るので、指令された点列の間隔や配置に左右されずに、速度の変化方向を確実に捉えることができ、通過速度を制限すべき個所で確実に通過速度を制限することができる。さらに隣り合う軌跡が同一の場合には通過速度を一致させることが可能になる。
【図面の簡単な説明】
【図１】  この発明にかかる速度制御装置の実施の形態１の構成を示すブロック図である。
【図２】  隣り合う軌跡における通過速度判定の２つの速度ベクトルを示す図である。
【図３】  点列データおよび速度ベクトルを示す図である。
【符号の説明】
１０  点列出力部、２０  速度差依存状態量算出部、３０  点列バッファ、４０  通過速度決定部。
【図１】
0004118538.tif 000002
【図２】
0004118538.tif 000003
【図３】
0004118538.tif 000004