JP5009010B2 - 数値制御装置 - Google Patents

数値制御装置 Download PDF

Info

Publication number
JP5009010B2
JP5009010B2 JP2007063004A JP2007063004A JP5009010B2 JP 5009010 B2 JP5009010 B2 JP 5009010B2 JP 2007063004 A JP2007063004 A JP 2007063004A JP 2007063004 A JP2007063004 A JP 2007063004A JP 5009010 B2 JP5009010 B2 JP 5009010B2
Authority
JP
Japan
Prior art keywords
tool
path
drive shaft
drive axis
spindle
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.)
Expired - Fee Related
Application number
JP2007063004A
Other languages
English (en)
Other versions
JP2008225825A (ja
Inventor
信孝 西橋
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.)
Shin Nippon Koki KK
Original Assignee
Shin Nippon Koki KK
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 Shin Nippon Koki KK filed Critical Shin Nippon Koki KK
Priority to JP2007063004A priority Critical patent/JP5009010B2/ja
Publication of JP2008225825A publication Critical patent/JP2008225825A/ja
Application granted granted Critical
Publication of JP5009010B2 publication Critical patent/JP5009010B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Numerical Control (AREA)

Description

本発明は、パラレルメカニズム機や様々な形態の5軸機をはじめとするあらゆる機械構造の工作機械の数値制御において、制御用ソフトウェアのほとんど全てをあらゆる機械に共通とするソフトウェア構造化技術と、加減速制御技術に関する。
従来、種々の工作機械が知られており、その制御方式はモーターで駆動する駆動軸の構成によって確定する。駆動軸の構成は、同時2軸制御の旋盤から、同時3軸のマシニングセンター、ヘッド側回転型5軸機、テーブル回転型5軸機、混合型5軸機、パラレルメカニズム機など様々である。
プログラム座標系を定義し、そのプログラム座標系上での工具の移動軌跡をNCプログラムに記述する。このNCプログラムに基づいて駆動軸を駆動して工作機械を動かすのが数値制御装置の役割である。5軸機における数値制御プロセスには、5軸における工具長補正、5軸における工具径補正、5軸における工具先端を正確に移動させる為の補間制御、綺麗に速く加工するための送り加減速制御がある。これらの計算には、回転軸に基づく計算を必要とする。駆動軸の構成によって、計算方法を変えなければならない。結果として、いろんな制御プロセスにおいて駆動軸構成に応じた変更を余儀なくされた。駆動軸の構成が変わるたびに技術検討を繰り返し、特徴が変われば、また似ているが異なる複数の機能を作っている。複数の機能が絡み合い、複雑さを増している。例えば、5軸における工具長補正、5軸における工具先端を正確に移動させる為の補間制御、綺麗に速く加工するための送り加減速制御などは、それぞれを個別に切り離すことが出来ずに混然一体となっている。
駆動軸の構成に関わる部分を抽出してブラックボックス化し、各制御プロセスを単純化し、可能な限り多くの部分を共通化し、簡易化されるべきであるが、駆動軸の構成に関わる部分の抽出が不完全でブラックボックス化されておらず、結果、ソフトウェアが肥大化、複雑化してしまい、開発時間及び保守時間が増大している。この現状を、次に、2種類の5軸機とパラレルメカニズム機とを例に説明する。
5軸機は通常、XYZの直線軸からなる3軸と2つの回転軸の計5つの駆動軸を有する。通常、3つの直線軸は互いに直交している。2つの回転軸は、主軸を有するヘッド側を回動させるものと、加工物を設置する機械テーブルを回動させるものと、ヘッドと機械テーブルとをそれぞれ回動させるものである。
初期段階のヘッド回転型5軸機の数値制御では、NCプログラム座標系としてXYZの3つの直線軸に平行なワーク座標系を設定し、回転軸の回転中心であるコントロールポイントの該ワーク座標系上の座標値と回転軸座標とで機械の動作を記述したNCプログラムで制御していた。このNCプログラムは、工具の移動軌跡を記述するのではなく、加工物を削る為のコントロールポイントの動きを記述していた。
コントロールポイントの動きのNCプログラムは、工具長が変われば作り直しとなる。そこで、工具長が変わってもそのまま使用可能な数値制御が課題となった。この課題は、工具の動きを工具の先端点の座標で記述する工具先端点制御で解決された。すなわち、実際の工具の長さと工具の傾斜に応じてコントロールポイントの座標値を計算し、機械を動かすことで解決された。
ただ、この考えは、テーブルが回動する回転軸を有するテーブル回転型5軸機には、そのまま適用できなかった。テーブルの回動とともに加工物が回動してしまうため、加工物の座標系と機械のXYZ座標軸との平行関係が崩れるためである。この課題は、特許文献1に示すように、機械テーブルとともに回動する座標系をプログラム座標系とし、該プログラム座標系上の工具の移動軌跡をNCプログラムに記述し、工具の移動軌跡をテーブルの回動に伴う座標変換も配慮して駆動軸座標に変換する5軸変換を採用することで解決された。つまり同じ目的の工具先端点制御機能を、似ているが異なる別物として開発した。命令も違うし、使用上の注意事項も異なる。工具パスを指定した補正量だけシフトする5軸工具径補正機能も同様に、駆動軸の構成によって似ているが異なる機能としてしまった。
次に、パラレル機について説明する。使用者側の立場から観ればパラレル機も5軸機と同じである。他の5軸機とほとんど共通となれば、開発も早く、低コストで済む。しかしながら、現実にはパラレルメカニズム機の数値制御は難しいものとして特別扱いされている傾向があった。例えば、特許文献2には、工作機械の加工精度を向上させるために加工ツールの滑らかな速度変化を可能にする制御が記載されている。特許文献3には、パラレルメカニズム機などにおける、直交座標系でない駆動軸を有する工作機械の各駆動軸の送り速度を制御するものが記載されている。特許文献4には、パラレルメカニズム機の制御に関するものが記載されている。特許文献4の記載からは、パラレルメカニズム機の制御を、その都度かなりの時間をかけて開発してきた経緯が窺われる。
これらの特許文献に記載の技術からパラレルメカニズム機の制御を実現するには、かなりの労力が払われたか、今後払われるであろう。パラレルメカニズム機においても、工具の移動軌跡に対する制御を実現するという意味では他の5軸機と全く同じであり、逆運動学関係式が異なる点を除けば、その他の違いは無いはずである。パラレルメカニズム機をも含むあらゆる工作機械に共通なソフトウェアで構成する数値制御装置が実現されても不思議ではない。
続いて、加減速制御について説明する。特許文献2に記載の技術が開発される以前には、同文献2の図3に説明されているB加減速が不可欠であったが、最終経路はB加減速に起因した経路誤差を発生させていた。この経路誤差は、内回り誤差と呼ばれ、時定数と呼ばれる機械定数の2乗と速度の2乗にほぼ比例する値となる特徴を持っているとされている。この時定数は、許容加速度に対応する機械パラメータであり、許容加速度が大であれば小さく、許容加速度が小であれば大きい値を設定する特徴を持っている。大型の工作機械では、許容加速度は相対的に小さいので、時定数を大きく設定する。機械の加減速を滑らかにするために前記B加減速を使用すると前記経路誤差、すなわち内回り誤差を発生させ、これを許容値内に押さえるために速度を落とさなければならなかった。特許文献2によれば、円弧補間を例として、前記B加減速を不要とする技術を開示している。ところが、この方式は、円弧のようにもともと滑らかな曲線の場合には有効であるが、一般的によく使われる短い直線指令ブロックの集まりで工具の移動軌跡を記述しているNCプログラムに対しては必ずしも有効ではない。短い直線ブロックの場合、各ブロックの境界で工具パスが折れており、特許文献2に記載されている第一次補間の結果が、元々の折れ線上にランダムに作成されているため、その後、多項式で滑らかに補間しようとしても出来ない。また、他の方法として、ナノスムージングという工具パスを滑らかな曲線に変更する方法が提案されているが、滑らかに変更できる条件が限定されており、例えば、工具パスの進行方向ベクトルの向きがある角度より大きく変わる点間においては曲線に変換されない。そのため、一般的によく使われる短い直線ブロックの集まりのNCプログラムを元に制御する場合には、前記B加減速を使用せざるを得ない。前記B加減速を使えば、円弧補間のような滑らかな移動において前記内回り誤差が発生してしまう。従って、メカ的にはもっと速く動かせる時でも、前記内回り誤差を許容値内に収めるためには、減速しなければならない。その結果、どのような工具パスに対しても有効で、このような減速をすることのない加減速制御が求められている。それも、あらゆる工作機械に共通に利用出来れば理想的である。
また、駆動軸の構成として、互いに平行な2つの駆動軸を有し、可動域を広げる工作機械も実存する。例えば、図1に示すような、駆動軸Zに平行な駆動軸Wを有する工作機械では、機械のふところを広げてより嵩のある加工物を加工できる。しかしながら、この駆動軸Zと駆動軸Wとを同時に使う場合には、他の機能との併用、例えば、工具径補正や円弧補間との併用はできないというように、様々な制限がある。かかる工作機械のような機械において、駆動軸Zと駆動軸Wとの使用を適切に振り分け、他の機能との併用においても何の制約もない数値制御装置が求められている。
特開2003−195917 特開平11−149306 特開2005―56171 特開2001―92508
本発明はこのような現状に鑑みてなされたものであり、第1の課題は、駆動軸の構成に依存する部分を前記主軸位置と前記駆動軸座標との関係式である前記逆運動学関係式のみとし、その他の工具径補正のような工具パスの編集、工具長や工具形状に基づく変換や、加工対象物の設置位置による変換などをあらゆる機械に共通とするソフトウェア構造を実現することにある。パラレルメカニズム機においても例外ではない。これにより、ほとんど全ての数値制御プロセスを、一度作ればどんな機械にもそのまま使えるようにでき、結果として、無駄を大きく削減し、技術発展に貢献することが可能となる。
また、平行な駆動軸を有する特殊な機械も例外ではなく、逆運動学関係式を工夫することで対応可能とする。このケースにおいては、平行軸をどのように同時使用するかの条件を追加して逆運動学関係式を補強し、主軸位置に対する1つの駆動軸座標を算出可能にするだけで、他の機能との制限無き併用を可能とする。
第2の課題は、前記逆運動学関係式に基づく関数群の他は、あらゆる機械に共通で、前記B加減速を全く必要としない、送り速度加減速制御を実現することにある。第2の課題では、機械に許される送り速度加減速条件ぎりぎりの送り速度制御を実現する。かかる加減速制御においては、元々滑らかな曲線部における内回り誤差に相当する誤差を発生させず、かつ該誤差を抑えるための減速を不要とする。しかも、逆運動学関係式に依存する一部を除いて、あらゆる機械に共通な制御技術となる。
請求項1記載の発明は、工具を装着する主軸と、前記主軸を固定して保持する主軸ヘッドと、加工対象物を固定設置する機械テーブルと、前記主軸ヘッドと前記機械テーブルの回転姿勢を含む相対位置関係を制御する複数の駆動軸と、該駆動軸を駆動するモーターとを少なくとも有し、前記機械テーブル上に座標軸の向きと原点の位置とが固定された段取り基準座標系が設定された工作機械を制御する数値制御装置であって、準備手段と第1制御手段と第2制御手段と第3制御手段とを有し、前記準備手段は、細分化されたサブ手段として少なくともNCプログラム管理手段と段取り情報管理手段と工具情報管理手段とを有し、前記NCプログラム管理手段は、前記加工対象物に固定されたプログラム座標系上の工具の姿勢を含む位置である工具位置の軌跡とその送り速度を指令する工具送り速度指令からなる工具パスと必要に応じての工具パス修正命令とが記述されたNCプログラムを準備情報メモリー部に記憶するものであり、前記段取り情報管理手段は、前記機械テーブルへの前記加工対象物の姿勢を含む設置位置を前記プログラム座標系の原点座標と前記段取り基準座標系に対する前記プログラム座標系の回転姿勢とを示す前記段取り基準座標系上の位置情報である段取り情報として前記準備情報メモリー部へ記憶するものであり、前記工具情報管理手段は、使用する工具の形状や該工具の長さや工具半径の補正量の寸法情報を含む工具情報を前記準備情報メモリー部へ記憶するものであり、前記第1制御手段は、細分化されたサブ手段としてNCプログラム読み取り手段と工具パス修正手段とを有し、前記NCプログラム読み取り手段は、前記NCプログラムに記述された前記工具パスと前記工具パス修正命令とを読み取ってパス演算メモリー部に記憶するものであり、前記工具パス修正手段は、前記工具パス修正命令に従って前記工具パスを修正するものであり、前記第2制御手段は、前記段取り情報と前記工具情報とに基づいて前記駆動軸の構成の特徴を配慮して前記工具パスから全駆動軸の位置座標である駆動軸座標の軌跡である駆動軸パスを求めて前記パス演算メモリー部に記憶するものであり、前記第3制御手段は、前記駆動軸パスから各補間周期ごとの各駆動軸の移動量を求めて前記モーターに出力するものであり、さらに、前記準備手段は、細分化されたサブ手段として駆動軸構成管理手段を有し、前記駆動軸構成管理手段は、前記主軸の回転姿勢を含む位置を前記段取り基準座標系上で表す位置情報である主軸位置と前記駆動軸座標との相関関係を示す関係式であって前記駆動軸の構成によって決まる逆運動学関係式に基づく前記主軸位置を前記駆動軸座標に変換する主軸駆動軸変換関数を機械情報メモリー部に記憶するものであり、前記第2制御手段は、細分化されたサブ手段として主軸パス算出手段と駆動軸パス算出手段とを有し、前記主軸パス算出手段は、前記駆動軸の構成とは無関係に、前記段取り情報と前記工具情報とに基づいて、前記工具パスを前記主軸位置の軌跡である主軸パスに変換して前記パス演算メモリー部に記憶するものであり、前記駆動軸パス算出手段は、前記主軸駆動軸変換関数を使用して前記主軸パスを前記駆動軸パスに変換して前記パス演算メモリー部に記憶するものであることを特徴とするものである。
請求項2記載の発明は、請求項1に記載の数値制御装置において、前記準備手段は、細分化したサブ手段として、さらに、前記工作機械が互いに平行な複数の駆動軸を有する駆動軸構成を持つ場合において、前記逆運動学関係式に加えることで前記主軸位置に対応する前記駆動軸座標を1つに規定する追加条件である冗長度拘束条件を前記機械情報メモリー部に記憶する冗長度拘束条件追加手段を有し、前記主軸駆動軸変換関数は、前記機械情報メモリー部に記憶された前記冗長度拘束条件と前記逆運動学関係式とを併せて使用することで前記主軸位置に対応する1つの前記駆動軸座標を算出する関数であることを特徴とする。
請求項3記載の発明は、請求項1又は2に記載の数値制御装置において、前記準備手段は、さらに、細分化した制御手段として、送り制御条件管理手段を含んで構成され、前記送り制御条件管理手段は、各駆動軸座標を時間でそれぞれ一次、二次、三次微分した各駆動軸の速度、加速度、ジャークそれぞれの許容最大値を含む駆動軸加減速条件を記憶するものであり、前記第1制御手段は、さらに、細分化されたサブ手段として工具パス媒介変数表現手段を有し、前記工具パス媒介変数表現手段は、前記工具パスを、該工具パスに含まれる前記工具軌跡を該工具軌跡の姿勢変化を含む移動距離の積算長であるsを媒介変数とする関数で表現し、前記工具送り速度指令を前記sの速度に変換して、前記sを媒介変数とする関数として表現した工具パスに変更するものであり、前記主軸パス算出手段は、前記sを媒介変数として関数表現した主軸パスを求めるものであり、前記駆動軸パス算出手段は、前記sを媒介変数として関数表現した駆動軸パスを求めるものであり、前記第3制御手段は、細分化されたサブ手段として加減速補間制御手段とパルス補間手段とを有し、前記加減速補間制御手段は、前記工具送り速度指令と前記駆動軸加減速条件とに基づいて前記sの時間の関数としての媒介変数時間関数を決定、前記パルス補間手段は、決定した前記媒介変数時間関数に基づいて補間周期ごとの前記sの値を求め、該sの値に応じた駆動軸座標を求めて、前記補間周期ごとの各駆動軸の移動量を算出し前記モーターに出力するものであり、前記駆動軸構成管理手段は、前記主軸駆動軸変換関数に加えて、前記逆運動学関係式に基づいて前記各駆動軸座標を前記主軸位置の各成分で1次、2次、3次偏微分した値を求める駆動軸偏微分値取得関数を前記機械情報メモリー部に記憶し、さらに、各駆動軸ごとに、前記駆動軸パスの修正に許される位置誤差である駆動軸パス修正許容誤差を、前記準備情報メモリー部に記憶するものであり、前記加減速補間制御手段は、さらに細分化したサブ手段として、ブロック滑らか補間手段とコーナー滑らか補間手段と送り制御条件転換手段と媒介変数加減速決定手段とを有し、前記ブロック滑らか補間手段は、各指令ブロックごと、各駆動軸ごとに、始点、終点の少なくとも一方隣接するブロックと滑らかに接続すべき否かを判断した上で、始点において滑らかに接続すべきと判断した場合には、該ブロックの始点と該ブロックの直前のブロックの終点とにおける共通で適切な前記sによる一次微分値と二次微分値を求め、終点において滑らかに接続すべきと判断した場合には、該ブロックの終点と該ブロックの直後のブロックの始点とにおける共通で適切な前記sによる一次微分値と二次微分値を求め、前記始点及び終点の少なくとも一方で求めた一次微分値、二次微分値を持つ滑らかブロック曲線を求め、該ブロックを該滑らかブロック曲線に置き換える駆動軸パスの修正を実施するものであり、前記コーナー滑らか補間手段は、前記ブロック滑らか補間手段で求めた、連続動作させるべき一連の駆動軸パスにおいて、前記駆動軸パスの各指令ブロックの終点と、次の指令ブロックの始点とにおける前記sによる一次微分値と二次微分値のいずれかが一致しない場合には、各駆動軸パスの前記sによる一次微分値、二次微分値の不連続変化部分をなくすべく、該ブロックと該ブロックの次の指令ブロックに一次微分値と二次微分値を一致させ、元の駆動軸パスとの誤差が前記駆動軸パス修正許容誤差以下の一次微分、二次微分値が連続変化する滑らかコーナー曲線を求めて該両接点間の駆動軸パスを該滑らかコーナー曲線に置き換える駆動軸パスの修正を実施するものであり、前記送り制御条件転換手段は、前記主軸駆動軸変換関数と駆動軸偏微分値取得関数を使用して、前記駆動軸加減速条件を元に、駆動軸パスの各部分における前記sおよび前記sの速度、前記sの加速度、前記sのジャークの条件式である媒介変数加減速条件を導き、前記媒介変数加減速決定手段は、前記媒介変数加減速条件と前記sの送り速度指令の範囲内でかつ最高速とする条件のもとに前記sの時間の関数表現である媒介変数時間関数s(t)を求めるものであり、前記パルス補間手段は、前記媒介変数時間関数をもとに各補間周期毎の各駆動軸移動量を算出してモーターへ出力するものであることを特徴とする。
請求項4記載の発明は、請求項3に記載の数値制御装置において、前記滑らかブロック曲線は、前記ブロックの始点と終点のいずれにおいても一次微分値、二次微分値を規定する場合には、3つの前記sの三次多項式で表す曲線を一次微分値、二次微分値が連続変化するように連結したものであり、前記滑らかコーナー曲線は、3つの前記sの三次多項式で表す曲線を一次微分値、二次微分値が連続変化するように連結した構成であることを特徴とする。
請求項1記載の発明によれば、駆動軸の構成が影響する部分を、工具を装着する主軸の基準位置と駆動軸座標の相関関係式である逆運動学関係式のみとし、工具の形状と寸法や加工物の設置位置に関わる変換と完全に切り離した。その結果、主軸位置を求めるまでの工具径補正などの工具パスの修正、工具の形状や寸法に応じた座標変換、加工物の姿勢を含む設置位置に応じた座標変換などの工具パスに関わる機能の全てをあらゆる機械に対して共通にすることができる。一般的に工具長補正や、段取り誤差補正もあらゆる機械に共通な部分に含まれている。そして、使い方が共通なだけではなく、前記逆運動学関係式に関わる関数を駆動軸の構成ごとに作成しておくだけで、その他の全ての制御プロセスを全く同じソフトウェアであらゆる構造の機械に対応させることができる。すなわち、前記逆運動学関係式に関わる関数を除く全てを機械構造に関係なく一回だけ作成すればよく、従来のような、似て非なる物をその都度作成する必要も、無駄な労力を浪費することを防止できる。また、新たな構造の機械に対しても、逆運動学関係式を構築し、これに関わる関数を作るのみでよく、駆動軸数、可動域、相互干渉などの物理的条件に支障がない限りそのまま使用可能となる。
請求項2記載の発明によれば、例えば、平行な駆動軸を複数有するなどの冗長度を持つ駆動軸の構成を有する工作機械においても逆運動学関係式に条件を1つ補強するだけで、その他は全く共通で全機能をそのまま使用できる。さらに連続同時制御と工具径補正や円弧補間等の他機能との併用が自在な数値制御を提供できる。また、平行軸を付加して可動域を広げた加工においても、従来技術では駆動軸の切り替え時に問題となっていた加工段差を発生させることのない上質の加工が可能になる。
請求項3、4記載の発明によれば、連続駆動する区間に対して、一次、二次微分連続の駆動軸パスに修正することで加速度の連続変化を保証し、加速度、ジャークの限界も配慮して補間周期毎の移動量を求め、それをそのままモーターに出力する一発補間方式を可能にできる。かつ、さらなる加減速補間処理を必要とせず、余分な誤差を発生させないので、駆動軸の限界ぎりぎりでの加減速制御が可能となる。特に自動車金型や航空機部品加工によく使われている短い直線補間命令での曲面加工においても、スプライン補間命令やNURBS曲線命令での加工においても、機械に優しい滑らかな加減速制御が実現できる。しかも、あらゆる工作機械に対して共通なものとして1回作成するだけでよい。駆動軸の構成に依存する部分は、逆運動学関係式に基づく主軸駆動軸変換関数、駆動軸偏微分値取得関数だけであり、1回作成しておけば、記憶部から呼び出すだけで共通に使用できる。
図1は、本発明が適用される工作機械の一例としての5軸工作機械の全体を示す斜視図である。図1において、工作機械1は加工対象物としてのワークを保持する機械テーブル2を有する。機械テーブル2は、長手方向に前後に配設され、駆動軸Xの方向(水平な前後方向)に移動自在に構成されている。機械テーブル2の途中両側にはボールねじ部(図示せず)を有する一対の支柱3,3がそれぞれ立設されており、この支柱3,3の上端部に門型形状の梁部4が掛け渡されている。梁部4内には駆動源としてのモーターMO(図9参照)が配設されており、左右の支柱3,3のボールねじ部(図示せず)を傘歯車(図示せず)等を介して同期させて回転駆動させる構成となっている。支柱3,3のボールねじ部(図示せず)には、クロスレール5の両側部がそれぞれ螺合して掛け渡されており、支柱3,3のボールねじ部(図示せず)に沿って鉛直のW軸方向に移動自在に構成されている。ヘッド部材6は鉛直方向に長尺を有し、クロスレール5に支持され、左右方向であるY軸方向に沿って移動自在に構成されている。ヘッド部材6はZ軸方向(上下方向)に出退して移動自在に配設されている。ヘッド部材6の下部には、内部に主軸ヘッド9を備える側面加工用のアタッチメント部材8などが装着されている。主軸ヘッド9にはドリルなどの工具類が水平方向に装着可能な主軸91を有している。主軸91は、主軸ヘッド9に対して、少なくとも1軸の水平軸周りに回動可能にされている。ドリルなどの工具類は、ヘッド部材6からの回転駆動力が主軸91を介して伝達される構成となっている。機械テーブル2、クロスレール5及びヘッド部材6による4軸制御の駆動機構としては、例えばモーターMOおよびボールねじなどで構成することができる。制御ボックス10は、テーブル1、クロスレール5及びヘッド部材6の各軸を駆動するそれぞれのモーターMO(図9参照)を、オペレータによる入力プログラムに従って駆動制御するもので、機械テーブル2の近傍に配設されている。
図2は、本発明が適用可能な種々の機械構造の工作機械を概略図で例示したもので、(a)は工作機械1Aを、(b)は工作機械1Bを、(c)は工作機械1Cを示している。図6は工作機械1Dを示し、図7は工作機械1Eを示している。なお、図6に示す工作機械1Dは、図2(a)の工作機械1AにW軸を付加したものであり、図7に示す工作機械1Eは、図2(c)の工作機械1CにU軸を付加したものである。図8は、図7の工作機械1Eの一実施形態を示す構成図である。
図2に示すように、いずれの工作機械も、機械テーブル2、主軸ヘッド9、機械テーブル2と主軸ヘッド9との回転姿勢を含む相対位置関係を変化させる駆動軸A、及び駆動軸Aを動かすモーターMO等の駆動源を有している。なお、主軸ヘッド9には、図1と同様に、工具を装着する主軸91が固定設置されている。
工作機械1Aは、図2(a)に示すように、A、B、X、Y、Zの5つの駆動軸を持ち、各軸に対応して駆動源を有している。駆動軸X,Y、Zはそれぞれが互いに直交している。なお、工作機械1Aは、厳密に言えばA軸とB軸との親子関係によっては異なる構成として区分すべき場合があるが、ここでは、説明に支障がないので特に分けることはしていない。工作機械1Bは、図2(b)に示すようにA、C、X、Y、Zの5つの駆動軸を持ち、駆動軸Cは機械テーブル2を回転させる駆動軸である。駆動軸X,Y、Zはそれぞれが互いに直交している。工作機械1Cは、パラレルメカニズムを有するもので、図2(c)に示すように、X1、X2、X3、X4、X5、X6の6つの駆動軸を有する。また、工作機械1Dは、図6に示すように、A、B、X、Y、Z、Wの6つの駆動軸を持ち、このうち、駆動軸Z、Wは互いに平行である。工作機械1Eは、図7に示すように、X1、X2、X3、X4、X5、X6、Uの7つの駆動軸を有する。
各工作機械には、原点と回転方向の姿勢とを機械テーブル2上に固定する段取り基準座標系20が右手直交座標系として確立されている。この段取り基準座標系20は、構造的な基準からの位置、姿勢が規定できる位置に決められている。なお、段取り基準座標系20は、機械テーブル2上に一端確立された後は、原則的には変更されないものであって、例えば、次のように規定されている。工作機械1Aでは、駆動軸X、Y、Zにそれぞれ平行な座標軸を有する段取り基準座標系20が確立される。工作機械1Bでは、駆動軸Cの座標がゼロの時に駆動軸X、Y、Zにそれぞれ平行な座標軸を有し、駆動軸Cの回転中心線と機械テーブル2との交点を原点とする段取り基準座標系20が確立される。工作機械1Cでは、直交座標系を構成する駆動軸そのものがないので、機械テーブル2上の適所に段取り基準座標系20が確立される。図6,図7の工作機械1D,1Eも同様に機械テーブル2上の所定位置に段取り基準座標20が設定されている。詳細は後述する。
図3は、工具位置と主軸位置との関係を説明するための図で、(a)はエンドミルを例示した場合、(b)はアングル工具を例示した場合の概念図である。より詳細には、プログラム座標系上での工具の位置が決まったとき、工具を装着している前記主軸の段取り基準座標系20上の姿勢を含む位置である主軸位置の関係を示す図である。
工具11の位置は、機械テーブル2上の加工対象物W(図4、5参照)に対する工具11の姿勢を含む相対的な位置であって、加工対象物Wに固定された右手直交座標系であるプログラム座標系30上での工具11の基準点111の座標値(x,y,z)と工具11の姿勢を示すオイラー角(α,β,γ)とで表現される。α、βは工具11の傾きを示し、γは工具11の中心線周りの回転方向の角度を示す。なお、プログラム座標系30は、1つの加工対象物上に複数設けてもよいが、ここでは、加工対象物Wに対して1つのプログラム座標系を設けた場合について説明する。また、工具11の基準点111とは、一般的には、工具11の中心線上の工具先端である。なお、オイラー角γは、工作機械1A〜1Eにおいては、γ=0に固定して、制御対象外としている。以後、工具11の位置をp^と記す。
なお、以下において、明細書中で、上付添え字「^」が付された文字、及び図面中で太字で表記された文字はベクトルを表すものとする。
加工を開始する前に、加工対象物Wが機械テーブル2に固定設置され、その設置位置が段取り情報D^として取得されて記憶され、次いで、主軸91に工具11を装着して工具11に関わる情報が工具情報T^として記憶される。段取り情報D^は、段取り基準座標系20に対するプログラム座標系30の回転姿勢も含む位置情報として記憶されるものである。工具情報T^は、例えば、図3(a)(b)のようなエンドミル工具やアングル工具を示す工具の種類と各工具の形状を決定する寸法とを少なくとも含むデータで構成されている。
一方、主軸91の位置q^は、基準点911の段取り基準座標系20上の座標値(X,Y,Z)と、段取り基準座標系20上での軸91の姿勢を示すオイラー角(α’,β’,γ’)とで表される。
このようにすれば、図4に示すように、工具位置p^と主軸位置q^との相関関係は、段取り情報D^と工具情報T^とで決まり、機械の構造には影響されない。そこで、工具位置p^から主軸位置q^への変換関数を段取り工具変換f^として表し、次式で表現する。
Figure 0005009010
図4は、この段取り工具変換を説明するための図で、(a)は段取り工具変換の行程を示す図、(b)はそのイメージ図である。これによれば、段取り工具変換f^は、工作機械1A〜1Eの構造に依存せず、種々の工作機械において共通なものとすることができる。
逆に、図5に示すように、主軸位置q^と該主軸位置q^に対応する各駆動軸の位置を示す駆動軸座標r^との相関関係は、各工作機械の駆動軸の構成に応じた逆運動学関係式とその機構パラメータk^とで決まり、前記段取り情報D^、前記工具情報T^とは無関係である。図5は、逆運動学関係式を説明するための図で、(a)は逆運動学関係式を示す図、(b)はそのイメージ図である。そこで、主軸位置q^から駆動軸座標r^への変換関数である主軸駆動軸変換関数をg^で表し、逆運動学関係式を次の式(2)で表す。
Figure 0005009010
なお、工作機械1Dの場合には、図6に示すように、冗長度拘束条件追加手段312(図9参照)にて、式(2)に冗長度拘束条件として、例えば、駆動軸Zと駆動軸Wとを均等配分して動作させる条件を補強追加し、主軸位置q^に対する前記駆動軸座標r^が1つとなるようにした逆運動学関係式として式(2)をあらためて規定すればよい。
工作機械1Eについても、図7、図8に示すように、同様である。図7、図8に示すパラレルメカニズムを有する工作機械の構成について簡単に説明する。パラレルメカニズムを有する工作機械1Cは、駆動軸U方向に移動自在な図略の架台上に支持されたベース60上に6個のジョイント(結合部)1911〜1916を有している。そして、このジョイント1911〜1916にはそれぞれ1本ずつ、計6本のストラット(駆動軸)1921〜1926が接続されている。このストラット1921〜1926が数値制御装置の制御のもとに独立して伸縮することで、ジョイント1931〜1936を介してエンドエフェクタ194を間接的に動かし、機械テーブル2上の加工対象物Wに加工等の処理を行う構成となっている。つまり、エンドエフェクタ194は、ベース60上のジョイント1911〜1916と、複数のストラット1921〜1926と、エンドエフェクタ194のジョイント1931〜1936とで構成されるパラレルリンク機構を介してベース60に保持されている。エンドエフェクタ194の先端には、工具11が取り付けられている。そして、ストラット1921〜1926に対する伸縮量を制御することで工具11の位置、姿勢が適宜に設定されるようになっている。
本実施形態では、工作機械1A〜1Eの全てに対し駆動軸構成に関わる部分を式(2)に封じ込め、これに関わるソフトウェアとして、主軸位置q^を駆動軸座標r^に変換する主軸駆動軸変換関数g^と式(2)を主軸位置q^の各成分で一次、二次、三次偏微分した値を求める駆動軸偏微分値取得関数を各工作機械に応じた関数として工作機械ごとに作成し、記憶部に登録しておき、必要時に呼び出すことで、該関数を除くソフトウェアの全てを工作機械1A〜1Eに対して共通とする。以下、本実施形態での、数値制御装置の構成と数値制御プロセスについて説明する。
図9は、本発明に適用される数値制御装置の一実施形態を示すブロック図である。数値制御部300は、例えばマイクロコンピュータで構成され、準備部310と、第1制御部320と、第2制御部330と、第3制御部340とを備えると共に、機械情報メモリー部350と、準備情報メモリー部360と、パス演算メモリー部370と接続されている。準備部310は、駆動軸構成管理部311と、冗長度拘束条件追加部312と、送り速度制御条件管理部313と、NCプログラム管理部314と、段取り情報管理部315と、工具情報管理部316とを有する。第1制御部320は、NCプログラム読み取り部321と、工具パス媒介変数表現部322と、工具パス修正部323とを有する。第2制御部330は、主軸パス算出部331と、駆動軸パス算出部332とを有する。第3制御部340は、加減速補間制御部341と、パルス補間部346とを有する。加減速補間制御部341は、ブロック滑らか補間部342と、コーナー滑らか補間部343と、送り制御条件転換部344と、媒介変数加減速決定部345とを有する。
図10は、数値制御プロセスの流れの一実施形態を示すフローチャートである。以下、図10に沿って、本実施形態における数値制御プロセスの流れを説明する。なお、実際の数値制御プロセスにおいては、NCプログラムの量が多い時には、メモリー部の容量に応じて、途中まで読み取って図略のRAMに一時的に格納し、読み取った部分の前半を処理した上で残り部を順次読み取るという繰り返し処理を行うが、説明の簡略化のため繰り返し部分の説明は省略する。
ステップS100〜120において、準備部310が機能する。先ず、ステップS100にて、駆動軸構成管理部311が、逆運動学関係式に基づいて作成された主軸駆動軸変換関数g^と駆動軸偏微分値取得関数の入力を受け付けて機械情報メモリー部350へ登録し、該当する工作機械に対応する主軸駆動軸変換関数g^と駆動軸偏微分値取得関数との利用を有効にする。ステップS105にて、送り速度制御条件管理部313が、各駆動軸毎の最大許容速度、最大許容加速度、最大許容ジャークを含む駆動軸加減速条件を機械情報メモリー部350へ登録する。ステップS110にて、NCプログラム管理部314が、工具位置の軌跡とその送り速度指令からなる工具パスと、この工具パスを修正する命令である工具パス修正命令とからなるNCプログラムの入力を受け付け、このNCプログラムを準備情報メモリー部360へ登録する。ステップS115にて、工具情報管理部316が、主軸91に取り付けられた工具11の工具情報T^の入力を受け付け、準備情報メモリー部360へ登録する。ステップS120にて、段取り情報管理部315が、機械テーブル2に設置した加工対象物の段取り情報D^の入力を受け付け、準備情報メモリー部360に登録する。
次いで、ステップS125〜140において、第1制御部320が機能する。先ず、ステップS125にて、NCプログラム読み取り部321が、準備情報メモリー部360に登録されているNCプログラム361を読み取り、このNCプログラム361に記述されている工具パスと工具パス修正命令とを抽出してパス演算メモリー部370へ記憶させる。ステップS130にて、工具パス修正部323が、工具パス修正命令に従い工具パスを修正する。ステップS135にて、工具パス媒介変数表現部322が、工具パスp^を該工具パスp^の軌跡に沿った移動距離である工具パス積算長sを媒介変数とする関数表現に変換する。以降、前記関数表現に変換した工具パスをp^ (s)と表現する。図11に、その例を示す。例えば、工具パスが図11に示すように、始点(50,150)から(50,50)、(150,50)、(210.110)である場合に、p^ (s)は、
Figure 0005009010
となる。
また、ステップS140にて、工具パス媒介変数表現部322が、工具パスに含まれる送り速度指令を工具パス積算長sの送り速度指令に変換する。
なお、従来技術では、CAMでCLデータ(cutter location data)、すなわち工具パスデータを作成し、かつこのCLデータをCAMから受け取ってポストプロセッサで各工作機械に適合したNC(numerical control)プログラムに変換していたが、本実施形態によれば、CAMが出力するCLデータをNCプログラムとして受け付けるNCプログラム読み取り手段321を設けることで、従来のポストプロセッサを不要にできる。
次いで、ステップS145〜150において、第2制御部330が機能する。先ず、ステップS145にて、主軸パス算出部331が、段取り情報D^と工具情報T^に基づく段取り工具変換f^を使って、パス演算メモリー部370に登録されている工具パスp^ (s)を、主軸位置の軌跡の工具パス積算長sを媒介変数とする関数表現である主軸パスq^ (s)に変換する。なお、主軸パスq^ (s)の送り速度指令は、工具パス積算長sの送り速度指令がそのまま流用される。すなわち、式(1)を、次の式(3)で表現する。
Figure 0005009010
ステップS150にて、駆動軸パス算出部332が、主軸駆動軸変換関数g^を用いて、主軸パスq^ (s)から、駆動軸座標の軌跡である駆動軸パスr^ (s)を求める。なお、駆動軸パスr^ (s)の送り速度指令は、工具パス積算長sの送り速度指令がそのまま流用される。すなわち、式(2)を、次の式(4)で表現する。
Figure 0005009010
次いで、ステップS155〜175において、第3制御部340が機能する。先ず、ステップS155にて、ブロック滑らか補間部342は、各駆動軸ごとの駆動軸パスに対して予め設定された長さの各指令ブロック毎に、その始点、終点のいずれか一方または両方で工具パス積算長sによる一次微分と二次微分とを連続変化させるべく接続するようにすべきか否かを判断し、接続すべきと判断した場合には、隣接ブロックと連続変化とするための始点及び終点の少なくとも一方での工具パス積算長sによる一次微分、二次微分を先に決めた上で、該一次微分、二次微分に一致させる補間曲線に変更した滑らかブロック曲線に変更する駆動軸パスの修正を実施する。図12に、工作機械1A〜工作機械1Dでの駆動軸Yの修正後の駆動軸パスのイメージ図を示す。また、本実施形態では、図13に示すように、始点と終点のいずれにおいても隣接ブロックと工具パス積算長sによる一次微分、二次微分を連続変化させる滑らかブロック曲線として、各駆動軸ごとに、3つの工具パス積算長sの3次多項式曲線を、接続点にて工具パス積算長sによる一次微分と二次微分とが連続変化するように連結した曲線を使用する。
図12は、(a)は駆動軸xに対する駆動軸yの指令ブロックごとの指令値を示す図、(b)は駆動軸yにおける補間された滑らかブロック曲線を示す図、(c)は駆動軸yにおける補間された滑らかブロック曲線の工具パス積算長sによる一次微分を示す図である。図13は、始点と終点のいずれにおいても隣接ブロックと工具パス積算長sによる一次微分、二次微分を連続変化させる滑らかブロック曲線として、工具パス積算長sの3次多項式曲線を、接続点にて工具パス積算長sによる一次微分と二次微分とが連続変化するように連結した曲線を示す図である。図13において、曲線補間条件としては、各指令点を通ること、各指令点での前後の曲線が一次微分、二次微分で連続であることである。そして、例えば、指令値が、s0=s[3]、s3=s[4]、s1=(2・s0+s3)/3、s2=(s0+2・s3)/3であるとして、
(s[3],y(s[3]))と(s[4] ,y(s[4]))間の補間は、y(s0),y′(s0),y″(s0),y(s3),y′(s3),y″(s3)を拘束条件として、これを満たす(s0,y(s0))、(s3,y(s3))間の一次微分、二次微分連続の空間曲線を、3つの3次多項式曲線として生成する。すなわち、求める3次多項式曲線を、
Figure 0005009010
とし、拘束条件を当てはめることで、次の連立方程式を得る。
Figure 0005009010
3つの3次スプラインの係数各4つ合計12個を未知数としてこの連立方程式を解くことで、y=y1(s),y=y2(s),y=y3(s)を得ることができることが判る。
次に、ステップS160にて、コーナー滑らか補間部343は、駆動軸パスの各指令ブロックの終点において、ブロック滑らか補間部342による補間処理後においても工具パス積算長sによる一次微分もしくは二次微分のいずれかが後続する指令ブロックの始点における値と一致しないコーナー部近傍の駆動軸パスの有無を判断し、この場合に、各駆動軸ごとに、一次微分と二次微分とを該指令ブロックと同じにして該指令ブロックと接し、かつ一次微分と二次微分とを後続する指令ブロックと同じにして後続する指令ブロックと接し、該指令ブロックの終点との距離が駆動軸パス修正許容誤差以下の滑らかコーナー曲線に変更する駆動軸パスの修正を実施する。図14に、滑らかコーナー曲線のイメージ図を示す。また、本実施形態では、図15に示すように、滑らかコーナー曲線として、各駆動軸ごとに、3つの工具パス積算長sの3次多項式曲線を、接続点にて工具パス積算長sによる一次微分と二次微分とが連続変化するように連結した曲線を使用する。
図14は、滑らかコーナー曲線のイメージ図を示し、(a)は不連続点を破線で示すように滑らか補間した図、(b)は一次微分(破線)の図、(c)は二次微分(破線)の図、(d)は三次微分(破線)の図である。(a)に示すΔdはコーナー補間許容誤差で、滑らか補間曲線は、予め設定された範囲内となるように求められる。図15は、3つの工具パス積算長sの3次多項式曲線を、接続点にて工具パス積算長sによる一次微分と二次微分とが連続変化するように連結して得られる滑らかコーナー曲線を示す図である。図15において、不連続点(s[3],y(s[3]))に対して、
Figure 0005009010
ここで、s0,s1,s2,s3は、各接点におけるsの値で、y=y(s)のコーナー前後の形状と許容誤差εから決めれば良い。例えば、
Figure 0005009010
とすればよい。
次に、ステップS165にて、送り制御条件転換部344が、駆動軸パスr^(s)に基づいて各駆動軸を駆動する時に満たすべき工具パス積算長sの制御条件である工具パス積算長sの各値における工具パス積算長sの時刻による一次微分s’、二次微分s”、三次微分s”’が満たすべき条件である媒介変数加減速条件を、主軸パスq^(s)と機械情報メモリー部350に記憶されている駆動軸加減速条件354とから、次のようにして導き出す。説明のため、駆動軸座標r^(s)と主軸位置q^(s)と主軸駆動軸変換関数g^(q^(s),k^)とを次のように配列で表記する。
Figure 0005009010
ここで、nは駆動軸の数を示す。r[i]、g[i]、q[j]はそれぞれr^(s)、g^(q^,k^)、q^(s)の成分表示である。
これを用いることで、前述の式(4)は、次式で表せる。
Figure 0005009010
式(5)をもとに、r[i]の時間tによる一次、二次、三次微分、すなわち各駆動軸の速度、加速度、ジャークを式に展開する。表記を見やすくするため、略式記号を使う。
以下、
r’[i] は、dr[i]/ds を、
r”[i] は、d(dr[i]/ds)/dsを、
r”’[i] は、d(d(dr[i]/ds)/ds)/dsを、
q’[j] は、dq[j]/dsを、
q”[j] は、d(dq[j]/ds)/dsを、
q”’[j] は、d(d(dq[j]/ds)/ds)/dsを、
s’ は、ds/dtを、
s” は、d(ds/dt)/dtを、
s”’ は、d(d(ds/dt)/dt)/dtを、
δgij は、∂g[i]/∂q[j] を、
δgijk は、∂(∂g[i]/∂q[j])/∂q[k] を、
δgijkm は、∂(∂(∂g[i]/∂q[j])/∂q[k])/∂q[m] を、
f[j]に対し,Σjは、Σj(f[j])= Σ(f[j]) (j=0,1,2,3,4) = f[0] + f[1] + f[2] + f[3] + f[4] を
それぞれ示すものである。
Figure 0005009010
駆動軸加減速条件は、式(9)の速度と式(10)の加速度と式(11)のジャークそれぞれの最大許容値を規定している。工具パス積算長sの各値におけるq[j],q’[j],q”[j],q”’[j]は、主軸パスで決まる。また前述の関係式に含まれるδgij、δgijk、δgijkmは、駆動軸座標偏微分値取得関数を使って求めればよい。かくして、式(6)、式(7)、式(8)から、工具パス積算長sの各値におけるr’[i]、r”[i]、r”’[i]が求まり、駆動軸加減速条件が規定する、式(9)の速度と式(10)の加速度と式(11)のジャークとが、それぞれの最大許容値MAXv[i]、MAXa[i]、MAXj[i]を超えないという条件により、工具パス積算長sの各値における工具パス積算長sの時刻による一次微分s’、二次微分s”、三次微分s”’が満たすべき条件である媒介変数加減速条件として次の式(12)を得る。
Figure 0005009010
ステップS170にて、媒介変数加減速決定部345が、媒介変数加減速条件と工具パス積算長sの送り速度指令とに基づいて、工具パス積算長sの時間tの関数としての媒介変数時間関数s(t)を確定する。
ステップS175にて、パルス補間部346が、媒介変数時間関数s(t)に基づいて各補間周期時刻ごとの媒介変数時間関数s(t)の値、前記駆動軸座標r^(s)の値を求め、各補間周期の各駆動軸座標の移動量を求めて駆動源であるモーターMOへ出力する。
また、本発明は、以下の実施形態が採用可能である。
(1)前述の実施形態では、工具位置での工具の姿勢をオイラー角(α、β、0)で指令したが、これに代えて工具軸ベクトルで指令するものとしてもよい。あるいは、いずれかの工作機械の回転駆動軸の角度そのもので指令するものとしてもよい。
(2)前述の実施形態では、工具の軸心周りの回転駆動軸を対象外としたが、工具の軸心周りの駆動軸も制御対象とすることもできる。その場合には、工具の軸心周りの駆動軸Eを追加する。前記工具位置pの姿勢は、(α、β、γ)で指令し、また前記主軸位置の姿勢も(α’、β’、γ’)で管理する。なお、γは必ずしも明示的に指令するとは限らない。例えば、工具パスの進行方向に垂直になるように工具パスの修正を自動実施する機能を組み込んでもよい。この機能は、前記工作機械1A〜1Eに対しても工具の軸心周りの駆動軸を追加さえすれば共通に利用出来る。
(3)前記工作機械1Dにおける駆動軸Wは、重量が大きなクロスレール5を上下させるため、その消費エネルギーは大きい。一方、主軸ヘッド9を載せているラム(ヘッド部材6)を上下させる駆動軸Zは、エネルギー消費は少ない。ただ、駆動軸Zは、あまり下げすぎるとラムの保持部から、主軸ヘッド9までの距離が長くなり、剛性が弱くなり、重切削時に振動するなどの虞があるため、重切削への適用が困難であるという欠点もある。つまり重切削時には、出来るだけ駆動軸Z軸を引っ込めてラムの保持部から主軸ヘッド9までの距離を短くして加工を行い、軽切削の場合には、消費エネルギーの少ないZ軸を使う。この目的のため、前記冗長度拘束条件追加部312として、NCプログラムの冗長度拘束条件切り替え命令として、高剛性加工/エコ(軽)加工を選択可能とする命令を準備し、NCプログラム読み取り部321にて、前記冗長度拘束条件切り替え命令を読み取り、「高剛性加工」が指令されている場合には、前記冗長度拘束条件として、「可能な限りZ軸を引っ込める」という条件を採用し、「エコ加工」が指令された場合には、前記冗長度拘束条件として、「可能な限りW軸を使わず駆動軸Zを使用する」という条件を採用することで、高剛性加工や、エコ加工を自在に実現する。
(4)NCプログラムに指令する工具位置は、工具11の先端111の座標値(x,y,z)と工具11の姿勢を表す(α,β,γ)としたが、このうち、(α,β)については、工具軸ベクトルでもよい。これと同様に既に使用している工作機械用のNCプログラムをそのまま使いたいというユーザーに対応する為に、NCプログラム読み取り部321にて、特定の形式のNCプログラムを読み取って前記工具パスに変換しパス演算メモリー部370に登録することで、既設の従来型工作機械用のNCプログラムを、そのまま利用し得る実施形態を構築できる。
(5)前述の実施形態においては、送り速度制御の各駆動軸の条件を、最大許容速度、最大許容加速度、最大許容ジャークに限定し、送り速度の決定に於いて、前記sの時間による一次、二次、三次微分に言及し、一次、二次微分の連続変化を保証する送り速度加減速部を説明した。本発明は、さらに高次の制御を否定するものではなく、例えば、n次微分までをターゲットにし、駆動軸全ての位置を時刻で微分する速度、加速度、ジャーク、ジャーク変化率….のn-1次微分までの連続変化を保証することで、さらなる高次元での送り速度制御の実現の道を開くものである。また、慣性をきわめて短時間に吸収する加減速制御の実現を可能にする。
本発明が適用される工作機械の一例としての5軸工作機械の全体を示す斜視図である。 本発明が適用可能な種々の機械構造の工作機械を概略図で例示したもので、(a)は工作機械1Aを、(b)は工作機械1Bを、(c)は工作機械1Cを示す図である。 工具位置と主軸位置との関係を説明するための図で、(a)はエンドミルを例示した場合、(b)はアングル工具を例示した場合の概念図である。 段取り工具変換を説明するための図で、(a)は段取り工具変換の行程を示す図、(b)はそのイメージ図である。 逆運動学関係式を説明するための図で、(a)は逆運動学関係式を示す図、(b)はそのイメージ図である。 工作機械1Dを示す図である。 工作機械1Eを示す図である。 図7の工作機械1Eの一実施形態を示す構成図である。 本発明に適用される数値制御装置の一実施形態を示すブロック図である。 数値制御プロセスの流れの一実施形態を示すフローチャートである。 工具パスp^(s)の一例を示す図である。 (a)は駆動軸xに対する駆動軸yの指令ブロックごとの指令値を示す図、(b)は駆動軸yにおける補間された滑らかブロック曲線を示す図、(c)は駆動軸yにおける補間された滑らかブロック曲線の工具パス積算長sによる一次微分を示す図である。 始点と終点のいずれにおいても隣接ブロックと工具パス積算長sによる一次微分、二次微分を連続変化させる滑らかブロック曲線として、工具パス積算長sの3次多項式曲線を、接続点にて工具パス積算長sによる一次微分と二次微分とが連続変化するように連結した曲線を示す図である。 滑らかコーナー曲線のイメージ図を示し、(a)は不連続点を破線で示すように滑らか補間した図、(b)は一次微分(破線)の図、(c)は二次微分(破線)の図、(d)は三次微分(破線)の図である。 3つの工具パス積算長sの3次多項式曲線を、接続点にて工具パス積算長sによる一次微分と二次微分とが連続変化するように連結して得られる曲線を示す図である。
符号の説明
1,1A〜1E 工作機械
2 機械テーブル
9 主軸ヘッド
91 主軸
11 工具
MO モーター
W 加工対象物
20 段取り基準座標系
30 プログラム座標系
310 準備部(準備手段)
311 駆動軸構成管理部(駆動軸構成管理手段)
312 冗長度拘束条件追加部(冗長度拘束条件追加手段)
313 送り制御条件管理部(送り制御条件管理手段)
314 NCプログラム管理部(NCプログラム管理手段)
315 段取り情報管理部(段取り情報管理手段)
316 工具情報管理部(工具情報管理手段)
320 第1制御部(第1制御手段)
321 NCプログラム読み取り部(NCプログラム読み取り手段)
322 工具パス媒介変数表現部(工具パス媒介変数表現手段)
323 工具パス修正部(工具パス修正手段)
330 第2制御部(第2制御手段)
331 主軸パス算出部(主軸パス算出手段)
332 駆動軸パス算出部(駆動軸パス算出手段)
340 第3制御部(第3制御手段)
341 加減速補間制御部(加減速補間制御手段)
342 ブロック滑らか補間部(ブロック滑らか補間手段)
343 コーナー滑らか補間部(コーナー滑らか補間手段)
344 送り制御条件転換部(送り制御条件転換手段)
345 媒介変数加減速決定部(媒介変数加減速決定手段)
346 パルス補間部(パルス補間手段)
350 機械情報メモリー部
360 準備情報メモリー部
370 パス演算メモリー部

