(57)【要約】【課題】  同時に並列で実行される命令の対象が異なる工作機械等に対して１つの数値制御プログラムで多系統並列処理の制御を可能にする数値制御装置及び数値制御方法を提供する。【解決手段】  多系統のブロックを複数含む数値制御プログラムを格納する数値制御プログラム格納手段４と、数値制御プログラムを読み取り、ブロックに対応する制御信号を出力する数値制御プログラム実行手段２と、制御信号を工作機械２０等へ送信することで、工作機械２０等を、ブロックが規定する命令通りの動作を実行するよう制御する工作機械制御手段３と、予め設定された複数の条件を全て満たす際には、実行中の動作が未完了でも順次ブロックを処理するよう、また複数の条件のいずれか１つでも満たさない場合には、実行中の動作の完了後に次のブロックを処理するよう数値制御プログラム実行手段２を促す数値制御プログラム判断手段５とを備える。【選択図】    図３
2010157095.tif 000002
【特許請求の範囲】
【請求項１】
工作機械及び前記工作機械に接続された複数の外部装置の制御の対象である工具及び工作物の動作を数値化して制御するための命令であるコード及び該コードの組み合わせより１つの動作を実行する命令を示すブロックを含む数値制御プログラムを１ブロックずつ処理し、前記工作機械及び前記複数の外部装置の各々の空間的な干渉が発生せず、同時に並列で動作可能な前記工作機械及び前記複数の外部装置を制御する数値制御装置であって、
多系統のブロックを複数含む数値制御プログラムを格納する数値制御プログラム格納手段と、
前記数値制御プログラムを読み取り、前記ブロックに対応する制御信号を出力する数値制御プログラム実行手段と、
受信した前記制御信号を前記工作機械及び前記複数の外部装置へ送信することで、前記工作機械及び前記複数の外部装置を、前記ブロックが規定する命令通りの動作を実行するよう制御する工作機械制御手段と、
予め設定された複数の条件を全て満たす際には、実行中の前記動作が未完了でも順次ブロックを処理するよう前記数値制御プログラム実行手段を促し、前記複数の条件のいずれか１つでも満たさない場合には、実行中の前記動作の完了後に前記次のブロックを処理するよう前記数値制御プログラム実行手段を促す数値制御プログラム判断手段とを備えることを特徴とする数値制御装置。
【請求項２】
工作機械及び前記工作機械に接続された複数の外部装置の制御の対象である工具及び工作物の動作を数値化して制御するための命令であるコード及び該コードの組み合わせより１つの動作を実行する命令を示すブロックを含む数値制御プログラムを１ブロックずつ処理し、前記工作機械及び前記複数の外部装置の各々の空間的な干渉が発生せず、同時に並列で動作可能な前記工作機械及び前記複数の外部装置を制御する数値制御装置の数値制御方法であって、
数値制御プログラム格納手段は、多系統のブロックを複数含む数値制御プログラムを格納するステップと、
数値制御プログラム実行手段は、前記数値制御プログラムを読み取り、前記ブロックに対応する制御信号を出力するステップと、
工作機械制御手段は、受信した前記制御信号を前記工作機械及び前記複数の外部装置へ送信することで、前記工作機械及び前記複数の外部装置を、前記ブロックが規定する命令通りの動作を実行するよう制御するステップと、
数値制御プログラム判断手段は、予め設定された複数の条件を全て満たす際には、実行中の前記動作が未完了でも順次ブロックを処理するよう前記数値制御プログラム実行手段を促し、前記複数の条件のいずれか１つでも満たさない場合には、実行中の前記動作の完了後に前記次のブロックを処理するよう前記数値制御プログラム実行手段を促すステップとを含むことを特徴とする数値制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、数値制御装置及び数値制御方法に関し、特に多系統並列処理の制御に関する。
【背景技術】
【０００２】
従来、数値制御装置（ＣＮＣ）が工作機械等を制御する際、ワーク及び工具等の位置決め、移動量及び移動方向等の命令は、数値制御プログラムによって予め定められた順序又は手続きに従って制御の各段階を逐次進めていくシーケンス制御によって実行される。例えば、指定された工具を選択し主軸の工具を自動的に交換する自動工具交換装置（ＡＴＣ）、これらの工具を格納するタレット、マガジン及びローダ等の格納装置等によって加工等を行う際に利用される。シーケンス制御では、数値制御プログラムが含む工作機械等への順番に並んでいる命令を、並んでいる順番で逐次処理を実行する。この際、任意の１つの命令を処理することによって工作機械等が動作した後、処理の完了を示すフィードバック信号を受信することで、数値制御装置は次の命令を実行する。このように、数値制御装置は数値制御プログラムが含む命令を、１つのブロックずつ順次処理する。
【０００３】
しかし、１つのブロックによる命令が実行され完了するまでは、数値制御装置の処理は１つの命令に占有される。そのため、数値制御装置の処理能力を十分に活用できない場合や、数値制御プログラムに規定された命令の全てを実行し完了するまでの処理時間が膨大になる場合が頻繁に発生する。そこで、複数の系統に対してそれぞれ対応する複数の数値制御プログラムを使用して同時に制御を実行する多系統並列処理の制御装置及び方法が提案されている（例えば、特許文献１参照。）。
【特許文献１】特開平８−１６１０２２
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかし、本来１つの数値制御プログラムで処理が可能であるにも関わらず、複数の数値制御プログラムを作成しなければならず、作成に対するユーザの負担が増大する。また、制御対象の系統が増加するほど、作成対象の数値制御プログラムの数も増加し、中身が複雑化することで、数値制御プログラムのそれぞれに含まれる作成エラーの可能性も高くなる。
【０００５】
そこで、本発明は、このような状況に鑑みてなされたものであり、処理の順序に拘束されない制御において、空間的な干渉が発生せず、同時に並列で実行される命令の対象が異なる工作機械及び複数の外部装置に対して１つの数値制御プログラムで多系統並列処理の制御を可能にする数値制御装置及び数値制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するために、本発明の一様態は、工作機械及び工作機械に接続された複数の外部装置の制御の対象である工具及び工作物の動作を数値化して制御するための命令であるコード及び該コードの組み合わせより１つの動作を実行する命令を示すブロックを含む数値制御プログラムを１ブロックずつ処理し、工作機械及び複数の外部装置の各々の空間的な干渉が発生せず、同時に並列で動作可能な工作機械及び複数の外部装置を制御する数値制御装置に関する。即ち、一様態に係る数値制御は、（イ）多系統のブロックを複数含む数値制御プログラムを格納する数値制御プログラム格納手段と、（ロ）数値制御プログラムを読み取り、ブロックに対応する制御信号を出力する数値制御プログラム実行手段と、（ハ）受信した制御信号を工作機械及び複数の外部装置へ送信することで、工作機械及び複数の外部装置を、ブロックが規定する命令通りの動作を実行するよう制御する工作機械制御手段と、（ニ）予め設定された複数の条件を全て満たす際には、実行中の動作が未完了でも順次ブロックを処理するよう数値制御プログラム実行手段を促し、複数の条件のいずれか１つでも満たさない場合には、実行中の動作の完了後に次のブロックを処理するよう数値制御プログラム実行手段を促す数値制御プログラム判断手段とを備えることを特徴とする。
【０００７】
また、本発明の別の様態は、工作機械及び工作機械に接続された複数の外部装置の制御の対象である工具及び工作物の動作を数値化して制御するための命令であるコード及び該コードの組み合わせより１つの動作を実行する命令を示すブロックを含む数値制御プログラムを１ブロックずつ処理し、工作機械及び複数の外部装置の各々の空間的な干渉が発生せず、同時に並列で動作可能な工作機械及び複数の外部装置を制御する数値制御装置の数値制御方法に関する。即ち、別の様態に係る数値制御方法は、（イ）数値制御プログラム格納手段は、多系統のブロックを複数含む数値制御プログラムを格納するステップと、（ロ）数値制御プログラム実行手段は、数値制御プログラムを読み取り、ブロックに対応する制御信号を出力するステップと、（ハ）工作機械制御手段は、受信した制御信号を工作機械及び複数の外部装置へ送信することで、工作機械及び複数の外部装置を、ブロックが規定する命令通りの動作を実行するよう制御するステップと、（ニ）数値制御プログラム判断手段は、予め設定された複数の条件を全て満たす際には、実行中の動作が未完了でも順次ブロックを処理するよう数値制御プログラム実行手段を促し、複数の条件のいずれか１つでも満たさない場合には、実行中の動作の完了後に次のブロックを処理するよう数値制御プログラム実行手段を促すステップとを含むことを特徴とする。
【発明の効果】
【０００８】
本発明によれば、処理の順序に拘束されない制御において、空間的な干渉が発生せず、同時に並列で実行される命令の対象が異なる工作機械及び複数の外部装置に対して１つの数値制御プログラムで多系統並列処理の制御を可能にする数値制御装置及び数値制御方法を提供することができる。
【発明を実施するための最良の形態】
【０００９】
次に、図面を参照して、本発明の実施の形態を説明する。以下の図面の記載において、同一または類似の部分には同一または類似の符号を付している。但し、図面は模式的なものであり、装置やシステムの構成等は現実のものとは異なることに留意すべきである。したがって、具体的な構成は以下の説明を参酌して判断すべきものである。また、図面相互間においても互いの構成の異なる部分が含まれていることは勿論である。
【００１０】
また、以下に示す本発明の実施の形態は、本発明の技術的思想を具体化するための装置や方法を例示するものであって、本発明の技術的思想は、構成部品の材質、形状、構造、配置等を下記のものに特定するものではない。本発明の技術的思想は、特許請求の範囲に記載された技術的範囲内において、種々の変更を加えることができる。
【００１１】
＜数値制御装置の構成＞
本発明の実施の形態に係る数値制御装置（ＣＮＣ）は、図２（ａ）に示すように、工作機械２０及び工作機械２０に接続された複数の外部装置（第１の外部装置３１、第２の外部装置３２、第３の外部装置３３、・・・、第ｎの外部装置３４）の制御の対象である工具及び工作物の動作を数値化して制御するための命令であるコード及びコードの組み合わせより１つの動作を実行する命令を示すブロックを含む数値制御プログラムを１ブロックずつ処理し、工作機械２０及び複数の外部装置の各々の空間的な干渉が発生せず、同時に並列で動作可能な工作機械２０及び複数の外部装置を制御する。
【００１２】
数値制御装置１は、図２（ａ）及び図３に示すように、多系統のブロックを複数含む数値制御プログラムを格納する数値制御プログラム格納手段４と、数値制御プログラムを読み取り、ブロックに対応する制御信号を出力する数値制御プログラム実行手段２と、受信した制御信号を工作機械２０及び複数の外部装置へ送信することで、工作機械２０及び複数の外部装置を、ブロックが規定する命令通りの動作を実行するよう制御する工作機械制御手段３と、予め設定された複数の条件を全て満たす際には、実行中の動作が未完了でも次のブロックを処理するよう数値制御プログラム実行手段２を促し、複数の条件のいずれか１つでも満たさない場合には、実行中の動作の完了後に次のブロックを処理するよう数値制御プログラム実行手段２を促す数値制御プログラム判断手段５とを備える。
【００１３】
数値制御プログラム実行手段２は、下記条件１〜３を満たす数値制御プログラムをブロック単位で順次読み取り、対応する制御信号を出力する。
【００１４】
条件１：新たに読み取るブロックの命令（制御）の対象が、動作実行中の工作機械２０等とは異なること。
【００１５】
条件２：既に作業中の工具及びワークと、新たに読み取るブロックの命令によって工作機械２０等の作業の対象となる工具及びワークが同一である際には、作業対象である工具及びワークの請け負う異なる複数の作業が矛盾をきたさないこと。
【００１６】
条件３：動作中の工作機械２０及び工具等と、新たに読み取るブロックの命令によって動作する工作機械２０及び工具等が、物理的（時間的且つ空間的）に干渉しないこと。
【００１７】
条件１は、同時に異なる複数の動作についての制御を同一の工作機械２０等に行っても動作の矛盾が生じて現実には新たな命令に対する動作は実行不可能となるが、そのような不具合を回避するための条件である。例えば、図２（ｂ）におけるワーク搬入搬出装置４１がワークを架台の中央に搬入している際に、ワークを搬出するという新たな命令がワーク搬入搬出装置４１に対して発生すると動作の矛盾が生じ、新たな命令(制御)は実行不可能となる。そこで条件１は、同一の工作機械２０等に同時に異なる制御を施すことで、実行する複数の動作が矛盾をきたして実行不可能になるのを回避する。
【００１８】
条件２は、作業中の工具及びワークに対して、新たなブロックの命令によって動作する工作機械２０等が新たな作業を実行する際、発生する複数の作業に矛盾が生じれば、新たな作業は実行不可能となるが、そのような不具合を回避するための条件である。例えば、図２（ｂ）に示すワーク搬入搬出装置４１がワークを移動させている際、既にワークが存在しない領域に対して、新たなブロックが促す命令が図示しないタレットパンチングプレスがプレスを実行させても、パンチプレス作業は失敗する。そこで条件２は、作業対象に同時に施される複数の作業が矛盾をきたして実行不可能になるのを回避する。
【００１９】
条件３は、動作中の工作機械２０及び作業中の工具等に対して、新たなブロックの命令により動作する工作機械２０等及び作業対象の工具等が、同時刻に同領域を占有する際には機械等同士の衝突等が発生することになるが、そのような不具合を回避するための条件である。例えば、図示しないタレットパンチングプレスがワークに対してプレス加工をしている際に、図２（ｂ）に示すワーク搬入搬出装置４１がワークを搬出すると、加工作業は失敗し、タレットパンチングプレス等の故障の発生の原因となる。そこで条件３は、複数の工作機械２０等が同時に同じ空間で動作するために生じる不具合を回避する。
【００２０】
ここで、これら条件１〜３を「同時並行動作実行条件」と呼ぶこととする。
【００２１】
図２（ａ）に示す工作機械２０及び複数の外部装置は、数値制御プログラム実行手段２が出力する制御信号に従って動作を実行し、所定の動作が完了した後、図３に示す工作機械制御手段３が出力するフィードバック信号（ＦＩＮ）を出力する。続いて、数値制御プログラム実行手段２は、ブロック毎に処理される動作の完了を待たずに、即ち実行中の動作に対応するフィードバック信号を受信せずに、次に記載されるブロックを読み取り、処理する。ここで、ブロック毎に処理される制御に費やす時間よりも、数値制御プログラム実行手段２によってブロックが読み込まれる時間の方が著しく短いため、フィードバック信号の受信をせずに順次ブロックを読み取り、処理することで、実質的には本発明に係る数値制御装置１は、複数の制御を同時並行で実行することが可能であるといえる。
【００２２】
数値制御プログラム判断手段５は、複数の「同時並行動作実行条件」を満たすか否かを、（ｉ）工作機械２０及び複数の外部装置３０の構成、機能及び特性等、（ｉｉ）数値制御プラグラムの内容、（ｉｉｉ）制御状況（実行中の動作内容）等から判断し、全てを満たす場合は、実行中の動作が完了しなくても次のブロックを処理するよう、数値制御プログラム実行手段２を促し、条件１〜３のいずれか１つでも満たさない場合は、対象となる工作機械２０等が実行中の動作及び工具等に対して実行中の動作の完了後に次のブロックを処理するよう、数値制御プログラム実行手段２を促す。ここで、動作の完了については数値制御プログラムが含む各ブロックが処理したそれぞれの制御に対するフィードバック信号を受信したか否かで判断を行う。なお、複数の「同時並行動作実行条件」を前述の（ｉ）〜（ｉｉｉ）の複数の「環境状況パターン」において満足するか否かは、予め工作機械２０及び複数の外部装置３０等の構成等によって基準となる判断条件を設定し、その判断基準に基づいて判断結果を出力することも可能であり、機械構成等の環境等を自立的に読み込んで、特定のプログラムに基づいたシミュレーション等によって判断することも可能である。
【００２３】
なお、複数のブロックを順次処理して対応する制御を同時並行で実行する際、複数の動作実行中の工作機械２０等のいずれか１つと、次のブロックの処理によって実行される制御が条件１〜３を満足しない場合には、不満足の対象となる制御のみ完了すれば次のブロックの処理は可能であり、動作中の全ての制御が完了するまで待機する必要はない。
【００２４】
工作機械制御手段３は、数値制御プログラム実行手段２が出力する制御信号を受信し、制御信号に対応した動作を図２（ａ）に示す工作機械２０及び複数の外部装置３０が実行するよう制御する。工作機械２０及び複数の外部装置３０がブロックの規定する命令に対応した所定の動作を終了すると、工作機械制御手段３はフィードバック信号を数値制御プログラム実行手段２に送信する。
【００２５】
本発明の実施の形態に係る数値制御装置１が備える数値制御プログラム実行手段２及び工作機械制御手段３は、図１に示す中央演算処理装置（ＣＰＵ）１の一部として構成すればよい。また、数値制御プログラム実行手段２及び工作機械制御手段３は、それぞれ専用のハードウェアで構成しても良く、オープンプラットフォーム上で動作する通常のコンピュータシステムのＣＰＵを用いて、ソフトウェアで実質的に等価な機能を有していても構わない。
【００２６】
ここで、「オープンプラットフォーム」とは、情報処理機器及び通信ネットワーク等の接続において、機器間の相互接続性、ＯＳ等のソフトウェアの再利用性、サービスの相互運用性及びユーザインタフェースの統一性等を保証するために必要な部分の設計仕様が公開されているハードウェア及びソフトウェア基盤を指す。「オープンプラットフォーム」上で稼働するシステム、すなわちオープンプラットフォームシステムが構築されると、接続された各機器間における既存の情報資源を利用することが可能となる。
【００２７】
数値制御プログラム格納手段４は、半導体記憶装置や磁気ディスク装置等であって、図１に示す中央演算処理装置６で実行されるプログラムやデータ及び例えば図５（ａ）に示す数値制御プログラムを格納する。数値制御プログラムには、図５（ｂ）に示すように、工作機械２０を動かすためのスイッチの働きをするＭコード、数値制御装置１内部で軸の移動や座標系の設定などを処理する機能を負うＧコード及び工具を自動選択するときに使用するＴコード等によって、図２（ａ）に示す、工作機械２０及び複数の外部装置３０(第１の外部装置３１、第２の外部装置３２、第３の外部装置３３、・・・、第ｎの外部装置３４)の所定の動作を制御するよう記載されている。
【００２８】
＜数値制御装置のハードウェア構成＞
つぎに、本発明の実施の形態に係る数値制御装置１のハードウェア構成は図１に示すように、中央演算処理装置（ＣＰＵ）６、ＲＯＭ（Read Only Memory）７、ＲＡＭ（Random Access Memory）４、リムーバブルディスク９、記憶装置１０、軸制御回路１１、ＰＭＣ１３、表示制御回路１４、通信制御手段１８、ソフトウェアキー１９及びユーザインタフェース手段１６がバス１７を介して接続されている。また、軸制御回路１１にはサーボアンプ１２が、表示制御回路１４には表示装置１５が接続されている。
【００２９】
中央演算処理装置６は、ユーザインタフェース手段１６からの入力信号に基づいてＲＯＭ７から数値制御装置１等を起動するためのブートプログラムを読み出して実行し、さらに記憶装置１０に記憶されたオペレーティングシステムを読み出す。さらに中央演算処理装置６は、ユーザインタフェース手段１６やＰＭＣ１３等の入力信号に基づいて、図２（ａ）に示す工作機械２０及び複数の外部装置３０等の制御を行い、ＲＡＭ８や記憶装置１０等に記憶されたプログラム及びデータを読み出してＲＡＭ８にロードするとともに、ＲＡＭ８から読み出されたプログラムのコマンドに基づいて、データの計算または加工など、後述する一連の処理を実現する処理装置である。
【００３０】
ＲＡＭ８にはＳＲＡＭが使用され、一時的な計算データ、表示データ、入出力信号等が格納される。
【００３１】
ユーザインタフェース手段１６は、操作者が各種の操作を入力するキーボード、マウスなどの入力デバイスにより構成されており、操作者の操作に基づいて入力信号を作成し、バス１７を介して中央演算処理装置６に送信される。ユーザインタフェース手段１６は、ユーザの指示に基づいて、数値制御プログラムのコードを直接入力したり、記憶装置１０及びリムーバブルディスク９に蓄積された数値制御プログラム等のデータを呼び出したりと、制御信号の捜査及びデータの加工等を実行することが可能である。
【００３２】
表示装置１５は、数値制御装置１の全面あるいは機械操作盤等と同じ位置に配置されるＣＲＴ（Cathode Ray Tube）ディスプレイ及び液晶ディスプレイ等であり、中央演算処理装置６からバス１７を介して表示装置１５において表示させる出力信号を受信し、例えば中央演算処理装置６の処理結果等を表示する装置である。表示装置１５は、ユーザインタフェース手段１６が入力した数値制御プログラムのコード、リムーバブルディスク９が読み取った数値制御プログラムのコード及び数値制御装置１に設定した加工パラメータの設定値等の文字情報、ラダー回路等のグラフィカル情報、等を表示する。
【００３３】
表示制御回路１４は、数値データ及び文字データ等のデジタル信号を表示用のラスタ信号に変換し、表示装置１５に送る。
【００３４】
ソフトウェアキー１９は、表示装置１５の周辺等に設けられ、利用できる機能がは表示装置１５に表示される。表示装置１５の画面が変化すれば、表示される機能に対応して、ソフトウェアキー１９の機能も変化する。
【００３５】
軸制御回路１１は、中央演算処理装置６からの軸の移動指令を受けて、軸の移動指令をサーボアンプ１２に出力する。
【００３６】
サーボアンプ１２は、移動指令を増幅し、工作機械２０等に結合されたサーボアンプを駆動し、工作機械２０の工具及びワークの相対運動を制御する。なお、軸制御回路１１及びサーボアンプ１２は、サーボアンプ１２の軸数に対応した数だけ設けられている。工作機械２０は、例えば巻き取り作業等の産業機械であり、その各軸は、数値制御装置１側で多系統に分けて制御される。各系統は、数値制御プログラム上で制御される。
【００３７】
ＰＭＣ（Promable Machine Control）１３は、中央演算処理装置６からバス１７経由でＭ（補助）機能信号、Ｔ（機械機能）機能信号等を受け取る。ＰＭＣ１３は、これらの信号をシーケンスプログラムで処理して、出力信号を出力し、工作機械２０内の空圧機器、油圧機器、電磁アクチュエータ等を制御する。また、工作機械２０内の機械操作盤のボタン信号、スイッチ信号及びリミットスイッチ等の信号を受けてシーケンス処理を行い、バス１７を経由して中央演算処理装置６に必要な入力信号を転送する。
【００３８】
通信制御手段１８は、ＬＡＮカードやモデム等の装置であり、数値制御装置１をインターネットやＬＡＮ等の通信ネットワークに接続する装置である。通信制御手段１８を介して通信ネットワークと送受信した数値制御プログラム等のデータは入力信号または出力信号として、バス１７を介して中央演算処理装置６に送受信される。
【００３９】
記憶装置１０は、半導体記憶装置や磁気ディスク装置であって、中央演算処理装置６で実行されるプログラムやデータが記憶されている。すなわち、数値制御プログラム、加工パラメータ及び機械補正データ等である。
【００４０】
リムーバブルディスク９は、不揮発性メモリ、光ディスク及びフレキシブルディスク等のことであり、ディスクドライブによって読み書きされた信号は、バス１７を介して中央演算処理装置６に送受信される。数値制御プログラムは、リムーバブルディスク９を介して中央演算処理装置６に読み込まれてもよい。
【００４１】
本発明の実施の形態に係る数値制御装置１の記憶装置１０には、工作機械２０及び複数の外部装置３０等の加工ジョブの管理を支援するプログラムが記憶されるとともに、ユーザの指示に基づいてユーザインタフェース手段１６が入力した数値制御プログラムのコード、リムーバブルディスク９が読み取った数値制御プログラム及びユーザの指示に基づいてユーザインタフェース手段１６が数値制御装置１に設定した加工パラメータ等が記憶される。また、工作機械２０等による加工ジョブの管理に関するプログラムが数値制御装置１の中央演算処理装置６に読み込まれ実行されることによって、数値制御プログラム実行手段２、工作機械制御手段３及び数値制御プログラム判断手段５等が数値制御装置１に実装される。
【００４２】
つづいて、本発明の実施の形態に係る数値制御装置が、図２（ｂ）に示すワーク搬入搬出装置４１及び金型交換装置４２を外部装置として備える工作機械２０に対して図５（ａ）に示す数値制御プログラムの制御を実行する際の同時並列処理について説明する。
【００４３】
ここで、図２に示す工作機械２０は主軸、Ｘ軸、Ｙ軸及びＺ軸等の各軸を制御して工具やワーク等の移動を行う。また、複数の外部装置３０の第１の外部装置３１、第２の外部装置３２、第３の外部装置及び第ｎの外部装置３４等は、指定された工具を選択し、主軸の工具を自動的に交換する自動工具交換装置（ＡＴＣ）、工具を格納するタレット、マガジン及びローダ等の格納装置等のいずれかである。なお、工作機械２０は、自動工具交換装置及び格納装置等を周辺機器として備え、これら周辺機器から工具等を選択して加工を行う。
【００４４】
なお、図５（ｂ）に示すように、「００００１」はプログラム番号である。また、「Ｇ０６Ａ＿Ｂ＿」及び「Ｇ９２Ｘ＿Ｙ＿」はでそれぞれ材料設定及び原点設定の命令を指示するＧコードプログラムであり、「Ｍ３３」、「Ｍ２６８」及び「Ｍ２６９」はそれぞれワーク搬入指令、連続金型交換開始指令及び連続金型交換終了指令に関するＭコードプログラムである。さらに、「Ｔ２２０４０１１」及び「Ｔ２５６１０１１」はともに金型交換指令に関するＴコードプログラムである。
【００４５】
＜数値制御装置による制御処理＞
つぎに、本発明の実施の形態に係る数値制御装置１が、工作機械２０及び複数の外部装置３０を数値制御プログラムに基づいて制御する方法について、図４のフローチャート及び図５（ａ）を参照しながら説明する。
【００４６】
（イ）ステップＳ２０１において、数値制御プログラム実行手段２は、プログラム番号「００００１」の数値制御プログラムを読み込んで、読み込んだコード「Ｇ０６Ａ１．Ｂ０．」に対応する制御信号を出力する。
【００４７】
（ロ）ステップＳ２０２において、数値制御プログラム実行手段２は、「Ｇ０６Ａ１．Ｂ０．」の次に記載されているコード「Ｇ９２Ｘ２５００．Ｙ１２７０．」を読み込んで、対応する制御信号を出力する。
【００４８】
（ハ）ステップＳ２０３において、数値制御プログラム実行手段２は、「Ｇ９２Ｘ２５００．Ｙ１２７０．」の次に記載されているコード「Ｍ３３」を読み込んで、対応する制御信号を出力する。工作機械制御手段３は、ステップＳ２０３において受信した「Ｍ３３」に対応する制御信号を受信し、図２（ｂ）に示すワーク搬入搬出装置４１がワークを搬入するよう制御する。
【００４９】
（ニ）ステップＳ２０４において、ワーク搬入搬出装置４１がワークの搬入作業を完了する前に、数値制御プログラム判断手段５は、図５（ａ）に示す数値制御プログラムにおいて、「Ｍ３３」の次に記載されている「Ｍ２６８」が示す連続金型交換が、動作中のワーク搬入作業に対して、複数の同時並行動作実行条件を全て満たすか否かを判断する。複数の同時並行動作実行条件の中の１つでも満たさない条件が存在すれば、図４（ｂ）に示すステップＳ２０５において、動作中のワーク搬入作業が完了するまで、数値制御プログラム実行手段２は「Ｍ２６８」の読み込みを待機する。
【００５０】
（ホ）ステップＳ２０５において、動作中のワーク搬入作業が完了、すなわち、数値制御プログラム判断手段５が「Ｍ３３」に対するフィードバック信号を受信したら、ステップＳ２０６において、数値制御プログラム実行手段２は図５に示す「Ｍ２６８」以降順次「Ｍ２６９」まで読み込み、対応する制御信号をそれぞれ出力し、出力したそれぞれの制御信号に基づいて、工作機械制御手段３は、図２（ｂ）に示す金型交換装置４２が金型交換の実行をするよう制御する。
【００５１】
（ヘ）ステップＳ２０４において、複数の同時並行動作実行条件を全て満たす場合、ワーク搬入作業が動作中にステップＳ２０６において、数値制御プログラム実行手段２は図５に示す「Ｍ２６８」以降順次「Ｍ２６９」まで読み込み、対応する制御信号をそれぞれ出力し、出力したそれぞれの制御信号に基づいて、工作機械制御手段３は、図２（ｂ）に示す金型交換装置４２が金型交換の実行をするよう制御する。
【００５２】
以上説明したように、本発明の実施の形態に係る数値制御装置によれば、予め設定した一定の条件（同時並行動作実行条件）を複数の環境状況パターンにおいて満たす際には、数値制御プログラムの複数のコードにそれぞれ対応した処理を同時に並行して制御することが可能である。また、予め設定した条件の一部でも満たさない場合は、実行中の動作が完了するまで次動作の制御を待機することが可能である。
【００５３】
図４（ａ）に示すように、従来の数値制御装置における数値制御処理では、ステップＳ１０３において、図３に示す数値制御プログラム実行手段２がワーク搬入命令後、工作機械制御手段３は、図２（ｂ）に示すワーク搬入搬出装置４１にワークの搬入制御を促し、図４（ａ）に示すステップＳ１０４においてワーク搬入作業が完了するまで、すなわちワーク搬入作業の完了に関するフィードバック信号を数値制御プログラム判断手段５が受信するまでは、決して次の処理である図５（ａ）に示す数値制御プログラムのＭ２６８〜Ｍ２６９に対応した連続金型交換命令を実行しない。
【００５４】
そのため、本発明の実施の形態に係る数値制御装置は、従来の数値制御装置と比較して、数値制御作業に費やす作業時間を著しく短縮することが可能である。図６に示す従来の数値制御装置による図５（ａ）の数値制御プログラムに対する制御処理のタイミングチャートでは、それぞれのコード毎に処理は独立して実行する。しかし、図７に示す本発明の実施の形態に係る数値制御装置による図５（ａ）の数値制御プログラムに対する制御処理のタイミングチャートでは、Ｍ３３の処理中にＭ２６８及びＴ２２０４０１１を処理することが可能となる。
【００５５】
さらに、予め設定した一定の条件を複数の環境状況パターンにおいて満たすか否かの判断は、数値制御装置が自立的及び自動的に実行するため、同時並行の制御に関する判断に対してユーザの負担を著しく軽減することが可能である。
【００５６】
（その他の実施の形態）
上記のように、本発明は本発明の実施の形態によって記載したが、この開示の一部をなす論述及び図面は本発明を限定するものであると理解すべきではない。この開示から当業者には様々な代替実施の形態、実施例及び運用技術が明らかとなろう。本発明はここでは記載していない様々な実施の形態等を含むことは勿論である。したがって、本発明の技術的範囲は上記の説明から妥当な特許請求の範囲に係る発明特定事項によってのみ定められるものである。
【図面の簡単な説明】
【００５７】
【図１】本発明の実施の形態に係る数値制御装置の概略図である。
【図２】本発明の実施の形態に係る数値制御装置及び工作機械等の概略図である。
【図３】本発明の実施の形態に係る数値制御装置のブロック図である。
【図４】本発明の実施の形態に係る数値制御装置の数値制御処理方法に関するフローチャート図である。
【図５】本発明の実施の形態に係る数値制御装置が処理する数値制御プログラムの概略図の一例である。
【図６】従来の数値制御装置による数値制御プログラムの処理に関するタイミングチャート図である。
【図７】本発明の実施の形態に係る数値制御装置による数値制御プログラムの処理に関するタイミングチャート図である。
【符号の説明】
【００５８】
１…数値制御装置
２…数値制御プログラム実行手段
３…工作機械制御手段
４…数値制御プログラム格納手段
５…数値制御プログラム判断手段
６…中央演算処理装置
７…ＲＯＭ
８…ＲＡＭ
９…リムーバブルディスク
１０…記憶装置
１１…軸制御回路
１２…サーボアンプ
１３…ＰＭＣ
１４…表示制御回路
１５…表示装置
１６…ユーザインタフェース手段
１７…バス
１８…通信制御手段
１９…ソフトウェアキー
２０…工作機械
３０…外部装置
３１…第１の外部装置
３２…第２の外部装置
３３…第３の外部装置
３４…外部装置
４１…ワーク搬入搬出装置
４２…金型交換装置
【図１】
2010157095.tif 000003
【図２】
2010157095.tif 000004
【図３】
2010157095.tif 000005
【図４】
2010157095.tif 000006
【図５】
2010157095.tif 000007
【図６】
2010157095.tif 000008
【図７】
2010157095.tif 000009