(57)【特許請求の範囲】
【請求項１】
工具毎の最高回転数と工具毎の最低回転数とを記憶する工具別主軸情報記憶手段と、加工プログラムの指令回転数と上記工具別主軸情報記憶手段に記憶された対応する工具の最高回転数・最低回転数とを比較し、上記指令回転数が最高回転数を超える指令である時には上記指令回転数を上記工具別主軸情報記憶手段に記憶された最高回転数に置き換えるとともに、上記指令回転数が最低回転数に達しない指令である時には上記指令回転数を上記工具別主軸情報記憶手段に記憶された最低回転数に置き換える主軸情報比較・修正手段とを備えてなる主軸制御機能を有する数値制御装置。
【請求項２】
上記工具別主軸情報記憶手段は、各工具に内蔵または付帯する記憶媒体であることを特徴とする請求項１に記載の主軸制御機能を有する数値制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は主軸制御機能を有する数値制御（Ｎｕｍｅｒｉｃａｌ  Ｃｏｎｔｒｏｌ；以下ＮＣという）装置に係り、特にこの装置により制御されるＮＣ工作機械の主軸の回転制御に関するものである。
【０００２】
【従来の技術】
従来のＮＣ装置における主軸制御では最高回転数は主軸駆動部と主軸モータの組合せで決定されるため、加工プログラム実行時においては上記組合せによる主軸システムの主軸最高回転数と最高回転数を制限値として記憶し、これと加工プログラムの主軸（Ｓ）指令値を比較し、制限値を超えるとプログラムエラーとして加工を中断すると共にエラーメッセージを表示していた。
【０００３】
また、加工プログラム上に指令される主軸回転数の値が小さい時や回転方向が逆の時は、切削加工ができないのにそのまま制御軸を移動させて加工しようとするため、工具を破損したり過負荷で誤差過大となって加工が中断したり駆動部を破壊したりすることがあった。
【０００４】
例えば、ミーリング加工で主軸回転数の桁を間違って少なく指令してしまったり回転方向を逆に指令してしまった時には切削がうまくできないのに軸移動が先行するため、工具を破損したり過負荷で誤差過大となったり駆動部を破壊したりすることがある。
【０００５】
更に他の例では、左ねじ用タップ加工では最初に主軸を左回転させる必要があるが、右回転を指令してしまった場合、タップが切り込めず、工具を破損したり過負荷で誤差過大となったり駆動部を破壊したりすることがある。
【０００６】
【発明が解決しようとする課題】
本発明は上記のような従来のＮＣ装置における主軸制御においては主軸回転数のチェックは主軸駆動装置と主軸モータの組合せで決まる主軸最高回転数のみで行っているため、それ以外の不正指令ではエラーチェックが適切に行われず、また、Ｓ指令を適切に修正すれば正常に加工できる場合でも不適切な回転数で加工するため、加工面が荒れたり工具を折損したりするなど加工能率が悪いという問題があった。
【０００７】
このような問題点の一部を解決しようとするものとして特開平８−３９３９３号公報に開示される技術が提案されているが、これは加工プログラムから送り速度指令（Ｆ指令）及び主軸回転数指令（Ｓ指令）を削除し、工具番号に対応して予め設定しておいた送り速度（Ｆ指令値）及び主軸回転数（Ｓ指令値）を読み出し、この値によって送り速度及び主軸回転数を制御するものである。工具には適正な回転数の使用範囲があり、加工内容によって上記範囲内で所望の回転数を指令して使用することが望ましい。しかしながら上記技術では工具毎に切削速度及び主軸回転数を一義的に固定しているので、同一材質のワークの同一加工には有効であるかも知れないが、実際の多品種の加工においては同一材質のワークだけを選択して加工する訳ではなく、また前述のように経験上加工部位に応じて主軸回転数を変えたりすることがあるので、一般的な使用に於いては設定が面倒である等の難点がある。
【０００８】
本発明は上述した従来の種々の課題を解決するためになされたもので、プログラマの意図する条件で加工ができるように加工プログラム中に所望する主軸回転数、回転方向等を指令するものにおいて、誤ってその加工プログラム中に意図しない不適切な指令をしても工具破損などによって加工が中断されることのない主軸制御機能を有する数値制御装置を提供しようとするものである。
【００１０】
【課題を解決するための手段】
本発明に係る主軸制御機能を有する数値制御装置は、工具毎の最高回転数と工具毎の最低回転数とを記憶する工具別主軸情報記憶手段と、加工プログラムの指令回転数と上記工具別主軸情報記憶手段に記憶された対応する工具の最高回転数・最低回転数とを比較し、上記指令回転数が最高回転数を超える指令である時には上記指令回転数を上記工具別主軸情報記憶手段に記憶された最高回転数に置き換えるとともに、上記指令回転数が最低回転数に達しない指令である時には上記指令回転数を上記工具別主軸情報記憶手段に記憶された最低回転数に置き換える主軸情報比較・修正手段とを備えたものである。
【００１８】
また本発明の主軸制御機能を有する数値制御装置は、上記数値制御装置において、工具別主軸情報記憶手段を、各工具に内蔵または付帯する記憶媒体で構成したものである。
【００２１】
【発明の実施の形態】
実施の形態１．
以下、本発明の実施の形態１について図１〜図３を用いて説明する。なおこの実施の形態１は、マシニングセンターに適用した場合の例である。
図１は本発明による一実施例のＮＣ装置の構成を示すブロック図であり、１はＣＰＵ、２はＣＰＵ１と各種デバイスや制御部を接続するためのデータやアドレスを指定するバス、３はＮＣシステムを制御するソフトウェア（システムプログラム）を記憶したＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）である。
【００２２】
４はＮＣシステムを制御するために必要なパラメータや加工プログラムなどの各種情報を記憶するためのＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、５はＮＣシステムへのデータを入力するためのキーボード及びメモリー（ＲＯＭ３及びＲＡＭ４）に記憶された情報を表示するための例えばＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）のような表示装置からなる設定・表示装置、６は設定・表示装置５を制御するための設定・表示装置制御部、７は加工プログラムを読み込むための例えば紙テープリーダのようなプログラム入力装置、８はプログラム入力装置７を制御するための入力制御部である。
【００２３】
９は上記加工プログラムを解析・演算する演算・解析部、１０は図示しない工作機械側の制御シーケンスを実行するためのシーケンス制御部、１１は加工プログラムで指令される工具指令により工具交換制御を行う工具交換制御部、１２は図示しない機械に付属する、複数の工具を選択可能に収納したマガジンである。
【００２４】
１３は工作機械テーブルの例えばＸ軸・Ｙ軸・Ｚ軸等の移動軸などに結合されたモータを制御する信号を生成するモータ制御部、１４は上記モータ制御部１３の出力信号を変調・電力増幅して、上記モータに印加するモータ駆動部、１５は上記各軸モータに該当する制御軸モータである。
【００２５】
１６は主軸制御部であり、上記プログラム入力装置から入力された加工プログラムに基づき、図示しない工作機械の主軸回転を制御し主軸に取り付けられた工具を回転させるための制御信号を生成し、１７は上記主軸モータ制御部１６の出力信号を変調・電力増幅して、上記主軸モータに印加する主軸モータ駆動部、１８は上記主軸に結合された主軸モータである。
【００２６】
１９は工具情報センサーであり、各工具に取り付けられた工具情報記録媒体に記録された工具に関する各種情報を読み取り、２０は上記工具情報センサー１９を作動させ、読み取った工具情報をバス２に乗せるためのセンサーＩ／Ｆ（Ｉｎｔｅｒｆａｃｅ）である。
【００２７】
次に図１の構成によるＮＣ装置の動作について図２、図３を参照しながら説明する。
ＮＣ装置はＲＯＭ３に記憶しているシステムプログラムをＣＰＵ１によって順次実行して行くことによってＮＣ機能を実現する。このＮＣ装置の仕様を決定するパラメータや機械の仕様にＮＣ装置を適合させるためのパラメータはＮＣ装置の出荷時やＮＣ工作機械システムの据え付け時に予め予めＲＡＭ４に書き込まれ、必要に応じて設定・表示装置制御部６を介してＲＯＭ３に記憶されたパラメータの内容を設定・表示装置に表示したり、設定・表示装置から修正したりする。
【００２８】
加工プログラムは、入力制御部８により制御されるプログラム入力装置７から例えば紙テープを読み取り、ＲＡＭ４の所定のエリアに記憶させておくか、設定・表示装置から手動で入力する加工プログラムを同様にＲＡＭ４の所定のエリアに記憶させておく。
【００２９】
図示しない機械操作盤上の自動起動スイッチを操作するとＲＯＭ３に記憶されたシステムプログラムの機能によって上記自動起動信号が読み取られ、上記ＣＰＵ１は演算・解析部９を機能させて上記ＲＡＭ４に記憶された加工プログラムを順次読み出し、命令やデータの解析及び演算を行う。
【００３０】
この演算結果をシーケンス制御部１０，モータ制御部１３，主軸制御部１６に出力する。また、加工プログラム中に状態保持データとして指令されるＭ３，Ｍ４，Ｍ５（主軸正転，逆転，停止）などのＭ（補助）指令やＳ（主軸）指令で指定された回転数及びＴ（工具）指令で与えられた工具番号はそれぞれＲＡＭ４中にあるモーダルレジスタにＭ，Ｓ，Ｔデータとして記憶され、必要に応じて各種処理部の処理プログラムから参照される。
【００３１】
上記シーケンス制御部１０，モータ制御部１３，主軸制御部１６に出力されたデータにより、上記シーケンス制御部１０は工具交換制御部１１に工具選択制御に必要なデータを入力し、上記工具交換制御部１１は工具交換に必要な演算を行ってマガジン１２を駆動し、必要な工具を選択する。
【００３２】
上記モータ制御部１３は上記演算・解析部９の出力データに基づき、各制御軸の移動量・速度を計算し、モータ駆動部１４に入力する。モータ駆動部１４は上記モータ制御部１３の出力信号を変調・電力増幅して、上記モータに印加する。これにより上記制御軸モータ１５は駆動され、各軸の上記制御軸モータ１５に結合された工作機械テーブルを動かし、テーブル上のワークと主軸に取り付けられた工具の相対位置を制御し、所望の加工を行う。
【００３３】
上記主軸制御部１６は上記演算・解析部９からのＭ３，Ｍ４，Ｍ５（主軸正転，逆転，停止）などのＭ（補助）指令やＳ（主軸）指令で指定された回転数に関する出力データ及びＴ（工具）指令データに基づき、主軸の回転・停止や主軸の回転数などを制御し、制御データを上記主軸駆動部１７に入力する。
【００３４】
上記主軸駆動部１７は上記主軸制御部１６の出力信号を変調・電力増幅して、上記主軸モータ１８に印加する。これにより上記主軸モータ１８は駆動され、主軸モータ１８に結合された工作機械の主軸を駆動し、主軸に取り付けられた工具を回転させてテーブル上のワークを切削する。このようにして加工プログラムで定義された所望の加工を自動的に行うことができる。
【００３５】
次に加工プログラムから主軸・工具に関する指令が入力された場合の本発明による一実施例の動作を図１乃至図３を用いて説明する。
図２は図１の本発明による一実施例のＮＣ装置内のＲＡＭ４の工具毎の主軸情報の記憶例を示す情報テーブルであり、この中には主軸駆動部と主軸モータの組合せで決定される主軸最高回転数（Ｓｍａｘ．）と、工具毎の最高回転数（ＳＴｍａｘ．），標準回転数（ＳＴｓｔｄ．），最低回転数（ＳＴｍｉｎ．），回転方向（ＳＴｄｉｒ．），指令修正可（ＳＴａｄｍ．）を記憶しており、外部からの修正もできるようになっている。
【００３６】
工具毎の最高回転数（ＳＴｍａｘ．）は主軸最高回転数以下であっても工具によっては適正な使用範囲の回転数があるため、その範囲での最高回転数を設定しておき、過大な主軸回転数が指令されてもこれを救済できるようにするためのものである。
【００３７】
標準回転数（ＳＴｓｔｄ．）は工具毎の最高回転数と同様に工具によっては適正な使用範囲の回転数があるため、その範囲内での標準的な回転数を設定しておき、不適切な主軸回転数が指令されてもこれを救済できるようにするためのものである。
【００３８】
最低回転数（ＳＴｍｉｎ．）は当該工具が切削可能となるために最低限必要な回転数であり、例えばＳ指令（主軸回転数）の桁数を間違って少なく指令した時にこれを救済できるようにするためのものである。
【００３９】
回転方向情報（ＳＴｄｉｒ．）は当該工具が計測ヘッドのように回転させてはいけない停止工具か、ミル・ドリル・タップ工具のように所定の方向に回転して初めて加工可能となる回転方向を示すものであり、例えば右ねじ用のタップであれば主軸は最初に右回転、左ねじ用のタップであれば主軸は最初に左回転しなければならず、これら工具回転方向の整合性をチェックし、不正指令を救済できるようにするためのものである。
【００４０】
指令修正可（ＳＴａｄｍ．）は上記加工プログラム上のＳ指令またはＭ指令と上記記憶された工具毎の主軸情報とを比較し、不適切なケースがあった場合に上記加工プログラム上のＳ指令値や主軸回転方向を修正解釈して処理してもよいことを示すフラグである。これは例えばユーザ専用の特殊な工具で指令通りに実行させたい場合や、試し加工などのように適正使用範囲以外での使用可能性を求める場合などに一旦エラー検出結果を表示し、オペレータによって修正不要に変更できるようにするために使用できる。
【００４１】
図３は主軸制御部１６内でのＳ指令の比較・修正に関する処理例を示すフローチャートであり、主軸に関するＭ指令（Ｍ３，Ｍ４）、Ｔ指令（Ｔｉ）、Ｓ指令についての工具毎の主軸情報と指令値との比較を行うとともに、不適切である場合には適宜Ｍ，Ｓ，Ｔの各種モーダルレジスタに記憶された指令値を修正する処理を行う。
【００４２】
一般に工具・主軸の制御はまず工具交換位置で工具交換を行い、続いて主軸回転数と主軸正転または主軸逆転を指令するという手順で行われることが多いが、ここでは上記順序とは無関係に常時、比較・修正処理を実行させている。
まず、ｓｔｅｐ１でＴ指令モーダルレジスタに記憶されたＴデータ（Ｔ番号）をチェックし、Ｔデータがなければ主軸を回転させる必要がないので処理を終了させる。
【００４３】
ｓｔｅｐ１でＴモーダルレジスタにＴデータ有りと判定された時はｓｔｅｐ２に進み、回転方向情報（ＳＴｉｄｉｒ．）を読み取り、回転を伴わない停止工具か否かをチェックする。ｓｔｅｐ２で停止工具であると判定されれば、主軸回転は必要ないのでｓｔｅｐ３に進みＭモーダルレジスタに主軸回転指令（Ｍ３，Ｍ４）があるか否かチェックする。
【００４４】
ｓｔｅｐ３でＭモーダルレジスタに主軸回転指令（Ｍ３，Ｍ４）が無かったときは正常なので以降の主軸情報のチェックは省略して処理を終了する。
【００４５】
ｓｔｅｐ３でＭモーダルレジスタに主軸回転指令（Ｍ３，Ｍ４）があった場合は例えば計測ヘッドを選択しているときに主軸を回転させようとしているのでｓｔｅｐ５に分岐し、当該工具番号の指令修正可ＳＴｉａｄｍ．を読み出し、修正可でなければｓｔｅｐ６に分岐し、エラーメッセージレジスタに「指令回転方向不正」を書き込み、不正指令として処理を終了する。
【００４６】
ｓｔｅｐ２で停止工具ではなく回転工具であると判定されると、 ｓｔｅｐ４に進み、回転方向のチェックを行う。
【００４７】
ｓｔｅｐ４では指令されたＴデータに対応する上記回転方向情報ＳＴｉｄｉｒ．を読み出し、指令されている（Ｍモーダルレジスタに記憶されている）主軸回転方向を決定するＭ指令（Ｍ３またはＭ４）との比較を行う。ここで工具固有の回転方向と指令回転方向が一致していればｓｔｅｐ８に分岐し、一致していなければｓｔｅｐ５に進む。
【００４８】
ｓｔｅｐ５では当該工具番号の指令修正可ＳＴｉａｄｍ．を読み出し、修正可でなければｓｔｅｐ６に分岐し、エラーメッセージレジスタに「指令回転方向不正」を書き込み、Ｓｔｅｐ２０に分岐する。Ｓｔｅｐ２０以降の処理については後述する。また、修正可であればｓｔｅｐ７に進み、回転方向を例えば指令がＭ３であればＭ４に、Ｍ４であればＭ３に修正してｓｔｅｐ８に進む。
【００４９】
ｓｔｅｐ８では指令された主軸回転数Ｓｎと上記主軸最高回転数Ｓｍａｘ．を比較する。この時Ｓｎ≦Ｓｍａｘ．であればｓｔｅｐ１１に進む。
【００５０】
Ｓｎ＞Ｓｍａｘ．であればｓｔｅｐ９に分岐し、当該工具番号の指令修正可ＳＴｉａｄｍ．を読み出し、修正可でなければｓｔｅｐ１０に分岐し、エラーメッセージレジスタに「最高回転数超過」を書き込み、 Ｓｔｅｐ２０に分岐する。
【００５１】
Ｓｔｅｐ２０以降の処理については後述する。また、修正可であればｓｔｅｐ１１に進み、Ｓ指令値の桁数等を間違って指令されたとして解釈し、指定された工具の標準回転数標準回転数ＳＴｉｓｔｄ．を読み出し、修正指令値としてＳ指令値モーダルレジスタに記憶させてｓｔｅｐ１２に進む。
【００５２】
ｓｔｅｐ１２では指令されている（Ｓモーダルレジスタに記憶されている）主軸回転数Ｓｎを読み出し、Ｓｎ＞ＳＴｉｍａｘ．でなければｓｔｅｐ１６に分岐し、Ｓｎ＞ＳＴｉｍａｘ．であればｓｔｅｐ１３に進む。
【００５３】
ｓｔｅｐ１３では当該工具番号の指令修正可ＳＴｉａｄｍ．を読み出し、修正可でなけばｓｔｅｐ１４に分岐し、エラーメッセージレジスタに「工具指定回転数超過」を書き込み、 Ｓｔｅｐ２０に分岐する。 Ｓｔｅｐ２０以降の処理については後述する。また、修正可であればｓｔｅｐ１４に進み、最高回転数ＳＴｉｍａｘ．を読み出し、修正指令値としてＳ指令値モーダルレジスタに記憶させてｓｔｅｐ１６に進む。
【００５４】
ｓｔｅｐ１６では指令されている（Ｓモーダルレジスタに記憶されている）主軸回転数Ｓｎをチェックし、Ｓｎ＜ＳＴｉｍｉｎ．でなければ処理を終了し、Ｓｎ＜ＳＴｉｍｉｎ ．であればｓｔｅｐ１７に進む。
【００５５】
ｓｔｅｐ１７では当該工具番号の指令修正可ＳＴｉａｄｍ．を読み出し、修正可でなけばｓｔｅｐ１８に分岐し、エラーメッセージレジスタに「工具指定回転数不足」を書き込み、 Ｓｔｅｐ２０に分岐する。 Ｓｔｅｐ２０以降の処理については後述する。また、修正可であればｓｔｅｐ１９に進み、最低回転数ＳＴｉｍｉｎ．を読み出し、修正指令値としてＳ指令値モーダルレジスタに記憶させて処理を終了する。
【００５６】
Ｓｔｅｐ２０には上記Ｓｔｅｐ５，Ｓｔｅｐ９，Ｓｔｅｐ１３，Ｓｔｅｐ１７の修正可否の判別で主軸情報を参照した結果修正不可と判断された場合に各々所定のエラーメッセージをエラーメッセージレジスタに書き込んだ後に分岐して来るが、Ｓｔｅｐ２０ではオペレータが設定・表示装置５に表示された上記エラーメッセージを見て加工中断の可否を判断し、加工プログラムに指令された指令通りに実行させたい場合には復活スイッチを押す。
【００５７】
これによってＳｔｅｐ２１でエラーメッセージレジスタに書き込まれたエラーメッセージはクリアされ、加工プログラム上にはエラーが無かったものとして加工プログラムはＳｎの値により継続される。
【００５８】
以上のようにしてＴ指令と主軸回転方向及び主軸回転数指令の整合性を予め記憶した工具毎の主軸情報とチェックすると共に不適切な指令であれば更に指令修正可か否かをチェックし、指令を修正できる場合は上記記憶された情報から適切な値を選択し、その値で修正することにより正常に加工を続行することができる。
【００５９】
また、修正すると不都合が生じる場合には指令修正不可としておくことにより不適切な指令であれば所定のエラーメッセージを表示して加工を中断し、新たな指示を待たせることができる。
【００６０】
尚、上記実施例では指令修正不可の時にのみエラーメッセージを表示しているが、指令修正可のフラグにより指令を修正した時にその旨のメッセージをワーニング（警告）としてオペレータに報知するために出力することも容易にできる。
【００６１】
実施の形態２．
上記実施の形態１では工具毎の最高回転数等の設定は１種類の場合を説明したが、被加工物の材質によっては別の値の設定が必要なこともあり、これに対処するために必要に応じて材質対応で種類を増やしたりそこから一つを選択することも容易に実現できる。
【００６２】
また上記実施の形態１では工具毎の主軸情報はＮＣ装置内のメモリーに記憶された情報を用いたが、図１に記された構成要件工具情報センサー１９及びセンサーＩ／Ｆ２０を制御して工具に内蔵させた記憶手段に書き込まれた上記主軸情報を読み取り、これによって判別・修正制御を行えば上記ＮＣ装置内のメモリー容量は少なくてすみ、工具取り替えによる情報の更新も不要とすることができる。
【００６３】
尚、上記実施の形態１では便宜上マシニングセンターに適用した例で説明したが、旋盤に於ける回転工具の制御やバイトによる加工での周速一定制御のための主軸回転数の制御にも適用できることは言うまでもない。
【００６４】
上記実施の形態１では主軸最高回転数，工具別の最高回転数，標準回転数，最低回転数，回転方向の主軸情報を記憶したものを示したが、上記各種情報の内必要な情報のみに限定して記憶させて制御してもよい。
【００６５】
【発明の効果】
以上のように本発明によれば、各工具毎に最高回転数と最低回転数とを設定し、工具の最高回転数を超える回転数が指定された時には上記最高回転数でクランプするようにするとともに、工具の最低回転数に達しない回転数が指定された時には上記最低回転数でクランプするようにしたので、不適切な回転数指令をしても工具折損などによって加工が中断されることが無く、生産効率が向上するという効果がある。
【００７３】
また本発明によれば、上記設定された工具毎の情報は各工具に内蔵または付帯する記憶媒体に記憶された主軸等の情報を工具情報センサーで読み取り、これによって判別・修正制御を行うようにしたので、ＮＣ装置内のメモリー容量は少なくてすみ、工具取り替えによる情報の更新も不要にできるという効果がある。
【図面の簡単な説明】
【図１】  本発明の数値制御装置の一構成例を示すブロック図である。
【図２】  本発明による数値制御装置に記憶した工具毎の主軸情報例を示す図である。
【図３】  本発明による主軸情報比較・修正制御のフローチャートである。
【符号の説明】
１  ＣＰＵ、２  メモリー（ＲＡＭ）、６  設定・表示制御部、９  演算・解析部、１０ シーケンス制御部、１１ 工具交換制御部、１２  マガジン、１６  主軸制御部、１７  主軸駆動部、１８  主軸モータ、１９  工具情報センサー、２０ センサーＩ／Ｆ
【図１】
0003967410.tif 000002
【図２】
0003967410.tif 000003
【図３】
0003967410.tif 000004