特開2017-204072(P2017-204072A)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ DMG森精機株式会社の特許一覧

特開2017-204072加工プログラム処理装置およびこれを備えた多軸加工機
<>
  • 特開2017204072-加工プログラム処理装置およびこれを備えた多軸加工機 図000003
  • 特開2017204072-加工プログラム処理装置およびこれを備えた多軸加工機 図000004
  • 特開2017204072-加工プログラム処理装置およびこれを備えた多軸加工機 図000005
  • 特開2017204072-加工プログラム処理装置およびこれを備えた多軸加工機 図000006
  • 特開2017204072-加工プログラム処理装置およびこれを備えた多軸加工機 図000007
  • 特開2017204072-加工プログラム処理装置およびこれを備えた多軸加工機 図000008
  • 特開2017204072-加工プログラム処理装置およびこれを備えた多軸加工機 図000009
  • 特開2017204072-加工プログラム処理装置およびこれを備えた多軸加工機 図000010
  • 特開2017204072-加工プログラム処理装置およびこれを備えた多軸加工機 図000011
  • 特開2017204072-加工プログラム処理装置およびこれを備えた多軸加工機 図000012
  • 特開2017204072-加工プログラム処理装置およびこれを備えた多軸加工機 図000013
  • 特開2017204072-加工プログラム処理装置およびこれを備えた多軸加工機 図000014
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】特開2017-204072(P2017-204072A)
(43)【公開日】2017年11月16日
(54)【発明の名称】加工プログラム処理装置およびこれを備えた多軸加工機
(51)【国際特許分類】
   G05B 19/404 20060101AFI20171020BHJP
   B23Q 15/26 20060101ALI20171020BHJP
【FI】
   G05B19/404 E
   B23Q15/26
