JP2008090734A - 数値制御装置 - Google Patents

数値制御装置 Download PDF

Info

Publication number
JP2008090734A
JP2008090734A JP2006273161A JP2006273161A JP2008090734A JP 2008090734 A JP2008090734 A JP 2008090734A JP 2006273161 A JP2006273161 A JP 2006273161A JP 2006273161 A JP2006273161 A JP 2006273161A JP 2008090734 A JP2008090734 A JP 2008090734A
Authority
JP
Japan
Prior art keywords
point
tool
vector
singular point
singular
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.)
Granted
Application number
JP2006273161A
Other languages
English (en)
Other versions
JP4708299B2 (ja
Inventor
Tomonori Sato
智典 佐藤
Kotaro Nagaoka
弘太朗 長岡
Toshiro Ono
俊郎 小野
Daisuke Fujino
大助 藤野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2006273161A priority Critical patent/JP4708299B2/ja
Publication of JP2008090734A publication Critical patent/JP2008090734A/ja
Application granted granted Critical
Publication of JP4708299B2 publication Critical patent/JP4708299B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Milling Processes (AREA)
  • Numerical Control (AREA)

Abstract

【課題】特異点およびその前後においても、滑らかに安定して動作し、運動精度の不要な悪化が生じず、高い加工精度を維持でき、また、工具損傷や過度な工具磨耗を招かずに安定した加工が可能な数値制御装置を得る。
【解決手段】加工物に対する工具姿勢を変えながら、工具底面が加工物に接する切削点が、加工プログラムに指令された移動経路に沿って移動するように、機械の駆動軸を制御する数値制御装置において、加工面が工具に垂直となる特異点を通過して動作する場合に、特異点を含む区間は工具先端中心点または機械位置を補間する。また、特異点を含む区間の始点・終点における加工面法線ベクトル、工具軸方向ベクトルまたはその両方を、特異点を含まない区間における加工面法線ベクトルと工具軸方向ベクトルの相対的な位置関係に近づくように補正を行う。
【選択図】図4

Description

この発明は数値制御装置(以下、NCという。)に関し、特に、加工物に対する工具の姿勢を変更しながら工具のエッジで加工する場合の3次元工具径補正機能を有する工作機械の数値制御装置に関する。
数値制御工作機械において、ワークに対する工具の姿勢(工具軸の方向)を変えながら加工を行う場合がある。典型的な例は、5軸加工機による同時5軸加工である。このような工具の姿勢を変えながら行う加工には、主に工具の側面で加工する場合と、主に工具の底面で加工する場合がある。
工具の姿勢を変えながら工具の底面のエッジで加工を行う場合に、現場にて使用する工具の径を正確に測った値に基づいて、加工プログラムに指令した移動経路をNCで補正できれば、その都度、加工プログラムを作り直さなくて済むので効率がよい。このような、底面加工に対応した従来の3次元工具径補正方法として、加工プログラムに指令された工具の進行方向(モーションベクトル)と工具軸方向ベクトルから、工具径の補正方向を算出し、これに工具半径を乗じて、補正量として求めるものが提案されている(例えば、特許文献1参照)。
特開平07−036514号公報
以下、従来の3次元工具径補正方法における問題点を、例を用いて説明する。図1のように、工具としてスクエアエンドミルを用い、工具101の底面のエッジにより加工を行う例を考える。図1(a)または(c)のように、加工面100に対して工具101が傾いている場合には、加工面100に対して工具101が接する1点(以下、切削点Peという。)は一意に決まる。しかし、同図(b)のように加工面100に対して工具101が垂直になった状態では、工具101の1点ではなく工具101の底面全体が接するため、切削点Peが一意に定まらない。同図(b)のように加工面100に対して工具軸方向ベクトルWが垂直に向いた状態を3次元工具径補正における特異点(または特異姿勢)と呼ぶ。
移動中にこのような特異点を通過すると、前述した従来の方法では、特異点通過の前後で、工具101から見た切削点Peの位置が急激に変化してしまい、機械や加工に悪影響を及ぼす。例えば、図2に示すように、始点(b1)から終点(b10)まで、加工面100に対する工具101の姿勢を連続的に変えながら、切削点Peが加工プログラムに指令された指令経路102に沿って一定の速度で移動する場合を考える。始点から終点に至るまで、(b1),(b2),(b3),・・・,(b10)の順に移動するが、(b5)と(b6)の間のある点Sにおいて、工具軸方向ベクトルWが加工面100に垂直となる(すなわち特異点を通過する)。(b1)から(b5)までの間は工具101が加工面100に対して前傾しながら進んでいる状態であり、切削点Peは工具101の進行方向前方の角(図でいえば工具101の右下の角)となる。
一方、(b6)から(b10)までの間は、工具101は加工面100に対して後傾しながら進んでいる状態であり、切削点Peは工具101の進行方向後方の角(図で言えば工具の左下の角)となる。特異点を通過する前後((b5)と(b6))で、工具101から見た切削点Peの位置が、進行方向前方の角から、進行方向後方の角に急峻に変化する。これに伴い切削点Peから工具先端中心点Pcまでのベクトルである工具径補正ベクトルΔPcomp(図中の白抜きの矢印)も特異点通過前後でほぼ逆の向きに不連続的に変化する。つまり、特異点前後で、急峻におよそ工具直径分だけ工具101が移動することになる。このように急激に工具101を動かすためには、機械が急激に動く必要があり、それによりモータの過負荷、機械の振動、サーボの追従誤差の増大が生じ、制御装置や機械の故障やアラーム停止による生産性の低下、運動誤差増大による加工精度の悪化といった問題を招くことになる。また、加工面100に対して工具101が急峻に動くことで、急激な切削抵抗の変化が生じ、チッピング等の工具損傷や過度な工具磨耗を招く問題点があった。
図1および図2に示した上述した例では、工具101が、底部のエッジが角形形状のスクエアエンドミルの例を挙げたが、図3に示すように、ラジアスエンドミルのようなエッジに丸みがある工具101においても、工具底面に一部でも平坦部があれば(すなわち工具底面全体が半球状のボールエンドミルでなければ)、加工面100に対して工具軸方向ベクトルが垂直となった状態(特異点)の前後で工具底面の平坦部の直径分だけ急激に工具101が動くことになるので、同様の問題が生じる。
この発明はかかる問題点を解決するためになされたものであり、特異点およびその前後においても、滑らかに安定して動作し、運動精度の不要な悪化が生じず、高い加工精度を維持でき、また、工具損傷や過度な工具磨耗を招かずに安定した加工が可能な数値制御装置を得ることを目的としている。
この発明は、スクエアエンドミル工具またはラジアスエンドミル工具を用いて、加工物に対する工具姿勢を変えながら、工具底面が加工物に接する切削点が、加工プログラムに指令された移動経路に沿って移動するように、機械の駆動軸を制御する数値制御装置であって、前記加工プログラムに指令された移動データと使用する工具の工具データとに基づいて、前記工具の移動中に前記加工物の加工面に対して工具軸方向が垂直となる特異点があるかを判定する特異点判定部と、前記特異点判定部によって移動中に特異点があると判定された場合には、前記移動データを、特異点を含む移動区間と特異点を含まない移動区間とに分割する移動データ補正部と、前記移動データ補正部によって分割された移動区間のうち、前記特異点を含む移動区間では、移動がある場合には、工具先端中心点の位置を補間して求め、一方、前記特異点を含まない移動区間では、切削点の位置を補間し、加工面法線ベクトルと工具軸方向から工具先端中心点まで工具径補正ベクトルを求めて加算することで、工具先端中心点を求め、求めた前記工具先端中心点から逆運動学関数を用いて機械各軸の位置を求める補間部と、前記補間部によって求められた機械各軸の位置に従って機械の駆動軸を制御する位置制御部とを備えた数値制御装置である。
この発明は、スクエアエンドミル工具またはラジアスエンドミル工具を用いて、加工物に対する工具姿勢を変えながら、工具底面が加工物に接する切削点が、加工プログラムに指令された移動経路に沿って移動するように、機械の駆動軸を制御する数値制御装置であって、前記加工プログラムに指令された移動データと使用する工具の工具データとに基づいて、前記工具の移動中に前記加工物の加工面に対して工具軸方向が垂直となる特異点があるかを判定する特異点判定部と、前記特異点判定部によって移動中に特異点があると判定された場合には、前記移動データを、特異点を含む移動区間と特異点を含まない移動区間とに分割する移動データ補正部と、前記移動データ補正部によって分割された移動区間のうち、前記特異点を含む移動区間では、移動がある場合には、工具先端中心点の位置を補間して求め、一方、前記特異点を含まない移動区間では、切削点の位置を補間し、加工面法線ベクトルと工具軸方向から工具先端中心点まで工具径補正ベクトルを求めて加算することで、工具先端中心点を求め、求めた前記工具先端中心点から逆運動学関数を用いて機械各軸の位置を求める補間部と、前記補間部によって求められた機械各軸の位置に従って機械の駆動軸を制御する位置制御部とを備えた数値制御装置であるので、特異点およびその前後においても、滑らかに安定して動作し、運動精度の不要な悪化が生じず、高い加工精度を維持でき、また、工具損傷や過度な工具磨耗を招かずに安定した加工が可能である。
実施の形態1.
[加工面の法線ベクトルを補正]
図4は、この発明の実施の形態1における数値制御装置の構成を示したブロック図である。実施の形態1における数値制御装置は、スクエアエンドミル工具またはラジアスエンドミル工具を用いて、加工物に対する工具姿勢を変えながら、工具底面が加工物に接する切削点が、加工プログラムに指令された移動経路(後述する移動データによって指定される経路)に沿って移動するように、機械の駆動軸を制御する数値制御装置である。なお、この実施の形態においては、5軸加工機による同時5軸加工において、工具の姿勢を変えながら行う加工のときに、主に工具の底面で加工する場合を例に挙げて説明する。図4に示すように、本実施の形態1における数値制御装置は、加工プログラム1と、工具データ3と、特異点判定部4と、移動データ補正部6と、補間部8と、表示部10と、第1から第5軸の制御を行う位置制御部1〜5(符号12〜16)とを有している。なお、図4において、2は加工プログラム1に指令される移動データ、5は特異点判定部4から出力される特異点判定結果、7は移動データ補正部6から出力される補正後の移動データ、9は補間部8から出力される現在位置、11は補間部8から出力される位置指令値である。これらについては以下に詳説する。
特異点判定部4は、加工プログラム1に指令された移動データ2と使用する工具の工具データ3とから、各ブロックの移動において、移動経路上に特異点があるかどうかを判定し、判定結果を特異点判定結果5として出力する。また移動データ補正部6は、移動データ2、工具データ3および特異点判定結果5から、移動データ2を補正して補正後の移動データ7を出力する。補間部8は補正後の移動データ7と工具データ3に基づき補間を行い、各軸の位置指令値11を出力する。ここで補間部8では補間だけでなく、加減速や機械の軸構成に応じた座標変換も行う。また補間部8では現在位置9を計算し、表示部10に送り、表示させる。この現在位置9の計算のために、補正前の移動データ2を用いてもよい。各軸の位置制御部1〜5(符号12〜16)は、たとえば、位置制御部1〜3(符号12〜14)はワークに対して工具の位置を変更するための直交3軸、位置制御部4〜5(符号15〜16)はワークに対して工具の姿勢を変更するための回転2軸(たとえばA軸とC軸)である。これら5つの位置制御部1〜5(符号12〜16)が、それぞれの位置指令値11に基づいて図示しない駆動系をサーボ制御することにより、図示しない5軸加工機を動かして、ワークに対して工具を運動させ、加工を行う。
次に動作について説明する。工具データ3は、図5に示すような、工具タイプ(スクエアエンドミル、ラジアスエンドミル)、工具外径の半径値d、丸コーナの丸み(コーナ半径)r、工具長hからなるデータである。本発明は、3次元工具径補正における特異点の問題を解決するための方法であるが、3次元工具径補正における特異点の問題は、回転工具の底面が平面(これは工具軸方向に垂直に形成されている)となっている工具(スクエアエンドミル、ラジアスエンドミル)で発生するので、これらの工具を移動データ2の補正の対象とし、それ以外の工具(たとえばボールエンドミル)では本発明のような移動データ2の補正は行わない。
加工プログラム1には、各ブロックごとの工具の移動として移動データ2を指令する。移動データ2には、指令工具T、制御モード、工具の指令経路(移動経路)、工具軸方向ベクトル(工具姿勢ベクトル)、指令速度に関する指令が含まれる。ここで、工具軸方向ベクトルの代わりに、工具軸方向ベクトルを定めるための機械の回転軸の角度、または、オイラー角、ロール・ピッチ・ヨー角などを用いてもよい。また、さらに好ましくは、ワーク(工作物)の加工面の法線ベクトルNを指令する。
ここで制御モードとは、
1)切削点制御モード
2)工具先端中心点制御モード
3)機械位置制御モード
のいずれかである。切削点制御モードは工具の切削点(ワークに工具が接する点)Peの位置および送り速度を移動データ2に従って制御するモードである。このモードでは、加工プログラム1に指令する移動データ2は切削点Peの位置およびその送り速度であり、すなわち加工形状と加工速度そのものを指す。また、工具先端中心点制御モードは、工具先端中心点Pcの位置および送り速度を移動データ2に従って制御するモードである。このモードでは、加工プログラム1に指令する移動データ2は工具先端中心点Pcの位置およびその送り速度であり、工具先端中心点Pcは切削点Peに対して工具の径(d,r)分だけ補正した位置である。さらに、機械位置制御モードは、機械位置Pmの位置、回転軸(ないしは工具の姿勢を制御する制御軸)の位置θおよびその送り速度(回転軸を含めた全軸の合成速度)を移動データ2に従って指令するモードである。このモードでは、加工プログラム1に指令する移動データ2は機械位置Pm、回転軸の位置θ、および送り速度であり、機械位置Pmは工具先端中心点Pcに対して工具長hだけ工具軸方向w方向に補正した位置である。
切削点制御モードは、本来行いたい加工の形状を直接指令できるので精度よく指令でき、また移動データ2が工具の寸法(工具径、工具長)に依存しないので工具ごとに加工プログラム1を作成する必要がない。しかし、逆に言うと、切削点制御モードでは、NCで工具径、工具長の補正を行うため、工具の軸方向(工具軸方向ベクトルw)が加工面に対して垂直に向いた状態(工具底面が加工面に平行になった状態)、すなわち特異点(または特異姿勢)では、工具径補正量が不連続に変化するため、過負荷や精度悪化を招く。以下、本発明では、加工プログラム1に切削点制御モードが指令されている場合に、移動経路上に特異点があるかどうかを判定し、特異点がある場合には、移動データ2を補正し、ブロック中の特異点近傍の区間では非切削点制御モード(工具先端中心点制御モードまたは機械位置制御モード)で動作させることにより、工具径補正量の急変の抑制を実現する方法について述べる。
切削点制御モードにおいて、加工プログラム1に指令された、始点から終点までの移動が、任意の媒介変数tを用いて、切削点Pe(t)、単位工具軸方向ベクトルw(t)、加工面の単位法線ベクトルN(t)で指令されているとする。この媒介変数tは、始点からの移動時間、または始点からの移動距離、ないしはそれらを始点が0、終点が1となるように正規化した値とする。たとえば、媒介変数tを、始点からの移動距離を始点が0、終点が1となるように始点から終点までの移動距離Lで除して正規化した値であるとする。始点P0、終点P1の間を切削点の位置を直線補間するなら、
Pe(t) = P0 + (P1−P0)t (1.1)
とする。また工具軸方向ベクトルは始点での単位工具軸方向ベクトルw0と終点での単位工具軸方向ベクトルw1の間は、両ベクトルに垂直な軸周りに一定の角速度で回転させる。
w(t) = Rot(nw,φw・t)w0 (1.2)
nw=(w0×w1)/|w0×w1| (1.3)
φw=cos−1(w0・w1) (1.4)
ここでnwはw0とw1に垂直な方向の単位ベクトルであり、式(1.3)の右辺の「×」はベクトルの外積を示す。また、φwはw0とw1のなす角度であり、式(1.4)の右辺の「・」はベクトルの内積を示す。式(1.2)のRot(k,φ)はベクトルk周りに角度φだけ回転させるための回転行列である。同様に、加工面の単位法線ベクトルN(t)は始点での単位法線ベクトルN0と終点での単位法線ベクトルN1の間を、両ベクトルに垂直な軸周りに一定の角速度で回転させる。
N(t) = Rot(nn,φn・t)N0 (1.5)
nn=(N0×N1)/|N0×N1| (1.6)
φn=cos−1(N0・N1) (1.7)
図6は本発明の実施の形態1の全体の処理の流れを示すフローチャートである。図において、ステップST100は移動経路上に特異点があるかどうかを判定する処理であり、特異点判定部4にて行う。ステップST100にて特異点があると判定された場合には、ステップST200にて移動データ2の補正を行う。ステップST200は移動データ補正部6にて行う。ステップST300は、移動データ2(または補正後の移動データ7)に基づいて補間を行う処理であり、補間部8にて行う。以下、各ステップの詳細を説明する。
ステップST100は、具体的には図7に示すフローチャートに従って処理を行う。図7において、ステップST110では、加工プログラム1に加工面の法線ベクトルNの指令があるかどうかを判断する。もしNの指令があれば、ステップST111に移る。ステップST111では加工面の法線ベクトルNと工具軸方向ベクトルwが平行の場合には特異点であると判断する。Nとwのなす角度が0度である場合、すなわち
|N×w|=0 (1.8)
の場合には特異点であると判断する。一方、ステップST110で法線ベクトルNの指令がない場合には工具の移動方向ベクトル(進行方向の単位ベクトル、移動経路の接線ベクトルに相当)vを用い、移動方向ベクトルvと工具軸方向ベクトルwに垂直なベクトルuを求め、uと移動方向ベクトルvに対して直角なベクトルを法線ベクトルNとして求める。
u=v×w/|v×w| (1.9)
N=u×v/|u×v| (1.10)
ここで移動方向ベクトルvは切削点の移動する方向の単位ベクトルであり、移動経路の接線ベクトルをPe(t)をtで微分して単位ベクトルとすることで求める。たとえば直線補間の場合には式(1.1)より、
v=(P1−P0)/|P1−P0| (1.11)
で表される。あるいは法線ベクトルNを経由せず、vとwが垂直である場合に特異点であると判断する。すなわち、
v・w=0 (1.12)
の場合には特異点であると判断するとしてもよい。
上記ステップST100の手順は、各ブロックについて、ブロックの始点、終点およびブロックの途中の点について行う。ブロックの途中については以下のように計算を行う。
工具軸方向ベクトルw(t)が式(1.2)、加工面の法線ベクトルN(t)が式(1.5)で与えられるとする。ステップST110でN指令ありの場合には、
|N(t)×w(t)|=0 (1.13.1)
を満たすtを解析的または数値的に解くことで特異点に該当するtを求める。ステップST110でN指令なしの場合も、同様に、
N(t)・v(t)=0 (1.13.2)
を解くことで特異点に該当するtを求める。解がない場合にはブロック中には特異点は存在せず、解がある場合には、媒介変数が解t=tsに相当する位置に特異点があると判断する。この位置をS=Pe(ts)とする。
なお上記のように特異点と判定するのは、工具がスクエアエンドミル(d>0)およびラジアスエンドミル(d−r>0、rはコーナー半径)の場合だけである。
次に図6において、特異点がある場合の、移動データ2の補正処理(ステップST200)の動作を、図8を用いて説明する。
ステップST201では加工プログラム1に指令された移動データ2と工具データ3から、工具先端中心点Pcが特異点Sに一致し、かつ、工具軸方向ベクトルが特異点における加工面の法線ベクトルNsに一致する場合の刃先位置から補正点Qa、Qbを計算する。Qaは工具先端中心点がSにあるとして、この位置における工具先端点に対する工具切削点の相対位置関係が、特異点Sに到達する前と同じであると仮定した場合の、工具切削点の位置に相当する。この図においては、Qaは特異点Sから工具進行方向に距離dだけ進んだ点である。具体的には、特異点Sから工具径補正ベクトルΔPcompaだけ減算することで求められる。
Qa=S−ΔPcompa (1.14)
ここでΔPcompaは特異点Sの直前の点または近似的には始点における工具径補正ベクトルであり、その点の媒介変数をtaとすると、次の式(1.15)から式(1.18)に、N=N(ta)、w=w(ta)、v=v(ta)を代入して、求めることができる。
ΔPcomp = d・e (1.15)
e= (N−(N・w)w)/|N−(N・w)w| (1.16)
e= ((N×w)×w)/|(N×w)×w| (1.17)
e= ((v×w)×w)/|(v×w)×w| (1.18)
ここでeは切削点から工具先端中心点に向かう単位ベクトルであり、上記式(1.16)〜(1.18)のいずれかで計算する。
同様にQbは工具先端中心点がSにあるとして、この位置における工具先端点に対する工具切削点の相対位置関係が、特異点Sを越えた後と同じであると仮定した場合の、工具切削点の位置に相当する。この図においては、Qbは特異点Sから工具進行方向に距離dだけ戻った点である。具体的には、特異点Sから工具径補正ベクトルΔPcompbだけ減算することで求められる。
Qb=S−ΔPcompb (1.19)
ここでΔPcompbは特異点Sの直後の点または近似的には終点における工具径補正ベクトルであり、その点の媒介変数をtbとすると、前述の式(1.15)から式(1.18)に、N=N(tb)、w=w(tb)、v=v(tb)を代入して、求めることができる。
次に、ステップST202では加工プログラム1に指令された移動データ2と工具データ3から、前記補正点Qa、Qbにおける、工具軸方向ベクトルwと加工面法線ベクトルNを算出する。まずQaについて算出する。
Qaにおいては、その位置に対応する媒介変数をta=ts+d/Lとすると、加工プログラム1に指令された工具軸方向ベクトルはw(ta)であるが、それを修正して、Qaにおける工具軸方向ベクトルwaはw(ts)=Ns=N(ts)と設定する。すなわち、Qaにおいては特異点における工具軸方向に一致させる。また点Qaにおける加工面の法線ベクトルは、加工プログラム1に指令された値はN(ta)であるが、それを修正して、特異点通過前の位置における加工面法線ベクトルN(ts−δ)(δ>0)と工具軸方向ベクトルw(ts−δ)との相対的な位置関係に近づくように、特異点における加工面法線ベクトルNsを少しだけ回転させたベクトルNaとする。たとえば、最も簡単な例としては、δ=ts、すなわち始点における加工面法線ベクトルN0と工具軸方向ベクトルw0との相対的な位置関係(回転軸の向きも含めた回転角)に近づくように、N0とw0を含む平面内において微小角度だけ回転させる。すなわち、微小角度をΔφとおくと、次式で計算する。
Na = Rot(na,Δφ)Ns (1.20)
na=(N0×w0)/|N0×w0| (1.21)
この微小角度Δφはその角度を予めパラメータで設定しておくか、あるいは始点から特異点までの移動角度に対して所定の割合を乗じて求めるとよい。ΔφはN0とw0のなす角度以下の値とする。
同様に、Qbにおいても、工具軸方向ベクトルwbは特異点Sにおける工具軸方向ws=Nsに一致させる。また、加工面の法線ベクトルNbは、特異点通過後の位置における加工面法線ベクトルN(ts+δ)(δ>0)と工具軸方向ベクトルw(ts+δ)との相対的な位置関係に近づくように、特異点における加工面法線ベクトルNsを少しだけ回転させたベクトルNbとする。たとえば、最も簡単な例としては、δ=(1−ts)、すなわち終点における加工面法線ベクトルN1と工具軸方向ベクトルw1との相対的な位置関係に近づくように、N1とw1を含む平面内において微小角度だけ回転させる。すなわち、微小角度をΔφとおくと、次式で計算する。
Nb = Rot(nb,Δφ)Ns (1.22)
nb=(N1×w1)/|N1×w1| (1.23)
この微小角度Δφはその角度を予めパラメータで設定しておくか、あるいは始点から特異点までの移動角度に対して所定の割合を乗じて求めるとよい。ΔφはN1とw1のなす角度以下の値とする。
なお、本実施の形態1では切削点指令だけで工具の移動を行うので、工具先端中心点の計算は不要である。
さらに、ステップST203では、次の順序で移動するような移動データ7に変更する。
工具軸方向ベクトル 加工面法線ベクトル 工具先端中心点

