(57)【要約】【課題】同一構成のコントローラを複数要することなくモジュール型のコントローラの冗長性を確保する。【解決手段】コントローラ１は、ＣＰＵモジュール２１〜２４と、このＣＰＵモジュール２１〜２４に各々従属するオプションモジュール３１〜３４と、ＣＰＵモジュール２１〜２４のプログラムメモリ並びにデータメモリのデータを同期して保存するバックアップモジュール４１を備える。バックアップモジュール４１はＣＰＵモジュール２１の異常時にＣＰＵモジュール２１に従属するオプションモジュール３１をＣＰＵモジュール２２〜２４のいずれかに従属させる。【選択図】図１
2017162220.tif 000002
【特許請求の範囲】
【請求項１】
複数のＣＰＵモジュールと、
この複数のＣＰＵモジュールに各々従属する複数のオプションモジュールと、
前記複数のうちのいずれかのＣＰＵモジュールの異常時にこの異常なＣＰＵモジュールに従属していた前記オプションモジュールを前記いずれかの他のＣＰＵモジュールに従属させるバックアップモジュールと
を有する冗長化システム。
【請求項２】
前記バックアップモジュールは、前記オプションモジュールを前記いずれかの他のＣＰＵモジュールに従属させる際の当該ＣＰＵモジュールの優先順位を格納した
請求項１に記載の冗長化システム。
【請求項３】
前記バックアップモジュールは、前記複数のＣＰＵモジュールのプログラムメモリ並びにデータメモリのデータを周期的に同期保存する
請求項１または２に記載の冗長化システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は機能を分散化させたモジュール型のコントローラの冗長化技術に関する。
【背景技術】
【０００２】
複数のＣＰＵモジュール並びにオプションモジュールを有するモジュール型のコントローラ（以下、コントローラ）においては、オプションモジュールがＣＰＵモジュールに個別に従属して実装されている。前記コントローラはＣＰＵモジュールに異常が発生した場合に当該モジュールに従属するオプションモジュールの動作に影響が及ぶことがある。そこで、同一構成の優先系と待機系のコントローラを備えることによりコントローラの冗長化が図られている（特許文献１等）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−２０９５７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
従来のコントローラの冗長性を確保するためには、上述のように、少なくとも同一構成のコントローラを二つ備える必要がある。従来のコントローラはオプションモジュールがＣＰＵモジュールに対して個別に従属するので、優先系と待機系の双方のＣＰＵモジュールに異常が発生した場合、当該モジュールに対応したオプションモジュールの動作が不可能となり、冗長性を確保できなくなる。
【０００５】
本発明は、上記の事情に鑑み、同一構成のコントローラを複数要することなくモジュール型のコントローラの冗長性を確保することを課題とする。
【課題を解決するための手段】
【０００６】
そこで、本発明の冗長化システムは、複数のＣＰＵモジュールと、この複数のＣＰＵモジュールに各々従属する複数のオプションモジュールと、前記複数のうちのいずれかのＣＰＵモジュールの異常時にこの異常なＣＰＵモジュールに従属していた前記オプションモジュールを前記いずれかの他のＣＰＵモジュールに従属させるバックアップモジュールとを有する。
【０００７】
前記バックアップモジュールの一態様は、前記オプションモジュールを前記いずれかの他のＣＰＵモジュールに従属させる際の当該ＣＰＵモジュールの優先順位を格納する。
【０００８】
前記バックアップモジュールの一態様は、前記複数のＣＰＵモジュールのプログラムメモリ並びにデータメモリのデータを周期的に同期保存する。
【発明の効果】
【０００９】
以上の発明によれば同一構成のコントローラを複数要することなくモジュール型のコントローラの冗長性を確保できる。
【図面の簡単な説明】
【００１０】
【図１】本発明の実施形態における冗長化システムを実装したコントローラの構成図。
【図２】オプションモジュールが従属するＣＰＵモジュールの優先順位の一例。
【図３】ＣＰＵモジュールに対してオプションモジュールを従属させる設定画面の一例。
【図４】全てのＣＰＵモジュールが正常である場合のコントローラの動作例を説明したタイムチャート。
【図５】複数のＣＰＵモジュールのプログラムメモリ，データメモリのデータを周期的に同期保存する動作例を説明したタイムチャート。
【図６】同実施形態の冗長化システムにおける一斉同報通信及び個別通信の説明図。
【図７】一つのＣＰＵモジュールが異常である場合のコントローラの冗長動作例を説明したタイムチャート。
【図８】複数のＣＰＵモジュールが異常である場合のコントローラの冗長動作例を説明したタイムチャート。
【発明を実施するための形態】
【００１１】
以下に図面を参照しながら本発明の実施形態について説明する。
【００１２】
［冗長システムの構成例］
図１に示された本実施形態の冗長化システムを実装するコントローラ１は、所謂モジュール型のプログラマブルコントローラの態様を成す。すなわち、コントローラ１は、電源モジュール１１、ＣＰＵモジュール２１〜２４、オプションモジュール３１〜３４及びバックアップモジュール４１を備える。各モジュール１１，２１〜２４，３１〜３４，４１はコントローラ１の任意のスロット位置に実装される。
【００１３】
ＣＰＵモジュール２１〜２４は、ＣＰＵモジュール２１〜２４はコンピュータのハードウェア資源とソフトウェア資源とを有している。そして、ＣＰＵモジュール２１〜２４は、互いに独立し、バスを介してオプションモジュール３１〜３４，バックアップモジュール４１のいずれともデータの送受信が可能となっている。
【００１４】
オプションモジュール３１〜３４は、ＣＰＵモジュール２１〜２４に各々従属して動作する。オプションモジュールとしては、例えば周知のデータ通信系のモジュールが挙げられる。
【００１５】
バックアップモジュール４１は、バックアップモジュール４１はコンピュータのハードウェア資源とソフトウェア資源とを有し、ＣＰＵモジュール２１〜２４のプログラムメモリ（以下、ＰＭ）並びにデータメモリ（以下、ＤＭ）のデータを周期的に同期保存する。
【００１６】
また、バックアップモジュール４１は、オプションモジュール３１〜３４が従属するＣＰＵモジュール２１〜２４の優先順位（例えば、図２の優先順位）を予め格納している。そして、バックアップモジュール４１は、ＣＰＵモジュール２１〜２４のいずれか（例えば、ＣＰＵモジュール２１）が異常時に当該異常なＣＰＵモジュールに従属していたオプションモジュール（例えば、オプションモジュール３１）を前記優先順位に基づき他のＣＰＵモジュール（例えば、ＣＰＵモジュール２２）に従属させる。
【００１７】
前記優先順位の一例を図２に示した。同図に記載の優先順位において、オプション（１）〜（４）はオプションモジュール３１〜３４に各々対応する。ＣＰＵ（１）〜（４）はＣＰＵモジュール２１〜２４に各々対応する。
【００１８】
また、バックアップモジュール４１は、ＣＰＵモジュール２１〜２４のうちのいずれかのＣＰＵモジュールの異常を検出すると当該異常が発生したＣＰＵモジュールのＰＭ，ＤＭのデータを前記優先順位に基づき指定された他のＣＰＵモジュールに送信して当該異常が発生したＣＰＵモジュールに従属するオプションモジュールを当該他のＣＰＵモジュールに従属させる。
【００１９】
尚、ＣＰＵモジュール２１〜２４とバックアップモジュール４１は等価データ分割のための等価管理テーブル（等価番号とＤＭアドレス、ＰＭアドレス、サイズ等）を共有しているものとする。
【００２０】
［オプションモジュール３１〜３４の従属設定］
図３を参照しながらバックアップモジュール４１によるＣＰＵモジュール２１〜２４に対するオプションモジュール３１〜３４の従属設定の一例について説明する。
【００２１】
バックアップモジュール４１から出力されたＧＵＩには、コントローラ１のＣＰＵモジュール２１〜２４，オプションモジュール３１〜３４の一覧を示す「コントローラ１の標準ユニット」の設定画面４２が表示される。
【００２２】
設定画面４２によると、例えば、コントローラ１のスロット番号「７」のスロットには、オプションモジュールとしてモジュール種別「ＩＯリンクII／ＩＯリンクIII」のベースモジュールが実装されていることが示されている。そして、そのリソースの番号は図１の「５」であり、その従属するリソースの番号は「１」であることが示されている。このリソース番号「１」はスロット番号「３」のスロットに実装された図１のＣＰＵモジュール２１に対応し、リソース番号「５」は同図のオプションモジュール３１に対応する。
【００２３】
また、設定画面４２においてスロット番号を任意に選択すると当該選択されたスロット番号に対応したベースモジュールの設定情報を示すモジュール設定画面４３が表示される。
【００２４】
モジュール設定画面４３には、図３に例示したように、モジュール種別，形式，リソース番号，従属するリソース，冗長化の有無，二重化データ等価の初期設定，プロトコルバージョン，リソース名，コメント等の各種の設定項目の入出力フォームが設けられている。
【００２５】
「従属するリソース」の入出力フォームには、選択されたスロット番号に対応したリソース番号のベースモジュールが従属する他のベースモジュールのリソース番号が表示される。例えば、設定画面４２においてスロット番号「７」が選択されると、ＩＯリンクII／ＩＯリンクIII（オプションモジュール３１）のモジュール設定画面４３が表示される。このモジュール設定画面４３の「従属するリソース」の入出力フォームには、ＩＯリンクII／ＩＯリンクIIIが従属するＣＰＵ（ＣＰＵモジュール２１）のリソース番号「１」が表示される。
【００２６】
同様に、スロット番号「８」〜「１０」のモジュール設定画面においても当該番号に各々対応したオプションモジュール３２〜３４（リソース番号「６」〜「８」）が従属するＣＰＵモジュール２２〜２４のリソース番号「２」〜「４」がそれぞれ表示される。
【００２７】
さらに、「従属するリソース」の入出力フォームには、図２の優先順位に基づき、ＣＰＵモジュール２１〜２４のリソース番号「１」〜「４」を一覧表示させることができる。このリソース番号「１」〜「４」からいずれかの番号を選択することにより、オプションモジュール３１が従属すべき最優先のＣＰＵモジュールをＣＰＵモジュール２１〜２４から任意に設定できる。
【００２８】
以上の設定データは、ＣＰＵモジュール２１〜２４，オプションモジュール３１〜３４，バックアップモジュール４１に共通データとして格納される。
【００２９】
［ＣＰＵモジュール２１〜２４が正常である場合の動作例］
図４を参照しながらＣＰＵモジュール２１〜２４が正常である場合のコントローラ１の動作例について説明する。
【００３０】
Ｓ１０１：ＣＰＵモジュール２１〜２４の全てが正常である場合には、オプションモジュール３１〜３４は、図６に示した個別通信６１によってＣＰＵモジュール２１〜２４の各々に従属して動作する。
【００３１】
Ｓ１０２：バックアップモジュール４１は、ＣＰＵモジュール２１〜２４のＰＭ，ＤＭのデータを周期的に同期保存する。
【００３２】
例えば、図５に示したように、バックアップモジュール４１は指定された周期（例えば、５０ｍｓ）でＣＰＵモジュール２１〜２４（本実施形態では最大４個）のＰＭ，ＤＭのデータを等価（同期保存）する。
【００３３】
すなわち、バックアップモジュール４１はＣＰＵモジュール２１に対してバスを介してＰＭ，ＤＭのデータの要求を行う。ＣＰＵモジュール２１は前記要求を受けるとそのＰＭ，ＤＭのデータをバックアップモジュール４１に送信する。このとき、ＣＰＵモジュール２１は全てのＰＭ，ＤＭのデータの送信を行わずに、一回の要求に対して１ＫＢサイズのデータを応答する。バックアップモジュール４１はＣＰＵモジュール２１から受信したデータを保存する。同様にＣＰＵモジュール２２〜２４のＰＭデータ，ＤＭデータが順次にバックアップモジュール４１に保存される。
【００３４】
［ＣＰＵモジュール２１〜２４のいずれかが異常である場合の冗長動作例］
図７を参照しながらコントローラ１の冗長動作例について説明する。
【００３５】
Ｓ２０１：バックアップモジュール４１は図６に示したＣＰＵモジュール２１〜２４の一斉同報通信６２により受信したＣＰＵモジュール２１〜２４のＣＰＵの動作状態（動作モード、異常（例えば、電源断，故障）等）に基づきＣＰＵモジュール２１〜２４の異常を検出する。
【００３６】
Ｓ２０２：バックアップモジュール４１は、Ｓ２０１のステップで例えばＣＰＵモジュール２１の異常を検出すると、ＣＰＵモジュール２１に従属するオプションモジュールの有無を確認する。ＣＰＵモジュール２１に従属するオプションモジュールがオプションモジュール３１であることを確認すると、バックアップモジュール４１は図２の優先順位に基づきＣＰＵモジュール２１の次に優先順位の高いＣＰＵモジュール２２に対してＣＰＵモジュール２１のＤＭ，ＰＭのデータを一括送信する。
【００３７】
Ｓ２０３：ＣＰＵモジュール２２は通常通りオプションモジュール３２に対して個別通信６１を実施する。オプションモジュール３２はＣＰＵモジュール２２に従属して動作する。
【００３８】
Ｓ２０４：ＣＰＵモジュール２２は、バックアップモジュール４１からのＣＰＵモジュール２１のＰＭデータ，ＤＭデータの受信を完了している場合、ＣＰＵモジュール２１に代わって、オプションモジュール３１に対して個別通信６１を実施する。これにより、オプションモジュール３１はＣＰＵモジュール２１の機能を兼ねたＣＰＵモジュール２２に従属して動作する。
【００３９】
その後、Ｓ２０１のステップにて、例えば図８に示したように、ＣＰＵモジュール２２，２３の異常が検出されると、Ｓ２０２〜Ｓ２０４のステップを経てオプションモジュール３１〜３４はＣＰＵモジュール２１〜２３の機能を兼ねたＣＰＵモジュール２４に従属して動作する。これにより、コントローラ１の冗長性が維持される。
【００４０】
以上のように本実施形態のコントローラ１によれば、単一のバックアップモジュールを実装したことにより、従来の優先系と待機系とからなる二重化構成システムを組むことを要することなく冗長システムが実現する。また、これにより、冗長システムのコスト削減も期待できる。
【００４１】
さらに、ＣＰＵモジュールが実装された個数分の冗長化システムの実現が可能となり、より確実で安全な冗長性に優れたコントローラシステムを提供できる。
【００４２】
また、バックアップモジュール４１には、オプションモジュール３１〜３４をＣＰＵモジュール２１〜２４に従属させる際のＣＰＵモジュール２１〜２４の優先順位が予め格納されている。したがって、ＣＰＵモジュール２１〜２４のいずれかの異常時にオプションモジュール３１〜３４の従属先の切り替えを効率的に行える。
【００４３】
そして、ＣＰＵモジュール２１〜２４のＰＭ，ＤＭのデータはバックアップモジュール４１において周期的に同期保存されるのでコントローラ１の冗長性がさらに向上する。
【００４４】
本発明は、以上の実施形態に限定されるものではなく、コントローラ１の構成は特許請求の範囲内で変更して実施することができる。例えば、コントローラ１は、上記実施形態のＣＰＵモジュール、オプションモジュールを各々４つ備えた態様に限定することなく、ＣＰＵモジュール、オプションモジュールを各々適宜複数の備えた態様とすることもでき、この態様も本発明を構成する。
【符号の説明】
【００４５】
１…コントローラ（冗長化システム）
１１…電源モジュール
２１〜２４…ＣＰＵモジュール
３１〜３４…オプションモジュール
４１…バックアップモジュール
【図１】
2017162220.tif 000003
【図２】
2017162220.tif 000004
【図３】
2017162220.tif 000005
【図４】
2017162220.tif 000006
【図５】
2017162220.tif 000007
【図６】
2017162220.tif 000008
【図７】
2017162220.tif 000009
【図８】
2017162220.tif 000010