説明

工作機械の数値制御装置

【課題】効率的な空間補正を可能にすることにより、従来と比較して高精度に位置決め誤差を補正する工作機械の数値制御装置を提供することを目的とする。
【解決手段】数値制御装置1は、可動領域Taを格子状に分割した複数の単位格子Sを記憶する単位格子記憶手段11と、格子点Pgにおける位置決め誤差の補正データを格子点Pgに関連付けて記憶する補正データ記憶手段12と、1または複数の単位格子Sにより形成される移動領域Tmを取得する移動領域取得手段13と、移動領域Tmに含まれる格子点Pgと補正データ記憶手段12に記憶される補正データとに基づいて、NCデータの指令位置に対する補正値を算出する補正値算出手段14と、NCデータと補正値とに基づいて駆動軸を制御する制御手段21と、を備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、複数の駆動軸を動作させる工作機械の数値制御装置に関する。
【背景技術】
【0002】
工作機械は、入力されたNCデータに基づいて数値制御装置が複数の駆動軸を動作させることにより、工作物の加工を行う。このような工作機械の駆動軸は、NCデータの指令位置に対して実際に位置決めされた位置との差分である位置決め誤差が生じることがある。駆動軸の位置決め誤差は、機械構成または加工中における熱変位などに起因するものである。また、駆動軸の位置決め誤差は、工作物の加工精度に影響することから、その誤差量に応じて補正することが望まれる。
【0003】
そこで、位置決め誤差を補正する方法として、例えば特許文献1には、実際に加工された工作物について、指令位置とのずれ量を実測し、このずれ量に基づいてNCデータを補正するものが開示されている。また、例えば特許文献2には、格子状に分割した空間において、格子点に応じた補正データ(補正ベクトル)とNCデータによる移動指令とに基づいて、駆動軸の動作を補正する空間補正が開示されている。
【0004】
このような位置決め誤差の空間補正では、先ず、各駆動軸の軸方向に一定間隔の格子状領域に分割し、この格子状領域の格子点に対して補正ベクトルを関連付けて記憶している。次に、NCデータの指令位置に対応する単位格子(指令位置が含まれる最小の格子)を検索する。続いて、この単位格子を構成する格子点に関連付けられた各補正ベクトルと、NCデータの指令位置とに基づいて、当該指令位置における補正値を算出している。これにより、NCデータの指令位置に応じた補正値を算出し、位置決め誤差を補正できるものとされる。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開平7−72916号公報
【特許文献2】特開平8−152909号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
ここで、空間補正における3次元の単位格子は、例えば8箇所の格子点により構成される立方形状となる。そして、この単位格子の内部では単一のベクトル空間として扱われることになる。そのため、各格子点に基づいて算出された位置決め誤差の補正値は、単位格子の内部において一次的に変化するものとして近似されたものとなる。従って、例えば、NCデータが格子点から離間している位置を指令している場合には、格子点近傍の位置を指令した場合と比較して近似による誤差が大きくなるおそれがある。
【0007】
そこで、格子状領域における分割数を増加し単位格子を小さくすることにより、近似による誤差を低減することが考えられる。しかしながら、格子状領域における分割数を増加すると、工作機械の可動領域における格子点数が膨大となり、これに伴い補正値の算出に要する演算処理量が増大してしまう。そのため、工作機械の数値制御装置は、大量の補正データを記憶するとともに、増大した演算処理量を許容する処理能力を有する必要がある。よって、必要な分だけ格子状領域の分割数を増加できない場合や、数値制御装置のコストが増大してしまうことがあった。
【0008】
本発明は、上記課題を鑑みてなされたものであり、効率的な空間補正を可能にすることにより、従来と比較して高精度に位置決め誤差を補正する工作機械の数値制御装置を提供することを目的とする。
【課題を解決するための手段】
【0009】
上述した課題を解決するために、請求項1に係る発明によると、NCデータに基づいて複数の駆動軸を動作させる工作機械の数値制御装置において、
前記複数の駆動軸の可動領域を格子状に分割した複数の単位格子を記憶する単位格子記憶手段と、前記単位格子の頂点である格子点に前記駆動軸を位置決めした時の位置決め誤差の補正データを、それぞれの前記格子点に関連付けて記憶する補正データ記憶手段と、前記NCデータの指令位置を含む1または複数の前記単位格子により形成される移動領域を取得する移動領域取得手段と、前記移動領域に含まれる前記格子点と前記補正データ記憶手段に記憶される前記補正データとに基づいて、前記NCデータの指令位置に対する補正値を算出する補正値算出手段と、前記NCデータと前記補正値とに基づいて前記駆動軸を制御する制御手段と、を備える。
【0010】
請求項2に係る発明によると、請求項1において、前記移動領域取得手段は、前記NCデータの一部の指令位置を含む1または複数の前記単位格子により形成される前記移動領域を取得する。
【0011】
請求項3に係る発明によると、請求項2において、前記補正値算出手段が補正値算出処理により算出した前記補正値を一時的に格納する一次格納手段と、前記一次格納手段から移動された前記補正値を一時的に格納し、前記制御手段が前記駆動軸を制御する際に前記制御手段により前記補正値が取り出されると共に、前記制御手段により取り出された前記補正値が削除される二次格納手段と、前記一次格納手段に格納された前記補正値の格納容量が設定値に達した後に、前記一次格納手段から前記二次格納手段へ前記補正値を移動する補正値移動処理手段と、を備え、
前記補正値算出手段は、前記一次格納手段に格納される前記補正値の格納容量が前記設定値に達するまで、前記補正値算出処理を繰り返し行う。
【0012】
請求項4に係る発明によると、請求項1〜3の何れか一項において、前記移動領域取得手段は、前記移動領域の大きさが設定範囲に含まれるような前記NCデータの指令位置を取得し、当該NCデータの指令位置を含む前記移動領域を取得する。
【0013】
請求項5に係る発明によると、請求項1〜4の何れか一項において、前記工作機械の数値制御装置は、前記工作機械の温度を計測する温度計測手段を備え、
前記補正データ記憶手段は、前記工作機械の温度に応じた前記工作機械の熱変位補正データと前記位置決め誤差の補正データとを合算した総補正データを、それぞれの前記格子点に関連付けて記憶し、前記補正値算出手段は、前記移動領域に含まれる前記格子点と前記補正データ記憶手段に記憶される前記総補正データと前記温度計測手段により計測される前記工作機械の温度とに基づいて、前記補正値を算出する。
【発明の効果】
【0014】
請求項1に係る発明によれば、数値制御装置は、移動領域を取得した後に、当該移動領域に含まれる格子点に関連付けられた補正データを用いて、NCデータの補正値を算出する構成としている。ここで、従来の空間補正では、駆動軸の可動領域全体に含まれる格子点に関連付けられた補正データを用いてNCデータの補正値を算出していた。これに対して、本発明の数値制御装置は、上記の構成にすることによって、格段に演算処理量を低減できる。従って、補正データを記憶させる格子点の数を多くすることが可能となる。つまり、単位格子の大きさを非常に細かくすることができるので、その結果として、高精度な補正が可能となる。
【0015】
請求項2に係る発明によれば、移動領域取得手段は、NCデータの一部の指令位置を対象として移動領域を取得する。つまり、一度にNCデータ全体について補正値の算出を行うのではなく、NCデータの一部について補正値の算出を行うことを複数回に亘って行うようにする。これにより、補正値算出手段による1回の補正値算出処理において適用される移動領域の大きさを小さくすることができる。その結果、NCデータの補正値の算出に際しての演算処理量を確実に低減できる。
【0016】
請求項3に係る発明によれば、数値制御装置は、一次格納手段と二次格納手段に補正値を適宜移動させながら、補正値算出手段において補正値算出処理を行うようにしている。このような構成は、補正値算出手段による1回の補正値算出処理にて適用する移動領域の大きさをより小さくすることに寄与することになる。その結果、補正値算出に際しての演算処理量を確実に低減できる。さらに、補正値移動処理手段により補正値を移動する回数を低減することができる。これにより、補正値算出処理を行う時間を多く確保することができる。その結果、補正値算出手段は、短時間で高精度な補正値を算出することができる。
【0017】
請求項4に係る発明によれば、移動領域取得手段が取得した移動領域の大きさが常に設定範囲に含まれるようにできる。よって、補正値算出手段において、1回の補正値算出処理における演算処理量を一定の範囲内とすることができる。これにより、補正値算出処理において、メモリを許容負荷内で有効利用することができる。そして、補正値算出手段が使用するメモリにおける演算処理量の許容範囲内で、高精度な補正値を算出できるように、単位格子を設定することができる。その結果、数値制御装置は、高精度なNCデータの補正が可能となる。
【0018】
請求項5に係る発明によれば、補正データ記憶手段が熱変位補正を考慮した総補正データを記憶し、補正値算出手段が当該総補正データと工作機械の温度とに基づいて補正値を算出する構成としている。これにより、算出された補正値は、熱変位補正を考慮した値となる。よって、位置決め誤差および工作機械の熱変位を補正することができるため、工作機械の各駆動軸の高精度な位置決めが可能となる。
【図面の簡単な説明】
【0019】
【図1】工作機械の数値制御装置を示すブロック図である。
【図2】工作機械の可動領域における格子点および移動領域を示す図である。(a)は可動領域Taの一部を示す図であり、(b)は移動領域Tmを示す図であり、(c)は単位格子Sと指令位置Piを示す図である。
【図3】温度Tnにおける補正データを示す図である。
【図4】NCデータの空間補正および駆動軸の制御の関係を示すフロー図である。
【図5】移動領域算出処理を示すフロー図である。
【図6】補正値算出処理を示すフロー図である。
【図7】駆動軸制御処理を示すフロー図である。
【発明を実施するための形態】
【0020】
以下、本発明の工作機械の数値制御装置を具体化した実施形態について図面を参照して説明する。また、当該工作機械は、直交する3つの直進駆動軸(X,Y,Z軸)を有するものとして説明する。この工作機械は、これら複数の駆動軸を動作させることにより工作物の加工を行う。
【0021】
<実施形態>
(数値制御装置1の構成)
工作機械の数値制御装置1の構成について、図1〜図3を参照して説明する。数値制御装置1は、入力されたNCデータに基づいて各駆動軸を制御する装置である。この数値制御装置1は、図1に示すように、補正値算出ユニット10と駆動軸制御ユニット20を備える。補正値算出ユニット10は、入力されたNCデータの補正値を算出するユニットである。駆動軸制御ユニット20は、入力されたNCデータと補正値算出ユニット10により算出された補正値とに基づいて各駆動軸の制御を行うユニットである。
【0022】
本実施形態の数値制御装置1は、補正値算出ユニット10および駆動軸制御ユニット20により、NCデータの指令位置に対する空間補正処理を行い、各駆動軸の位置決め誤差を補正している。これにより、各駆動軸における位置決めの高精度化を図っている。ここで、空間補正とは、本実施形態の工作機械が直交する3つの直進駆動軸を有することから、3次元空間におけるNCデータの指令位置と実際に位置決めされた位置との誤差の補正をいう。詳細については後述する。
【0023】
数値制御装置1の補正値算出ユニット10は、図1に示すように、単位格子記憶部11、補正データ記憶部12、移動領域取得部13、補正値算出部14、補正値一次格納部15、補正値移動処理部16、および温度計測器17を有する。単位格子記憶部11は、複数の駆動軸の可動領域Taを格子状に分割した複数の単位格子Sを記憶する補正データ記憶手段である。複数の駆動軸の可動領域Taは、その駆動軸が動作し得る最大最小の領域であり、図2(a)の点線でその一部を示している。
【0024】
また、単位格子Sは、図2(b)(c)に示すように、駆動軸の可動領域Taを駆動軸の軸方向に一定間隔で格子状に分割した最小単位の3次元空間の格子である。本実施形態では、各駆動軸を等しい間隔で分割しているため、単位格子Sは、立方形状となっている。これに対して、駆動軸の可動領域Taの形状や駆動軸の作動頻度などに応じて、駆動軸毎に分割する間隔を変動させ、単位格子Sが長方形状ないし多面形状となるようにしてもよい。上述したように、駆動軸の可動領域Taは、複数の単位格子Sが集合することにより形成されている。
【0025】
補正データ記憶部12は、図2(c)に示すように、単位格子Sの頂点であるそれぞれの格子点Pg1〜Pg8に補正データを関連付けて記憶する補正データ記憶手段である。本実施形態では、3次元空間である可動領域Taにおいて単位格子Sを立方形状としていることから、格子点は、一つの単位格子Sに対して8個の格子点Pg1〜Pg8がある。また、補正データとは、複数の駆動軸をある格子点Pgmに対して位置決めした時の位置決め誤差を補正するためのデータである。つまり、格子点Pgmを目標位置として各駆動軸を位置決めした時に、実際に位置決めされた位置と格子点Pgmまでの距離および方向が位置決め誤差である。よって、補正データ記憶部12は、格子点Pgmを始点、実際に位置決めされた位置を終点とする空間ベクトルとして、格子点Pgmに当該空間ベクトルをそれぞれ関連付けて記憶している。ここで、mは(1≦m≦n)を満たす整数であり、nは可動領域Taに含まれる単位格子Sの数である。そして、補正データ記憶部12は、図3に示すように、全ての格子点Pg1〜Pgnに補正データを関連づけて記憶している。
【0026】
また、補正データ記憶部12は、図1に示すように、工作機械の温度毎に上記の補正データを複数記憶している(図3では、温度Tnにおける補正データを示している)。つまり、本実施形態における補正データは、工作機械の温度に応じた工作機械の熱変位補正データと、各格子点Pg1〜Pgnに関連付けられた位置決め誤差の補正データとを合算したデータであり、本発明の「総補正データ」に相当する。また、本実施形態においては、単位格子記憶部11と補正データ記憶部12は、図1に示すように、同一のメモリに存在する記憶領域の一部としている。
【0027】
移動領域取得部13は、NCデータの指令位置を含む1または複数の単位格子Sにより形成される移動領域Tmを取得する移動領域取得手段である。移動領域Tmは、図2(a)(b)に示すように、工作機械の可動領域Taのうち、NCデータの指令位置が包含されるように抽出された複数の単位格子Sの集合により構成されている。例えば、一定数の位置指令において移動する範囲が大きければ移動領域Tmも大きくなり、これを構成する単位格子Sの数も多くなる。一方で、一定数の位置指令において移動する範囲が小さければ移動領域Tmも小さくなり、これを構成する単位格子Sの数も少なくなる。そして、一定数の位置指令が一つの単位格子Sの内部に含まれる場合も想定される。
【0028】
また、移動領域取得部13は、本実施形態において、NCデータに含まれる指令位置のうち、一部の指令位置を対象として移動領域Tmを取得する。これは、数値制御装置1による位置決め誤差の補正を一度にNCデータ全体について行うのではなく、NCデータの一部について先読みし補正値の算出を複数回に亘って行うようにしている。さらに、移動領域取得部13は、移動領域Tmの大きさが設定範囲に含まれるようなNCデータの指令位置を取得し、この指令位置を含む移動領域Tmを取得するものとしている。この「設定範囲」とは、補正値を算出する処理負荷が過大にならないように、可動領域Taから抽出する複数の単位格子Sの数量を制限するために設定された範囲である。そのため、移動領域取得部13は、NCデータの一部の指令位置による移動領域Tmの大きさ(抽出する単位格子Sの数量)を監視し、移動領域Tmが設定範囲に収まるように、先読みするNCデータの量を制限している。
【0029】
補正値算出部14は、移動領域Tmに含まれる格子点Pg1〜Pgnと補正データ記憶部12に記憶される補正データとに基づいて、NCデータの指令位置に対する補正値を算出する補正値算出手段である。移動領域Tmは、図2(b)に示すように、複数の単位格子Sにより形成され、それに伴い複数の格子点を含んでいる。そして、補正値算出部14は、移動領域Tmを形成する複数の単位格子Sのうち、一の指令位置Piが含まれる単位格子Sを検索する。この時、既に一の指令位置Piが移動領域Tmの内部に含まれているので、可動領域Taを形成する全ての単位格子Sから該当する単位格子Sを検索する処理と比較して、格段に演算処理量を低減することができる。
【0030】
補正値算出部14は、移動領域Tmから一の指令位置Piが含まれる単位格子Sを検索すると、図2(c)に示すように、その単位格子Sの格子点Pg1〜Pg8に関連付けられた補正データを補正データ記憶部12より取得する。この時、補正値算出部14は、後述する温度計測器17より入力した工作機械の温度に応じた補正データを補正データ記憶部12より取得している。そして、補正値算出部14は、単位格子Sの内部を単一のベクトル空間として、既知の方法により指令位置Piにおける補正値を算出する。
【0031】
補正値一次格納部15は、補正値算出部14が補正値算出処理により算出した補正値を一次的に格納する一次格納手段である。この補正値一次格納部15は、NCデータの指令位置に対する補正値が算出される度に、その値を追加記憶している。補正値移動処理部16は、補正値一次格納部15に格納された補正値の格納容量が設定値に達した後に、補正値一次格納部15から後述する補正値二次格納部22へ補正値を移動する処理を行う補正値移動処理手段である。ここで、補正値の格納容量に対する上記の「設定値」は、本実施形態において、補正値二次格納部22において補正値を一時的に格納し得るメモリの許容量に応じて設定される。これにより、補正値移動処理部16が補正値を適宜移動させながら、補正値算出部14において補正値算出処理を行うことになる。
【0032】
温度計測器17は、工作機械の温度を計測する温度計測手段である。ここで、「工作機械の温度」とは、各駆動軸を直接的に計測したものでも、工作機内の温度および外気温などを計測したものでもよい。即ち、補正データ記憶部12に工作機械の温度毎に記憶された補正データに対応するものであり、補正値算出部14が工作機械の温度に基づいてどの補正データを取得するかを判定できればよい。
【0033】
数値制御装置1の駆動軸制御ユニット20は、図1に示すように、制御部21、および補正値二次格納部22を有する。制御部21は、NCデータと算出された補正値とに基づいて工作機械の駆動軸を制御する制御手段である。制御部21は、例えば各駆動軸のサーボモータに所定の電力を供給することにより制御を行っている。供給される電力は、NCデータの指令位置と、当該指令位置に対する位置決め誤差の補正値とに基づいて決定される。
【0034】
補正値二次格納部22は、補正値一次格納部15から移動された補正値を一時的に格納する二次格納手段である。この補正値二次格納部22は、制御部21が駆動軸を制御する際に制御部21により補正値が取り出されると共に、制御部21により取り出された補正値が削除される。つまり、使用された補正値については順次削除を行い、補正値移動処理部16により補正値一次格納部15から新たな補正値が移動され得る状態となるようにしている。
【0035】
(位置決め誤差の補正処理)
数値制御装置1による位置決め誤差の補正処理について、図4〜図7を参照して説明する。位置決め誤差の補正処理(空間補正処理)は、先ず、当該空間補正の演算処理量を軽減するために、図4に示すように、補正値算出ユニット10が移動領域取得処理(S110)を実行する。移動領域取得処理は、図5に示すように、先ず、移動領域取得部13が所定量のNCデータの読み込みを行う(S111)。ここで、移動領域取得部13が先読みするNCデータの所定量は、後に取得される移動領域が過大にならないように予め設定されている。
【0036】
続いて、移動領域取得部13は、読み込んだNCデータに含まれる複数の指令位置から各駆動軸が動作する範囲を算出し、可動領域Taから移動領域Tmを取得する(S112)。そして、読み込んだNCデータおよび取得した移動領域Tmを内部メモリに一時記憶する(S113)。この時、既にメモリに移動領域Tmが記憶されている場合には、新たに取得した移動領域Tmを加算するように更新する。続いて、更新された移動領域Tmの大きさMpを算出する(S114)。さらに、移動領域Tmの大きさMpと設定範囲Mlとを比較する(S115)。
【0037】
この「設定範囲Ml」は、上述したように、後に補正値を算出する際の処理負荷が過大とならないように設定されているものである。本実施形態においては、移動領域Tmは、全体形状として立方形状または長方形状となり、設定範囲Mlとの比較においては、単に移動領域Tmを形成する複数の単位格子Sの数量が制限されている。そして、移動領域Tmが設定範囲Ml以下である場合(S115:Yes)には、移動領域取得部13は、NCデータの一部をさらに追加で読み込む(S111)。以下、(S112)〜(S114)の処理を行う。一方で、移動領域Tmが設定範囲Mlを超えている場合(S115:No)には、移動領域取得処理を終了する。
【0038】
次に、取得された移動領域Tmに基づいてNCデータの指令位置に対する補正値を算出する補正値算出処理(S120)を実行する。補正値算出処理は、図6に示すように、先ず、補正値算出部14が移動領域取得部13から移動領域Tmの取得に用いたNCデータの一部を取得する(S121)。次に、補正値算出部14は、NCデータの一部に含まれる一の指令位置Piについて、移動領域Tmを形成する複数の単位格子のうち指令位置Piを含む単位格子Sを検索する(S122)。
【0039】
そして、補正値算出部14は、検索された単位格子Sの格子点Pg1〜Pg8に関連付けられた補正データを補正データ記憶部12より取得する(S123)。この時、補正値算出部14は、格子点Pg1〜Pg8および温度計測器17より取得した工作機械の温度を補正データ記憶部12に出力して、該当する補正データを要求する。これにより、取得する補正データは、熱変位補正を含むものとされる。また、補正値算出部14は、単位格子Sの内部を単一のベクトル空間として、既知の方法により指令位置Piにおける補正値を算出し(S124)、補正値一次格納部15に算出した補正値を順次格納する。
【0040】
さらに、(S121)で取得したNCデータの一部に含まれる全ての指令位置について補正値が算出されたか判定(S125)し、残っている場合(S125:No)には、(S122)〜(S124)を繰り返す。一方で、NCデータの一部に含まれる全ての指令位置について補正値が算出された場合(S125:Yes)には、補正値算出処理を終了する。
【0041】
続いて、図4に戻り、空間補正処理の対象とするNCデータについて補正値の算出が終了しているか判定する(S130)。NCデータの末尾まで空間補正を行った場合(S130:Yes)には、空間補正処理を終了する。一方で、NCデータの末尾まで空間補正を行っていない場合(S130:No)には、処理を続行するために(S110)に戻り、上記処理を繰り返す。
【0042】
さらに、補正値算出処理(S120)において、補正値算出ユニット10がNCデータの指令位置に対する補正値を算出され(S124)、補正値一次格納部15に補正値が格納されると、補正値算出ユニット10による補正値移動処理(S140)、および駆動軸制御ユニット20による駆動軸制御処理(S210)が並行して実行される。補正値移動処理部16は、補正値一次格納部15に格納される補正値の格納容量を監視し、格納容量が設定値に達した場合に、補正値二次格納部22へ補正値を移動する処理を行う。
【0043】
駆動軸制御ユニット20は、補正値二次格納部22に補正値が移動されると、駆動軸制御処理(S210)を実行する。駆動軸制御処理は、図7に示すように、先ず、NCデータの指令位置に対する補正値を補正値二次格納部22から取得する(S211)。次に、NCデータの指令位置と取得した補正値とに基づいて、駆動軸の制御信号を出力する(S212)。これにより、NCデータの指令位置が補正された状態で各駆動軸の動作が制御されることになる。
【0044】
その後に、(S211)において取り出された補正値を補正値二次格納部22から削除する(S213)。そして、制御部21は、補正値二次格納部22に補正値が残っているか判定し(S214)、残っている場合(S214:Yes)には、(S211)〜(S213)を繰り返す。一方で、補正値二次格納部22から全ての補正値が削除された場合(S214:No)には、駆動軸制御処理を終了する。
【0045】
(数値制御装置1による効果)
上述した工作機械の数値制御装置1によれば、補正値算出部14は、移動領域Tmを取得した後に、当該移動領域Tmに含まれる単位格子Sを検索し、当該単位格子Sの格子点Pg1〜Pg8に関連付けられた補正データを用いて、NCデータの補正値を算出する構成としている。これにより、従来のように駆動軸の可動領域全体に含まれる格子点から補正に使用する格子点を検索する場合と比較して、数値制御装置1は格段に演算処理量を低減できる。従って、補正データを記憶させる格子点の数を多くすることが可能となる。つまり、単位格子Sの大きさを非常に細かくすることができるので、その結果として、高精度な補正が可能となる。
【0046】
また、移動領域取得部13は、NCデータの一部の指令位置を対象として移動領域Tmを取得するものとした。つまり、一度にNCデータ全体について補正値の算出を行うのではなく、NCデータの一部について補正値の算出を行うことを複数回に亘って行うようにした。これにより、補正値算出部14による1回の補正値算出処理(S120)において適用される移動領域Tmの大きさMpを小さくすることができる。その結果、単位格子Sの検索が早くなるとともに、NCデータの補正値の算出に際しての演算処理量を確実に低減できる。
【0047】
数値制御装置1は、補正値一次格納部15と補正値二次格納部22に補正値を適宜移動させながら、補正値算出部14において補正値算出処理(S120)を行うようにしている。このような構成は、補正値算出部14による1回の補正値算出処理にて適用する移動領域Tmの大きさMpをより小さくすることに寄与することになる。その結果、補正値算出に際しての演算処理量を確実に低減できる。さらに、補正値移動処理部16により補正値を移動する回数を低減することができる。これにより、補正値算出処理を行う時間を多く確保することができる。その結果、補正値算出部14は、短時間で高精度な補正値を算出することができる。
【0048】
さらに、移動領域取得部13は、当該NCデータの指令位置を含む移動領域Tmを取得するものとした。これにより、移動領域取得部13が取得した移動領域Tmの大きさMpが常に設定範囲に含まれるようにできる。よって、補正値算出部14において、1回の補正値算出処理(S120)における演算処理量を一定の範囲内とすることができる。これにより、補正値算出処理において、メモリを許容負荷内で有効利用することができる。そして、補正値算出部14が使用するメモリにおける演算処理量の許容範囲内で、高精度な補正値を算出できるように、単位格子Sを設定することができる。その結果、数値制御装置1は、高精度なNCデータの補正が可能となる。
【0049】
その他に、補正データ記憶部12が熱変位補正を考慮した補正データ(総補正データ)を記憶し、補正値算出部14が当該補正データと工作機械の温度とに基づいて補正値を算出する構成としている。これにより、算出された補正値は、熱変位補正を考慮した値となる。よって、位置決め誤差および工作機械の熱変位を補正することができるため、工作機械の各駆動軸の高精度な位置決めが可能となる。
【0050】
<実施形態の変形態様>
本実施形態において、補正値算出ユニット10と駆動軸制御ユニット20を数値制御装置1の内部において、それぞれ独立したものとして説明した。これに対して、両ユニット10,20は、一体的な構成としてもよい。この場合には、例えば、補正値一次格納部15および補正値二次格納部22を共通する一の格納部とし、補正値移動処理部16を省略する構成とする。これにより、補正値算出部14において算出された補正値が格納部においてバッファリングされ、制御部21が補正値とNCデータの指令位置に基づいて逐次各駆動軸の制御を行う。これにより、数値制御装置1の内部メモリを共通化することができる。
【0051】
一方で、補正値算出ユニット10と駆動軸制御ユニット20を互いに通信可能で独立の分離したユニットとする構成としてもよい。これにより、例えば、演算負荷の比較的高い補正値算出処理やメモリ容量を要する補正データの記憶などを、制御部21と分離し好適な並行処理が可能となるので、制御部21における演算負荷が過多になることを防止できる。
【0052】
また、数値制御装置1の補正値算出ユニット10は、補正データ記憶部12が工作機械の温度毎に複数の補正データを記憶し、温度計測器17により測定した温度に基づいて、熱変位補正を含む位置決め誤差の補正を行うものとした。これに対して、熱変位補正については別個独立で行う(例えば、フィードバック制御において熱変位を行う方法など)ものとし、数値制御装置は、位置決め誤差のみを補正するものとしてもよい。このような構成においても、従来と比較して高精度に補正を行うことができる。
【0053】
本実施形態において、移動領域取得部13は、NCデータの一部の指令位置による移動領域Tmの大きさMp(抽出する単位格子Sの数量)を監視し、移動領域Tmが設定範囲に収まるように、先読みするNCデータの量を制限するものとした。これに対して、別の方法により先読みするNCデータの量を制限する構成としてもよい。例えば、単純にNCデータに含まれる指令位置の数量を監視して制限することが考えられる。NCデータが微小間隔の指令位置による点群データにより構成されている場合には、格子点の間隔よりも指令位置同士の間隔が非常に小さくなることがある。そうすると、移動領域Tmの大きさMpを指令位置毎に監視していたのでは処理量が増加するため、指令位置の数量から先読みするNCデータの量を適宜設定すると好適である。このような構成においても、本実施形態と同様の効果を奏する。
【0054】
また、数値制御装置1は、上述したように、移動領域取得処理および補正値算出処理において、移動領域Tmの大きさMpまたは指令位置の数量を監視して、NCデータの一部を適宜量だけ先読みするものとした。これに対して、NCデータの全体に対して補正値算出を行うものとしてもよい。このような場合には、補正値算出処理などにおける演算負荷が大きくなるものと考えられるが、数値制御装置1が十分な演算能力を有する場合には、上記構成としても実施形態と同様の効果を奏する。
【0055】
その他に、本実施形態では、直交する3つの直進駆動軸を有する工作機械を例示して説明した。これに対して、さらに回転軸を有する構成や、直交する2つの直進駆動軸のみを有する構成の工作機械の数値制御装置においても本発明を適用することができ、同様の効果を奏する。
【符号の説明】
【0056】
1:数値制御装置
10:補正値算出ユニット、 11:単位格子記憶部、 12:補正データ記憶部
13:移動領域取得部、 14:補正値算出部、 15:補正値一次格納部
16:補正値移動処理部、 17:温度計測器
20:駆動軸制御ユニット、 21:制御部、 22:補正値二次格納部
Ta:可動領域、 Tm:移動領域、 S:単位格子、 格子点:Pg
Pi:指令位置、 Mp,Ml:移動領域の大きさ


