(57)【要約】工作機械制御プロセスは、Ｎ．Ｃ．と、たとえば分離プロセッサ内またはＮ．Ｃ．内部のいずれかで動作する別個のソフトウェアとを利用する。このソフトウェアによって生成されたサブプログラムは、たとえば測定結果のタイプの検査または切断ツール経路の再構成のためのＮ．Ｃ．の休止中に、Ｎ．Ｃ．内に導入することができる。サブプログラムの生成は、Ｎ．Ｃ．の動作中に実行することができる。
2004537795.tif 000002
【特許請求の範囲】
【請求項１】
プログラム可能な工作機械コントローラおよび別個のソフトウェアを利用する工作機械制御プロセスであって、
前記工作機械コントローラにおいてプログラムを実行するステップと、
前記工作機械コントローラが前記別個のソフトウェアによって継続するよう信号を送られるまで、前記プログラム実行が休止されることを可能にするステップを前記プログラム中に提供するステップと
を含むことを特徴とする工作機械制御プロセス。
【請求項２】
前記別個のソフトウェアおよび前記工作機械コントローラは、アプリケーションプログラミングインターフェースを介して通信することを特徴とする請求項１に記載の工作機械制御プロセス。
【請求項３】
前記プログラム中の前記ステップは、前記コントローラの呼び出されているオプション停止命令によって引き起こされる休止であり、外部ソフトウェアは、前記アプリケーションプログラミングインターフェースを介してＮＣプログラムを再始動することを特徴とする請求項２に記載の工作機械制御プロセス。
【請求項４】
前記プログラム中の前記ステップは、前記コントローラにより使用される変数が前記別個のソフトウェアによって変更されるのを待機している前記コントローラによって引き起こされる休止であることを特徴とする請求項１に記載の工作機械制御プロセス。
【請求項５】
前記プログラム中の前記ステップの前またはその間にサブプログラムを前記工作機械コントローラにロードするステップと、
前記プログラム中の前記ステップの後に前記サブプログラムを実行するステップと
をさらに含むことを特徴とする前記請求項のいずれか一項に記載の工作機械制御プロセス。
【請求項６】
前記工作機械制御プロセスは、後続のサブプログラムが前記工作機械コントローラにロードされるように繰り返されることを特徴とする請求項５に記載の工作機械制御プロセス。
【請求項７】
前記別個のソフトウェアは、前記サブプログラム（１つ以上）中に命令を生成するのに利用されることを特徴とする請求項５または６に記載の工作機械制御プロセス。
【請求項８】
前記生成は、前記プログラムまたは前記サブプログラムの実行中に行われることを特徴とする請求項７に記載の工作機械制御プロセス。
【請求項９】
プログラム可能な工作機械コントローラおよび別個のソフトウェアを利用する工作機械制御プロセスであって、
前記工作機械コントローラにおいてプログラムを実行するステップと、
前記工作機械プロセスの間、サブプログラム中で命令を生成するよう前記別個のソフトウェアを動作させるステップと、
前記サブプログラムの実施を可能にするステップを前記プログラム中に提供するステップと
を含むことを特徴とする工作機械制御プロセス。
【請求項１０】
前記別個のソフトウェアによる前記命令の前記生成は、前記別個のソフトウェアへの入力に続いて行われることを特徴とする請求項９に記載の工作機械制御プロセス。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、数値制御装置および補助的なコンピュータ制御を有する工作機械の制御に関する。
【背景技術】
【０００２】
従来、工作機械制御は、図１に示すシステムに類似するシステムによって提供されてきた。こうしたシステムは、プログラム可能な工作機械コントローラ（数値制御装置（ＮＣ）と呼ばれる）を提供し、このコントローラは、命令コードを実際のマシンの動き、静止、および切断動作などに変える。ＮＣは、プログラム可能なロジック、処理能力を有し、いくつかのユーザインターフェースにリンクされる（マンマシン接続（ＭＭＣ））。
【０００３】
最近、いくつかの事例において、市販のオペレーティングシステムを実行するコンピュータがＭＭＣに取って代わり、その結果、ＯＥＭおよびサードパーティのソフトウェア開発者が、独自のソフトウェアを導入できるようになっている。
【０００４】
さらに開発が進んだことにより、プログラムのステータス、マシンの位置およびマシン変数などのマシンデータへのＯＥＭおよびサードパーティのソフトウェアによるアクセス、ならびにＮＣおよびＭＭＣとの命令コードプログラムの転送が可能になった。このようなアクセスは、ＡＰＩ（アプリケーションプログラミングインターフェース）として知られるインターフェースによって得られる。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかし、このようなシステムは、ＮＣを実行するとコマンドプログラムを変更することができず、フィードレートを無効にしてサイクル停止ボタンを押すことしかできないので、制約がある。
【課題を解決するための手段】
【０００６】
一態様によると、本発明は、プログラム可能な工作機械コントローラおよび別個のソフトウェア（separate software）を利用する工作機械制御プロセスを提供し、このプロセスは、
工作機械コントローラにおいてプログラムを実行するステップと、
コントローラが別個のソフトウェアによって継続するよう信号を送られるまで、プログラム実行が休止されることを可能にするステップをプログラム中に提供するステップとを含む。
【０００７】
好ましくは、別個のソフトウェアおよび工作機械コントローラは、ＡＰＩを介して通信する。
【０００８】
好ましくは、プログラム中の前記ステップは、コントローラの呼び出されているオプション停止命令によって引き起こされる休止であり、外部ソフトウェアは、ＡＰＩを介してＮＣプログラムを再始動する。
【０００９】
あるいは、プログラム中の前記ステップは、別個のソフトウェアによって変更される、コントローラが使用する変数を待っているコントローラによって引き起こされる休止である。
【００１０】
好ましくは、工作機械制御プロセスは、プログラム中のステップの前にまたはその間にサブプログラムを工作機械コントローラにロードするステップと、プログラム中のステップの後にサブプログラムを実行するステップとをさらに含む。
【００１１】
好ましくは、工作機械制御プロセスは、後続のサブプログラムが工作機械コントローラにロードされるように繰り返される。
【００１２】
好ましくは、別個のソフトウェアは、サブプログラム（１つ以上）中に命令を生成するのに利用される。好ましくは、こうした生成は、プログラムまたはサブプログラムの実行中に行われる。
【００１３】
別の態様によると、本発明は、プログラム可能な工作機械コントローラおよび別個のソフトウェアを利用する工作機械制御プロセスを提供し、このプロセスは、工作機械コントローラにおいてプログラムを実行するステップと、工作機械プロセスの間、サブプログラム中で命令を生成するよう別個のソフトウェアを動作させるステップと、サブプログラムの実施を可能にするステップをプログラム中に提供するステップとを含む。
【００１４】
好ましくは、別個のソフトウェアによる命令の生成は、別個のソフトウェアへの入力に続いて行われる。
【００１５】
本発明は、上記のプロセスに好適なソフトウェアプログラムを包含するものである。
【００１６】
本発明の実施形態を、以下で図面を参照して説明する。
【発明を実施するための最良の形態】
【００１７】
図１は、工作機械用のプロセス制御装置を示す。工作機械は、数値制御（ＮＣ）と一般に呼ばれるプログラム可能な工作機械コントローラによって制御される。図示したシステムはオープンアーキテクチャを有し、したがって、ＡＰＩ（アプリケーションプログラミングインターフェース）を介して、ＮＣにあるデータにアクセスすることができる。本説明でＡＰＩとは、２つのプロセスの間の通信を可能にするどのソフトウェアも包含するものである。たとえば動的データ交換（ＤＤＥ）を使う専用のＮＣのタイプによって、どの通信プロトコルも使うことができる。ＭＭＣは、ＡＰＩを介して「Ｇコード」コマンドのプログラムをＮＣにロードするのに使われる。このシステムには、追加の外部プロセッサ、この例ではやはりＡＰＩを介してＮＣと通信し、外部制御プロセスを動作させる別個のソフトウェアを有する外部ＰＣがある。このＰＣは、プログラムをＮＣにロードし、ＮＣのデータを読み出し、ＮＣのプログラムシーケンスを制御するのに使われる。
【００１８】
図２は、図１に示したものと類似した装置を示す。外部プロセッサは、工作機械コントローラに統合されるが、外部プロセスがＮＣから分離し、ＡＰＩを介して通信するという意味ではやはり外部と言える。別個のソフトウェアも使用される。
【００１９】
通常、図１の装置は、本発明を実施するシステムを組み込む場合に使われるであろう。図２の装置は、本発明を実施するシステムが新規に構築された場合、および／またはＭＭＣ上のソフトウェアによって意図的にもしくは意図せずに、サードパーティのソフトウェアの統合が可能である場合に使われるであろう。
【００２０】
図３は、本発明のプロセスを使用する工作機械プロセスの一例を示す。たとえばＮＣからの情報（たとえば、工作物表面に接触しているとの信号を現在送っている測定プローブを保持している工作機械のスピンドルのＸ、Ｙ、Ｚ位置）を受けるよう要求される場合、制御プロセスは、データが外部プロセスによって読み出されるまでループされる。外部プロセスは次いで、ＮＣ内で変数を「継続」値に設定し、プロセスが継続する。このような制御プロセスにより、ＮＣをリセットすることなくＮＣにおけるデータの動的読出しおよび書込みを行えるようになる。
【００２１】
変数設定の代案として、マシンの「オプション停止」命令を使うことができ、外部プロセスは、プロセスを再開するのに使うことができる。
【００２２】
図４ａおよび図４ｂは、本発明のプロセスを利用する別の工作機械制御プロセスを示す。図４ａはＮＣのプロセスを示し、図４ｂは別個のソフトウェアのプロセスを示す。両方のプロセスが同時に実行され、その２つの間の通信は、図３に示したようにＡＰＩを介して行われる。一部のＮＣは、「ドリップフィード（drip-feed）」モードとして知られる、一度に１行の命令コードのみを受け入れることができる能力を有する。通常、プログラムのダウンロードは、外部のテープリーダーまたはコンピュータを使って行われ、各行は受け取られた直後に実行される。ドリップフィードモードは、ＮＣ用に提供されて、外部記憶媒体、たとえばＰＣや紙または磁気テープリーダーを使って大きなプログラムが保持され、小さいセクション（しばしば、一度に１行）でコントローラに供給されることを可能にする。セクションは、直ちに実行されて破棄される。このようにして、大きすぎてコントローラのメモリには収まらないプログラムを実行することができる。本発明の一実施形態により、ドリップフィードモードは、このモードをサポートすることができないＮＣ装置上で提供が可能になる。
【００２３】
このことは、以下のループを継続して実行するプログラムをＮＣ上で実行することによって行われ、その間、プログラム中の同期変数は、ドリップフィードを出るのに使われる値に等しくならない。
【００２４】
ｉ）プログラムを待ち状態にさせる値に同期変数を設定する。
ｉｉ）同期変数が、サブプログラムの準備ができたことを示す別の値になるのを待つ。
ｉｉｉ）サブプログラムをコール。
【００２５】
さらに、このプログラムがＮＣ上で実行されている間、別個のソフトウェアを使って、以下のループを実行する別個のプロセスが実行される。このループには、ドリップフィードで供給される行がより多くある。
【００２６】
ｉ）ドリップフィードで供給すべき次の行（１行以上）を得る。
ｉｉ）行（１行以上）をサブプログラムとしてフォーマットする。
ｉｉｉ）ＮＣがサブプログラム実行可能になるまで待つ、すなわちそのサブプログラムを待つ。
ｉｖ）サブプログラムをＮＣにアップロードする。
ｖ）ＮＣプログラムがサブプログラムを実行することができる値に同期値を設定する。
【００２７】
このようなプロセス制御の利点は、プロセスが進むに従ってコードのどの行も変更できることである。したがって、たとえば、プロセスによって実施された検査ステップの結果、ツール経路に対する変更が必要となる場合、その変更は、ダウンロードに先立ってコマンド行（１行か１行以上）に対して加えることができる。こうした変更は、ＮＣプログラムの実行中に外部プロセッサの別個のソフトウェアにおいて行うことができる。
【００２８】
プロセスの最後に、変数をプロセス停止値に設定するのに外部プロセスが使われ、次いでプロセスが終了される。
【００２９】
図５ａおよび図５ｂは、本発明を使用する工作機械を制御するさらに別のプロセスのための別のフローチャートを示す。このシステムでは、ＮＣおよび外部プロセスの機能は、上述したものに類似している。さらに、図５ａはＮＣのプロセスを示し、図５ｂは別個のソフトウェアのプロセスを示す。この２つの間の通信は、ＡＰＩを介する。外部プロセッサは、コードを１行供給するのではなく、ＮＣを実行しているメインプログラムに挿入されるサブプログラム（おそらく多数行の長さのコード）を生成するのに使われる。サブプログラムのダウンロードは、外部プロセスによる作成、または外部プロセスへの到着の後いつでも、ただしＮＣがそのサブプログラムを呼び出して実行することができることを示す値に外部プロセスが変数を設定する前に行うことができる。
【００３０】
工作物を製造するのにマシンが使われるプロセスでは、構成部品が正しく作られたか、たとえば大きさや表面仕上げは満足できるものかという検査がしばしば必要である。このような検査には検査ルーチンが必要とされ、満足できる工作物を製造するためにプロセスのパラメータを調整することが必要な場合もある。
【００３１】
例示したプロセスでは、外部プロセスは、工作物検査用のサブプログラムを生成することができる。
【００３２】
これを行うのに必要な情報は、１カ所またはいくつかの場所の組合せから、すなわち、ＮＣ内で実行中のまたは実行中でないメインプログラムから、かつ／または外部のデータソースたとえば前の検査用サブプログラムから、かつ／またはユーザとの対話からサブプログラムに入力することができる。サブプログラムは、完了すると、（ＡＰＩを介して）ＮＣにダウンロードすることができ、外部プロセスは、ＮＣ内の変数を「サブプログラム実行」値に設定する。上で詳述したように、ＮＣのメインプログラムは遅延され、その変数が外部プロセスによって設定されるのを待つ。変数が設定されると、ＮＣは現在のサブプログラムを呼び出して実行する。
【００３３】
いくつものサブプログラムをプロセス中で実行することができる。各サブプログラムは、別のものでよい。たとえば、反復処理を行うことができ、この反復処理によって、メインプログラムが物品を製造するのに機械加工サイクルを操作し、メインプログラムの「Ｇコード」コマンド行からサブプログラムが生成されてメインプログラムによって製造された工作物の大きさを検査し、データが（おそらく図３に関連して説明したプロセスを使って）外部プロセッサによって読み出され、メインプログラムが継続され、第１のサブプログラムの検査結果を考慮してさらにサブプログラムが外部プロセスによって生成され、この生成されたプログラムは工作物を再度正しく機械加工するための、または工作物をより正しく機械加工できるようにマシンの公称切断経路を変更するための「Ｇ」コードのコマンド行を含む。
【００３４】
上記の例では、プロセスは継続することができる。
【００３５】
上記の説明における変数を参照する。実際には、こうした変数は、Ｘ、Ｙ、Ｚ座標のような特定のマシンパラメータであるが、「サブプログラム実行」または「サブプログラムを実行しない」というフラグをセットするのに使われる変数は、通常は使用されない変数である。こうした変数は、整数または浮動小数点の変数でもよく、値または状態を有することができるようにオン／オフタイプの変数でもよい。
【００３６】
外部プロセッサまたはプロセスは、標準アーキテクチャを有する工業用ＰＣでも、ＮＣ装置に統合されたプロセッサでもよい。したがって、特許請求の範囲において言及している「別個のソフトウェア」は、ＮＣの外部の装置に組み込むこともでき、並列タスクとしてＮＣ装置そのものに組み込むこともできる。上で言及した外部プロセスは、外部プロセッサまたはＮＣ装置に統合されたプロセッサのいずれかの上で実行される別個のソフトウェアである。
【００３７】
本アプリケーションにおけるサブプログラムは、ＮＣ装置に対するどの追加命令も意味し、ＮＣ装置によって使われるマクロを含む。
【図面の簡単な説明】
【００３８】
【図１】マシン制御装置を示す図である。
【図２】別のマシン制御装置を示す図である。
【図３】本発明を使用するプロセス制御を示すフローチャートである。
【図４ａ】さらに本発明を使用するプロセス制御を示すフローチャートである。
【図４ｂ】さらに本発明を使用するプロセス制御を示すフローチャートである。
【図５ａ】さらに本発明を使用するプロセスを示すフローチャートである。
【図５ｂ】さらに本発明を使用するプロセスを示すフローチャートである。
【図１】
2004537795.tif 000003
【図２】
2004537795.tif 000004
【図３】
2004537795.tif 000005
【図４ａ】
2004537795.tif 000006
【図４ｂ】
2004537795.tif 000007
【図５ａ】
2004537795.tif 000008
【図５ｂ】
2004537795.tif 000009
【国際公開パンフレット】
2004537795.tif 000010
2004537795.tif 000011
2004537795.tif 000012
2004537795.tif 000013
2004537795.tif 000014
2004537795.tif 000015
2004537795.tif 000016
2004537795.tif 000017
2004537795.tif 000018
2004537795.tif 000019
2004537795.tif 000020
2004537795.tif 000021
2004537795.tif 000022
2004537795.tif 000023
2004537795.tif 000024
2004537795.tif 000025
2004537795.tif 000026
2004537795.tif 000027
2004537795.tif 000028
【国際公開パンフレット（コレクトバージョン）】
2004537795.tif 000029
2004537795.tif 000030
【国際調査報告】
2004537795.tif 000031
2004537795.tif 000032