(57)【特許請求の範囲】
【請求項１】
ワークの加工のための工具を移動させるモータを備える工作機械において、加工プログラムに基づいて前記モータの駆動を制御する数値制御装置であって、
前記モータへの位置指令を生成する位置指令生成部と、
前記加工における異常の発生があったことを示すマークの加工のためのマーク指令を生成するマーク指令生成部と、を有し、
前記マーク指令生成部は、前記加工による前記工具の移動経路の情報を逐次記憶し、前記異常が検知されたことによるアラームの発生があったとき、前記移動経路を前記加工時とは逆方向へ前記工具を移動させるとともに、前記加工時に対し工具軸方向について前記工具の位置が補正された移動指令を、前記マーク指令として生成し、
前記位置指令生成部は、前記マーク指令に基づく前記位置指令を生成することを特徴とする数値制御装置。
【請求項２】
前記マーク指令生成部は、前記アラームの発生があった時点の位置から前記逆方向へ、一定の距離、あるいは一定の時間の移動に相当する距離だけさかのぼった位置まで前記工具を移動させる前記マーク指令を生成することを特徴とする請求項１に記載の数値制御装置。
【請求項３】
前記マーク指令生成部は、前記加工時に選択されている前記工具の工具半径と、前記マークのうち前記移動経路の方向に対し垂直な方向の線幅とに基づいて、前記工具の前記工具軸方向におけるシフト量を調整することを特徴とする請求項１または２に記載の数値制御装置。
【請求項４】
前記ワークの内側の加工において使用される前記工具が選択されている間、前記マーク指令生成部は、前記移動経路の情報の記憶を停止し、かつ前記アラームの発生があったとき、過去に記憶された前記移動経路を基に、前記マーク指令を生成することを特徴とする請求項１から３のいずれか一つに記載の数値制御装置。
【請求項５】
前記位置指令に反映させる動作モードの選択を制御するモード制御部をさらに有し、
前記動作モードは、
前記加工プログラムの解析による解析データに応じた加工のための通常加工モードと、
前記アラームの発生があった時点から、前記アラームを発生させる原因となった前記異常が解消されるまで、前記工具の移動を停止させるための移動停止モードと、
前記移動停止モードから前記通常加工モードへの切り換えの際に実行され、前記マークの加工のための駆動を前記モータに行わせるマーク加工モードと、を含むことを特徴とする請求項１から４のいずれか一つに記載の数値制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、工作機械を数値制御（ＮＣ：Ｎｕｍｅｒｉｃａｌ  Ｃｏｎｔｒｏｌ）する数値制御装置に関し、特に、加工途中の異常の発生によって生じた不良ワークを容易に認識可能とするための数値制御装置に関する。
【背景技術】
【０００２】
工作機械に搭載される数値制御装置は、工作機械の動作や状態における異常の発生を常時監視する。異常の発生を検知した場合、数値制御装置は、表示や音声などによって警報（アラーム）を発生させるとともに、工作機械の駆動を停止させる。工作機械の駆動を停止させることで、数値制御装置は、工作機械の誤作動や、誤作動による工作機械等の破損を防止する。【０００３】
工作機械の異常は、種々の要因によって引き起こされる。異常の要因としては、例えば、潤滑不良によってモータの駆動負荷が過大となったこと、工具の破損によって切削負荷が過大となったこと、指令位置およびモータ検出位置の間の誤差が過大となったことなどが挙げられる。アラームとしては、定期的に起こり得る事象によるもののほか、例えば切りくずの除去の状態に応じてアラームが発せられるように、不定期的かつ再現性の低い事象によるものも存在する。【０００４】
工作機械でアラームが発生すると、アラームの内容が確認された後、アラームに至った要因を解消させる復旧作業が実施される。復旧作業を終えると、工作機械は加工を再開させる。通常、アラームの内容の確認や復旧作業は、ユーザやメンテナンス要員などが行う。【０００５】
復旧作業は、人手を介さず自動で実施可能な場合もある。例えば、特許文献１には、異常の内容に応じた復旧動作プログラムを使用することで工作機械の自動復旧を可能とする数値制御装置が提案されている。特許文献２には、ＮＣプログラム指令による自動運転の中断があったときに、ＮＣプログラム指令によって実行した動作の内容に応じて復旧手順を自動で生成するための制御方法が提案されている。【０００６】
復旧作業の自動化が可能であれば、復旧に要する時間の短縮や、復旧のための手間を省くことができる。工作機械は、アラームが発せられたことによる中断があっても、人手を介さず後続のワークの加工を早期に再開することができる。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００８−２３４２７８号公報
【特許文献２】特開２０１１−１５８９７９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
例えば仕上げ加工などのように、ワークの最終形状に影響を及ぼす加工の途中でアラームが発生した場合、加工面に傷がつくなどによる不良ワークを生じさせることがある。この場合、復旧作業を終えてから、アラームが発生した時点以降の加工を直ちに再開するより、加工を一旦中止し、不良ワークを排出したほうが良い場合もある。例えば、タップ加工が途中で中断された場合、タップ加工の精度は著しく劣化することが多いにも関わらず仕上がり形状からは加工不良を判断しにくいため、タップ加工ではアラーム発生時のワークを不良ワークとして排出することが望ましい。【０００９】
工作機械は、ベルトコンベア、ローダ、パーツキャッチャー、シュータ、ロボットハンドなどの、加工済みのワークを機外へ自動的に排出あるいは回収するための移送装置が併設されることがある。これらの移送装置によって回収されたワークには、正常に加工された良品と、加工に異常があった不良品とが混在することとなる。良品および不良品の選別は、人手による検品作業や、ビジョン、三次元測定器などの機器による計測によって行われる。加工面に傷がついたことによる不良ワークの場合、傷が目立たないほど、不良ワークを選別することが困難である。例えば、仕上げ加工の途中でのアラーム発生があった場合、不良ワークを一目で選別することが困難であることが問題となる。【００１０】
不良ワークの容易な選別を可能とするために、加工中に異常が発生したワークに対し、不良ワークであることを識別するためのマークを付すことがある。ワークの仕上がり形状は加工プログラムごとに異なることとなるため、マークを付すための指令は、加工プログラムごとに用意しなければならないこととなる。【００１１】
さらに、加工の進行段階に応じてワークの形状は随時変化することから、マークを付すための指令は、加工の進行段階ごとに用意しなければならないこととなる。このことから、加工中に異常が発生したワークにマークを付すために、煩雑な加工プログラムの準備が必要となるとなることが問題となる。【００１２】
本発明は、上記に鑑みてなされたものであって、加工中に異常が発生したワークの識別のためのマークを簡易な加工プログラムによって加工可能とし、異常の発生によって生じた不良ワークを容易に選別可能とする数値制御装置を得ることを目的とする。
【課題を解決するための手段】
【００１３】
上述した課題を解決し、目的を達成するために、本発明は、ワークの加工のための工具を移動させるモータを備える工作機械において、加工プログラムに基づいて前記モータの駆動を制御する数値制御装置であって、前記モータへの位置指令を生成する位置指令生成部と、前記加工における異常の発生があったことを示すマークの加工のためのマーク指令を生成するマーク指令生成部と、を有し、前記マーク指令生成部は、前記加工による前記工具の移動経路の情報を逐次記憶し、前記異常が検知されたことによるアラームの発生があったとき、前記移動経路を前記加工時とは逆方向へ前記工具を移動させるとともに、前記加工時に対し工具軸方向について前記工具の位置が補正された移動指令を、前記マーク指令として生成し、前記位置指令生成部は、前記マーク指令に基づく前記位置指令を生成することを特徴とする。
【発明の効果】
【００１４】
本発明にかかる数値制御装置は、逐次記憶された移動経路をさかのぼった位置にマークを加工することで、不良ワークの容易な選別を可能とする。また、数値制御装置は、煩雑な加工プログラムを準備しなくても、ワークの形状や加工の進行段階に関わらずマークを加工することができる。これにより、数値制御装置は、加工中に異常が発生したワークの識別のためのマークを簡易な加工プログラムによって加工可能とし、異常の発生によって生じた不良ワークを容易に選別できるという効果を奏する。
【図面の簡単な説明】
【００１５】
【図１】図１は、本発明の実施の形態１にかかる数値制御装置を備える工作機械の全体構成を示す図である。
【図２】図２は、数値制御装置の全体構成と、モータの駆動のための構成とを示すブロック図である。
【図３】図３は、直線状の移動経路に沿って形成されたマークを示す図である。
【図４】図４は、円弧状の移動経路に沿って形成されたマークを示す図である。
【図５】図５は、加工プログラムの例を示す図である。
【図６】図６は、加工プログラムに記述された移動経路と、アラームが発生した位置との一例を示す図である。
【図７】図７は、モード制御部の動作手順を示すフローチャートである。
【図８】図８は、シフト量の算出について説明する図である。
【図９】図９は、ワークに外径旋削加工を行っている状態を示す図である。
【図１０】図１０は、ワークの外径部分に荒れ面を加工している状態を示す図である。
【図１１】図１１は、ワークに端面旋削加工を行っている状態を示す図である。
【図１２】図１２は、ワークの端面部分に荒れ面を加工している状態を示す図である。
【図１３】図１３は、ワークに内径旋削加工を行っている状態を示す図である。
【発明を実施するための形態】
【００１６】
以下に、本発明にかかる数値制御装置の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００１７】
実施の形態１．
図１は、本発明の実施の形態１にかかる数値制御装置を備える工作機械の全体構成を示す図である。工作機械は、工作機械本体および数値制御装置を備える。工作機械本体は、ワーク１００が載置されるステージ１０１と、ワーク１００の加工のための工具１０２を移動させるモータとを備える。工作機械は、互いに垂直な３つの移動軸であるＸ軸、Ｙ軸およびＺ軸についての各モータを備える。数値制御装置は、加工プログラムに基づいて各モータの駆動を制御する。
【００１８】
図２は、数値制御装置の全体構成と、モータの駆動のための構成とを示すブロック図である。数値制御装置１は、加工プログラム２に応じた動作を工作機械に行わせるように、サーボ制御部６へ位置指令２０を出力する。
【００１９】
サーボ制御部６は、位置指令生成部１２からの位置指令２０と、位置検出器８から出力される検出位置情報２２とを基に、サーボモータ７へ電圧指令２３を出力する。位置検出器８は、サーボモータ７の位置を検出し、検出された位置を検出位置情報２２として出力する。サーボ制御部６は、位置指令２０によって指令される位置に、検出位置情報２２が示す位置が追従するように、サーボモータ７のフィードバック制御およびフィードフォワード制御を実施する。サーボモータ７は、サーボ制御部６からの電圧指令２３に応じて駆動する。
【００２０】
サーボ制御部６、サーボモータ７および位置検出器８には、それぞれセンサ９が取り付けられている。センサ９は、加工の状態を検出し、検出信号を出力する。
【００２１】
数値制御装置１に接続されている操作スイッチ５は、工作機械を操作するためのスイッチである。操作スイッチ５は、例えば、サイクルスタートボタン、非常停止スイッチなどの、種々のスイッチを備える。サイクルスタートボタンは、加工プログラム２に記述されている動作を開始させるためのスイッチである。非常停止スイッチは、工作機械の動作を強制的に停止させるためのスイッチである。
【００２２】
加工プログラム２は、例えば、ＮＣプログラムやモーションプログラムである。加工プログラム２は、Ｇコード、Ｍコード、Ｔコードと呼ばれる指令コードを組み合わせて記述されたプログラムである。加工プログラム２の移動指令として、位置決め指令（Ｇ００）、切削指令（Ｇ０１）、円弧指令（Ｇ０２／０３）などがある。また、移動指令として、座標系を指定する指令（Ｇ５４など）、座標値を絶対値あるいは相対値で指定するための指令（Ｇ９０／Ｇ９１）などがある。なお、Ｇ１に続くＸ，ＹおよびＺのアドレスは、ブロックの終点の座標を指定するものである。ブロックの始点位置から終点位置までの経路にて工具１０２を移動させるための送り速度は、Ｆアドレスによって指定される。
【００２３】
このほか、Ｍコードとして、主軸の回転（Ｍ３）および停止（Ｍ５）を指定する指令、工具１０２の交換の指令（Ｍ６）などがある。Ｍ６に、工具番号を選択するＴコードを併用することで、工具番号によって選択された工具１０２への交換を指示することができる。
【００２４】
パラメータ３は、マークの形状および位置を規定するための設定値である。このマークは、加工における異常の発生があったことを示すものであり、ワーク１００が不良ワークであることを示すものである。パラメータ３は、マークの加工形状の情報と、マークの加工位置の情報とを含む。加工形状の情報は、マークの種類、大きさ、線幅などの情報とする。加工位置の情報は、マークを加工する位置に関する情報とする。工具データ４は、加工に使用される工具１０２についての情報とする。工具データ４は、例えば、工具１０２の工具半径のデータを含む。
【００２５】
数値制御装置１は、プログラム解析部１０、マーク指令生成部１１、位置指令生成部１２、モード制御部１３および異常状態判定部１４を備える。
【００２６】
プログラム解析部１０は、数値制御装置１へ入力される加工プログラム２を解析する。プログラム解析部１０は、加工プログラム２に記述されている指令を一行ずつ順次読み込み、解析データ１７を出力する。解析データ１７は、例えば、ブロックごとの始点位置、終点位置、送り速度などの移動に関する情報や、使用する工具１０２を表す番号などの情報を含む。
【００２７】
位置指令生成部１２は、プログラム解析部１０からの解析データ１７を基に、各モータへの位置指令２０を生成する。マーク指令生成部１１は、パラメータ３および工具データ４を基に、マーク指令１８を生成する。マーク指令１８は、加工における異常の発生があったことを示すマークの加工のための指令である。マーク指令生成部１１は、記憶部１５を備える。記憶部１５は、加工による工具１０２の移動経路の情報を逐次記憶する。
【００２８】
異常状態判定部１４は、サーボ制御部６、サーボモータ７および位置検出器８に取り付けられているセンサ９からの検出信号を基に、工作機械の動作や状態に異常が発生しているか否かを判定する。異常状態判定部１４は、異常の有無の判定結果を、状態信号２１として出力する。また、異常状態判定部１４は、異常の発生を検知したときに、不図示の表示手段や音声発生手段へアラームの発生を指示する。
【００２９】
例えば、異常状態判定部１４には、センサ９からの検出信号に対する閾値があらかじめ設定されている。異常状態判定部１４は、検出信号と閾値とを比較した結果を基に、異常の有無を判定する。なお、検出信号を得るためのセンサ９は、サーボ制御部６、サーボモータ７および位置検出器８に取り付けられる場合に限られない。センサ９は、工作機械の動作や状態を検出可能であれば、いずれの構成あるいは位置に取り付けられたものであっても良い。
【００３０】
数値制御装置１は、異常状態判定部１４での判定と操作スイッチ５による操作とに応じて、解析データ１７に基づく移動の継続と停止、マーク指令１８に基づく移動のいずれかを選択し、選択内容を位置指令２０に反映させる。
【００３１】
モード制御部１３は、位置指令２０に反映させる動作モードの選択を制御する。モード制御部１３は、操作スイッチ５の操作、および異常状態判定部１４からの状態信号２１に応じて、動作モード切り換え信号１９を生成する。動作モード切り換え信号１９は、位置指令生成部１２の動作モードを切り換えるための信号である。モード制御部１３は、位置指令生成部１２へ動作モード切り換え信号１９を出力する。モード制御部１３は、記憶部１６を備える。記憶部１６は、前回の処理周期における動作モードを保持する。
【００３２】
位置指令生成部１２は、モード制御部１３からの動作モード切り換え信号１９に応じて位置指令２０に反映させる動作モードを切り換える。位置指令生成部１２は、動作モードとして、例えば、通常加工モード、移動停止モードおよびマーク加工モードへの切り換えを可能とする。
【００３３】
通常加工モードは、プログラム解析部１０からの解析データ１７に基づいて位置指令２０を生成する動作モードである。通常加工モードにおいて、位置指令生成部１２は、解析データ１７に応じた時々刻々の位置指令２０を出力する。サーボ制御部６への位置指令２０の入力に応じて、サーボモータ７は、通常の加工のための駆動を行う。
【００３４】
移動停止モードは、異常の検知によるアラームの発生があった時点から、アラームを発生させる原因となった異常が解消されるまでにおいて継続される動作モードである。移動停止モードでは、位置指令生成部１２は、サーボ制御部６への位置指令２０の出力を停止させる。サーボ制御部６への位置指令２０の入力が停止されたことで、サーボモータ７は、駆動を停止する。工具１０２は、移動を停止させる。
【００３５】
マーク加工モードは、移動停止モードから通常加工モードへ切り換えられる際に実行される動作モードである。マーク加工モードにおいて、位置指令生成部１２は、マーク指令１８に応じた時々刻々の位置指令２０を出力する。サーボ制御部６への位置指令２０の入力に応じて、サーボモータ７は、マークの加工のための駆動を行う。
【００３６】
図３および図４は、ワークに付されたマークの例を示す図である。本実施の形態において、マーク３０の形状は、加工による工具１０２の移動経路１０４に沿う矢印形状とする。図３には、直線状の移動経路１０４に沿って形成されたマーク３０を示す。図４には、円弧状の移動経路１０４に沿って形成されたマーク３０を示す。
【００３７】
本実施の形態では、マーク３０は、アラームが発生した位置１０５から、移動経路１０４を加工時とは逆方向へ戻った位置を基準として加工されるものとする。パラメータ３には、加工形状の情報として、矢印の矢尻部分の先端からシャフト部分の端までの全体の長さＡＬ１、矢尻部分の長さＡＬ２、矢尻部分の最大幅ＡＷ２、シャフト部分の線幅ＡＷ１を示す各数値が含まれる。ここで、長さとは、移動経路１０４に沿う方向の長さをいうものとする。幅とは、移動経路１０４に垂直な方向の幅をいうものとする。パラメータ３には、加工位置の情報として、位置１０５と矢尻部分の先端との間の距離ΔＤを示す数値が含まれる。
【００３８】
図３に示すマーク３０の場合、パラメータ３は、例えば、ＡＬ１＝８ｍｍ，ＡＬ２＝３ｍｍ，ＡＷ１＝０．５ｍｍ，ＡＷ２＝１．５ｍｍおよびΔＤ＝５ｍｍと設定されている。
【００３９】
ΔＤは、アラームの発生があった時点からマーク３０の加工を開始するまでにおいて工具１０２を移動させる距離に相当する。パラメータ３には、アラームの発生があった時点からマーク３０の加工を開始するまでの工具１０２の移動について、一定の距離ΔＤが設定されている。かかる加工位置の情報に応じて、マーク指令生成部１１は、位置１０５から逆方向へ一定の距離だけさかのぼった位置まで工具１０２を移動させるマーク指令１８を生成する。
【００４０】
このほか、マーク指令生成部１１は、位置１０５から逆方向へ、一定の時間の移動に相当する距離だけさかのぼった位置まで工具１０２を移動させるマーク指令１８を生成することとしても良い。この場合、パラメータ３には、一定の距離ΔＤに代えて、アラームの発生があった時点からマーク３０の加工を開始するまでの一定の時間が設定される。
【００４１】
マーク指令生成部１１は、一定の距離ΔＤと一定の時間との双方を、加工位置の情報として使用することとしても良い。さらに、マーク指令生成部１１は、一定の距離ΔＤと一定の時間とのいずれかを選択し、選択した情報を加工位置の情報として使用することとしても良い。マーク指令生成部１１は、例えば、工具１０２の送り速度に応じて、一定の距離ΔＤと一定の時間とのいずれかを選択する。
【００４２】
本実施の形態によると、数値制御装置１は、加工プログラム２による移動経路１０４が直線状である場合に限られず、さまざまな形状の移動経路１０４に対応して、マーク３０の加工のための制御を行うことができる。数値制御装置１は、移動経路１０４が直線状である場合のほか、図４に示す円弧状である場合などのいずれの場合も、パラメータ３に含まれる加工形状の同じ情報および加工位置の同じ情報を基に、マーク指令１８を生成することができる。
【００４３】
図３に示す場合と、加工形状の同じ情報および加工位置の同じ情報を使用することで、図４に示すマーク３０も、ＡＬ１＝８ｍｍ，ＡＬ２＝３ｍｍ，ＡＷ１＝０．５ｍｍ，ＡＷ２＝１．５ｍｍおよびΔＤ＝５ｍｍとなる。このように、移動経路１０４がいずれの形状である場合も、常に、移動経路１０４に沿って同じ長さを持ち、かつ同じ幅を持つマーク３０が得られる。また、移動経路１０４がいずれの形状である場合も、常に、位置１０５から移動経路１０４に沿って同じ距離だけさかのぼった位置に、マーク３０が加工される。
【００４４】
本実施の形態の数値制御装置１によって、工作機械は、位置１０５へ矢尻部分の先端が向けられたマーク３０を生成する。マーク３０は、位置１０５から移動経路１０４を所定距離だけさかのぼった位置が矢尻部分の先端となるように加工される。なお、マーク３０の形状は、矢印形状である場合に限られない。マーク３０は、容易に視認可能であればいずれの形状としても良い。
【００４５】
次に、プログラム解析部１０の動作について説明する。図５は、加工プログラムの例を示す図である。ここでは、加工プログラム２の開始時点で機械原点への位置決めがなされた状態で、図５に示す加工プログラムを実行した場合を例として、プログラム解析部１０の動作を説明する。
【００４６】
プログラム解析部１０は、まずＮ１ブロックの指令を読み込む。プログラム解析部１０は、現在位置である機械原点（始点）から、Ｇ５４として規定される座標系におけるＸ０．Ｙ０．Ｚ０の位置（終点）まで、送り速度Ｆ３０００での移動を行う指令であることを認識する。プログラム解析部１０は、始点座標値、終点座標値、送り速度、補間タイプなどの情報を、Ｎ１ブロックの解析データ１７として出力する。Ｎ１ブロックの終点座標値は、ワーク座標系の原点（Ｘ０．Ｙ０．Ｚ０）とされる。
【００４７】
次に、プログラム解析部１０は、Ｎ２ブロックの指令を読み込む。プログラム解析部１０は、ワーク座標系の原点（Ｘ０．Ｙ０．Ｚ０）から、Ｘ５０．Ｙ０．Ｚ０の位置まで、Ｆ３０００の速度での移動を行う指令であることを認識する。プログラム解析部１０は、始点座標値、終点座標値、送り速度、補間タイプなどの情報を、Ｎ２ブロックの解析データ１７として出力する。Ｎ３ブロック以降の指令についても同様の処理を行うことで、プログラム解析部１０は、ブロックごとの解析データ１７を出力する。
【００４８】
次に、モード制御部の動作について説明する。図７は、モード制御部の動作手順を示すフローチャートである。モード制御部１３は、工作機械の電源を入れたときの動作モードとして、通常加工モードを選択する。モード制御部１３は、解析データ１７に応じた処理を実行する周期ごとに、図７に示す手順にしたがい処理を実施する。
【００４９】
ステップＳ１において、モード制御部１３は、異常状態判定部１４から入力される状態信号２１から、異常の発生の有無を判断する。
【００５０】
異常が発生していないと判断した場合（ステップＳ１、Ｎｏ）、モード制御部１３は、記憶部１６に記録されている前回動作モードを読み出す。前回動作モードは、前回の処理周期において選択されている動作モードとする。モード制御部１３は、ステップＳ２において、前回動作モードが通常加工モードであるか否かを判断する。
【００５１】
前回動作モードが通常加工モードであると判断した場合（ステップＳ２、Ｙｅｓ）、モード制御部１３は、ステップＳ４において、通常加工モードを選択する。モード制御部１３は、ステップＳ４において選択された動作モードである通常加工モードを、前回動作モードとして記憶部１６に記憶させる（ステップＳ８）。
【００５２】
ステップＳ２およびＳ４を経る手順は、正常な加工がなされている場合に行われる処理である。モード制御部１３が通常加工モードを選択する間、位置指令生成部１２は、解析データ１７に応じた位置指令２０を出力する。
【００５３】
一方、ステップＳ１において異常が発生していると判断した場合（ステップＳ１、Ｙｅｓ）、モード制御部１３は、ステップＳ３において、移動停止モードを選択する。モード制御部１３は、ステップＳ３において選択された動作モードである移動停止モードを、前回動作モードとして記憶部１６に記憶させる（ステップＳ８）。
【００５４】
ステップＳ３を経る手順は、異常が検知されたときに行われる処理である。これにより、モード制御部１３は、動作モードの選択を通常加工モードから移動停止モードへ切り換える。モード制御部１３は、通常加工モードから移動停止モードへの切り換えのための動作モード切り換え信号１９を出力する。
【００５５】
モード制御部１３は、ステップＳ１において異常が発生していないと判断されるまで、すなわち移動停止モードを選択する要因となった異常が解消されるまで、移動停止モードを継続する。モード制御部１３が移動停止モードを選択する間、位置指令生成部１２は、サーボ制御部６への位置指令２０の出力を停止させる。
【００５６】
また、ステップＳ２において、前回動作モードが通常加工モードではないと判断した場合（ステップＳ２、Ｎｏ）、モード制御部１３は、ステップＳ５において、マーク加工モードを選択する。動作モードの選択が移動停止モードからマーク加工モードへ切り換えとなる場合、モード制御部１３は、移動停止モードからマーク加工モードへの切り換えのための動作モード切り換え信号１９を出力する。
【００５７】
モード制御部１３は、ステップＳ６において、マーク３０の加工が完了したか否かを判断する。マーク３０の加工が完了していないと判断した場合（ステップＳ６、Ｎｏ）、モード制御部１３は、ステップＳ５において選択された動作モードであるマーク加工モードを、前回動作モードとして記憶部１６に記憶させる（ステップＳ８）。
【００５８】
マーク３０の加工が完了したと判断した場合（ステップＳ６、Ｙｅｓ）、モード制御部１３は、動作モードの選択を、マーク加工モードから通常加工モードへ切り換える（ステップＳ７）。モード制御部１３は、マーク加工モードから通常加工モードへの切り換えのための動作モード切り換え信号１９を出力する。モード制御部１３は、ステップＳ７における切り換え後の動作モードである通常加工モードを、前回動作モードとして記憶部１６に記憶させる（ステップＳ８）。
【００５９】
ステップＳ２，Ｓ５およびＳ６を経る手順は、正常を示す状態信号２１が入力される場合であって前回動作モードが通常加工モード以外の動作モードである場合に行われる処理である。かかる処理は、異常が解消されてから、通常の加工の再開に先立ってマーク３０を加工する場合に行われる。さらに、ステップＳ６およびＳ７を経る手順は、マーク３０の加工が完了し通常の加工を再開する場合に行われる処理である。各動作モードのいずれかが選択されてから、ステップＳ８において前回動作モードを記憶部１６に記憶すると、モード制御部１３は、現在の処理周期における処理を終了する。
【００６０】
次に、加工プログラム２の実行中のアラームの発生による、マーク３０の加工の詳細について説明する。図６は、加工プログラムに記述された移動経路と、アラームが発生した位置との一例を示す図である。
【００６１】
数値制御装置１は、加工プログラム２に応じた加工を開始した時点からアラームが発生するまでの間、通常加工モードによる制御を行う。通常加工モードでは、数値制御装置１は、ブロックごとの指令の解析から位置指令２０の出力までの動作を繰り返す。記憶部１５は、解析データ１７に応じて、移動経路１０４のデータを逐次記憶する。
【００６２】
記憶部１５は、位置指令２０が示す最新の位置を基点として、少なくともパラメータ３に加工位置の情報として設定されている距離分の移動経路１０４を記憶していれば良い。記憶部１５は、各ブロックにおける工具１０２の移動距離の和が、パラメータ３に設定されている距離、例えばΔＤより長くなるように、順次移動経路１０４のデータを格納する。記憶部１５は、通常加工モードにおいて、アラームが発生するまでの間、移動経路１０４のデータの更新を継続する。
【００６３】
アラームが発生すると、モード制御部１３は、動作モードを通常加工モードから移動停止モードへ切り換えるための動作モード切り換え信号１９を生成する。モード制御部１３からの動作モード切り換え信号１９を受けて、位置指令生成部１２は、位置指令２０の出力を停止する。記憶部１５は、移動経路１０４のデータの更新を停止する。モード制御部１３は、アラームの要因となった異常が解消されるまで、移動停止モードを維持する。
【００６４】
異常が解消されると、モード制御部１３は、動作モードを移動停止モードからマーク加工モードへ切り換えるための動作モード切り換え信号１９を生成する。モード制御部１３からの動作モード切り換え信号１９を受けて、位置指令生成部１２は、マーク指令生成部１１からのマーク指令１８に応じた位置指令２０を生成する。
【００６５】
具体例として、図５に示す加工プログラム２のブロックＮ５７の途中でアラームが発生した場合におけるマーク３０の加工について説明する。数値制御装置１は、アラームが発生した位置１０５から移動経路１０４を所定の距離ΔＤだけさかのぼった位置にマーク３０を加工するための制御を実施する。ここでは、図３に示すマーク３０を加工する場合について説明する。
【００６６】
例えば図６に示す移動経路１０４のうち、Ｘ３５．Ｙ５．１．Ｚ０の位置１０５でアラームが発生したとする。記憶部１５は、位置１０５から距離ΔＤと、マーク３０の全体長さＡＬ１との和（ΔＤ＋ＡＬ１）よりも長い距離の移動経路１０４を記憶している。ΔＤが５ｍｍ、ＡＬ１が８ｍｍである場合、記憶部１５は、位置１０５から少なくとも１３ｍｍさかのぼるまでの移動経路１０４を記憶している。
【００６７】
モード制御部１３でマーク加工モードが選択されると、マーク指令生成部１１は、位置１０５から、加工時とは逆方向へ移動経路１０４をΔＤだけ工具１０２を移動させる移動指令を生成する。この移動指令は、位置１０５からマーク３０の矢尻部分の先端となる位置までの移動を指令するものである。この例では、加工時とは逆方向とはプラスＸ方向である。矢尻部分の先端となる位置は、Ｘ４０．Ｙ５．１．Ｚ０の位置である。
【００６８】
さらに、マーク指令生成部１１は、工具１０２がワーク１００から離れるような補正を移動指令に施すことで、加工時に対し、工具軸方向について工具１０２の位置をシフトさせる。この例では、工具軸方向とはＺ軸方向である。
【００６９】
これにより、マーク指令生成部１１は、移動経路１０４を加工時とは逆方向へ工具１０２を移動させるとともに、加工時に対し工具軸方向について工具１０２の位置をシフトさせた移動指令を、マーク指令１８として生成する。位置指令生成部１２は、マーク指令１８に基づく位置指令２０を生成する。
【００７０】
マーク指令１８に基づいて生成された位置指令２０をサーボ制御部６へ入力することで、工具１０２は、ワーク１００の表面からＺ軸方向において離れた状態で、位置１０５から移動経路１０４をΔＤだけプラスＸ方向へ移動する。これにより、工具１０２は、ワーク１００の表面を削ることなく移動する。工作機械は、工具１０２がワーク１００と擦れる状態での移動を避けることが可能となる。
【００７１】
なお、位置１０５からΔＤだけ工具１０２を移動させる過程では、マーク指令生成部１１は、工具軸方向についての工具１０２の位置の補正を省略しても良い。この場合、工具１０２は、ワーク１００における加工済みの部分をなぞって移動する。この場合も、工作機械は、ワーク１００の表面を新たに削ることなく工具１０２を移動させることができる。
【００７２】
次に、マーク指令生成部１１は、マーク３０の加工のためのマーク指令１８を生成する。この例では、マーク指令生成部１１は、Ｘ４０．Ｙ５．１．Ｚ０の位置を矢尻部分の先端、Ｘ４８．Ｙ５．１．Ｚ０の位置をシャフト部分の端とするマーク３０を加工するためのマーク指令１８を生成する。
【００７３】
まず、マーク指令生成部１１は、矢尻部分の先端からシャフト部分の端まで、移動経路１０４に沿って工具１０２を移動させるとともに、工具軸方向について工具１０２の位置が補正された移動指令を、マーク指令１８として生成する。マーク指令生成部１１は、工具１０２の工具半径とシャフト部分の線幅ＡＷ１とを使用して、工具軸方向における工具１０２のシフト量を調整する。
【００７４】
図８は、シフト量の算出について説明する図である。シフト量ＴＣは、工具１０２がワーク１００に接触した状態で移動することで切削される領域の幅ＴＷが、シャフト部分の所望の線幅ＡＷ１に一致するように設定される。例えば、シャフト部分の線幅ＡＷ１を０．５ｍｍとする場合、工具１０２がＴＷ＝０．５ｍｍの領域を削り取るように、工具軸方向に工具１０２をシフトさせる。なお、シフト量ＴＣは、ワーク１００の表面から、工具軸方向における工具１０２の最も深い到達点までの長さとする。
【００７５】
マーク指令生成部１１は、工具データ４を参照することにより、現在使用している工具１０２の工具半径ＴＲのデータを取得する。工具半径ＴＲは、工具１０２の先端から工具中心１０６までの長さとする。ＴＣは、次に示す式（１）によって表される。
ＴＣ＝ＴＲ−｛ＴＲ２−（ＴＷ／２）２｝１／２    ・・（１）
【００７６】
例えば、工具１０２として、ＴＲ＝５ｍｍのボールエンドミルを使用する場合に、ＴＷ＝０．５ｍｍとすると、式（１）から、ＴＣはおよそ０．００６３ｍｍと算出される。
【００７７】
マーク指令生成部１１は、このＴＣによる補正がなされたマーク指令１８を生成する。マーク指令１８に基づいて生成された位置指令２０をサーボ制御部６へ入力することで、工具１０２は、矢尻部分の先端からシャフト部分の端まで線幅ＡＷ１の領域を切削する。
【００７８】
次に、マーク指令生成部１１は、矢尻部分の加工のためのマーク指令１８を生成する。マーク指令生成部１１は、移動経路１０４に沿って工具１０２を移動させるとともに、シフト量ＴＣを徐々に変化させる移動指令を、マーク指令１８として生成する。シフト量ＴＣは、矢尻部分の先端と、矢尻部分のうちシャフト部分と接続する根元となる位置との間で、矢尻部分の形状に応じて変化させる。
【００７９】
矢尻部分は、根元の位置で最大幅ＡＷ２となる。シフト量ＴＣは、工具１０２がワーク１００に接触した状態で移動することで切削される領域の幅ＴＷが、矢尻部分の先端から根元にかけてＡＷ１からＡＷ２に徐々に増大するように調整される。例えば、ＡＷ２が１．５ｍｍである場合、ＴＷ＝ＡＷ２＝１．５ｍｍとなるときのＴＣは、式（１）によって、およそ０．０５６６ｍｍと算出される。
【００８０】
マーク指令生成部１１は、ＴＷがＡＷ１＝０．５ｍｍからＡＷ２＝０．５ｍｍへ徐々に変化するように、ＴＣを０．００６３ｍｍからおよそ０．０５６６ｍｍへ変化させるマーク指令１８を生成する。マーク指令１８に基づいて生成された位置指令２０をサーボ制御部６へ入力することで、工具１０２は、矢尻部分の形状の領域を切削する。
【００８１】
なお、マーク指令生成部１１が生成するマーク指令１８について、マーク３０の加工の順序や、工具軸方向において工具１０２の位置を補正する方法などは、特に限定されるものではなく、任意に設定可能であるものとする。
【００８２】
本実施の形態によると、数値制御装置１は、逐次記憶された移動経路１０４をさかのぼった位置にマーク３０を加工することで、不良ワークの容易な選別を可能とする。正常に加工されたワーク１００と、不良ワークであるワーク１００とが混在する場合であっても、マーク３０の確認によって不良ワークを一目で容易に選別することができる。また、数値制御装置１は、煩雑な加工プログラム２を準備しなくても、ワーク１００の形状や加工の進行段階に関わらずマーク３０を加工することができる。
【００８３】
これにより、数値制御装置１は、加工中に異常が発生したワーク１００の識別のためのマーク３０を簡易な加工プログラム２によって加工可能とし、異常の発生によって生じた不良ワークを容易に選別できるという効果を奏する。
【００８４】
数値制御装置１は、アラームの発生があった位置１０５から所定の距離だけ移動経路１０４をさかのぼった位置を、マーク３０の位置とする。数値制御装置１は、マーク３０の位置を、異常が発生したときの加工位置以外の位置に設定する。また、位置１０５からマーク３０までの間隔の設定次第で、マーク３０の位置を、異常が発生したときの加工位置に近い位置とすることができる。
【００８５】
これにより、ユーザやメンテナンス要員は、マーク３０の位置から、異常が発生したときの位置１０５を特定することができる。ユーザやメンテナンス要員は、マーク３０を手がかりとして、異常による傷の程度を容易に確認することが可能となる。
【００８６】
数値制御装置１は、工具半径とマーク３０の線幅とに応じて、工具軸方向におけるシフト量を調整することで、所望の線幅のマーク３０を得るための制御を可能とする。これにより、視覚によって認識し易いマーク３０が得られ、不良ワークの容易な選別が可能となる。
【００８７】
実施の形態２．
実施の形態２にかかる数値制御装置１は、旋盤である工作機械に備えられる。工作機械は、ワークを回転させる回転軸（旋削軸）であるＣ軸と、旋削工具を移動させる移動軸である少なくともＸ軸およびＹ軸を備える。工作機械は、円筒形状を備えるワークについて、外径部分の外径旋削加工と、端面部分の端面旋削加工を実施する。
【００８８】
実施の形態２にかかる数値制御装置１は、実施の形態１にかかる数値制御装置１と同様の構成を備える。実施の形態１および２では、マーク指令生成部１１は異なる処理を実施する。
【００８９】
図９は、ワークに外径旋削加工を行っている状態を示す図である。工作機械は、ワーク１００をＣ軸周りに回転させる。工具１０２は、Ｘ軸方向およびＺ軸方向へ移動可能な旋削工具である。チャック１０３は、工作機械にワーク１００を固定する工具である。図９には、ワーク１００を外形旋削加工する際の移動経路１０４と、アラームが発生したときの位置１０５とを示している。
【００９０】
マーク指令生成部１１の記憶部１５は、アラームが発生する直前の所定距離分の移動経路１０４として、Ｘ軸方向およびＺ軸方向の工具１０２の移動量と、Ｃ軸周りのワーク１００の移動量とを記憶する。
【００９１】
本実施の形態では、旋削加工における異常の発生があったことを示すマークとして、ワーク１００の表面に荒れ面１０７を形成する。マーク指令生成部１１は、マーク形成モードにおいて、荒れ面１０７を得るためのマーク指令１８を生成する。
【００９２】
図１０は、ワークの外径部分に荒れ面を加工している状態を示す図である。マーク形成モードにおいて、マーク指令生成部１１は、移動経路１０４を加工時とは逆方向へ工具１０２を移動させるとともに、加工時に対し工具軸方向について工具１０２の位置が補正された移動指令を、マーク指令１８として生成する。マーク指令生成部１１は、ワーク１００へ工具１０２を接触させる動作と、ワーク１００から工具１０２を離す動作とを繰り返すように、工具軸方向であるＸ軸方向における工具１０２の位置を調整する。
【００９３】
マーク指令１８に基づいて生成された位置指令２０をサーボ制御部６へ入力することで、工具１０２は、ワーク１００の表面に荒れ面１０７を加工する。荒れ面１０７は、加工面の品質を著しく劣化させるものである。マーク指令生成部１１は、移動経路１０４における工具１０２の移動の開始から終了までに、例えば任意の周期でシフト量を変化させる。または、マーク指令生成部１１は、移動経路１０４における工具１０２の移動の開始から終了までに、シフト量を徐々に変化させることとしても良い。マーク指令生成部１１は、著しく品質を低下させた荒れ面１０７を得られれば、シフト量をどのように変化させることとしても良い。
【００９４】
図１１は、ワークに端面旋削加工を行っている状態を示す図である。図１１には、ワーク１００を端面旋削加工する際の移動経路１０４と、アラームが発生したときの位置１０５とを示している。マーク指令生成部１１の記憶部１５は、アラームが発生する直前の所定距離分の移動経路１０４として、Ｘ軸方向およびＺ軸方向の工具１０２の移動量と、Ｃ軸周りのワーク１００の移動量とを記憶する。
【００９５】
図１２は、ワークの端面部分に荒れ面を加工している状態を示す図である。ワーク１００の端面部分の加工においてアラームが発生した場合も、マーク指令生成部１１は、移動経路１０４を加工時とは逆方向へ工具１０２を移動させるとともに、加工時に対し工具軸方向について工具１０２の位置が補正された移動指令を、マーク指令１８として生成する。
【００９６】
マーク指令生成部１１は、ワーク１００へ工具１０２を接触させる動作と、ワーク１００から工具１０２を離す動作とを繰り返すように、工具軸方向であるＺ軸方向における工具１０２の位置を調整する。
【００９７】
マーク指令１８に基づいて生成された位置指令２０をサーボ制御部６へ入力することで、工具１０２は、ワーク１００の表面に荒れ面１０７を加工する。マーク指令生成部１１は、移動経路１０４における工具１０２の移動の開始から終了までに、例えば任意の周期でシフト量を変化させる。または、マーク指令生成部１１は、移動経路１０４における工具１０２の移動の開始から終了までに、シフト量を徐々に変化させることとしても良い。マーク指令生成部１１は、著しく品質を低下させた荒れ面１０７を得られれば、シフト量をどのように変化させることとしても良い。
【００９８】
本実施の形態によると、数値制御装置１は、アラームの発生があってから、加工面の品質を著しく劣化させた荒れ面１０７を加工することで、不良ワークを一目で選別可能とする。数値制御装置１は、加工中に異常が発生したワーク１００の識別のためのマークを簡易な加工プログラム２によって加工可能とし、異常の発生によって生じた不良ワークを容易に選別できるという効果を奏する。
【００９９】
実施の形態３．
実施の形態３にかかる数値制御装置１は、旋盤である工作機械に備えられる。工作機械は、ワークを回転させる回転軸（旋削軸）であるＣ軸と、旋削工具を移動させる移動軸である少なくともＸ軸およびＹ軸を備える。
【０１００】
本実施の形態は、アラームが発生する直前の移動経路１０４をさかのぼった位置が、ワーク１００の外観からの視認が困難である場合に適用される。本実施の形態は、例えば、中ぐりバイトを使用する内径旋削加工や、タップ工具を使用するタップ加工のように、ワーク１００の内側の加工において異常の発生があった場合に適している。例えば、本実施の形態の数値制御装置１は、円筒形状を備えるワーク１００について、内径部分の内径旋削加工のための制御を実施する。
【０１０１】
実施の形態３にかかる数値制御装置１は、実施の形態１にかかる数値制御装置１と同様の構成を備える。実施の形態１および３では、マーク指令生成部１１の処理が異なる。
【０１０２】
図１３は、ワークに内径旋削加工を行っている状態を示す図である。工作機械は、ワーク１００をＣ軸周りに回転させる。工具１０２は、Ｘ軸方向およびＺ軸方向へ移動可能な旋削工具である。チャック１０３は、工作機械にワーク１００を固定する工具である。図１３には、ワーク１００を内径旋削加工する際の移動経路１０４と、アラームが発生したときの位置１０５とを示している。
【０１０３】
通常加工モードにおいて、本実施の形態のマーク指令生成部１１は、実施の形態１および２のマーク指令生成部１１とは異なる動作を行う。マーク指令生成部１１は、内径旋削加工のための工具１０２が選択されている間、記憶部１５への移動経路１０４の記憶を停止する。
【０１０４】
工具１０２による内径旋削加工を実施する間、記憶部１５は、内径旋削加工を開始する前における最新の移動経路１０４を保持している。アラームが発生すると、マーク指令生成部１１は、記憶部１５が過去に記憶した最新の移動経路１０４を基に、マーク指令１８を生成する。マーク形成モードにおいて、マーク指令生成部１１は、移動経路１０４を加工時とは逆方向へ工具１０２を移動させるとともに、加工時に対し工具軸方向について工具１０２の位置をシフトさせた移動指令を、マーク指令１８として生成する。
【０１０５】
マーク指令１８の生成に使用される移動経路１０４は、現在選択されている工具１０２とは別の工具１０２が選択されているときのものである。マーク形成モードでは、記憶部１５が保持する移動経路１０４において選択されていた工具１０２が戻され、マークの加工に使用される。
【０１０６】
例えば、記憶部１５が保持する移動経路１０４が、外径旋削加工によるものであった場合は、マーク指令生成部１１は、マークである荒れ面１０７を加工するためのマーク指令１８を生成する。マークの加工には、外径旋削加工において選択されていた工具１０２が使用される。
【０１０７】
マーク指令生成部１１は、移動経路１０４の記憶を停止させる対象とする工具１０２についての設定をあらかじめ保持する。移動経路１０４の記憶を停止させる対象とする工具１０２としては、ワーク１００の内側の加工において使用される中ぐりバイトやタップ工具などが設定される。
【０１０８】
本実施の形態によると、数値制御装置１は、ワーク１００のうち外観において視認が困難な内側の加工において異常があった場合であっても、特定の工具１０２が選択されているとき以外における移動経路１０４を基に、見え易い位置にマークを加工することができる。数値制御装置１は、加工中に異常が発生したワーク１００の識別のためのマークを簡易な加工プログラム２によって加工可能とし、異常の発生によって生じた不良ワークを容易に選別できるという効果を奏する。
【符号の説明】
【０１０９】
１  数値制御装置、２  加工プログラム、３  パラメータ、４  工具データ、５  操作スイッチ、６  サーボ制御部、７  サーボモータ、８  位置検出器、９  センサ、１０  プログラム解析部、１１  マーク指令生成部、１２  位置指令生成部、１３  モード制御部、１４  異常状態判定部、１５  記憶部、１６  記憶部、１７  解析データ、１８  マーク指令、１９  動作モード切り換え信号、２０  位置指令、２１  状態信号、２２  検出位置情報、２３  電圧指令、３０  マーク、１００  ワーク、１０１  ステージ、１０２  工具、１０３  チャック、１０４  移動経路、１０５  位置、１０６  工具中心、１０７  荒れ面。
【要約】
ワークの加工のための工具を移動させるモータを備える工作機械において、加工プログラム（２）に基づいてモータの駆動を制御する数値制御装置（１）であって、モータへの位置指令（２０）を生成する位置指令生成部（１２）と、加工における異常の発生があったことを示すマークの加工のためのマーク指令（１８）を生成するマーク指令生成部（１１）と、を有し、マーク指令生成部は、加工による工具の移動経路の情報を逐次記憶し、異常が検知されたことによるアラームの発生があったとき、移動経路を加工時とは逆方向へ工具を移動させるとともに、加工時に対し工具軸方向について工具の位置が補正された移動指令を、マーク指令として生成し、位置指令生成部は、マーク指令に基づく位置指令を生成する。【図１】
0005420123.tif 000002
【図２】
0005420123.tif 000003
【図３】
0005420123.tif 000004
【図４】
0005420123.tif 000005
【図５】
0005420123.tif 000006
【図６】
0005420123.tif 000007
【図７】
0005420123.tif 000008
【図８】
0005420123.tif 000009
【図９】
0005420123.tif 000010
【図１０】
0005420123.tif 000011
【図１１】
0005420123.tif 000012
【図１２】
0005420123.tif 000013
【図１３】
0005420123.tif 000014