始点 w0 N0 −
↓切削点制御モード
補正点Qa Ns Na −
↓移動なし
補正点Qb Ns Nb −
↓切削点制御モード
終点 w1 N1 −

(「−」は設定不要、すなわち補間部において参照しないことを示す)
すなわち、始点から、Qa、Qbを経由して終点に至るような移動データ7とし、Qaにおける工具軸方向ベクトルはwa=Ns、加工面法線ベクトルはNa、Qbにおける工具軸方向ベクトルはwb=Ns、加工面法線ベクトルはNbとする。
次に図6において、補間処理(ステップST300)の動作を説明する。
移動データ7が特異点を通過しない場合には、通常通りの補間を行う。すなわち、まず現在の媒介変数をtc、ブロックの始点から終点までの移動距離をL、指令速度をF、補間周期をdTとすると、次回の補間点における媒介変数tnは
tn = tc + F×dt / L (1.31)
で表される。このtnをそれぞれ式(1.1)、式(1.2)、式(1.5)に代入することで、次回の切削点Pe(tn)、単位工具軸方向ベクトルw(tn)、加工面の法線ベクトルN(tn)が計算できる。これらを用いて、式(1.15)〜式(1.18)に従い工具径補正ベクトルΔPcomp(tn)を求め、切削点Pe(tn)に工具径補正ベクトルΔPcomp(tn)を加算して工具先端中心点Pc(tn)を求める。
Pc(tn)= Pe(tn)+ΔPcomp(tn) (1.32)
一方、移動データ7が特異点を通過する場合には、ブロックの始点から補正点Qaまでの区間では、補正点Qaを終点と置き換えて同様に補間を行う。すなわち、式(1.1)から式(1.7)において、
P1 → Qa
w1 → Ns
N1 → Na
と置き換え、式(1.31)のLを
|P1−P0| → |Qa−P0|
と置き換えてPe(tn)、w(tn)、N(tn)を補間計算し、これらを用いて同様にPc(tn)を求める。
補正点Qaに到達すると、切削点を補正点Qbに切り替えるとともに、加工面法線ベクトルをNbに変更する。さらに、補正点Qbからブロックの終点までの区間では、補正点Qbを始点を置き換えて、同様に補間計算する。すなわち、式(1.1)から式(1.7)において、
P0 → Qb
w0 → Ns
N0 → Nb
と置き換え、式(1.31)のLを
|P1−P0| → |P1−Qb|
と置き換えてPe(tn)、w(tn)、N(tn)を補間計算し、これらを用いて同様にPc(tn)を求める。
さらに、工具先端中心点がPcに一致し、かつ、工具軸方向ベクトルがwに一致するような、機械位置Pm(直交3軸)と回転2軸の角度θを求める。一般に5軸加工機では機械の軸構成や軸間の幾何学的な位置関係に応じて、
w=f(θ) (1.33)
Pc=gθ(Pm) (1.34)
の関係がある(順運動学の関係)。従って、この逆関数(逆運動学の関係)を用いて、
θ(tn)=f−1(w(tn)) (1.35)
Pm(tn)=gθ −1(Pc(tn)) (1.36)
により、機械位置Pm(tn)と回転2軸の角度θ(tn)を求め、合計5軸分の位置指令値11として、各軸の位置制御部1〜5(符号12〜16)に指令する。
なお、求めた補間点(Pm(tn)とθ(tn))に対して、各軸ごとの加減速処理(補間後加減速)を行ってから、位置指令値11として、各軸の位置制御部1〜5(符号12〜16)に指令してもよい。あるいは、補間前加減速を適用し、式(1.31)のFは指令速度ではなく、補間前加減速後の速度としてもよい。あるいは、補間前加減速と補間後加減速の両者を併用してもよい。
補間部8では、切削点制御中は、切削点の位置を現在位置9として表示部10に送る。特異点を通過する場合には、たとえば、図10の(1)及び(2)のように、制御上は切削点は始点P0から点Qa、点Qb、終点P1へと移動する。しかし、このように移動する切削点は指令経路上を途中で戻ることになるし、また点Qaから点Qbまで一瞬で変化するので、NCの操作者にとって理解しにくい。そこで、補正した部分(切削点が点Sを越えてQaにいたる区間、切削点がQbから点Sまでの区間)では、現在位置9は特異点Sにあるとして表示部10に送り、表示させる。
あるいは、実際の切削点ではなく、補正前の移動データ2を用いて、補正前の移動経路(加工プログラム1に指令された指令経路)上を補間して求めてもよい。このとき、始点でP0、工具先端中心点がSにあるときにS、終点でP1となるように、実際の工具の移動と連動して補間速度を調整する。たとえば補正前の移動距離をL、補正後の移動距離をL’、補正前の送り速度をFとすると、補正後の移動速度F’は、
F’=F×L’/L (1.37)
のように、移動距離に比例するように、送り速度を調整する。求めた補正前の移動経路上の補間点を現在位置9とし、表示部10に送り、表示させる。
これにより、操作者にとって自然で理解しやすい位置表示が可能となる。
上記手順に沿った場合の動作の例を、図9及び図10に従って説明する。
図9(1)に一例として加工プログラム1に指令された指令経路に沿って、切削点がP0からP1まで移動する間に、途中で工具軸方向ベクトルと加工面法線ベクトルが一致する点S(以下、特異点Sという。)を通過する場合を考える。図において、○印は工具先端中心点、△は切削点を示す。この例では、特異点Sに至るまでは、工具20は加工面22に対して前傾しながら工具20の進行方向の刃にて加工し、逆に、特異点S通過後は工具20は加工面22に対して後傾しながら工具20の後ろ方向の刃にて加工する。
このとき、まず、図9(2)に示すように、工具先端中心点が特異点Sに一致し、かつ、その位置で工具軸方向ベクトルが特異点Sにおける加工面法線ベクトルNsと平行になる状態を考え、ステップST201の手順に従って、補正点Qa、Qbを求める。また補正点Qa、Qbにおける加工面法線ベクトルNa、NbをステップST202の手順に沿って求める。Na、Nbは、特異点Sにおける加工面法線ベクトルNsから、それぞれ、NaはN0に近づくように(正確にはw0とN0の位置関係(前傾の状態)に近づくように)、NbはN1に近づくように(正確にはw1とN1の位置関係(後傾の状態)に近づくように)、少しだけずらしてあるのがポイントである。
図10(1)に示すように、移動の前半部分(始点P0から補正点Qaまでの間)では、Qaにおける加工面法線ベクトルを始点の工具軸方向ベクトルと加工面法線ベクトルとの関係に近づくように補正しているので、加工面法線ベクトルと工具軸方向ベクトルが平行になることがなく、工具径補正ベクトルΔPcompの計算値が不定となることはない。特異点S近傍では、特異点S通過前の位置における工具切削点(工具の進行方向の刃)をおおよそ保持しながら動作し、工具先端中心点が点Sに一致する点まで移動する。
この位置まで到達すると、今度は図10(2)に示すように、切削点を補正点Qbに切り替えるとともに、加工面法線ベクトルをNbに変更する。この部分では、あくまで着目する切削点を切り替えるだけで、工具先端中心点も、工具方向ベクトルも変らないので、実際の工具あるいは機械の移動はない。
それ以降は終点P1に向かって移動する。この後半部分(補正点Qbから終点P1までの間)も、Qbにおける加工面法線ベクトルを終点の工具軸方向ベクトルと加工面法線ベクトルの関係に近づくように補正しているので、加工面法線ベクトルと工具軸方向ベクトルが平行になることがなく、工具径補正ベクトルΔPcompの計算値が不定となることはない。特異点S近傍では、特異点S通過後の位置における工具切削点(工具の後ろ方向の刃)をおおよそ保持しながら動作し、切削点が終点P1に一致する点まで移動する。
以上のように、本実施の形態1では、工具先端中心点が特異点に一致する点における刃先位置を基準として補正点を求め、移動中に工具軸方向ベクトルと加工面法線ベクトルが平行とならないように補正点での加工面法線ベクトルを求めたので、工具径補正量が連続的に変化するので、工具径補正ベクトルが急激に変化することがなく、制御装置や機械の故障やアラーム停止が生じず滑らかに安定して動作し、また、急激な補正動作を行わないので、運動精度の不要な悪化が生じず高い加工精度を維持できるという効果がある。さらに、加工面に対して工具が急峻に動かないので、工具損傷や過度な工具磨耗を招かないため、安定した加工が可能になるという効果がある。
また、本実施の形態においては、移動データ補正部は、特異点を含む区間の始点における加工面法線ベクトルに対する工具軸方向ベクトルのなす回転角が、特異点を含む区間の始点の直前の点における加工面法線ベクトルに対する工具軸方向ベクトルのなす回転角に近づくように、特異点を含む区間の始点における加工面法線ベクトルまたは工具軸方向ベクトルないしはその両方を補正し、特異点を含む区間の終点における加工面法線ベクトルに対する工具軸方向ベクトルのなす回転角が、特異点を含む区間の終点の直後の点における加工面法線ベクトルに対する工具軸方向ベクトルのなす回転角に近づくように、特異点を含む区間の終点における加工面法線ベクトルまたは工具軸方向ベクトルないしはその両方を補正するようにしたので、加工面の法線ベクトルに対する工具軸方向ベクトルの回転角が、特異点近傍の区間の前後で連続的に変化するように補正するので、補正により切削点自体が変わらず、精度のよい加工が実現できる。
また、本実施の形態においては、移動データ補正部において、特異点を含む区間の始点を、特異点の位置から、特異点を含む区間の始点の直前の位置における工具径補正ベクトルを減算した位置とし、特異点を含む区間の終点を、特異点の位置から、特異点を含む区間の直後の位置における工具径補正ベクトルを減算した位置とするようにしたので、特異点近傍区間での工具先端中心点の移動量が0となるため、無駄な移動が生じず、短時間の加工を行うことができる。また、特に、補正量の変化によって、移動方向に対して逆行することがないので、滑らかな動きを短時間に行うことができ、動きが理解しやすいので操作者の操作も容易である。
また、本実施の形態においては、移動データ補正部において、特異点を含む区間の始点および終点を特異点とし、特異点を含む区間の始点および終点における加工面法線ベクトルを補正するようにしたので、特異点を含まない区間においては指令経路そのままであり、作り変える必要がなく、単に中間部分の非切削点指令による移動を挿入するだけの形であるため、処理が比較的簡単になり、計算時間が短くて済むという効果がある。また、特に特異点に進入するときと、出るときで、工具径補正ベクトルの向きが平行でも逆向きでもない場合に、精度よく加工を行うことができる。
本実施の形態による発明は、加工において最も重要な刃先の位置自体は指令経路に沿って動かしつつ、加工面法線ベクトルを補正することで特異点の問題を回避することが特徴である。もちろん加工面法線ベクトルを変えることでも、一般的には工具から見た切削点の位置が変わるため、加工誤差への影響がないわけではない。スクエアエンドミルでは、工具側面から見て工具エッジが尖っているため、本発明のように、加工面法線ベクトルを工具中心軸(特異点方向)と加工面法線ベクトルを含む面内で回転させてやれば、切削点自体は変らないため、加工誤差への影響は完全に排除できる。また、あるいはラジアスエンドミルでもコーナ半径が小さいものにおいては、やはり加工面法線ベクトルを補正することにより加工誤差への影響は軽微なものに留まる。つまり、本発明によれば、加工精度を維持しつつ、特異点にて滑らかに動作することができる。
なお、以上述べた実施の形態において、ブロックの移動量が短い場合や、工具径が大きい場合には、計算によって求められる補正点がそのブロック内にない場合がある。この場合には、先読みにより、前後のブロックを参照し、複数のブロックにまたがって工具データの補正を行うことで対応が可能である。
本実施の形態においては、特異点における、加工面法線ベクトルと工具軸方向ベクトルの相対的な幾何学的な関係を、特異点通過前後の状態に近づけるように補正することが要点であり、移動経路、工具軸方向ベクトル、加工面法線ベクトルの補間方法には依存しない。たとえば移動経路が円弧補間でも同様に円弧理論式に基づいて補間すればよい。
式(1.8)や式(1.12)における特異点有無判定では、実用的には、計算機の計算誤差などを考慮して、適当な判定許容誤差を設けて判定するとよいのはいうまでもない。
実施の形態2.
[後傾姿勢から前傾姿勢に切り替わる場合]
上記の実施の形態1の図9、図10では、工具が前傾姿勢から後傾姿勢に切り替わるような場合について述べた。本実施の形態2では、図11(1)に示すように、逆に工具が後傾姿勢から前傾姿勢に切り替わるような場合について説明する。
発明の構成と動作は実施の形態1と同一である。ただし、結果として得られる動作と、発明の効果が異なる部分がある。以下相違する点について説明する。
図8のステップST201において、式(1.14)から(1.19)に基づいて補正点Qa、Qbを求める。求め方に違いはない。ただし、求められた結果を見ると、図11(2)のようにQaは特異点Sから工具進行方向に距離dだけ戻った点となり、Qbは特異点Sから工具進行方向に距離dだけ進んだ点となる。つまり図9(2)と比べるとQaとQbが逆になっている。これは、図9の例と、図11の例では、加工面法線ベクトルに対する工具軸方向の向きが逆(図9では前傾→後傾、図11では後傾→前傾)であるからである。
この補正点Qa、Qbに対して、実施の形態1と同様に加工面法線ベクトルNa、Nbを補正し、これに基づいて、始点から、Qa、Qbを経由して終点に至るような移動データ7とする。すなわち図12(1)に示すように、移動の前半部分(始点P0から補正点Qaまでの間)では工具の後ろ方向の刃にて切削し、工具先端中心点が点Sに一致する点にて切削点と加工面の法線ベクトルを切り替えて(移動はしない)、移動の前半部分(補正点Qbから終点P1までの間)では工具の進行方向の刃にて切削する。
なお、現在位置表示のための切削点は、実際の切削点ではなく、補正前の移動データ2を用いて、補正前の移動経路(加工プログラム1に指令された指令経路)上を補間して求める。このとき、始点でP0、工具先端中心点がSにあるときにS、終点でP1となるように、実際の工具の移動と連動して補間速度を調整する。たとえば補正前の移動距離をL、補正後の移動距離をL’、補正前の送り速度をFとすると、補正後の移動速度F’は、
F’=F×L’/L (1.37)
のように、移動距離に比例するように、送り速度を調整する。求めた補正前の移動経路上の補間点を現在位置9とし、表示部10に送り、表示させる。
このように、工具が後傾姿勢から前傾姿勢に切り替わるような場合でも、実施の形態1と同じ構成と同じ処理で同様な効果が得られる。
また、特に工具が後傾姿勢から前傾姿勢に切り替わる場合には、特異点通過前後で、工具径補正ベクトルΔPcompが正から負に変わるので、単純に、特異点近傍で、非切削点制御で直線補間で移動する場合では、たとえば工具軸方向ベクトルと加工面法線ベクトルのなす角度が所定の範囲内の区間を非切削指令で移動するように選んだ場合などでは、工具が逆行する(加工プログラム1に指令した移動の方向と逆方向に進む)場合がある。たとえば非切削点制御モードで直線補間する区間の長さが工具外径(2d)よりも短い場合には、切削点の前進する移動量よりも工具径補正ベクトルが負方向に変化する量(2d)よりも小さいので、その区間では工具が始点から終点に向かう方向の逆方向に進むことになる。このような逆方向への移動があると、方向反転時のショックで精度劣化や工具のチッピングなどを生じる、いったん削ったところを再度削るという無駄な動きがあるため加工時間が増大する、操作者が動きを理解しにくく操作ミスによる衝突などといった問題の遠因となる、といった問題が生じる。
これに対して、本発明では、そもそも特異点における刃先位置を基準に補正点を求めているので、逆行することがなく、滑らかな動きを短時間に行うことができ、動きが理解しやすいので操作者の操作が容易である。
実施の形態3.
[補正点を特異点に一致させる場合]
上記の実施の形態1では、特異点Sに工具先端中心点が一致し、かつ、この点で工具の姿勢が加工面に垂直となった状態での刃先位置を補正点とした。しかし、別の方法として、補正点はあくまで特異点Sとし、実施の形態1と同様に補正点での加工面法線ベクトルを補正し、補正点間は非切削点指令により直線補間してもよい。以下、この方法について述べる。
発明の構成は、図4に示した実施の形態1と同一である。動作は、図6、図8のフローチャートに従うが、各ステップにおける具体的な処理で実施の形態1と相違点がある。以下、相違点について述べる。
本実施の形態においては、図8のステップST201では、補正点QaとQbは特異点Sに一致させる。
次に、ステップST202では補正点Qa、Qbにおける、工具軸方向ベクトルw、加工面法線ベクトルNおよび工具先端中心点を算出する。工具軸方向ベクトルは、点Qa、点Qbとも特異点における工具軸方向ベクトルws=Nsに一致させる。加工面法線ベクトルは、実施の形態1と同様に、Naは特異点通過前の位置における加工面法線ベクトルN(ts−δ)(δ>0)と工具軸方向ベクトルw(ts−δ)との相対的な位置関係に近づくように、特異点における加工面法線ベクトルNsを少しだけ回転させたベクトルとする。加工面の法線ベクトルNbは、特異点通過後の位置における加工面法線ベクトルN(ts+δ)(δ>0)と工具軸方向ベクトルw(ts+δ)との相対的な位置関係に近づくように、特異点における加工面法線ベクトルNsを少しだけ回転させたベクトルNbとする。またQa、Qbにおける工具先端中心点Pca、Pcbは、切削点の位置(Pca、Pcb)にそれぞれの位置・姿勢における工具径補正ベクトルΔPcompを加算して求める。すなわち、点Qaにおける工具径補正ベクトルは、式(1.15)〜(1.18)に、N=Na、w=Ns、v=v(ts)を代入して求める。また点Qbにおける工具径補正ベクトルは、式(1.15)〜(1.18)に、N=Nb、w=Ns、v=v(ts)を代入して求める。
さらに、ステップST203では、次の順序で移動するような移動データ7に変更する。
工具軸方向ベクトル 加工面法線ベクトル 工具先端中心点

