(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-02-05
(45)【発行日】2024-02-14
(54)【発明の名称】コントローラ及び施設監視システム
(51)【国際特許分類】
G05B 9/03 20060101AFI20240206BHJP
【FI】
G05B9/03
(21)【出願番号】P 2019235771
(22)【出願日】2019-12-26
【審査請求日】2022-09-22
(73)【特許権者】
【識別番号】000006666
【氏名又は名称】アズビル株式会社
(74)【代理人】
【識別番号】100098394
【氏名又は名称】山川 茂樹
(74)【代理人】
【識別番号】100064621
【氏名又は名称】山川 政樹
(72)【発明者】
【氏名】東出 功一
【審査官】西井 香織
(56)【参考文献】
【文献】特開2019-128638(JP,A)
【文献】特開2000-353105(JP,A)
【文献】特開2016-058009(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G05B 9/03
(57)【特許請求の範囲】
【請求項1】
監視装置と二重化されたコントローラを備えた施設監視システムにおけるコントローラであって、
前記監視装置との間で通信を行うための第1のI/F(Interface)と、
前記二重化されたコントローラの間で通信を行うための第2のI/F(Interface)と、
前記二重化されたコントローラの間で信号を送受信するためのDO(Digital Output)/DI(Digital Input)端子と、
前記二重化された他のコントローラの故障状態を、第2のI/Fを用いたメッセージの送受信と前記DO/DI端子を用いた信号の送受信に基づいて判定する故障判定部と、
前記故障判定部の判定結果に基づいて、スタンバイ状態とアクティブ状態の切り替えを行う切替処理部と、を備え、
前記故障判定部が、スタンバイ状態において、前記第2のI/Fを用いたメッセージに基づいて、アクティブ状態のコントローラが故障であると判定した場合には、前記切替処理部は、アクティブ状態への切り替えを行い、
前記故障判定部が、スタンバイ状態において、前
記DO/DI端子を用いた信号に基づいて、アクティブ状態のコントローラが故障であると判定し、前記第2のI/Fを用いたメッセージに基づいて、アクティブ状態のコントローラが正常であると判定した場合には、前記切替処理部は、アクティブ状態への切り替えは行わず、
前記DO/DI端子により送受信される前記信号は、一定周期で常時出力されるパルス信号であ
り、
前記故障判定部は、前記第2のI/Fを用いた故障状態の判定を、前記二重化された他のコントローラに送信したメッセージに対応するメッセージが受信できたか否かの判定により行う
コントローラ。
【請求項2】
前記故障判定部は、前記DO/DI端子を用いた故障状態の判定
を、前記二重化された他のコントローラが送信した前記パルス信号が検出できたか否か
の判定により行う
請求項1記載のコントローラ。
【請求項3】
請求項1
又は2に記載されたコントローラを備えた施設監視システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ビルやプラント等の施設に設置されている設備機器を管理する施設監視システムにおけるコントローラの二重化に関する。
【背景技術】
【0002】
ビルやプラント等の施設に設置されている設備機器を管理する施設監視システムは、設備機器の監視データの収集等を行うコントローラとコントローラをネットワーク経由で集中管理する監視装置から構成されている(例えば、非特許文献1参照。)。
【0003】
このコントローラに異常が発生した場合には、設備機器からの監視データの収集ができなくなるので、継続的に監視データを収集し、信頼性の高い施設監視システムを提供するためにコントローラの冗長化技術が提案されている。
【0004】
提案されている冗長化技術では、アクティブ状態のコントローラとスタンバイ状態の2つのコントローラを用意し、アクティブ状態のコントローラが故障した場合に、スタンバイ状態のコントローラに切り替えるように構成されている(例えば、特許文献1、2参照。)
【先行技術文献】
【特許文献】
【0005】
【文献】特許第3882783号公報
【文献】特許第4836979号公報
【非特許文献】
【0006】
【文献】小柳貴義、他「ビルディングオートメーションシステムのエンジニアリング作業効率化に貢献する新しいエンジニアリングツールの開発」,azbil Technical Review, 2017-04
【発明の概要】
【発明が解決しようとする課題】
【0007】
このような冗長化技術では、信頼性の高い施設監視システムを提供するために、安定したコントローラの故障状態の判定と、アクティブ状態のコントローラからスタンバイ状態のコントローラへ切り替えを効率よく行う技術が求められている。
【0008】
特許文献1における通信ユニットの故障状態の判定と通信ユニットの切り替えは、アクティブモードの通信ユニットとスタンバイモードの通信ユニットの両方に接続されたCPUユニットにより行われるので、通信ユニットの切り替えにはCPUユニットの介在が必要であり、通信ユニットの迅速な切り替えが行われない場合がある。
【0009】
特許文献2においては、制御系のコントローラと待機系のコントローラの間に接続されたトラッキングケーブルにより故障状態の読み出しを行うことにより、故障状態の判定を行うが、トラッキングケーブルにより故障状態の送受信が行われるので、ケーブルに異常が発生したような場合には、他のコントローラの故障状態が不明となるような場合もあり得る。
【0010】
本発明は、このような課題を解決するためになされたものであり、安定したコントローラの故障状態の判定と、アクティブ状態のコントローラからスタンバイ状態のコントローラへ切り替えを効率よく行うことができ、信頼性の高い施設監視システムを提供することを目的としている。
【課題を解決するための手段】
【0011】
このような目的を達成するために、本発明にかかるコントローラは、監視装置と二重化されたコントローラを備えた施設監視システムにおけるコントローラであって、前記監視装置との間で通信を行うための第1のI/Fと、前記二重化されたコントローラの間で通信を行うための第2のI/Fと、前記二重化されたコントローラの間で信号を送受信するためのDO/DI端子と、前記二重化された他のコントローラの故障状態を、第2のI/Fを用いたメッセージの送受信と前記DO/DI端子を用いた信号の送受信に基づいて判定する故障判定部と前記故障判定部の判定結果に基づいて、スタンバイ状態とアクティブ状態の切り替えを行う切替処理部とを備え、前記故障判定部が、スタンバイ状態において、前記第2のI/Fを用いたメッセージに基づいて、アクティブ状態のコントローラが故障であると判定した場合には、前記切替処理部は、アクティブ状態への切り替えを行い、前記故障判定部が、スタンバイ状態において、前記前記DO/DI端子を用いた信号に基づいて、アクティブ状態のコントローラが故障であると判定し、前記第2のI/Fを用いたメッセージに基づいて、アクティブ状態のコントローラが正常であると判定した場合には、前記切替処理部は、アクティブ状態への切り替えは行わないように構成してもよい。
【0012】
また、前記故障判定部は、前記DO/DI端子を用いた故障状態の判定は、前記二重化された他のコントローラが送信したパルス信号が検出できたか否かにより判定するように構成してもよい。
【0013】
また、前記故障判定部は、第2のI/Fを用いた故障状態の判定は、前記二重化された他のコントローラに送信したメッセージに対応するメッセージが受信できたか否かにより判定するように構成してもよい。
【0014】
このような目的を達成するために、本発明にかかる施設監視システムは、上述したコントローラを備える。
【発明の効果】
【0015】
本発明によれば、アクティブ状態のコントローラからスタンバイ状態のコントローラへの切り替えを効率よく行うことができ、信頼性の高い施設監視システムを提供することが可能となる。
【図面の簡単な説明】
【0016】
【
図1A】
図1Aは、本発明の実施の形態における設管理システムの構成例を示す図である。
【
図1B】
図1Bは、本発明の実施の形態における「アクティブ状態」と「スタンバイ状態」の動作を説明するための図である。
【
図2A】
図2Aは、本発明の実施の形態におけるコントローラの構成例である。
【
図2B】
図2Bは、本発明の実施の形態におけるコントローラを構成するコンピュータの構成例である。
【
図3A】
図3Aは、本発明の実施の形態におけるコントローラの故障判定を説明するための図である。
【
図3B】
図3Bは、本発明の実施の形態におけるコントローラの故障判定条件を説明するための図である。
【
図4A】
図4Aは、本発明の実施の形態における「故障DO監視」による故障判定を説明するための図である。
【
図4B】
図4Bは、本発明の実施の形態における「故障DO監視」による故障判定を説明するための図である。
【
図4C】
図4Cは、本発明の実施の形態における「下位イーサネット回線監視」による故障判定を説明するための図である。
【
図5A】
図5Aは、本発明の実施の形態における「主系コントローラ」の切り替え制御を説明するための図である。
【
図5B】
図5Bは、本発明の実施の形態における「従系コントローラ」の切り替え制御を説明するための図である。
【
図6A】
図6Aは、本発明の実施の形態におけるデータ同期(常時同期)を説明するための図である。
【
図6B】
図6Bは、本発明の実施の形態におけるデータ同期(初期同期)を説明するための図である。
【発明を実施するための形態】
【0017】
本願発明の実施の形態について図面を参照して説明する。本願発明は、様々な実施の形態で実施することが可能であり、以下に説明する実施の形態に限定されるものではない。
【0018】
<二重化構成の概要>
図1Aは、本発明の実施の形態における施設監視システムの構成例を示す図である。施設監視システム1は、二重化された主系コントローラ30、従系コントローラ40、コントローラ経由で設備機器を監視する監視装置10、コントローラに対して各種設定を行うエンジニアリングツール20、設備機器を接続するための複数のI/Oモジュール(50-1~50-4)から構成されている。本実施の形態では、監視装置10、コントローラ(30、40)、及びI/Oモジュール(50-1~50-4)間の通信は、BACnet(Building Automation and Control Network)(登録商標)プロトコルを用いて行われる。
【0019】
図1Aの構成例では、主系コントローラ30及び従系コントローラ40と監視装置10、エンジニアリングツール20の間は、上位イーサネット(登録商標)回線60で接続され、主系コントローラ30、従系コントローラ40、I/Oモジュール(50-1~50-4)の間は、下位イーサネット回線(70-1、70-2)で接続されている。主系コントローラ30、従系コントローラ40は、互いに、故障DO(Digital Output)信号を送受信するように構成されている。
【0020】
本実施の形態では、コントローラ間の故障DO監視、及び下位イーサネット回線監視を使用して対向する他のコントローラの故障状態を判定し、その判定結果に基づいてアクティブ状態とスタンバイ状態の切り替えを行う。
【0021】
通常は、主系コントローラが「アクティブ状態」、従系コントローラが「スタンバイ状態」となるが、主系コントローラが故障し、制御が行えなくなった場合に、従系コントローラが「アクティブ状態」に切り替わる。また、主系コントローラが故障から復帰した場合には、従系のコントローラが再度「スタンバイ状態」へ切り替わり、主系コントローラが「アクティブ状態」へ切り替わる。
【0022】
<二重化の方式>
本実施の形態における二重化方式は、「デュアルシステム」と「デュプレックスシステム」の組み合わせ方式である。「デュアルシステム」は、2つのコントローラに常に同じ動作を行わせておき、一方のコントローラに障害が発生したときでも、他方のコントローラによる処理の継続を行うことができるシステムである。一方、「デュプレックスシステム」は、常時運用する主系コントローラと待機している従系のコントローラで構成し、主系コントローラの故障時に従系コントローラが処理を代行するシステムである。
【0023】
<アクティブ状態とスタンバイ状態の動作>
図1Bは、本発明の実施の形態における「アクティブ状態」と「スタンバイ状態」の動作を説明するための図である。各コントローラにおける内部制御動作、I/Oモジュール通信及びI/Oモジュール通信におけるデータスキャンは、「デュアルシステム」とし、主系コントローラが故障した場合でも従系コントローラに速やかに処理を引き継ぐことができるようにする。
【0024】
一方、コントローラからの出力制御及びデータ通告については「デュプレックスシステム」とする。「スタンバイ状態」のコントローラからの出力制御及びデータ通告は抑制される。「スタンバイ状態」のコントローラは、出力制御、及びデータ通告を抑制し、「アクティブ状態」のコントローラが故障し、自らが「アクティブ状態」に切り替わった場合にのみこれらの抑制を解除することで、二重の出力制御、データ通告が行われないようにする。
【0025】
<データ及び制御状態の同期>
「アクティブ状態」のコントローラと「スタンバイ状態」のコントローラ間では、速やかに処理を引き継ぐために、監視装置10からのパラメータ設定やコマンド操作に関して、設定データを共有する。また、各コントローラにおける制御アプリケーションの動作に関して、「アクティブ状態」のコントローラと「スタンバイ状態」のコントローラ間での実行タイミング同期を行い、「アクティブ状態」から「スタンバイ状態」に切り替わったときでも制御状態のズレが少なくなるように構成する。
【0026】
<二重化構成の隠蔽>
本実施の形態の二重化されたコントローラでは、監視装置10と通信するための仮想IPアドレス(第1のアドレス)と物理IPアドレス(第2のアドレス)の2つのIPアドレスを設定可能とし、これにより、監視装置10からみた二重化構成の隠蔽を実現する。仮想IPアドレスは、主系・従系コントローラで共通するIPアドレスが設定され、動的に有効/無効の切り替えができる。仮想IPアドレスは、「アクティブ状態」のコントローラでのみ有効で使用可能であり、「アクティブ状態」と「スタンバイ状態」の切り替えに応じて、仮想IPアドレスの有効/無効を切り替えるように構成されている。
【0027】
仮想IPアドレスは、通常は無効となっており「アクティブ状態」のコントローラにおいてのみ有効となる。「アクティブ状態」/「スタンバイ状態」の切り替えに応じて、仮想IPアドレスの有効/無効の切り替え動作を行うことにより、従系コントローラ40が「アクティブ状態」の動作に切り替わっているときでも、監視装置10から見たときには常に同じコントローラが動作しているように見せかける。監視装置10は、主系コントローラ30及び従系コントローラ40に共通する仮想IPアドレスでアクセスすることで、主系・従系コントローラのどちらが「アクティブ状態」であるかを意識することなくアクセスすることができる。
【0028】
なお、主系・従系のコントローラに個別にアクセスする場合には、主系・従系のコントローラのそれぞれに割り当てられた固有の物理IPアドレスを用いる。エンジニアリングツール20は、この物理IPアドレスを用いて、各コントローラに対するエンジニアリングをすることができる。
【0029】
<コントローラの構成>
図2Aは、本発明の実施の形態におけるコントローラの構成例である。コントローラ30は、主に監視装置10からのパラメータ設定やコマンド操作等を用いた設備機器の監視制御や監視装置10へのデータ通告を行う監視制御部31、I/Oモジュールを制御するI/O制御部32、コントローラ間でのデータの同期を行うデータ同期部33、コントローラの切り替えを行う切替処理部34、及び対向コントローラの故障判定を行う故障判定部35、I/F部36、記憶部37から構成されている。従系コントローラ40も同様な構成を有する。
【0030】
I/F部36は、監視装置10と通信するための上位イーサネット回線60をサポートする第1のI/F(36-1)と、コントローラ及びI/Oモジュールと通信するための下位イーサネット回線(70-1、70-2)をサポートする第2のI/F(36-2)、対向するコントローラの故障監視を行うための故障DO信号を送受信するためのDO(Digital Output)端子(36-3)及びDI(Digital Input)端子(36-4)を備える。
【0031】
コントローラ30の監視制御部31、I/O制御部32、データ同期部33、切替処理部34、及び故障判定部35、I/F部36、記憶部37は、例えば、CPU(Central Processing Unit)、記憶装置及び外部インタフェース(以下、外部I/F)を備えたコンピュータと、これらのハードウェア資源を制御するプログラムによって実現することができる。このようなコンピュータの構成例を
図2Bに示す。
【0032】
コンピュータ100は、CPU200と、記憶装置300と、外部I/F400とを備えており、それらがI/Oインタフェース500を介して互いに接続されている。本実施の形態の故障判定や切替処理等を行うプログラムや、監視装置10からの設定データ、I/Oモジュールから収集したデータ等は記憶装置300に格納され、外部I/F400を介して、監視装置、エンジニアツール等の他のコンピュータが接続される。CPU200は、記憶装置300に格納されたプログラム等に従って本実施の形態で説明した処理を実行する。
【0033】
I/F部36では、上位イーサネット回線のための共通の仮想IPアドレスと固有の物理IPアドレスの2つのIPアドレスを設定可能である。これにより、監視装置10からの二重化構成の隠蔽を実現する。I/F部36では、動的に仮想IPアドレスの有効/無効の切り替えができる。仮想IPアドレスは、「アクティブ状態」のコントローラでのみ有効で使用可能であり、「アクティブ状態」と「スタンバイ状態」の切り替えに応じて、仮想IPアドレスの有効/無効を切り替える。仮想IPアドレスと物理IPアドレスは、同一ネットワークセグメントとして対応可能であり、同一のUDP/TCPポートを共有している。
【0034】
このように、仮想IPアドレスを用いて二重化構成を隠蔽することにより、監視装置は、主系・従系コントローラのアクティブ/スタンバイ状態を意識することなく常に1つのコントローラにアクセスすることができる。監視装置では、主系・従系コントローラのどちらがアクティブ状態であるかを判断するための特別な機能を備える必要がなくなり、監視装置からのパラメータ設定やコマンド操作等の監視制御を効率よく行うことが可能な施設監視システムを実現することが可能となる。
【0035】
<アクティブ/スタンバイ切り替え動作>
図3Aは、本発明の実施の形態におけるコントローラの故障判定を説明するための図である。主系・従系コントローラは、対向するコントローラの故障や故障からの復帰を判定し、その判定結果に基づいて、アクティブ状態/スタンバイ状態の切り替えを行う。本実施の形態では、「故障DO監視」と「下位イーサネット回線監視」の2経路を、アクティブ/スタンバイ状態の切り替え動作のための故障判定に用いる。
【0036】
<対向コントローラの状態検出と故障/復帰の判断>
図3Bは、本発明の実施の形態におけるコントローラの故障判定条件を説明するための図である。
【0037】
対向するコントローラが「故障」と認識している状態で、「故障DO監視」と「下位イーサネット回線監視」の2経路で対向コントローラの「正常」状態を検出した場合、「正常」状態に復帰したと判断する。例えば、「アクティブ状態」の従系コントローラは、「スタンバイ状態」への切り替えを行う。
【0038】
一方、対向コントローラが「正常」と認識している状態で、「故障DO監視」と「下位イーサネット回線監視」のうち、どちらかの経路で対向コントローラの「故障」を検出した場合、原則的には、対向コントローラが「故障」状態に遷移したと判断する。例えば、従系コントローラは、「スタンバイ状態」から「アクティブ状態」への切り替えを行う。
【0039】
ここで、「故障DO監視」による対向コントローラの状態が「故障」と判断した場合に、「下位イーサネット回線監視」において、下位イーサネット回線による対向コントローラの情報が取得でき、対向コントローラが「正常」と判断した場合は、「スタンバイ状態」のコントローラは、「アクティブ状態」への切り替え動作を保留し、「スタンバイ状態」を維持する。
【0040】
このような保留動作を行うことにより、コントローラ間のDO/DI端子の結線が切断したときに、すぐに「アクティブ状態」へ切り替わってしまい、両方のコントローラが「アクティブ状態」となってしまう、いわゆるスプリットブレイン状態を抑制することができるので、それにより、信頼性の高い二重化構成を備えた施設監視システムを提供することが可能となる。
【0041】
<故障DO監視による故障判定>
図4A、
図4Bは、本発明の実施の形態における「故障DO監視」による故障判定を説明するための図である。「故障DO監視」では、他のコントローラが送信したパルス信号が検出できたか否かにより、他のコントローラの故障状態を判定する。各コントローラにおけるDO端子(36-3、46-3)からの故障DO出力は、コントローラの電源断時においては、
図4Bの(1)に示すように、「LO」となる。
【0042】
一方、
図4Bの(2)に示すように、電源投入時の正常状態では、ソフトウェアによるパルス幅、例えば、50ms幅のパルス出力を常時行う。このパルス出力は、ソフトウェア割り込みにより行うため、割り込み暴走等の異常状態においては、パルス出力は、
図4Bの(3)に示すように、「HI」または「LO」に貼りつくことになる。DI端子(36-4、46-4)におけるパルスカウント検出が一定時間行えないパルス未検出の場合は、対向するコントローラを「故障」と判断する。パルス幅やパルス未検出の判定時間は適宜設定することができる。
【0043】
<下位イーサネット回線監視による故障判定>
図4Cは、本発明の実施の形態における「下位イーサネット回線監視」による故障判定を説明するための図である。「下位イーサネット回線監視」では、他のコントローラに送信したメッセージに対応するメッセージが受信できたか否かにより、他のコントローラの故障状態を判定する。
【0044】
主系・従系コントローラは、予め定めた所定のメッセージ、例えば、UDP通信を利用した「ダウンロードサービス」等のリードプロパティメッセージを所定の周期で送信し、対向するコントローラの制御状態に関わるデータ読み出しを行う。リードプロパティメッセージに対応する応答メッセージを検出した場合に、正常と判定し、リードプロパティメッセージに対して、連続して無応答を検出した場合に、故障と判定する。送信するメッセージ、メッセージの送信周期、タイムアウト時間、リトライ回数、故障と判断する無応答の検出回数は、適宜設定することができる。
【0045】
このように、「故障DO監視」と「下位イーサネット回線監視」の2経路を、対向するコントローラの故障判定のために併用することにより、スプリットブレインを抑制できる安定した故障判定を実現し、それにより、信頼性の高い二重化構成を備えた施設監視システムを提供することが可能となる。
【0046】
さらに、「故障DO監視」における故障判定にパルス検出を用いることにより、安定した故障判定を実現し、それにより、信頼性の高い二重化構成を備えた施設監視システムを提供することが可能となる。
【0047】
<主系コントローラにおける切り替え制御>
図5Aは、本発明の実施の形態における「主系コントローラ」の切り替え制御を説明するための図である。2つのコントローラのうちどちらを「主系コントローラ」として動作させるかは予め設定されている。
【0048】
起動時において、主系コントローラは、「スタンバイ状態」で立ち上がり、従系コントローラの故障状態判定と、アクティブ/スタンバイ状態の読み出しを行う。その結果、従系コントローラが「故障」状態、または「スタンバイ状態」であることを検出した場合には、主系コントローラは、「アクティブ状態」に遷移して制御動作を開始する。
【0049】
起動時において、主系コントローラは、従系コントローラが「正常」状態、かつ「アクティブ状態」で動作中であることを検出した場合、以下の処理を順番に行う。
(1)復帰時初期同期状態となり、「アクティブ状態」で動作している従系コントローラのデータ状態に同期し、従系コントローラの制御タイミングに初期同期する。
(2)同期処理が完了した後、アクティブ遷移待ち状態に遷移し、従系コントローラが「スタンバイ状態」に遷移するのを待つ。
(3)従系コントローラが「スタンバイ状態」に遷移したことを確認後、「アクティブ状態」に復帰して制御動作を開始する。
【0050】
<従系コントローラにおける切り替え制御>
図5Bは、本発明の実施の形態における「従系コントローラ」の切り替え制御を説明するための図である。2つのコントローラのうちどちらを「従系コントローラ」として動作させるかはあ予め設定されている。
【0051】
従系コントローラは、起動時において、「スタンバイ状態」で立ち上がり、主系コントローラの故障状態判定を行う。従系コントローラは、主系コントローラが正常動作している限りは「スタンバイ状態」を継続する。従系コントローラは、主系コントローラの「故障」を検出したときは、「アクティブ状態」に遷移する。
【0052】
従系コントローラは、主系コントローラの「正常」を検出した場合は、復帰時初期同期状態となり、主系コントローラでの従系コントローラとの同期動作が完了した後に、「スタンバイ状態」に戻る。
【0053】
従系コントローラは、復帰時初期同期状態において、主系コントローラの「故障」を検出した場合は、「アクティブ状態」に遷移する。
【0054】
従系コントローラは、「アクティブ状態」では、常時主系コントローラの故障検出を行う。主系コントローラの「故障」からの復帰を検出し、かつ主系コントローラがアクティブ遷移待ち状態である場合、「スタンバイ状態」に遷移する。
【0055】
<データ同期機能>
図6A、
図6Bは、本発明の実施の形態におけるデータ同期を説明するための図である。本実施の形態では、「常時同期」及び「初期同期」の2種類のデータ同期を行う。
【0056】
<常時同期の概要>
図6Aは、本発明の実施の形態における「常時同期」を説明するための図である。「常時同期」では、監視装置10から、主系コントローラに対するサービスメッセージの送信が行われたとき、所定のサービスメッセージを従系コントローラにそのまま転送してデータの同期を行う(プッシュ同期)。
【0057】
ここで、ネットワーク断線時の対応として、サービスメッセージの転送に失敗した場合には、できるだけデータの同期がとれるように、周期的な書き込みリトライを行う。
【0058】
<常時同期の同期動作>
主系コントローラ30、従系コントローラ40の両方が正常動作している場合に、監視装置10からのサービスメッセージによるパラメータ設定またはコマンド操作が行われたとき、「アクティブ状態」のコントローラ(ここでは主系コントローラ30)は、サービスメッセージを「スタンバイ状態」のコントローラ(ここでは従系コントローラ40)に転送することで、監視装置10から書き込まれるデータの同期を行う。サービスメッセージの転送は、コントローラ間の下位イーサネット回線(70-1)を介して行われる。
【0059】
常時同期は、「アクティブ状態」のコントローラ(ここでは主系コントローラ30)のみが行う。従系コントローラ40は、主系コントローラ30の故障時のみ「アクティブ状態」に遷移し、常時同期を行う。主系コントローラ30が故障から復帰した際には、主系コントローラ30は、初期同期により同期した後に、「アクティブ状態」へ切り替わり、常時同期を再開し、従系コントローラ40は、「スタンバイ状態」へ切り替わり、常時同期を停止する。
【0060】
常時同期では、予め定めた所定のサービスメッセージを転送対象とする。例えば、「BACnet通信のWritePropertyサービス要求」等の「ライトプロパティメッセージ」を転送対象とすることができる。監視装置からの「ライトプロパティメッセージ」等の設定パラメータが変更されるメッセージのみを転送対象とすることにより、データ同期の効率化を図ることができる。転送対象とするサービスメッセージは、適宜設定可能である。
【0061】
サービス転送に対する無応答を検出した場合には、再送処理を行う。再送処理にも失敗した場合には、エラーログに記録する。転送タイムアウト時間や、リトライ回数は適宜設定可能である。
【0062】
<初期同期の概要>
図6Bは、本発明の実施の形態における「初期同期」を説明するための図である。従系コントローラ40は、起動時において、対向する主系コントローラ30が「アクティブ状態」で動作していることを検出した場合、対向する主系コントローラ30から予め定めた所定のデータの読み出しを行って「初期同期」する。これにより、主系コントローラ30で動作している最新のデータに対して同期を行うことができる(プル同期)。
【0063】
<初期同期の同期動作>
従系コントローラ40は、起動時に、対向する主系コントローラ30の状態を確認し、主系コントローラ30が正常かつ「アクティブ状態」で動作している場合は、対向する主系コントローラのデータをスキャンし、データの同期を行う。スキャン対象データは全てのデータではなくてもよく、予め定めた所定のデータに限定することができる。
【0064】
初期同期は、コントローラの起動時やリスタート時に実行される。主系コントローラ30が故障から復帰した場合、復帰した主系コントローラ30から「アクティブ状態」で動作している従系コントローラ40に対してデータスキャンを行う。主系コントローラ30が故障から復帰した場合、従系コントローラは、主系コントローラ30からの初期同期が完了するまで「アクティブ状態」への遷移は行わない。
【0065】
初期同期は、常時同期と同様に下位イーサネット回線を介して行われる。データスキャンは、例えば、UDP通信を利用した「ダウンロードサービス」等の「リードプロパティメッセージ」により行われる。データスキャンが成功しなかった場合は、当該データに対する同期を諦め、エラーログに記録される。タイムアウト時間、リトライ回数は、適宜設定することができる。
【0066】
このように、二重化構成のデータ同期において、「常時同期」と「初期同期」とを併用し、さらには、「常時同期」では、予め定めた所定のメッセージを同期対象とするようにしたので、効率的なデータ同期を実現し、それにより、信頼性の高い二重化構成を備えた施設監視システムを提供することが可能となる。
【0067】
[実施の形態の拡張]
以上、実施形態を参照して本発明を説明したが、本発明は上記実施形態に限定されるものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解しうる様々な変更をすることができる。また、各実施形態については、矛盾しない範囲で任意に組み合わせて実施することができる。
【符号の説明】
【0068】
1…施設監視システム、10…監視装置、20…エンジニアリングツール、30…主系コントローラ、40…従系コントローラ、50-1~50-4…I/Oモジュール、60…上位イーサネット回線、70-1、70-2…下位イーサネット回線。