【特許請求の範囲】
【請求項1】
NCデータに基づいて複数の駆動軸を動作させる工作機械の数値制御装置において、
前記複数の駆動軸の可動領域を格子状に分割した複数の単位格子を記憶する単位格子記憶手段と、
前記単位格子の頂点である格子点に前記駆動軸を位置決めした時の位置決め誤差の補正データを、それぞれの前記格子点に関連付けて記憶する補正データ記憶手段と、
前記NCデータの指令位置を含む1または複数の前記単位格子により形成される移動領域を取得する移動領域取得手段と、
前記移動領域に含まれる前記格子点と前記補正データ記憶手段に記憶される前記補正データとに基づいて、前記NCデータの指令位置に対する補正値を算出する補正値算出手段と、
前記NCデータと前記補正値とに基づいて前記駆動軸を制御する制御手段と、
を備える工作機械の数値制御装置。
【請求項2】
請求項1において、
前記移動領域取得手段は、前記NCデータの一部の指令位置を含む1または複数の前記単位格子により形成される前記移動領域を取得する工作機械の数値制御装置。
【請求項3】
請求項2において、
前記補正値算出手段が補正値算出処理により算出した前記補正値を一時的に格納する一次格納手段と、
前記一次格納手段から移動された前記補正値を一時的に格納し、前記制御手段が前記駆動軸を制御する際に前記制御手段により前記補正値が取り出されると共に、前記制御手段により取り出された前記補正値が削除される二次格納手段と、
前記一次格納手段に格納された前記補正値の格納容量が設定値に達した後に、前記一次格納手段から前記二次格納手段へ前記補正値を移動する補正値移動処理手段と、
を備え、
前記補正値算出手段は、前記一次格納手段に格納される前記補正値の格納容量が前記設定値に達するまで、前記補正値算出処理を繰り返し行う工作機械の数値制御装置。
【請求項4】
請求項1〜3の何れか一項において、
前記移動領域取得手段は、前記移動領域の大きさが設定範囲に含まれるような前記NCデータの指令位置を取得し、当該NCデータの指令位置を含む前記移動領域を取得する工作機械の数値制御装置。
【請求項5】
請求項1〜4の何れか一項において、
前記工作機械の数値制御装置は、前記工作機械の温度を計測する温度計測手段を備え、
前記補正データ記憶手段は、前記工作機械の温度に応じた前記工作機械の熱変位補正データと前記位置決め誤差の補正データとを合算した総補正データを、それぞれの前記格子点に関連付けて記憶し、
前記補正値算出手段は、前記移動領域に含まれる前記格子点と前記補正データ記憶手段に記憶される前記総補正データと前記温度計測手段により計測される前記工作機械の温度とに基づいて、前記補正値を算出する工作機械の数値制御装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公開番号】特開2012−234424(P2012−234424A)
【公開日】平成24年11月29日(2012.11.29)
【国際特許分類】
【出願番号】特願2011−103500(P2011−103500)
【出願日】平成23年5月6日(2011.5.6)
【出願人】(000001247)株式会社ジェイテクト (7,053)
【Fターム(参考)】