Claims (4)

  1. 工具を装着する主軸と、前記主軸を固定して保持する主軸ヘッドと、加工対象物を固定設置する機械テーブルと、前記主軸ヘッドと前記機械テーブルの回転姿勢を含む相対位置関係を制御する複数の駆動軸と、該駆動軸を駆動するモーターとを少なくとも有し、前記機械テーブル上に座標軸の向きと原点の位置とが固定された段取り基準座標系が設定された工作機械を制御する数値制御装置であって、
    準備手段と第1制御手段と第2制御手段と第3制御手段とを有し、
    前記準備手段は、細分化されたサブ手段として少なくともNCプログラム管理手段と段取り情報管理手段と工具情報管理手段とを有し、
    前記NCプログラム管理手段は、前記加工対象物に固定されたプログラム座標系上の工具の姿勢を含む位置である工具位置の軌跡とその送り速度を指令する工具送り速度指令からなる工具パスと必要に応じての工具パス修正命令とが記述されたNCプログラムを準備情報メモリー部に記憶するものであり、
    前記段取り情報管理手段は、前記機械テーブルへの前記加工対象物の姿勢を含む設置位置を前記プログラム座標系の原点座標と前記段取り基準座標系に対する前記プログラム座標系の回転姿勢とを示す前記段取り基準座標系上の位置情報である段取り情報として前記準備情報メモリー部へ記憶するものであり、
    前記工具情報管理手段は、使用する工具の形状や該工具の長さや工具半径の補正量の寸法情報を含む工具情報を前記準備情報メモリー部へ記憶するものであり、
    前記第1制御手段は、細分化されたサブ手段としてNCプログラム読み取り手段と工具パス修正手段とを有し、
    前記NCプログラム読み取り手段は、前記NCプログラムに記述された前記工具パスと前記工具パス修正命令とを読み取ってパス演算メモリー部に記憶するものであり、
    前記工具パス修正手段は、前記工具パス修正命令に従って前記工具パスを修正するものであり、
    前記第2制御手段は、前記段取り情報と前記工具情報とに基づいて前記駆動軸の構成の特徴を配慮して前記工具パスから全駆動軸の位置座標である駆動軸座標の軌跡である駆動軸パスを求めて前記パス演算メモリー部に記憶するものであり、
    前記第3制御手段は、前記駆動軸パスから各補間周期ごとの各駆動軸の移動量を求めて前記モーターに出力するものであり、
    さらに、前記準備手段は、細分化されたサブ手段として駆動軸構成管理手段を有し、
    前記駆動軸構成管理手段は、前記主軸の回転姿勢を含む位置を前記段取り基準座標系上で表す位置情報である主軸位置と前記駆動軸座標との相関関係を示す関係式であって前記駆動軸の構成によって決まる逆運動学関係式に基づく前記主軸位置を前記駆動軸座標に変換する主軸駆動軸変換関数を機械情報メモリー部に記憶するものであり、
    前記第2制御手段は、細分化されたサブ手段として主軸パス算出手段と駆動軸パス算出手段とを有し、
    前記主軸パス算出手段は、前記駆動軸の構成とは無関係に、前記段取り情報と前記工具情報とに基づいて、前記工具パスを前記主軸位置の軌跡である主軸パスに変換して前記パス演算メモリー部に記憶するものであり、
    前記駆動軸パス算出手段は、前記主軸駆動軸変換関数を使用して前記主軸パスを前記駆動軸パスに変換して前記パス演算メモリー部に記憶するものであることを特徴とする数値制御装置。
  2. 前記準備手段は、細分化したサブ手段として、さらに、前記工作機械が互いに平行な複数の駆動軸を有する駆動軸構成を持つ場合において、前記逆運動学関係式に加えることで前記主軸位置に対応する前記駆動軸座標を1つに規定する追加条件である冗長度拘束条件を前記機械情報メモリー部に記憶する冗長度拘束条件追加手段を有し、
    前記主軸駆動軸変換関数は、前記機械情報メモリー部に記憶された前記冗長度拘束条件と前記逆運動学関係式とを併せて使用することで前記主軸位置に対応する1つの前記駆動軸座標を算出する関数であることを特徴とする請求項1に記載の数値制御装置。
  3. 前記準備手段は、さらに、細分化した制御手段として、送り制御条件管理手段を含んで構成され、
    前記送り制御条件管理手段は、各駆動軸座標を時間でそれぞれ一次、二次、三次微分した各駆動軸の速度、加速度、ジャークそれぞれの許容最大値を含む駆動軸加減速条件を記憶するものであり、
    前記第1制御手段は、さらに、細分化されたサブ手段として工具パス媒介変数表現手段を有し、
    前記工具パス媒介変数表現手段は、前記工具パスを、該工具パスに含まれる前記工具軌跡を該工具軌跡の姿勢変化を含む移動距離の積算長であるsを媒介変数とする関数で表現し、前記工具送り速度指令を前記sの速度に変換して、前記sを媒介変数とする関数として表現した工具パスに変更するものであり、
    前記主軸パス算出手段は、前記sを媒介変数として関数表現した主軸パスを求めるものであり、
    前記駆動軸パス算出手段は、前記sを媒介変数として関数表現した駆動軸パスを求めるものであり、
    前記第3制御手段は、細分化されたサブ手段として加減速補間制御手段とパルス補間手段とを有し、
    前記加減速補間制御手段は、前記工具送り速度指令と前記駆動軸加減速条件とに基づいて前記sの時間の関数としての媒介変数時間関数を決定
    前記パルス補間手段は、決定した前記媒介変数時間関数に基づいて補間周期ごとの前記sの値を求め、該sの値に応じた駆動軸座標を求めて、前記補間周期ごとの各駆動軸の移動量を算出し前記モーターに出力するものであり、
    前記駆動軸構成管理手段は、前記主軸駆動軸変換関数に加えて、前記逆運動学関係式に基づいて前記各駆動軸座標を前記主軸位置の各成分で1次、2次、3次偏微分した値を求める駆動軸偏微分値取得関数を前記機械情報メモリー部に記憶し、さらに、各駆動軸ごとに、前記駆動軸パスの修正に許される位置誤差である駆動軸パス修正許容誤差を、前記準備情報メモリー部に記憶するものであり、
    前記加減速補間制御手段は、さらに細分化したサブ手段として、ブロック滑らか補間手段とコーナー滑らか補間手段と送り制御条件転換手段と媒介変数加減速決定手段とを有し、
    前記ブロック滑らか補間手段は、各指令ブロックごと、各駆動軸ごとに、始点、終点の少なくとも一方隣接するブロックと滑らかに接続すべき否かを判断した上で、始点において滑らかに接続すべきと判断した場合には、該ブロックの始点と該ブロックの直前のブロックの終点とにおける共通で適切な前記sによる一次微分値と二次微分値を求め、終点において滑らかに接続すべきと判断した場合には、該ブロックの終点と該ブロックの直後のブロックの始点とにおける共通で適切な前記sによる一次微分値と二次微分値を求め、前記始点及び終点の少なくとも一方で求めた一次微分値、二次微分値を持つ滑らかブロック曲線を求め、該ブロックを該滑らかブロック曲線に置き換える駆動軸パスの修正を実施するものであり、
    前記コーナー滑らか補間手段は、前記ブロック滑らか補間手段で求めた、連続動作させるべき一連の駆動軸パスにおいて、前記駆動軸パスの各指令ブロックの終点と、次の指令ブロックの始点とにおける前記sによる一次微分値と二次微分値のいずれかが一致しない場合には、各駆動軸パスの前記sによる一次微分値、二次微分値の不連続変化部分をなくすべく、該ブロックと該ブロックの次の指令ブロックに一次微分値と二次微分値を一致させ、元の駆動軸パスとの誤差が前記駆動軸パス修正許容誤差以下の一次微分、二次微分値が連続変化する滑らかコーナー曲線を求めて該両接点間の駆動軸パスを該滑らかコーナー曲線に置き換える駆動軸パスの修正を実施するものであり、
    前記送り制御条件転換手段は、前記主軸駆動軸変換関数と駆動軸偏微分値取得関数を使用して、前記駆動軸加減速条件を元に、駆動軸パスの各部分における前記sおよび前記sの速度、前記sの加速度、前記sのジャークの条件式である媒介変数加減速条件を導き、
    前記媒介変数加減速決定手段は、前記媒介変数加減速条件と前記sの送り速度指令の範囲内でかつ最高速とする条件のもとに前記sの時間の関数表現である媒介変数時間関数s(t)を求めるものであり、
    前記パルス補間手段は、前記媒介変数時間関数をもとに各補間周期毎の各駆動軸移動量を算出してモーターへ出力するものであることを特徴とする請求項1又は2に記載の数値制御装置。
  4. 前記滑らかブロック曲線は、前記ブロックの始点と終点のいずれにおいても一次微分値、二次微分値を規定する場合には、3つの前記sの三次多項式で表す曲線を一次微分値、二次微分値が連続変化するように連結したものであり、
    前記滑らかコーナー曲線は、3つの前記sの三次多項式で表す曲線を一次微分値、二次微分値が連続変化するように連結した構成であることを特徴とする請求項3に記載の数値制御装置。
