(57)【要約】【課題】  テーブル形式データに基づいて運転する数値制御装置において、目標とする時間又は主軸位置で補助機能が動作できるようにする。【解決手段】  指令基準時間Ｌｃに対応して出力すべき補助機能指令Ｍとその動作遅延時間Ｄが記憶された補助機能テーブルを有する。オーバライド値に応じて基準時間Ｌを更新する（ａ１）。補助機能テーブルより補助機能指令Ｍとその動作遅延時間Ｄを読み出す（ａ２）。遅延時間Ｄをオーバライド値で補正し、指令基準時間Ｌｃより補正された遅延時間分だけ前の基準時間を指令時間Ｌｒとする（ａ３）。オーバライドが掛けられても、遅延時間はオーバライド分補正されてオーバライドが掛けられた基準時間単位に変更され、それに基づいて補助機能の指令時間が求められ、出力されるから（ａ４，ａ５）、補助機能は指令された基準位置Ｌｃにおいて適正に動作する。【選択図】          図７
2006301930.tif 000002
【特許請求の範囲】
【請求項１】
時間あるいは主軸位置を基準にして補助機能をテーブル形式データで指令して出力する数値制御装置において、
前記補助機能に対応する動作遅延時間を記憶した記憶手段と、
前記時間あるいは主軸位置に対応する補助機能が指令された時、前記記憶された動作遅延時間前に補助機能指令を出力する出力手段、
とを有することを特徴とする数値制御装置。
【請求項２】
前記動作遅延時間は補助機能と同じテーブル形式データに記憶されていることを特徴とする請求項１に記載の数値制御装置。
【請求項３】
前記動作遅延時間は予め補助機能毎に遅延時間を記憶したテーブルで記憶されていることを特徴とする請求項１に記載の数値制御装置。
【請求項４】
前記出力手段は、時間あるいは主軸回転数にオーバライドが掛けられたとき該オーバライド値に応じて、前記動作遅延時間をオーバライドが掛けられた時間あるいは主軸移動量に変換し、指令時間若しくは指令主軸位置よりこの変換された時間若しくは主軸移動量前に補助機能指令を出力する請求項１乃至３の内いずれか１項に記載の数値制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、工作機械を制御する数値制御装置に関する。特に、テーブル形式で記憶されたデータに基づいて各軸を駆動制御する数値制御装置に関する。
【背景技術】
【０００２】
ＮＣプログラムのブロックによる指令ではなく、予め各軸の移動量や位置をテーブル形式で記憶しておき、該テーブルに記憶されたデータに基づいて各軸を駆動制御することによって、従来のブロックによる指令にとらわれない自由な工具の動作が可能となり、加工時間の短縮や、加工の高精度化を実現した数値制御装置はすでに公知である。  
例えば、時間毎又は回転角度毎に対する可動軸の位置を数値制御データとして記憶しておき、時間又は回転角度を監視し、記憶した時間又は回転角度に達する毎に、可動軸に対応する数値制御データを出力するようにした発明が知られている（特許文献１参照）。
【０００３】
又、基準位置に対するＸ軸、Ｚ軸の指令位置を記憶するデータテーブルを設けておき、基準パルスをカウントするカウンタの値にオーバライド値をかけて基準位置を求めて、該基準位置に基づいて、データテーブルに記憶されたＸ軸、Ｚ軸の指令位置を出力してＸ軸、Ｚ軸を同期制御することにより、データテーブルに記憶されたデータによって駆動制御する場合でもオーバライドがかけられるようにし、さらには、指令位置間を直線的に接続するか、２次関数接続、３次関数接続等を指令できると共に、補助機能も指令できるようにした発明も知られている（特許文献２参照）。
【０００４】
【特許文献１】特開昭５９−１７７６０４号公報
【特許文献２】特開２００３−３０３００５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
特許文献２に記載されたテーブル形式データで指令して各軸を駆動する運転（以下パステーブル運転という）では、軸位置の指令とともにテーブル形式データで指令した補助機能の出力も可能であることから、通常のＮＣ文での補助機能と異なり、任意の時間、任意の主軸位置での補助機能出力が可能なため、出力のタイミングを最適に調整することができ、加工時間の短縮に有効である。
【０００６】
しかしながら、補助機能を出力しても、実際の補助機能には動作遅れがあり、この分補助機能の動作が遅れる。そのため、最適に出力タイミングを調整するためには、この動作遅れを考慮してその分早めに出力する必要がある。さらに、パステーブル運転では時間あるいは主軸回転数に対してオーバライドが掛けられると、早めに出力するように調整しても、実際に動作するタイミングはオーバライドの設定値あるいは実際の主軸の回転数により異なってしまう。したがって、実際のオーバライド値を想定してデータを作成する必要があり、データの調整に時間もかかり、加工サイクルに無駄も発生するという問題があった。
【０００７】
そこで、本発明の目的は、目標とする時間又は主軸（ここで述べる主軸とは、一方向に旋回する軸を示す）位置で補助機能が動作でき、オーバライドが掛けられても目標とする時間又は主軸位置で補助機能が動作できるようにする数値制御装置を提供することにある。
【課題を解決するための手段】
【０００８】
本発明は、時間あるいは主軸位置を基準にして補助機能をテーブル形式データで指令して出力する数値制御装置において、前記補助機能に対応する動作遅延時間を記憶した記憶手段と、前記時間あるいは主軸位置に対応する補助機能が指令された時、前記記憶された動作遅延時間前に補助機能指令を出力する出力手段とを備え、補助機能の動作遅れを補正し、指令基準位置で補助機能が動作するようにした。また、前記動作遅延時間は補助機能と同じテーブル形式データに記憶するか、補助機能毎に遅延時間を記憶したテーブルとした。また、前記出力手段は、時間あるいは主軸回転数にオーバライドが掛けられたとき該オーバライド値に応じて、前記動作遅延時間をオーバライドが掛けられた時間あるいは主軸移動量に変換し、指令時間若しくは指令主軸位置よりこの変換された時間若しくは主軸移動量前に補助機能指令を出力するようにした。
【発明の効果】
【０００９】
補助機能の動作遅延時間分指令された指令時間若しくは指令主軸位置（基準位置）よりも前に補助機能が出力されるので、補助機能の動作遅れがなく、指令した基準位置で補助機能を動作させることができる。また、オーバライドが掛けられても、オーバライドを考慮して補助機能の指令が出力されるから、オーバライドが掛けられたときも指令基準位置で補助機能を動作させることができる。
【発明を実施するための最良の形態】
【００１０】
図１は、本発明の一実施形態が実行するパステーブル運転機能の概要図である。図１において、主軸に取り付けられたポジションコーダから等の主軸位置を示すパルス又は外部パルス発生部からの時間を基準とする基準パルスが、所定周期毎カウンタ１に入力され計数される。また、主軸の指令値に基づいて主軸位置を計数してもよい。時間を基準とする基準パルスの場合、このカウンタ１の計数値にオーバライド手段に設定されている倍率が乗算器２で乗じられ基準位置カウンタ３に格納される。なお、主軸位置が基準とされているときは、このオーバライド値は１００％にされている。基準位置カウンタ３は、パステーブル運転機能が指令された時等にリセットとされ、該基準位置カウンタ３の値（以下この値を基準位置という）Ｌに基づいてパステーブル運転がなされる。
【００１１】
基準位置カウンタ３の値（基準位置）Ｌは、各制御軸（この実施形態ではＸ，Ｚ軸）のパステーブル補間処理部４ｘ，４ｚ及び補助機能出力処理部４ｍに入力される。Ｘ軸，Ｚ軸パステーブル補間処理部４ｘ，４ｚでは、メモリに記憶されているＸ軸，Ｚ軸パステーブルＴｘ，Ｔｚを参照して各指令基準位置に対する各制御軸の指令位置を求め、前回の周期での指令位置との差分を移動指令として各制御軸モータ５ｘ，５ｚに出力する。また、パステーブル補間処理部４ｘ，４ｚでは、補助機能テーブルＴｍを参照して、基準位置Ｌに合わせて補助機能を出力する。
【００１２】
図２は、パステーブルの一例として、Ｘ軸，Ｚ軸のパステーブルＴｘ，Ｔｚの例を示すものであり、指令基準位置Ｌｃの値に対してＸ軸，Ｚ軸の位置が設定されている。  
また、図３は補助機能テーブルＴｍの一例で、補助機能を出力すべき指令基準位置Ｌｃに対して補助機能指令Ｍが記憶され、該補助機能動作の遅延時間Ｄが共に設定されている。なお、補助機能指令を複数出力する場合等においては、補助機能テーブルＴｍを分割して、指令基準位置Ｌｃに対する補助機能指令Ｍのテーブルと、補助機能指令Ｍと動作遅延時間Ｄのテーブルとしてもよい。すなわち、図３において動作遅延時間Ｄを削除したテーブルと、図４に示すような補助機能指令Ｍとその補助機能指令Ｍに対応する動作遅延時間Ｄを記憶したテーブルを用いてもよいものである。
【００１３】
図５は、Ｘ軸パステーブルＴｘによる基準位置Ｌに対するＸ軸の位置を表す図であり、Ｘ軸パステーブルＴｘに設定されている基準位置Ｌに対応するＸ軸位置に達するようＸ軸パステーブル補間処理部４ｘで補間処理がなされてＸ軸のモータ５ｘは駆動されるものである。また、Ｚ軸モータ５ｚも同様に、基準位置ＬとＺ軸パステーブルＴｚに基づいてＺ軸パステーブル補間処理部４ｚで補間処理がなされて駆動されるものである。
【００１４】
一方、補助機能出力処理部４ｍでは、補助機能テーブルＴｍに記憶された指令基準位置と補助機能指令に基づいて、この指令基準位置に基準位置Ｌが達したとき、補助機能指令を出力するものであるが、本実施形態では、この補助機能指令の出力を補助機能の動作遅延時間を考慮して、指令基準位置よりも前に出力しこの動作遅延時間をなくすようにしている点に特徴を有するものである。図５では、基準位置Ｌ10に対して補助機能Ｍ10とその遅延時間ｔ10が設定されていたことにより、基準位置Ｌ10よりも遅延時間ｔ10に相当する基準ΔＬだけ前の基準位置で補助機能Ｍ10を出力し、指令された基準位置Ｌ10に対して補助機能Ｍ10が動作するようにしている。
【００１５】
オーバライド手段による倍率が「１」の場合には、基準パルスがそのまま基準位置カウンタ３で計数されて基準位置Ｌとなるから、従来と同様に基準軸と同期して各制御軸の運転がなされることになる。すなわち、基準パルスの発生が主軸に取り付けられたポジションコーダからのパルスであれば、主軸に同期して各軸（Ｘ，Ｚ軸）が同期して運動することになる。補助機能の動作遅延時間の補正も設定された動作遅延時間に対応する分早く出力すればよい（なお、動作遅延時間はオーバライド値が１００％のときを基準として設定されている）。しかし、オーバライドが掛けられたとき、基準位置の変化速度が変わることから、動作遅延時間Ｄもこのオーバライド値によって変えねばならず、本実施形態では、このオーバライド値に応じて動作遅延時間を補正し、補助機能を出力するようにしている。オーバライド値が５０％の場合、基準位置Ｌの速度は、基準のオーバライド値１００％の半分の速さとなるから、動作遅延時間も設定動作遅延時間の５０％にすることによって指令基準位置で指令補助機能が動作するようにしている。
以上が、本実施形態の動作概要である。
【００１６】
図６は、本発明のパステーブル運転を実行する一実施形態の数値制御装置１０の要部ブロック図である。ＣＰＵ１１は数値制御装置１０を全体的に制御するプロセッサである。ＣＰＵ１１は、ＲＯＭ１２に格納されたシステムプログラムを、バス２０を介して読み出し、該システムプログラムに従って数値制御装置全体を制御する。ＲＡＭ１３には一時的な計算データや表示データ及び表示器／ＭＤＩユニット７０を介してオペレータが入力した各種データが格納される。ＣＭＯＳメモリ１４は図示しないバッテリでバックアップされ、数値制御装置１０の電源がオフされても記憶状態が保持される不揮発性メモリとして構成される。ＣＭＯＳメモリ１４中には、インターフェイス１５を介して読み込まれた加工プログラムや表示器／ＭＤＩユニット７０を介して入力された加工プログラム等が記憶される。さらに、前述したパステーブルＴｘ，Ｔｚ及び補助機能テーブルＴｍが予め格納されている。
【００１７】
インターフェイス１５は、数値制御装置１０とアダプタ等の外部機器との接続を可能とするものである。ＰＭＣ（プログラマブル・マシン・コントローラ）１６は、数値制御装置１０に内蔵されたシーケンスプログラムで工作機械の補助装置にＩ／Ｏユニット１７を介して信号を出力し制御する。また、工作機械の本体に配備された操作盤の各種スイッチ等の信号を受け、必要な信号処理をした後、ＣＰＵ１１に渡す。
【００１８】
表示器／ＭＤＩユニット７０は液晶やＣＲＴ等のディスプレイやキーボード等を備えた手動データ入力装置であり、インターフェイス１８は表示器／ＭＤＩユニット７０のキーボードからの指令，データを受けてＣＰＵ１１に渡す。インターフェイス１９は操作盤７１に接続され、操作盤７１からの各種指令を受け取るようになっている。
【００１９】
各軸の軸制御回路３０、３１はＣＰＵ１１からの各軸の移動指令量を受けて、各軸の指令をサーボアンプ４０、４１に出力する。サーボアンプ４０、４１はこの指令を受けて、各軸のサーボモータ５ｘ，５ｚを駆動する。各軸のサーボモータ５ｘ，５ｚは位置・速度検出器を内蔵し、この位置・速度検出器からの位置、速度フィードバック信号を軸制御回路３０、３１にフィードバックし、位置・速度のフィードバック制御を行う。なお、図５では、位置・速度のフィードバックについては省略している。
【００２０】
また、スピンドル制御回路６０は主軸回転指令を受け、スピンドルアンプ６１にスピンドル速度信号を出力する。スピンドルアンプ６１はスピンドル速度信号を受けて、主軸モータ６２を指令された回転速度で回転させる。ポジションコーダ６３は、主軸モータ６２の回転に同期して帰還パルス（基準パルス）及び１回転信号をスピンドル制御回路６０にフィードバックし、速度制御を行う。この帰還パルス（基準パルス）及び１回転信号は、スピンドル制御回路６０を介してＣＰＵ１１によって読みとられ、帰還パルスは主軸位置でパステーブル運転を行うときの基準パルスとして利用される。また、主軸の指令パルスが基準パルスとして利用される場合もある。
【００２１】
上記実施形態においては、Ｘ，Ｚ軸の制御軸を有する例を示しているが、制御軸としては、さらに増加してもよい。増加する場合、増加制御軸のパステーブルを不揮発性メモリに格納し、軸制御回路、サーボアンプ、サーボモータを増加すればよいことになる。
【００２２】
この実施形態では、不揮発性メモリ１４に制御軸のＸ軸分、Ｚ軸分の図２に示すようなパステーブルＴｘ，Ｔｚが格納されていると共に、図３に示すような補助機能テーブルＴｍが格納されている。  
加工プログラムよりテーブル運転が指令されたとき、ＣＰＵ１１は、Ｘ軸，Ｚ軸パステーブルＴｘ，Ｔｚに基づいてＸ軸，Ｚ軸のサーボモータ５ｘ，５ｚを駆動する。この点は、従来から公知パステーブル運転と同一であるので、その説明を省略する。本発明は、このパステーブル運転時における補助機能指令を遅れることなく動作される点に特徴があるものであり、この点についてその動作を以下説明する。
【００２３】
図７は、基準位置として時間を用いたとき（基準位置が時間であることから、この図７に示す処理では基準時間Ｌという）、すなわち図１においてカウンタ１に時間パルスが入力される場合における補助機能指令出力処理のアルゴリズムを示すフローチャートである。ＣＰＵ１１はこの図７にフローチャートで示す処理を所定周期毎実行する。
【００２４】
まず、基準時間（基準位置）Ｌを更新する。すなわちレジスタに記憶する基準時間Ｌに、この処理の周期時間に現在のオーバライド値（％）を１００で割った値を掛けて得られた値を加算する（ステップａ１）。
【００２５】
次に、補助機能テーブルＴｍよりステップａ１で求めた基準時間に近い次の指令基準時間Ｌｃ（現在の基準時間Ｌよりも後の（大きく）一番近い指令基準時間Ｌｃ）に対して設定されている補助機能指令Ｍとその動作遅延時間Ｄを求める（ステップａ２）。  
そして、実際にこの補助機能指令を出力する時間Ｌｒを算出する。すなわち、読み出された指令基準時間Ｌｃから、読み出した動作遅延時間Ｄにオーバライド値（％）を１００で割った値を乗じた値を減じて実際の指令時間Ｌｒを求める（ステップａ３）。
【００２６】
指令時間Ｌｒ＝指令基準時間Ｌｃ−（動作遅延時間Ｄ×オーバライド値／１００）
処理周期はオーバライドが掛けられていない（オーバライド値＝１００％）状態での時間であるから、１００％以外のオーバライド値が掛けられると基準時間Ｌの進行速度が変化するので、基準時間Ｌに対して設定されている補助機能指令の動作遅延時間も基準時間の進行速度の変化に合わせて変える必要がある。そのため、動作遅延時間Ｄに「オーバライド値／１００」をかけることによって、オーバライドが掛けられた基準時間単位の動作遅延時間Ｄに変換し、指令基準時間Ｌｃよりこの変換された動作遅延時間分前に、補助機能を出力することによって、オーバライドが掛けられても、補助機能指令が指令基準時間Ｌｃで動作するように補正するものである。
【００２７】
次に、ステップａ１で求めた基準時間Ｌがステップａ３で求めた指令時間Ｌｒに到達しているか判断し（ステップａ４）、到達していないならば、当該処理周期の処理を終了する。一方、基準時間Ｌが指令時間Ｌｒに到達しているときは、ステップａ２で読み取った補助機能指令Ｍを出力する（ステップａ５）。その結果、オーバライドが掛けられていても、動作遅延時間Ｄはオーバライド値に応じて補正されてその補正された動作遅延時間だけ指令基準時間より前に補助機能指令Ｍが出力されるから、指令基準位置Ｌｃで該補助機能は動作することになる。
【００２８】
図８は、基準位置Ｌとして、ポジションコーダ６３からの帰還パルス等による主軸位置を用いたときにおける、数値制御装置１０のＣＰＵ１１が所定処理周期毎に実行する補助機能出力処理のアルゴリズムを示すフローチャートである。  
まず、基準位置（主軸位置）Ｌを更新する。すなわちレジスタに記憶する基準位置Ｌに、この処理の周期時間の主軸移動量を加算する（ステップｂ１）。なお、オーバライドが掛けられていても、主軸移動量はそのオーバライドが掛けられた状態での移動量であるから、そのまま主軸移動量を基準位置Ｌに加算すればよいものである。なお、主軸の指令値に基づいて主軸位置を計算してもよい。
【００２９】
次に、補助機能テーブルＴｍよりステップｂ１で求めた基準位置に近い次の指令基準位置Ｌｃ（主軸が正方向に回転しているとすれば現在の基準位置Ｌよりも大きく一番近い指令基準位置Ｌｃ）に対して設定されている補助機能指令Ｍとその動作遅延時間Ｄを求める（ステップｂ２）。  
そして、実際にこの補助機能指令を出力する位置Ｌｒを算出する。すなわち、読み出された指令基準位置Ｌｃから、読み出した動作遅延時間Ｄに現在の指令主軸回転数を６０で割った値（回転数を秒単位（基本単位）になおした値）を乗じ、さらに、オーバライド値（％）を１００で割った値を乗じた値を減じて実際の指令位置Ｌｒを求める（ステップｂ３）。
指令位置Ｌｒ＝
指令基準位置Ｌｃ-(動作遅延時間Ｄ×(指令主軸回転数/60)×(オーバライド値/100))
すなわち、主軸はオーバライドが掛けられて移動しているから、指令主軸回転速度にオーバライド値をかけることによって、実際の主軸回転速度を求め、これに動作遅延時間を乗じることによって、動作遅延時間Ｄに対応する基準位置の移動量に変換し、この基準位置の移動量を指令基準位置Ｌｃから減じれば、動作遅延時間Ｄだけ前の指令位置Ｌｒが求まることになる。
【００３０】
次に、ステップｂ１で求めた基準位置Ｌがステップｂ３で求めた指令位置Ｌｒに到達しているか判断し（ステップｂ４）、到達していないならば、当該処理周期の処理を終了する。一方、基準位置Ｌが指令位置Ｌｒに到達しているときは、ステップｂ２で読み取った補助機能指令Ｍを出力する（ステップｂ５）。その結果、オーバライドが掛けられていても、動作遅延時間Ｄはオーバライド値に応じて補正されてその補正された動作遅延時間だけ前に補助機能指令Ｍが出力されるから、指令基準位置Ｌｃで該補助機能は動作することになる。
【図面の簡単な説明】
【００３１】
【図１】本発明の一実施形態が実行するパステーブル運転機能の概要図である。
【図２】同実施形態におけるパステーブルの一例の説明図である。
【図３】同実施形態における補助機能テーブルの一例の説明図である。
【図４】同実施形態における補助機能テーブルの一部を構成するテーブルの説明図である。
【図５】同実施形態におけるパステーブルによるＸ軸の移動状態を説明する説明図である。
【図６】同実施形態の数値制御装置の要部ブロック図である。
【図７】同実施形態において、基準位置を時間としたときの補助機能出力処理のアルゴリズムを示すフローチャートである。
【図８】同実施形態において、基準位置を主軸位置としたときの補助機能出力処理のアルゴリズムを示すフローチャートである。
【符号の説明】
【００３２】
１  カウンタ
２  乗算器
３  基準位置カウンタ
５ｘ  Ｘ軸サーボモータ
５ｚ  Ｚ軸サーボモータ
１０  数値制御装置
６２  主軸モータ
６３  ポジションコーダ
【図１】
2006301930.tif 000003
【図２】
2006301930.tif 000004
【図３】
2006301930.tif 000005
【図４】
2006301930.tif 000006
【図５】
2006301930.tif 000007
【図６】
2006301930.tif 000008
【図７】
2006301930.tif 000009
【図８】
2006301930.tif 000010