JPH06332524A - 数値制御装置における速度制御方法 - Google Patents

数値制御装置における速度制御方法

Info

Publication number
JPH06332524A
JPH06332524A JP5139824A JP13982493A JPH06332524A JP H06332524 A JPH06332524 A JP H06332524A JP 5139824 A JP5139824 A JP 5139824A JP 13982493 A JP13982493 A JP 13982493A JP H06332524 A JPH06332524 A JP H06332524A
Authority
JP
Japan
Prior art keywords
axis
movement
distribution
tool
rotation
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.)
Pending
Application number
JP5139824A
Other languages
English (en)
Inventor
Toshiaki Otsuki
俊明 大槻
Haruhiko Kozai
治彦 香西
Seiji Ishii
清次 石井
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.)
Fanuc Corp
Original Assignee
Fanuc 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 Fanuc Corp filed Critical Fanuc Corp
Priority to JP5139824A priority Critical patent/JPH06332524A/ja
Priority to US08/373,208 priority patent/US5545959A/en
Priority to PCT/JP1994/000789 priority patent/WO1994028472A1/ja
Publication of JPH06332524A publication Critical patent/JPH06332524A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/41Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by interpolation, e.g. the computation of intermediate points between programmed end points to define the path to be followed and the rate of travel along that path
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39177Compensation position working point as function of inclination tool, hand
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/50Machine tool, machine tool null till machine tool work handling
    • G05B2219/50297Compensation of positioning error due to a-axis, b-axis tool rotation
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/50Machine tool, machine tool null till machine tool work handling
    • G05B2219/50353Tool, probe inclination, orientation to surface, posture, attitude

Landscapes

  • Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Numerical Control (AREA)
  • Automatic Control Of Machine Tools (AREA)

Abstract