始点 w0 N0 −
↓切削点制御モード
補正点Qa Ns Na Pca
↓工具先端中心制御モード
補正点Qb Ns Nb Pcb
↓切削点制御モード
終点 w1 N1 −
すなわち、始点から、Qa、Qbを経由して終点に至るような移動データ7とし、Qaにおける工具軸方向ベクトルはNs、加工面法線ベクトルはNa、工具先端中心点はPcaとする。また、Qbにおける工具軸方向ベクトルはNs、加工面法線ベクトルはNb、工具先端中心点はPcbとする。このうち、始点からQaまでと、Qbから終点までの間は切削点制御モードで移動する。一方、QaからQbまでの間は、非切削点制御モード(たとえば工具先端中心点制御モード)で移動する。この区間では工具先端中心点を補間するので、工具先端中心点Pca、Pcbを求めておく必要がある。それ以外の区間(切削点制御の区間)では、工具先端中心点Pca、Pcbの計算は必須ではない。
ステップST300において、移動データ7が特異点を通過しない場合には、実施の形態1と同様であるので説明を省略する。移動データ7が特異点を通過する場合でも、切削点制御を行う区間(始点から補正点Qaまでの区間、補正点Qbから終点までの区間)では実施の形態1と同様であるので説明を省略する。補正点Qaから補正点Qbまでの間は、切削点制御モードではなく、非切削点制御モード(ここでは工具先端中心点制御モードの例を示す)で制御する。
切削点が補正点Qaに到達すると、工具先端中心点制御モードに切り替える。工具先端中心点制御モードでは、工具先端中心点を補間制御する。すなわち、まず現在の媒介変数をtc、PcaからPcbまでの移動距離をL、指令速度をF、補間周期をdTとすると、次回の補間点における媒介変数tnは
tn = tc + F×dt / L (3.1)
で表される。このtnを用いて、次回の工具先端中心点の補間点Pc(tn)は、直線補間の場合は、
Pc(tn) = Pca + (Pcb−Pca) tn (3.2)
で表される。工具軸方向ベクトルw(tn)はこの区間においては一定である(w(tn)=Ns)。求めた工具先端中心点の補間点Pc(tn)と工具軸方向ベクトルw(tn)から、実施の形態1と同様に、式(1.33)〜式(1.36)を用いて、Pm(tn)とθ(tn)を求めて、これを位置指令値11とし、位置制御部1〜5(符号12〜16)に指令する。
上記手順に沿った場合の動作の例を、図13および図14に従って説明する。
図13(1)は図9(1)と同じ例である。このとき、まず、図13(2)に示すように、Naは、始点におけるN0とw0の関係に近づくように、Nsから少しだけ回転させる。またNbは、終点におけるN1とw1の関係に近づくように、Nsから少しだけ回転させる。また、切削点が特異点S、工具軸方向ベクトルがNs、および加工面の法線ベクトルがNaないしはNbとしたときの、工具先端中心点Pca、Pcbをそれぞれ求める。ここでNa、NbをNsから回転させる角度は実施の形態1と同様とする。
図14(1)および(3)に示すように、移動の前半部分(始点P0から補正点Qaまでの間)および後半部分(補正点Qbから終点P1までの間)は、加工面法線ベクトルと工具軸方向ベクトルが平行になることがなく、切削点制御モードで移動する。一方、図14(2)に示すように、中間部分(補正点Qaから補正点Qbまでの間)は、工具先端中心点制御モードで移動する。工具先端中心点制御モードでは、工具径補正は行わず、加工面の法線ベクトルを参照せず、工具先端中心点間を補間するので、この区間内で工具軸方向ベクトルが加工面の法線ベクトルに平行になっても問題はない。
なお、切削点制御モード中に、特異点の問題を回避するために、特異点近傍にて一時的に工具先端中心点制御モードにNC内部で切り替えて動作している間(中間部分)は、現在位置9は特異点Sの位置とする。あるいは、実際の切削点ではなく、補正前の移動データ2を用いて、補正前の移動経路(加工プログラム1に指令された指令経路)上を補間して求めてもよい。このとき、始点でP0、工具先端中心点が非切削点指令を行う区間の中間点(工具先端中心点がPcaとPcbの中点)にあるときにS、終点でP1となるように、実施の形態1と同様に、実際の工具の移動と連動して補間速度を調整する。これにより、操作者にとって自然で理解しやすい位置表示が可能となる。
以上のように、本実施の形態によれば、実施の形態1と同様の効果が得られるとともに、さらに、切削点制御の区間においては指令経路そのままであり、作り変える必要がなく、単に中間部分の非切削点指令による移動を挿入するだけの形となる。特に、切削点制御の区間のおいて指令経路が変らない(移動距離が変らない)ので、指令速度を補正する必要がない。従って、NCにおいて実現する上で、処理が比較的簡単になり、計算時間が短くて済むという効果がある。
なお、本実施の形態では、切削点が特異点に一致する点を基準に、特異点前後のそれぞれの姿勢における工具先端中心点間を直線補間したが、適当なトレランスを設け、特異点のトレランスだけ手前の点、および、特異点をトレランスだけ越えた点をそれぞれ補正点Qa、Qbとしてもよい。
また、補正点間の区間では、工具先端中心点PcaとPcb間を直線補間するとしたが、他の補間方法でもよく、特にその区間の中央において工具先端中心点がSに一致するように、Pcaから点Sの間を第1の直線補間とし、点Sから点Pca間を第2の直線補間としてもよい。あるいは、点Pca、点S、点Pcbを滑らかに結ぶ曲線(円弧またはスプライン曲線)にて補間すればさらに動きが滑らかになり好ましい。
また、補正点間の区間では、工具先端中心点制御モードとしたが、特異点の回避のためには、切削点制御モードではなければよく、特に機械位置制御モードでもよい。特に本実施の形態においては、補正点間の区間では工具姿勢が変化しないので、機械位置の動きと工具先端中心点の動きは単に平行の関係であり、工具先端中心点を補間しても、機械位置Pm間を補間しても、等価である。
また、本実施の形態において、補間部において、実際の切削点の位置とは別に、加工プログラムに指令された移動経路上を補間した位置を計算し、これを現在位置として画面表示するようにすれば、補正された移動経路上の点ではなく、加工プログラムに指令された移動経路上の対応する位置を表示するので、加工プログラムとの対応がとりやすく、操作者にとって自然で理解しやすく、誤操作を招きにくい。
また、本実施の形態において、補間部において、特異点を含む区間においては、加工プログラムに指令された移動経路上の特異点の位置を計算し、これを現在位置として画面表示するようにすれば、補正された移動経路上の点ではなく、加工プログラムに指令された移動経路上の対応する位置を表示するので、加工プログラムとの対応がとりやすく、操作者にとって自然で理解しやすく、誤操作を招きにくい。特に、特異点を通過している区間であることが明示的に理解でき、操作者にとって自然で理解しやすい。
実施の形態4.
[工具姿勢を補正]
上記の実施の形態1〜3では、特異点Sに工具先端中心点が一致し、かつ、この点で工具の姿勢が加工面に垂直となる状態を経由する移動方法であった。しかし、このとき、工具刃先の1点ではなく、刃先の2点あるいは工具底面全体が加工面に接触し、切削負荷の増大などの問題を生じる場合がある。本実施の形態はこの問題を解決するための方法について説明する。
発明の構成は実施の形態1と同一である。動作は、図6、図8のフローチャートに従うが、各ステップにおける具体的な処理で実施の形態1と相違点がある。以下、相違点について述べる。
ステップST201では補正点QaとQbは特異点Sに一致させる。
次に、ステップST202では補正点Qa、Qbにおける工具軸方向ベクトルwと加工面法線ベクトルNに加えて、このときの工具先端中心点Pca、Pcbも算出する。まずQaについて算出する。
本発明の実施の形態においては、加工面の法線ベクトル自体は補正しない。従ってQaにおける加工面法線ベクトルは特異点における加工面法線ベクトルNsに一致させる。一方、特異点において工具底面の全体が加工面に接触することを避けるため、工具軸方向ベクトルを補正する。すなわち、特異点Sにおいて、加工プログラム1に指令された値はws=w(ts)であるが、それを修正して、特異点における加工面法線ベクトルwsから、少しだけ特異点通過前の位置における工具軸方向ベクトルw(ts−δ)(δ>0)に近づくように回転させたベクトルwaとする。たとえば、wsから微小角度Δφだけ始点における工具軸方向ベクトルw0の方に回転させる。
wa = Rot(nwa,Δφ)ws (4.1)
nwa=(ws×w0)/|ws×w0| (4.2)
ここでΔφは実施の形態1と同様に選定する。
また、このときの工具先端中心点Pcaは、切削点Qaに工具径補正ベクトルΔPcompを加算して求める。ここでΔPcompは式(1.15)〜(1.18)に、N=Ns、w=wa、v=v(ts)を代入して求める。
同様に、Qbにおいても、Qbにおける加工面法線ベクトルは特異点における加工面法線ベクトルNsに一致させる。また、工具軸方向ベクトルwbは、特異点における加工面法線ベクトルwsから、少しだけ特異点通過後の位置における工具軸方向ベクトルw(ts+δ)(δ>0)に近づくように回転させたベクトルとする。たとえば、wsから微小角度Δφだけ終点における工具軸方向ベクトルw1の方に回転させる。ここでΔφは実施の形態1と同様に選定する。またこのときの工具先端中心点Pcbは、切削点Qbに工具径補正ベクトルΔPcompを加算して求める。ここでΔPcompは式(1.16)〜(1.19)に、N=Ns、w=wb、v=v(ts)を代入して求める。
さらに、ステップST203では、次の順序で移動するような移動データ7に変更する。
工具軸方向ベクトル 加工面法線ベクトル 工具先端中心点