JP2007063004A 2007-03-13 2007-03-13 数値制御装置 Expired - Fee Related JP5009010B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007063004A JP5009010B2 (ja) 2007-03-13 2007-03-13 数値制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007063004A JP5009010B2 (ja) 2007-03-13 2007-03-13 数値制御装置

Publications (2)

Publication Number Publication Date
JP2008225825A JP2008225825A (ja) 2008-09-25
JP5009010B2 true JP5009010B2 (ja) 2012-08-22

Family

ID=39844376

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007063004A Expired - Fee Related JP5009010B2 (ja) 2007-03-13 2007-03-13 数値制御装置

Country Status (1)

Country Link
JP (1) JP5009010B2 (ja)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5632181B2 (ja) * 2010-03-31 2014-11-26 新日本工機株式会社 数値制御装置及び工作機械
JP5331068B2 (ja) 2010-07-29 2013-10-30 新日本工機株式会社 数値制御装置
CN102402197B (zh) * 2011-07-22 2013-06-12 江俊逢 一种可重构数控***、重构方法
JP5417392B2 (ja) * 2011-07-29 2014-02-12 新日本工機株式会社 数値制御装置
JP5417391B2 (ja) * 2011-07-29 2014-02-12 新日本工機株式会社 数値制御装置
JP5417390B2 (ja) * 2011-07-29 2014-02-12 新日本工機株式会社 数値制御装置
JP5255108B2 (ja) 2011-11-04 2013-08-07 ファナック株式会社 指令経路速度条件による速度制御を行う数値制御装置
JP5653972B2 (ja) 2012-07-19 2015-01-14 ファナック株式会社 コーナ複数曲線挿入部を有する数値制御装置
CN103135498B (zh) * 2013-01-25 2015-07-29 南京工程学院 一种数控机床轮廓加工半径误差补偿控制方法及装置
JP5850996B1 (ja) 2014-08-05 2016-02-03 ファナック株式会社 補間後加減速を考慮したコーナ経路生成機能を有する数値制御装置
JP6666234B2 (ja) 2016-11-29 2020-03-13 ファナック株式会社 数値制御装置
JP6816704B2 (ja) 2017-11-09 2021-01-20 オムロン株式会社 指令値補間装置及びサーボドライバ
DE112017008204T5 (de) * 2017-12-18 2020-08-06 Mitsubishi Electric Corporation Numerisches Steuergerät
CN117255976A (zh) * 2021-06-10 2023-12-19 发那科株式会社 数值控制装置
CN115097785B (zh) * 2022-06-29 2023-05-09 西安电子科技大学 一种五轴联动曲面喷墨打印按位置采样触发方法
CN115431265B (zh) * 2022-08-19 2024-06-18 昆明理工大学 一种基于优化算法的并联机器人误差补偿方法、***
CN117148783B (zh) * 2023-10-30 2023-12-26 南通百盛精密机械有限责任公司 数控机床的刀具参数自动化校正方法
CN117207367B (zh) * 2023-11-09 2024-04-12 泉州华中科技大学智能制造研究院 一种基于双通道八轴机的圆弧板石材拉槽加工方法及装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11149306A (ja) * 1997-11-14 1999-06-02 Fanuc Ltd 加工機の制御装置
JP2001092508A (ja) * 1999-07-16 2001-04-06 Okuma Corp パラレルメカニズム工作機械の数値制御装置
JP3643098B2 (ja) * 2001-10-16 2005-04-27 ファナック株式会社 数値制御装置
JP3830475B2 (ja) * 2003-08-05 2006-10-04 ファナック株式会社 制御装置
JP4275632B2 (ja) * 2005-03-01 2009-06-10 新日本工機株式会社 パラレルメカニズム機構のキャリブレーション方法、キャリブレーションの検証方法、キャリブレーションの検証プログラム、データ採取方法及び空間位置補正における補正データ採取方法