(57)【要約】 【目的】 工具の角度を変化させながら加工を行う際
に、与えられた指令移動速度で工具の先端を移動させる
こと。 【構成】 工具の角度変化を無視し、直線移動軸のみで
直線補間を行った場合の所定周期毎の分配移動量ΔUを
求める。その補間回数に応じて回転軸各軸の所定周期毎
の分配移動量を求める。所定周期毎に回転軸各軸の現在
回転位置を読み、該現在回転位置と回転軸各軸の分配移
動量、および、工具を慣性系として直線移動軸方向の工
具先端位置を回転軸の回転位置で示す関数により、次の
所定周期までの間に工具先端に生じる直線移動軸各軸方
向の位置偏差ΔAを求める。この位置偏差ΔAを解消す
るための直線移動軸各軸方向の移動量ΔVを直線移動軸
各軸の分配移動量ΔUに加算して補正分配移動量ΔPを
求める。補正分配移動量ΔPにより直線移動軸各軸を補
間することにより位置偏差ΔAを補正して工具先端の移
動速度を指令移動速度に合致させる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、数値制御装置における
速度制御方法の改良に関する。
【0002】
【従来の技術】工具の相対角度を変化させる回転軸を備
えた工作機械の速度制御方法として、回転軸の移動量を
直線移動軸の移動量と同じ次元で取り扱って各軸当りの
分配移動量を算出し、この分配移動量で各軸を駆動制御
するようにしたものが公知である。
【0003】これは、例えば、工具の基部を通る水平軸
を中心に工具を回転させる第1の回転軸と工具の基部を
通る垂直軸を中心に工具を回転させる第2の回転軸、お
よび、相互に直交する方向に工具を移動させる直線移動
軸X,Y,Zを備えた工作機械において、工具先端に対
する移動指令の始点および終点を夫々(Sx,Sy,S
z,),(Ex,Ey,Ez)、指令移動速度をF、移
動指令の始点および終点における第1の回転軸の回転角
度を夫々Sb,Eb、移動指令の始点および終点におけ
る第2の回転軸の回転角度を夫々Sc,Ec、各軸の分
配周期をΔTとしたとき、各軸に対する分配回数が等し
く、かつ、分配周期当りの総移動量が各軸の分配移動量
の2乗の和の平方根によって示されるということを前提
として、第1の回転軸の分配移動量ΔB、第2の回転軸
の分配移動量ΔC、直線移動軸Xの分配移動量ΔUx、
直線移動軸Yの分配移動量ΔUy、直線移動軸Zの分配
移動量ΔUzの各々を、数13の式および数14の式を
連立して解くことによって求めるものである。
【0004】
【数13】
【0005】
【数14】 しかし、数13の式および数14の式におけるΔB,Δ
Cは角度のディメンションを有する項であり、また、工
具長に関しても何ら考慮されていないので、これらの項
を直線移動軸の移動量と同じ次元で取り扱ってパルス分
配を行っても工具先端の移動速度を指令移動速度に制御
することはできない。
【0006】言い換えれば、これは単に、移動指令の始
点および終点と該始点および終点における各軸の回転角
度、ならびに、分配周期と1制御データとしての指令移
動速度とに基いて直線移動軸のみによる直線補間処理を
模して各軸を駆動制御するための手段に過ぎず、指令移
動速度自体によって実質的な工具の移動速度が制御され
るというものではない。また、どうしても工具先端を所
望の速度で移動させようとするのであれば、回転軸の分
配移動量ΔB,ΔC等の変数が実際の工具先端移動速度
に与える影響を考慮して所望移動速度を実現するための
指令移動速度を決めなければならないが、そのような指
令移動速度を求めることは非常に困難である。
【0007】
【発明が解決しようとする課題】本発明の目的は、ワー
クに対する工具の角度を相対的に変化させながら加工を
行う場合であっても、与えられた指令移動速度で工具を
適確に移動させることのできる数値制御装置における速
度制御方法を提供することにある。
【0008】
【課題を解決するための手段】本発明の速度制御方法
は、移動指令の始点および終点の各軸位置データおよび
指令移動速度により各軸に関する所定周期毎の分配移動
量を求め、前記所定周期毎に、次周期の回転軸の回転位
置と当該周期の回転軸の回転位置との相違により前記回
転軸を基準として工具先端に生じる各直線移動軸方向毎
の位置偏差を求め、各直線移動軸毎、前記分配移動量に
対応する位置偏差を夫々加算して各直線移動軸の補正分
配移動量として出力すると共に、各回転軸には前記求め
られた分配移動量を出力することにより前記目的を達成
した。
【0009】一実施態様としての速度制御方法では、移
動指令の始点および終点の位置データと工具の指令移動
速度とにより各直線移動軸の所定周期毎の分配移動量を
求めた後、前記移動指令における1直線移動軸方向の移
動距離と該直線移動軸の所定周期毎の分配移動量との関
係、即ち、パルス分配の実行回数と、前記移動指令の始
点から終点に至る間の回転軸の回転移動量とに基いて前
記各回転軸の所定周期毎の分配移動量を求める。
【0010】また、工具の基部を通る水平軸を中心に工
具を回転させる第1の回転軸と、工具の基部を通る垂直
軸を中心に工具を回転させる第2の回転軸とを備えるロ
ータリーヘッドを取付けた工作機械を制御する数値制御
装置に対しては、ロータリーヘッドの回転中心から工具
先端までの距離をH、当該所定周期における第1の回転
軸の回転位置をB、当該所定周期における第2の回転軸
の回転位置をC、並びに、第1の回転軸における所定周
期毎の分配移動量をΔB、第2の回転軸における所定周
期毎の分配移動量をΔCとしたとき、 ΔVx=H×〔sin (B+ΔB)×cos (C+ΔC)−
sin B×cos C〕 ΔVy=−H×〔sin (B+ΔB)×sin (C+ΔC)
−sin B×sin C〕 ΔVz=H×〔cos (B+ΔB)−cos B〕 の演算式により、水平直線移動軸Xの方向に対応する位
置偏差ΔVx、直線移動軸Xと直交する水平直線移動軸
Yの方向に対応する位置偏差ΔVy、垂直直線移動軸Z
の方向に対応する位置偏差ΔVzを求めるようにする。
【0011】
【作用】移動指令の始点および終点の各軸位置データお
よび指令移動速度により各軸に関する所定周期毎の分配
移動量、即ち、各直線移動軸毎の分配移動量と各回転軸
毎の分配移動量とを求める。移動指令の実行時には、前
記所定周期毎、次周期の回転軸の回転位置と当該周期の
回転軸の回転位置との相違により工具先端に生じる各直
線移動軸方向毎の位置偏差を求め、各直線移動軸毎に前
記分配移動量に対応する位置偏差を夫々加算して各直線
移動軸の補正分配移動量として出力すると共に、各回転
軸には前記求められた分配移動量を出力して各回転軸を
等速で回転することにより、指令された指令移動速度で
工具先端を移動させる。回転軸の回転によって生じる工
具先端の位置偏差に応じて所定周期毎に各直線移動軸の
分配移動量を補正するようにしたので、回転軸の回転を
含まない直線補間の場合と同様、与えられた指令移動速
度で工具の先端を移動させることができる。
【0012】
【実施例】以下、図面を参照して本発明の実施例を説明
する。図1は本発明の方法を実施する一実施例の数値制
御装置10のハードウェアを示すブロック図である。プ
ロセッサ11は制御装置10を全体的に制御するプロセ
ッサであり、バス21を介して、ROM12に格納され
たシステムプログラムを読み出し、このシステムプログ
ラムに従って、制御装置10を全体的に制御する。RA
M13には一時的な計算データや表示データおよびCR
T/MDIユニット70を介してオペレータが入力した
各種データ等が格納される。CMOSメモリ14は図示
しないバッテリでバックアップされ、制御装置10の電
源がオフにされても記憶状態が保持される不揮発性メモ
リとして構成され、インターフェイス15を介して読込
まれた加工プログラムやCRT/MDIユニット70を
介して入力された加工プログラム等が記憶されるように
なっている。また、ROM12には、加工プログラムの
作成および編集のために必要とされる編集モードの処理
や自動運転のための再生モードの処理を実施するための
各種のシステムプログラムが予め書き込まれている。
【0013】インターフェイス15は制御装置10に接
続可能な外部機器のためのインターフェイスであり、紙
テープリーダや紙テープパンチャーおよび外部記憶装置
等の外部機器72が接続される。紙テープリーダや外部
記憶装置からは加工プログラム等が読み込まれ、また、
制御装置10内で編集された加工プログラムを紙テープ
パンチャーや外部記憶装置に出力することができる。
【0014】PMC(プログラマブル・マシン・コント
ローラ)16は、制御装置10に内臓されたシーケンス
プログラムで工作機械側の補助装置、例えば、工具交換
用のロボットハンド等といったアクチュエータを制御す
る。即ち、加工プログラムで指令されたM機能,S機能
およびT機能に従って、これらシーケンスプログラムで
補助装置側で必要な信号に変換し、I/Oユニット17
から補助装置側に出力する。この出力信号により各種ア
クチュエータ等の補助装置が作動する。また、工作機械
機本体や補助装置側のリミットスイッチおよび工作機械
本体に配備された操作盤の各種スイッチ等の信号を受
け、必要な処理をして、プロセッサ11に渡す。
【0015】工作機械各軸の現在位置,アラーム,パラ
メータ,画像データ等の画像信号はCRT/MDIユニ
ット70に送られ、そのディスプレイに表示される。C
RT/MDIユニット70はディスプレイやキーボード
等を備えた手動データ入力装置であり、インータフェイ
ス18はCRT/MDIユニット70のキーボードから
のデータを受けてプロセッサ11に渡す。インターフェ
イス19は手動パルス発生器71に接続され、手動パル
ス発生器71からのパルスを受ける。手動パルス発生器
71は工作機械本体の操作盤に実装され、手動操作に基
く分配パルスによる各軸制御で工作機械の可動部を精密
に位置決めするために使用される。
【0016】軸制御回路30〜34はプロセッサ11か
らの各軸の移動指令を受けて、各軸の指令をサーボアン
プ40〜44に出力する。サーボアンプ40〜44はこ
の指令を受けて、工作機械各軸のサーボモータ50〜5
4を駆動する。この場合、サーボモータ50,51,5
2の各々はテーブル移動用の直線移動軸X,Y,Zの駆
動に用いられ、また、サーボモータ53,54はロータ
リーヘッドにおける第1の回転軸B,第2の回転軸Cの
駆動に用いられる。各軸のサーボモータ50〜54には
位置検出用のパルスコーダが内蔵されており、このパル
スコーダからの位置信号がパルス列としてフィードバッ
クされる。場合によっては、位置検出器として、リニア
スケールが使用される。また、このパルス列をF/V
(周波数/速度)変換することにより、速度信号を生成
することができる。図1ではこれらの位置信号のフィー
ドバックおよび速度フィードバックの説明は省略してい
る。
【0017】スピンドル制御回路60は工作機械への主
軸回転指令を受け、スピンドルアンプ61にスピンドル
速度信号を出力する。スピンドルアンプ61はこのスピ
ンドル速度信号を受けて、工作機械の主軸モータ62を
指令された切削回転速度で回転させる。主軸モータ62
には歯車あるいはベルト等でポジションコーダ63が接
続され、該ポジションコーダ63が主軸の回転に同期し
て帰還パルスを出力し、その帰還パルスはインターフェ
イス20を経由してプロセッサ11によって読み取られ
る。
【0018】図4は該制御装置10によって駆動制御さ
れる工作機械に装着されたロータリーヘッドの自由度を
示す概念図である。このロータリーヘッドは、前述した
ように、工具の基部を通る水平軸を中心に工具を回転さ
せる第1の回転軸Bと、工具の基部を通る垂直軸を中心
に工具を回転させる第2の回転軸Cとを備え、B,C軸
の回転角度の合成により、ワークに対する工具の傾斜角
度およびその向きを自由に変えながら、直線移動軸X,
Y,Zのテーブル送りに伴ってワーク上を相対移動す
る。実施例のものでは、第1の回転軸Bと第2の回転軸
Cとが工具の基部であるロータリーヘッドの回転中心G
で交叉しており、B,C各軸の回転中心Gから工具先端
までの距離は共にHである。
【0019】ここで、1ブロック分の加工プログラムで
与えられる工具先端に対する移動指令の始点Sおよび終
点Eの座標値を各々(Sx,Sy,Sz),(Ex,E
y,Ez)とし、また、工具先端の指令移動速度をF、
パルス分配周期をΔTとしたとき、もし、工具自体に姿
勢変化がなく直線移動軸X,Y,Zの3軸のテーブル送
りのみで始点Sと終点Eとの間を直線補間するとすれ
ば、各軸に対する分配回数が等しいことから、該所定周
期ΔT当りの各直線移動軸X,Y,Zの分配移動量をΔ
Ux,ΔUy,ΔUzとして数1の式が成立する。
【0020】
【数1】 また、工具自体に姿勢変化がなければ、分配周期ΔT当
りの総移動量が各軸の分配移動量ΔUx,ΔUy,ΔU
zの2乗の和の平方根と完全に一致するので、数2の式
が成立する。
【0021】
【数2】 そこで、数1および数2の式を連立して解けば、直線移
動軸X,Y,Zの3軸のみで始点Sと終点Eとの間を直
線補間するときの分配移動量ΔUx,ΔUy,ΔUzを
求めることができる。言うまでもなく、数1の式におい
て分母が0となる項があれば、数1の式においてこの項
を削除し、数2の式においては、この項の分子に対応す
る値を0として解を求める。当然、数1の式において分
母が0となる項が2つあった場合には、数1の式におい
てこれらの項を共に削除し、数2の式においては、これ
らの項の分子に対応する値を0として解を求めるため、
例えば、数1の式においてEx−Sx=0,Ey−Sy
=0となったとすると、分配移動量ΔUzの絶対値は数
2の式の変形であるΔUz=F・ΔTで求められ、その
符号はEz−Szの正負によって決まることとなる。
【0022】更に、B,C軸の回転角度を変化させなが
ら加工を行う場合には、直線移動軸X,Y,Zの各軸の
補間に同期してB,C軸を回転させる必要があり、その
ためのパルス分配も前記X,Y,Zの各軸に対するパル
ス分配と同時に完了させなければならない。ここで、移
動指令の始点SにおけるB,C軸の回転位置(角度)が
夫々加工プログラムによりSb,Scで与えられ、ま
た、移動指令の終点EにおけるU,V軸の回転位置(角
度)が夫々Eb,Ecで与えられているとする。B,C
軸に対するパルス分配を前記X,Y,Zの各軸に対する
パルス分配と同時に完了させるためには、数1の式にお
いて分母の絶対値が最大となる項をとって、その分母の
値をEi−Si、分子の値をΔUiとし、数3の式を満
たすようにB軸の分配移動量ΔB,C軸の分配移動量Δ
Cを決めればよい。
【0023】
【数3】 数1の式において分母の絶対値が最大となる項をとって
数3の式の演算式を行うのは分母が0となって計算不能
となることを防止するためと、計算上の精度を向上させ
るためるであるから、計算精度さえ問わなければ、分母
が0とならない限り、数1の式におけるどの項を用いて
数3の式の演算式を実行しても一向に差支えない。即
ち、移動指令の始点および終点の位置データ(Sx,S
y,Sz),(Ex,Ey,Ez)と工具の指令移動速
度Fとにより数1および数2の式の演算式で各直線移動
軸X,Y,Zの所定周期毎の分配移動量ΔUx,ΔU
y,ΔUzを求めた後、前記移動指令における各直線移
動軸方向の移動距離のうち最大の値Ei−Siと該直線
移動軸の所定周期毎の分配移動量ΔUiの関係と、移動
指令の始点における回転軸B,Cの回転位置(角度)S
b,Scおよび移動指令の終点における回転軸B,Cの
回転位置(角度)Eb,Ecとに基いて各回転軸B,C
の所定周期毎の分配移動量ΔB,ΔCを求めるというこ
とである。また、数3の式の演算式においても、前述し
た数1の式の場合と同様、Eb−SbまたはEc−Sc
のいずれか一方が0となった場合には、これに対応する
分母を有する項は削除して考える。
【0024】しかし、X,Y,Z,U,V各軸の分配移
動量ΔUx,ΔUy,ΔUz,ΔB,ΔCをそのまま分
配周期ΔT毎に各軸に出力したとしても工具の先端を指
令移動速度Fで移動させることはできないし、また、終
点における工具先端位置をプログラムで指定された位置
に合致させることもできない。それは、各直線移動軸
X,Y,Zの分配移動量ΔUx,ΔUy,ΔUzが工具
の姿勢変化を考慮せずに決められているにも関わらず、
実際には、回転軸B,Cが所定周期ΔT毎にΔB,ΔC
ずつ回転するため、工具の先端にロータリーヘッドの回
転中心Gを基準とする位置偏差ΔAが生じるためであ
る。
【0025】例えば、図4において工具先端の現在位置
がP点にあるとし、所定周期ΔTの間に各軸X,Y,Z
の方向にのみΔU=(ΔUx,ΔUy,ΔUz)の送り
を掛けたとすれば、所定周期ΔT経過後に工具先端がQ
点に位置し、所定の移動速度Fとパルス分配による移動
位置Q、即ち、数2の式の分子で示される単位時間ΔT
当りの移動量(Fに対応)と始点Sおよび終点Eを結ぶ
直線上の位置(Qに対応)とが確保されるが、実際には
この間にB,Cの各軸が各々ΔB,ΔCだけ回転するの
で、所定周期ΔT経過後の工具の先端位置はR点に移動
し、所望する移動位置Qとの間にΔAの位置偏差が生じ
ることとなる。つまり、位置偏差ΔAの存在により単位
時間ΔT当りの工具先端の移動量が数2の式の分子で示
される単位時間ΔT当りの移動量と一致しなくなるた
め、当然、所定の移動速度Fは保持されず、また所望の
移動位置Qも確保されない。
【0026】このため、B,Cの各軸の回転によって生
じる位置偏差ΔAを解消するための移動量を各軸X,
Y,Z方向の分配移動量ΔUに加算する必要が生じる。
【0027】そこで、B軸の回転角度をB、C軸の回転
角度をCとしたとき、ロータリーヘッドを慣性系として
ロータリーヘッドの回転中心Gを座標原点とする工具先
端位置のX軸成分を示す関数をfx(B,C)、Y軸成
分を示す関数をfy(B,C)、Z軸成分を示す関数を
fz(B,C)とすれば、工具先端がP点に位置すると
きのB軸の回転位置(角度)をB、工具先端がP点に位
置するときのC軸の回転位置(角度)をC、また、所定
周期ΔT経過後のB,C各軸の回転位置(角度)を各々
B+ΔB,C+ΔCとして、各軸B,Cの回転ΔB,Δ
Cによって慣性系の工具先端位置に生じる位置偏差ΔA
を解消する移動量ΔVは、慣性系の各軸成分毎に、数
4,数5,数6の式の演算式によって求めることができ
る。
【0028】
【数4】
【0029】
【数5】
【0030】
【数6】 実施例においては、ロータリーヘッドの回転中心Gから
工具先端までの距離がHであって、回転軸Bが工具の基
部を通る水平軸を中心に工具を回転させ、また、回転軸
Cが工具の基部を通る垂直軸を中心に工具を回転させる
ので、fx,fy,fzの実質的な内容は数7,数8,
数9の式に示す通りであり、
【0031】
【数7】
【0032】
【数8】
【0033】
【数9】 ΔVx,ΔVy,ΔVzの各値は、各々、数10,数1
1,数12の演算式により求めることができる。
【0034】
【数10】
【0035】
【数11】
【0036】
【数12】 従って、数1,数2の式により求められた分配移動量Δ
Ux,ΔUy,ΔUz、および、数3の式により求めら
れた分配移動量ΔB,ΔCによって決まる基準分配量Δ
U=(ΔUx,ΔUy,ΔUz,ΔB,ΔC)に対し、
数10,数11,数12の式により求められた位置偏差
補正のための分配量ΔV=(ΔVx,ΔVy,ΔVz)
を各軸毎に加算し、最終的な分配移動量、即ち、補正分
配量ΔP=(ΔUx+ΔVx,ΔUy+ΔVy,ΔUz
+ΔVz,ΔB,ΔC)として所定周期ΔT毎に各軸に
対して出力すれば、各軸X,Y,Z方向における各周期
毎の工具先端位置の移動量がΔUx,ΔUy,ΔUzと
一致し、B,C軸の回転を伴わない通常の直線補間の場
合と同様、プログラムで指定された指令移動速度Fによ
り始点Sおよび終点Eを結ぶ直線に沿って工具の先端を
移動させることができる。
【0037】図2および図3は前述の演算式を適用して
各軸へのパルス分配処理を行うために本実施例の数値制
御装置10が適用した処理の概略を示すフローチャート
である。このうち図2に示す処理は主にパルス分配のた
めの前処理に関する処理であって、これよりも優先度の
高い処理、例えば、パルス分配処理等が終了した後の残
り時間を用いて行われるものであり、また、図3に示す
処理は所定周期ΔT毎に繰り返し実行されるパルス分配
処理に関するものであって、共に、ROM12に格納さ
れたシステムプログラムに基きプロセッサ11により実
行される。
【0038】加工プログラムによる自動運転処理を開始
したプロセッサ11は、まず、所定の条件でスピンドル
制御回路60に回転速度指令を出力してロータリーヘッ
ドに取付けられた工具の切削回転を開始させた後、CM
OSメモリ14に格納された加工用プログラムを1ブロ
ック読み込んで(ステップa1)、このブロックがプロ
グラムエンドを示すブロックであるか否かを判別する
(ステップa2)。そして、このブロックがプログラム
エンドを示すブロックでなければ、該1ブロックの移動
指令から移動指令の始点Sおよび終点Eに関する各軸座
標値S=(Sx,Sy,Sz)とE=(Ex,Ey,E
z)、並びに、該移動区間に対応してプログラムされた
工具先端の指令移動速度F、および、移動指令の始点S
におけるB,C各軸の回転位置(角度)Sb,Scと移
動指令の終点EにおけるB,C各軸の回転位置(角度)
Eb,Ecの各々を読み込み、これらの値に基いて数
1,数2の式を連立して解くことにより直線移動軸X,
Y,Zの3軸のテーブル送りのみで始点Sと終点Eとの
間を直線補間する場合の各軸X,Y,Zの分配移動量Δ
Ux,ΔUy,ΔUzを求めると共に、数1の式におい
て分母の絶対値が最大となる項の分母の値Ei−Siと
その分子ΔUiとの関係に基いて数3の式を解くことに
よりB,C各回転軸の分配移動量ΔB,ΔCを求め、こ
れらの値ΔUx,ΔUy,ΔUz,ΔB,ΔCの組を基
準分配移動量ΔUとして次候補データ記憶レジスタR1
に格納する(ステップa3)。
【0039】次いで、プロセッサ11は、実行データ記
憶レジスタR2が空になっているか否かを判別するが
(ステップa4)、最初の1ブロックを読み込んだ直後
の段階では実行データ記憶レジスタR2が空であるか
ら、次候補データ記憶レジスタR1の内容、即ち、最初
の移動指令に対応して算出された基準分配移動量ΔU=
(ΔUx,ΔUy,ΔUz,ΔB,ΔC)の値が実行デ
ータ記憶レジスタR2に格納される(ステップa5)。
【0040】そして、プロセッサ11はステップa1の
処理に移行し、CMOSメモリ14の加工プログラムか
ら次の1ブロックを読み込み、前記と同様にステップa
2の判別処理を実行し、このブロックがプログラムエン
ドを示すブロックでなければ、該1ブロックの移動指令
に基き前記と同様にステップa3の処理を実行して、該
1ブロック、即ち、加工プログラム上の第2番目の移動
指令ブロックに対応する各軸方向の基準分配移動量ΔU
=(ΔUx,ΔUy,ΔUz,ΔB,ΔC)の値を求
め、これらの値を次候補データ記憶レジスタR1に格納
する(ステップa3)。
【0041】次いで、プロセッサ11は、実行データ記
憶レジスタR2が空になっているか否かを判別するが
(ステップa4)、実行データ記憶レジスタR2には既
に第1番目の移動指令ブロックに対応する各軸方向の基
準分配移動量ΔU=(ΔUx,ΔUy,ΔUz,ΔB,
ΔC)の値が格納されているので、ステップa4の判別
結果は偽となり、ステップa5の処理、即ち、次候補デ
ータ記憶レジスタR1の内容を実行データ記憶レジスタ
R2に転送するための処理が禁止され、前処理実行過程
での待機状態に入る。
【0042】既に述べたように、プロセッサ11は、よ
り優先度の高い他の処理の間隙を縫って前述の前処理を
行っており、前処理の実行中に他の処理を実行するため
の割り込みがかかった場合には、実行中の前処理を一時
停止してその停止位置に対応するステップ番号を記憶
し、レジスタR1,R2等の内容を保持したまま他の処
理を実行し、次の空き時間が生じた時点で再び前記停止
位置のステップ番号から前処理を再開する。実行データ
記憶レジスタR2は、後述のパルス分配処理により基準
分配移動量ΔUの値を読み込まれ、該1ブロックの移動
指令に対応するパルス分配処理が開始された時点で初期
化されて空となる。また、実行データ記憶レジスタR2
の初期化によりステップa5の実行禁止が解除され、予
めステップa3の処理で次候補データ記憶レジスタR1
に格納されていた基準分配移動量ΔUの値がレジスタR
2に書き込まれるので、結果的に、実行データ記憶レジ
スタR2には、パルス分配実行中のブロックに対して常
に1ブロック先の移動指令に対応した基準分配移動量Δ
Uの値が書き込まれることとなる。
【0043】そして、所定周期ΔT毎のパルス分配処理
を開始したプロセッサ11は、まず、分配データ読み込
み禁止フラグFがセットされているか否か、即ち、1ブ
ロックの加工プログラムで与えられた移動指令を実行す
るための分配処理が全て完了しているか否かを判別する
(ステップb1)。プログラムの実行開始直後の現段階
ではフラグFのリセット状態が保持されているので、ス
テップb1の判別結果は偽となり、プロセッサ11は、
実行データ記憶レジスタR2に記憶された基準分配移動
量ΔUの値、即ち、第1番目の移動指令ブロックに対応
する各軸方向の基準分配移動量ΔU=(ΔUx,ΔU
y,ΔUz,ΔB,ΔC)の値を読み込んで一時記憶す
ると共に、レジスタR2の内容を初期化して空にし(ス
テップb2)、分配データ読み込み禁止フラグFをセッ
トする(ステップb3)。
【0044】次いで、プロセッサ11はB,C各軸の現
在位置記憶レジスタから各軸B,Cの現在回転位置(角
度)B,Cの値を読み込み(ステップb4)、これらの
データと工具長Hおよびステップb2の処理で読み込ん
だB,C各軸の基準分配移動量ΔB,ΔCの値に基いて
数10,数11,数12の演算式を実行し、B,C各軸
の回転によって所定周期ΔT間に工具の先端に生じる位
置偏差を解消するための直線移動軸X,Y,Z各軸方向
の移動量ΔV=(ΔVx,ΔVy,ΔVz)の値を算出
し(ステップb5)、ステップb2の処理で一時記憶し
た基準分配移動量ΔU=(ΔUx,ΔUy,ΔUz,Δ
B,ΔC)に移動量ΔVの各軸の値を加算して補正分配
移動量ΔP=(ΔUx+ΔVx,ΔUy+ΔVy,ΔU
z+ΔVz,ΔB,ΔC)を求め(ステップb6)、各
軸毎の分配移動量ΔUx+ΔVx,ΔUy+ΔVy,Δ
Uz+ΔVz,ΔB,ΔCに対応する分配パルスをX,
Y,Z,B,C各軸の軸制御回路30,31,32,3
3,34に出力して(ステップb7)、当該ブロックの
加工プログラムで指定された指令移動速度Fにより、始
点Sおよび終点Eを結ぶ直線に沿って工具の先端を移動
させる。
【0045】次いで、プロセッサ11は各軸の現在位置
記憶レジスタの値を読み込み、当該1ブロック分のパル
ス分配が完了しているか否か、即ち、工具の先端が該1
ブロックの加工プログラムで指令された終点E=(E
x,Ey,Ez)の位置に到達しているか否かを判別す
るが(ステップb8)、1ブロック分のパルス分配が完
了していなければ、このまま当該処理周期のパルス分配
処理を終了し、以下、ステップb8の判別結果が真とな
って1ブロック分のパルス分配が完了するまでの間、所
定の分配周期ΔT毎にステップb4〜ステップb8の処
理を繰り返し実行し、当該ブロックの加工プログラムで
指定された指令移動速度Fにより、始点Sおよび終点E
を結ぶ直線に沿って工具の先端を移動させる。
【0046】そして、実行中の移動指令に対応する1ブ
ロック分のパルス分配処理が完了してステップb8の判
別結果が真となるたび、プロセッサ11は分配データ読
み込み禁止フラグFをリセットし(ステップb9)、次
周期のパルス分配処理で、実行データ記憶レジスタR2
に記憶されている次ブロックの加工プログラムに対応す
る基準分配移動量ΔUの値を読み込み(ステップb1〜
ステップb2)、再び分配データ読み込み禁止フラグF
をセットして(ステップb3)、以下、前記と同様にし
て補正分配移動量ΔPを求めて該1ブロックの移動指令
に対応するパルス分配処理を所定周期ΔT毎に繰り返し
実行する。
【0047】以上、一実施例として、ロータリーヘッド
を回転させるB,C軸とX,Y,Zの直線移動軸とを備
えた工作機械の速度制御について説明したが、本発明の
速度制御方法は、テーブルの回転角度や傾斜角度を変化
させることによって工具とワークとの相対角度を変えな
がら加工を行う工作機械をはじめ、工具とワークとの間
の相対的な角度変化のみによって工具の先端とワークと
の間に生じる位置偏差を各直線移動軸方向の移動量に分
解することのできる全ての工作機械、即ち、数4,数
5,数6の式におけるΔVx,ΔVy,ΔVzの各値を
特定の関数式によって求めることのできる全ての工作機
械に対して適用することができる。
【0048】
【発明の効果】本発明の速度制御方法は、移動指令に対
し直線移動軸のみで所定周期毎の直線補間を行った場合
の各直線移動軸の分配移動量を工具の角度変化とは無関
係に求めると共に、その補間回数に対応して、工具の角
度を変化させる各回転軸の所定周期毎の分配移動量を算
出し、更に、各回転軸の分配移動量により次の所定周期
までの間に直線移動軸の各軸の方向に対して工具の先端
に生じる位置偏差を前記所定周期毎に求め、該位置偏差
の値に基き、各直線移動軸の分配移動量に所定周期毎に
補正をかけて各直線移動軸を補間する一方、各回転軸に
は補間回数に対応して求めた分配移動量、即ち、工具の
角度変化によってその先端に生じる位置偏差の原因とな
る分配移動量をそのまま出力するようにしたので、ワー
クに対する工具の角度を変化させながら直線補間を行う
場合であっても、直線移動軸のみによる直線補間の場合
と同様、工具先端の移動速度を、与えられた移動指令速
度と一致させることができる。
【図面の簡単な説明】
【図1】本発明の方法を実施する一実施例の数値制御装
置のハードウェアを示すブロック図である。
【図2】同実施例の数値制御装置によるパルス分配処理
の前処理の概略を示すフローチャートである。
【図3】同実施例の数値制御装置によるパルス分配処理
の概略を示すフローチャートである。
【図4】工作機械に装着されたロータリーヘッドの自由
度を示す概念図である。
【符号の説明】
10 数値制御装置 11 プロセッサ 12 ROM 13 RAM 14 CMOSメモリ 21 バス 50 サーボモータ(直線移動軸X) 51 サーボモータ(直線移動軸Y) 52 サーボモータ(直線移動軸Z) 53 サーボモータ(回転軸B) 54 サーボモータ(回転軸C) G ロータリーヘッドの回転中心 S 移動指令の始点 E 移動指令の終点 ΔU 基準分配量 ΔA 位置偏差 ΔV 位置偏差を解消するための分配量 ΔP 補正分配移動量

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 ワークに対する工具の角度を相対的に変
    化させる回転軸を備えた工作機械の速度制御方法におい
    て、 移動指令の始点および終点の各軸位置データおよび指令
    移動速度により各軸に関する所定周期毎の分配移動量を
    求め、 前記所定周期毎に、次周期の回転軸の回転位置と当該周
    期の回転軸の回転位置との相違により前記回転軸を基準
    として工具先端に生じる各直線移動軸方向毎の位置偏差
    を求め、各直線移動軸毎、前記分配移動量に対応する位
    置偏差を夫々加算して各直線移動軸の補正分配移動量と
    して出力すると共に、各回転軸には前記求められた分配
    移動量を出力するようにした数値制御装置における速度
    制御方法。
  2. 【請求項2】 移動指令の始点および終点の位置データ
    と工具の指令移動速度とにより各直線移動軸の所定周期
    毎の分配移動量を求めた後、前記移動指令における1直
    線移動軸方向の移動距離と該直線移動軸の所定周期毎の
    分配移動量との関係と、移動指令の始点および終点にお
    ける回転軸の回転位置とに基いて前記各回転軸の所定周
    期毎の分配移動量を求めるようにした請求項1記載の数
    値制御装置における速度制御方法。
  3. 【請求項3】 工具の基部を通る水平軸を中心に工具を
    回転させる第1の回転軸と、工具の基部を通る垂直軸を
    中心に工具を回転させる第2の回転軸とを備えるロータ
    リーヘッドを取付けた工作機械を制御する数値制御装置
    の速度制御方法において、 ロータリーヘッドの回転中心から工具先端までの距離を
    H、当該所定周期における第1の回転軸の回転位置を
    B、当該所定周期における第2の回転軸の回転位置を
    C、並びに、第1の回転軸における所定周期毎の分配移
    動量をΔB、第2の回転軸における所定周期毎の分配移
    動量をΔCとしたとき、 ΔVx=H×〔sin (B+ΔB)×cos (C+ΔC)−
    sin B×cos C〕 ΔVy=−H×〔sin (B+ΔB)×sin (C+ΔC)
    −sin B×sin C〕 ΔVz=H×〔cos (B+ΔB)−cos B〕 の演算式により、水平直線移動軸Xの方向に対応する位
    置偏差ΔVx、直線移動軸Xと直交する水平直線移動軸
    Yの方向に対応する位置偏差ΔVy、垂直直線移動軸Z
    の方向に対応する位置偏差ΔVzを求めるようにした請
    求項1または請求項2記載の数値制御装置における速度
    制御方法。