始点 w0 N0 −
↓切削点制御モード
補正点Qa wa Ns Pca
↓工具先端中心制御モード
補正点Qb wb Ns Pcb
↓切削点制御モード
終点 w1 N1 −
すなわち、始点から、Qa、Qbを経由して終点に至るような移動データ7とし、Qaにおける工具軸方向ベクトルはwa、加工面法線ベクトルはNs、工具先端中心点はPcaとする。また、Qbにおける工具軸方向ベクトルはwb、加工面法線ベクトルはNs、工具先端中心点はPcbとする。このうち、始点からQaまでと、Qbから終点までの間は切削点制御モードで移動する。一方、QaからQbまでの間は、非切削点制御モード(たとえば工具先端中心点制御モード)で移動する。この区間では工具先端中心点を補間するので、工具先端中心点Pca、Pcbを求めておく必要がある。それ以外の区間(切削点制御の区間)では、工具先端中心点Pca、Pcbの計算は必須ではない。
ステップST300において、移動データ7が特異点を通過しない場合には、実施の形態1と同様であるので説明を省略する。移動データ7が特異点を通過する場合でも、切削点制御を行う区間(始点から補正点Qaまでの区間、補正点Qbから終点までの区間)では実施の形態1と同様であるので説明を省略する。補正点Qaから補正点Qbまでの間は、切削点制御モードではなく、非切削点制御モード(ここでは工具先端中心点制御モードの例を示す)で制御する。
切削点が補正点Qaに到達すると、工具先端中心点制御モードに切り替える。工具先端中心点制御モードでは、工具先端中心点を補間制御する。工具先端中心点の補間点Pc(tn)の補間は式(3.1)、(3.2)と同様である。また、工具軸方向ベクトルw(tn)については、式(1.2)から式(1.4)において、
w0 → wa
w1 → wb
t → tn
と置き換えて求める。求めた工具先端中心点の補間点Pc(tn)と工具軸方向ベクトルw(tn)から、実施の形態1と同様に、式(1.33)〜式(1.36)を用いて、Pm(tn)とθ(tn)を求めて、これを位置指令値11とし、位置制御部1〜5(符号12〜16)に指令する。
上記手順に沿った場合の動作の例を、図15、図16に従って説明する。
図15(1)は図9(1)と同じ例である。このとき、まず、図15(2)に示すように、工具軸方向ベクトルwaは特異点における加工面の法線ベクトルNsから、始点の工具軸方向ベクトルw0に近づくように少しだけずらす。また工具軸方向ベクトルwbは特異点における加工面の法線ベクトルNsから、終点の工具軸方向ベクトルw1に近づくように少しだけずらす。また、切削点が特異点S、加工面の法線ベクトルがNsとしたときの、工具軸方向ベクトルがwa、wbの場合の、工具先端中心点Pca、Pcbをそれぞれ求める。
図16(1)に示すように、移動の前半部分(始点P0から補正点Qaまでの間)では、切削点がQaに一致するときの工具軸方向ベクトルwaはNsから始点の工具軸方向に近づくように補正しているので、加工面法線ベクトルと工具軸方向ベクトルが平行になることがなく、工具径補正ベクトルΔPcompの計算値が不定となることはない。
切削点がQaに到達したとき、すなわち工具先端中心点がPcaに到達したときは、切削点制御モードから工具先端中心点制御モードに切り替える。この工具先端中心点制御モードでは、工具径補正は行わず、加工面の法線ベクトルを参照せず、工具先端中心点間を補間する(図16(2))ので、この区間内で工具軸方向ベクトルが加工面の法線ベクトルに平行になっても問題はない。工具先端中心点が点Pcbに到達すると、再び切削点制御に切り替える。
図16(3)に示すように、移動の後半部分(補正点Qbから終点P1までの間)では、切削点制御を行うが、移動の前半部分同様に、加工面法線ベクトルと工具軸方向ベクトルが平行になることがなく、工具径補正ベクトルΔPcompの計算値が不定となることはない。
なお、切削点制御モード中に、特異点の問題を回避するために、特異点近傍にて一時的に工具先端中心点制御モードにNC内部で切り替えて動作している間は、現在位置9は特異点Sの位置とする。あるいは、実際の切削点ではなく、補正前の移動データ2を用いて、補正前の移動経路(加工プログラム1に指令された指令経路)上を補間して求めてもよい。このとき、始点でP0、工具先端中心点が非切削点指令を行う区間の中間点(工具先端中心点がPcaとPcbの中点)にあるときにS、終点でP1となるように、実施の形態1と同様に、実際の工具の移動と連動して補間速度を調整する。これにより、操作者にとって自然で理解しやすい位置表示が可能となる。
以上のように、本実施の形態によれば、移動中の刃先の軌跡に着目すると、移動の前半および後半部分では工具底面の一箇所で切削を行い、中間部分では刃が入れ替わるが、その間は両方の刃が加工面にあたることがなく、工具底面の広い範囲が同時に加工面に接触することがない。工具底面の広い範囲が加工面に接触すれば、切削抵抗が急激に増大し、工具損傷などを起こす可能性があるが、本実施の形態によれば、その問題が解消され、常に刃先の1点で加工面に接触するか、あるいは特異点を含む区間では刃先が加工面に当たらないので、工具底面の広い範囲が同時に加工面に接触することがないため、切削抵抗の急増や工具損傷を引き起こすことなく、工具損傷のリスクの少ない安定した加工が実現できる。また、ピックフィード加工を行っている場合には、工具底面の広い範囲が加工面に接触するということは、隣のパスにまではみ出して加工しているということにあり、隣の加工形状に干渉する(削り込む)可能性があるが、本実施の形態によれば、その問題が解消され、精度のよい加工が実現できる。
本実施の形態では、切削点が特異点に一致する点を基準に、特異点前後のそれぞれの姿勢における工具先端中心点間を直線補間したが、実用的には、計算誤差や加工プログラムに指令された移動データに含まれるCAM演算誤差などを考慮して適当なトレランスを設け、特異点のトレランスだけ手前の点、および特異点をトレランスだけ越えた点をそれぞれ補正点Qa、Qbとすることが好ましい。
また、実施の形態3で述べたように、補正点間の区間を特異点Sを経由する折れ線や曲線で補間してもよい。また、工具先端中心点ではなく機械位置Pmの位置および回転軸(ないしは、工具の姿勢を制御する制御軸)の位置θを直線または曲線により補間してもよい。
また、本実施の形態では、補正点において工具軸方向ベクトルを補正したが、実施の形態3と組み合わせて、補正点において、工具軸方向ベクトルと加工面法線ベクトルの両方を補正してもよい。すなわち、補正点において工具軸方向ベクトルと加工面法線ベクトルが平行でなく、かつ補正点Qaにおいては始点、補正点Qbにおいては終点に対して、工具軸方向ベクトルと加工面法線ベクトルの相対的な幾何学的関係が近づいていればよい。これにより、実施の形態3と実施の形態4の中間的な効果が得られる。
実施の形態5.
[角度が異なる場合]
前述の実施の形態では、工具が前傾姿勢から後傾姿勢、またはその逆の場合について例を挙げた。しかし、前傾姿勢で特異点に到達し、特異点から出た後は後傾姿勢だが進行方向に対してさらに左右方向にも傾くような場合がある。一般には、特異点前後の工具軸方向ベクトルと加工面法線ベクトルによっては、特異点通過前の工具径補正ベクトルと、特異点通過後の工具径補正ベクトルのなす角度が0度でも180度でもない、任意の角度になりうる。前述した実施の形態は、任意の工具径補正ベクトルと加工面法線ベクトルに対して解くことができる計算式を構成しているので、このような場合にも対応することができる。
例として、実施の形態3を適用した場合を図17(1)に、また、実施の形態4を適用した場合を図17(2)に示す。図は、特異点通過後に進行方向に対して右側に工具が傾斜する場合の動作例を示している。図において、円または楕円は、工具底面輪郭を示している。横軸と縦軸が交差する点は特異点である。この図は特異点における加工面法線ベクトル(=工具軸方向ベクトル)に垂直な平面に、工具底面輪郭を射影したものであり、横軸方向は移動方向にあわせている。また△および黒三角は切削点、○は工具先端中心点を示している。工具は始点(i)→(ii)→(iii)→(iV)の順に移動する。
図中の(1)の場合は、(ii)において工具軸方向が特異点に一致し(工具底面輪郭が真円)、その姿勢のまま工具先端中心点をPcaからPcbまで補間して、(iii)に移動する。(iii)に到達すれば切削点をSとし、SからP1まで切削点補間する。
図中の(2)の場合は、(ii)において工具軸方向を特異点から少しずらし(工具底面輪郭が楕円)、(iii)の姿勢まで工具姿勢を変えながら工具先端中心点をPcaからPcbまで補間して、(iii)に移動する。(iii)に到達すれば切削点をSとし、SからP1まで切削点補間する。
このように、本発明によれば、特異点通過前の工具径補正ベクトルと、特異点通過後の工具径補正ベクトルのなす角度が0度でも180度でもない、任意の角度に対して特異点通過が可能である。また、工具の進行方向に対して工具径補正ベクトルの方向が平行でない場合、一般にも適用可能であり、たとえば、工具進行方向に対して、工具の左方向への傾斜から右方向への傾斜に至る特異点通過などにも適用が可能である。
実施の形態6.
[凹形状の場合]
特に加工面が凹形状の場合には、周辺の加工形状との干渉(削り込み)が問題となる。
図18(1)に示すように、上記の実施の形態1〜3に従って、ステップST201にて補正点Qa、Qbを求める際に、工具先端中心点が特異点Sに一致させた場合に、工具が周囲の移動経路に干渉する場合には、工具の底面が周囲の形状に少なくとも1点で接するように、工具を工具軸方向に、ワークから工具が離れる方向に離した位置に工具先端中心点を配置する。この位置において、ステップST201と同様に、Qa、Qbを求める。
あるいは、図18(2)に示すように、実施の形態4に従って、ステップST201にて補正した工具軸方向ベクトルwa、wbを求める際に、切削点を特異点Sに一致させた場合に、工具が周囲の移動経路に干渉する場合には、工具の底面が周囲の形状に切削点だけで接するように、通常は微小角度としていたΔφをより大きくとり、干渉しないようにする。この姿勢において、ステップST202と同様に、Pca、Pcbを求める。
これにより、特異点を通過する際に、周辺の加工形状との干渉(削り込み)を生じないようになり、加工精度が向上する。特に、加工面が凹形状の場合は、干渉が生じやすいので、この場合に適用するとよい。
以上のように、本実施の形態においては、移動データ補正部において、特異点を含む区間の始点および終点は、特異点を含む区間の外側の所定の距離または所定のブロック数の移動経路と干渉しないよう、工具軸方向に加工面から離れる方向に工具の位置を補正するようにしたので、特異点を通過する際に、周辺の加工形状との干渉(削り込み)を生じないようになり、加工精度が向上する。
さらには、特異点があるブロックだけでなく、先読みにより、前後のブロックを参照し、より広い範囲で干渉計算すると、より効果的である。
実施の形態7.
[戻る場合]
図19(1)に示すように、ワークに対して工具が、前傾姿勢から、一時的に特異点になり、その後また前傾姿勢に戻る場合がある。このように、一時的に特異点になるが、その前後で工具径補正ベクトルΔPcompが大きく変化しない場合がある。このような場合に、実施の形態1,2,3を適用すると、N0に対するw0と、N1に対するw1の相対的な位置関係がほぼ同じであれば、図19(2)に示すように、NaとNbが近い値となり、特異点においても、工具径補正ベクトルΔPcompを保持するような動作を行う。
同様に実施の形態4を適用すると、waとwbが近い値となり、特異点においても、工具径補正ベクトルΔPcompを保持するような動作を行う。
加工においては、基本的に工具は前傾、または後傾だけで削りたい場合がある。そのような場合においても、加工形状によっては、一時的に加工面に対して工具が垂直になってしまう場合がある。そのような場合に、特異点において、工具径補正ベクトルを大きく変化させてしまう、特に特異点において工具径補正ベクトルを0にしてしまうと、逆に加工形状に対して削りこみを生じる場合がある。たとえば、この図の例で、工具先端中心点を特異点Sに一致させれば、工具右下が指令経路に干渉してしまうのがわかるであろう。このように、基本的に工具から見て一定方向の刃で加工するような用途の場合には、本実施の形態のように、一時的に特異点となり、ワークから見て元の工具軸方向に戻る(特異点を通過しない)場合には、工具径補正ベクトルΔPcompを保持するような動作を行うことが、不要な干渉防止に効果がある。
以上のように、本実施の形態においては、移動データ補正部において、特異点に到達する直前の工具径補正ベクトルと、特異点から出発した直後の工具径補正ベクトルが同じ方向であるとき、特異点近傍においては、工具径補正ベクトルを保持するようにしたので、基本的に加工面に対して工具を一定の方向に傾けて加工するような用途の場合に、意図しない削りこみを防止する。
実施の形態8.
[ラジアスエンドミルの場合]
本実施の形態においては、ラジアスエンドミルを用いた場合の補正方法について述べる。
図20に示すように、ラジアスエンドミルにおける工具径補正ベクトルΔPcompは
ΔPcomp = (d−r)e + r(N−w) (8.1)
で表される。ここで右辺第1項は式(1.15)と同様に、ラジアスエンドミルの底面の平面の半径分の工具径補正ベクトルを指しており、スクエアエンドミルと同様に、底面全体が加工面に接する場合には工具径補正ベクトルが不定となる。一方、右辺第2項目はコーナ半径分の工具径補正ベクトルを指しており、これは加工面の法線ベクトルと工具軸方向ベクトルで一意に計算され、特異点において不定になることも、特異点前後で不連続になることもない。
従ってラジアスエンドミルにおいては、上記の実施の形態1〜3のように加工面の法線ベクトルを補正する場合には、補正後の移動データ7を用いて計算を行うのは右辺第1項のみで、右辺第2項は補正前の移動データ2を用いて計算を行う。
図において、補間部8において、補正後の移動データ7を用いて、次回の補間点における、Pe(tn)、w(tn)、N(tn)を求め、これらを式(1.15)から式(1.18)に当てはめて、式(8.1)の右辺第1項を求める。さらに、補間部8は、加工プログラム1に指令された補正前の移動データ2を用いて、次回の補間点における指令されたとおりの加工面法線ベクトルN’(tn)を求め、これとw(tn)を用いて、式(8.1)の右辺第2項を求める。
これにより、本来特異点には影響されず常に正確に計算可能なコーナ半径分の径補正ベクトルは、指令されたとおりの加工面法線ベクトルを用いて計算が可能となるとともに、ラジアスエンドミルの底面の平面の半径分の工具径補正ベクトルは、スクエアエンドミルと同様に、移動データを補正しながら動作することで、特異点の問題を回避しながら、計算することが可能となる。すなわち、本実施の形態によれば、ラジアスエンドミルを用いて特異点を通過する場合でも、精度のよい加工結果を得ることができる。
なお、この場合でも、現在位置9は、実際の切削点ではなく、補正前の移動データ2を用いて、補正前の移動経路(加工プログラム1に指令された指令経路)上を補間して求めてもよい。これにより、操作者にとって自然で理解しやすい位置表示が可能となる。
本実施の形態において、ラジアスエンドミル工具を用いて加工を行う場合には、移動経路補正部および補間部において工具径補正量を求める際に、工具底面の平坦部の半径に相当する工具径補正ベクトルは補正後の工具軸方向ベクトルおよび加工面法線ベクトルを用いて計算し、一方、工具のコーナ半径に相当する工具径補正ベクトルは補正前の工具軸方向ベクトルおよび加工面法線ベクトルを用いて計算し、両者を加算して工具径補正ベクトルを求めるようにしたので、ラジアスエンドミル工具を用いた加工において、精度よく加工を行うことができる。
スクエアエンドミルを用いて工具底面のエッジにより加工を行う例を示す図である。 加工面に対する工具の姿勢を連続的に変えながら移動する例を示す図である。 ラジアスエンドミルを用いて加工を行う例を示す図である。 本発明の実施の形態1における数値制御装置の構成を示したブロック図である。 本発明の実施の形態1における工具データを説明するための図である。 本発明の実施の形態1における全体の処理の流れを示すフローチャートである。 本発明の実施の形態1における特異点判定処理を示すフローチャートである。 本発明の実施の形態1における移動データの補正処理を示すフローチャートである。 本発明の実施の形態1における補正前後の移動データを示す図である。 本発明の実施の形態1における動作の例を示す図である。 本発明の実施の形態2における補正前後の移動データを示す図である。 本発明の実施の形態2における動作の例を示す図である。 本発明の実施の形態3における補正前後の移動データを示す図である。 本発明の実施の形態3における動作の例を示す図である。 本発明の実施の形態4における補正前後の移動データを示す図である。 本発明の実施の形態4における動作の例を示す図である。 本発明の実施の形態5における動作の例を示す図である。 本発明の実施の形態6における補正後の移動データを示す図である。 本発明の実施の形態7における補正前後の移動データを示す図である。 本発明の実施の形態8における工具径補正ベクトルを説明する図である。
符号の説明
1 加工プログラム、2 加工プログラムに指令された移動データ、3 工具データ、4 特異点判定部、5 特異点判定結果、6 移動データ補正部、7 補正後の移動データ、8 補間部、9 現在位置、10 表示部、11 位置指令値、12 位置制御部1、13 位置制御部2、14 位置制御部3、15 位置制御部4、16 位置制御部5、Pe 切削点、Pc 工具先端中心点、w 工具軸方向ベクトル、N 加工面法線ベクトル、Q 補正点、S 特異点、ΔPcomp 工具径補正ベクトル。

