(57)【要約】【課題】左手座標系の機械を制御する場合において、右手座標系のプログラムをそのまま利用可能とする数値制御装置を提供すること。【解決手段】数値制御装置１００は、加工プログラム２００に含まれる指令を座標系変換部１１０と、変換された加工プログラムを解析して指令データを出力するプログラム指令解析部１２０と、プログラム指令解析部１２０からの指令データに基づいて補間周期毎の各駆動軸の位置を示す補間データを生成する補間部１３０とを備えている。座標系変換部１１０は、現在の動作モードに応じて、右手座標系に基づいた指令と、左手座標系に基づいた指令とを相互に変換するため、ユーザが座標系を意識することなく加工プログラムを作成することができるようになり、加工プログラム作成効率の低下と品質の低下を防ぐことが可能となる。【選択図】図２
2016024662.tif 000002
【特許請求の範囲】
【請求項１】
複数の駆動軸を有する工作機械を第１の加工プログラムに基づいて制御する数値制御装置において、
前記第１の加工プログラムに対して座標系変換処理を実行し、変換結果である第２の加工プログラムを出力する座標系変換手段と、
前記第２の加工プログラムに基づいて前記駆動軸の動作を指令する指令データを出力する指令解析手段と、
を備え、
前記座標系変換処理は、右手座標系に基づく指令と、左手座標系に基づく指令とを相互に変換する処理を含む、
ことを特徴とする数値制御装置。
【請求項２】
前記座標系変換手段は、２つの動作モードを有し、
第１の動作モードでは、前記第１の加工プログラムに対して前記座標系変換処理を実行し、
第２の動作モードでは、前記第１の加工プログラムに対して座標系変換処理を実行しない、
ことを特徴とする請求項１に記載の数値制御装置。
【請求項３】
前記座標系変換処理は、前記複数の駆動軸の内の１つの駆動軸の移動方向を反転する処理を含む、
ことを特徴とする請求項１または２に記載の数値制御装置。
【請求項４】
前記座標系変換処理は、円弧補間指令により指定される、回転方向を反転する処理を含む、
ことを特徴とする請求項１または２に記載の数値制御装置。
【請求項５】
前記座標系変換処理は、工具径補正指令により指定される、工具径補正の方向を反転させる処理を含む、
ことを特徴とする請求項１または２に記載の数値制御装置。
【請求項６】
前記座標系変換処理は、座標回転の指令により指定される、座標系の回転方向を反転させる処理を含む、
ことを特徴とする請求項１または２に記載の数値制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、数値制御装置に関し、特に加工プログラムにおいて右手座標系と左手座標系とを切り替える機能を有する数値制御装置に関する。
【背景技術】
【０００２】
工作機械において、工具の位置や移動方向を座標により指定する場合、当該座標の座標系として右手座標系と左手座標系のいずれかが用いられている（非特許文献１）。
右手座標系と左手座標系の違いについて図５を用いて説明する。
【０００３】
第１の違いは、工具を支持する制御軸を直線補間する時、右手座標系でＸ軸の正方向へ工具を移動させる制御を行った場合、Ｘ軸を横軸、Ｙ軸を縦軸としたＸＹ平面をＺ軸の正方向から見たとき、工具は右方向へと移動する。これに対して、左手座標系でＸ軸の正方向へ工具を移動させる制御を行った場合は、Ｘ軸を横軸、Ｙ軸を縦軸としたＸＹ平面をＺ軸の正方向から見たとき、工具は左方向へと移動する。
【０００４】
第２の違いは、工具を支持する制御軸を円弧補間する時、右手座標系で時計回りの円弧補間を行った場合、Ｘ軸を横軸、Ｙ軸を縦軸としたＸＹ平面をＺ軸の正方向から見たとき、工具は時計回りに移動する。これに対して、左手座標系で時計回りの円弧補間を行った場合、Ｘ軸を横軸、Ｙ軸を縦軸としたＸＹ平面をＺ軸の正方向から見たとき、工具は反時計回りに移動する。なお、座標回転の回転方向についても両座標系において同様の違いが生じる。
【０００５】
第３の違いは、工具を支持する制御軸に対して工具径補正を指令する時、右手座標系で制御軸の進行方向に対して右側に補正するよう指令をした場合、Ｘ軸を横軸、Ｙ軸を縦軸としたＸＹ平面をＺ軸の正方向から見たとき、工具の移動経路は右側に補正される。これに対して、左手座標系で制御軸の進行方向に対して右側に補正するよう指令をした場合、工具はＸ軸を横軸、Ｙ軸を縦軸としたＸＹ平面をＺ軸の正方向から見たとき、工具の移動経路は左側に補正される。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】山岸正兼著、「図解ＮＣ工作機械の入門」、東京電機大学、第１版第６刷、９２〜１０５頁、１９８６年
【発明の概要】
【発明が解決しようとする課題】
【０００７】
工作機械には右手座標系により制御軸を動作させるものと、左手座標系により制御軸を動作させるものが存在する。しかしながら、数値制御装置においては右手座標系により制御軸の位置や移動方向などを指定することが一般的であり、左手座標系に対応した数値制御装置は存在していなかった。
【０００８】
そのため、従来の数値制御装置を用いて左手座標系の工作機械を制御する場合、加工プログラムを作成するユーザは右手座標系と左手座標系との違いを理解した上で、加工プログラムを作成する必要がある。
例えば、図６（ａ）に示す右手座標系プログラムにおける「Ｇ０２  Ｘ１０．０  Ｙ０  Ｒ１０．０」という指令によりワークに対して行われる加工と同様の加工を左手座標系の機械上で行う制御をプログラムする場合、ユーザは、右手座標系を左手座標系へと変換した場合において制御軸がどのような軌跡を描くのかを想定し、図６（ｂ）に示すように、Ｇ０２（時計回りの円弧補間指令）をＧ０３（反時計回りの円弧補間指令）に入れ替えると共に、Ｘ座標の符号を正負反転させた「Ｇ０３  Ｘ−１０．０  Ｙ０  Ｒ１０．０」という指令を手動で作成する必要がある。
【０００９】
このように、従来の数値制御装置は、制御機能の定義が右手座標系を前提として構成されていたため、ユーザは右手座標系のプログラムと逆のプログラムを自分で作成する必要があり、加工プログラム作成効率が低下するという問題があった。
また、左手座標系の工作機械に対応するプログラムをどのように作成すれば良いかが指針として明確に示されておらず、ユーザはそれぞれ独自に検討して加工プログラムを作成する必要があるためプログラムミスをし易くなり、加工プログラムの品質低下の原因となっていた。
【００１０】
そこで、本発明の目的は、左手座標系の機械を制御する場合において、右手座標系のプログラムをそのまま利用可能とする数値制御装置を提供することである。
【課題を解決するための手段】
【００１１】
本願の請求項１に係る発明は、複数の駆動軸を有する工作機械を第１の加工プログラムに基づいて制御する数値制御装置において、前記第１の加工プログラムに対して座標系変換処理を実行し、変換結果である第２の加工プログラムを出力する座標系変換手段と、前記第２の加工プログラムに基づいて前記駆動軸の動作を指令する指令データを出力する指令解析手段と、を備え、前記座標系変換処理は、右手座標系に基づく指令と、左手座標系に基づく指令とを相互に変換する処理を含む、ことを特徴とする数値制御装置である。
【００１２】
本願の請求項２に係る発明は、前記座標系変換手段が、２つの動作モードを有し、第１の動作モードでは、前記第１の加工プログラムに対して前記座標系変換処理を実行し、第２の動作モードでは、前記第１の加工プログラムに対して座標系変換処理を実行しない、ことを特徴とする請求項１に記載の数値制御装置である。
【００１３】
本願の請求項３に係る発明は、前記座標系変換処理が、前記複数の駆動軸の内の１つの駆動軸の移動方向を反転する処理を含む、ことを特徴とする請求項１または２に記載の数値制御装置である。
本願の請求項４に係る発明は、前記座標系変換処理が、円弧補間指令により指定される、回転方向を反転する処理を含む、ことを特徴とする請求項１または２に記載の数値制御装置である。
本願の請求項５に係る発明は、前記座標系変換処理が、工具径補正指令により指定される、工具径補正の方向を反転させる処理を含む、ことを特徴とする請求項１または２に記載の数値制御装置である。
本願の請求項６に係る発明は、前記座標系変換処理が、座標回転の指令により指定される、座標系の回転方向を反転させる処理を含む、ことを特徴とする請求項１または２に記載の数値制御装置である。
【発明の効果】
【００１４】
本発明により、右手座標系で作成した加工プログラムを、左手座標系の工作機械を制御する際にそのまま使用できると共に、左手座標系で作成した加工プログラムを、右手座標系の工作機械を制御する際にそのまま使用することができるため、ユーザは作成効率を低下させることなく加工プログラムを作成することができる。
また、数値制御装置が右手座標系の加工プログラムと左手座標系の加工プログラムの間の変換を自動的に行うため、手動による加工プログラム変換が原因となるプログラムミスも発生せず、加工プログラムの品質維持に効果を奏する。
【図面の簡単な説明】
【００１５】
【図１】本発明の実施の形態における数値制御装置の要部ブロック図である。
【図２】本発明の実施の形態における数値制御装置の機能ブロック図である。
【図３】本発明の実施の形態における加工プログラムを変換する一例を示す図である。
【図４】本発明の実施の形態における座標系変換処理のフローチャートである。
【図５】右手座標系と左手座標系の違いを説明する図である。
【図６】右手座標系のプログラムと左手座標系のプログラムとの関係を説明する図である。
【発明を実施するための形態】
【００１６】
以下、本発明の実施形態を図面と共に説明する。
図１は、本発明に係る実施形態の数値制御装置１００の要部ブロック図である。数値制御装置１００のＣＰＵ１１は、数値制御装置１００を全体的に制御するプロセッサである。ＣＰＵ１１は、ＲＯＭ１２に格納されたシステムプログラムをバス２０を介して読み出し、該システムプログラムに従って数値制御装置１００を全体的に制御する。ＲＡＭ１３には一時的な計算データや表示データ及び表示器／ＭＤＩユニット７０を介してオペレータが入力した各種データ等が格納される。
【００１７】
ＣＭＯＳ１４は図示しないバッテリでバックアップされ、数値制御装置１００の電源がオフされても記憶状態が保持される不揮発性メモリとして構成される。ＣＭＯＳ１４には、インタフェース１５を介して読み込まれた後述する加工プログラム、表示器／ＭＤＩユニット７０を介して入力された加工プログラム等が記憶されるようになっている。また、ＲＯＭ１２には、加工プログラムの作成及び編集のために必要とされる編集モードの処理、自動運転のための処理を実施するための各種のシステムプログラムがあらかじめ書き込まれている。
本発明を実行する加工プログラム等の各種加工プログラムは、インタフェース１５や表示器／ＭＤＩユニット７０を介して入力し、ＣＭＯＳメモリ１４に格納することができる。
【００１８】
インタフェース１５は数値制御装置１００とアダプタ等の外部機器７２との接続を可能とするものである。外部機器７２側からは加工プログラムや各種パラメータ等が読み込まれる。また、数値制御装置１００内で編集した加工プログラムは、外部機器７２を介して外部記憶手段に記憶させることができる。
ＰＭＣ（プログラマブル・マシン・コントローラ）１６は、数値制御装置１００に内蔵されたシーケンスプログラムで工作機械側の補助装置（例えば、工具交換用のロボットハンドといったアクチュエータ）にＩ／Ｏユニット１７を介して信号を出力し制御する。また、工作機械の本体に配備された操作盤の各種スイッチ等の信号を受け、必要な処理をしてプロセッサ１１に渡す。
【００１９】
表示器／ＭＤＩユニット７０はディスプレイやキーボード等を備えた手動データ入力装置であり、インタフェース１８は表示器／ＭＤＩユニット７０のキーボードからの指令，データを受けてＣＰＵ１１に渡す。インタフェース１９は手動パルス発生器等を備えた操作盤７１に接続されている。
【００２０】
各軸の軸制御回路３０〜３４はＣＰＵ１１からの各軸の移動指令量を受けて、各軸の指令をサーボアンプ４０〜４４に出力する。サーボアンプ４０〜４４はこの指令を受けて、各軸のサーボモータ５０〜５４を駆動する。各軸のサーボモータ５０〜５４は位置・速度検出器を内蔵し、この位置・速度検出器からの位置・速度フィードバック信号を軸制御回路３０〜３４にフィードバックし、位置・速度のフィードバック制御を行う。なお、ブロック図では、位置・速度のフィードバックについては省略している。
【００２１】
スピンドル制御回路６０は、工作機械への主軸回転指令を受け、スピンドルアンプ６１にスピンドル速度信号を出力する。スピンドルアンプ６１はこのスピンドル速度信号を受けて、工作機械のスピンドルモータ６２を指令された回転速度で回転させ、工具を駆動する。
スピンドルモータ６２には歯車あるいはベルト等でポジションコーダ６３が結合され、ポジションコーダ６３が主軸の回転に同期して帰還パルスを出力し、その帰還パルスはスピンドル制御回路６０にフィードバックされる。
【００２２】
図２は、本発明の一実施形態における数値制御装置１００の機能ブロック図である。数値制御装置１００は、座標系変換部１１０、プログラム指令解析部１２０、補間部１３０を備えている。
本発明の特徴となる座標系変換部１１０は、ＣＭＯＳ１４などから加工プログラム２００を読み込んで、座標系変換処理を実行し、加工プログラム２００内の右手座標系で作成された指令ブロックを左手座標系へと変換する。座標系変換処理については後述する。
プログラム指令解析部１２０は、座標系変換部１１０が出力した加工プログラムを解析し、補間部１３０が用いるデータを生成する。補間部１３０は、プログラム指令解析部１２０が出力したデータに基づいて、指令経路上の点を補間周期で補間計算した補間データを生成し、当該補間データに基づいて各サーボ軸を制御する。プログラム指令解析部１２０、補間部１３０は、従来技術における数値制御装置が備えた機能手段と同様のものである。
【００２３】
以下で、本実施の形態の座標系変換部１１０が実行する座標系変換処理の概要について説明する。
座標系変換部１１０は、２つの動作モードを持っている。１つは通常モードであり、このモードにある場合に座標系変換部１１０は、加工プログラム２００の各ブロックを順に読み込んで、そのままプログラム指令解析部１２０へと出力する。もう１つはＧｘｘモードであり、このモードにある場合に座標系変換部１１０は、加工プログラム２００の各ブロックに対して座標系変換を施し、変換した結果をプログラム指令解析部１２０へと出力する。
【００２４】
このような２つのモードを導入するにあたり、本実施の形態ではモード切り替え用の指令として「Ｇｘｘ」という指令を導入する。座標系変換部１１０が通常モードの時に、加工プログラムから「Ｇｘｘ」指令が読み込まれると、座標系変換部１１０はＧｘｘモードへと移行する。また、座標系変換部１１０がＧｘｘモードの時に、加工プログラムから「Ｇｘｘ」指令が読み込まれると、座標系変換部１１０は通常モードへと戻る。なお、本実施の形態においては、モードをトグル切り替えする指令を用いて説明するが、通常モードからＧｘｘモードへの移行と、Ｇｘｘモードから通常モードへの移行に、異なる指令を用いるようにしてもよい。
【００２５】
座標系変換部１１０は、Ｇｘｘモードにおいて、指令ブロックに対して以下の４つの変換規則に基づいて加工プログラムの指令を変換する処理を実行する。
（規則１）Ｇ指令などにより指定されるＸＹＺ座標の指定において、いずれか１軸の移動方向を反転させる。いずれの軸を反転させるかについては、制御する工作機械にあわせて数値制御装置１００のＣＭＯＳ１４などの設定領域にあらかじめ設定しておく。以降の説明では、Ｘ軸の移動方向を反転する例で説明する。
（規則２）円弧補間指令の「Ｇ０２（時計回り円弧補間）」指令と、「Ｇ０３（反時計回り円弧補間）」指令を相互に入れ替える。
（規則３）工具径補正指令の「Ｇ４１（工具径補正左）」指令／「Ｇ４２（工具径補正右）」指令を相互に入れ替える
（規則４）「Ｇ６８」指令などの座標系の回転方向を入れ替える（回転角度の符号を反転させる）。
【００２６】
図３は、右手座標系で作成された加工プログラムを左手座標系へと変換する具体例を示す図である。
加工プログラム２００に基づく工作機械の制御が開始されると、座標系変換部１１０は最初通常モードで機能し、加工プログラム２００に記載される各ブロックを順に読み込んで、そのままプログラム指令解析部１２０へと出力するが、その際に（ａ１）の「Ｇｘｘ」指令を読み込むと、Ｇｘｘモードへと移行し、「Ｇｘｘ」指令をプログラム指令解析部１２０へ出力することなく、次のブロックを読み込む。
次に、座標系変換部１１０は、（ａ２）の「Ｇ０２  Ｘ１０．０  Ｙ０  Ｒ１０．０」というブロックを読み込むと、当該ブロックには規則１（Ｘ軸移動方向の反転）、規則２（円弧補間指令入替）がそれぞれ適用され、（ｂ２）にあるように「Ｇ０３  Ｘ−１０．０  Ｙ０  Ｒ１０．０」という指令へと変換されて、プログラム指令解析部１２０へと出力される。
【００２７】
次に、座標系変換部１１０は、（ａ３）の「Ｇ０１  Ｇ４１  Ｘ２０．０」というブロックを読み込むと、当該ブロックには規則１（Ｘ軸移動方向の反転）、規則３（工具径補正指令入替）がそれぞれ適用され、（ｂ３）にあるように「Ｇ０１  Ｇ４２  Ｘ−２０．０」という指令へと変換されて、プログラム指令解析部１２０へと出力される。
次に、座標系変換部１１０は、（ａ４）の「Ｇ９０  Ｇ６８  Ｘ０  Ｙ０  Ｒ４５．０」というブロックを読み込むと、当該ブロックには規則１（Ｘ軸移動方向の反転）、規則４（座標系回転方向入替）がそれぞれ適用され、（ｂ４）にあるように「Ｇ９０  Ｇ６８  Ｘ０  Ｙ０  Ｒ−４５．０」という指令へと変換されて、プログラム指令解析部１２０へと出力される。なお、指定されているＸ座標は０なので符号が反転しても０のままとなる。
【００２８】
そして、座標系変換部１１０は、同様の座標系変換処理を実行し、（ａ５）において再び「Ｇｘｘ」指令を読み込むと、通常モードへと復帰し、「Ｇｘｘ」指令をプログラム指令解析部へ出力することなく、次のブロックを読み込む。
そして、座標系変換部１１０が加工プログラム２００を最後まで読み込んで、プログラム指令解析部１２０へと出力すると、加工プログラム２００による工作機械の制御を終了する。
【００２９】
図４は、本実施の形態の座標系変換部１１０が実行する座標系変換処理のフローチャートである。
●［Ｓ４０１］最初に座標系変換部１１０の動作モードを通常モードに設定する。
●［Ｓ４０２］加工プログラム２００から、次に処理するべきブロックを読み込む。
●［Ｓ４０３］読み込んだブロックの指令がＧｘｘ指令であるか判定する。Ｇｘｘ指令である場合にはＳ４０４へ進み、Ｇｘｘ指令以外の指令である場合にはＳ４０５へと進む。
●［Ｓ４０４］動作モードを切り替える。座標系変換部１４０の現在の動作モードが通常モードである場合にはＧｘｘモードへと切り替え、現在の動作モードがＧｘｘモードである場合には通常モードへと切り替える。
【００３０】
●［Ｓ４０５］読み込んだブロックが最後のブロックであるか判定する。最後のブロックである場合には本処理を終了し、続きのブロックがある場合にはＳ４０２へと戻る。
●［Ｓ４０６］現在のモードがＧｘｘモードであるか判定する。現在のモードがＧｘｘモードである場合にはＳ４０７へ進み、現在のモードが通常モードである場合にはＳ４１２へ進む。
●［Ｓ４０７］読み込んだ指令の内容を解析し、軸移動を伴う指令である場合には軸移動方向の反転処理を行う。本実施の形態では、Ｘ軸方向の移動を伴う指令である場合に、Ｘ軸方向の移動方向を反転する。
●［Ｓ４０８］読み込んだ指令の内容を解析し、円弧補間指令である場合には円弧補間指令の入替処理を行う。本実施の形態では、読み込んだ指令がＧ０２指令である場合には、Ｇ０３指令へと変換し、読み込んだ指令がＧ０３指令である場合には、Ｇ０２指令へと変換する。
●［Ｓ４０９］読み込んだ指令の内容を解析し、工具径補正指令である場合には工具径指令の入替処理を行う。本実施の形態では、読み込んだ指令がＧ４２指令である場合には、Ｇ４３指令へと変換し、読み込んだ指令がＧ４３指令である場合には、Ｇ４２指令へと変換する。
●［Ｓ４１０］読み込んだ指令の内容を解析し、座標系の回転を伴う指令である場合には座標系回転方向の入れ替え処理を行う。
●［Ｓ４１１］変換後の指令を出力する。
●［Ｓ４１２］読み込んだ指令をそのまま出力する。
【符号の説明】
【００３１】
１１    ＣＰＵ
１２    ＲＯＭ
１３    ＲＡＭ
１４    ＣＭＯＳ
１５，１８，１９    インタフェース
１６    ＰＭＣ
１７    Ｉ／Ｏユニット
２０    バス
３０，３１，３２，３３，３４    軸制御回路
４０，４１，４２，４３，４４    サーボアンプ
５０，５１，５２，５３，５４    サーボモータ
６０    スピンドル制御回路
６１    スピンドルアンプ
６２    スピンドルモータ
６３    ポジションレコーダ
７０    表示器／ＭＤＩユニット
７１    操作盤
７２    外部機器
１００    数値制御装置
１１０    座標系変換部
１２０    プログラム指令解析部
１３０    補間部
２００    加工プログラム
【図１】
2016024662.tif 000003
【図２】
2016024662.tif 000004
【図３】
2016024662.tif 000005
【図４】
2016024662.tif 000006
【図５】
2016024662.tif 000007
【図６】
2016024662.tif 000008