(57)【要約】【課題】システム環境の変化に対し速やかに対処することの可能な制御システムを提供する。【解決手段】マスタ局Ｍでは制御プログラムにしたがって順次命令を読み出し（ステップＳ２）、次に実行すべき命令が、スレーブ局宛の命令でない場合には（ステップＳ４）これを実行し（ステップＳ６）、スレーブ局宛の命令である場合には、このスレーブ局が有効であるかを軸情報テーブルＴ１を参照して判断する（ステップＳ８、Ｓ１０）。有効である場合には、これを実行して（ステップＳ６）次の命令の読み出し、無効である場合にはこの命令を実行せず、その次の命令を読み出す（ステップＳ２）。【選択図】          図３
2004192432.tif 000002
【特許請求の範囲】
【請求項１】
制御命令にしたがって被制御対象を制御する複数のスレーブ局と、
制御プログラムで指定される命令を順次読み出して実行すると共に、当該命令が前記スレーブ局に対する命令であるときにはこれを前記制御命令として該当するスレーブ局に対して命令するマスタ局と、を備えた制御システムにおいて、
前記各スレーブ局が有効であるか無効であるかを表すスレーブ局情報を有し、
前記マスタ局は、前記制御プログラムにおいて次に実行すべき次実行命令が、前記スレーブ局に対する命令であるかどうかを判断する命令内容判断手段と、
当該命令内容判断手段で、前記スレーブ局に対する命令であると判断されるとき、前記スレーブ局情報において、前記次実行命令の命令先のスレーブ局が無効に設定されているかどうかを判定する無効判定手段と、
当該無効判定手段で、前記命令先のスレーブ局が無効に設定されていることを検出したときには、前記次実行命令の実行を禁止し、その次の命令を読み出すよう指示する命令非実行制御手段と、を備えることを特徴とする制御システム。
【請求項２】
前記命令非実行制御手段は、前記無効判断手段で無効設定が行われていると判断したときには、予め設定した時間調整用の無効命令を実行した後、次の命令の読み出し指示を行うようになっていることを特徴とする請求項１記載の制御システム。
【請求項３】
スレーブ局に対する命令を実行してからその次の命令を実行するまでの所要時間に応じて設定した規定命令間隔を、スレーブ局に対する命令の種類毎に設定した命令間隔情報を有し、
前記命令非実行制御手段は、前記無効命令として、前記命令間隔情報に基づき特定される前記次実行命令に対応する規定命令間隔に相当する所要時間を有する処理を行うことを特徴とする請求項２記載の制御システム。
【請求項４】
前記規定命令間隔は、前記無効命令の実行回数であって、前記命令非実行制御手段は、指定された実行回数だけ前記無効命令を実行することを特徴とする請求項３記載の制御システム。
【請求項５】
前記無効命令は、何もしない命令であることを特徴とする請求項２又は４記載の制御システム。
【請求項６】
前記命令非実行制御手段は、前記無効命令として、前記命令間隔情報に基づき特定される前記次実行命令に対応する規定命令間隔に相当する時間を待ち時間とするウェイト処理を行うことを特徴とする請求項３記載の制御システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、インバータドライブシステムや、サーボシステム等といった数値制御システム等の、マスタ局と複数のスレーブ局とから構成される制御システムに関する。
【０００２】
【従来の技術】
従来、インバータドライブシステムや、サーボシステム等といった数値制御システムにおいては、例えば図９に示すように、複数の制御装置が通信回線を介して接続され、そのうち一つの制御装置がマスタ局Ｍとなり、このマスタ局Ｍが、他の制御装置をスレーブ局Ｓ１〜Ｓ４として管理するようになっている。そして、マスタ局Ｍが制御プログラムにしたがって、スレーブ局Ｓ１〜Ｓ４宛に命令を通知し、これに応じて各スレーブ局Ｓ１〜Ｓ４が、その被制御対象を駆動制御することによって、システム全体として所定の駆動制御が行われるようになっている。
【０００３】
このような数値制御システムにおいては、使用目的に応じた各種システムパラメータの設定や、環境設定を予め行って、システムパラメータファイルや環境設定ファイルＦを作成しておくことにより、システムに何軸まで接続可能であるか、また、何軸には何が接続されているか等といった、各軸の情報を定義しておき、マスタ局Ｍでは、前記システムパラメータファイルや環境設定ファイルＦを参照し、各スレーブ局を制御するようにしている。
【０００４】
このようなシステムパラメータの設定や、環境設定を行う方法として、例えば、特開平９−６２３２３号公報に記載されているように、自動設定を行うことにより、ユーザの負担を軽減し、また、設定ミスを防止する方法等が提案されている。
【０００５】
【特許文献１】
特開平９−６２３２３号公報
【０００６】
【発明が解決しようとする課題】
しかしながら、上記従来の数値制御システムにおいては、上述のようにシステムパラメータの設定や環境設定を行い、これら軸情報をもとにマスタ局ではシステム全体の制御を行うようにしている。
このため、環境設定ファイルには、接続されているとして登録されている軸を、例えば、調整、或いはメンテナンス等を目的として取り外した場合等には、環境設定ファイルに設定された環境と、実際の環境とが異なるため、その都度システムパラメータや、環境設定ファイルを入れ換えたり、或いは設定しなおすといった操作を行う必要があり、さらには、プログラムを個別に作成するか或いは入れ換える必要がある。
【０００７】
つまり、例えば、図９に示すようにスレーブ局として４軸設定してあった場合に、どれか１軸だけ接続して動かす場合、或いは１軸だけ取り外す場合等には、環境設定ファイルと制御プログラムとを何種類も設定する必要がある。また、導入立ち上げ時等に、各軸毎に試運転する際には、軸に応じた数の環境設定ファイルと制御プログラムを必要とすることになる。
【０００８】
また、例えば運用中において、ある１軸が故障した場合等には、全軸を停止させるか、或いは残った軸だけで運転させるには、環境設定ファイルや制御プログラムを変更する必要がある。
その結果、運用上、生産能力や稼働率の低下につながることになり、また、調整や復旧に手間や時間がかかる等といった問題がある。
そこで、この発明は、上記従来の未解決の課題に着目してなされたものであり、システム環境の変化に対し速やかに対処することの可能な制御システムを提供することを目的としている。
【０００９】
【課題を解決するための手段】
上記目的を達成するために、本発明の請求項１に係る制御システムは、制御命令にしたがって被制御対象を制御する複数のスレーブ局と、制御プログラムで指定される命令を順次読み出して実行すると共に、当該命令が前記スレーブ局に対する命令であるときにはこれを前記制御命令として該当するスレーブ局に対して命令するマスタ局と、を備えた制御システムにおいて、前記各スレーブ局が有効であるか無効であるかを表すスレーブ局情報を備え、前記マスタ局は、前記制御プログラムにおいて次に実行すべき次実行命令が、前記スレーブ局に対する命令であるかどうかを判断する命令内容判断手段と、当該命令内容判断手段で、前記スレーブ局に対する命令であると判断されるとき、前記スレーブ局情報において、前記次実行命令の命令先のスレーブ局が無効に設定されているかどうかを判定する無効判定手段と、当該無効判定手段で、前記命令先のスレーブ局が無効に設定されていることを検出したときには、前記次実行命令の実行を禁止し、その次の命令を読み出すよう指示する命令非実行制御手段と、を備えることを特徴としている。
【００１０】
この請求項１に係る発明では、予め各スレーブ局が有効であるか無効であるかを表すスレーブ局情報が設定されている。そして、マスタ局は、制御プログラムにしたがって命令を順次実行するが、このとき、次に実行すべき次実行命令が、スレーブ局に対する命令であるかどうかを判断し、スレーブ局に対する命令であると判断されるときには、スレーブ局情報を参照し、この指定されたスレーブ局が無効に設定されているかどうかを判定する。そして、指定されたスレーブ局が、スレーブ局情報において無効に設定されていることを検出したときには、次実行命令の実行を禁止し、その次の命令を読み出すよう指示する。
【００１１】
したがって、例えば、マスタ局が、スレーブ局宛に命令を行なったときには、この命令に対してスレーブ局或いは被制御対象が所定の動作を行ったときに、次の命令を実行するようになっている場合には、システムに接続されていないスレーブ局宛に命令を行った場合、スレーブ局側が所定の動作を行わないため、ここで制御プログラムが停止してしまう。
【００１２】
しかしながら、接続されていないスレーブ局については、スレーブ局情報において無効と設定しておけば、このスレーブ局宛の命令は実行されないから、スレーブ局が接続されていないことに起因して制御プログラムが停止することを回避することが可能となる。
また、請求項２に係る制御システムは、前記命令非実行制御手段は、前記無効判断手段で無効設定が行われていると判断したときには、予め設定した時間調整用の無効命令を実行した後、次の命令の読み出し指示を行うようになっていることを特徴としている。
【００１３】
この請求項２に係る発明では、次に実行すべき、スレーブ局宛の命令の命令先のスレーブ局がスレーブ局情報において無効と設定されているときには、時間調整用の無効命令を実行した後、次の命令の読み出し指示が行われる。
ここで、例えば各スレーブ局において制御される軸どうしの動作タイミングが互いに影響を及ぼすような場合、スレーブ局宛の命令を実行しない場合には、これに伴う影響が生じることになる。しかしながら、スレーブ局宛の命令を実行しない場合には時間調整用の無効命令を実行した後に、次の命令の読み出し指示が行われるから、無効命令を実行することにより、スレーブ局宛の命令を実行しないことに起因する時間調整を行うことが可能となる。
【００１４】
また、請求項３に係る制御システムは、スレーブ局に対する命令を実行してからその次の命令を実行するまでの所要時間に応じて設定した規定命令間隔を、スレーブ局に対する命令の種類毎に設定した命令間隔情報を有し、前記命令非実行制御手段は、前記無効命令として、前記命令間隔情報に基づき特定される前記次実行命令に対応する規定命令間隔に相当する所要時間を有する処理を行うことを特徴としている。
【００１５】
この請求項３に係る発明では、スレーブ局に対する命令を実行してからその次の命令を実行するまでの所要時間に応じて規定命令間隔が設定され、これがスレーブ局に対する命令毎に設定され、命令間隔情報として記憶されている。
そして、スレーブ局宛の命令であるときには、この命令に対応する規定命令間隔が、命令間隔情報に基づき特定され、特定された規定命令間隔に相当する所要時間を有する処理が、無効命令として実行される。
【００１６】
したがって、スレーブ局に対する命令に応じてその所要時間が異なるような場合であっても、実行しないスレーブ局に対する命令に対応する規定命令間隔に相当する所要時間を有する無効命令を実行することにより、的確に時間調整を行うことが可能となる。
また、請求項４に係る制御システムは、前記規定命令間隔は、前記無効命令の実行回数であって、前記命令非実行制御手段は、指定された実行回数だけ前記無効命令を実行することを特徴としている。
【００１７】
この請求項４に係る発明では、規定命令間隔として、無効命令の実行回数が設定され、この指定された実行回数だけ無効命令が実行される。つまり、無効命令一回の所要時間が短い場合でも、この無効命令を繰り返し行うことにより規定命令間隔に相当する所要時間を確保することが可能となる。
また、請求項５に係る制御システムは、前記無効命令は、何もしない命令であることを特徴としている。
【００１８】
さらに、請求項６に係る制御システムは、前記命令非実行制御手段は、前記無効命令として、前記命令間隔情報に基づき特定される前記次実行命令に対応する規定命令間隔に相当する時間を待ち時間とするウェイト処理を行うことを特徴としている。
【００１９】
【発明の実施の形態】
以下に、本発明の実施の形態を説明する。
まず、第１の実施の形態を説明する。
図１は、本発明を適用した数値制御システムの一例を示す概略構成図である。この数値制御システムは、図１に示すように、４台のスレーブ局Ｓ１〜Ｓ４とマスタ局Ｍとが通信回線を介して接続されている。そして、マスタ局Ｍでは、後述の軸情報テーブルＴ１に基づいて軸情報を認識すると共に、公知の数値制御装置におけるマスタユニットと同様に、予め設定されたシステム制御用の制御プログラムを実行し、これに基づいて各スレーブ局Ｓ１〜Ｓ４の制御指令を出力し、各スレーブ局Ｓ１〜Ｓ４では、マスタ局Ｍからの指令に基づいて図示しない被制御対象を駆動制御することによって、被制御対象がそれぞれ所定の動作を行い、システム全体として所定の動作が行われるようになっている。
【００２０】
前記軸情報テーブルＴ１は、図２に示すように、図１の数値制御システムにおいて接続可能な軸数分の情報を設定可能に形成され、各スレーブ局に対応する軸番号と、この軸を有効とするか又は無効とするかといった情報と、この軸に対応する被制御対象の機種情報とが設定されている。また、各軸に関する、システムパラメータ或いは環境設定情報等といった前述のシステムパラメータファイルや環境設定ファイルに相当するデータが軸対応で設定されている。
【００２１】
なお、ここでは、軸情報テーブルＴ１にシステムパラメータファイルや環境設定ファイルに相当するデータを登録するようにした場合について説明したが、これに限るものではなく、システムパラメータファイルや環境設定ファイルは従来と同様に別に設けておき、軸番号と、有効／無効の情報とからなる軸情報テーブルＴ１を新たに設けるようにしてもよいことはいうまでもない。
【００２２】
そして、マスタ局Ｍでは、制御プログラムにしたがって、その命令を順次読み出してこれを実行するが、その命令が、スレーブ局に対する命令である場合には、その命令先のスレーブ局が有効か無効かを前記軸情報テーブルＴ１を参照して判断し、有効であるときには指定された命令を実行するが、無効である場合にはこの命令は実行せず、次の命令の読み込みを行う。
【００２３】
なお、図１においては、４台のスレーブ局Ｓ１〜Ｓ４からなる数値制御システムを構成した場合について説明したが、これに限るものではなく、任意数のスレーブ局を接続することができる。
次に、第１の実施の形態の動作を説明する。
今、図１に示すようにスレーブ局Ｓ１〜Ｓ４及びマスタ局Ｍからなる数値制御システムにおいて、４軸に対する制御を行う４軸制御プログラムを実行するものとする。
【００２４】
ユーザは、図示しないキーボード等の入力装置を操作し、軸情報テーブルＴ１において、スレーブ局Ｓ１〜Ｓ４に対応する軸例えばＮＯ１〜４を全て有効に設定する。
この状態でシステムを起動させると、マスタ局Ｍでは、軸情報テーブルＴ１を参照し各種システムパラメータ、各種環境設定情報に基づいて、システム構成を認識する。
【００２５】
そして、マスタ局Ｍでは、図３に示す、プログラム実行処理の処理手順の一例を示すフローチャートにしたがって、指定された４軸制御プログラムを実行する。すなわち、まず、ステップＳ２で、４軸制御プログラムの先頭からその命令を読み出し、これが、軸に対する命令であるかどうか、すなわち、スレーブ局宛の命令であるかどうかを判断する（ステップＳ４）。
【００２６】
例えば読み出した命令が、単なる演算等であり、スレーブ局に対する命令でない場合には、ステップＳ６に移行し、指定された命令を実行する。そして、ステップＳ８に移行し、４軸制御プログラムが終了していなければステップＳ２に戻る。
そして、次の命令を読み出し、これが軸に対する命令であるかどうかを判断する。そして、軸に対する命令、つまり、スレーブ局宛の命令である場合には、ステップＳ８に移行し、この命令の命令先のスレーブ局つまり軸は有効であるかどうかを、軸情報テーブルＴ１をもとに判断する。
【００２７】
この場合、全てのスレーブ局Ｓ１〜Ｓ４が接続されており、軸情報テーブルＴ１には、軸Ｎｏ１〜Ｎｏ４は有効として設定されているから、ステップＳ１０からステップＳ６に移行し、指定されたスレーブ局宛の命令を実行する。そして、ステップＳ８に移行する。
次に、例えば、メンテナンスを行う場合等、何らかによって、スレーブ局Ｓ２を取り外す場合には、図２に示すように、軸情報テーブルＴ１を操作しスレーブ局Ｓ２に対応する軸Ｎｏ２を無効に切り替える。
【００２８】
そして、この状態で４軸制御プログラムを実行する。すなわち、図３のフロチャートにしたがって、命令を読み出し（ステップＳ２）、スレーブ局宛の命令であるかを判断し（ステップＳ４）、スレーブ局宛の命令でない場合にはそのままこの処理を実行する（ステップＳ６）。このとき、読み出した命令が、スレーブ局宛の命令である場合には、ステップＳ８に移行し、このスレーブ局が軸情報Ｔ１において、無効に設定されているかどうかを判定する。
【００２９】
ここで、このスレーブ局宛の命令が、スレーブ局Ｓ２宛の命令、つまり取り外された軸Ｎｏ２宛の命令である場合には、軸情報テーブルＴ１において、軸Ｎｏは無効と設定されている。したがって、ステップＳ１０からステップＳ８を経てステップＳ２に移行し、次の命令の読み出しを行う。つまり、取り外されている軸Ｎｏ２宛の命令は実行されず、スレーブ局Ｓ２宛に命令が送信されない。
【００３０】
ここで、マスタ局Ｍでは、スレーブ局Ｓ２に命令を送信した後、スレーブ局Ｓ２から、その応答を受けて次の命令の読み出しを行うようになっている場合、或いは、スレーブ局Ｓ２による被制御対象の動作結果がある状態となったときに、次の命令の読み出しを行うようになっている場合等、命令に対するスレーブ局Ｓ２側の動作が、マスタ局Ｍが制御プログラムを実行する際に影響を及ぼすような場合には、マスタ局Ｍが取り外されているスレーブ局Ｓ２に対して命令を送信すると、マスタ局Ｍでは、スレーブ局Ｓ２側の動作待ち状態となって、マスタ局Ｍにおける処理が停止してしまい、結果的にシステム全体が停止してしまう等といった影響を受ける場合がある。
【００３１】
しかしながら、上述のように、軸情報テーブルＴ１において、スレーブ局Ｓ２が無効と設定されている場合には、このスレーブ局Ｓ２宛の命令は実行せず、その次の命令の読み出しを行うから、マスタ局Ｍがスレーブ局Ｓ２側の動作待ち状態となりシステム全体が停止するなどといった影響を受けることを回避することができる。
【００３２】
したがって、このように、スレーブ局Ｓ２が取り外された状態であっても、４軸制御プログラムを実行することができるから、本来４軸を制御するための４軸制御プログラムを実行した場合でも、３軸に対する制御を行うことができる。
また、従来のように４軸制御プログラムを３軸制御プログラムに変更したりする必要はなく、軸情報テーブルＴ１において、有効／無効設定を変更するだけで容易に対応することができる。
【００３３】
また、このように、４軸制御プログラムを用いて、３軸の構成、或いは２軸の構成であってもこれら制御システムに接続されている軸に対しては制御を行うことができるから、例えば、メンテナンス時に、１軸毎に駆動させる場合、或いは系統的に駆動させる場合等、全ての軸を駆動せずに、一部の軸を駆動させるような場合であっても、軸情報テーブルＴ１においてその有効／無効設定を変更するだけで容易に試験を行うことができ、メンテナンス時のシステムの一部だけを駆動させる状態に環境を整えるまでに要する所要時間を大幅に短縮することができる。
【００３４】
また、このように、本来の数値制御システムの一部のみを駆動するような場合であっても、軸情報テーブルＴ１を変更するだけで４軸制御プログラムを実行させることができるから、例えば、運用中にある軸に異常が発生した場合には、この異常が発生した軸をシステムから取り外し、軸情報テーブルＴ１において該当する軸番号を無効に設定するだけで、４軸制御プログラムを実行させることができる。
【００３５】
したがって、故障時の数値制御システムの停止時間を、従来に比較してより削減することができ、速やかに復旧させ、正常な軸のみによる動作を開始することができる。
また、このように、メンテナンスや故障時の対処に要する所要時間を大幅に短縮することができるから、メンテナンスや故障時に数値制御システムを停止させることに伴う生産能力や稼働率の低下を回避することができる。
【００３６】
次に、本発明の第２の実施の形態を説明する。
この第２の実施の形態は、上記第１の実施の形態において、制御プログラムにおいて読み出した命令が、軸情報テーブルＴ１において、無効設定されているスレーブ局に対する命令である場合には、「何もしない命令ＮＯＰ」を実行するようにしたものである。
【００３７】
図４は、この第２の実施の形態における制御プログラム実行処理の処理手順の一例を示すフローチャートである。なお、上記第１の実施の形態と同一の処理を実行する処理には、同一符号を付与している。
図４に示すように、まず、制御プログラムの先頭から命令を読み出し（ステップＳ２）、これが軸に対する処理か、つまりスレーブ局宛の命令であるかどうかを判定し、単なる演算等、軸に対する命令ではない場合には、ステップＳ６に移行してこの命令を実行する。そして、その次の命令を読み出し、これが軸宛の命令である場合には、ステップＳ４からステップＳ８に移行し、軸情報テーブルＴ１を参照する。
【００３８】
そして、指定されたスレーブ局が有効と設定されていれば、ステップＳ１０からステップＳ６に移行して、このスレーブ局宛の命令を実行し、逆に指定されたスレーブ局が無効と設定されていれば、ステップＳ１０からステップＳ１１に移行し、何もしない命令ＮＯＰを実行する。つまり、何も行わないが、この何もしない命令ＮＯＰを実行する時間分だけ時間調整が行われることになる。
【００３９】
したがって、前記スレーブ局宛の命令を実行し、次の命令を実行するまでの所要時間が、何もしない命令ＮＯＰの実行時間と同等である場合には、何もしない命令ＮＯＰを実行した後、その次の命令を実行するタイミングと、実際にスレーブ局宛の命令を実行した後、その次の命令を実行するタイミングとは同等のタイミングとなる。よって、実際には、スレーブ局宛の命令を実行してはいないが、この命令を実行した場合と同等のタイミングで、この次の命令を実行することができる。
【００４０】
よって、各軸の動作タイミングの変化が、数値制御システム全体の運転に影響を与えるような場合であっても、動作タイミングの変化を回避することができるから、無効のスレーブ局宛の命令を実行しないことに起因して数値制御システム全体の運転に影響を与えることを回避することができる。
次に、本発明の第３の実施の形態を説明する。
【００４１】
この第３の実施の形態におけるマスタ局Ｍは、上記第１の実施の形態におけるマスタ局Ｍにおいて、さらに、図５に示す命令テーブルＴ２を有している。この命令テーブルＴ２は、図５に示すように、スレーブ局宛の命令種別と、何もしない命令ＮＯＰの実行回数とが対応付けられている。この何もしない命令の回数は、前記スレーブ局宛の命令種別毎に、マスタ局Ｍがその命令を実行してからその次の命令を実行するまでの所要時間に応じて設定され、この所要時間と、何もしない命令の実行回数だけ何もしない命令を実行したときの所要時間とが同等となる回数を、実行回数として設定する。
【００４２】
つまり、上記第２の実施の形態に記載されているように、スレーブ局宛の命令を実行せずにその次の命令を行うようにした場合、スレーブ局宛の命令を実行してからその次の命令を実行するまでの所要時間が、何もしない命令ＮＯＰを一回実行するのに要する所要時間と同等である場合には、このスレーブ局宛の命令の次の命令を実行するタイミングは、スレーブ局宛の命令を実行した場合としない場合とでは同等となる。
【００４３】
しかしながら、スレーブ局宛の命令を実行した後その次の命令を実行するまでの所要時間が、何もしない命令ＮＯＰを一回実行するのに要する所要時間を超える場合には、次に実行すべき命令の実行タイミングがずれることになる。
したがって、何もしない命令ＮＯＰを指定された実行回数だけ実行したときの所要時間と、実際にスレーブ局宛の命令を実行したときの所要時間とが一致するように、前記何もしない命令ＮＯＰの実行回数を設定する。
【００４４】
図６は、第３の実施の形態における制御プログラム実行処理の処理手順を示すフローチャートである。なお、上記第１の実施の形態と同一処理部には同一符号を付与している。
この第３の実施の形態においては、制御プログラムにおいて、その命令を読み出し（ステップＳ２）、これがスレーブ局宛の命令である場合にはステップＳ４からステップＳ８に移行して、軸情報テーブルＴ１を参照し、送信命令の送信先のスレーブ局が有効であるか無効であるかを判定し、有効である場合には、ステップＳ１０からステップＳ６に移行してこの命令を実行し、無効である場合には、ステップＳ１０からステップＳ１２に移行し、図５の命令テーブルＴ２を参照し、次に実行すべき命令の種別に対応する、何もしない命令ＮＯＰの実行回数を検索する。そして、ステップＳ１３に移行し、ステップＳ１２の処理で検索した実行回数だけ、何もしない命令ＮＯＰを実行する。そして、次に読み出す命令がある場合にはステップＳ２に戻りこれを読み出す。
【００４５】
ここで、何もしない命令ＮＯＰを指定された実行回数だけ実行したときの所要時間は、スレーブ局宛の命令を実行したときの、その次の命令を実行するまでの所要時間に相当するように設定されている。したがって、何もしない命令ＮＯＰを指定された実行回数だけ実行した後、その次の命令を実行するタイミングは、スレーブ局宛の命令を実行した後、その次の命令を実行するタイミングと同等となる。
【００４６】
したがって、この場合も上記第２の実施の形態と同様に、実行しなかった命令の次の命令を実行するタイミングを、命令を実行した場合と同等のタイミングにすることができる。よって、この場合も上記第２の実施の形態と同等の作用効果を得ることができると共に、この第３の実施の形態においては、何もしない命令ＮＯＰの実行回数を、命令内容に応じて任意に設定することができるから、スレーブ局宛の命令の種類によって、その所要時間が異なる場合でも、的確に動作タイミングを一致させることができる。
【００４７】
なお、上記第２及び第３の実施の形態においては、何もしない命令ＮＯＰを実行するようにした場合について説明したが、これに限らず、例えば、ある変数に零を加算する命令等、影響を及ぼすことがなく意味のない演算を行うようにしてもよい。
また、上記第３の実施の形態においては、何もしない命令ＮＯＰを所定回数繰り返すようにしているが、何もしない命令ＮＯＰを所定回数繰り返したときの所要時間と同等の所要時間を有する、前述の影響を及ぼさない演算等を行うようにしてもよい。
【００４８】
次に、本発明の第４の実施の形態を説明する。
この第４の実施の形態は、上記第３の実施の形態において、命令テーブルＴ２に替えて、図７に示す待ち時間テーブルＴ３を備えている。この待ち時間テーブルＴ３は、図７に示すように、スレーブ局宛の命令種別と、待ち時間とが対応付けられている。この待ち時間は、前記スレーブ局宛の命令種別毎に、マスタ局Ｍがその命令を実行してからその次の命令を実行するまでの所要時間に応じて設定されている。
【００４９】
つまり、上記第３の実施の形態においては、何もしない命令ＮＯＰを所定回数実行することによってタイミング調整を行うようにしているのに対し、この第４の実施の形態は、所定の待ち時間だけ待つようにしている。
図８は、第４の実施の形態における制御プログラム実行処理の処理手順を示すフローチャートである。なお、上記第１の実施の形態と同一処理部には同一符号を付与している。
【００５０】
この第４の実施の形態においては、制御プログラムにおいて、その命令を読み出し（ステップＳ２）、これがスレーブ局宛の命令である場合にはステップＳ４からステップＳ８に移行して、軸情報テーブルＴ１を参照し、送信命令の送信先のスレーブ局が有効であるか無効であるかを判定し、有効である場合には、ステップＳ１０からステップＳ６に移行してこの命令を実行し、無効である場合には、ステップＳ１０からステップＳ１４に移行し、図７の待ち時間テーブルＴ３を参照し、指定された命令の種別に対応する、待ち時間を検索する。そして、ステップＳ１５に移行し、ステップＳ１４の処理で検索した待ち時間だけウェイト処理を行う。つまり何もしないで待機する。
【００５１】
ここで、待ち時間テーブルＴ３に設定された待ち時間は、スレーブ局宛の命令を実行したときの、その次の命令を実行するまでの所要時間に相当するように設定されている。したがって、指定された待ち時間経過後に次の命令を実行するタイミングは、スレーブ局宛の命令を実行した後、その次の命令を実行するタイミングと同等となる。
【００５２】
したがって、この場合も上記第３の実施の形態と同等の作用効果を得ることができる。
なお、前記ウェイト処理は、具体的にはカウンタにより所定回数カウント処理を行うようにすればよい。したがって、待ち時間テーブルＴ３には、カウンタ値を設定するようにしてもよい。
【００５３】
また、上記各実施の形態においては、軸情報テーブルＴ１をマスタ局に設けた場合について説明したが、これに限るものではなく、例えば、記憶装置等に設けるようにしてもよく、要は、マスタ局Ｍから参照可能であれば、どこに設けてもよい。また、上記第３の実施の形態における命令テーブルＴ２及び第４の実施の形態における待ち時間テーブルＴ３も同様に、マスタ局Ｍから参照可能であれば、どこに設けてもよい。
【００５４】
ここで、上記各実施の形態において、軸情報テーブルＴ１がスレーブ局情報に対応し、図３、図４、図６及び図８のステップＳ４の処理が命令内容判断手段に対応し、ステップＳ８及びＳ１０の処理が無効判定手段に対応し、ステップＳ１０から８を経てステップＳ２に移行する処理が命令非実行制御手段に対応している。また、第３の実施の形態における命令テーブルＴ２及び第４の実施の形態における待ち時間テーブルＴ３が命令間隔情報に対応している。
【００５５】
【発明の効果】
以上説明したように、本発明の請求項１に係る発明によれば、次に実行すべき命令が、スレーブ局に対する命令であり、且つスレーブ局情報に無効として設定されている場合には、この命令の実行は行わず、その次の命令を読み出すようにしたから、接続されていないスレーブ局宛に命令を行った場合に制御プログラムが停止してしまうような制御システムであっても、スレーブ局情報において有効無効の設定を行うことによって、同一の制御プログラムを用いて、一部のスレーブ局のみを容易に駆動させることができる。
【００５６】
また、請求項２に係る制御システムによれば、次に実行すべき命令の命令先のスレーブ局が、スレーブ局情報において無効と設定されているときには、時間調整用の無効命令を実行した後、次の命令の読み出し指示を行うようにしたから、スレーブ局宛の命令を実行しないことに起因して、この次の命令の実行タイミングがずれることを回避することができる。
【００５７】
また、請求項３に係る制御システムによれば、スレーブ局に対する命令を実行してからその次の命令を実行するまでの所要時間に応じて設定した規定命令間隔とスレーブ局に対する命令の種類毎との対応を命令間隔情報として設定しておき、スレーブ局宛の命令であるときには、この命令に対応する規定命令間隔に相当する所要時間を有する処理を、無効命令として実行するようにしたから、スレーブ局に対する命令種に応じてその所要時間が異なるような場合であっても、的確に時間調整を行うことができる。
【００５８】
また、請求項４に係る制御システムによれば、規定命令間隔として無効命令の実行回数を設定し、指定された実行回数だけ無効命令を実行するようにしたから、無効命令一回の所要時間が短い場合でも、この無効命令を繰り返し行うことによって規定命令間隔に相当する所要時間分の時間調整を行うことができる。
また、請求項５に係る制御システムによれば、無効命令として何もしない命令を行うようにしたから、悪影響を与えることなく、容易に時間調整を行うことができる。
【００５９】
さらに、請求項６に係る制御システムによれば、無効命令として実行しない命令に対応する規定命令間隔に相当する時間だけウェイト処理を行うようにしたから、悪影響を与えることなく、容易且つより的確に時間調整を行うことができる。
【図面の簡単な説明】
【図１】本発明を適用した数値制御システムの一例を示す構成図である。
【図２】軸情報テーブルＴ１の一例である。
【図３】第１の実施の形態における制御プログラム実行処理の処理手順の一例を示すフローチャートである。
【図４】第２の実施の形態における制御プログラム実行処理の処理手順の一例を示すフローチャートである。
【図５】命令テーブルＴ２の一例である。
【図６】第３の実施の形態における制御プログラム実行処理の処理手順の一例を示すフローチャートである。
【図７】待ち時間テーブルＴ３の一例である。
【図８】第４の実施の形態における制御プログラム実行処理の処理手順の一例を示すフローチャートである。
【図９】従来の数値制御システムの一例である。
【符号の説明】
Ｍ  マスタ局
Ｓ１〜Ｓ４  スレーブ局
Ｔ１  軸情報テーブル
Ｔ２  命令テーブル
Ｔ３  待ち時間テーブル
【図１】
2004192432.tif 000003
【図２】
2004192432.tif 000004
【図３】
2004192432.tif 000005
【図４】
2004192432.tif 000006
【図５】
2004192432.tif 000007
【図６】
2004192432.tif 000008
【図７】
2004192432.tif 000009
【図８】
2004192432.tif 000010
【図９】
2004192432.tif 000011