Claims (10)

  1. スクエアエンドミル工具またはラジアスエンドミル工具を用いて、加工物に対する工具姿勢を変えながら、工具底面が加工物に接する切削点が、加工プログラムに指令された移動経路に沿って移動するように、機械の駆動軸を制御する数値制御装置であって、
    前記加工プログラムに指令された移動データと使用する工具の工具データとに基づいて、前記工具の移動中に前記加工物の加工面に対して工具軸方向が垂直となる特異点があるかを判定する特異点判定部と、
    前記特異点判定部によって移動中に特異点があると判定された場合には、前記移動データを、特異点を含む移動区間と特異点を含まない移動区間とに分割する移動データ補正部と、
    前記移動データ補正部によって分割された移動区間のうち、前記特異点を含む移動区間では、移動がある場合には、工具先端中心点の位置を補間して求め、一方、前記特異点を含まない移動区間では、切削点の位置を補間し、加工面法線ベクトルと工具軸方向から工具先端中心点まで工具径補正ベクトルを求めて加算することで、工具先端中心点を求め、求めた前記工具先端中心点から逆運動学関数を用いて機械各軸の位置を求める補間部と、
    前記補間部によって求められた機械各軸の位置に従って機械の駆動軸を制御する位置制御部と
    を備えたことを特徴とする数値制御装置。
  2. 前記移動データ補正部は、
    特異点を含む区間の始点における加工面法線ベクトルに対する工具軸方向ベクトルのなす回転角が、
    前記特異点を含む区間の始点の直前の点における加工面法線ベクトルに対する工具軸方向ベクトルのなす回転角に近づくように、
    前記特異点を含む区間の始点における加工面法線ベクトルまたは工具軸方向ベクトルないしはその両方を補正し、
    前記特異点を含む区間の終点における加工面法線ベクトルに対する工具軸方向ベクトルのなす回転角が、
    前記特異点を含む区間の終点の直後の点における加工面法線ベクトルに対する工具軸方向ベクトルのなす回転角に近づくように、
    前記特異点を含む区間の終点における加工面法線ベクトルまたは工具軸方向ベクトルないしはその両方を補正する
    ことを特徴とする請求項1に記載の数値制御装置。
  3. 前記移動データ補正部は、
    前記特異点を含む区間の始点を、特異点の位置から、特異点を含む区間の始点の直前の位置における工具径補正ベクトルを減算した位置とし、
    前記特異点を含む区間の終点を、特異点の位置から、特異点を含む区間の直後の位置における工具径補正ベクトルを減算した位置とする
    ことを特徴とする請求項1または2に記載の数値制御装置。
  4. 前記移動データ補正部は、
    前記特異点を含む区間の始点および終点を特異点とし、
    前記特異点を含む区間の始点および終点における加工面法線ベクトルを補正する
    ことを特徴とする請求項1または2に記載の数値制御装置。
  5. 前記移動データ補正部は、
    前記特異点を含む区間の始点および終点を特異点とし、
    前記特異点を含む区間の始点および終点における工具軸方向ベクトルを補正する
    ことを特徴とする請求項1または2に記載の数値制御装置。
  6. 前記移動データ補正部は、
    前記特異点を含む区間の始点および終点は、特異点を含む区間の外側の所定の距離または所定のブロック数の移動経路と干渉しないよう、工具軸方向に加工面から離れる方向に工具の位置を補正する
    ことを特徴とする請求項1ないし5のいずれか1項に記載の数値制御装置。
  7. 前記移動データ補正部は、
    前記特異点に到達する直前の工具径補正ベクトルと、特異点から出発した直後の工具径補正ベクトルが同じ方向であるとき、特異点近傍においては、工具径補正ベクトルを保持する
    ことを特徴とする請求項1ないし6のいずれか1項に記載の数値制御装置。
  8. 前記補間部は、
    実際の切削点の位置とは別に、
    前記加工プログラムに指令された移動経路上を補間した位置を計算し、これを現在位置として画面表示する
    ことを特徴とする請求項1ないし7のいずれか1項に記載の数値制御装置。
  9. 前記補間部は、
    特異点を含む区間においては
    前記加工プログラムに指令された移動経路上の特異点の位置を計算し、これを現在位置として画面表示する
    ことを特徴とする請求項1ないし7のいずれか1項に記載の数値制御装置。
  10. 前記工具としてラジアスエンドミル工具を用いて加工を行う場合には、
    前記移動経路補正部および補間部は、工具径補正量を求める際に、
    工具底面の平坦部の半径に相当する工具径補正ベクトルは補正後の工具軸方向ベクトルおよび加工面法線ベクトルを用いて計算し、
    一方、工具のコーナ半径に相当する工具径補正ベクトルは補正前の工具軸方向ベクトルおよび加工面法線ベクトルを用いて計算し、
    両者を加算して工具径補正ベクトルを求める
    ことを特徴とする請求項1ないし9のいずれか1項に記載の数値制御装置。
