(57)【要約】【課題】Ｉ／Ｏ回路の取り扱うＩ／Ｏ点数を増設する場合にも、内部回路を構成する各系統のＭＰＵにおいて大幅なファームウェアの変更が必要となったり、あるいは大規模なＭＰＵへの機種変更が必要となるといった不都合が生ずることのないセーフティ・コントローラを提供すること。【解決手段】ユーザプロクラムの演算処理機能とＩ／Ｏ制御用ＭＰＵに対するＩ／Ｏ制御処理機能とを担う本体用ＭＰＵと、それぞれＩ／Ｏ回路に対するＩ／Ｏ処理機能を担う１台若しくは２台以上のＩ／Ｏ制御用ＭＰＵとを含んで構成され、Ｉ／Ｏ制御用ＭＰＵのそれぞれには、Ｉ／Ｏ回路に接続されるべき所定Ｉ／Ｏ点数分のＩ／Ｏポートと、本体用ＭＰＵとの通信を行うための通信用ポートとが少なくとも設けられており、かつ本体用ＭＰＵには、Ｉ／Ｏ制御用ＭＰＵとの通信を行うための通信用ポートが設けられている。【選択図】図１
2007310718.tif 000002
【特許請求の範囲】
【請求項１】
所定Ｉ／Ｏ点数分の外部Ｉ／Ｏ機器が接続可能なＩ／Ｏ回路と、Ｉ／Ｏ回路に対するＩ／Ｏ処理機能やユーザプログラムの演算処理機能を担う内部回路と有し、
内部回路は、
第１系統の内部回路と第２系統の内部回路とを含み、かつ
第１系統の内部回路と第２系統の内部回路とは、Ｉ／Ｏ回路に対して互いに並列に設けられると共に、両者間においてはクロスコミュニケーションを介する処理結果の照合確認処理が行われるように仕組まれており、さらに
第１系統の内部回路並びに第２系統の内部回路のそれぞれは、
ユーザプロクラムの演算処理機能とＩ／Ｏ制御用ＭＰＵに対するＩ／Ｏ制御処理機能とを担う本体用ＭＰＵと、それぞれＩ／Ｏ回路に対するＩ／Ｏ処理機能を担う１台若しくは２台以上のＩ／Ｏ制御用ＭＰＵとを含んで構成され、
Ｉ／Ｏ制御用ＭＰＵのそれぞれには、Ｉ／Ｏ回路に接続されるべき所定Ｉ／Ｏ点数分のＩ／Ｏポートと、本体用ＭＰＵとの通信を行うための通信用ポートとが少なくとも設けられており、かつ本体用ＭＰＵには、Ｉ／Ｏ制御用ＭＰＵとの通信を行うための通信用ポートが設けられており、
それにより、Ｉ／Ｏ制御用ＭＰＵの台数を増減することにより、Ｉ／Ｏ回路におけるＩ／Ｏ点数の増減に対応可能とした、ことを特徴とするセーフティ・コントローラ。
【請求項２】
本体用ＭＰＵの通信用ポートと、複数のＩ／Ｏ制御用ＭＰＵのそれぞれの通信用ポートとの間には、それらの複数のＩ／Ｏ制御用ＭＰＵのそれぞれの通信用ポートの１つを本体用ＭＰＵの通信用ポートに接続するための切替手段が設けられている、ことを特徴とする請求項１に記載のセーフティ・コントローラ。
【請求項３】
本体用ＭＰＵの側には、複数の通信用ポートが設けられており、複数のＩ／Ｏ制御用ＭＰＵのそれぞれの通信用ポートは、本体用ＭＰＵの複数の通信用ポートへと個別に接続される、ことを特徴とする請求項１に記載のセーフティ・コントローラ。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、例えば、セーフティＰＬＣやセーフティ・リモートＩ／Ｏターミナル等として実現されるセーフティ・コントローラに係り、特に、オールインワン型として好適なセーフティ・コントローラに関する。
【背景技術】
【０００２】
セーフティＰＬＣやセーフティ・リモートＩ／Ｏターミナル等として実現されるセーフティ・コントローラ、中でも、オールインワン型として実現されるセーフティ・コントローラは従来より知られている（例えば、特許文献１参照）。
【０００３】
このようなセーフティ・コントローラで構成されたセーフティ・コントロール・システムの説明図が図８に示されている。同図（ａ）に示されるように、このセーフティ・コントロール・システムは、１台のセーフティＰＬＣ８１と、複数台のセーフティ・リモートＩ／Ｏターミナル８２，８２・・・とを、ネットワーク８３を介して結んで構成されている。
【０００４】
ここで、セーフティＰＬＣ８１及びセーフティ・リモートＩ／Ｏターミナル８２は何れもオールインワン型として構成されている。すなわち、セーフティ・コントローラには、もともとＩ／Ｏ点数の増設を予定しているビルディング・ブロック型のものと、そのような増設を予定していないオールインワン型のものとが存在するが、同図（ａ）に示されるセーフティＰＬＣ８１やセーフティ・リモートＩ／Ｏターミナル８２は何れも増設を予定していないオールインワン型のものであることを意味している。
【０００５】
同図（ｂ）には、そのようなセーフティ・コントローラの基本的な内部構成が示されている。同図に示されるように、この種のセーフティ・コントローラ８０（８１，８２）は、所定Ｉ／Ｏ点数分の外部Ｉ／Ｏ機器が接続可能なＩ／Ｏ回路８０１と、Ｉ／Ｏ回路８０１に対するＩ／Ｏ処理機能やユーザプログラムの演算処理機能を担う内部回路８０２とを含んで構成される。
【０００６】
ここで、当業者にはよく知られているように、外部Ｉ／Ｏ機器としては、両手操作スイッチ、非常停止スイッチ、ライトカーテン、電磁ロック式セーフティドアスイッチ、マットスイッチ、セーフティリミットスイッチ、セーフティ電磁接触機等々を挙げることができる。
【０００７】
内部回路８０２は、第１系統の内部回路と第２系統の内部回路とを含んでいる。これら第１系統の内部回路と第２系統の内部回路とは、Ｉ／Ｏ回路に対して互いに並列に設けられると共に、両者間においてはクロスコミュニケーションを介する処理結果の照合確認処理が行われるように仕組まれている。
【０００８】
より具体的には、図８（ｂ）の例にあっては、第１系統の内部回路ならびに第２系統の内部回路のそれぞれは、ユーザプログラムの演算処理機能とＩ／Ｏ処理機能とを主として担うマイクロコンピュータ（以下、ＭＰＵという）により構成される。
【０００９】
すなわち、ＭＰＵ８０２ａが第１系統の内部回路に相当し、ＭＰＵ８０２ｂが第２系統の内部回路に相当する。また、Ｌ０がクロスコミュニケーションのための通信線に相当する。ＬＬ０１が第１系統のＭＰＵ８０２ａとＩ／Ｏ回路８０１とを結ぶ信号線束、ＬＬ０２が第２系統のＭＵＰ８０２ｂとＩ／Ｏ回路８０１とを結ぶ信号線束である。これらの信号線束ＬＬ０１，ＬＬ０２には、Ｉ／Ｏ回路８０１が取り扱う全Ｉ／Ｏ点数に対応する信号線が含まれている。
【００１０】
ところで、この種のセーフティ・コントローラの特徴であるが、Ｉ／Ｏ回路８０１と内部回路８０２との間においては、データの信頼性を高めるために、特別な工夫が施されている。すなわち、出力側にあっては、出力の制御信号と出力状態を監視する信号が必要である。入力側においては、入力の制御信号と入力回路の故障を診断するための信号が必要である。そのため、Ｉ／Ｏ回路８０１と内部回路８０２とを結ぶ信号線束ＬＬ０１，ＬＬ０２には、全Ｉ／Ｏ点数の何倍もの本数の信号線が含まれることとなる。
【特許文献１】特開２００４−２９７９９７号公報
【発明の開示】
【発明が解決しようとする課題】
【００１１】
図８を参照して説明したように、この種のセーフティ・コントローラにおいては、Ｉ／Ｏ回路８０１と内部回路８０２を構成する各系統のＭＰＵ８０２ａ，８０２ｂとの間には、Ｉ／Ｏ回路８０１が取り扱う全Ｉ／Ｏ点数の何倍もの信号線を含む信号線束ＬＬ０１，ＬＬ０２が必要となる。
【００１２】
そのため、Ｉ／Ｏ回路８０１において取り扱うＩ／Ｏ点数を増加しようとすると、内部回路８０２を構成する各系統のＭＰＵ８０２ａ，８０２ｂのファームウェアを大幅に改造せねばならないことに加えて、信号線束ＬＬ０１，ＬＬ０２を構成する信号線本数も飛躍的に増大するため、各系統のＭＰＵ８０２ａ，８０２ｂとして、極めて多数のＩ／Ｏポートを有する大規模なものへの変更が必要となり、コストアップが招来されるという問題点がある。
【００１３】
この発明は、従来のセーフティ・コントローラにおける上記の問題点に着目してなされたものであり、その目的とするところは、Ｉ／Ｏ回路の取り扱うＩ／Ｏ点数を増設する場合にも、内部回路を構成する各系統のＭＰＵにおいて大幅なファームウェアの変更が必要となったり、あるいは大規模なＭＰＵへの機種変更が必要となるといった不都合が生ずることのないセーフティ・コントローラを提供することにある。
【００１４】
この発明のさらに他の目的ならびに作用効果については、明細書の以下の記述を参照することにより、当業者であれば容易に理解されるであろう。
【課題を解決するための手段】
【００１５】
この発明のセーフティ・コントローラは、所定Ｉ／Ｏ点数分の外部Ｉ／Ｏ機器が接続可能なＩ／Ｏ回路と、Ｉ／Ｏ回路に対するＩ／Ｏ処理機能やユーザプログラムの演算処理機能を担う内部回路とを有する。
【００１６】
このような基本構成において、内部回路は、第１系統の内部回路と第２系統の内部回路とを含み、かつ第１系統の内部回路と第２系統の内部回路とは、Ｉ／Ｏ回路に対して互いに並列に設けられると共に、両者間においてはクロスコミュニケーションを介する処理結果の照合確認処理が行われるように仕組まれている。
【００１７】
さらに、第１系統の内部回路ならびに第２系統の内部回路のそれぞれは、ユーザプログラムの演算処理機能とＩ／Ｏ制御用ＭＰＵに対するＩ／Ｏ制御処理機能とを担う本体用ＭＰＵと、それぞれＩ／Ｏ回路に対するＩ／Ｏ処理機能を担う１台もしくは２台以上のＩ／Ｏ制御用ＭＰＵとを含んで構成される。
【００１８】
Ｉ／Ｏ制御用ＭＰＵのそれぞれには、Ｉ／Ｏ回路に接続されるべき所定Ｉ／Ｏ点数分のＩ／Ｏポートと、本体用ＭＰＵとの通信を行うための通信用ポートとが少なくとも設けられている。また、本体用ＭＰＵには、Ｉ／Ｏ制御用ＭＰＵとの通信を行うための通信用ポートが設けられている。
【００１９】
ここで、「セーフティ・コントローラ」には、セーフティＰＬＣやセーフティ・リモートＩ／Ｏターミナルなども含むことができる。
【００２０】
このような構成によれば、本体用ＭＰＵが担う機能は、ユーザプログラムの演算処理機能とＩ／Ｏ制御用ＭＰＵに対するＩ／Ｏ制御用処理機能である一方、Ｉ／Ｏ制御用ＭＰＵが担う機能は、Ｉ／Ｏ回路に対するＩ／Ｏ処理機能であるから、これらの機能それ自体は、出力回路におけるＩ／Ｏ点数の大小とはほとんど無関係なものとなる。
【００２１】
一方、Ｉ／Ｏ回路におけるＩ／Ｏ点数の増加に伴うＭＰＵ側のＩ／Ｏポート数の増加については、Ｉ／Ｏ制御用ＭＰＵの台数増加によって賄うことができる。
【００２２】
従って、このような本発明によれば、Ｉ／Ｏ制御用ＭＰＵの台数を増減することにより、Ｉ／Ｏ回路におけるＩ／Ｏ点数の増減に対応が可能となり、従前のセーフティ・コントローラの場合とは異なり、ＭＰＵのファームウェアを大幅に改造したり、Ｉ／Ｏポート数の多い大規模なＭＰＵ機種への変更を回避して、Ｉ／Ｏ点数増設に伴うコストアップを最小限に抑えることが可能となる。
【００２３】
本発明においては、本体用ＭＰＵの通信用ポートと、複数のＩ／Ｏ制御用ＭＰＵのそれぞれの通信用ポートとの間には、それらの複数のＩ／Ｏ制御用ＭＰＵのそれぞれの通信用ポートの１つを本体用ＭＰＵの通信用ポートに接続するための切り替え手段を設けてもよい。
【００２４】
このような構成によれば、Ｉ／Ｏ制御用ＭＰＵの数が増加したとしても、あらかじめ本体用ＭＰＵの内部に所定の切り替え処理をファームウェアとして組み込んでおけば、切替手段が作動することによって、本体用ＭＰＵの通信用ポートは各Ｉ／Ｏ制御用ＭＰＵの通信用ポートへと次々と切り替え接続され、これにより、本体用ＭＰＵの通信用ポートは１個のまま又は少数に止めたままで、Ｉ／Ｏ制御用ＭＰＵの台数増設に対応が可能となる。これにより、本体用ＭＰＵの通信用ポートをあらかじめ多数用意する必要がなくなり、本体用ＭＰＵのコストダウンが可能となる。
【００２５】
本発明においては、本体用ＭＰＵの側に、複数の通信用ポートをあらかじめ設けておき、複数のＩ／Ｏ制御用ＭＰＵのそれぞれの通信用ポートを、本体用ＭＰＵの複数の通信用ポートへと個別に接続するように構成してもよい。
【００２６】
このような構成によれば、先の場合とは異なり、本体用ＭＰＵの内部に切り替え処理をファームウェアとして組み込んだり、本体用ＭＰＵと各Ｉ／Ｏ制御用ＭＰＵとの間に切り替え手段を設けることが不要となって、増設範囲が小規模な場合には、セーフティ・コントローラ全体としてのコストダウンを実現することができる。
【発明の効果】
【００２７】
以上の説明で明らかなように、この発明によれば、Ｉ／Ｏ制御用ＭＰＵの台数を増減することにより、Ｉ／Ｏ回路におけるＩ／Ｏ点数の増減に対応させることができ、この種のオールインワン型のセーフティ・コントローラにおいてＩ／Ｏ点数増設時のコストダウンが可能となる利点がある。
【発明を実施するための最良の形態】
【００２８】
以下に、この発明に係るセーフティ・コントローラの好適な実施の一形態を添付図面を参照しながら詳細に説明する。
【００２９】
本発明セーフティ・コントローラの第１実施形態（比較的小規模なＩ／Ｏ点数の増設の場合）の構成図が図１に示されている。同図に示されるように、このセーフティ・コントローラ１は、所定Ｉ／Ｏ点数分の外部Ｉ／Ｏ機器（この例では、入力機器ＩＮ１〜ＩＮｎ）が接続可能なＩ／Ｏ回路１１と、Ｉ／Ｏ回路に対するＩ／Ｏ処理機能やユーザプログラムの演算処理機能を担う内部回路（詳細は後述）とを有する。
【００３０】
この内部回路は、従前のものと同様にして、第１系統の内部回路と第２系統の内部回路とを含んでいる。第１系統の内部回路と第２系統の内部回路とは、後述するように、Ｉ／Ｏ回路１１に対して互いに並列に設けられると共に、両者間においてはクロスコミュニケーションを介する処理結果の照合確認処理が行われるように仕組まれている。
【００３１】
より詳しくは、第１系統の内部回路は、ユーザプログラムの演算処理機能とＩ／Ｏ制御用ＭＰＵ１２ａに対するＩ／Ｏ制御処理機能とを担う本体用ＭＰＵ１３ａと、Ｉ／Ｏ回路１１に対するＩ／Ｏ処理機能を担うＩ／Ｏ制御用ＭＰＵ１２ａとを含んで構成される。同様にして、第２系統の内部回路は、ユーザプログラムの演算処理機能とＩ／Ｏ制御用ＭＰＵ１２ｂに対するＩ／Ｏ制御処理機能とを担う本体用ＭＰＵ１３ｂと、Ｉ／Ｏ回路１１に対するＩ／Ｏ処理機能を担うＩ／Ｏ制御用ＭＰＵ１２ｂとを含んで構成される。
【００３２】
Ｉ／Ｏ制御用ＭＰＵ１２ａには、Ｉ／Ｏ回路１１に接続されるべき所定Ｉ／Ｏ点数分のＩ／ＯポートＰ２３１〜Ｐ２３ｎと、本体用ＭＰＵ１３ａとの通信を行うための通信用ポートＰ２１と、第２系統のＩ／Ｏ制御用ＭＰＵ１２ｂとの通信を行うための通信用ポートＰ２２とが少なくとも設けられている。また、本体用ＭＰＵ１３ａには、Ｉ／Ｏ制御用ＭＰＵ１２ａとの通信を行うための通信用ポートＰ１１と、第２系統の本体用ＭＰＵ１３ｂとの通信を行うための通信用ポートＰ１２が設けられている。
【００３３】
同様にして、Ｉ／Ｏ制御用ＭＰＵ１２ｂには、Ｉ／Ｏ回路１１に接続されるべき所定Ｉ／Ｏ点数分のＩ／ＯポートＰ４３１〜Ｐ４３ｎと、本体用ＭＰＵ１３ｂとの通信を行うための通信用ポートＰ４１と、第１系統のＩ／Ｏ制御用ＭＰＵ１２ａとの通信を行うための通信用ポートＰ４２とが設けられている。また、本体用ＭＰＵ１３ｂには、Ｉ／Ｏ制御用ＭＰＵ１２ｂとの通信を行うための通信用ポートＰ３１と、第１系統の本体用ＭＰＵ１３ａとの通信を行うための通信用ポートＰ３２とが設けられている。
【００３４】
なお、Ｌ１は本体用ＭＰＵ１３ａとＩ／Ｏ制御用ＭＰＵ１２ａとの間で通信を行うための通信線、Ｌ２は本体用ＭＰＵ１３ｂとＩ／Ｏ制御用ＭＰＵ１２ｂとの間で通信を行うための通信線、Ｌ３はＩ／Ｏ制御用ＭＰＵ１２ａとＩ／Ｏ制御用ＭＰＵ１２ｂとの間で通信を行うための通信線、Ｌ４は本体用ＭＰＵ１３ａと本体用ＭＰＵ１３ｂとの間で通信を行うための通信線である。
【００３５】
以上の構成よりなるセーフティ・コントローラによれば、例えば、Ｉ／Ｏ制御用ＭＰＵ１２ａ，１２ｂとして、Ｉ／Ｏポート（Ｐ２３１〜Ｐ２３ｎ，Ｐ４３１〜Ｐ４３ｎ）の異なるものを何種類か用意しておいて、それらの１つを選択的に採用するように構成すれば、その選択可能なＩ／Ｏポート数の範囲内において、Ｉ／Ｏ回路１１におけるＩ／Ｏ点数の増減に対応することができる。
【００３６】
すなわち、それらの選択によって、Ｉ／Ｏ制御用ＭＰＵ１２ａ，１２ｂの扱うＩ／Ｏポート数が変更されたとしても、本体用ＭＰＵ１３ａとＩ／Ｏ制御用ＭＰＵ１２ａとの間、および本体用ＭＰＵ１３ｂとＩ／Ｏ制御用ＭＰＵ１２ｂとの間、のそれぞれにおけるＩ／Ｏデータのやり取りが、通信線Ｌ１，Ｌ２を介して通信で行われるものであるから、信号線束ＬＬ１，ＬＬ２に含まれる信号線が増減したとしても、その影響は、本体用ＭＰＵ１３ａ，１３ｂには表れない。そのため、Ｉ／Ｏ回路１１が扱うＩ／Ｏ点数が増減したとしても、本体用ＭＰＵ１３ａ，１３ｂ内のファームウェアの変更は僅かで済み、このようなＩ／Ｏ点数の増減を低コストで実現することができる。
【００３７】
次に、本発明セーフティ・コントローラの第２実施形態（多点数の構成例）の構成図が図２に示されている。
【００３８】
同図に示されるように、このセーフティ・コントローラ１ａは、所定Ｉ／Ｏ点数分の外部Ｉ／Ｏ機器（この例では、入力機器ＩＮ１〜ＩＮｎ、出力機器ＯＵＴ１〜ＯＵＴｎが相当）が接続可能なＩ／Ｏ回路１１と、Ｉ／Ｏ回路１１に対するＩ／Ｏ処理機能やユーザプログラムの演算処理機能を担う内部回路（詳細は後述）とを有する。
【００３９】
この内部回路は、先のものと同様に、第１系統の内部回路と第２系統の内部回路とを含んでいる。第１系統の内部回路と第２系統の内部回路とは、Ｉ／Ｏ回路１１に対して互いに並列に設けられると共に、両者間においてはクロスコミュニケーションを介する処理結果の照合確認処理が行われるように仕組まれている。
【００４０】
より具体的には、第１系統の内部回路は、ユーザプログラムの演算処理機能とＩ／Ｏ制御用ＭＰＵに対するＩ／Ｏ制御処理機能とを担う本体用ＭＰＵ１３ａ−１と、それぞれＩ／Ｏ回路１１に対するＩ／Ｏ処理機能を担う２台のＩ／Ｏ制御用ＭＰＵ１２ａ−１，１２ａ−２とを含んで構成される。同様にして、第２系統の内部回路は、ユーザプログラムの演算処理機能とＩ／Ｏ制御用ＭＰＵに対するＩ／Ｏ制御処理機能とを担う本体用ＭＰＵ１３ｂ−１と、それぞれＩ／Ｏ回路１１に対するＩ／Ｏ処理機能を担う２台のＩ／Ｏ制御用ＭＰＵ１２ｂ−１，１２ｂ−２とを含んで構成される。
【００４１】
２台のＩ／Ｏ制御用ＭＰＵ１２ａ−１，１２ａ−２のそれぞれには、Ｉ／Ｏ回路１１に接続されるべき所定Ｉ／Ｏ点数分のＩ／Ｏポート（図示せず）と、本体用ＭＰＵ１３ａ−１との通信を行うための通信用ポート（図示せず）とが少なくとも設けられると共に、本体用ＭＰＵ１３ａ−１には、２台のＩ／Ｏ制御用ＭＰＵのそれぞれとの通信を行うための通信用ポートＰ１１が設けられている。同様にして、２台のＩ／Ｏ制御用ＭＰＵ１２ｂ−１，１２ｂ−２のそれぞれには、Ｉ／Ｏ回路１１に接続されるべき所定Ｉ／Ｏ点数分のＩ／Ｏポート（図示せず）と、本体用ＭＰＵ１３ｂ−１との通信を行うための通信用ポート（図示せず）とが少なくとも設けられており、かつ本体用ＭＰＵ１３ｂ−１には、Ｉ／Ｏ制御用ＭＰＵ１２ｂ−１，１２ｂ−２との通信を行うための通信用ポートＰ３１が設けられている。
【００４２】
本体用ＭＰＵ１３ａ−１とＩ／Ｏ制御用ＭＰＵ１２ａ−１とを結ぶ通信線Ｌ１１にはゲート回路１４ａ−１が介在されると共に、本体用ＭＰＵ１３ａ−１とＩ／Ｏ制御用ＭＰＵ１２ａ−２とを結ぶ通信線Ｌ１２にはゲート回路１４ａ−２が介在されている。これらのゲート回路１４ａ−１，１４ａ−２は、本体用ＭＰＵ１３ａ−１から出力されたアドレスデータをデコードするデコーダ１５ａからのデコード信号によって択一的にゲートが開くように構成されている。同様にして、本体用ＭＰＵ１３ｂ−１とＩ／Ｏ制御用ＭＰＵ１２ｂ−１とを結ぶ通信線Ｌ２１にはゲート回路１４ｂ−１が介在されると共に、本体用ＭＰＵ１３ｂ−１とＩ／Ｏ制御用ＭＰＵ１２ｂ−２とを結ぶ通信線Ｌ２２にはゲート回路１４ｂ−２が介在されている。そして、これらのゲート回路１４ｂ−１，１４ｂ−２は、本体用ＭＰＵ１３ｂ−１から出力されるアドレスデータをデコードするデコーダ１５ｂからのデコード信号を受けて、ゲートが択一的に開くように構成されている。
【００４３】
以上のハードウェア構成を前提とした本体用ＭＰＵ１３ａ−１，１３ｂ−１のファームウェア構成が図４（ａ）に、また各Ｉ／Ｏ制御用ＭＰＵ１２ａ−１，１２ａ−２，１２ｂ−１，１２ｂ−２のファームウェア構成が図４（ｂ）に示されている。
【００４４】
図４（ａ）に示されるように、本体用ＭＰＵのファームウェア構成は、システム処理８１０と、通信処理８２０と、Ｉ／Ｏ制御１処理〜Ｉ／Ｏ制御ｎ処理８３０−１〜８３０−ｎと、演算処理８４０とを順に実行するように構成されている。そして、システム処理（ステップ８１０）においては、本体用ＭＰＵ間の同期化処理やＲＯＭ／ＲＡＭの自己診断などが行われる。また、通信処理（ステップ８２０）では、図８（ａ）で示されるように、他のセーフティ・コントローラ（セーフティＰＬＣ８１やセーフティ・リモートＩ／Ｏターミナル８２など）との通信を行う。また、Ｉ／Ｏ制御１処理〜Ｉ／Ｏ制御ｎ処理（ステップ８３０−１〜８３０−ｎ）においては、各Ｉ／Ｏ制御用ＭＰＵ１２ａ−１，１２ａ−２又は１２ｂ−１，１２ｂ−２との間でＩ／Ｏデータの交換を行う。すなわち、本体用ＭＰＵはＩ／Ｏ制御用ＭＰＵ１〜ｎに順次出力データを送信する。また、本体用ＭＰＵはＩ／Ｏ制御用ＭＰＵ１〜ｎから入力データを受信する。このとき交換するデータはＣＲＣコードでチェックされ信頼性を上げている。演算処理８４０では、ユーザが設定したプログラムを実行する。演算結果は通信処理（ステップ８２０）及びＩ／Ｏ制御処理（ステップ８３０−１〜８０３−ｎ）において、本体用ＭＰＵ間でデータ交換してチェックされる。
【００４５】
次に、Ｉ／Ｏ制御用ＭＰＵのファームウェア構成が図４（ｂ）に示されている。同図に示されるように、Ｉ／Ｏ制御用ＭＰＵのファームウェア構成は、システム処理（ステップ８３１）と、本体用ＭＰＵとの通信処理（ステップ８３２）と、出力処理（ステップ８３３）と、入力処理（ステップ８３４）とを含んで構成される。
【００４６】
システム処理（ステップ８３１）においては、Ｉ／Ｏ制御用ＭＰＵ間の同期化処理、ＲＯＭ／ＲＡＭの自己診断処理などが行われる。続く本体用ＭＰＵとの通信処理（ステップ８３２）では、本体用ＭＰＵとの間でデータ交換を行う。Ｉ／Ｏ制御用ＭＰＵは本体用ＭＰＵに入力データを送信する。また、Ｉ／Ｏ制御用ＭＰＵは本体用ＭＰＵから出力データを受信する。このときも、交換するデータはＣＲＣコードでチェックされ信頼性を上げている。
【００４７】
続く出力処理（ステップ８３３）では、Ｉ／Ｏ制御用ＭＰＵ間でデータ交換をしてチェックされた出力データを出力する。続く入力処理（ステップ８３４）では、Ｉ／Ｏ制御用ＭＰＵ間でデータ交換をしてチェックされた入力データを確定する。
【００４８】
次に、Ｉ／Ｏ制御１処理〜Ｉ／Ｏ制御ｎ処理（ステップ８３０−１〜８３０−ｎ）の詳細を示すフローチャート（その１）が図５に示されている。
【００４９】
同図において処理が開始されると、まず、本体用ＭＰＵ間で送信データのデータ交換を行う（ステップ５０１）。その後、送信データをチェックし、これがチェックＯＫであるか否かの判定を行う（ステップ５０２）。ここで、送信データのチェックＯＫでなければ（ステップ５０２ＮＯ）、あらかじめ規定された異常処理（ステップ５１０）へと進む。この異常処理では、安全出力をＯＦＦすると共に、ＬＥＤには異常表示を行い、メモリには異常状態の登録を行う（ステップ５１３）。
【００５０】
これに対して、送信データチェックＯＫの場合には（ステップ５０２ＹＥＳ）、ポインタｎの値を「１」から（ステップ５０３）、＋１ずつ歩進させては（ステップ５０８）、その都度デコーダ１５ａ，１５ｂに対して切り替え信号に相当するアドレスデータを出力し（ステップ５０９）、その都度Ｉ／Ｏ制御用ＭＰＵとの送信処理（ステップ５０５）及びＩ／Ｏ制御用ＭＰＵとの受信処理（ステップ５０６）とを、ポインタｎの値が設定値に達するまで（ステップ５０４ＹＥＳ）、繰り返す。
【００５１】
その間で、受信データチェックＯＫでなければ（ステップ５０７ＮＯ）、異常処理（ステップ５１２）を行う一方、ポインタｎの値が、設定値に達するのを待って（ステップ５０４ＮＯ）、ＬＥＤ表示（ステップ５１１）を行って処理を終了する。
【００５２】
このようなＩ／Ｏ制御処理が実行される結果、図２に示される回路構成において、本体用ＭＰＵ１３ａ−１はｎ台（この例ではｎ＝２）のＩ／Ｏ制御用ＭＰＵ１２ａ−１，１２ａ−２に順次接続される一方、本体用ＭＰＵ１３ｂ−１においても２台のＩ／Ｏ制御用ＭＰＵ１２ｂ−１，１２ｂ−２に対する順次接続が行われ、その都度、入出力データの送受信処理が行われるわけである。
【００５３】
この第２実施形態のセーフティ・コントローラによれば、本体用ＭＰＵ１３ａ−１と２台のＩ／Ｏ制御用ＭＰＵ１２ａ−１，１２ａ−２との間には、切り替え手段として機能するデコーダ１５ａおよびゲート回路１４ａ−１，１４ａ−２が介在されると共に、本体用ＭＰＵ１３ｂ−１と２台のＩ／Ｏ制御用ＭＰＵ１２ｂ−１，１２ｂ−２との間にも、切り替え手段として機能するデコーダ１５ｂ及びゲート回路１４ｂ−１，１４ｂ−２が介在されるため、Ｉ／Ｏ回路１１におけるＩ／Ｏ点数の大幅増大に適用すべく、各Ｉ／Ｏ制御用ＭＰＵ１２ａ−１，１２ａ−２，１２ｂ−１，１２ｂ−２を台数増加させたとしても、本体用ＭＰＵ１３ａ−１，１３ｂ−１においては入出力ポートの数を維持することができ、本体用ＭＰＵ１３ａ−１，１３ｂ−１におけるファームウェア並びにハードウェア的なコストアップを回避することができる。
【００５４】
次に、本発明セーフティ・コントローラの第３実施形態の構成図が図３に示されている。
【００５５】
同図に示されるように、このセーフティ・コントローラ１ｂは、所定Ｉ／Ｏ点数分の外部Ｉ／Ｏ機器（この例では、入力機器ＩＮ１〜ＩＮｎ、出力機器ＯＵＴ１〜ＯＵＴｎ）が接続可能なＩ／Ｏ回路１１と、Ｉ／Ｏ回路１１に対するＩ／Ｏ処理機能やユーザプログラムの演算処理機能を担う内部回路（詳細は後述）とを有する。
【００５６】
内部回路は、第１系統の内部回路と第２系統の内部回路とを含む。第１系統の内部回路と第２系統の内部回路とは、Ｉ／Ｏ回路１１に対して互いに並列に設けられると共に、両者間においてはクロスコミュニケーションを介する処理結果の照合確認処理が行われるように仕組まれている。
【００５７】
より具体的には、第１系統の内部回路は、ユーザプログラムの演算処理機能とＩ／Ｏ制御用ＭＰＵに対するＩ／Ｏ制御処理機能とを担う本体用ＭＰＵ１３ａ−２と、それぞれＩ／Ｏ回路１１に対するＩ／Ｏ処理機能を担う２台のＩ／Ｏ制御用ＭＰＵ１２ａ−１，１２ａ−２とを含んで構成される。同様にして、第２系統の内部回路は、ユーザプログラムの演算処理機能とＩ／Ｏ制御用ＭＰＵに対するＩ／Ｏ制御処理機能とを担う本体用ＭＰＵ１３ｂ−２と、それぞれＩ／Ｏ回路１１に対するＩ／Ｏ処理機能を担う２台のＩ／Ｏ制御用ＭＰＵ１２ｂ−１，１２ｂ−２とを含んで構成される。
【００５８】
そして、本体用ＭＰＵ１３ａ−２には、Ｉ／Ｏ制御用ＭＰＵ１２ａ−１との間で通信を行うための通信用ポートＰ１１１と、Ｉ／Ｏ制御用ＭＰＵ１２ａ−２との間で通信を行うための通信用ポートＰ１１２と、第２系統の本体用ＭＰＵ１３ｂ−２との間で通信を行うための通信用ポートＰ１２とが設けられている。同様にして、第２系統の本体用ＭＰＵ１３ｂ−２にも、Ｉ／Ｏ制御用ＭＰＵ１２ｂ−１と通信を行うための通信用Ｐ３１１と、Ｉ／Ｏ制御用ＭＰＵ１２ｂ−２と通信を行うための通信用ポートＰ３１２と、第１系統の本体用ＭＰＵ１３ａ−２との通信を行うための通信用ポートＰ３２とが設けられている。
【００５９】
そして、第１系統側においては、２つのＩ／Ｏ制御用ＭＰＵ１２ａ−１，１２ａ−２は、本体用ＭＰＵ１３ａ−２側の該当する通信用ポートＰ１１１，Ｐ１１２へと接続される。同様にして、第２系統側においても、２台のＩ／Ｏ制御用ＭＰＵ１２ｂ−１，１２ｂ−２は、本体用ＭＰＵ１３ｂ−２側の該当する通信ポートＰ３１１，Ｐ３１２へと接続される。
【００６０】
以上説明したハードウェア構成を前提として動作するＩ／Ｏ制御処理を示すフローチャート（その２）が図６に示されている。
【００６１】
同図において処理が開始されると、まず、本体用ＭＰＵ間での送信データのデータ交換処理が行われる（ステップ６０１）。
【００６２】
ここで、送信データチェックＯＫでなければ（ステップ６０２ＮＯ）、あらかじめ用意された異常処理（ステップ６０７）へと移行する。この異常処理においては、安全出力をＯＦＦ、ＬＥＤに異常表示、メモリに異常状態を登録する処理が実行される（ステップ６０９）。
【００６３】
一方、送信データチェックＯＫと判定されると（ステップ６０２ＹＥＳ）、続いて、Ｉ／Ｏ制御用ＭＰＵとの送信処理（ステップ６０３）及びＩ／Ｏ制御用ＭＰＵとの受信処理（ステップ６０４）が実行された後、受信データがチェックＯＫであるか否かの判定が行われる（ステップ６０５）。
【００６４】
ここで受信データチェックＯＫでなければ（ステップ６０５ＮＯ）、先と同様にして異常処理（ステップ６０８）が実行されるのに対し、受信データチェックＯＫであれば（ステップ６０５ＹＥＳ）、所定のＬＥＤ表示を行った後（ステップ６０６）、処理は完全に終了する。
【００６５】
この第３実施形態によれば、本体用ＭＰＵ１３ａ−２，１３ｂ−２の側に通信ポート切り替え処理を組み込んでいるため、先の第２実施形態とは異なり、本体用ＭＰＵと各Ｉ／Ｏ制御用ＭＰＵとの間に切り替え手段を設けることが不要となり、コントローラ全体としてのコストダウンを達成することができる。
【００６６】
以上説明したように、これらの実施形態によれば、第１系統の内部回路及び第２系統の内部回路のそれぞれを、ユーザプログラムの演算処理機能とＩ／Ｏ制御用ＭＰＵに対するＩ／Ｏ制御処理機能とを担う本体用ＭＰＵと、それぞれＩ／Ｏ回路に対するＩ／Ｏ処理機能を担う１台もしくは２台以上のＩ／Ｏ制御用ＭＰＵとを含むように構成すると共に、Ｉ／Ｏ制御用ＭＰＵのそれぞれには、Ｉ／Ｏ回路に接続されるべき所定Ｉ／Ｏ点数分のＩ／Ｏポートと、本体用ＭＰＵとの通信を行うための通信用ポートとを少なくとも設けると共に、本体用ＭＰＵにはＩ／Ｏ制御用ＭＰＵとの通信を行うための通信用ポートを設けるようにしたため、Ｉ／Ｏ制御用ＭＰＵの台数を増減することにより、Ｉ／Ｏ回路におけるＩ／Ｏ点数の増減に対応可能としたものである。
【００６７】
最後に、図７を参照して、本発明セーフティ・コントローラの外観の一例を示す。図から明らかなように、このセーフティ・コントローラには、内部回路収容部１０１と、端子台部１０２と、ＬＥＤなどが配置される表示部１０３と、通信用のコネクタ１０４とが設けられている。また、回路収容部１０１と端子台部１０２とは一体化されており、いわゆるビルディング・ブロック型ではなくて、オールインワン型の構成とされている。
【産業上の利用可能性】
【００６８】
本発明によれば、Ｉ／Ｏ制御用ＭＰＵの台数を増減することにより、Ｉ／Ｏ回路におけるＩ／Ｏ点数の増減に対応させることができ、この種のオールインワン型のセーフティ・コントローラにおいてＩ／Ｏ点数増設時のコストダウンが可能となる利点がある。
という効果を有する。
【図面の簡単な説明】
【００６９】
【図１】本発明セーフティ・コントローラの第１実施形態の構成図である。
【図２】本発明セーフティ・コントローラの第２実施形態の構成図である。
【図３】本発明セーフティ・コントローラの第３実施形態の構成図である。
【図４】セーフティ・コントローラのファームウェア説明図である。
【図５】Ｉ／Ｏ制御処理を示すフローチャート（その１）である。
【図６】Ｉ／Ｏ制御処理を示すフローチャート（その２）である。
【図７】本発明セーフティ・コントローラの外観図である。
【図８】セーフティ・コントロール・システムの説明図である。
【符号の説明】
【００７０】
１，１ａ，１ｂ  セーフティ・コントローラ
１１            Ｉ／Ｏ回路
１２ａ，１２ａ−１，１２ａ−２  第１系統のＩ／Ｏ制御用ＭＰＵ
１２ｂ，１２ｂ−１，１２ｂ−２  第２系統のＩ／Ｏ制御用ＭＰＵ
１３ａ，１３ａ−１  第１系統の本体用ＭＰＵ
１３ｂ，１３ｂ−１  第２系統の本体用ＭＰＵ
【図１】
2007310718.tif 000003
【図２】
2007310718.tif 000004
【図３】
2007310718.tif 000005
【図４】
2007310718.tif 000006
【図５】
2007310718.tif 000007
【図６】
2007310718.tif 000008
【図７】
2007310718.tif 000009
【図８】
2007310718.tif 000010