【審査請求】未請求
【請求項の数】6
【出願形態】OL
【全頁数】19
(21)【出願番号】特願2016-94687(P2016-94687)
(22)【出願日】2016年5月10日
(71)【出願人】
【識別番号】000146847
【氏名又は名称】DMG森精機株式会社
(74)【代理人】
【識別番号】100110766
【弁理士】
【氏名又は名称】佐川 慎悟
(74)【代理人】
【識別番号】100133260
【弁理士】
【氏名又は名称】小林 基子
(74)【代理人】
【識別番号】100169340
【弁理士】
【氏名又は名称】川野 陽輔
(74)【代理人】
【識別番号】100195682
【弁理士】
【氏名又は名称】江部 陽子
(72)【発明者】
【氏名】脇坂 宗生
(72)【発明者】
【氏名】伊藤 路彦
【テーマコード(参考)】
3C001
3C269
【Fターム(参考)】
3C001KB09
3C001TA02
3C001TA05
3C001TB09
3C269AB01
3C269AB31
3C269BB05
3C269CC07
3C269EF02
3C269EF10
3C269EF17
3C269EF25
3C269EF76
3C269QB02
3C269QB17
(57)【要約】
【課題】 加工プログラムの各ブロックごとに工具先端点の移動速度が変化する場合であっても、加工時間を増大させることなく工具姿勢の速度変化を抑制し、回転軸やワークへのダメージを低減することができる加工プログラム処理装置およびこれを備えた多軸加工機を提供する。
【解決手段】 少なくとも2つの直線軸および少なくとも1つの回転軸を有する多軸加工機11の動作を制御する加工プログラムを処理する加工プログラム処理装置1であって、前記加工プログラムの各ブロックにおける工具姿勢の移動角度と、前記各ブロックにおける工具先端点の移動時間とが比例するように、前記各ブロックの指令角度を補正する制御手段3を有している。
【選択図】 図1
【特許請求の範囲】
【請求項1】
少なくとも2つの直線軸および少なくとも1つの回転軸を有する多軸加工機の動作を制御する加工プログラムを処理する加工プログラム処理装置であって、
前記加工プログラムの各ブロックにおける工具姿勢の移動角度と、前記各ブロックにおける工具先端点の移動時間とが比例するように、前記各ブロックの指令角度を補正する制御手段を有している、加工プログラム処理装置。
【請求項2】
前記制御手段は、前記加工プログラムで指定されている指令速度または前記加工プログラム処理装置の内部で自動調整される移動速度を用いて、前記ワークに対する工具先端点の相対速度を前記各ブロックごとに算出し、前記各ブロックにおける移動距離を前記相対速度で除算することにより前記移動時間を算出する、請求項1に記載の加工プログラム処理装置。
【請求項3】
前記制御手段は、前記多軸加工機を構成する各軸の許容速度および/または許容加速度の制限を超えない範囲で前記相対速度を算出する、請求項2に記載の加工プログラム処理装置。
【請求項4】
前記制御手段は、前記加工プログラムの第nブロック(n:M+1以上の自然数)の指令角度を補正する場合、前記第nブロックの前後M個(M:自然数)の各ブロックにおける補正前の移動角度を用いて前記指令角度を補正する、請求項1から請求項3のいずれかに記載の加工プログラム処理装置。
【請求項5】
前記加工プログラム処理装置は、前記加工プログラムによって前記多軸加工機を制御しワークの加工を行う数値制御装置、または、前記多軸加工機で利用可能な前記加工プログラムの生成および編集を行うコンピュータ支援製造(CAM)装置である、請求項1から請求項4のいずれかに記載の加工プログラム処理装置。
【請求項6】
請求項1から請求項5のいずれかに記載の加工プログラム処理装置を備えてなる多軸加工機。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、多軸加工機の動作を制御する加工プログラムを処理する加工プログラム処理装置およびこれを備えた多軸加工機に関するものである。
【背景技術】
【0002】
従来、直交する直線軸3軸(X軸、Y軸、Z軸)と回転軸2軸とが同時に制御される5軸加工機等の多軸加工機においては、ワークに対する工具先端点(工具の刃先)の速度を指令し、当該指令速度で工具先端点の移動を制御する工具先端点制御が行われている。当該工具先端点制御では、工具先端点を移動させながら、工具姿勢を変化させることがある。このため、場合によっては、工具姿勢を定める回転軸の速度が急激に変化し、大きな加速度が発生するケースが存在する。
【0003】
例えば、以下に示すN0、N1およびN2ブロックからなる加工プログラム例1を5軸加工機で実行した場合における工具先端点および工具姿勢の動作について説明する。
〔加工プログラム例1〕
N0 X0.0 B−45.0;
N1 G01 X9.0 B0.0 F600;
N2 G01 X10.0 B45.0;
なお、上記において、「G01」はワークに対する工具先端点や工具姿勢の移動を指令するコードであり、「F」はワークに対する工具先端点の相対速度を指令するコードである。
【0004】
上記加工プログラム例1によれば、まず、N0ブロックにより、工具先端点がX軸方向の初期位置として0.0mmに移動されるとともに、工具姿勢がB軸(回転軸)周りの初期角度として−45.0度に移動される。つぎに、N1ブロックでは、図8に示すように、工具先端点が送り速度600mm/分(=10mm/秒)でX軸方向に9.0mm移動するとともに、当該移動に伴って工具姿勢がB軸周りに45度移動する。つづいて、N2ブロックでは、図8に示すように、工具先端点がN1ブロックと同じ送り速度(10mm/秒)のまま、X軸方向に1.0mm移動する一方、当該移動に伴って工具姿勢はB軸周りにさらに45度移動することとなる。
【0005】
すなわち、図9(a)に示すように、工具先端点のワークに対する相対速度は、N1ブロックおよびN2ブロックの双方において一定(10mm/秒)である。このため、各ブロックに要する移動時間は、工具先端点の移動距離に比例し、N1ブロックでは、0.9秒(=9.0/10)であるのに対し、N2ブロックでは、0.1秒(=1.0/10)しかかからない。
【0006】
一方、工具姿勢の移動角度は、上述したとおり、N1ブロックおよびN2ブロックの双方において同一(45度)である。このため、各ブロックにおける工具姿勢の移動速度は、図9(b)に示すように、N1ブロックでは、50度/秒(=45/0.9)であるのに対し、N2ブロックでは、450度/秒(=45/0.1)となる。すなわち、N1ブロックからN2ブロックまでの間では、工具先端点の速度が一定であるにもかかわらず、回転軸の移動速度が急激に変化する。
【0007】
上記のようなケースでは、急激な速度変化に応じた加速度が発生するため、回転軸に大きな負荷が掛かって破損してしまうおそれがある。また、上記のような加減速を繰り返すことによって工具が振動するため、ワークの加工面に誤差を発生させ、品質が低下してしまうという問題もある。
【0008】
そこで、従来の多軸加工機では、各ブロックの始点および終点近傍においてのみ、工具先端点の速度を減速制御する機能や、各ブロックにおける工具先端点の速度を全体的に減速制御する機能を有している。これらの機能によって、回転軸の速度変化が小さくなるように減速制御すると、大きな加速度の発生は抑制される。しかしながら、その一方で、減速制御するほど加工時間が長くなってしまうという別の問題が発生する。
【0009】
上記課題を解決するものとして、例えば、特許第4351281号公報には、各ブロックに対して、工具方向の変化量と直線軸の変化量とが比例するように、工具方向指令を補正する工具方向指令補正手段を備えた、5軸加工機を制御する数値制御装置が開示されている(特許文献1)。
【0010】
上記特許文献1に記載の数値制御装置によれば、上記加工プログラム例1を実行した場合、図11(a)に示すように、N1ブロックとN2ブロックにおける直線軸(X軸方向)の変化量が「9(9mm):1(1mm)」であるため、工具方向(B軸周り)の変化量も「9:1」となるように、N1ブロックの工具方向指令(B軸の指令角度)が補正される。すなわち、図10に示すように、N1ブロックでは、B軸の指令角度(0度)に36度加算して81度移動させることとなり、N2ブロックでは、残りの9度を移動させることとなる。これにより、図11(b)に示すように、B軸の移動速度も各ブロックで一定(90度/秒)となるため、上述した減速制御を行う必要はない。
【先行技術文献】
【特許文献】
【0011】
【特許文献1】特許第4351281号公報
【発明の概要】
【発明が解決しようとする課題】
【0012】
しかしながら、上記特許文献1においては、各ブロックにおける直線軸(工具先端点)の指令速度が一定であることが前提とされており、現実的ではない。すなわち、数値制御装置においては、一般的に、加工プログラム上の指令速度が一定であっても、工作条件や工作機械の性能等に応じて直線軸の移動速度が自動的に加減速制御されている。また、加工プログラム上で直線軸の指令速度を変化させる場合もあるため、実際には、直線軸の移動速度は一定ではなく、ブロックごとに変化する場合が多い。
【0013】
例えば、上記特許文献1に記載の数値制御装置によって、以下に示す加工プログラム例2を実行した場合における工具先端点および工具姿勢の動作について説明する。
〔加工プログラム例2〕
N0 X0.0 B−45.0;
N1 G01 X9.0 B0.0 F600;
N2 G01 X10.0 B45.0 F300;
【0014】
上記加工プログラム例2では、上記加工プログラム例1と比較して、N2ブロックでの指令速度が300mm/分(=5mm/秒)に半減されている。このため、図12(a)に示すように、当該N2ブロックに要する移動時間は、N1ブロックの2倍の0.2秒(=1.0/5)となる。しかしながら、特許文献1に記載の数値制御装置によって、工具方向の変化量と直線軸の変化量とが比例するように工具方向指令を補正しても、上記のとおり、各ブロックの移動量は、それぞれ81度と9度のままである。
【0015】
このため、図12(b)に示すように、B軸の移動速度は、N1ブロックでは90度/秒(=81/0.9)となるのに対し、N2ブロックでは45度/秒(=9/0.2)となってしまう。すなわち、各ブロックで直線軸の移動速度が変化する場合には、上記特許文献1に係る補正を行っても、回転軸の移動速度が変化することとなる。したがって、結局のところ、当該速度変化に応じた回転軸の加減速が必要となるため、回転軸やワークへのダメージ、および加工時間の増大化は避けられないという問題がある。
【0016】
本発明は、このような問題点を解決するためになされたものであって、加工プログラムの各ブロックごとに工具先端点の移動速度が変化する場合であっても、加工時間を増大させることなく工具姿勢の速度変化を抑制し、回転軸やワークへのダメージを低減することができる加工プログラム処理装置およびこれを備えた多軸加工機を提供することを目的としている。
【課題を解決するための手段】
【0017】
本発明に係る加工プログラム処理装置は、加工プログラムの各ブロックごとに工具先端点の移動速度が変化する場合であっても、加工時間を増大させることなく回転軸の速度変化を抑制し、回転軸やワークへのダメージを低減するという課題を解決するために、少なくとも2つの直線軸および少なくとも1つの回転軸を有する多軸加工機の動作を制御する加工プログラムを処理する加工プログラム処理装置であって、前記加工プログラムの各ブロックにおける工具姿勢の移動角度と、前記各ブロックにおける工具先端点の移動時間とが比例するように、前記各ブロックの指令角度を補正する制御手段を有している。
【0018】
また、本発明の一態様として、各ブロックの移動時間を高精度に算出するという課題を解決するために、前記制御手段は、前記加工プログラムで指定されている指令速度または前記加工プログラム処理装置の内部で自動調整される移動速度を用いて、前記ワークに対する工具先端点の相対速度を前記各ブロックごとに算出し、前記各ブロックにおける移動距離を前記相対速度で除算することにより前記移動時間を算出してもよい。
【0019】
さらに、本発明の一態様として、各軸に設定されている許容速度および/または許容加速度の制限を考慮して相対速度を算出するために、前記制御手段は、前記多軸加工機を構成する各軸の許容速度および/または許容加速度の制限を超えない範囲で前記相対速度を算出してもよい。
【0020】
また、本発明の一態様として、第nブロックの補正に用いるブロック数を適宜設定するという課題を解決するために、前記制御手段は、前記加工プログラムの第nブロック(n:M+1以上の自然数)の指令角度を補正する場合、前記第nブロックの前後M個(M:自然数)の各ブロックにおける補正前の移動角度を用いて前記指令角度を補正してもよい。
【0021】
さらに、本発明の一態様として、前記加工プログラム処理装置は、前記加工プログラムによって前記多軸加工機を制御しワークの加工を行う数値制御装置、または、前記多軸加工機で利用可能な前記加工プログラムの生成および編集を行うコンピュータ支援製造(CAM)装置であってもよい。
【0022】
また、本発明に係る多軸加工機は、上述したいずれかの態様の加工プログラム処理装置を備えてなるものである。
【発明の効果】
【0023】
本発明によれば、加工プログラムの各ブロックごとに工具先端点の移動速度が変化する場合であっても、加工時間を増大させることなく工具姿勢の速度変化を抑制し、回転軸やワークへのダメージを低減することができる。
【図面の簡単な説明】
【0024】
図1】本発明に係る加工プログラム処理装置およびこれを備えた多軸加工機の第1実施形態を示すブロック図である。
図2】本第1実施形態の5軸加工機における直線軸3軸および回転軸2軸を示す図である。
図3】本第1実施形態において、加工プログラムをブロックバッファに保存する処理を示すフローチャートである。
図4】本第1実施形態において、加工プログラムの各ブロックの指令角度を補正する処理を示すフローチャートである。
図5】本発明に係る加工プログラム処理装置およびこれを備えた多軸加工機の第2実施形態を示すブロック図である。
図6】本実施例1において、第1実施形態の数値制御装置または第2実施形態のCAM装置により加工プログラム例2を実行した場合の工具先端点および工具姿勢の動作を示す図である。
図7】本実施例1における、(a)工具先端点の速度、および(b)回転軸の速度を示す図である。
図8】従来の5軸加工機における工具先端点制御の動作を示す図である。
図9図8に示す工具先端点制御における、(a)工具先端点の速度、および(b)回転軸の速度を示す図である。
図10】特許文献1の数値制御装置により加工プログラム例1を実行した場合の工具先端点および工具姿勢の動作を示す図である。
図11】特許文献1の数値制御装置により加工プログラム例1を実行した場合における、(a)工具先端点の速度、および(b)回転軸の速度を示す図である。
図12】特許文献1の数値制御装置により加工プログラム例2を実行した場合における、(a)工具先端点の速度、および(b)回転軸の速度を示す図である。
【発明を実施するための形態】
【0025】
以下、本発明に係る加工プログラム処理装置およびこれを備えた多軸加工機の各実施形態について図面を用いて説明する。なお、本発明に係る加工プログラム処理装置は、多軸加工機の動作を制御する加工プログラムを処理可能な全ての装置を含む概念である。また、本発明にかかる多軸加工機は、少なくとも2つの直線軸および少なくとも1つの回転軸を有する全ての工作機械を含む概念である。
【0026】
まず、本発明に係る加工プログラム処理装置1およびこれを備えた多軸加工機11の第1実施形態として、数値制御装置1Aおよびこれを備えた5軸加工機11Aについて説明する。本第1実施形態の数値制御装置1Aは、図1に示すように、外部記憶装置10に記憶されている加工プログラムに基づいて、5軸加工機11Aへ各種の命令信号を出力することにより5軸加工機11Aを制御し、ワークに対して様々な加工を行うためのものである。以下、各構成について詳細に説明する。なお、本発明に係る数値制御装置1Aは、いわゆるコンピュータ数値制御(CNC:Computerized Numerical Control)等の数値制御処理を実行可能な全ての装置を含む概念である。
【0027】
外部記憶装置10は、一般的なオペレーティングシステムが搭載されたパーソナルコンピュータ等によって構成されている。本第1実施形態において、外部記憶装置10は、CFカード等のメモリーカードを差し込むためのカードスロット(図示せず)を備えており、当該メモリーカード内に加工プログラムが記憶されている。そして、外部記憶装置10は、当該メモリーカードから加工プログラムを読み出し、数値制御装置1Aへ供給するようになっている。
【0028】
また、加工プログラムは、コンピュータ支援製造(CAM:Computer Aided Manufacturing)システム等によって作成され、5軸加工機11Aを工具先端点制御するためのプログラム指令を含むものである。本第1実施形態において、加工プログラムは、上記加工プログラム例1,2のように、複数のブロックによって構成されており、当該ブロックには、工具先端点の指令位置および工具姿勢の指令角度を指定するGコードや、ワークに対する工具先端点の相対速度を指令するFコード等が記述されている。なお、本第1実施形態において、工具先端点の指令位置は、直線軸(X軸、Y軸、Z軸)の位置座標によって指定され、工具姿勢の指令角度は、回転軸(B軸,C軸)の移動角度によって指定されている。
【0029】
5軸加工機11Aは、金属、木材、石材、樹脂等のワークに対して、旋削、中ぐり、フライス削り、穴あけ、ねじ立てなど多種類の加工を施すための工作機械である。本第1実施形態において、5軸加工機11Aは、図2に示すように、直交する直線軸3軸(X軸、Y軸、Z軸)と、回転軸2軸(B軸、C軸)とを有している。そして、これら5軸が、後述する命令信号補間部35から出力された命令信号に基づいて同時制御されることにより、工具先端点や工具姿勢を移動させ、各種の加工処理を実行するようになっている。
【0030】
なお、本第1実施形態において、5軸加工機11Aは、回転軸が工具ヘッド側に設けられる工具回転ヘッド型を想定しているが、この構成に限定されるものではなく、回転軸2軸でテーブルを回転するテーブル回転型や、一方の回転軸1軸で工具ヘッドを回転させ、もう一方の回転軸でテーブルを回転させる混合型であってもよい。また、本第1実施形態において、5軸加工機11Aは、数値制御装置1Aを備えてなる5軸制御マシニングセンタを想定しているが、この構成に限定されるものではなく、5軸加工機11Aと数値制御装置1Aとは別体として構成されていてもよい。
【0031】
数値制御装置1Aは、コンピュータ等によって構成されており、加工プログラムによって5軸加工機11Aを制御しワークの加工を行うものである。図1に示すように、数値制御装置1Aは、主として、各種のデータを記憶するとともに、制御手段3が演算処理を行う際のワーキングエリアとして機能する記憶手段2と、記憶手段2にインストールされた数値制御装置用プログラム1aを実行することにより、各種の演算処理を実行する制御手段3とを有している。以下、各構成手段について説明する。
【0032】
記憶手段2は、ハードディスク、ROM(Read Only Memory)、RAM(Random Access Memory)、フラッシュメモリ等で構成されており、図1に示すように、プログラム記憶部21と、ブロックバッファ22とを有している。
【0033】
プログラム記憶部21には、リアルタイムオペレーティングシステム(RTOS)が搭載されているとともに、本第1実施形態の数値制御装置1Aを制御するための数値制御装置用プログラム1aがインストールされている。そして、制御手段3が、当該数値制御装置用プログラム1aを実行することにより、コンピュータを後述する各構成部としてとして機能させるようになっている。
【0034】
なお、数値制御装置用プログラム1aの利用形態は、上記構成に限られるものではない。例えば、CD−ROMやUSBメモリ等のように、コンピュータで読み取り可能な非一時的な記録媒体に数値制御装置用プログラム1aを記憶させておき、当該記録媒体から直接読み出して実行してもよい。また、外部サーバ等からクラウドコンピューティング方式やASP(Application Service Provider)方式等で利用してもよい。
【0035】
ブロックバッファ22は、加工プログラムを構成する複数のブロックを保存するものである。本第1実施形態において、ブロックバッファ22は、後述する加工プログラム解析部32によって解析された各種のブロックを順次保存するようになっている。そして、各ブロックは、FIFO(ファーストインファーストアウト)方式に従って、ブロックバッファ22に格納された順番で順次処理され、メモリ残量が無くなると処理済みのブロックから順次上書きされるようになっている。
【0036】
つぎに、制御手段3は、CPU(Central Processing Unit)等によって構成されており、記憶手段2にインストールされた数値制御装置用プログラム1aを実行することにより、図1に示すように、加工プログラム取得部31と、加工プログラム解析部32と、相対速度算出部33と、指令角度補正部34と、命令信号補間部35として機能するようになっている。以下、各構成部についてより詳細に説明する。
【0037】
加工プログラム取得部31は、加工プログラム解析部32からの要求に応じて、加工プログラムを外部記憶装置10から取得するものである。なお、本第1実施形態では、数値制御装置1Aと外部記憶装置10とがLANケーブルで通信可能に接続されているが、この構成に限定されるものではなく、ブルートゥース(登録商標)等の無線通信インターフェースを介して無線通信可能に構成されていてもよい。
【0038】
加工プログラム解析部32は、加工プログラムを解析するためのものである。本第1実施形態において、加工プログラム解析部32は、加工プログラム取得部31によって取得された加工プログラムを1ブロックずつ読み込み、記述された動作命令を解析し、解析結果としてのブロックをブロックバッファ22へ順次格納するようになっている。
【0039】
相対速度算出部33は、ワークに対する工具先端点の相対速度を算出するものである。本第1実施形態において、相対速度算出部33は、加工プログラムで指定されている指令速度または数値制御装置1Aの内部で自動調整される移動速度を用いて、ワークに対する工具先端点の相対速度を各ブロックごとに算出する。ここで、本発明において、数値制御装置1Aの内部で自動調整される移動速度とは、工具やワークの条件、加工条件および5軸加工機11Aの性能等に基づいて、各ブロックごとに自動調整される移動速度であり、加工プログラムの指令速度を超えない範囲で調整される。
【0040】
このため、相対速度算出部33は、上記相対速度の算出に際して、加工プログラムで指定されている指令速度が自動調整されないブロックについては、当該指令速度を使用し、自動調整されるブロックについては当該自動調整後の移動速度を読み出して使用するようになっている。なお、工具先端点制御では、工具先端点と工具姿勢とが同期して移動されるため、移動が指令されている軸以外の他の軸も移動することがある。このため、当該他の軸の移動速度についても、数値制御装置1Aの内部で自動調整されることとなる。
【0041】
また、本第1実施形態において、相対速度算出部33は、加工プログラム上の指令速度を超えない範囲で、かつ、5軸加工機11Aを構成する各軸の許容速度および許容加速度の制限を超えない範囲で、ワークに対する工具先端点の相対速度を算出する。具体的には、5軸加工機11Aでは、サーボモータの諸元や制御手段3の演算速度等により機械構成軸の速度および加速度に予め制限が設定されている。このため、相対速度算出部33は、加工プログラム上の指令速度または自動調整後の移動速度から、各軸の速度および加速度を割り出した後、各軸のいずれかが許容速度または許容加速度を超えている場合、当該軸の速度や加速度が許容範囲内となるように補正した上で相対速度を算出するようになっている。
【0042】
例えば、ブロックの開始点の速度、ブロックの終了点の速度およびブロックの途中の最大速度が、全て加工プログラムで指定されている指令速度よりも遅い速度になるように制御される。なお、本第1実施形態では、許容速度および許容加速度の双方を考慮しているが、この構成に限定されるものではなく、少なくともいずれか一方を考慮してもよい。
【0043】
指令角度補正部34は、加工プログラムの各ブロックにおける工具姿勢の移動角度と、各ブロックにおける工具先端点の移動時間とが比例するように、各ブロックの指令角度を補正するものである。本第1実施形態において、指令角度補正部34は、第nブロック(n:M+1以上の自然数)の指令角度を補正する場合、当該第nブロックの前後M個(M:自然数)の各ブロックにおける補正前の移動角度を用いて指令角度を補正する。このため、指令角度補正部34は、まず、第nブロックおよびその前後M個のブロックをブロックバッファ22から取得する。
【0044】
ここで、パラメータnは、補正対象ブロックを指定するものであり、加工開始時には初期値としてM+1に設定される。第1〜第Mブロックまでは補正に必要なブロックが存在しないためである。しかしながら、パラメータnの値はM+1に限定されるものではなく、適宜設定してもよい。例えば、加工開始直後のように、補正対象ブロックの前方に存在するブロック数がM個に満たない場合であっても、前方に存在するブロックのみを用いて上記補正処理を実行するようにしてもよい。その場合、パラメータnは1に設定される。
【0045】
なお、本第1実施形態において、指令角度補正部34は、前後M個のブロックを用いて第nブロックの指令角度を補正しているが、この構成に限定されるものではない。例えば、当該前後M個のブロック中に移動指令が含まれていないブロックが存在する場合は、当該ブロックを除外して補正処理を実行してもよい。
【0046】
また、補正に用いる前後のブロック数Mは、大きな値に設定するほど回転軸の速度変化を効果的に抑制しうる場合が多いが、本来補正が不要なブロックまで補正するケースも想定される。例えば、第1〜第99ブロックまでは工具姿勢を移動させず、第100ブロックで工具姿勢を移動させる加工プログラムに対して、Mを50に設定した場合、第51ブロック以降の全ブロックで回転軸の速度が一定となるように補正されることとなる。
【0047】
よって、指令角度補正部34は、取得したブロックのうち、工具姿勢の移動がないブロックが所定数連続するときは、補正が不要なブロック群と判断し、指令角度が所定数連続して指定されているブロック群に対してのみ補正処理を実行するようにしてもよい。これにより、補正が必要なブロック群についてのみ補正でき、補正が不要なブロック群については補正しないこととなる。なお、補正に用いる前後のブロック数Mは、ユーザにより適宜設定可能である。
【0048】
つづいて、指令角度補正部34は、各ブロックにおける工具先端点の移動距離を、相対速度算出部33によって算出された各ブロックにおける工具先端点の相対速度で除算することにより、各ブロックにおける工具先端点の移動時間を算出する。本第1実施形態において、各ブロックにおける工具先端点の移動距離は、工具先端点が前ブロックの指令位置から現ブロックの指令位置まで移動する際のワークに対する相対距離である。また、各ブロックにおける工具先端点の移動時間は、工具先端点が前ブロックの指令位置から現ブロックの指令位置に移動するまでに要する時間である。
【0049】
そして、指令角度補正部34は、各ブロックにおける工具姿勢の移動角度と、各ブロックにおける工具先端点の移動時間とが比例するように、各ブロックの指令角度を補正する。具体的には、指令角度補正部34は、第nブロックの指令角度を補正する場合、当該第nブロックおよびその前後M個の各ブロックからなる合計2M+1個の各ブロックに要する移動時間の総和で当該第nブロックの移動時間を除算し、その商に前記2M+1個の各ブロックで指定されている補正前の移動角度の総和を掛け合わせる。これにより、第nブロックで移動すべき移動角度が算出されるため、指令角度補正部34は、当該算出した移動角度だけ移動するように、第nブロックの指令角度を補正する。当該補正処理を順次実行することにより、各ブロックの移動角度と工具先端点の移動時間とが比例するように、各ブロックの指令角度が補正されることとなる。
【0050】
なお、指令角度補正部34による補正処理は、上述した演算処理に限定されるものではなく、各ブロックにおける工具姿勢の移動角度と、各ブロックにおける工具先端点の移動時間とが比例するように、各ブロックの指令角度を補正するものであれば、どのような演算処理であってもよい。また、本第1実施形態において、指令角度補正部34は、実行中のブロックよりも先のブロックを先行して演算する先読み制御を行っている。例えば、5ブロックにまたがって演算する場合、演算開始時のみ5ブロックを読み込み、必要な演算が終わってから軸移動を行う。そして、軸移動の開始後は、先のブロックを次々と読み込んで演算するため、それ以降は、実行処理よりも補正処理が遅くなって待ち時間が発生することがない。
【0051】
よって、本第1実施形態では、各ブロックの補正後の指令角度は、補正前の指令角度とともに別途、ブロックバッファ22内に記憶させているが、この構成に限定されるものではない。すなわち、各ブロックの補正後の指令角度をブロックバッファ11内に戻すことなく、直接、命令信号補間部35へ送信してもよい。
【0052】
また、指令角度を補正するに際しては、工具の種類や工具先端点のワーク上の経路等に応じた制限値を設定しておくことが好ましい。例えば、ボールエンドミルで加工する場合は、刃先が丸いため他の工具よりも当該制限値を大きめに設定してもよい。また、工具の進行方向に対して補正する場合は、ワークに対する影響が少ないため、他の方向よりも当該制限値を大きめに設定してもよい。これにより、ワークの加工面に対する工具の食い込み等を回避しつつ、工具の種類や工具先端点のワーク上の経路等に応じて、きめ細やかな補正を行うことが可能となる。
【0053】
また、本第1実施形態において、指令角度補正部34は、補正後の第nブロックを実行すると、残りブロック数がM個以上ある限り、再び、第n+1ブロックおよびその前後M個のブロックを取得して、上述の補正処理を繰り返すようになっている。一方、残りブロック数がM個より少なくなると、補正処理を終了する。しかしながら、当該処理に限定されるものではなく、残りブロック数がM個に満たない場合であっても、後方に存在するブロックのみを用いて上記補正処理を実行するようにしてもよい。なお、指令角度補正部34は、回転軸2軸のうち、いずれか一方の指令角度のみを補正してもよく、双方の指令角度を補正してもよい。
【0054】
命令信号補間部35は、5軸加工機11Aへの命令信号を補間処理し、当該命令信号を実行させるものである。本第1実施形態において、命令信号補間部35は、ブロックバッファ22に格納されている補正後のブロックを順次読み出して各軸の指令位置を求める補間演算を実行する。そして、各軸の移動指令量を、X軸サーボアンプ、Y軸サーボアンプ、Z軸サーボアンプ、B軸サーボアンプおよびC軸サーボアンプのそれぞれへ出力し、当該ブロックに応じた動作を5軸加工機11Aに実行させるようになっている。
【0055】
つぎに、本第1実施形態の数値制御装置1Aおよびこれを備えた5軸加工機11Aによる作用について説明する。
【0056】
まず、本第1実施形態の数値制御装置1Aによって5軸加工機11Aを制御しワークの加工を行う場合、図3に示すように、加工プログラム取得部31が、外部記憶装置10から加工プログラムを取得する(ステップS1)。加工プログラムを外部記憶装置10に保存することで、数値制御装置1A側のメモリを増設することなく、ファイルサイズの大きな加工プログラムを処理することが可能となる。
【0057】
つぎに、加工プログラム解析部32が、加工プログラム取得部31によって取得された加工プログラムを解析し(ステップS2)、その解析結果としてのブロックをブロックバッファ22へ順次格納する(ステップS3)。これにより、ブロックバッファ22には、工具先端点(直線軸3軸)の指令位置、工具姿勢(回転軸2軸)の指令角度およびワークに対する工具先端点の相対速度等を含む各ブロックが格納される。
【0058】
上述したステップS1〜S3の各処理は、加工プログラムを構成する全ブロックが取得されるまで繰り返された後(ステップS4)、終了する。また、これらの処理と同時並行して、相対速度算出部33および指令角度補正部34が、図4に示す指令角度の補正処理を実行する。そして、補正されたブロックから順次、命令信号補間部35によって命令信号へ補間処理された後、5軸加工機11Aへ出力されて実行されることとなる。
【0059】
具体的には、まず、指令角度補正部34が、パラメータnをM+1に設定して(ステップS11)、第nブロックおよびその前後M個のブロックをブロックバッファ22から取得する(ステップS12)。このとき、補正対象ブロック数Mを適切な値に設定することにより、回転軸の速度変化がより低減するように、指令角度を補正することが可能となる。
【0060】
つぎに、相対速度算出部33が、指令角度補正部34によって取得された全2M+1個の各ブロックについて、ワークに対する工具先端点の相対速度を算出する(ステップS13)。これにより、当該2M+1個の各ブロックについて算出された最適な相対速度に基づいて、指令角度を適切に補正することが可能となる。
【0061】
また、本第1実施形態において、相対速度算出部33は、加工プログラムで指定されている指令速度が、数値制御装置1Aの内部で自動調整される場合、当該調整後の移動速度を用いて相対速度を算出する。このため、より正確な相対速度が算出される。また、本第1実施形態において、相対速度算出部33は、加工プログラムの指令速度や、各構成軸の許容速度および許容加速度を超えない範囲で相対速度を算出する。このため、5軸加工機11Aの破損が防止されるとともに、加工時の振動が抑制され加工誤差の発生が回避される。
【0062】
つづいて、指令角度補正部34が、2M+1個の各ブロックについて、工具先端点の移動距離をステップS13で算出された相対速度で除算することにより工具先端点の移動時間を算出する(ステップS14)。これにより、2M+1個の各ブロックごとの移動時間が算出される。なお、本第1実施形態において、指令角度補正部34は、第nブロックの移動距離を特定するに際して、第n−1ブロックの指令位置を初期位置として使用する。
【0063】
そして、指令角度補正部34は、2M+1個の各ブロックにおける工具姿勢の移動角度と、2M+1個の各ブロックにおける工具先端点の移動時間とが比例するように、第nブロックの指令角度を補正する(ステップS15)。これにより、工具先端点の移動速度がブロックごとに変化する場合であっても、工具姿勢が一定速度で移動するように、第nブロックの指令角度が補正される。このため、加工時間の増大が抑制されるとともに、回転軸やワークへのダメージも低減される。
【0064】
つぎに、指令角度補正部34が、補正処理を実行していない残りのブロック数がM個以上あるか否かを判定する(ステップS16)。当該判定の結果、未処理のブロック数がM個以上ある場合には(ステップS16:YES)、パラメータnをインクリメントした後(ステップS17)、再びステップS12に戻り、第nブロックを前後M個のブロックを用いて補正する。
【0065】
一方、未処理のブロック数がM個未満になると(ステップS16:NO)、本処理を終了する。そして、当該未処理の各ブロックについては、最後に補正が行われたブロックについて算出された指令角度によって実行されるようになっている。なお、上述したとおり、残りブロック数がM個未満になっても、残りのブロックのみを用いて補正処理を実行してもよく、あるいは補正処理を中断してもよい。
【0066】
なお、本補正処理が実行されるのと同時並行して、命令信号補間部35は、ブロックバッファ22内のブロックを順次読み出して補間処理し、5軸加工機11Aに命令信号を出力する。これにより、指令角度補正部34が補正前のブロックを順次先読みして指令角度を補正しながら、命令信号補間部35が補正後のブロックに基づく命令信号を順次出力することが可能となる。
【0067】
以上のような本第1実施形態によれば、以下のような効果を奏する。
1.加工プログラムの各ブロックごとに工具先端点の移動速度が変化する場合であっても、加工時間を増大させることなく工具姿勢の速度変化を抑制することができる。
2.多軸加工機11の回転軸に大きな加速度が発生するのを抑制し、回転軸が破損してしまうのを防止することができる。
3.各軸の許容速度や許容加速度の制限を考慮してワークに対する工具先端点の相対速度を算出し、多軸加工機11の破損や振動によるワークの加工誤差を回避することができる。
4.各ブロックの開始点または終了点において移動速度を低下させることがないため、加工時間を短縮することができる。
5.補正に用いる前後のブロック数(M)を大きく設定することで、工具姿勢の移動速度の変化をより一層抑制することができる。
6.補正に用いる前後のブロック数(M)を小さく設定することで、特定のブロックの影響を受けて複数のブロックに対して不必要な補正がなされることを回避することができる。
7.指令角度の補正が不要なブロック群には補正処理を行わず、当該補正が必要なブロック群にのみ補正処理を実行することができる。
【0068】
つぎに、本発明に係る加工プログラム処理装置1およびこれを備えた多軸加工機11の第2実施形態として、コンピュータ支援製造装置(以下、「CAM装置」という)1Bおよびこれを備えた5軸加工機11Aについて説明する。なお、第2実施形態の構成のうち、上述した第1実施形態と同一もしくは相当する構成については同一の符号を付し、再度の説明を省略する。
【0069】
本第2実施形態の特徴は、多軸加工機11で利用可能な加工プログラムの生成および編集を行うCAM装置1Bに相対速度算出部33および指令角度補正部34を実装した点にある。
【0070】
本第2実施形態のCAM装置1Bは、図5に示すように、コンピュータ支援設計装置12(以下、「CAD装置」という)で生成されたCADデータに基づいて、5軸加工機11Aで利用可能な加工プログラムの生成および編集を行うためのものである。以下、各構成について説明する。
【0071】
CAD装置12は、一般的なオペレーティングシステムが搭載されたパーソナルコンピュータ等によって構成されている。本第2実施形態において、CAD装置12は、図示しない表示手段や入力手段を用いることにより、加工しようとする工作物の3次元形状を定義するCADデータを生成するようになっている。
【0072】
CAM装置1Bは、一般的なオペレーティングシステムが搭載されたコンピュータ等によって構成されており、5軸加工機11Aで利用可能な加工プログラムの生成および編集を行うものである。図5に示すように、CAM装置1Bは、主として、各種のデータを記憶するとともに、制御手段3が演算処理を行う際のワーキングエリアとして機能する記憶手段2と、記憶手段2にインストールされたCAM用プログラム1bを実行することにより、各種の演算処理を実行する制御手段3とを有している。以下、各構成手段について説明する。
【0073】
なお、本第2実施形態において、CAM装置1Bは、CAD装置12と別体として構成されているがこの構成に限定されるものではない。すなわち、CAD装置12によるCADデータ生成機能を兼ね備えたCAM装置1Bとして構成してもよい。また、本第2実施形態において、CAM装置1Bは、5軸加工機11Aに加工プログラムを転送可能に接続されているが、この構成に限定されるものではなく、スタンドアローンとしてもよい。
【0074】
記憶手段2は、図5に示すように、プログラム記憶部21と、加工プログラム記憶部23とを有している。プログラム記憶部21には、本第2実施形態のCAM装置1Bを制御するためのCAM用プログラム1bがインストールされている。そして、制御手段3が、当該CAM用プログラム1bを実行することにより、コンピュータを後述する各構成部としてとして機能させるようになっている。
【0075】
加工プログラム記憶部23は、CAM装置1Bによって生成および編集された加工プログラムを記憶するものである。本第2実施形態において、加工プログラム記憶部23は、後述する加工プログラム生成部37によって生成された加工プログラム、図示しない加工プログラム編集部によって編集された加工プログラム、および指令角度補正部34によって補正された後の加工プログラムを記憶するようになっている。
【0076】
つぎに、制御手段3は、記憶手段2にインストールされたCAM用プログラム1bを実行することにより、図5に示すように、工具経路データ生成部36と、加工プログラム生成部37と、相対速度算出部33と、指令角度補正部34と、加工プログラム転送部38として機能するようになっている。以下、各構成部について説明する。
【0077】
工具経路データ生成部36は、メインプロセッサで構成されており、CADデータから工具経路データ(CLデータ)を生成するものである。本第2実施形態において、工具経路データ生成部36は、CAD装置12で生成された工作物のCADデータを取得するとともに、経路生成情報(工具形状、面に対する工具姿勢、送りピッチ等)を取得する。そして、工具経路データ生成部36は、これらCADデータと経路生成情報とからワーク座標系における各工具移動位置の工具中心点を算出し、工具軸(主軸)の方向を表す工具軸ベクトルを算出するようになっている。
【0078】
また、5軸加工機11Aでは、工具が工作物に対して任意の姿勢をとれることから、主軸側(主軸、工具、チャック等)とテーブル側(テーブル、治具、工作物等)との干渉が問題となる。このため、工具経路データ生成部36は、当該干渉の有無を確認し、干渉がある場合は、当該干渉を回避するように工具姿勢等を変更する。以上のようにして、ワーク座標系における工具経路データ(CLデータ)が生成される。
【0079】
加工プログラム生成部37は、ポストプロセッサで構成されており、工具経路データから加工プログラムを生成するものである。本第2実施形態において、加工プログラム生成部37は、工具経路データ生成部36によって生成された工具経路データを取得するとともに、工作機械ごとに予め設定された工作機械データを取得する。そして、これら工具経路データおよび工作機械データに基づいて、加工プログラム生成部37は、工具経路データを構成する工具軸ベクトルから回転軸の回転角度を算出する。
【0080】
続いて、加工プログラム生成部37は、当該回転角度および前記ワーク座標系における工具中心点に基づいて、当該回転軸が回転した後の絶対座標系における工具中心点を算出する。そして、加工プログラム生成部37は、工具経路を幾つかに分割して位置偏差を許容値以下に抑えるリニアライゼーション処理を行った後、予め設定された加工条件データに基づいて、送り速度制御処理、主軸回転速度制御処理を順次実行する。以上のようにして、多軸加工機11で利用可能な加工プログラム(NCデータ)が生成され、当該加工プログラムを構成する複数のブロックが加工プログラム記憶部23に保存されるようになっている。
【0081】
相対速度算出部33は、上述した第1実施形態と同様、ワークに対する工具先端点の相対速度を算出するものである。本第2実施形態において、相対速度算出部33は、加工プログラムで指定されている指令速度を用いて、ワークに対する工具先端点の相対速度を各ブロックごとに算出する。この際、相対速度算出部33は、第1実施形態と同様、加工プログラム上の指令速度を超えない範囲で、かつ、5軸加工機11Aを構成する各軸の許容速度および許容加速度の制限を超えない範囲で、ワークに対する工具先端点の相対速度を算出してもよい。
【0082】
指令角度補正部34は、上述した第1実施形態と同様、加工プログラムの各ブロックにおける工具姿勢の移動角度と、各ブロックにおける工具先端点の移動時間とが比例するように、各ブロックの指令角度を補正するものである。本第2実施形態において、指令角度補正部34は、第nブロックの指令角度を補正する場合、まず、第nブロックおよびその前後M個のブロックを加工プログラム記憶部23から取得する。
【0083】
つづいて、指令角度補正部34は、各ブロックにおける工具先端点の移動距離を、相対速度算出部33によって算出された各ブロックにおける工具先端点の相対速度で除算することにより、各ブロックにおける工具先端点の移動時間を算出する。そして、指令角度補正部34は、各ブロックにおける工具姿勢の移動角度と、各ブロックにおける工具先端点の移動時間とが比例するように、各ブロックの指令角度を補正する。
【0084】
なお、本第2実施形態では、補正処理の実行中、各ブロックの補正後の指令角度は、補正前の指令角度とともに別途、加工プログラム記憶部23内に記憶される。そして、補正処理の終了後、補正前の指令角度は補正後の指令角度によって上書きされ、全ブロックについて指令角度が補正された加工プログラムとして保存されるようになっている。
【0085】
加工プログラム転送部38は、CAM装置1Bによって生成、編集または補正された加工プログラムを多軸加工機11へ転送するものである。本第2実施形態において、加工プログラム転送部38は、指令角度補正部34によって、各ブロックの指令角度が補正された加工プログラムを図示しない有線通信手段または無線通信手段によって転送するようになっている。なお、上述したとおり、CAM装置1Bをスタンドアローンで使用する場合、加工プログラム転送部38を機能させる必要はない。
【0086】
以上のような本第2実施形態のCAM装置1Bおよびこれを備えた5軸加工機11Aによれば、図4に示すとおり、指令角度補正部34によって加工プログラムの各ブロックの指令角度が補正され、上述した第1実施形態と同様の作用を奏する。また、本第2実施形態によれば、上述した第1実施形態の効果に加えて、本発明に係る指令角度補正機能をCAM装置1Bに実装することができるという効果を奏する。
【0087】
つぎに、本発明に係る加工プログラム処理装置1およびこれを備えた多軸加工機11の具体的な実施例について説明する。なお、本発明の技術的範囲は、以下の実施例によって示される特徴に限定されるものではない。
【実施例1】
【0088】
本実施例1では、上述した第1実施形態の数値制御装置1Aまたは第2実施形態のCAM装置1Bによって、上記加工プログラム例2を補正処理した場合における工具先端点および工具姿勢の動作について、シミュレーションを行った。
【0089】
本実施例1では、第1実施形態の数値制御装置1Aまたは第2実施形態のCAM装置1Bが、上記加工プログラム例2を実行するにあたり、N1ブロックおよびその前後1個のブロック(N0ブロック,N2ブロック)を取得して補正処理を実行することとした。この場合、上記特許文献1と同様、図7(a)に示すように、N1ブロックの相対速度は600mm/分(=10mm/秒)であり、N2ブロックの相対速度は300mm/分(=5mm/秒)であるから、N1ブロックの移動時間は0.9秒となり、N2ブロックの移動時間は0.2秒となる。
【0090】
すなわち、N1ブロックとN2ブロックにおける工具先端点の移動時間は「9:2」となるため、工具姿勢(B軸)の移動角度も「9:2」となるように、N1ブロックにおけるB軸の指令角度が補正される。具体的には、図6に示すように、N1ブロックでは、移動角度が73.636度(=90×9/11)となるように、B軸の指令角度に28.636度加算される。このため、N2ブロックでは、残りの16.364度(=90×2/11)を移動させることとなる。
【0091】
したがって、B軸周りの移動速度は、図7(b)に示すように、N1ブロックで約81.8度/秒(=73.636/0.9)となり、N2ブロックにおいても約81.8度/秒(=16.364/0.2)となるため、両ブロックにおいて回転軸の移動速度が一定となるようにN1ブロックの指令角度が補正された。
【0092】
以上のような本実施例1によれば、第1実施形態の数値制御装置1Aまたは第2実施形態のCAM装置1Bによって各ブロックの指令角度を補正することにより、各ブロックごとに工具先端点の移動速度が異なる場合であっても、各ブロック間において回転軸の移動速度が一定となることが示された。
【0093】
なお、本発明に係る加工プログラム処理装置1およびこれを備えた多軸加工機11は、上述した各実施形態に限定されるものではなく、適宜変更することができる。例えば、上述した第1実施形態では、3ブロックからなる加工プログラム例を示しているが、処理可能な加工プログラムのブロック数に制限はない。また、各軸位置指令はアブソリュート指令としているが、インクレメンタル指令でもよい。さらに、回転軸2軸をB軸およびC軸としているが他の名称であってもよい。
【0094】
また、指令角度補正部34は、上述した補正処理により最適化された回転軸の移動速度に制限値を設けてもよい。例えば、当該最適化された移動速度の1/2の速度を制限値として設定することにより、回転軸の移動速度変化がさらに抑制される可能性がある。
【符号の説明】
【0095】
1 加工プログラム処理装置
1A 数値制御装置
1a 数値制御装置用プログラム
1B コンピュータ支援製造(CAM)装置
1b CAM用プログラム
2 記憶手段
3 制御手段
10 外部記憶装置
11 多軸加工機
11A 5軸加工機
12 コンピュータ支援設計(CAD)装置
21 プログラム記憶部
22 ブロックバッファ
31 加工プログラム取得部
32 加工プログラム解析部
33 相対速度算出部
34 指令角度補正部
35 命令信号補間部
36 工具経路データ生成部
37 加工プログラム生成部
38 加工プログラム転送部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12