JP2006273161A 2006-10-04 2006-10-04 数値制御装置 Active JP4708299B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006273161A JP4708299B2 (ja) 2006-10-04 2006-10-04 数値制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006273161A JP4708299B2 (ja) 2006-10-04 2006-10-04 数値制御装置

Publications (2)

Publication Number Publication Date
JP2008090734A true JP2008090734A (ja) 2008-04-17
JP4708299B2 JP4708299B2 (ja) 2011-06-22

Family

ID=39374789

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006273161A Active JP4708299B2 (ja) 2006-10-04 2006-10-04 数値制御装置

Country Status (1)

Country Link
JP (1) JP4708299B2 (ja)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2249221A2 (en) 2009-05-07 2010-11-10 JTEKT Corporation Controller for machine tool and five-axis simultaneous control machine tool controlled thereby
JP2011003176A (ja) * 2009-05-19 2011-01-06 Fanuc Ltd 5軸加工機用数値制御装置
JP2011100266A (ja) * 2009-11-05 2011-05-19 Mitsubishi Electric Corp 数値制御装置
JP2011165066A (ja) * 2010-02-12 2011-08-25 Jtekt Corp 工作機械の誤差表示装置
CN103163830A (zh) * 2011-12-12 2013-06-19 沈阳高精数控技术有限公司 一种五轴端铣刀补偿中运动突变现象的控制方法
US8818549B2 (en) 2009-08-24 2014-08-26 Jtekt Corporation Controller for machine tool and five-axis simultaneous control machine tool controlled thereby
CN106814692A (zh) * 2015-11-30 2017-06-09 兄弟工业株式会社 控制装置、机床、控制方法
CN107065769A (zh) * 2017-04-26 2017-08-18 山东理工大学 基于ab型五轴数控机床球头刀加工刀轴矢量光顺方法
CN108008699A (zh) * 2016-10-27 2018-05-08 兄弟工业株式会社 加工路径运算装置、加工路径运算方法
WO2018179401A1 (ja) * 2017-03-31 2018-10-04 株式会社牧野フライス製作所 工具経路生成方法および装置
JP2019070953A (ja) * 2017-10-10 2019-05-09 Dmg森精機株式会社 加工プログラム処理装置およびこれを備えた多軸加工機
CN110888394A (zh) * 2019-12-23 2020-03-17 南京工业大学 面向曲面数控加工球头铣刀磨损控制的刀轴优化方法
WO2021095170A1 (ja) * 2019-11-13 2021-05-20 三菱電機株式会社 加工プログラム変換装置、数値制御装置および加工プログラムの変換方法
WO2021182305A1 (ja) * 2020-03-11 2021-09-16 ファナック株式会社 数値制御装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09254062A (ja) * 1996-03-26 1997-09-30 Toyota Autom Loom Works Ltd 産業用ロボットの姿勢決定方法及び姿勢決定装置
JP2005182437A (ja) * 2003-12-19 2005-07-07 Fanuc Ltd 数値制御装置及び数値制御方法
JP2006227724A (ja) * 2005-02-15 2006-08-31 Mitsubishi Electric Corp ロボットの制御装置および制御方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09254062A (ja) * 1996-03-26 1997-09-30 Toyota Autom Loom Works Ltd 産業用ロボットの姿勢決定方法及び姿勢決定装置
JP2005182437A (ja) * 2003-12-19 2005-07-07 Fanuc Ltd 数値制御装置及び数値制御方法
JP2006227724A (ja) * 2005-02-15 2006-08-31 Mitsubishi Electric Corp ロボットの制御装置および制御方法

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2249221A2 (en) 2009-05-07 2010-11-10 JTEKT Corporation Controller for machine tool and five-axis simultaneous control machine tool controlled thereby
US8712576B2 (en) 2009-05-07 2014-04-29 Jtekt Corporation Controller for machine tool and five-axis simultaneous control machine tool controlled thereby
JP2011003176A (ja) * 2009-05-19 2011-01-06 Fanuc Ltd 5軸加工機用数値制御装置
US8818549B2 (en) 2009-08-24 2014-08-26 Jtekt Corporation Controller for machine tool and five-axis simultaneous control machine tool controlled thereby
JP2011100266A (ja) * 2009-11-05 2011-05-19 Mitsubishi Electric Corp 数値制御装置
JP2011165066A (ja) * 2010-02-12 2011-08-25 Jtekt Corp 工作機械の誤差表示装置
CN103163830A (zh) * 2011-12-12 2013-06-19 沈阳高精数控技术有限公司 一种五轴端铣刀补偿中运动突变现象的控制方法
CN106814692A (zh) * 2015-11-30 2017-06-09 兄弟工业株式会社 控制装置、机床、控制方法
CN108008699B (zh) * 2016-10-27 2020-03-03 兄弟工业株式会社 加工路径运算装置、加工路径运算方法
CN108008699A (zh) * 2016-10-27 2018-05-08 兄弟工业株式会社 加工路径运算装置、加工路径运算方法
WO2018179401A1 (ja) * 2017-03-31 2018-10-04 株式会社牧野フライス製作所 工具経路生成方法および装置
JPWO2018179401A1 (ja) * 2017-03-31 2019-11-07 株式会社牧野フライス製作所 工具経路生成方法および装置
CN107065769B (zh) * 2017-04-26 2019-07-16 山东理工大学 基于ab型五轴数控机床球头刀加工刀轴矢量光顺方法
CN107065769A (zh) * 2017-04-26 2017-08-18 山东理工大学 基于ab型五轴数控机床球头刀加工刀轴矢量光顺方法
JP2019070953A (ja) * 2017-10-10 2019-05-09 Dmg森精機株式会社 加工プログラム処理装置およびこれを備えた多軸加工機
WO2021095170A1 (ja) * 2019-11-13 2021-05-20 三菱電機株式会社 加工プログラム変換装置、数値制御装置および加工プログラムの変換方法
JPWO2021095170A1 (ja) * 2019-11-13 2021-05-20
JP7175403B2 (ja) 2019-11-13 2022-11-18 三菱電機株式会社 加工プログラム変換装置、数値制御装置および加工プログラムの変換方法
CN110888394A (zh) * 2019-12-23 2020-03-17 南京工业大学 面向曲面数控加工球头铣刀磨损控制的刀轴优化方法
CN110888394B (zh) * 2019-12-23 2021-03-19 南京工业大学 面向曲面数控加工球头铣刀磨损控制的刀轴优化方法
WO2021182305A1 (ja) * 2020-03-11 2021-09-16 ファナック株式会社 数値制御装置
JP6985563B1 (ja) * 2020-03-11 2021-12-22 ファナック株式会社 数値制御装置