Also Published As

Publication number Publication date
JP2008225825A (ja) 2008-09-25

Similar Documents

Publication Publication Date Title
JP5009010B2 (ja) 数値制御装置
WO2010032284A1 (ja) 数値制御装置
JP4938119B2 (ja) 工具先端点位置を制御する多軸加工機用数値制御装置
JP5221724B2 (ja) ワーク設置誤差補正部を有する多軸工作機械用数値制御装置
EP1213634B1 (en) Numerically controlled method
JP5872869B2 (ja) 工具背面での切削点指令により加工を行う数値制御装置
JP5417390B2 (ja) 数値制御装置
JP6450732B2 (ja) 数値制御装置
JP2007108916A (ja) ロボットのオフライン教示装置
EP3045988B1 (en) Methods and apparatuses for toolpath evaluation
JP5452788B1 (ja) 数値制御装置
JP5785224B2 (ja) 5軸加工機を制御する数値制御装置
WO2012101789A1 (ja) 数値制御装置
JP2012248098A (ja) 機械の誤差補償値計算方法
JP4637197B2 (ja) 数値制御装置
WO2015098085A1 (ja) 動作プログラム作成方法およびロボットの制御方法
JP5905521B2 (ja) 工具先端点制御中に生じるバックラッシを抑制することを特徴とする数値制御装置
KR20160019936A (ko) 공구경로 생성방법 및 공구경로 생성장치
JP2005352876A (ja) Ncデータ作成装置、5軸nc工作機械の制御装置及びclデータ作成装置
JP6057284B2 (ja) 多関節ロボット及び半導体ウェハ搬送装置
JP2003005811A (ja) 6軸制御ncプログラム生成方法及び生成装置、並びに6軸制御ncプログラム生成プログラム及びこのプログラムを記憶したコンピュータ読み取り可能な記録媒体
JP4734440B2 (ja) 4軸加工機用数値制御装置
CN116635800A (zh) 数值控制装置
JP5873070B2 (ja) ワークに対する相対的工具方向の入力が可能な数値制御装置
JP4734439B2 (ja) 4軸加工機用数値制御装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100122

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101202

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111129

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120124

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120530

R150 Certificate of patent or registration of utility model

Ref document number: 5009010

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150608

Year of fee payment: 3

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

LAPS Cancellation because of no payment of annual fees