(57)【要約】【課題】通信品質が悪い環境下において、数値制御装置との間で通信異常が発生したときに、工作機械の構成機器への信号出力を停止できる入出力制御装置を得ること。【解決手段】シーケンス番号が同一のデータの受信間隔に基づいて異常を検出する同一データ通信間隔監視部５と、シーケンス番号が設定数異なるデータの受信間隔に基づいて異常を検出するシーケンスデータ通信間隔監視部４と、を備え、同一データ通信間隔監視部５及びシーケンスデータ通信間隔監視部４の少なくとも一方が異常を検出した場合に、数値制御装置１に異常検出を通知するとともに、工作機械の構成機器２への信号出力を停止する。【選択図】図１
2014191724.tif 000002
【特許請求の範囲】
【請求項１】
シーケンス番号が同一のデータを複数回出力することを前記シーケンス番号を変えながら繰り返す数値制御装置に接続され、
工作機械の構成機器から入力した信号を前記数値制御装置へ出力し、該数値制御装置から入力されたデータに基づいて前記工作機械の構成機器へ信号を出力する入出力制御装置であって、
前記シーケンス番号が同一のデータの受信間隔に基づいて異常を検出する同一データ通信間隔監視部と、
前記シーケンス番号が設定数異なるデータの受信間隔に基づいて異常を検出するシーケンスデータ通信間隔監視部と、
を備え、
前記同一データ通信間隔監視部及び前記シーケンスデータ通信間隔監視部の少なくとも一方が異常を検出した場合に、前記数値制御装置に異常検出を通知するとともに、前記工作機械の構成機器への信号出力を停止することを特徴とする入出力制御装置。
【請求項２】
前記同一データ通信間隔監視部は、シーケンス番号が同一のデータを、第１最短通信間隔よりも短い間隔で受信するか、または、第１最長通信間隔の間に受信できない場合に異常を検出することを特徴とする請求項１に記載の入出力制御装置。
【請求項３】
前記シーケンスデータ通信間隔監視部は、シーケンス番号が２以上異なるデータを第２最短通信間隔よりも短い間隔で受信するか、または、第２最長通信間隔の間に受信できない場合に異常を検出することを特徴とする請求項１又は２に記載の入出力制御装置。
【請求項４】
前記同一データ通信間隔監視部及び前記シーケンスデータ通信間隔監視部の有効／無効を切り替える入力端子を備えることを特徴とする請求項１から３のいずれか１項に記載の入出力制御装置。
【請求項５】
前記数値制御装置に対して複数台接続される請求項１から４のいずれか１項に記載の入出力制御装置であって、
自装置又は他の入出力装置で異常が発生した際に、前記同一データ通信間隔監視部及び前記シーケンスデータ通信間隔監視部を、新規に異常を検出しない動作モードへ移行させ、
前記数値制御装置から異常の解消が通知された際に、前記同一データ通信間隔監視部及び前記シーケンスデータ通信間隔監視部を、異常を検出する動作モードへ移行させるとともに、前記工作機械の構成機器への信号出力を再開する通信間隔監視部通知モード管理部を備えることを特徴とする入出力制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、工作機械の数値制御処理等を行う数値制御装置とデータ通信し、工作機械内の機器との信号の入出力を行う入出力制御装置に関する。
【背景技術】
【０００２】
従来、複数のアクチュエータとセンサとが接続されたノードとホストコントローラとを直列に接続したシステムにおいて、各ノードはメインコントローラからのデータフレーム信号の受信間隔が所定時間を超えると、アクチュエータへの出力データを強制的にオフする直列制御装置がある（特許文献１参照）。
【０００３】
送信側の端末は更新期間ごとにカウントアップする更新周期シーケンス番号を付与した制御情報フレームを送信し、受信側の端末はフレームの受信間隔を計測して、あらかじめ設定された更新周期を超えた場合にエラーを通知するサイクリック通信における監視装置及び監視方法がある（特許文献２参照）。
【０００４】
通信装置及び通信装置における故障判定方法に関するもので、複数のノードがバスを介して接続された車載ネットワークシステムにおいて、受信メッセージの受信間隔を揮発性メモリに記憶された閾値と比較し、閾値よりも短いとき、そのフレームを送信したノードを故障と判定する方法がある（特許文献３参照）。
【０００５】
従来の通信装置ではデータリンク層のリンク状態を迅速に判定することを目的とし、ある間隔内で順次到着するフラグの受信状態を監視し、フラグをある周機内で受信できなくなればリンク切れと判定する監視機能を送信／受信側で設定する方式がある（特許文献４参照）。
【０００６】
二重ループ構成における環状光通信網において、一つの局がダウンと復旧とを繰り返した時のシステム再構成動作を安定化するため、コントローラから構成保持信号を出力してループバック構成をすぐに解除しないようにし、構成保持信号の削除により正常構成に戻している（特許文献５参照）。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特許第２５１２８３２号公報
【特許文献２】特開２００９−１４１４７３号公報
【特許文献３】特開２００９−１７１３１０号公報
【特許文献４】特開２００４−２０７８７８号公報
【特許文献５】特開昭６１−１５４４４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
数値制御装置から入出力制御装置への出力は、通信ラインが不安定な可能性があるため、同一データを複数回送信するケースがある。
【０００９】
特許文献１、２では、データの受信間隔が所定時間を超えたことのチェック及び更新周期ごとにデータシーケンス番号が連続であることをチェックしているが、複数のシーケンスデータの受信間隔及び同一データについて、それぞれ別の受信間隔を用いてデータの正常／異常を判断することができず、同一データを複数回送信して通信を保証するシステムにおいては、異常を誤検出するケースがあった。
【００１０】
特許文献１、３では、データの受信間隔が所定時間を超えたことのチェック及び受信間隔が所定値よりも短い時に異常を判定することはできるが、データのシーケンス番号や同一データ受信といったデータに着目した受信間隔の正常／異常を判定することはできない。
【００１１】
特許文献４では、装置内部の状態に応じて有効／無効フラグの受信状態を監視してリンク状態を判定しているが、回路誤動作又はソフトエラーによる装置内部のレジスタのビット化けにより、誤動作が発生することを防止できない。
【００１２】
特許文献５では、異常発生時にシステム制御部から構成保持信号を送出して自動的に正常状態へ遷移することを防止できるが、異常発生局以外の局への異常通知手段や、異常を検出した全ての装置の異常原因を正常にクリアする手段がなく、入出力制御装置が誤動作することを防止できない。
【００１３】
本発明は、上記に鑑みてなされたものであって、通信品質が悪い環境下において、数値制御装置との間で通信異常が発生したときに、工作機械の構成機器への信号出力を停止できる入出力制御装置を得ることを目的とする。
【課題を解決するための手段】
【００１４】
上述した課題を解決し、目的を達成するために、本発明は、シーケンス番号が同一のデータを複数回出力することをシーケンス番号を変えながら繰り返す数値制御装置に接続され、工作機械の構成機器から入力した信号を数値制御装置へ出力し、該数値制御装置から入力されたデータに基づいて工作機械の構成機器へ信号を出力する入出力制御装置であって、シーケンス番号が同一のデータの受信間隔に基づいて異常を検出する同一データ通信間隔監視部と、シーケンス番号が設定数異なるデータの受信間隔に基づいて異常を検出するシーケンスデータ通信間隔監視部と、を備え、同一データ通信間隔監視部及びシーケンスデータの通信間隔監視部の少なくとも一方が異常を検出した場合に、数値制御装置に異常検出を通知するとともに、工作機械の構成機器への信号出力を停止することを特徴とする。
【発明の効果】
【００１５】
本発明によれば、同一のデータの受信間隔が適正でない場合やシーケンスデータの受信間隔が適正でない場合に工作機械内の異常を検出できるという効果を奏する。
【図面の簡単な説明】
【００１６】
【図１】図１は、本発明にかかる入出力制御装置の実施の形態１の構成を示す図である。
【図２】図２は、通信間隔管理テーブルの構成を示す図である。
【図３】図３は、データ異常検出の監視期間を説明するための図である。
【図４】図４は、同一データ通信間隔監視部の動作の流れを示すフローチャートである。
【図５】図５は、シーケンスデータ通信間隔監視部の動作の流れを示す図である。
【図６】図６は、本発明にかかる入出力制御装置の実施の形態２の構成を示す図である。
【図７】図７は、実施の形態２にかかる入出力制御装置の動作の流れを示す図である。
【図８】図８は、本発明にかかる入出力制御装置の実施の形態３の構成を示す図である。
【図９】図９は、数値制御装置向けの通信動作モードを管理する処理の流れを示す図である。
【図１０】図１０は、通信間隔状態を確認する処理の詳細を示す図である。
【図１１】図１１は、ステータスの遷移処理の詳細を示す図である。
【図１２】図１２は、実施の形態３にかかる入出力制御装置を用いたシステムにおける異常検出から異常要因クリアまでの動作シーケンスの一例を示す図である。
【発明を実施するための形態】
【００１７】
以下に、本発明にかかる入出力制御装置の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００１８】
実施の形態１．
図１は、本発明にかかる入出力制御装置の実施の形態１の構成を示す図である。入出力制御装置３（３１，３２，３３）は、数値制御装置１の出力するデジタルデータをアナログ信号に変換して工作機械の構成機器２へ出力したり、工作機械の構成機器２から入力されるアナログ信号をデジタルデータに変換して数値制御装置１へ出力する。入出力制御装置３（３１，３２，３３）は、シーケンスデータ通信間隔監視部４（４１，４２，４３）と、同一データ通信間隔監視部５（５１，５２，５３）と、通信間隔管理テーブル６（６１，６２，６３）とを有する。シーケンスデータ通信間隔監視部４１は、フリーランカウンタ４１１を有する。図示は省略しているが、シーケンスデータ通信間隔監視部４２，４３も、シーケンスデータ通信間隔監視部４１と同様にフリーランカウンタを有している。同一データ通信間隔監視部５１は、フリーランカウンタ５１１とデータ比較バッファ５２１とを有する。図示は省略しているが、同一データ通信間隔監視部５２，５３も、同一データ通信間隔監視部５１と同様にフリーランカウンタを有している。なお、以下の説明では、入出力制御装置３１，３２，３３に共通する事項を説明し、区別する必要が無い場合には、入出力制御装置３と表記する。入出力制御装置３内の各機能部についても同様である。
【００１９】
入出力制御装置３は、直列に複数台接続され、各局には工作機械の構成機器２が接続されている。直列に接続された複数台の入出力制御装置３の一端側に位置する入出力制御装置３１には、数値入力装置１が接続されている。
【００２０】
図２は、通信間隔管理テーブルの構成を示す図である。通信間隔管理テーブル６は、局番号１２、最短通信間隔１３、最長通信間隔１４、シーケンス番号１５、チェックフレーム数１７、最短通信間隔１８及び最長通信間隔１９を含む。局番号１２は、自局に設定された局番号である。最短通信間隔１３は、シーケンス番号が所定数異なるデータを設定された値よりも短い間隔で受信した場合に異常を検出したと判断するための閾値（第２最短通信間隔）である。最長通信間隔１４は、シーケンス番号が所定数異なるデータを設定された値よりも長い間隔で受信した場合に異常を検出したと判断するための閾値（第２最長通信間隔）である。シーケンス番号１５は、シーケンス番号が所定数異なるデータの受信間隔を監視している時の監視開始時の受信データのシーケンス番号である。チェックフレーム数１７は、何フレーム分のデータの受信間隔を監視するか（シーケンス番号がいくつ違うデータの受信間隔を監視するか）を示す値である。例えば、チェックフレーム数１７に「２」が設定されている場合、シーケンスデータ通信間隔監視部４は、シーケンス番号「１」のデータからシーケンスデータの受信間隔の監視を開始したならば、シーケンス番号１５の値とチェックフレーム数１７の値との和であるシーケンス番号「３」のデータを受信するまでの間隔を基に異常の有無を判断する。
【００２１】
最短通信間隔１８は、設定された値よりも短い間隔で同一データを受信した場合に異常を検出したと判断するための閾値（第１最短通信間隔）である。最長通信間隔１９は、設定された値よりも長い間隔で同一データを受信した場合に異常を検出したと判断するための閾値（第１最長通信間隔）である。
【００２２】
図３は、データ異常検出の監視期間を説明するための図である。ここでは、局番号として「１」が設定されている入出力制御装置３での動作を例とする。データのアドレスは、宛先の入出力制御装置３の局番号を表している。なお、チェックフレーム数１７には「２」が設定されているものとする。数値制御装置１は、シーケンス番号が同一のデータを複数回出力することを、シーケンス番号を変えながら繰り返している。シーケンス番号及びアドレスが同じデータ（例えばデータ１１１ａとデータ１１１ｂ）は同一のデータであり、数値制御装置１から一定の間隔で出力されている。また、アドレスが同一でシーケンス番号が異なるデータは、数値制御装置１から一定の間隔で出力されている。一例としてシーケンス番号が「２」異なるデータ（例えば、データ１１１ａとデータ１１３ａ）は数値制御装置１から一定の間隔で出力されている。なお、アドレスが同一でシーケンス番号が異なるデータが数値制御装置１から出力される間隔は、シーケンス番号の差分が大きくなるにつれて長くなる。
【００２３】
入出力制御装置３は、データ１１１ａを受信した段階で監視動作を開始する。この際、シーケンスデータ通信間隔監視部４は、通信間隔管理テーブル６のシーケンス番号１５に「１」をセットする。また、同一データ通信間隔監視部５は、データ１１１ａをデータ比較バッファ５２に保持する。
【００２４】
同一データ通信間隔監視部５及びシーケンスデータ通信間隔監視部４は、データ２１１ａ，３１１ａを受信した際に、ヘッダに記載されているアドレスを確認する。データ２１１ａのアドレスは「２」、データ３１１ａのアドレスは「３」であり、通信間隔管理テーブル６の局番号１２に設定されている「１」と一致しないため、同一データ通信間隔及びシーケンスデータ通信間隔の監視を継続する。
【００２５】
同一データ通信間隔監視部５及びシーケンスデータ通信間隔監視部４は、データ１１１ｂを受信した際に、ヘッダに記載されているアドレスを確認する。データ１１１ｂのアドレスは「１」であり、通信間隔管理テーブル６の局番号１２に設定されている「１」と一致し、かつ、データ１１１ｂはデータ比較バッファ５２に保持されているデータ１１１ａと同一である。このため、同一データ通信間隔監視部５は、データ１１１ａを受信してからデータ１１１ｂを受信するまでの間隔を同一データ通信間隔として、最短通信間隔１８及び最長通信間隔１９との比較により異常の有無を判断する。同一データ通信間隔監視部５は、データ１１１ｂをデータ比較バッファ５２に保持し、新たに同一データ通信間隔の監視を開始する。一方、データ１１１ｂのシーケンス番号「１」は、シーケンス番号１５の値「１」とチェックフレーム数１７の値「２」との和と一致しないため、シーケンスデータ通信間隔監視部４はシーケンスデータ通信間隔の監視を継続する。
【００２６】
同一データ通信間隔監視部５及びシーケンスデータ通信間隔監視部４は、データ２１１ｂ，３１１ｂを受信した際に、ヘッダに記載されているアドレスを確認する。データ２１１ｂのアドレスは「２」、データ３１１ｂのアドレスは「３」であり、通信間隔管理テーブル６の局番号１２に設定されている「１」と一致しないため、同一データ通信間隔及びシーケンスデータ通信間隔の監視を継続する。
【００２７】
同一データ通信間隔監視部５及びシーケンスデータ通信間隔監視部４は、データ１１２ａを受信した際に、ヘッダに記載されているアドレスを確認する。データ１１２ａのアドレスは「１」であり、通信間隔管理テーブル６の局番号１２に設定されている「１」と一致するが、データ比較バッファ５２に保持されているデータ１１１ｂと同一ではない。このため同一データ通信間隔監視部５は、データ１１２ａをデータ比較バッファ５２に保持した上で、同一データ通信間隔の監視を継続する。また、データ１１２ａのシーケンス番号「２」は、シーケンス番号１５の値「１」とチェックフレーム数１７の値「２」との和と一致しないため、シーケンスデータ通信間隔監視部４はシーケンスデータ通信間隔の監視を継続する。
【００２８】
同一データ通信間隔監視部５及びシーケンスデータ通信間隔監視部４は、データ２１２ａ，３１２ａを受信した際に、ヘッダに記載されているアドレスを確認する。データ２１２ａのアドレスは「２」、データ３１２ａのアドレスは「３」であり、通信間隔管理テーブル６の局番号１２に設定されている「１」と一致しないため、同一データ通信間隔及びシーケンスデータ通信間隔の監視を継続する。
【００２９】
同一データ通信間隔監視部５及びシーケンスデータ通信間隔監視部４は、データ１１２ｂを受信した際に、ヘッダに記載されているアドレスを確認する。データ１１２ｂのアドレスは「１」であり、通信間隔管理テーブル６の局番号１２に設定されている「１」と一致し、かつ、データ比較バッファ５２に保持されているデータ１１２ａと同一である。このため、同一データ通信間隔監視部５は、データ１１２ａを受信してからデータ１１２ｂを受信するまでの間隔を同一データ通信間隔として、最短通信間隔１８及び最長通信間隔１９との比較により異常の有無を判断する。同一データ通信間隔監視部５は、データ１１２ｂをデータ比較バッファ５２に保持し、新たに同一データ通信間隔の監視を開始する。一方、データ１１２ｂのシーケンス番号「２」は、シーケンス番号１５の値「１」とチェックフレーム数１７の値「２」との和と一致しないため、シーケンスデータ通信間隔監視部４はシーケンスデータ通信間隔の監視を継続する。
【００３０】
同一データ通信間隔監視部５及びシーケンスデータ通信間隔監視部４は、データ２１２ｂ，３１２ｂを受信した際に、ヘッダに記載されているアドレスを確認する。データ２１２ｂのアドレスは「２」、データ３１２ｂのアドレスは「３」であり、通信間隔管理テーブル６の局番号１２に設定されている「１」と一致しないため、同一データ通信間隔及びシーケンスデータ通信間隔の監視を継続する。
【００３１】
同一データ通信間隔監視部５及びシーケンスデータ通信間隔監視部４は、データ１１３ａを受信した際に、ヘッダに記載されているアドレスを確認する。データ１１３ａのアドレスは「１」であり、通信間隔管理テーブル６の局番号１２に設定されている「１」と一致するが、データ比較バッファ５２に保持されているデータ１１２ｂと同一ではない。このため同一データ通信間隔監視部５は、データ１１３ａをデータ比較バッファ５２に保持した上で、同一データ通信間隔の監視を継続する。一方、データ１１３ａのシーケンス番号「３」は、シーケンス番号１５の値「１」とチェックフレーム数１７の値「２」との和と一致するため、シーケンスデータ通信間隔監視部４は、データ１１１ａを受信してからデータ１１３ａを受信するまでの間隔をシーケンスデータ通信間隔として、最短通信間隔１３及び最長通信間隔１４との比較により異常の有無を判断する。シーケンスデータ通信間隔監視部４は、通信間隔管理テーブル６のシーケンス番号１５に「１」をセットし、新たにシーケンスデータ通信間隔の監視を開始する。
【００３２】
以降、上記同様にして、同一データ通信間隔及びシーケンスデータ通信間隔の判断が行われる。
【００３３】
次に、同一データ通信間隔監視部５の動作について説明する。図４は、同一データ通信間隔監視部の動作の流れを示すフローチャートである。初期化処理として、最短通信間隔１８及び最長通信間隔１９に、数値制御装置１から入力された値をセットする（ステップＳ２１）。
【００３４】
初期化処理の終了後、同一データ通信間隔監視部５の動作を開始するために、同一データ通信間隔監視部５は、フリーランカウンタ５１をクリアする（ステップＳ２２）。
【００３５】
動作開始後、同一データ通信間隔監視部５は、フリーランカウンタ５１の値が最長通信間隔１９にセットされた値を超過しているか否かを判断する（ステップＳ２３）。超過している場合には（ステップＳ２３／Ｙｅｓ）、同一データ通信間隔監視部５は、最長通信間隔異常を検出し、最長通信間隔異常の発生を数値制御装置１へ通知するとともに、工作機械の構成機器２への信号出力を停止して（ステップＳ２４）、ステップＳ２１へ進む。
【００３６】
フリーランカウンタ５１の値が最長通信間隔１９にセットされた値を超過していない場合（ステップＳ２３／Ｎｏ）、同一データ通信間隔監視部５は、データ比較バッファ５２に保持されているデータと同一のデータを受信したか否かを判断する（ステップＳ２５）。受信していなければ（ステップＳ２５／Ｎｏ）、同一データ通信間隔監視部５は、データ比較バッファ５２に保持されているデータと異なるデータを受信したか否かを判断する（ステップＳ２ａ）。受信した場合は（ステップＳ２ａ／Ｙｅｓ）、同一データ通信間隔監視部５は、受信したデータをデータ比較バッファ５２に保存する（ステップＳ２ｂ）。そして、同一データ通信間隔監視部５は、フリーランカウンタ５１をカウントアップし（ステップＳ２９）、ステップＳ２３へ戻る。
【００３７】
データ比較バッファ５２に保持されているデータと同一のデータを受信していない場合は（ステップＳ２ａ／Ｎｏ）、同一データ通信間隔監視部５は、フリーランカウンタ５１をカウントアップし（ステップＳ２９）、ステップＳ２３に戻る。
【００３８】
データ比較バッファ５２に保持されているデータと同一のデータを受信した場合は（ステップＳ２５／Ｙｅｓ）、同一データ通信間隔監視部５は、フリーランカウンタ５１の値が最短通信間隔１８にセットされた値よりも小さいかを判断する（ステップＳ２６）。フリーランカウンタ５１の値が最短通信間隔１８にセットされた値よりも小さい場合（ステップＳ２６／Ｙｅｓ）、同一データ通信間隔監視部５は、最短通信間隔異常を検出し、最短通信間隔異常の発生を数値制御装置１へ通知するとともに、工作機械の構成機器２へ信号出力を停止して（ステップＳ２７）、ステップＳ２１へ進む。
【００３９】
フリーランカウンタ５１の値が最短通信間隔１８にセットされた値以上である場合（ステップＳ２６／Ｎｏ）、同一データ通信間隔監視部５は、フリーランカウンタ５１をクリアする（ステップＳ２８）。同一データ通信間隔監視部５は、フリーランカウンタ５１をカウントアップし（ステップＳ２９）、ステップＳ２３へ戻る。
【００４０】
次に、シーケンスデータ通信間隔監視部４の動作について説明する。図５は、シーケンスデータ通信間隔監視部の動作の流れを示す図である。初期化処理として、シーケンスデータ通信間隔監視部４は、最短通信間隔１３、最長通信間隔１４及びチェックフレーム数１７に、数値制御装置１から入力された値をセットする（ステップＳ３１）。
【００４１】
初期化処理の終了後、シーケンスデータ通信間隔監視部４は、動作を開始するために、フリーランカウンタ４１をクリアする（ステップＳ３２）。
【００４２】
動作開始後、シーケンスデータ通信間隔監視部４は、フリーランカウンタ４１の値が最長通信間隔１４にセットされた値を超過しているか否かを判断する（ステップＳ３３）。超過している場合には（ステップＳ３３／Ｙｅｓ）、シーケンスデータ通信間隔監視部４は、最長通信間隔異常を検出し、最長通信間隔異常の発生を数値制御装置１へ通知するとともに、工作機械の構成機器２への信号出力を停止して（ステップＳ３４）、ステップＳ３１へ進む。
【００４３】
フリーランカウンタ４１の値が最長通信間隔１４にセットされた値を超過していない場合（ステップＳ３３／Ｎｏ）、シーケンスデータ通信間隔監視部４は、正常なシーケンス番号を持つデータを受信しているか否かを判断する（ステップＳ３５）。正常なシーケンス番号を持つデータを受信していない場合（ステップＳ３５／Ｎｏ）、シーケンスデータ通信間隔監視部４は、フリーランカウンタ４１をカウントアップし（ステップＳ３９）、ステップＳ３３に戻る。
【００４４】
正常なシーケンス番号を持つデータを受信した場合（ステップＳ３５／Ｙｅｓ）、シーケンスデータ通信間隔監視部４は、フリーランカウンタ４１の値が最短通信間隔１３にセットされた値よりも小さいかを判断する（ステップＳ３６）。フリーランカウンタ４１の値が最短通信間隔１３にセットされた値よりも小さい場合（ステップＳ３６／Ｙｅｓ）、シーケンスデータ通信間隔監視部４は、最短通信間隔異常を検出し、最短通信間隔異常の発生を数値制御装置１へ通知するとともに、工作機械の構成機器２への信号出力を停止して（ステップＳ３７）、ステップＳ３１へ進む。
【００４５】
フリーランカウンタ４１の値が最短通信間隔１３にセットされた値以上である場合（ステップＳ３６／Ｎｏ）、シーケンスデータ通信間隔監視部４は、フリーランカウンタ４１をクリアする（ステップＳ３８）。シーケンスデータ通信間隔監視部４は、フリーランカウンタ４１をカウントアップし（ステップＳ３９）、ステップＳ３３に戻る。
【００４６】
同一データ通信間隔監視部５及びシーケンスデータ通信間隔監視部４が上記の動作を行うことにより、最短通信間隔以内に不正データ通信を検出した場合や、最長通信間隔を超えて同一又は正常な順序のデータを送受信できないときに、入出力制御装置３が異常を検出できる。
【００４７】
本実施の形態によれば、モータ及び他の工作機械といったノイズ源となる機器が動作する通信品質が悪い環境下において、数値制御装置が複数回送信する同一データ及び正しいシーケンス番号が付与されたデータそれぞれの通信間隔を監視することで、シーケンス番号が付与された複数のデータの通信間隔に異常があるときに、工作機械の構成機器へ出力する信号を停止できる。
【００４８】
本実施の形態によれば、同一データ及び正しいシーケンス番号が付与されたデータのそれぞれについて通信間隔をチェックして異常時に工作機械の構成機器への信号出力を停止することができる。
【００４９】
実施の形態２．
図６は、本発明にかかる入出力制御装置の実施の形態２の構成を示す図である。実施の形態２にかかる入出力制御装置３は、シーケンスデータ通信間隔監視部４及び同一データ通信間隔監視部５の有効／無効を決定する信号を入力するための入力端子４２を備えており、シーケンスデータ通信間隔監視部４及び同一データ通信間隔監視部５は、有効／無効の設定内容を不揮発に記憶可能に構成されている。シーケンスデータ通信間隔監視部４及び同一データ通信間隔監視部５は、有効とする設定が入力端子４２を介してなされている場合にはシーケンスデータ通信間隔及び同一データ通信間隔の監視を行う。一方、シーケンスデータ通信間隔監視部４及び同一データ通信間隔監視部５は、無効とする設定が入力端子４２を介してなされている場合にはシーケンスデータ通信間隔及び同一データ通信間隔の監視を行わない。
【００５０】
図７は、実施の形態２にかかる入出力制御装置の動作の流れを示す図である。入出力制御装置３は、データを受信したかを監視する（ステップＳ５１）。データを受信していない場合（ステップＳ５１／Ｎｏ）、データを受信するまで監視を継続する。
【００５１】
データを受信した場合（ステップＳ５１／Ｙｅｓ）、入出力制御装置３は、シーケンスデータ通信間隔監視部４及び同一データ通信間隔監視部５が有効になっているかを確認する（ステップＳ５２）。シーケンスデータ通信間隔監視部４及び同一データ通信間隔監視部５が無効になっていれば（ステップＳ５２／Ｎｏ）、入出力制御装置３は、シーケンスデータの通信間隔を監視する処理及び同一データの通信間隔を監視する処理を行わない。
【００５２】
シーケンスデータ通信間隔監視部４及び同一データ通信間隔監視部５が有効になっていれば（ステップＳ５２／Ｙｅｓ）、入出力制御装置３は、シーケンスデータ通信間隔監視部４にシーケンスデータ通信間隔監視処理を行わせ（ステップＳ５３）、同一データ通信間隔監視部５に同一データ通信間隔監視処理（ステップＳ５４）を行わせる。
【００５３】
本実施の形態によれば、ハードウェア端子により固定的に有効／無効を判定するための機能を有することで、装置内部のレジスタ状態に依存せず、有効なデータのみを受理できる。これにより、入出力制御装置３の内部状態に依存せずに受信データの有効／無効を判定することができ、無効なデータを工作機械の構成機器２へ出力しないことで、工作機械の異常動作を防止できる。
【００５４】
実施の形態３．
図８は、本発明にかかる入出力制御装置の実施の形態３の構成を示す図である。実施の形態３にかかる入出力制御装置は、通信間隔監視部通知モード管理部７を有する。
【００５５】
通信間隔監視部通知モード管理部７は、同一データ通信間隔監視部５及びシーケンスデータ通信間隔監視部４の通知モードを変更するための機能部である。
【００５６】
本実施の形態では、シーケンスデータ通信間隔監視部４及び同一データ通信間隔監視部５は、通常通知モードと異常通知モードとの二つの通知モードを有する。通常通知モードとは、シーケンスデータ通信間隔監視部４及び同一データ通信間隔監視部５が異常を検出した場合に数値制御装置１に異常情報を通知するモードである。異常通知モードとは、入出力制御装置３から数値制御装置１へ強制的に異常情報を通知する（異常発生時に異常情報を優先的に数値制御装置１へ通知する）モードであり、数値制御装置１から異常状態を制御するデータ以外のデータを受信した際に、入出力制御装置３は、異常情報を通知する。
【００５７】
図９は、数値制御装置向けの通信動作モードを管理する処理の流れを示す図である。入出力制御装置３で異常が発生している場合、通信間隔監視部通知モード管理部７は、異常検知状態をステータスの初期状態として起動する（ステップＳ６１）。
【００５８】
通信間隔監視部通知モード管理部７は、通信間隔状態を確認する（ステップＳ６２）。図１０は、通信間隔状態を確認する処理（ステップＳ６２の処理）の詳細を示す図である。通信間隔監視部通知モード管理部７は、異常要因クリアデータを受信したかを確認する（ステップＳ８１）。異常要因クリアデータを受信した場合（ステップＳ８１／Ｙｅｓ）、通信間隔監視部通知モード管理部７は、通信間隔状態を「正常」とする（ステップＳ８５）。異常要因クリアデータを受信していない場合（ステップＳ８１／Ｎｏ）、通信間隔監視部通知モード管理部７は、通信間隔状態に異常があるか否かを判断する（ステップＳ８２）。同一データやシーケンスデータの通信間隔に異常がある場合（ステップＳ８２／Ｙｅｓ）、通信間隔監視部通知モード管理部７は、通信間隔状態を「異常」とし、工作機械の構成機器２への出力を停止する（ステップＳ８３）。同一データやシーケンスデータの通信間隔に異常がない場合（ステップＳ８２／Ｎｏ）、通信間隔監視部通知モード管理部７は、数値制御装置１から異常通知データを受信したかを確認する（ステップＳ８４）。異常通知データを受信した場合（ステップＳ８４／Ｙｅｓ）、通信間隔監視部通知モード管理部７は、通信間隔状態を「異常」とし、工作機械の構成機器２への出力を停止する（ステップＳ８３）。異常通知データを受信しない場合（ステップＳ８４／Ｎｏ）、通信間隔監視部通知モード管理部７は、通信間隔状態を「正常」とする（ステップＳ８５）。
【００５９】
通信間隔状態の確認が終わったら、通信間隔監視部通知モード管理部７は、ステータスの遷移処理を行う（ステップＳ６３）。図１１は、ステータスの遷移処理（ステップＳ６３の処理）の詳細を示す図である。通信間隔監視部通知モード管理部７は、受信データが通常通知モードへの移行データであるか否かを確認する（ステップＳ７１）。通常通知モードへの移行データである場合（ステップＳ７１／Ｙｅｓ）、通信間隔監視部通知モード管理部７は、ステータスを異常非検知状態に遷移し（ステップＳ７４）、ステータスの遷移処理を終了する。通常通知モードへの移行データでない場合（ステップＳ７１／Ｎｏ）、通信間隔監視部通知モード管理部７は、受信データが異常通知モードへの移行データであるか否かを確認する（ステップＳ７２）。異常通知モードへの移行データでない場合（ステップＳ７２／Ｎｏ）、通信間隔監視部通知モード管理部７は、ステータスの遷移処理を終了する。異常通知モードへの移行データである場合（ステップＳ７２／Ｙｅｓ）、通信間隔監視部通知モード管理部７は、ステータスを異常検知状態に遷移し（ステップＳ７３）、ステータスの遷移処理を終了する。
【００６０】
ステータスの遷移処理が終わったら、通信間隔監視部通知モード管理部７は、ステータスを確認する（ステップＳ６４）。ステータスが異常非検知状態であれば（ステップＳ６４／異常非検知状態）、通信間隔監視部通知モード管理部７は、動作モードを通常通知モードに設定する（ステップＳ６６）。ステータスが異常検知状態であれば（ステップＳ６４／異常検知状態）、通信間隔監視部通知モード管理部７は、動作モードを異常通知モードに設定する（ステップＳ６５）。
【００６１】
図１２は、実施の形態３にかかる入出力制御装置を用いたシステムにおける異常検出から異常要因クリアまでの動作シーケンスの一例を示す図である。
【００６２】
入出力制御装置３１は数値制御装置１から送信されたデータを受信する（Ａ１）。数値制御装置１から入出力制御装置３１宛にデータが送信されたとき、入出力制御装置３１には障害が発生していないため、シーケンスデータ通信間隔監視部４及び同一データ通信間隔監視部５のいずれも異常は検出しない。入出力制御装置３１は、通信間隔監視部通知モード管理部７の処理を行う。この際、図１０のステップＳ８２、Ｓ８３、Ｓ８４はいずれもＮｏとなるため、通信間隔状態は「正常」となる。このため、入出力制御装置３１は、正常応答を数値制御装置１へ返送する（Ａ２）。また、図１１のステップＳ７１、Ｓ７２はいずれもＮｏとなり、ステータスの初期状態が異常検知状態であるため、動作モードは異常通知モードとなる。
【００６３】
入出力制御装置３２は数値制御装置１から送信されたデータを受信する（Ａ３）。数値制御装置１から入出力制御装置３２宛にデータが送信されるよりも前に、入出力制御装置３２には障害が発生しているため、シーケンスデータ通信間隔監視部４及び同一データ通信間隔監視部５の少なくともいずれかで異常が検出される。入出力制御装置３２は、通信間隔監視部通知モード管理部７の処理を行う。この際、図１０のステップＳ８２はＮｏ、Ｓ８４はＹｅｓとなるため、通信間隔状態は「異常」となる。このため、入出力制御装置３２は、数値制御装置１へ異常を通知する（Ａ４）。また、図１１のステップＳ７１、Ｓ７２はいずれもＮｏとなり、ステータスの初期状態は異常検知モードであるため、動作モードは異常通知モードとなる。
【００６４】
数値制御装置１は、入出力制御装置３２から異常を通知されると、異常の通知元を除く全ての入出力制御装置（この例では入出力制御装置３１）に異常通知を送信する（Ａ５）。数値制御装置１から入出力制御装置３１宛に異常通知が送信されたとき、入出力制御装置３１には障害が発生していないため、シーケンスデータ通信間隔監視部４及び同一データ通信間隔監視部５のいずれも異常は検出しない。入出力制御装置３１は、通信間隔監視部通知モード管理部７の処理を行う。この際、図１０のステップＳ８１、Ｓ８２はＮｏ、Ｓ８４はＹｅｓとなるため、通信間隔状態は「異常」となる。このため、入出力制御装置３１は、数値制御装置１へ異常を通知する（Ａ６）。また、図１１のステップＳ７１、Ｓ７２はいずれもＮｏとなるため、動作モードは前回と同じ異常通知モードとなる。
【００６５】
数値制御装置１又は数値制御装置１のユーザは、異常通知後、異常原因を分析し、復帰可能と判断した場合は、入出力制御装置３２の異常原因をクリアする処理を行う（Ａ７）。
【００６６】
数値制御装置１は、全ての入出力制御装置（この例では入出力制御装置３１，３２）に通常通知モード移行データを送る（Ａ８，Ａ１０）。数値制御装置１から通常通知モード移行データが送信されたとき、入出力制御装置３１には障害が発生していないため、シーケンスデータ通信間隔監視部４及び同一データ通信間隔監視部５のいずれも異常は検出しない。入出力制御装置３１は、通信間隔監視部通知モード管理部７の処理を行う。この際、図１０のステップＳ８１、Ｓ８２、Ｓ８４はいずれもＮｏとなるため、通信間隔状態は「正常」となる。このため、入出力制御装置３１は、数値制御装置１へ正常応答として移行完了を通知する（Ａ９）。また、図１１のステップＳ７１はＹｅｓとなるため、動作モードは通常通知モードに遷移する。
【００６７】
数値制御装置１から通常通知モード移行データが送信されたとき、入出力制御装置３２に発生した障害は解消されているため、シーケンスデータ通信間隔監視部４及び同一データ通信間隔監視部５のいずれも異常は検出しない。入出力制御装置３２は、通信間隔監視部通知モード管理部７の処理を行う。この際、図１０のステップＳ８１、Ｓ８２、Ｓ８４はいずれもＮｏとなるため、通信間隔状態は「正常」となる。このため、入出力制御装置３２は、数値制御装置１へ正常応答として移行完了を通知する（Ａ１１）。また、図１１のステップＳ７１はＹｅｓとなるため、動作モードは通常通知モードに遷移する。
【００６８】
数値制御装置１は、全ての入出力制御装置３１，３２から通常検知モードへの移行完了が通知されると、全ての入出力制御装置３１，３２へ異常要因クリアデータを送る（Ａ１２、Ａ１４）。数値制御装置１から異常要因クリアデータが送信されたとき、入出力制御装置３１には障害が発生していないため、シーケンスデータ通信間隔監視部４及び同一データ通信間隔監視部５のいずれも異常は検出しない。入出力制御装置３１は、通信間隔監視部通知モード管理部７の処理を行う。この際、図１０のステップＳ８２がＹｅｓとなるため、通信間隔状態は「正常」となる。このため、入出力制御装置３１は、数値制御装置１へ正常応答を返信する（Ａ１３）。また、図１１のステップＳ７１、Ｓ７２はいずれもＮｏとなるため、動作モードは前回と同じ通常通知モードとなる。
【００６９】
数値制御装置１から異常要因クリアデータが送信されたとき、入出力制御装置３２には障害が発生していないため、シーケンスデータ通信間隔監視部４及び同一データ通信間隔監視部５のいずれも異常は検出しない。入出力制御装置３２は、通信間隔監視部通知モード管理部７の処理を行う。この際、図１０のステップＳ８２はＹｅｓとなるため、通信間隔状態は「正常」となる。このため、入出力制御装置３２は、数値制御装置１へ正常応答を返信する（Ａ１５）。また、図１１のステップＳ７１、Ｓ７２はいずれもＮｏとなるため、動作モードは前回と同じ通常通知モードとなる。
【００７０】
数値制御装置１は、異常要因クリアデータに対する正常応答を全ての入出力制御装置３１，３２から受信すると、全ての入出力制御装置３１，３２へ異常通知モード移行データを送る（Ａ１６，Ａ１８）。数値制御装置１から通常通知モード移行データが送信されたとき、入出力制御装置３１には障害が発生していないため、シーケンスデータ通信間隔監視部４及び同一データ通信間隔監視部５のいずれも異常は検出しない。入出力制御装置３１は、通信間隔監視部通知モード管理部７の処理を行う。この際、図１０のステップＳ８１、Ｓ８２、Ｓ８４はいずれもＮｏとなるため、通信間隔状態は「正常」となる。このため、入出力制御装置３１は、数値制御装置１へ正常応答として移行完了を通知する（Ａ１７）。また、図１１のステップＳ７１はＮｏ、Ｓ７２はＹｅｓとなるため、動作モードは異常通知モードに遷移する。
【００７１】
数値制御装置１から異常通知モード移行データが送信されたとき、入出力制御装置３２には障害が発生していないため、シーケンスデータ通信間隔監視部４及び同一データ通信間隔監視部５のいずれも異常は検出しない。入出力制御装置３２は、通信間隔監視部通知モード管理部７の処理を行う。この際、図１０のステップＳ８１、Ｓ８２、Ｓ８４はいずれもＮｏとなるため、通信間隔状態は「正常」となる。このため、入出力制御装置３２は、数値制御装置１へ正常応答として移行完了を通知する（Ａ１９）。また、図１１のステップＳ７１はＮｏ、Ｓ７２はＹｅｓとなるため、動作モードは異常通知モードに遷移する。
【００７２】
数値制御装置１は、異常通知モードへの移行完了通知を全ての入出力制御装置３１，３２から受信すると、正常動作モードへ移行し、工作機械の構成機器２への出力データを入出力制御装置３１，３２へ送信する（Ａ２０，Ａ２２）。入出力制御装置３１，３２は、工作機械からの入力データを数値制御装置１へ送信する（Ａ２１，Ａ２３）。
【００７３】
以上の動作により、任意の入出力制御装置で異常検出した際に、全ての入出力制御装置へ異常を通知して工作機械の構成機器への出力を停止し、数値制御装置から異常要因をクリアするときに入出力制御装置が異常を誤検出することなく復帰できる。
【００７４】
本実施の形態によれば、数値制御装置から入出力制御装置へ異常要因クリアを通知したときに、通信遅延により、再度異常検出する可能性がある環境下において、異常の誤検出を防止するため、数値制御装置は異常検出を行わない動作モードへ移行するデータを予め送信、異常クリア、動作モード解除の手順で実行することにより、工作機械の構成機器への信号出力を再開できる。
【産業上の利用可能性】
【００７５】
以上のように、本発明にかかる入出力制御装置は、最短通信間隔以内に不正データを検出したとき及び最長通信間隔を超えて同一又は正常な順序のデータを送受信できないときに入出力制御装置が異常を検出できる点で有用である。
【符号の説明】
【００７６】
１  数値制御装置、２  工作機械の構成機器、３  入出力制御装置、４  シーケンスデータ通信間隔監視部、５  同一データ通信間隔監視部、６  通信間隔管理テーブル、７  通信間隔監視部通知モード管理部、１２  局番号、１３，１８  最短通信間隔、１４，１９  最長通信間隔、１５  シーケンス番号、１７  チェックフレーム数、４１，５１  フリーランカウンタ、４２  入力端子、５２  データ比較バッファ。
【図１】
2014191724.tif 000003
【図２】
2014191724.tif 000004
【図３】
2014191724.tif 000005
【図４】
2014191724.tif 000006
【図５】
2014191724.tif 000007
【図６】
2014191724.tif 000008
【図７】
2014191724.tif 000009
【図８】
2014191724.tif 000010
【図９】
2014191724.tif 000011
【図１０】
2014191724.tif 000012
【図１１】
2014191724.tif 000013
【図１２】
2014191724.tif 000014