JP5139824A 1993-05-20 1993-05-20 数値制御装置における速度制御方法 Pending JPH06332524A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP5139824A JPH06332524A (ja) 1993-05-20 1993-05-20 数値制御装置における速度制御方法
US08/373,208 US5545959A (en) 1993-05-20 1994-05-16 Speed control method for a numerical control apparatus
PCT/JP1994/000789 WO1994028472A1 (fr) 1993-05-20 1994-05-16 Procede de commande de vitesse pour dispositif de commande numerique

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5139824A JPH06332524A (ja) 1993-05-20 1993-05-20 数値制御装置における速度制御方法

Publications (1)

Publication Number Publication Date
JPH06332524A true JPH06332524A (ja) 1994-12-02

Family

ID=15254331

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5139824A Pending JPH06332524A (ja) 1993-05-20 1993-05-20 数値制御装置における速度制御方法

Country Status (3)

Country Link
US (1) US5545959A (ja)
JP (1) JPH06332524A (ja)
WO (1) WO1994028472A1 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8145347B2 (en) 2008-03-31 2012-03-27 Mitsubishi Electric Corporation Numerical control apparatus and numerical control method
JP4975872B1 (ja) * 2011-02-25 2012-07-11 ファナック株式会社 多軸加工機用速度制御機能を有する数値制御装置
WO2014068675A1 (ja) 2012-10-30 2014-05-08 株式会社牧野フライス製作所 工作機械の制御装置および工作機械
US9395719B2 (en) 2011-01-26 2016-07-19 Mitsubishi Electric Corporation Numerical control apparatus
US9557728B2 (en) 2011-02-03 2017-01-31 Mitsubishi Electric Corporation Numerical control apparatus

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6225728B1 (en) * 1994-08-18 2001-05-01 Agilent Technologies, Inc. Composite piezoelectric transducer arrays with improved acoustical and electrical impedance
FI99217C (fi) * 1995-07-03 1997-10-27 Nokia Telecommunications Oy Menetelmä tukiaseman summausverkon virittämiseksi, kytkentäelin sekä kaistanpäästösuodatin
JP3352986B2 (ja) * 1999-12-17 2002-12-03 スター精密株式会社 工作機械の駆動制御装置
US20020138171A1 (en) * 2001-02-22 2002-09-26 Mutoshi Fukutani Numerical control method and numerically controlled allaratus
DE10149175A1 (de) * 2001-10-04 2003-04-17 Heidenhain Gmbh Dr Johannes Verfahren zur Bahnsteuerung
JP3719603B2 (ja) * 2003-03-06 2005-11-24 多摩川精機株式会社 駆動回路内蔵型サーボモータの駆動方法
EP1742762B1 (de) * 2004-04-23 2008-12-03 Schott AG Vorrichtung zur erzeugung von mikrostrukturen
CN101866163B (zh) * 2007-11-02 2014-09-10 株式会社牧野铣床制作所 数值控制机床及数值控制装置
EP2975475B1 (en) * 2007-11-02 2019-05-08 Makino Milling Machine Co. Ltd. Method for preparing error map and numerically controlled machine tool having error map preparation function
CN102365595B (zh) * 2009-03-27 2014-03-26 三菱电机株式会社 数控装置以及该数控装置的控制方法
JP6464135B2 (ja) * 2016-12-22 2019-02-06 ファナック株式会社 数値制御装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3593091A (en) * 1969-04-24 1971-07-13 Pratt & Whitney Inc System for positioning movable members with absolute dimension with selectable offset point
US4663726A (en) * 1985-04-15 1987-05-05 General Electric Co. Robot control utilizing cubic spline interpolation
JPH079603B2 (ja) * 1987-08-04 1995-02-01 株式会社明電舎 ロボットの倣い制御装置
JPH0692057B2 (ja) * 1987-08-25 1994-11-16 豊田工機株式会社 数値制御工作機械
US5438522A (en) * 1992-12-18 1995-08-01 Cincinnati Milacron Inc. Method and apparatus for sub-span interpolation

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8145347B2 (en) 2008-03-31 2012-03-27 Mitsubishi Electric Corporation Numerical control apparatus and numerical control method
US9395719B2 (en) 2011-01-26 2016-07-19 Mitsubishi Electric Corporation Numerical control apparatus
US9557728B2 (en) 2011-02-03 2017-01-31 Mitsubishi Electric Corporation Numerical control apparatus
JP4975872B1 (ja) * 2011-02-25 2012-07-11 ファナック株式会社 多軸加工機用速度制御機能を有する数値制御装置
CN102650867A (zh) * 2011-02-25 2012-08-29 发那科株式会社 具有多轴加工机用速度控制功能的数值控制装置
DE102012003196A1 (de) 2011-02-25 2012-08-30 Fanuc Corporation Numerische Steuervorrichtung mit einer Geschwindigkeitssteuerfunktion für eine maschinelle Mehrachsenverarbeitungsvorrichtung
US8868228B2 (en) 2011-02-25 2014-10-21 Fanuc Corporation Numerical controller having speed control function for multi-axis machining device
DE102012003196B4 (de) * 2011-02-25 2016-05-12 Fanuc Corporation Numerische Steuervorrichtung mit einer Geschwindigkeitssteuerfunktion für eine maschinelle Mehrachsenverarbeitungsvorrichtung
WO2014068675A1 (ja) 2012-10-30 2014-05-08 株式会社牧野フライス製作所 工作機械の制御装置および工作機械
US10007251B2 (en) 2012-10-30 2018-06-26 Makino Milling Machine Co., Ltd. Machine tool control device and machine tool