Also Published As

Publication number Publication date
JP4708299B2 (ja) 2011-06-22

Similar Documents

Publication Publication Date Title
JP4708299B2 (ja) 数値制御装置
JP6457432B2 (ja) 揺動切削を行う工作機械のサーボ制御装置、制御方法及びコンピュータプログラム
TWI448853B (zh) 數值控制裝置
US20090228138A1 (en) Numerical controller controlling five-axis processing machine
US8818549B2 (en) Controller for machine tool and five-axis simultaneous control machine tool controlled thereby
JP2008287471A (ja) 5軸加工機の数値制御方法
JP5079165B2 (ja) 数値制御装置及び数値制御方法
US9395720B2 (en) Numerical controller having a tool posture control function for multi-axis machining machines
JP5872869B2 (ja) 工具背面での切削点指令により加工を行う数値制御装置
WO2013179366A1 (ja) 数値制御装置
JP5323280B1 (ja) 数値制御装置
JP2005182437A (ja) 数値制御装置及び数値制御方法
US7518329B2 (en) Method and device for cutting freeform surfaces by milling
JP4620148B2 (ja) サーボモータ制御装置
JP4637197B2 (ja) 数値制御装置
JP5399881B2 (ja) 5軸加工機用数値制御装置
JP2020049611A (ja) ロボットの円弧動作を制御するロボット制御装置
WO2015079583A1 (ja) 工作機械の制御装置
JPH08118205A (ja) 数値制御工作機械の主軸法線方向制御方法
WO2014068675A1 (ja) 工作機械の制御装置および工作機械
US20150378343A1 (en) Numerical controller having tool tip point control function
JPH03281083A (ja) Cncレーザ加工機の姿勢制御方式
JP5800884B2 (ja) 面取り加工を行う工作機械および面取り加工方法
CN112513752B (zh) 铣削方法
JP4805123B2 (ja) トーチの開先角度の制御方法及びトーチの開先角度の制御装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20081212

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100805

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100817

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101008

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: 20110315

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110316

R150 Certificate of patent or registration of utility model

Ref document number: 4708299

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250