(57)【特許請求の範囲】
【請求項１】
テーブルに取付られたワーク（加工物）に対して少なくとも直線軸３軸を制御点位置に移動させることによって工具を前記ワークに対して相対移動させて前記工具の切削点で前記ワークを加工する工作機械を制御する数値制御装置において、
加工プログラムにより指令される指令切削点位置、指令切削面垂直ベクトル、工具径補正量、工具長補正量および工具先端面と工具背面との距離である工具厚補正量を読取り切削点指令読取りデータとする切削点指令読取り部と、
前記切削点指令読取りデータにもとづいて、補間周期毎に補間切削点位置および補間工具径補正ベクトルを求めて切削点指令補間データとし、前記切削点指令補間データ、前記工具長補正量および前記工具厚補正量から前記直線軸３軸の制御点位置を求める切削点指令制御部を有し、
前記少なくとも直線３軸を前記制御点位置に移動するよう各軸を駆動することを特徴とする数値制御装置。
【請求項２】
前記切削点指令読取り部は、加工プログラムにより指令される前記指令切削点位置、前記指令切削面垂直ベクトル、前記工具径補正量、前記工具長補正量および前記工具厚補正量に加えて工具背面コーナＲ補正量をも読取り前記切削点指令読取りデータとする前記切削点指令読取り部であり、
前記切削点指令制御部は、前記切削点指令読取りデータにもとづいて、補間周期毎に前記補間切削点位置および前記補間工具径補正ベクトルに加えて補間コーナＲ補正ベクトルをも求めて前記切削点指令補間データとし、前記切削点指令補間データ、前記工具長補正量、前記工具厚補正量および前記工具背面コーナＲ補正量から前記直線軸３軸の制御点位置を求める切削点指令制御部であることを特徴とする請求項１に記載の数値制御装置。
【請求項３】
前記切削点指令読取り部は、加工プログラムにより指令される前記指令切削点位置、前記指令切削面垂直ベクトル、前記工具径補正量、前記工具長補正量および前記工具厚補正量に加えて工具テーパ角をも読取り前記切削点指令読取りデータとする前記切削点指令読取り部であり、
前記切削点指令制御部は、前記切削点指令読取りデータにもとづいて、補間周期毎に前記補間切削点位置および前記補間工具径補正ベクトルを求めて前記切削点指令補間データとし、前記切削点指令補間データ、前記工具長補正量および前記工具厚補正量から前記直線軸３軸の制御点位置を求める切削点指令制御部であることを特徴とする請求項１に記載の数値制御装置。
【請求項４】
前記切削点指令読取り部は、加工プログラムにより指令される前記指令切削点位置、前記指令切削面垂直ベクトル、前記工具径補正量、前記工具長補正量および前記工具厚補正量に加えて工具背面コーナＲ補正量、工具先端面コーナＲ補正量および工具テーパ角をも読取り前記切削点指令読取りデータとする前記切削点指令読取り部であり、
前記切削点指令制御部は、前記切削点指令読取りデータにもとづいて、補間周期毎に前記補間切削点位置および前記補間工具径補正ベクトルに加えて補間コーナＲ補正ベクトルをも求めて前記切削点指令補間データとし、前記切削点指令補間データ、前記工具長補正量、前記工具厚補正量および前記工具背面コーナＲ補正量から前記直線軸３軸の制御点位置を求める切削点指令制御部であることを特徴とする請求項１に記載の数値制御装置。
【請求項５】
前記工作機械は、テーブルに取付られたワーク（加工物）に対して少なくとも直線軸３軸および回転軸２軸を制御点位置に移動させることによって工具を前記ワークに対して相対移動させて前記ワークを加工する多軸工作機械であり、
前記切削点指令読取り部は、加工プログラムにより指令される指令工具方向をも読取り前記切削点指令読取りデータとする前記切削点指令読取り部であり、
前記切削点指令制御部は、前記切削点指令読取りデータにもとづいて、補間周期毎に補間工具方向ベクトルＶｔおよび補間工具長補正ベクトルをも求めて前記切削点指令補間データとし、前記切削点指令補間データから前記直線軸３軸および前記回転軸２軸の制御点位置を求める切削点指令制御部であり、
前記少なくとも直線軸３軸および前記回転軸２軸を前記制御点位置に移動するよう各軸を駆動することを特徴とする記請求項１乃至請求項４のいずれか１つに記載の数値制御装置。
【請求項６】
前記指令工具方向は指令回転軸位置として指令される請求項５に記載の数値制御装置。
【請求項７】
前記指令工具方向は指令工具方向ベクトルとして指令される請求項５に記載の数値制御装置。
【請求項８】
前記回転軸２軸は工具ヘッドを回転する前記回転軸２軸である請求項５乃至請求項７のいずれか１つに記載の数値制御装置。
【請求項９】
前記回転軸２軸はテーブルを回転する前記回転軸２軸である請求項５乃至請求項７のいずれか１つに記載の数値制御装置。
【請求項１０】
前記回転軸２軸の１軸は工具ヘッドを回転し他の１軸はテーブルを回転する前記回転軸２軸である請求項５乃至請求項７のいずれか１つに記載の数値制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、テーブルに取付られたワーク（加工物）に対して少なくとも直線軸３軸によって加工する工作機械を制御するとともに、加工プログラムにより指令される指令切削点位置、指令切削面垂直方向、工具径補正量、工具長補正量および工具厚補正量から補間周期毎に各軸の制御点位置を求める切削点指令制御部を有する数値制御装置に関する。さらに、前記工作機械は前記直線軸３軸に加えて回転軸２軸によって加工する多軸工作機械である、または前記切削点指令制御部はさらに加工プログラムにより指令される工具テーパ角、工具背面コーナＲ補正量または工具先端面コーナＲ補正量をも考慮する切削点指令制御部である数値制御装置に関する。
【背景技術】
【０００２】
少なくとも直線軸３軸と回転軸２軸によって加工する多軸工作機械において、加工プログラムにより指令切削点位置（ワークを切削する工具切刃位置）、指令切削面垂直方向、指令工具方向、工具径補正量および工具長補正量を指令し、補間周期毎に補間切削点位置、補間切削面垂直方向ベクトル、補間工具方向ベクトル、補間工具径補正ベクトルおよび補間工具長補正ベクトルを求め、それらの補間切削点位置、補間工具径補正ベクトルおよび補間工具長補正ベクトルから直線軸３軸および回転軸２軸の制御点位置を求めて駆動する数値制御装置が知られている。このように、加工プログラムにより指令切削点位置、指令切削面垂直方向、指令工具方向、工具径補正量および工具長補正量を指令し、ワーク上の実際の切削点位置が補間切削点位置になるように各軸の制御点位置を求めて駆動する指令方法および制御方法を切削点指令と呼ぶ。  
この切削点指令は多軸工作機械のみならず、回転軸を持たず少なくとも直線軸３軸によって加工する工作機械においても使用される。その場合、上記の補間工具方向ベクトルおよび補間工具長補正ベクトルは補間周期毎には変化しないため、一定の工具方向ベクトルおよび工具長補正ベクトルとなる。
【０００３】
一般に切削点指令は少なくとも直線軸３軸と回転軸２軸によって加工する多軸工作機械において使用されることが多いため、以下の従来技術の説明は多軸工作機械の場合の説明とする。  
特許文献１では、回転テーブルを持つ多軸工作機械、つまり回転軸１軸でテーブルを回転し他の回転軸１軸で工具ヘッドを回転する混合型多軸工作機械（段落００６２、図１）や回転軸２軸でテーブルを回転するテーブル回転型多軸工作機械（段落００６２、図２）において、「ボールエンドミル工具の先端における半球上の切削点」（請求項１０）によって切削点指令を行う技術（段落００２３、段落００６４、図１４、図１７）や、「フラットエンドミル工具の先端面の切削点」（請求項１１）によって切削点指令を行う技術（段落００６４、図１６）が開示されている。  
特許文献２では、回転工具ヘッドを持つ工具ヘッド回転型多軸工作機械において「コーナＲ部を持たないミル工具」によって切削点指令を行う技術（請求項１の１行目〜８行目、図２、図６）や、「コーナＲ部を持つミル工具」によって切削点指令を行う技術（請求項２の１行目〜８行目、図７）が開示されている。
これらの従来技術では工具を側面から見ると工具先端面の端点またはその延長のコーナＲ部を切削点とする（図１、図２を参照）。
【０００４】
一方、近年工具種類が多様化し、図３のように工具背面のコーナＲ部でも加工を行う工具が登場してきている。特に研削工具（グラインダ）においてはそのような工具も使用されるようになってきている。図４は図３で示した工具の斜視図である。  
さらに、今後図５のような工具背面の端点で加工する工具も想定される。図６は図５で示した工具の斜視図である。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特許第３６４３０９８号公報
【特許文献２】特開２００８−２８７４７１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
このような工具の切削点指令に対しては図３、図５に示した工具厚補正量や工具背面のコーナＲ部における工具背面コーナＲ補正量（コーナＲ半径）を考慮して切削点指令に対する制御を行う必要があるが、上記従来技術の切削点指令の制御においては工具厚補正量や工具背面コーナＲ補正量を考慮する技術思想はなかった。  
また、工具側面にテーパ角がある工具や工具先端面のコーナＲ部における工具先端面コーナＲ補正量と工具背面コーナＲ補正量とが相違する工具も今後想定される。図７、図８ではそのような工具の側面図を示す。便宜上ワークは省略して描いている。そのような工具による切削点指令の制御において、工具厚補正量、テーパ角、工具先端面コーナＲ補正量または工具背面コーナＲ補正量を考慮する技術思想はなかった。  
そのため、このような工具背面のコーナＲ部や端点で加工を行う場合はＣＡＭで加工プログラムを作成する時にそのような加工を考慮して各軸の制御点位置を指令したり工具先端面中心位置を指令する必要があった。したがって、工具毎にＣＡＭで加工プログラムを作成する必要があった。つまり、工具が変更されれば変更された工具に合わせてＣＡＭで加工プログラムを作成し直す必要があった。
【０００７】
そこで、本発明の課題は、工具厚補正量を考慮し上記のような工具における工具背面のコーナＲ部分や端点による切削点指令での加工を可能にする数値制御装置を提供することである。また、工具厚補正量に加えて工具側面のテーパ角、工具背面コーナＲ補正量や工具先端面コーナＲ補正量を持つ工具に対しても同様に工具背面のコーナＲ部分や端点での切削点指令での加工を可能にする数値制御装置を提供することである。さらに、少なくとも直線軸３軸を持つ工作機械や少なくとも直線軸３軸に加えて回転軸２軸を持つ多軸工作機械において、そのような工具による切削点指令を可能にする数値制御装置を提供することである。  
【課題を解決するための手段】
【０００８】
本願の請求項１に係る発明は、テーブルに取付られたワーク（加工物）に対して少なくとも直線軸３軸を制御点位置に移動させることによって工具を前記ワークに対して相対移動させて前記工具の切削点で前記ワークを加工する工作機械を制御する数値制御装置において、加工プログラムにより指令される指令切削点位置、指令切削面垂直ベクトル、工具径補正量、工具長補正量および工具先端面と工具背面との距離である工具厚補正量を読取り切削点指令読取りデータとする切削点指令読取り部と、前記切削点指令読取りデータにもとづいて、補間周期毎に補間切削点位置および補間工具径補正ベクトルを求めて切削点指令補間データとし、前記切削点指令補間データ、前記工具長補正量および前記工具厚補正量から前記直線軸３軸の制御点位置を求める切削点指令制御部を有し、前記少なくとも直線３軸を前記制御点位置に移動するよう各軸を駆動することを特徴とする数値制御装置である。  
請求項２に係る発明は、前記切削点指令読取り部は、加工プログラムにより指令される前記指令切削点位置、前記指令切削面垂直ベクトル、前記工具径補正量、前記工具長補正量および前記工具厚補正量に加えて工具背面コーナＲ補正量をも読取り前記切削点指令読取りデータとする前記切削点指令読取り部であり、前記切削点指令制御部は、前記切削点指令読取りデータにもとづいて、補間周期毎に前記補間切削点位置および前記補間工具径補正ベクトルに加えて補間コーナＲ補正ベクトルをも求めて前記切削点指令補間データとし、前記切削点指令補間データ、前記工具長補正量、前記工具厚補正量および前記工具背面コーナＲ補正量から前記直線軸３軸の制御点位置を求める切削点指令制御部であることを特徴とする請求項１に記載の数値制御装置である。
【０００９】
請求項３に係る発明は、前記切削点指令読取り部は、加工プログラムにより指令される前記指令切削点位置、前記指令切削面垂直ベクトル、前記工具径補正量、前記工具長補正量および前記工具厚補正量に加えて工具テーパ角をも読取り前記切削点指令読取りデータとする前記切削点指令読取り部であり、前記切削点指令制御部は、前記切削点指令読取りデータにもとづいて、補間周期毎に前記補間切削点位置および前記補間工具径補正ベクトルを求めて前記切削点指令補間データとし、前記切削点指令補間データ、前記工具長補正量および前記工具厚補正量から前記直線軸３軸の制御点位置を求める切削点指令制御部であることを特徴とする請求項１に記載の数値制御装置である。
【００１０】
請求項４に係る発明は、前記切削点指令読取り部は、加工プログラムにより指令される前記指令切削点位置、前記指令切削面垂直ベクトル、前記工具径補正量、前記工具長補正量および前記工具厚補正量に加えて工具背面コーナＲ補正量、工具先端面コーナＲ補正量および工具テーパ角をも読取り前記切削点指令読取りデータとする前記切削点指令読取り部であり、前記切削点指令制御部は、前記切削点指令読取りデータにもとづいて、補間周期毎に前記補間切削点位置および前記補間工具径補正ベクトルに加えて補間コーナＲ補正ベクトルをも求めて前記切削点指令補間データとし、前記切削点指令補間データ、前記工具長補正量、前記工具厚補正量および前記工具背面コーナＲ補正量から前記直線軸３軸の制御点位置を求める切削点指令制御部であることを特徴とする請求項１に記載の数値制御装置である。  
請求項５に係る発明は、前記工作機械は、テーブルに取付られたワーク（加工物）に対して少なくとも直線軸３軸および回転軸２軸を制御点位置に移動させることによって工具を前記ワークに対して相対移動させて前記ワークを加工する多軸工作機械であり、前記切削点指令読取り部は、加工プログラムにより指令される指令工具方向をも読取り前記切削点指令読取りデータとする前記切削点指令読取り部であり、前記切削点指令制御部は、前記切削点指令読取りデータにもとづいて、補間周期毎に補間工具方向ベクトルＶｔおよび補間工具長補正ベクトルをも求めて前記切削点指令補間データとし、前記切削点指令補間データから前記直線軸３軸および前記回転軸２軸の制御点位置を求める切削点指令制御部であり、前記少なくとも直線軸３軸および前記回転軸２軸を前記制御点位置に移動するよう各軸を駆動することを特徴とする記請求項１乃至請求項４のいずれか１つに記載の数値制御装置である。
【００１１】
請求項６に係る発明は、前記指令工具方向は指令回転軸位置として指令される請求項５に記載の数値制御装置である。  
請求項７に係る発明は、前記指令工具方向は指令工具方向ベクトルとして指令される請求項５に記載の数値制御装置である。  
請求項８に係る発明は、前記回転軸２軸は工具ヘッドを回転する前記回転軸２軸である請求項５乃至請求項７のいずれか１つに記載の数値制御装置である。  
請求項９に係る発明は、前記回転軸２軸はテーブルを回転する前記回転軸２軸である請求項５乃至請求項７のいずれか１つに記載の数値制御装置である。  
請求項１０に係る発明は、前記回転軸２軸の１軸は工具ヘッドを回転し他の１軸はテーブルを回転する前記回転軸２軸である請求項５乃至請求項７のいずれか１つに記載の数値制御装置である。
【発明の効果】
【００１２】
本発明により、工具厚補正量を考慮し上記のような工具における工具背面のコーナＲ部分や端点による切削点指令での加工を可能にする数値制御装置を提供できる。また、工具厚補正量に加えて工具側面のテーパ角、工具背面コーナＲ補正量や工具先端面コーナＲ補正量を持つ工具に対しても同様に工具背面のコーナＲ部分や端点での切削点指令での加工を可能にする数値制御装置を提供できる。さらに、少なくとも直線軸３軸を持つ工作機械や少なくとも直線軸３軸に加えて回転軸２軸を持つ多軸工作機械において、そのような工具による切削点指令を可能にする数値制御装置を提供できる。
【００１３】
そのことにより、ＣＡＭでは工具形状にかかわらず加工形状に合わせて切削点を指令する加工プログラムを作成すればよくなる。つまり、工具毎にＣＡＭで加工プログラムを作成する必要がなくなる。工具が変更されてもＣＡＭで加工プログラムを作成し直す必要がなくなる。その結果、より効率的な加工が可能となる。
【図面の簡単な説明】
【００１４】
【図１】工具先端面の端点が切削点であることを説明する図である。
【図２】工具先端面のコーナＲ部が切削点であることを説明する図である。
【図３】工具背面のコーナＲ部で加工を行う工具の例を説明する図である。
【図４】図３で示した工具の斜視図である。
【図５】工具背面の端点で加工する工具の例を説明する図である。
【図６】図５で示した工具の斜視図である。
【図７】工具側面にテーパ角がある工具の例を説明する図である。
【図８】工具先端面のコーナＲ部における工具先端面コーナＲ補正量と工具背面コーナＲ補正量とが相違する工具の例を説明する図である。
【図９】回転軸Ｂ軸、Ｃ軸で工具ヘッドが回転し直線軸Ｘ，Ｙ，Ｚ軸で工具ヘッドが移動する工具ヘッド回転型多軸工作機械を説明する図である。
【図１０】図９に示した工具ヘッド回転型多軸工作機械に取り付けられた工具の側面図である。
【図１１】図１０に示した工具の工具形状における工具背面左上を拡大してワークの一部分と共に描いて説明する図である。
【図１２】加工プログラムの例を説明する図である。
【図１３】回転軸２軸でテーブルを回転するテーブル回転型多軸工作機械を説明する図である。
【図１４】回転軸１軸で工具ヘッドを回転し他の回転軸１軸でテーブルを回転する混合型多軸工作機械を説明する図である。
【図１５】直線軸Ｘ，Ｙ，Ｚ軸で工具ヘッドが移動する多軸工作機械を説明する図である。
【図１６】図１５に示す多軸工作機械で実行される加工プログラムの例を説明する図である。
【図１７】本発明の第１の実施形態における数値制御装置の機能ブロック図である。
【図１８】本発明の第１の実施形態における切削点指令制御部のフローチャートである。
【発明を実施するための形態】
【００１５】
以下、本発明の実施形態を図面と共に説明する。  
下記に説明する本発明の実施形態の数値制御装置により研削工具のような工具の背面のコーナＲ部分や端点を切削点とする指令での加工を可能にする。本発明はテーブルに取付られたワーク（加工物）に対して少なくとも直線軸３軸によって加工する工作機械を制御するとともに、加工プログラムにより指令される指令切削点位置、指令切削面垂直方向、工具径補正量、工具長補正量および工具厚補正量から各軸の制御点位置を求める切削点指令制御部を有する数値制御装置である。前記工作機械は前記直線軸３軸に加えて回転軸２軸によって加工する多軸工作機械である。前記切削点指令制御部はさらに加工プログラムにより指令される工具テーパ角、工具背面コーナＲ補正量または工具先端面コーナＲ補正量をも考慮して各軸の制御点位置を求める切削点指令制御部である。
【００１６】
＜実施形態＞
１）第１の実施形態
上記のように、本発明は、工具厚補正量、工具側面のテーパ角、工具背面コーナＲ補正量や工具先端面コーナＲ補正量を持つ工具に対して工具背面のコーナＲ部分や端点での切削点指令での加工を可能にする。さらに、少なくとも直線軸３軸を持つ工作機械や少なくとも直線軸３軸に加えて回転軸２軸を持つ多軸工作機械において、切削点指令を可能にする。  
第１の実施形態では、それらの多くの組合せのうち最も複雑な実施形態を説明する。つまり、少なくとも直線３軸と回転軸２軸によって加工する多軸工作機械において、図８のような工具背面コーナＲ補正量、工具先端面コーナＲ補正量、工具テーパ角を持つ工具による実施形態とする。この第１の実施形態から各要素を簡略化することにより、回転軸を持たない少なくとも直線３軸によって加工する工作機械への適用や、より簡単な工具への適用について第２の実施形態以降の実施形態で説明する。
【００１７】
対象の多軸工作機械は図９のように、テーブル３上にワーク１を載置し、回転軸Ｂ軸、Ｃ軸で工具ヘッドが回転し直線軸Ｘ，Ｙ，Ｚ軸で工具ヘッドが移動する工具ヘッド回転型多軸工作機械とする。図では工具（グラインダ）を大きめに描いている。ここでは、回転軸はＢ軸、Ｃ軸としたが、他にもＡ軸，Ｂ軸の組合せやＡ軸、Ｃ軸の組合せによる多軸工作機械もある。直線軸Ｘ，Ｙ，Ｚ軸で工具ヘッドが移動するとしているが、他にもＸ，Ｙ，Ｚ軸でテーブルを移動する多軸工作機械もある。また、図示していない工具マガジンやワークを載せるパレットなどを動作させる他の直線軸が追加されている多軸工作機械もある。そのような他の構成の多軸工作機械にも同様に適用可能である。ワーク上の切削点位置はプログラム座標系のＸ，Ｙ，Ｚ軸位置で指令される。工具形状をその側面図（図１０参照）で示す。ワーク１は省略して描いている。制御点位置はＢ，Ｃ軸の回転中心交点とする。工具形状における工具背面左上を拡大して図１１に示す。図１１にはワークも描いている。
【００１８】
加工プログラム例としては図１２のように指令される。ここで、Ｇ４３．８は切削点指令を開始するＧコードである。Ｈ＿は工具長補正量番号、Ｄ＿は工具径補正量番号、Ｔ＿は工具厚補正量番号、Ｌ＿はテーパ角番号、Ｒ＿は工具背面コーナＲ補正量番号、Ｑ＿は工具先端面コーナＲ補正量番号の指令である。  
各工具長補正量番号毎に対応する工具長補正量、各工具径補正量番号毎に対応する工具径補正量、各工具厚補正量番号毎に対応する工具厚補正量、各テーパ角番号毎に対応するテーパ角、各工具背面工具先端面コーナＲ補正量番号毎に対応する工具背面工具先端面コーナＲ補正量、および、各工具先端面コーナＲ補正量番号毎に対応する工具先端面コーナＲ補正量が、予め設定されており、Ｈ＿の指令によって工具長補正量Ｔｈ、Ｄ＿の指令によって工具径補正量Ｔｒ、Ｔ＿の指令によって工具厚補正量Ｔｔ、Ｌ＿の指令によってテーパ角θ、Ｒ＿の指令によって工具背面コーナＲ補正量Ｃｂ、Ｑ＿の指令によって工具先端面コーナＲ補正量Ｃｆを指令する。もちろん、各工具番号毎に対応するこれらのデータを１つのグループとして設定しておき、１つの工具番号を指令することでこれらのデータを一括して指令するようにしてもよい。
【００１９】
Ｇ４９は切削点指令をキャンセルするＧコードであり、その間の各ブロックのＸ＿、Ｙ＿、Ｚ＿は、プログラム座標系でワーク上の指令切削点位置を指令する指令である。Ｂ＿、Ｃ＿は、指令回転軸位置として指令工具方向を指令する指令である。Ｂ＿、Ｃ＿の代わりにＵ＿、Ｖ＿、Ｗ＿のようなベクトルによる指令工具方向ベクトルとして指令工具方向を指令することもできる。Ｉ＿、Ｊ＿、Ｋ＿は、指令切削点位置における切削面に対する垂直方向をベクトルで指令する指令切削面垂直ベクトルの指令である。Ｕ＿、Ｖ＿、Ｗ＿またはＩ＿、Ｊ＿、Ｋ＿は単位ベクトルで指令されるとする。Ｆ＿は各指令切削点位置間の加工速度を指令する指令である。
【００２０】
本発明は切削点指令に対して、つまりＧ４３．８からＧ４９指令までの加工プログラムに適用される。切削点指令読取り部（図１７の切削点指令読取り部１２を参照）で、加工プログラムにより指令されるこれらの指令データ、Ｄ＿、Ｈ＿、Ｔ＿、Ｌ＿、Ｒ＿、Ｑ＿、Ｘ＿、Ｙ＿、Ｚ＿、Ｂ＿、Ｃ＿（または、Ｕ、Ｖ、Ｗ）、Ｉ＿、Ｊ＿、Ｋ＿を読取り、工具径補正量Ｔｒ、工具長補正量Ｔｈ、工具厚補正量Ｔｔ、テーパ角θ、工具背面コーナＲ補正量Ｃｂ、工具先端面コーナＲ補正量Ｃｆ、指令切削点位置（Ｘ＿、Ｙ＿、Ｚ＿）、指令切削面垂直ベクトル（Ｉ＿、Ｊ＿、Ｋ＿）、指令工具方向（Ｂ＿、Ｃ＿またはＵ＿、Ｖ＿、Ｗ＿）を、切削点指令読取りデータとする。
【００２１】
上記において、Ｂ＿、Ｃ＿の指令は、数１式の計算により指令工具方向ベクトルの指令とすることができる。以降ではＵ＿、Ｖ＿、Ｗ＿で指令工具方向ベクトルが指令されているとして説明する。
【００２２】
【数１】
0005872869.tif 000002
【００２３】
（Ｘ，Ｙ，Ｚ）、（Ｉ，Ｊ，Ｋ）、（Ｕ，Ｖ，Ｗ）の指令に対して、各ブロック間で補間周期毎に補間する。これは従来技術であるので詳述しない。（Ｘ，Ｙ，Ｚ）について補間した位置を補間切削点位置Ｐｃ（Ｘｃ，Ｙｃ，Ｚｃ）T、（Ｉ，Ｊ，Ｋ）について補間した方向を補間切削面垂直ベクトルＶｐ（Ｖｐｘ，Ｖｐｙ，Ｖｐｚ）T、（Ｕ，Ｖ，Ｗ）について補間した方向を補間工具方向ベクトルＶｔ（Ｖｔｘ，Ｖｔｙ，Ｖｔｚ）Tとする。補間切削面垂直ベクトルＶｐ、補間工具方向ベクトルＶｔは単位ベクトルとする。ここで、「T」は転置を表す。図１０など図中や以降の記載におけるベクトル表記の「T」について、自明の場合省略する。  
これらから、数２式のように補間コーナＲ補正ベクトルＶｃ（Ｖｃｘ，Ｖｃｙ，Ｖｃｚ）を求める。数３式のように補間工具長補正ベクトルＶｈ（Ｖｈｘ，Ｖｈｙ，Ｖｈｚ）を求める。
【００２４】
【数２】
0005872869.tif 000003
【００２５】
【数３】
0005872869.tif 000004
【００２６】
補間工具径補正ベクトルＶｒ（Ｖｒｘ，Ｖｒｙ，Ｖｒｚ）は次のように求める。  
Ｖｖ（Ｖｖｘ，Ｖｖｙ，Ｖｖｚ）はＶｐおよびＶｔに垂直な単位ベクトル、つまり図１１紙面に垂直な（紙面手前に向いた）ベクトルである。Ｖｖ（Ｖｖｘ，Ｖｖｙ，Ｖｖｚ）は数４式で表される。βはＶｐとＶｒの成す角、αはＶｐとＶｔの成す角であり、数５式の関係がある（図１１参照）。マトリックスＭｒはＶｖを回転中心軸としてβだけ回転させるマトリックスである（数６式参照）。ＬｒはＶｒの長さである（数７式、図１０、図１１参照）。Ｖｐに対してＭｒを乗算し長さをＬｒにしたベクトルがＶｒである（数８式参照）。記号「×」は外積、記号「・」は内積、「＊」は乗算を示す。
【００２７】
【数４】
0005872869.tif 000005
【００２８】
【数５】
0005872869.tif 000006
【００２９】
【数６】
0005872869.tif 000007
【００３０】
【数７】
0005872869.tif 000008
【００３１】
【数８】
0005872869.tif 000009
【００３２】
これらの、補間切削点位置Ｐｃ、補間工具径補正ベクトルＶｒ、補間コーナＲ補正ベクトルＶｃ、補間工具方向ベクトルＶｔ、補間工具長補正ベクトルＶｈが、切削点指令補間データである。  
切削点指令補間データから、数９式のように直線軸３軸の制御点位置Ｐｍ（Ｘｍ，Ｙｍ，Ｚｍ）および数１０式のように回転軸２軸の制御点位置（Ｂｍ，Ｃｍ）を求め、それらの制御点位置に移動するように各軸を駆動する。これらの計算を行うのが切削点指令制御部である。これによって、工具背面のコーナＲ部分による切削点指令での加工が可能になる。
【００３３】
【数９】
0005872869.tif 000010
【００３４】
【数１０】
0005872869.tif 000011
【００３５】
ここでは、工具ヘッド回転型多軸工作機械で説明したが、多軸工作機械には他にも、Ｚ軸方向に移動する工具ヘッドに工具２を取り付け回転軸２軸でテーブル５を回転するテーブル回転型多軸工作機械（図１３参照）や、回転軸１軸で工具２が取り付けられた工具ヘッドを回転し他の回転軸１軸でテーブル７を回転する混合型多軸工作機械（図１４参照）もある。本発明はそれらの多軸工作機械にも同様に適用可能である。
【００３６】
さらに、ここでは少なくとも直線軸３軸と回転軸２軸を持つ５軸工作機械の例としたが、回転軸２軸のうち１軸の位置を固定位置にすることによりその回転軸は不要とし、少なくとも直線軸３軸と回転軸１軸持つ４軸工作機械にも適用可能である。
【００３７】
２）第２の実施形態
第１の実施形態では工具背面のコーナＲ部分やテーパ角を持つ工具で説明したが、第１の実施形態を基に工具背面のコーナＲ部分やテーパ角を持たない工具の場合について説明する。  
図７のような工具背面のコーナＲ部分を持たない工具の場合、第１の実施形態における工具背面コーナＲ補正量番号の指令Ｒ＿はない。工具先端面コーナＲ補正量番号の指令Ｑ＿も不要である。したがって、切削点指令読取り部（図１７参照）で、工具径補正量Ｔｒ、工具長補正量Ｔｈ、工具厚補正量Ｔｔ、テーパ角θ、指令切削点位置（Ｘ＿、Ｙ＿、Ｚ＿）、指令切削面垂直ベクトル（Ｉ＿、Ｊ＿、Ｋ＿）、指令工具方向（Ｂ＿、Ｃ＿またはＵ＿、Ｖ＿、Ｗ＿）を、切削点指令読取りデータとする。数２式〜数１０式において、Ｃｂ＝Ｃｆ＝０とすればよい。補間切削点位置Ｐｃ、補間工具径補正ベクトルＶｒ、補間工具方向ベクトルＶｔおよび補間工具長補正ベクトルＶｈが切削点指令補間データであり、それらの切削点指令補間データから直線軸３軸および回転軸２軸の制御点位置を求め、制御点位置に移動するよう各軸を駆動する。
【００３８】
図３、図４のようなテーパ角を持たない工具の場合、第１の実施形態におけるテーパ角番号の指令Ｌ＿はない。工具先端面コーナＲ補正量番号の指令Ｑ＿も不要である。したがって、切削点指令読取り部で、工具径補正量Ｔｒ、工具長補正量Ｔｈ、工具厚補正量Ｔｔ、工具背面コーナＲ補正量Ｃｂ、指令切削点位置（Ｘ＿、Ｙ＿、Ｚ＿）、指令切削面垂直ベクトル（Ｉ＿、Ｊ＿、Ｋ＿）、指令工具方向（Ｂ＿、Ｃ＿またはＵ＿、Ｖ＿、Ｗ＿）を、切削点指令読取りデータとする。数２式〜数１０式において、θ＝０とすればよい。この時、数７式はＬｒ＝Ｔｒ−ＣｂとなりＣｆは現われない。補間切削点位置Ｐｃ、補間工具径補正ベクトルＶｒ、補間コーナＲ補正ベクトルＶｃ、補間工具方向ベクトルＶｔおよび補間工具長補正ベクトルＶｈが切削点指令補間データであり、それらの切削点指令補間データから直線軸３軸および回転軸２軸の制御点位置を求め、制御点位置に移動するよう各軸を駆動する。
【００３９】
図５、図６のような工具背面のコーナＲ部分もテーパ角も持たない工具の場合、第１の実施形態における工具背面コーナＲ補正量番号の指令Ｒ＿、工具先端面コーナＲ補正量番号の指令Ｑ＿、およびテーパ角番号の指令Ｌ＿はない。したがって、切削点指令読取り部で、工具径補正量Ｔｒ、工具長補正量Ｔｈ、工具厚補正量Ｔｔ、指令切削点位置（Ｘ＿、Ｙ＿、Ｚ＿）、指令切削面垂直ベクトル（Ｉ＿、Ｊ＿、Ｋ＿）、指令工具方向（Ｂ＿、Ｃ＿またはＵ＿、Ｖ＿、Ｗ＿）を、切削点指令読取りデータとする。数２式〜数１０式において、Ｃｂ＝Ｃｆ＝０、θ＝０とすればよい。補間切削点位置Ｐｃ、補間工具径補正ベクトルＶｒ、補間工具方向ベクトルＶｔおよび補間工具長補正ベクトルＶｈが切削点指令補間データであり、それらの切削点指令補間データから直線軸３軸および回転軸２軸の制御点位置を求め、制御点位置に移動するよう各軸を駆動する。
【００４０】
３）第３の実施形態
第１の実施形態では少なくとも直線軸３軸と回転軸２軸によって加工する多軸工作機械で説明したが、第１の実施形態を基に回転軸を持たない工作機械の場合について説明する。  
対象の工作機械では図１５のように直線軸Ｘ，Ｙ，Ｚ軸で工具ヘッドが移動する。他にもＸ，Ｙ，Ｚ軸でテーブルを移動する工作機械もある。また、第１の実施形態でも記載したように、図示していない工具マガジンやワークを載せるパレットなどを動作させる他の直線軸が追加されている工作機械もある。  
このような少なくとも直線軸３軸によって加工する工作機械の場合、第１の実施形態における指令工具方向の指令はない。つまり、図１２で示した加工プログラムにおけるＢ＿、Ｃ＿の指令はない。それに代わるＵ＿、Ｖ＿、Ｗ＿の指令もない（図１６参照）。したがって、切削点指令読取り部（図１７参照）で、加工プログラムにより指令されるこれらの指令データ、Ｄ＿、Ｈ＿、Ｔ＿、Ｌ＿、Ｒ＿、Ｑ＿、Ｘ＿、Ｙ＿、Ｚ＿、Ｉ＿、Ｊ＿、Ｋ＿を読取り、工具径補正量Ｔｒ、工具長補正量Ｔｈ、工具厚補正量Ｔｔ、テーパ角θ、工具背面コーナＲ補正量Ｃｂ、工具先端面コーナＲ補正量Ｃｆ、指令切削点位置（Ｘ＿、Ｙ＿、Ｚ＿）、指令切削面垂直ベクトル（Ｉ＿、Ｊ＿、Ｋ＿）を、切削点指令読取りデータとする。
【００４１】
工具方向は別途パラメータで設定しておく。図１５の工作機械では工具方向はＺ軸方向である。第１の実施形態における補間工具方向ベクトルＶｔは、本実施形態では工具方向ベクトルＶｔ（０，０，１）となる。第１の実施形態では、各ブロックの（Ｕ，Ｖ，Ｗ）の指令に対して補間周期毎に補間した方向を補間工具方向ベクトルＶｔとし、補間工具長補正ベクトルＶｈを数３式で補間周期毎に求めたが、本実施形態では工具方向ベクトルは一定なので補間周期毎に求める必要はない。数３式に対応する計算として、工具長補正量Ｔｈ、工具厚補正量Ｔｔまたは工具背面コーナＲ補正量Ｃｂが指令された時に、それらの量と設定されている工具方向Ｖｔ＝（０，０，１）によって、数１１式のように工具長補正ベクトルＶｈを計算する。ここで求められる工具長補正ベクトルＶｈおよび上記工具方向ベクトルＶｔは、補間工具長補正ベクトルＶｈおよび補間工具方向ベクトルＶｔと同様に数４式、数５式、数８式、数９式などで使用する。そのため、それらは補間工具長補正ベクトルＶｈおよび補間工具方向ベクトルＶｔと同じ記号としたが、上記のように，工具長補正ベクトルＶｈは補間周期毎に求めるベクトルではなく、工具長補正量Ｔｈ、工具厚補正量Ｔｔまたは工具背面コーナＲ補正量Ｃｂが指令された時に、それらの量と工具方向ベクトルＶｔから求めるベクトルであり、工具方向ベクトルＶｔは設定されているベクトルである。
【００４２】
【数１１】
0005872869.tif 000012
【００４３】
数１１式以外の数２式、数４式〜数９式の計算は第１の実施形態と同様である。したがって、補間切削点位置Ｐｃ、補間工具径補正ベクトルＶｒ、補間コーナＲ補正ベクトルＶｃが切削点指令補間データであり、それらの切削点指令補間データ、工具長補正量Ｔｈ、工具背面コーナＲ補正量Ｃｂおよび工具厚補正量Ｔｔから直線軸３軸の制御点位置を求め、制御点位置に移動するよう各軸を駆動する。
【００４４】
４）第４の実施形態
第３の実施形態では少なくとも直線軸３軸によって加工する工作機械において工具背面のコーナＲ部分やテーパ角を持つ工具での実施例であったが、第３の実施例を基に工具背面のコーナＲ部分やテーパ角を持たない工具の場合について説明する。
【００４５】
図７のような工具背面のコーナＲ部分を持たない工具の場合、第３の実施形態における工具背面コーナＲ補正量番号の指令Ｒ＿はない。工具先端面コーナＲ補正量番号の指令Ｑ＿も不要である。したがって、切削点指令読取り部で、工具径補正量Ｔｒ、工具長補正量Ｔｈ、工具厚補正量Ｔｔ、テーパ角θ、指令切削点位置（Ｘ＿、Ｙ＿、Ｚ＿）、指令切削面垂直ベクトル（Ｉ＿、Ｊ＿、Ｋ＿）を、切削点指令読取りデータとする。数２式、数１１式、数４式〜数９式において、Ｃｂ＝Ｃｆ＝０とすればよい。補間切削点位置Ｐｃ、補間工具径補正ベクトルＶｒが切削点指令補間データであり、それらの切削点指令補間データ、工具長補正量Ｔｈおよび工具厚補正量Ｔｔから直線軸３軸の制御点位置を求め、制御点位置に移動するよう各軸を駆動する。
【００４６】
図３、図４のようなテーパ角を持たない工具の場合、第３の実施形態におけるテーパ角番号の指令Ｌ＿はない。工具先端面コーナＲ補正量番号の指令Ｑ＿も不要である。したがって、切削点指令読取り部で、工具径補正量Ｔｒ、工具長補正量Ｔｈ、工具厚補正量Ｔｔ、工具背面コーナＲ補正量Ｃｂ、指令切削点位置（Ｘ＿、Ｙ＿、Ｚ＿）、指令切削面垂直ベクトル（Ｉ＿、Ｊ＿、Ｋ＿）を、切削点指令読取りデータとする。数２式、数１１式、数４式〜数９式において、θ＝０とすればよい。この時、数７式はＬｒ＝Ｔｒ−ＣｂとなりＣｆは現われない。補間切削点位置Ｐｃ、補間工具径補正ベクトルＶｒ、補間コーナＲ補正ベクトルＶｃが切削点指令補間データであり、それらの切削点指令補間データ，工具長補正量Ｔｈ，工具厚補正量Ｔｔおよび工具背面コーナＲ補正量Ｃｂから直線軸３軸の制御点位置を求め、制御点位置に移動するよう各軸を駆動する。
【００４７】
図５、図６のような工具背面のコーナＲ部分もテーパ角も持たない工具の場合、第３の実施形態における工具背面コーナＲ補正量番号の指令Ｒ＿、工具先端面コーナＲ補正量番号の指令Ｑ＿、およびテーパ角番号の指令Ｌ＿はない。したがって、切削点指令読取り部で、工具径補正量Ｔｒ、工具長補正量Ｔｈ、工具厚補正量Ｔｔ、指令切削点位置（Ｘ＿、Ｙ＿、Ｚ＿）、指令切削面垂直ベクトル（Ｉ＿、Ｊ＿、Ｋ＿）を、切削点指令読取りデータとする。数２式、数１１式、数４式〜数９式において、Ｃｂ＝Ｃｆ＝０、θ＝０とすればよい。補間切削点位置Ｐｃ、補間工具径補正ベクトルＶｒが切削点指令補間データであり、それらの切削点指令補間データ、工具長補正量Ｔｈおよび工具厚補正量Ｔｔから直線軸３軸の制御点位置を求め、制御点位置に移動するよう各軸を駆動する。
【００４８】
次に、図１７を用いて本発明第１の実施形態での数値制御装置を説明する。数値制御装置は一般に、指令読取り解析部１０で加工プログラムの指令を読取るとともに解析して補間用データを作成し、補間部１６で補間用データにもとづいて補間を行って各軸の移動すべき位置を求め、その位置によって各軸のサーボ２２Ｘ，２２Ｙ，２２Ｚ，２２Ｂ（Ａ），２２Ｃを駆動する。
【００４９】
本発明では、指令読取り解析部１０に属する切削点指令読取り部１２で、加工プログラムを読取り切削点指令読取りデータ１４を作成する。また、補間部１６に属する切削点指令制御部１８で切削点指令補間データ２０を作成し、各軸の制御点位置を求める。求められた各軸の制御点位置に移動するよう各軸のサーボ２２Ｘ，２２Ｙ，２２Ｚ，２２Ｂ（Ａ），２２Ｃを駆動する。
【００５０】
図１８に第１の実施形態における切削点指令制御部のフローチャートを示す。以下、各ステップに従って説明する。  
●［ステップＳＡ０１］切削点指令読取り部で読取っている切削点指令読取りデータ（Ｔｒ，Ｔｈ，Ｔｔ，θ，Ｃｂ，Ｃｆ）を得る。  
●［ステップＳＡ０２］各ブロックの（Ｘ，Ｙ，Ｚ）指令について補間した位置を補間切削点位置Ｐｃ（Ｘｃ，Ｙｃ，Ｚｃ）とし、（Ｉ，Ｊ，Ｋ）指令について補間した方向を補間切削面垂直ベクトルＶｐ（Ｖｐｘ，Ｖｐｙ，Ｖｐｚ）とし、（Ｕ，Ｖ，Ｗ）指令について補間した方向を補間工具方向ベクトルＶｔ（Ｖｔｘ，Ｖｔｙ，Ｖｔｚ）とする。  
●［ステップＳＡ０３］数２式〜数８式の計算を行い、切削点指令補間データ（Ｐｃ，Ｖｃ，Ｖｒ，Ｖｈ，Ｖｔ）を得る。  
●［ステップＳＡ０４］数９式、数１０式の計算によってＰｍ（Ｘｍ，Ｙｍ，Ｚｍ），Ｂｍ，Ｃｍを得る。
【符号の説明】
【００５１】
１  ワーク
２  工具
３  テーブル
５  テーブル
７  テーブル
１０  指令読取り解析部
１２  切削点指令読取り部
１４  切削点指令読取りデータ
１６  補間部
１８  切削点指令制御部
２０  切削点指令補間データ
２２Ｘ  Ｘ軸サーボ
２２Ｙ  Ｙ軸サーボ
２２Ｚ  Ｚ軸サーボ
２２Ｂ（Ａ）  Ｂ（Ａ）軸サーボ
２２Ｃ  Ｃ軸サーボ
【図１】
0005872869.tif 000013
【図２】
0005872869.tif 000014
【図３】
0005872869.tif 000015
【図４】
0005872869.tif 000016
【図５】
0005872869.tif 000017
【図６】
0005872869.tif 000018
【図７】
0005872869.tif 000019
【図８】
0005872869.tif 000020
【図９】
0005872869.tif 000021
【図１０】
0005872869.tif 000022
【図１１】
0005872869.tif 000023
【図１２】
0005872869.tif 000024
【図１３】
0005872869.tif 000025
【図１４】
0005872869.tif 000026
【図１５】
0005872869.tif 000027
【図１６】
0005872869.tif 000028
【図１７】
0005872869.tif 000029
【図１８】
0005872869.tif 000030