(57)【要約】【課題】  個々の安全スレーブのそれぞれにおける安全応答性能は維持しつつも、通常モードからメンテナンスモードなどへの切換えについては、安全マスタの側で制御することを可能とし、これにより１台の安全マスタに対して多数の安全スレーブがぶら下がるような大規模システムにおいても、何らハードウェア的な改変を伴うことなく、無効化処理の適用を低コストに可能とする。【解決手段】  ロジック演算実行手段は、実行対象となる安全制御用ロジック演算に、無効化条件入力と無効化対象入力とを含む無効化演算子が含まれているときには、無効化要求データ記憶手段に格納される無効化要求データの中で、当該無効化条件入力に対応する入力端子の無効化要求データを参照し、その内容が無効化要求有りのときには、無効化対象入力に対応する入力データを無効化する。【選択図】  図１
2008310536.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して安全ＰＬＣと通信するための通信回路と、
それぞれ出力機器が接続される１又は２以上の外部出力端子と、
それぞれ入力機器が接続される１又は２以上の外部入力端子と、
各外部出力端子のそれぞれごとに設けられ、与えられたローカル出力データに基づいて、その外部出力端子に接続される出力機器に対してローカル出力信号を送出する出力回路と、
各外部入力端子のそれぞれごとに設けられ、その外部入力端子に接続される入力機器から入力されるローカル入力信号に基づいてローカル入力データを生成する入力回路と、
出力回路へと送出されるべきローカル出力データを格納する出力データ記憶領域と入力回路から取得されるローカル入力データを格納する入力データ記憶領域とを有するローカル入出力データ記憶手段と、
通信回路を介して安全ＰＬＣから受信される各出力端子ごとの出力データを格納する通信由来出力データ記憶手段と、
ユーザにより任意に設定された安全制御用ロジック演算を、その安全制御用ロジック演算で指定される入力データ及び／又は出力データを参照して実行することにより、内部ロジック演算由来の出力データを生成するロジック演算実行手段と、
ロジック演算実行手段により得られる出力データを該当する出力端子ごとに格納する内部ロジック演算由来の出力データ記憶手段と、
通信由来の出力データ記憶手段に格納された通信由来の出力データと内部ロジック演算由来の出力データ記憶手段に格納された出力データとのうちで、予め指定された側の出力データをローカル入出力データ記憶手段の出力データ記憶領域に書き込むローカル出力データ確定手段とを有する安全リモートＩ／Ｏターミナルにおいて、
通信回路を介して安全ＰＬＣから受信される各入力端子ごとの無効化要求データを格納する無効化要求データ記憶手段を設け、
前記ロジック演算実行手段は、実行対象となる安全制御用ロジック演算に、無効化条件入力と無効化対象入力とを含む無効化演算子が含まれているときには、無効化要求データ記憶手段に格納される無効化要求データの中で、当該無効化条件入力に対応する入力端子の無効化要求データを参照し、その内容が無効化要求有りのときには、無効化対象入力に対応する入力データを無効化する、ことを特徴とする安全リモートＩ／Ｏターミナル。
【請求項２】
各無効化演算子のそれぞれごとに、その無効化演算を実行すべきか否かを決定する無効化制御パラメータを格納してなる無効化制御パラメータ記憶手段を設け、
前記ロジック演算実行手段は、無効化制御パラメータ記憶手段に格納される無効化制御パラメータの中で、当該無効化演算子に対応する無効化パラメータを参照し、その内容に応じてその無効化演算を実行すべきか否かを制御する、ことを特徴とする請求項１に記載の安全リモートＩ／Ｏターミナル。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ネットワークを介して安全プログラマブル・コントローラ（以下、「安全ＰＬＣ」と言う）に接続されて入出力機器を制御する安全リモートＩ／Ｏターミナルに係り、特に、ロジック演算機能を内蔵した安全リモートＩ／Ｏターミナル装置に関する。
【背景技術】
【０００２】
安全ＰＬＣは、一般的なＰＬＣに類似するロジック演算機能、入出力制御機能に加えて、安全面の自己診断機能を内蔵することにより、その制御において高度な安全性及び信頼性を確保したものであり、自己診断結果による異常を検出した場合には、自己の制御が危険に繋がらないように、強制的に安全な制御を行うような機能（フェールセーフ機能）を備えている。
【０００３】
ここに言う安全は、より具体的には、規格化されている安全基準を含む意味である。安全規格には、例えばＩＥＣ６１５０８やＥＮ規格などがある。ＩＥＣ６１５０８（プログラム可能な電子システムの機能安全に関する国際電気標準委員会）では、時間当たりの危険故障確率を（失敗確率：Ｐｒｏｂａｂｉｌｉｔｙ  Ｏｆ  Ｆａｉｌｕｒｅ  ｐｅｒ  Ｈｏｕｒ）を定義し、この確率によってＳＩＬのレベルを（Ｓａｆｅｔｙ  Ｉｎｔｅｇｒｉｔｙ  Ｌｅｖｅｌ）を４段階に分類している。また、ＥＮ規格では、機械のリスクの大きさを評価し、リスク低減策を講じるように義務づけられていて、ＥＮ９５４−１では５つの安全カテゴリにて規定されている。この明細書で言う安全ＰＬＣ、安全リモートＩ／Ｏターミナルなどは、このような安全基準の何れかに対応したものである。
【０００４】
図１７に示されるように、安全ＰＬＣ（「安全マスタ）１と安全リモートＩ／Ｏターミナル（安全スレーブ）２とをネットワーク４を介して結んで構成される安全ＰＬＣシステムは従来より知られている（例えば、特許文献１参照）。
【０００５】
このような安全ＰＬＣシステムに採用される安全スレーブ２の中には、ロジック演算機能を内蔵するものが存在する。図１７において、Ｆ１１は安全マスタ１側のロジック演算機能、Ｆ１２は安全スレーブ２側のロジック演算機能である。このようなロジック演算機能Ｆ２１を内蔵する安全スレーブ２を用いれば、ローカル安全入力が遮断されたときに、安全マスタ１でのロジック演算機能Ｆ１１を介することなく、ローカル安全出力の遮断が可能となる。これにより、安全応答性能の大幅な改善を実現することができる。
【０００６】
ところで、この種の安全ＰＬＣシステムに採用される安全アプリケーションの中には、図１８に示されるように、ユーザ側システムの動作モードによっては、安全入力機器を一時的に無効化することがある。これは、例えば、装置のチューニングや動作確認を行うメンテナンスモードの場合などが挙げられる。すなわち、図１８（ａ）に示されるように、モード切換入力が「通常モード」である場合、安全スレーブ２へと与えられる入力ＯＦＦは、通信を介して、安全マスタ１へと送信される。安全マスタ１においては、ロジック演算機能Ｆ１１を介して所定の安全ロジック演算が行われる。こうして得られた出力ＯＦＦは、安全マスタ１から安全スレーブ２へと送信される。こうして安全スレーブ２から出力ＯＦＦが出力されて、危険源となるロボット等の停止がなされる。
【０００７】
これに対して、図１８（ｂ）に示されるように、メンテナンスモードの場合には、安全スレーブ２に与えられる入力ＯＦＦは安全マスタ１へと送信されるものの、モード切換入力が「メンテナンスモード」であることから、ロジック演算機能Ｆ１１において、入力が無効化され、図中破線に示されるように、安全マスタ１から安全スレーブ２へと送信される出力はＯＮとなり、危険源となるロボット等は停止されない。
【特許文献１】特開２００６−３０４４６３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、このような従来の安全ＰＬＣシステムに採用される無効化処理は、安全マスタ１の側におけるロジック演算機能Ｆ１１を介して行われるものであるから、図１９に示されるように、ロジック演算機能内蔵スレーブに適用すると、安全スレーブ２の側のロジック演算機能Ｆ２１にて実行される論理演算に関しては、同図（ｂ）に示されるように、仮に安全マスタ１の側でモード切換入力を「メンテナンスモード」に設定したとしても、無効化処理が作用することはない。
【０００９】
そのため、安全スレーブ２へと入力ＯＦＦが与えられれば、これは無効化されることがないため、安全スレーブ２の側のロジック演算機能Ｆ２１は平常通りに作用して、出力はＯＦＦとされ、出力機器は遮断されてしまう。つまり、通常モードからメンテナンスモードに切換えて、危険源に近づきライトカーテンなどが作動すれば、直ちに通常通り危険源は遮断されてしまう。
【００１０】
ロジック演算機能を内蔵する安全スレーブ２においても、メンテナンスモードへの対応を可能とするためには、例えば図２０に示されるように、安全スレーブ２のそれぞれの側に、モード切換入力を与えることにより、安全スレーブ２の側のロジック演算機能Ｆ２１において無効化処理を実現せねばならない。
【００１１】
しかしながら、このように安全スレーブのそれぞれの側において、モード切換入力により入力無効化処理を行わせようとすると、通常この種のシステムにおいては、安全マスタ１に対して多数の安全スレーブがぶら下がるため、安全ＰＬＣシステム全体として、モード切換入力を与えるための切換スイッチが多数必要となってコストアップに繋がるなどの問題点がある。
【００１２】
この発明は、このような従来の問題点に着目してなされたものであり、その目的とするところは、個々の安全スレーブのそれぞれにおける安全応答性能は維持しつつも、通常モードからメンテナンスモードなどへの切換えについては、安全マスタの側で制御することを可能とし、これにより１台の安全マスタに対して多数の安全スレーブがぶら下がるような大規模システムにおいても、何らハードウェア的な改変を伴うことなく、無効化処理の適用を低コストに可能とすることにある。
【００１３】
この発明のさらに他の目的並びに作用効果については、明細書の以下の記述を参照することにより、当業者であれば容易に理解されるであろう。
【課題を解決するための手段】
【００１４】
上述の技術的な課題は、以下の構成を有する安全リモートＩ／Ｏターミナル（リモートスレーブ）により実現することができる。
【００１５】
すなわち、この安全リモートＩ／Ｏターミナルは、ネットワークを介して安全ＰＬＣと通信するための通信回路と、それぞれ出力機器が接続される１又は２以上の外部出力端子と、それぞれ入力機器が接続される１又は２以上の外部入力端子と、各外部出力端子のそれぞれごとに設けられ、与えられたローカル出力データに基づいて、その外部出力端子に接続される出力機器に対してローカル出力信号を送出する出力回路と、各外部入力端子のそれぞれごとに設けられ、その外部入力端子に接続される入力機器から入力されるローカル入力信号に基づいてローカル入力データを生成する入力回路とを有している。
【００１６】
さらに、この安全リモートＩ／Ｏターミナル装置は、出力回路へと送出されるべきローカル出力データを格納する出力データ記憶領域と入力回路から取得されるローカル入力データを格納する入力データ記憶領域とを有するローカル入出力データ記憶手段と、通信回線を介して安全ＰＬＣから受信される各出力端子ごとの出力データを格納する通信由来出力データ記憶手段と、ユーザにより任意に設定された安全制御用ロジック演算を、その安全制御用ロジック演算で指定される入力データ及び／又は出力データを参照して実行することにより、内部ロジック演算由来の出力データを生成するロジック演算実行手段と、ロジック演算実行手段により得られる出力データを該当する出力端子ごとに格納する内部ロジック演算由来の出力データ記憶手段と、通信由来の出力データ記憶手段に格納された通信由来の出力データと内部ロジック演算由来の出力データ記憶手段に格納された出力データとのうちで、予め指定された側の出力データをローカル入出力データ記憶手段の出力データ記憶領域に書き込むローカル出力データ確定手段とを有している。
【００１７】
そして、本発明の特徴部分は、上述の安全リモートＩ／Ｏターミナルにおいて、通信回線を介して安全ＰＬＣから受信される各入力端子ごとの無効化要求データを格納する無効化要求データ記憶手段を設け、前記ロジック演算実行手段は、実行対象となる安全制御用ロジック演算に、無効化条件入力と無効化対象入力とを含む無効化演算子が含まれているときには、無効化要求データ記憶手段に格納される無効化要求データの中で、当該無効化条件入力に対応する入力端子の無効化要求データを参照し、その内容が無効化要求有りのときには、無効化対象入力に対応する入力データを無効化するという構成を有している。
【００１８】
このような構成によれば、実行対象となる安全制御用ロジック演算に、無効化条件入力と無効化対象入力とを含む無効化演算子が含まれているときには、無効化要求データ記憶手段に格納される無効化要求データの中で、当該無効化条件入力に対応する入力端子の無効化要求データを参照し、その内容が無効化要求有りのときには、無効化対象入力に対応する入力データを無効化するように構成されているため、安全ＰＬＣから安全リモートＩ／Ｏターミナルへと送り込まれる各入力端子ごとの無効化要求データを無効化要求有りの状態としておけば、仮に安全リモートＩ／Ｏターミナルの側におけるロジック演算実行処理において、無効化対象入力がＯＦＦであったとしても、そのような入力は無効化されてしまうため、安全リモートＩ／Ｏターミナルから出力される出力信号によって、ロボットなどの危険源に対する出力が遮断されることを回避することができる。
【００１９】
一方、安全リモートＩ／Ｏターミナルにおける入力と出力との安全応答性能については、安全ＰＬＣの側の演算機能を経由しないから高応答のままに維持される。しかも、１台の安全ＰＬＣに対して多数の安全リモートＩ／Ｏターミナルが存在するような場合にも、個々の安全リモートＩ／Ｏターミナルに関する無効化処理の実行可否は、安全ＰＬＣの側で制御することができるため、個々の安全リモートＩ／Ｏターミナルごとに無効化のためのスイッチを設けることもなくなり、システム全体として低コストに無効化処理を実現することができる。
【００２０】
本発明の好ましい実施の形態においては、上述の構成に加えて、さらに、各無効化演算子のそれぞれごとに、その無効化演算を実行すべきか否かを決定する無効化制御パラメータを格納してなる無効化制御パラメータ記憶手段を設け、前記ロジック演算実行手段は、無効化制御パラメータ記憶手段に格納される無効化制御パラメータの中で、当該無効化演算子に対応する無効化パラメータを参照し、その内容に応じてその無効化演算を実行すべきか否かを制御するように構成してもよい。
【００２１】
このような構成によれば、ユーザ側で作成されたロジック演算に含まれる無効化演算子のそれぞれごとに、その実行可否を制御することができるため、ユーザが作成する安全制御用ロジック演算それ自体については変更することなく、実質的に無効化演算子が存在する場合と存在しない場合とを実現することができ、これを利用すれば、より一層メンテナンスモード等におけるきめ細かい対応が可能となる。
【発明の効果】
【００２２】
本発明によれば、１台の安全ＰＬＣに対して、多数の安全リモートＩ／Ｏターミナルが接続されたような安全ＰＬＣシステムにおいて、個々の安全リモートＩ／Ｏターミナルにおける安全応答性能を高速に維持しつつも、安全ＰＬＣの側におけるモード切換操作によって、個々の安全リモートＩ／Ｏターミナルにおける入力無効化処理を実現させることができ、モードの切換えを個々の安全リモートＩ／Ｏターミナルの側で行わないことから、そのための切換スイッチ等のハードウェア的な部品増加も回避することができ、システム全体として低コストに入力無効化処理の適用が可能となる。
【発明を実施するための最良の形態】
【００２３】
以下に、この発明に係る安全リモートＩ／Ｏターミナル装置（「安全スレーブ」とも言う）の好適な実施の一形態を添付図面を参照しながら詳細に説明する。
【００２４】
まず、本発明の概要について図１を参照しながら説明する。先に図１７〜図２０を参照して説明したように、従来のこの種の安全ＰＬＣシステムにおいては、高速応答を要求されるロジック演算については、安全スレーブ２の側のロジック演算機能Ｆ２１を介して実行する一方、『通常モード』と『メンテナンスモード』との切換えを行うためのモード切換入力については、安全マスタ１の側のロジック演算機能Ｆ１１に対してのみ与え、それにより安全マスタ１の側のロジック演算機能Ｆ１１を経由するロジック演算に限ってのみ、入力無効化処理を適用するようにしていたため、安全スレーブ２の側で実行される高速応答を要求するロジック演算については、入力無効化処理を適用することができないという問題点があった。
【００２５】
そこで、この発明においては、図１に示されるように、安全マスタ１の側で発生するモード切換入力を、安全マスタ１の側のロジック演算機能Ｆ１１のみならず、安全スレーブ２の側のロジック演算機能Ｆ２１に対しても作用させることによって、安全スレーブ２の側のロジック演算機能Ｆ２１にて実行される高速応答を要求するロジック演算についても、『メンテナンスモード』の適用を可能とするものである。
【００２６】
これにより、本発明によれば、各安全スレーブ２の側にモード切換入力を与えることが不要となるから、１台の安全増谷対して多数の安全スレーブがぶら下がるような大規模システムにおいても、システム全体としてハードウェア的なコストアップを来すこともなくなるのである。
【００２７】
ここで、安全スレーブ２の側における処理をさらに具体的に説明すれば、ロジック演算機能Ｆ２１において、論理積演算子（ＡＮＤ）と無効化演算子である論理和演算子（ＯＲ）とを含む安全制御用ロジックを実行させる場合、無効化演算子（ＯＲ）の一方の入力には、安全マスタ１の側から送られる無効化要求信号が与えられる。そのため、この無効化要求信号の内容を無効化有り（“Ｈ”）とすることによって、入力１は無視され、論理積演算子（ＡＮＤ）の出力は、実質的に入力２の状態によって一義的に決定されることとなる。これを真理値表で示せば、図２（ｂ）に示されるように、安全マスタからの無効化信号を無効化有り（“１”）とすることによって、入力１の“０”は全て無効化され、出力は“１”となることが理解されるであろう。
【００２８】
次に、本発明に係る安全リモートＩ／Ｏターミナル（安全スレーブ）の構成を、図３以下の図面を参照しながら詳細に説明する。
【００２９】
本発明が適用された安全ＰＬＣシステムの概略構成図が図３に示されている。同図に示されるように、この安全ＰＬＣシステムは、１台の安全ＰＬＣ（安全マスタ）と１台又は２台以上の安全リモートＩ／Ｏターミナル（安全スレーブ）２とをネットワーク４で結んで構成される。なお、図において符号３は安全ＰＬＣ１及び安全リモートＩ／Ｏターミナル２のプログラミング、プログラムモニタなどを実行するためのプログラム開発支援装置である。
【００３０】
図から明らかなように、安全ＰＬＣ１及び安全リモートＩ／Ｏターミナル２には、入力機器５と出力機器６とが接続される。ここで、当業者にはよく知られているように、入力機器５としてセーフティ非常停止スイッチ、セーフティライトカーテン、セーフティリミットスイッチ、セーフティドアスイッチなどを挙げることができ、出力機器６としてはセーフティリレー、セーフティコンタクタなどを挙げることができる。
【００３１】
次に、安全リモートＩ／Ｏターミナル（安全スレーブ）の電気的ハードウェア構成を示すブロック図が図４に示されている。
【００３２】
同図に示されるように、この安全スレーブ２は、ネットワーク４を介して安全ＰＬＣ（安全マスタ）と通信するための通信回路２０４と、それぞれ出力機器６が接続される１又は２以上の外部出力端子（ＯＵＴ０〜ＯＵＴｎ）と、それぞれ入力機器５が接続される１又は２以上の外部入力端子（ＩＮ０〜ＩＮｎ）と、各外部出力端子（ＯＵＴ０〜ＯＵＴｎ）のそれぞれごとに設けられ、与えられたローカル出力データに基づいて、その外部出力端子（ＯＵＴ０〜ＯＵＴｎ）に接続される出力機器６に対してローカル出力信号を送出する出力回路２０３と、各外部入力端子（ＩＮ０〜ＩＮｎ）のそれぞれごとに設けられ、その外部入力端子（ＩＮ０〜ＩＮｎ）に接続される入力機器５から入力されるローカル入力信号に基づいてローカル入力データを生成する入力回路２０２とを有している。
【００３３】
なお、図において、符号２０５は各種動作表示ランプ、数値表示器などを含む表示回路であり、符号２０６はノードアドレスを設定するためのＤＩＰスイッチなどの設定回路である。
【００３４】
ＣＰＵ２０１は、当該安全リモートＩ／Ｏターミナル（安全スレーブ）の全体を統括制御するものであって、マイクロプロセッサ（ＭＰＵ）２０１ａと、ＲＯＭ２０１ｂと、ＲＡＭ２０１ｃとを含んで構成される。ＲＯＭ２０１ｂはフラッシュメモリなどの不揮発性メモリを含んでおり、当該セーフティスレーブに必要な各種の機能を実現するためのシステムプログラムの他に、ユーザが任意に作成した安全制御用ロジック演算プログラム、後述する各種のパラメータなどを含んでいる。ＲＡＭ２０１ｃは、マイクロプロセッサ（ＭＰＵ）２０１ａが、ＲＯＭ２０１ｂに格納された各種のプログラムを実現する際に、必要なワークエリアを確保するために使用される。
【００３５】
次に、本発明に関連するＣＰＵ２０１の機能の説明図が図５に示されている。同図に示されるように、ＲＡＭ２０１ｃには、ローカル入力データ（Ｄ１）格納用の領域と、ローカル出力データ（Ｄ２）格納用の領域と、安全マスタから受信した無効化要求信号（Ｄ３）格納用の領域とが設けられている。これらの領域には、図６に示されるように、各入力端子０〜７に対応させて、一連のローカル入力データ（Ｄ１０〜Ｄ１７）、一連のローカル出力データ（Ｄ２０〜Ｄ２７）、及び一連の無効化要求信号（Ｄ３０〜Ｄ３７）が格納されている。
【００３６】
そして、図５に示されるように、ロジック演算処理部では、それら一連のデータを、入力端子ごとに順次に読み出すことによって、ローカル入力データ（Ｄ１）と安全マスタから受信した無効化要求信号（Ｄ３）とに基づき必要なロジック演算処理を実行し、こうして得られた出力データを、ローカル出力データ（Ｄ２）として該当するエリアに書き込む処理を、繰り返すわけである。ここで、ロジック演算処理においては、各種の安全制御用ロジック演算が実行されるが、そのときに、そのロジック演算処理に無効化演算子（ＯＲ）が含まれていた場合、その無効化演算子（ＯＲ）は安全マスタから受信した無効化要求信号（Ｄ３）が無効化有りの状態に限り、無効化処理を行うのである。
【００３７】
このように、ロジック演算処理において行われる無効化処理は、安全マスタから受信した無効化要求信号（Ｄ３）の内容によって制御されるから、先に説明した従来例のように、安全スレーブの側に無効化要求信号を発生させるための手段は何ら不要となり、そのためのスイッチなどを設ける必要もないのである。
【００３８】
各入力端子別の無効化処理の概念図が図７に示されている。同図に示されるように、ロジック演算処理部においては、図７に示されるように、無効化演算子（ＯＲ）に対して、順次無効化要求信号（Ｄ３０，Ｄ３１，Ｄ３２・・・）が与えられることによって、その無効化要求の内容に応じて、入力端子に与えられるローカル入力データ（Ｄ１０，Ｄ１１，Ｄ１２・・・）は必要に応じて無効化されるのである。
【００３９】
上述の処理に必要な無効化要求信号については、安全マスタ１から安全スレーブ２へと通信を介して送信される。この場合、図８（ａ）に示されるように、その通信においては無効化要求信号のみを送る場合もあれば、同図（ｂ）に示されるように、他の信号と合わせて無効化要求信号を送る場合も考えられる。何れにしても、それらの無効化要求信号は、各入力端子ごとの成分を含んでいなければならない。
【００４０】
安全スレーブの側では、こうして受信される無効化要求信号によって、所定の専用テーブルの内容を図９に示されるようにコンフィグレーションすることとなる。すなわち、図に示されるように、各入力端子０，１，２・・・のそれぞれごとに、無効化条件が設定記憶されることとなる。ここで、無効化条件の値は、“０”が無効化しない状態、“１”が無効化する状態を意味している。
【００４１】
一方、後述するように、この実施形態においては、上述した無効化要求信号の他に、無効化制御パラメータが設けられる。この無効化制御パラメータは、図１０に示されるように、無効化制御パラメータテーブル内に格納される。
【００４２】
次に、安全リモートＩ／Ｏターミナル（安全スレーブ）の処理全体を示すゼネラルフローチャートが図１１に示されている。同図において処理が開始されると、まず動作モード制御処理（ステップ１０１）が実行される。この動作モード制御処理（ステップ１０１）では、与えられた各種の条件に従って、ＲＵＮモード、コンフィグレーションモード、アイドルモードなどなどのように、その時々の動作モードの設定を行う。そして設定された動作モードに応じた処理への移行が行われる。図示の例では、ＲＵＮモードへ設定された場合が示されており、その他のモードの場合には、動作モード制御処理（ステップ１０１）の終段に設けられた分岐処理によって、図示しない別の処理へと移行される。
【００４３】
続くＩ／Ｏリフレッシュ処理（ステップ１０２）では、ローカル入出力処理及びローカル入出力端子の診断処理が行われる。ここで、ローカル入出力処理とは、入力回路を介して外部入力端子から取り込まれたローカル入力データを入出力データ記憶手段の入力領域に書き込むと共に、入出力データ記憶手段の出力領域に格納されたローカル出力データを読み出して、これを出力回路を介して外部出力端子へと送出する処理である。また、ローカル入出力端子の診断処理とは、入力回路及び出力回路に組み込まれた診断回路を作動させることによって、入力機器や出力機器に断線や短絡、あるいは接点の焼き付きなどがないかどうかを診断するものである。
【００４４】
続いて、通信処理（ステップ１０３）が実行される。この通信処理（ステップ１０３）においては、ネットワーク通信処理及びマスタから無効化要求信号を受信する処理が実行される。ここで、ネットワーク通信処理とは、安全スレーブの側から安全マスタへとローカル入力データを送信したり、安全マスタから送られてくる出力データを受信したりする処理であり、またマスタからの無効化要求信号を受信する処理とは、本発明にとって重要な無効化処理を実現するためのものである。
【００４５】
続いて、ロジック演算処理（ステップ１０４）が実行される。このロジック演算処理（ステップ１０４）においては、ロジック演算処理及びローカル出力データの作成処理が実行される。
【００４６】
ロジック演算処理の詳細フローチャートが図１２に示されている。同図において処理が開始されると、まず入力評価処理（ステップ１０４１）が実行される。この入力評価処理（ステップ１０４１）によって、入力回路を介して外部入力端子から取り込まれたローカル入力データの信頼性が確認される。
【００４７】
続いて、無効化演算処理（ステップ１０４２）が実行される。この無効化演算処理（ステップ１０４２）においては、図１５に示されるように、無効化制御パラメータ、無効化要求信号、入力端子信号をそれぞれ読み出した後（ステップ４０１，４０２，４０３）、それらを用いて、無効化演算結果が求められ（ステップ４０４）、こうして求められた無効化演算結果は出力端子信号として保存される（ステップ４０５）。
【００４８】
図１２へ戻って、続いて、出力条件処理（ステップ１０４３）が実行される。この出力条件処理（ステップ１０４３）とは、１もしくは２以上の入力に応じて１の出力を生成するに際し、その論理条件を演算するものである。この出力条件には、通常、論理積演算ファンクションブロック（ＡＮＤ）が使用される。
【００４９】
続いて、溶着チェック（ＥＤＭ）処理（ステップ１０４４）が実行される。この溶着チェック（ＥＤＭ）処理（ステップ１０４４）においては、該当する出力端子に接続されたセーフティリレーの接点に対して所定のテスト信号を送信することにより、その結果を入力端子から受信することで、セーフティリレーの接点に関し溶着チェックを行うものである。
【００５０】
続いて、ローカル出力データ作成処理（ステップ１０４５）が実行される。このローカル出力データ作成処理（ステップ１０４５）においては、安全マスタから受信された出力データ又は安全スレーブ側で生成された出力データの何れかを選択して、ローカル出力データ記憶手段に格納する処理が実行される。このローカル出力データ作成処理によって、外部出力端子へと送出すべきローカル出力データの内容が確定する。
【００５１】
図１１に戻って、ロジック演算処理（ステップ１０４）が終了すると、続いて、ハードウェアの診断などの自己診断処理が行われる（ステップ１０５）。
【００５２】
以上の一連の処理（ステップ１０１〜１０５）において、何らかの重大な異常の発生が検出された場合には（ステップ１０６ＹＥＳ）、安全スレーブの動作は強制的に停止される。
【００５３】
次に、無効化要求信号の受信処理を示すフローチャートが図１４に示されている。同図に示されるように、処理が開始されると、通信回路を介してマスタからデータの受信が行われ（ステップ３０１）、こうして受信されたデータの中に、コネクション確立時の情報より入力無効化要求信号を含むか否かの判別が行われる（ステップ３０２）。
【００５４】
ここで、入力無効化要求信号を含むものと判定されると（ステップ３０２「含む」）、無効化要求信号が取り出され（ステップ３０３）、これは無効化要求信号として保存される（ステップ３０４）。これに対して、コネクション確立時の情報より入力無効化要求信号を含まないと判定されると（ステップ３０２「含まない」）、その他のデータとしてそれぞれ適当な解析処理が行われる（ステップ３０５）。
【００５５】
次に、図９に対応するコンフィグレーション処理を示すフローチャートが図１３に示されている。同図において処理が開始されると、まず、ダウンロードパラメータの受信が行われ（ステップ２０２）、その後、各入力端子のそれぞれごとに、無効化条件を読み出すと共に（ステップ２０３）、その内容が“０”であれば無効化制御パラメータのｎビット目に“０”をセットする一方（ステップ２０５）、“１”であれば、無効化制御パラメータのｎビット目に“１”をセットする処理（ステップ２０６）を、すべての入力端子に対して繰り返し実行し（ステップ２０２，２０７）、こうして得られた無効化制御パラメータを保存する（ステップ２０８）。このようにして、図９に示される無効化制御パラメータの保存が完了するのである。
【００５６】
次に、無効化演算処理を示すフローチャートが図１５に、また無効化演算処理に関する真理値表が図１６にそれぞれ示されている。
【００５７】
図１５において処理が開始されると、無効化制御パラメータ、無効化要求信号、入力端子信号がそれぞれ読み出され（ステップ４０１〜４０３）、それらに基づいて無効化演算が所定の演算式に基づいて実行され（ステップ４０４）、こうして得られた無効化演算結果が出力端子信号として保存される（ステップ４０５）。
【００５８】
ステップ４０４において実行される無効化演算処理の内容は、図１６の真理値表に示すとおりである。図から明らかなように、この無効化演算処理においては、無効化制御パラメータと無効化要求信号との組合せによってきめ細かい無効化処理が実行される。
【００５９】
このように以上の実施形態によれば、安全マスタ側で生成された無効化要求信号が安全スレーブ側へと送信され、この無効化要求信号に応じて、安全制御用ロジック演算に含まれる無効化演算子（ＯＲ）が作動するため、安全スレーブの側で無効化要求信号を別途生成せずとも、安全スレーブ側に組み込まれた無効化演算子を作動させることができる。そのため、安全スレーブの側では、安全マスタ側へと送信する入力データのみならず、安全スレーブ側で実行される高速応答を要求するロジック演算についても無効化処理を適用することができ、安全スレーブ側における高速応答性能を損ねることなく、すべての安全制御プログラムについて無効化処理の適用が可能となる。
【００６０】
加えて、安全スレーブ側における無効化演算子（ＯＲ）の無効化演算実行可否は、各無効化演算子ごとに設けられた無効化制御パラメータによっても制御されるため、この無効化制御パラメータの内容を各無効化演算子ごとに適宜に設定することによって、よりきめの細かい無効化処理を実現することができる。
【００６１】
以上説明したように、本発明の安全リモートＩ／Ｏターミナル（安全スレーブ）２は、ネットワークを介して安全ＰＬＣ（安全マスタ）１と通信するための通信回路２０４と、それぞれ出力機器６が接続される１又は２以上の外部出力端子（ＯＵＴ０〜ＯＵＴｎ）と、それぞれ入力機器５が接続される１又は２以上の外部入力端子（ＩＮ０〜ＩＮｎ）と、各外部出力端子（ＯＵＴ０〜ＯＵＴｎ）のそれぞれごとに設けられ、与えられたローカル出力データに基づいて、その外部出力端子（ＯＵＴ０〜ＯＵＴｎ）に接続される出力機器６に対してローカル出力信号を送出する出力回路２０３と、各外部入力端子（ＩＮ０〜ＩＮｎ）のそれぞれごとに設けられ、その外部入力端子（ＩＮ０〜ＩＮｎ）に接続される入力機器５から入力されるローカル入力信号に基づいてローカル入力データを生成する入力回路２０２とを備えている。
【００６２】
また、ＣＰＵ２０１内のメモリ（２０１ｂ，２０１ｃ）には、出力回路へと送出されるべきローカル出力データを格納する出力データ記憶領域と入力回路２０２から取得されるローカル入力データを格納する入力データ記憶領域とを有するローカル入出力データ記憶手段と、通信回路２０４を介して安全ＰＬＣ（安全マスタ）１から受信される各出力端子（ＯＵＴ０〜ＯＵＴｎ）ごとの出力データを格納する通信由来出力データ記憶手段と、ユーザにより任意に設定された安全制御用ロジック演算を、その安全制御用ロジック演算で指定される入力データ及び／又は出力データを参照して実行することにより、内部ロジック演算由来の出力データを生成するロジック演算実行手段（ＭＰＵ２０１ａ）と、ロジック演算実行手段により得られる出力データを該当する出力端子（ＯＵＴ０〜ＯＵＴｎ）ごとに格納する内部ロジック演算由来の出力データ記憶手段と、通信由来の出力データ記憶手段に格納された通信由来の出力データと、内部ロジック演算由来の出力データ記憶手段に格納された出力データとのうちで、あらかじめ指定された側の出力データをローカル入出力データ記憶手段の出力データ記憶領域に書き込むローカル出力データ確定手段とが設けられている。
【００６３】
以上の構成において、さらに、通信回路２０４を介して安全ＰＬＣ（安全マスタ）１から受信される各入力端子（ＩＮ０〜ＩＮｎ）ごとの無効化要求データを格納する無効化要求データ記憶手段を設け、前記ロジック演算実行手段は、実行対象となる安全制御用ロジック演算に、無効化条件入力と無効化対象入力とを含む無効化演算子が含まれているときには、無効化要求データ記憶手段に格納される無効化要求データの中で、当該無効化条件入力に対応する入力端子の無効化要求データを参照し、その内容が無効化要求有りのときには、無効化対象入力に対応する入力データを無効化するようにしたものである。
【００６４】
加えて、各無効化演算子のそれぞれごとに、その無効化演算を実行すべきか否かを決定する無効化制御パラメータを格納してなる無効化制御パラメータ記憶手段が設けられ、前記ロジック演算実行手段は、無効化制御パラメータ記憶手段に格納される無効化制御パラメータの中で、当該無効化演算子に対応する無効化パラメータを参照し、その内容に応じてその無効化演算を実行すべきか否かを制御するようにしたものである。
【産業上の利用可能性】
【００６５】
本発明によれば、１台の安全ＰＬＣに対して、多数の安全リモートＩ／Ｏターミナルが接続されたような安全ＰＬＣシステムにおいて、個々の安全リモートＩ／Ｏターミナルにおける安全応答性能を高速に維持しつつも、安全ＰＬＣの側におけるモード切換操作によって、個々の安全リモートＩ／Ｏターミナルにおける入力無効化処理を実現させることができ、モードの切換えを個々の安全リモートＩ／Ｏターミナルの側で行わないことから、そのための切換スイッチ等のハードウェア的な部品増加も回避することができ、システム全体として低コストに入力無効化処理の適用が可能となる。
【図面の簡単な説明】
【００６６】
【図１】本発明の概要の説明図である。
【図２】無効化のためのロジック演算の説明図である。
【図３】本発明が適用された安全ＰＬＣシステムの概略構成図である。
【図４】安全リモートＩ／Ｏターミナルの電気的ハードウェア構成を示すブロック図である。
【図５】本発明に関連するＣＰＵの機能の説明図である。
【図６】ＣＰＵの処理対象となる一群のデータ列の説明図（図３のＡ部対応）である。
【図７】各入力端子別の無効化処理の概念図である。
【図８】無効化要求信号の送信例である。
【図９】安全リモートＩ／Ｏターミナル（安全スレーブ）のコンフィグレーション列である。
【図１０】無効化制御パラメータテーブルの構成列である。
【図１１】安全リモートＩ／Ｏターミナル（安全スレーブ）の処理全体を示すゼネラルフローチャートである。
【図１２】ロジック演算処理の詳細フローチャートである。
【図１３】コンフィグレーション処理を示すフローチャートである。
【図１４】無効化要求信号の受信処理を示すフローチャートである。
【図１５】無効化演算処理を示すフローチャートである。
【図１６】無効化演算処理に関する真理値表である。
【図１７】従来技術の説明図（その１）である。
【図１８】従来技術の説明図（その２）である。
【図１９】従来技術の説明図（その３）である。
【図２０】従来技術の説明図（その４）である。
【符号の説明】
【００６７】
１    安全ＰＬＣ（安全マスタ）
２    安全リモートＩ／Ｏターミナル（安全スレーブ）
３    プログラム開発支援装置
４    ネットワーク
５    入力機器
６    出力機器
２０１  ＣＰＵ
２０２  入力回路
２０３  出力回路
２０４  通信回路
２０５  表示回路
２０６  設定回路
Ｆ１１  安全マスタ側のロジック演算機能
Ｆ２１  安全スレーブ側のロジック演算機能
【図１】
2008310536.tif 000003
【図２】
2008310536.tif 000004
【図３】
2008310536.tif 000005
【図４】
2008310536.tif 000006
【図５】
2008310536.tif 000007
【図６】
2008310536.tif 000008
【図７】
2008310536.tif 000009
【図８】
2008310536.tif 000010
【図９】
2008310536.tif 000011
【図１０】
2008310536.tif 000012
【図１１】
2008310536.tif 000013
【図１２】
2008310536.tif 000014
【図１３】
2008310536.tif 000015
【図１４】
2008310536.tif 000016
【図１５】
2008310536.tif 000017
【図１６】
2008310536.tif 000018
【図１７】
2008310536.tif 000019
【図１８】
2008310536.tif 000020
【図１９】
2008310536.tif 000021
【図２０】
2008310536.tif 000022