Also Published As

Publication number Publication date
US5545959A (en) 1996-08-13
WO1994028472A1 (fr) 1994-12-08

Similar Documents

Publication Publication Date Title
CN101458507B (zh) 用于控制五轴加工装置的数字控制器
JP3643098B2 (ja) 数値制御装置
JPH06332524A (ja) 数値制御装置における速度制御方法
JP4945664B2 (ja) 傾斜面を加工する多軸加工機用数値制御装置
JP4837110B2 (ja) 工具軌跡表示機能を有する数値制御装置
JPH065486B2 (ja) ロボットの軌跡制御方法
JP4503659B2 (ja) 座標変換工具位相制御用数値制御装置
JP3207409B2 (ja) ロボットのツール姿勢制御方法
US20140005823A1 (en) Numerical controller having a tool posture control function for multi-axis machining machines
US5563484A (en) Three-dimensional cutter compensation system
US5765976A (en) Method of controlling the normal direction of the main shaft of the numerical control machine tool
JP2005071016A (ja) 数値制御装置
JPS6333166B2 (ja)
JPH07299697A (ja) 加工物の取付誤差補正方法および取付誤差補正装置
JPH10177406A (ja) 5軸加工機の制御装置
JP4734439B2 (ja) 4軸加工機用数値制御装置
JPH03109606A (ja) 工具補正方式
JP3576421B2 (ja) 工作機のワーク姿勢制御方法
JPH05100723A (ja) 工作機械の工具長補正方式
JPH0474205A (ja) 数値制御装置
JPH0454604A (ja) 3次元工具経補正機能を有する数値制御装置
JPH10337636A (ja) 5軸加工機の制御装置
JP2893536B2 (ja) 数値制御方法
JPH0744215A (ja) 工作機械の送り軸制御方法および装置
JPH03288910A (ja) 鋳仕上ロボットの教示方法