(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023045180
(43)【公開日】2023-04-03
(54)【発明の名称】制御クラウドサーバ
(51)【国際特許分類】
G05B 23/02 20060101AFI20230327BHJP
【FI】
G05B23/02 302Z
【審査請求】未請求
【請求項の数】5
【出願形態】OL
(21)【出願番号】P 2021153440
(22)【出願日】2021-09-21
(71)【出願人】
【識別番号】000003078
【氏名又は名称】株式会社東芝
(71)【出願人】
【識別番号】598076591
【氏名又は名称】東芝インフラシステムズ株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】萩原 剛
【テーマコード(参考)】
3C223
【Fターム(参考)】
3C223AA01
3C223BA03
3C223CC02
3C223DD03
3C223EB01
3C223FF13
3C223FF15
3C223FF24
3C223FF25
3C223FF28
3C223FF45
3C223GG01
3C223HH04
3C223HH08
(57)【要約】
【課題】制御システム内で得られた情報を、1つの制御システムを超えて活用することができる制御クラウドサーバを提供する。
【解決手段】実施形態の制御クラウドサーバは、クラウドコントローラとクラウドコントローラのコントロール対象機器とで構成される複数の制御システムごとの発報ルールとが登録された発報ルールテーブルを記憶する。また、制御クラウドサーバは、複数の制御システムの各々に含まれる複数のクラウドコントローラから、複数の制御システムごとの構成および運転状態に関する制御システム情報を取得する。制御クラウドサーバは、制御システム情報により発報ルールテーブルを参照して複数の制御システムごとの発報の要否、発報が要の場合のアクセス先、およびアクセス先への送信内容を特定し、特定したアクセス先に、送信内容を送信する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
クラウドコントローラと前記クラウドコントローラのコントロール対象機器とで構成される複数の制御システムごとの発報ルールとが登録された発報ルールテーブルを記憶し、
複数の制御システムの各々に含まれる複数のクラウドコントローラから、前記複数の制御システムごとの構成および運転状態に関する制御システム情報を取得し、
前記制御システム情報により前記発報ルールテーブルを参照して前記複数の制御システムごとの発報の要否、発報が要の場合のアクセス先、および前記アクセス先への送信内容を特定し、特定した前記アクセス先に、前記送信内容を送信する、
制御クラウドサーバ。
【請求項2】
前記制御システム情報から前記複数の制御システムの各々の標準の状態を規定する基準情報を生成し、
新たに取得した前記制御システム情報と前記基準情報を比較して新たに取得した前記制御システム情報に変化点がある場合、前記発報ルールテーブルを参照して前記変化点がある前記制御システム情報に対応する前記制御システムに対応付けられたアクセス先、および前記アクセス先への送信内容を特定し、特定した前記アクセス先に、前記送信内容を送信する、
請求項1に記載の制御クラウドサーバ。
【請求項3】
前記制御システム情報は、少なくとも、前記複数の制御システムに含まれる機器の構成、前記機器の使用期間、および前記機器の故障に関する故障情報を含み、
前記制御システム情報に故障情報が記録されている場合、当該故障情報に含まれる故障が発生した機器の型番と使用期間から、当該型番と同じ型番かつ当該使用期間と規定の閾値以下の範囲の使用期間の機器を含まないことを定義する前記複数の制御システムの各々の前記基準情報を生成し、
前記複数の制御システムのうち、前記基準情報と一致しない制御システムが存在する場合、前記発報ルールテーブルを参照して当該制御システムに対応付けられた前記アクセス先に、前記送信内容を送信する、
請求項2に記載の制御クラウドサーバ。
【請求項4】
前記制御システム情報は、少なくとも、前記複数の制御システムに含まれる機器のファームウェアのバージョンを含み、
前記ファームウェアの新たなバージョンの入力を受け付け、
前記発報ルールテーブルを参照して、前記制御システム情報に含まれる前記機器のファームウェアのバージョンが入力された前記新たなバージョンと一致しない制御システムに対応付けられた前記アクセス先に、当該制御システムに対応付けられた前記送信内容を送信する、
請求項1から3のいずれか1項に記載の制御クラウドサーバ。
【請求項5】
前記複数の制御システムの各々は、前記複数の制御システムに故障が発生した場合に前記制御クラウドサーバに故障情報を送信する、前記クラウド環境外に設けられた故障診断モジュールを含み、
前記複数の制御システムのいずれかに含まれる前記故障診断モジュールから故障情報を取得した場合であって、当該故障診断モジュールと同じ制御システムに含まれるクラウドコントローラから取得した制御情報に故障情報が含まれていない、または当該故障診断モジュールと同じ制御システムに含まれるクラウドコントローラから取得した制御情報に含まれる故障情報と前記故障診断モジュールから取得した故障情報とに差異がある場合、
当該故障診断モジュールと同じ制御システムに含まれるクラウドコントローラに対して、当該クラウドコントローラをダウンさせる制御信号を出力し、
前記発報ルールテーブルを参照して当該クラウドコントローラを含む前記制御システムに対応付けられた発報手法および発報先を特定し、
特定した発報手法により、特定した発報先へ発報する、
請求項1から4のいずれか1項に記載の制御クラウドサーバ。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、制御クラウドサーバに関する。
【背景技術】
【0002】
従来、産業プラント(以下、単に「プラント」という)を制御するコントローラおよびHMI(Human Machine Interface)等を含む制御システムは、各プラントのローカル環境に設けられていた。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、従来技術においては、制御システム内で得られた情報の活用はローカルの制御システム内での利用に留まっていた。
【課題を解決するための手段】
【0005】
実施形態の制御クラウドサーバは、クラウドコントローラとクラウドコントローラのコントロール対象機器とで構成される複数の制御システムごとの発報ルールとが登録された発報ルールテーブルを記憶する。また、制御クラウドサーバは、複数の制御システムの各々に含まれる複数のクラウドコントローラから、複数の制御システムごとの構成および運転状態に関する制御システム情報を取得する。制御クラウドサーバは、制御システム情報により発報ルールテーブルを参照して複数の制御システムごとの発報の要否、発報が要の場合のアクセス先、およびアクセス先への送信内容を特定し、特定したアクセス先に、送信内容を送信する。
【図面の簡単な説明】
【0006】
【
図1】
図1は、実施形態に係る管理システムの全体構成の一例を示す図である。
【
図2】
図2は、実施形態に係る発報ルールテーブルの一例を示す図である。
【
図3】
図3は、実施形態に係るメールによる発報の一例を示す図である。
【
図4】
図4は、実施形態に係るHMIによる発報の一例を示す図である。
【
図5】
図5は、実施形態に係るWebベースHMIによる発報の一例を示す図である。
【
図6】
図6は、実施形態に係る基準情報生成処理の流れの一例を示すフローチャートである。
【
図7】
図7は、実施形態に係る故障予測の発報の処理の流れの一例を示すフローチャートである。
【
図8】
図8は、実施形態に係る故障予測の発報の処理の流れの一例を示すフローチャートである。
【
図9】
図9は、実施形態に係る更新情報の発報の処理の流れの一例を示すフローチャートである。
【
図10】
図10は、実施形態における通常運用時の制御クラウドサーバとローカルI/Oシステムとの通信の一例を示す図である。
【
図11】
図11は、実施形態における非通常運用時の制御クラウドサーバとローカルI/Oシステムとの通信の一例を示す図である。
【
図12】
図12は、実施形態に係るリモートI/Oに入力されたセンサデータの値を時系列に示すグラフの一例である。
【発明を実施するための形態】
【0007】
(実施形態)
図1は、実施形態に係る管理システムSの全体構成の一例を示す図である。
図1に示すように、管理システムSは、クラウド環境1に設けられた制御クラウドサーバ12、複数のクラウドコントローラ11a~11n、および複数のローカルI/O(Input Output)システム2a~2nを含む。また、クラウド環境1には、メールサーバ41およびWebベースHMI42が設けられる。メールサーバ41およびWebベースHMI42は、管理システムSに含まれてもよいし、含まれなくともよい。WebベースHMI42は、クラウドHMIまたはOIS(Operator Interface Station)と呼ばれてもよい。
【0008】
管理システムSに含まれるクラウドコントローラ11a~11n、およびローカルI/Oシステム2a~2nの数は特に限定されるものではない。以下、個々のクラウドコントローラ11a~11nを特に区別しない場合には、単にクラウドコントローラ11という。また、個々のローカルI/Oシステム2a~2nを特に区別しない場合には、単にローカルI/Oシステム2という。ローカルI/Oシステム2は、本実施形態におけるローカルシステムの一例である。
【0009】
制御クラウドサーバ12、および複数のクラウドコントローラ11a~11nを総称して、制御クラウドサービス10という。
【0010】
クラウドコントローラ11a~11nは、ローカルI/Oシステム2a~2nを制御する。具体的には、クラウドコントローラ11aは、ローカルI/Oシステム2aを制御し、クラウドコントローラ11nは、ローカルI/Oシステム2nを制御する。
【0011】
より詳細には、クラウドコントローラ11は、制御プログラムの一種であるPOU(Program Organization Unit)を実行することにより、ローカルI/Oシステム2に含まれるリモートI/O231a,232a,231n,232nを制御する。
【0012】
制御主体であるクラウドコントローラ11と、制御対象であるローカルI/Oシステム2とは1対1で対応する。1組のクラウドコントローラ11とローカルI/Oシステム2の組み合わせを、制御システム3という。例えば、制御システム3aは、クラウドコントローラ11aとローカルI/Oシステム2aを含む。また、制御システム3nは、クラウドコントローラ11aとローカルI/Oシステム2nを含む。
【0013】
ローカルI/Oシステム2a~2nは、それぞれ、ローカル環境に設けられる。ローカル環境とは、ローカルI/Oシステム2a~2nの制御対象である産業プラント(以下、単に「プラント」という)内に物理的に設けられた環境である。つまり、ローカルI/Oシステム2a~2nに含まれる各種の装置は、プラント内に物理的に設けられる。
【0014】
これに対して、クラウドコントローラ11a~11n、制御クラウドサーバ12、メールサーバ41、およびWebベースHMI42を備えるクラウド環境1は、プラント内ではなく、一例としてデータセンター等の遠隔地に設けられる。ローカルI/Oシステム2と、クラウド環境1とはインターネット5等のネットワークを介して接続する。なお、クラウド環境1上に設けられる各装置(制御クラウドサーバ12、クラウドコントローラ11、メールサーバ41、およびWebベースHMI42)は、1台のコンピュータが複数の装置として機能しても良いし、複数のコンピュータが1つの装置として仮想的に機能しても良い。クラウド環境を物理的に構成するコンピュータは、例えば、CPU等の制御装置と、ROM(Read Only Memory)やRAM(Random Access Memory)等の記憶装置と、HDD(Hard Disk Drive)等の外部記憶装置とを備えており、通常のコンピュータを利用したハードウェア構成となっている。また、
図1における破線の矢印は、各装置間の通信接続関係を示す。
【0015】
図1に示す例では、ローカルI/Oシステム2aは、HMI21a、通信モジュール22a、リモートI/O231a,232a、および故障診断モジュール25aを備える。ローカルI/Oシステム2aは、HMI21a、通信モジュール22a、リモートI/O231a,232a、および故障診断モジュール25aは、I/Oバス20aにより接続する。また、ローカルI/Oシステム2nは、HMI21n、通信モジュール22n、リモートI/O231n,232n、および故障診断モジュール25nを備える。ローカルI/Oシステム2nは、HMI21n、通信モジュール22n、リモートI/O231n,232n、および故障診断モジュール25nは、I/Oバス90nにより接続する。
【0016】
また、ローカルI/Oシステム2は、さらに、クラウドコントローラ11で実行されるPOUを生成するエンジニアリングツールを備えても良い。エンジニアリングツールは、例えば、CPU等の制御装置と、ROMやRAM等の記憶装置と、HDD等の外部記憶装置とを備える通常のハードウェア構成を備えるPCでもよいし、専用端末でも良い。
【0017】
HMI21a,21nは、クラウドコントローラ11で実行される処理の状況等を、オペレータが監視するために用いられる装置である。以下、個々のHMI21a,HMI21nを特に区別しない場合には、単にHMI21という。
【0018】
通信モジュール22a,22nは、クラウドコントローラ11とインターネット5を介して通信接続する。以下、個々の通信モジュール22a,22nを特に区別しない場合には、単に通信モジュール22という。
【0019】
リモートI/O231a,232a,231n,232nは、プラントに設けられたセンサおよびその他の機器との間で信号の入出力をするためのインタフェースである。リモートI/O231a,232a,231n,232nは、クラウドコントローラ11からインターネット5および通信モジュール22を介してリモート制御される。センサおよびその他の機器からリモートI/O231a,232a,231n,232nに入力されたデータは、通信モジュール22およびインターネット5を介してクラウドコントローラ11に送信される。以下、個々のリモートI/O231a,232a,231n,232nを特に区別しない場合には、単にリモートI/O23という。
【0020】
故障診断モジュール25a,25nは、ローカルI/Oシステム2における情報を収集し、収集した情報に基づいて、ローカルI/Oシステム2で発生した故障を検知する。故障診断モジュール25a,25nは、故障を検知した場合に、制御クラウドサーバ12に当該故障に関する故障情報を送信する。以下、個々の故障診断モジュール25a,25nを特に区別しない場合には、単に故障診断モジュール25という。なお、本実施形態における故障とは、ハードウェアの故障に限定される、ソフトウェア的なエラー、および動作不具合等を含んでも良い。
【0021】
故障診断モジュール25が収集する情報は、例えば、ローカルI/Oシステム2の運転データ、ローカルI/Oシステム2で発生したアラーム、およびRAS(Reliability, Availability and Serviceability)情報等である。ローカルI/Oシステム2の運転データは、例えば、クラウドコントローラ11で実行されたPOUによりリモートI/O23が動作した動作履歴である。
【0022】
故障診断モジュール25a,25nは、通信モジュール22a,22nを介さずに制御クラウドサーバ12と通信可能である。また、故障診断モジュール25a,25nは、インターネット5だけではなく、電話回線(不図示)により制御クラウドサーバ12と通信しても良い。
【0023】
なお、故障診断モジュール25a,25nは、例えば、PLC(Programmable Logic Controller)、またはDCS(分散制御システム、Distributed Control System)のコントローラとしての機能を備えても良い。例えば、クラウドコントローラ11がダウンまたはエラーにより機能しない場合に、故障診断モジュール25a,25nがPOUを実行しても良い。この場合、クラウドコントローラ11の記憶部120に保存されているPOUが、故障診断モジュール25a,25n内の記憶部(不図示)にも保存されており、故障診断モジュール25a,25nが当該POUを実行可能であるものとする。以下、個々の故障診断モジュール25a,25nを区別しない場合には、単に故障診断モジュール25という。
【0024】
制御クラウドサーバ12は、複数のクラウドコントローラ11a~11nから、複数の制御システム3a~3nの構成および運転状態に関する制御システム情報を取得する。
【0025】
制御システム情報121は、例えば、複数の制御システム3a~3nに含まれる機器の構成、複数のクラウドコントローラ11a~11nで実行されるPOU、制御システム3a~3nに含まれる機器の使用期間、制御システム3a~3nで使用されるI/Oバス20a~20nの規格、制御システム3a~3nに含まれる機器のファームウェアのバージョン、制御システム3a~3nに含まれる機器のファームウェアのバージョンの最新の更新日、制御システム3a~3nに含まれる機器のファームウェアの更新者、制御システム3a~3nの運転データ、制御システム3a~3nを操作するオペレータのオペレーション記録、制御システム3a~3nで発生したアラーム、故障情報、RAS情報、オペレータの操作に関する動画、およびオペレータの操作に関する音声のうち少なくとも1つを含む。より詳細には、本実施形態においては、制御システム情報121は、少なくとも、複数の制御システム3a~3nに含まれる機器の構成、機器の使用期間、および複数の制御システム3a~3nに含まれる機器のファームウェアのバージョンを含むものとする。また、複数の制御システム3a~3nのいずれかにおいて機器の故障が発生した場合には、制御システム情報121は、さらに、故障が発生した機器の型番と使用期間を含む故障情報を含むものとする。なお、システム情報121に故障情報が含まれるとは、規定のフォーマットのシステム情報121に故障についての記録が含まれていることであってもよいし、規定のフォーマットのシステム情報121に加えて、故障情報が別途送信されることでもよい。
【0026】
また、制御システム情報121は、オペレータまたはエンジニア等により手動で入力されても良い。
【0027】
I/Oバス20a~20nの規格は、例えばDeviceNet(登録商標)等であるが、これに限定されるものではない。
【0028】
制御システム3a~3nの運転データは、例えば、POUの実行ログおよびリモートI/O23の入出力データが時系列に記録されたデータである。
【0029】
故障情報は、制御システム3で発生した故障に関する故障情報である。主として、ローカルI/Oシステム2で発生した故障を対象としても良い。
【0030】
また、制御システム情報は、さらに、エンジニアリングツールで生成された各種の情報を含んでも良い。
【0031】
オペレータの操作に関する動画、およびオペレータの操作に関する音声は、例えばオペレータが使用する管理室に設けられた不図示のカメラおよびマイクにより収集される。動画および音声は、ローカルI/Oシステム2の通信モジュール22を介して制御クラウドサーバ12に送信されてもよいし、ローカルI/Oシステム2を介さずに、制御クラウドサーバ12に送信されてもよい。
【0032】
メールサーバ41は、制御クラウドサーバ12の制御の下、各プラントのオペレータ、および各プラントに制御システム3を導入したシステムインテグレータ等にメールを送信する。
【0033】
WebベースHMI42は、オペレータが画面操作をするためのヒューマンインタフェースである。WebベースHMI42は、クラウド環境1上で動作する。例えば、インターネット5経由でWebベースHMI42と接続するPCまたはタブレット装置のディスプレイに、WebベースHMI42で生成された画面が表示される。WebベースHMI42にアクセスするPCまたはタブレット装置は、ローカルI/Oシステム2外に設けられてもよい。なお、WebベースHMI42は、クラウド環境1ではなく、ローカル環境に設けられてもよい。
【0034】
制御クラウドサーバ12は、複数のクラウドコントローラ11a~11nから取得した各クラウドコントローラ11a~11nの制御システム情報121を、記憶部120に保存する。また、制御クラウドサーバ12の記憶部120は、各クラウドコントローラ11a~11nの基準情報12も記憶する。また、制御クラウドサーバ12は、複数の故障診断モジュール25a~25nのいずれかから故障情報が送信された場合、当該故障情報も記憶部120に保存する。また、記憶部120は、制御システムごとの発報手法と発報先とが登録された発報ルールテーブル122を記憶する。なお、記憶部120は、物理的にはクラウド環境1を構成するコンピュータのHDD等の外部記憶装置により実現される。
【0035】
本実施形態においては、制御クラウドサーバ12は、複数のクラウドコントローラ11a~11nおよび複数の故障診断モジュール25a~25nから取得した情報を集約して保存する。本実施形態において、異なる制御システム3間では、制御クラウドサーバ12を介さない直接的なデータのやり取りは行われないものとする。例えば、クラウドコントローラ11aとクラウドコントローラ11nとは直接的に情報の送受信は行わない。
【0036】
制御クラウドサーバ12は、複数の制御システム3a~3nの基準情報123と複数のクラウドコントローラ11a~11nから収集された制御システム情報とを比較して変化点がある場合に、発報する。一例として、制御クラウドサーバ12は、制御システム情報から複数の制御システム3a~3nの各々の標準の状態を規定する基準情報123を生成する。そして、制御クラウドサーバ12は、基準情報123の生成後に新たに取得した制御システム情報と基準情報123を比較して新たに取得した制御システム情報に変化点がある場合、後述の発報ルールテーブル122を参照して変化点がある制御システム情報に対応する制御システム3に対応付けられたアクセス先、および当該アクセス先への送信内容を特定し、特定したアクセス先に、当該アクセス先に対応付けられた送信内容を送信する。
【0037】
基準情報123は、複数の制御システム3~3nの各々の標準の状態を規定する。標準の状態とは、制御クラウドサーバ12による発報の対象とならない状態である。基準情報123は、複数の制御システム3a~3nごとに定められる。
【0038】
具体的には、基準情報123は、平常時における制御システム情報であっても良い。この場合、平常時における制御システム情報が基準情報となる。
【0039】
例えば、基準情報123が平常時における制御システム情報である場合、変化点は、平常時における制御システム情報と、収集された制御システム情報との差異である。例えば、平常時において「エラーによるアラームが発生していないこと」が基準である場合、いずれかのクラウドコントローラ11から収集された制御システム情報にエラーによるアラームが含まれる場合は、基準情報123と制御システム情報121とに差異があるため、当該アラームの発生が変化点となる。また、平常時におけるセンサ値の値が、基準情報123であってもよい。この場合、制御クラウドサーバ12は、複数のクラウドコントローラ11a~11nの各々から取得した制御システム情報の運転データに含まれるセンサ値から、平常時におけるセンサ値を取集して基準情報123として登録する。その後、新たに取得した制御システム情報の運転データに含まれるセンサ値が基準情報123として登録されたセンサ値と規定の閾値以上異なる場合、制御クラウドサーバ12は、センサ値に変化点が発生したと判定する。
【0040】
また、基準情報123が、制御システム3の管理者等により更新される場合がある。例えば、ファームウェアの新しいバージョンがリリースされた場合、制御システム3の管理者が最新のファームウェアのバージョンを、基準情報123として追加登録する。なお、本実施形態においては、基準情報123に新たな情報を追加すること、および基準情報123登録済みの内容を変更することを、基準情報123を更新する、という。クラウドコントローラ11から収集された制御システム情報に含まれるファームウェアのバージョンが最新ではない場合、ファームウェアのバージョンの差異が変化点となる。
【0041】
また、基準情報123として、制御システム3の運転データの閾値または範囲が定められていても良い。例えば、制御システム3に含まれるリモートI/O23に入力されたデータが基準情報123として定められた閾値を超えた場合、当該データの発生が変化点となる。なお、単にデータが閾値を超えた場合だけではなく「連続してn回閾値を超えた場合」等の条件が基準情報に含まれても良い。
【0042】
また、基準情報123が、「制御システム3に故障がないこと」である場合、いずれかの制御システム3に故障が発生した場合、当該故障が変化点となる。制御クラウドサーバ12は、クラウドコントローラ11または故障診断モジュール25から故障情報を取得した場合、発報する。
【0043】
また、制御クラウドサーバ12がクラウドコントローラ11または故障診断モジュール25から収集した制御システム3の運転データ等から故障の発生を検知した場合、当該故障の発生の検知が変化点となる。この場合にも、制御クラウドサーバ12は、発報する。制御クラウドサーバ12による故障の検知の手法は特に限定されるものではなく、例えば、深層学習等のAI(Artificial Intelligence)技術を採用してもよい。一例として、制御クラウドサーバ12は、AI技術により、制御システム3ごとに、制御システム3が問題なく動作している状況における過去の制御システム情報を学習することにより、基準となる制御システム情報のパターンを特定する。そして、制御クラウドサーバ12は、クラウドコントローラ11から取得した制御システム情報が学習によって得られた基準となる制御システム情報に合致しない場合、故障の発生を検知する。
【0044】
また、制御クラウドサーバ12は、いずれかの制御システム3における故障を検知した場合であって、他の制御システム3において同様の故障が発生する可能性が高い場合、当該故障の発生の予測が変化点となる。この場合、制御クラウドサーバ12は、故障が予測される他の制御システム3のHMI21、当該他の制御システム3のオペレータ宛のメールの送信、またはWebベースHMI42による表示により発報する。
【0045】
より具体的には、複数の制御システム3a~3nのうちのいずれかの制御システム3で故障が発生した機器と同じ型番、かつ故障が発生した機器と使用期間が近い機器が存在することが変化点となる。故障が発生した機器と使用期間が近い機器とは、例えば、当該機器の使用期間と、故障が発生した機器の使用期間との差異が閾値以下の機器である。閾値は特に限定されるものではないが、例えば故障の種類に応じて変化しても良い。また、故障が発生した機器と使用期間との近さではなく、規定の使用期間以上使用されている機器を対象としても良い。例えば、規定の使用期間以上使用されている機器は、経年劣化による故障の可能性が高くなる。なお、機器別の規定の使用期間が制御クラウドサーバ12の記憶部120に保存されていても良い。
【0046】
また、いずれかのクラウドコントローラ11がダウンしている場合、当該ダウンが変化点となる。例えば、制御クラウドサーバ12は、定期的にクラウドコントローラ11にアクセスし応答を受けることにより、クラウドコントローラ11が動作していることを確認する。制御クラウドサーバ12は、クラウドコントローラ11から応答がない場合、クラウドコントローラ11がダウンしていると判定し、発報する。なお、ダウンの判定は、クラウドコントローラ11から規定の回数以上連続して応答がない場合であってもよい。
【0047】
また、いずれかの故障診断モジュール25から取得した故障情報と、当該故障診断モジュール25と同じ制御システム3に含まれるクラウドコントローラ11から取得した故障情報とに差異が発生している場合、当該差異の発生が変化点となる。
【0048】
より詳細には、制御クラウドサーバ12は、複数の故障診断モジュール25a~25nから取得した故障情報と、複数の故障診断モジュール25a~25nと同じ制御システム3に含まれる複数のクラウドコントローラ11a~11nから取得した故障情報と、を比較する。例えば、制御クラウドサーバ12は、故障診断モジュール25aから取得した故障情報とクラウドコントローラ11aから取得した故障情報とを比較する。また、制御クラウドサーバ12は、故障診断モジュール25nから取得した故障情報とクラウドコントローラ11nから取得した故障情報とを比較する。
【0049】
故障診断モジュール25から取得した故障情報と、当該故障診断モジュール25と同じ制御システム3に含まれるクラウドコントローラ11から取得した故障情報とが一致する場合、当該故障情報の信頼性が高い。この場合、制御クラウドサーバ12は、当該故障情報に基づいて、発報する。
【0050】
また、故障診断モジュール25から取得した故障情報と、当該故障診断モジュール25と同じ制御システム3に含まれるクラウドコントローラ11から取得した故障情報とが不一致の場合、クラウドコントローラ11がダウンしている、あるいはクラウドコントローラ11とローカルI/Oシステム2との通信が途絶した可能性がある。
【0051】
故障診断モジュール25から取得した故障情報と、当該故障診断モジュール25と同じ制御システム3に含まれるクラウドコントローラ11から取得した故障情報とが不一致の場合であって、当該クラウドコントローラ11がダウンしている場合、制御クラウドサーバ12は、当該クラウドコントローラ11を含む制御システム3のオペレータ宛のメールの送信、またはWebベースHMI42による表示により発報する。
【0052】
また、故障診断モジュール25から取得した故障情報と、当該故障診断モジュール25と同じ制御システム3に含まれるクラウドコントローラ11から取得した制御システム情報に含まれる故障情報とが不一致の場合であって、当該クラウドコントローラ11がダウンしていない場合、制御クラウドサーバ12は、当該クラウドコントローラ11に、制御信号を送信してダウンさせる。これは、クラウドコントローラ11とローカルI/Oシステム2との通信の途絶など何らかの不具合が発生している可能性のある状態でクラウドコントローラ11が動作を継続することを防ぐためのフェールセーフ機能である。また、この場合、制御クラウドサーバ12は、当該クラウドコントローラ11を含む制御システム3のオペレータ宛のメールの送信、またはWebベースHMI42による表示により発報する。
【0053】
なお、変化点は上述の各例に限定されるものではない。
【0054】
どのような変化点の場合に発報するか否かは、各制御システム3ごとに、オペレータおよびエンジニア等が個別に設定可能である。各制御システム3ごとの発報の要否は、制御クラウドサーバ12の記憶部120の発報ルールテーブル122に登録される。
【0055】
本実施形態においては、発報の手法として、メールの送信、ローカルI/Oシステム2に含まれるHMI21による表示、およびWebベースHMI42による表示、の3つの手法がある。
【0056】
メールの送信の場合、制御クラウドサーバ12は、メールサーバ41に、発報ルールテーブル122に予め設定された宛先にアラートメールを送信させる。
【0057】
また、HMI21による表示の場合、制御クラウドサーバ12は、発報対象の制御システム3に含まれるクラウドコントローラ11に発報ルールテーブル122に登録された送信内容を送信する。この場合、クラウドコントローラ11は、対応するHMI21に当該送信内容に基づくアラートを表示させる。HMI21での表示動作もクラウドコントローラ11の管理対象であるため、制御クラウドサーバ12から直接的にHMI21を制御することはしないものとする。
【0058】
また、WebベースHMI42による表示の場合、制御クラウドサーバ12は、クラウド環境1に設けられたWebベースHMI42に制御信号を送信することにより、WebベースHMI42で提供される画面にアラートを表示させる。これにより、WebベースHMI42にアクセスしたPCおよびタブレット装置のディスプレイに、当該アラートが表示される。
【0059】
発報の手法は、各制御システム3ごとおよび変化点の種類ごとに、オペレータおよびエンジニア等により定められる。例えば、各制御システム3ごとおよび変化点の種類ごとの発報の手法は、制御クラウドサーバ12に保存された発報ルールテーブル122に登録される。
【0060】
図2は、本実施形態に係る発報ルールテーブル122の一例を示す図である。発報ルールテーブル122は、複数の制御システム3ごとの発報ルールが登録されたテーブルである。より詳細には、
図2に示すように、発報ルールテーブル122は、制御システム3を特定可能な制御システム番号と、監視対象と、発報要否と、アクセス先と、送信内容とが対応付けられたテーブルである。
【0061】
監視対象は、発報の対象となる事象である。
図2では、故障予測、異常値、エラー発生、クラウドコントローラダウン、およびファームウェアの更新情報を監視対象として例示しているが、監視対象はこれらに限定されるものではない。監視対象は、変化点の種類ともいう。
【0062】
発報要否は、監視対象ごとの発報の要否の設定である。
【0063】
例えば、制御システム番号“1”の制御システム3では、当該制御システム3に故障が予測される場合、当該制御システム3で異常値が検知された場合、当該制御システム3でエラーが発生した場合、当該制御システム3に含まれるクラウドコントローラ11がダウンした場合、および当該制御システム3に含まれる装置で使用されるファームウェアの新しいバージョンがリリースされた場合に発報をすることが設定されている。
【0064】
また、制御システム番号“2”の制御システム3では、当該制御システム3で異常値が検知された場合、該制御システム3でエラーが発生した場合、および当該制御システム3に含まれるクラウドコントローラ11がダウンした場合に発報をすることが設定されているが、当該制御システム3に故障が予測される場合、および当該制御システム3に含まれる装置で使用されるファームウェアの新しいバージョンがリリースされた場合には発報をしないことが設定されている。
【0065】
アクセス先は、発報要否が“要”である場合に、制御クラウドサーバ12がアクセスする装置である。例えば、発報手段がメールの場合、アクセス先はメールサーバ41となる。また、発報手段がHMI21による表示の場合、アクセス先は発報対象の制御システム3に含まれるクラウドコントローラ11となる。また、発報手段がWebベースHMI42による表示の場合、アクセス先はWebベースHMI42となる。
【0066】
送信内容は、制御クラウドサーバ12がアクセス先に送信する内容である。送信内容は、アクセス先によって異なる。例えば、アクセス先がメールサーバ41である場合、送信内容はメールの宛先のメールアドレスとメッセージの内容である。また、アクセス先がクラウドコントローラ11である場合、送信内容はHMI21で表示するためのメッセージである。また、アクセス先がWebベースHMI42である場合、内容はWebベースHMI42で表示するためのメッセージである。なお、
図2に示す送信内容は一例であり、これに限定されるものではない。例えば、制御クラウドサーバ12は、単に変化点の種類を表すコードをクラウドコントローラ11またはWebベースHMI42に送信し、クラウドコントローラ11またはWebベースHMI42側で発報メッセージ等を決定してもよい。
【0067】
例えば、制御システム番号“1”の制御システム3では、当該制御システム3に故障が予測される場合、当該制御システム3に含まれるクラウドコントローラ11がダウンした場合、および当該制御システム3に含まれる装置で使用されるファームウェアの新しいバージョンがリリースされた場合においては、アクセス先がメールサーバ41に設定されている。制御システム3に含まれるクラウドコントローラ11がダウンした場合には、制御クラウドサーバ12からクラウドコントローラ11を介してHMI21に表示させることができない。このため、制御システム3に含まれるクラウドコントローラ11がダウンした場合には、HMI21による発報以外の手法が設定される。また、監視対象の種類に応じてメールの送信先アドレスが異なっても良い。例えば、故障予測およびクラウドコントローラ11のダウンについては制御システム3のオペレータまたは制御システム3の所有者である企業の管理責任者等のメールアドレスが設定されてもよい。また、ファームウェアの更新情報については、制御システム3の導入および保守担当のシステムインテグレータのエンジニアのメールアドレスが設定されてもよい。また、制御システム番号“1”の制御システム3では、制御システム3で異常値が検知された場合、およびエラーが発生した場合には、HMI21による表示が設定されている。
【0068】
制御クラウドサーバ12は、制御システム情報により発報ルールテーブル122を参照して複数の制御システム3ごとの発報の要否、発報が要の場合のアクセス先、およびアクセス先への送信内容を特定し、特定したアクセス先に、特定した送信内容を送信する。
【0069】
なお、
図2では、1つの変化点につき1つのアクセス先および送信内容が設定されている例を図示したが、発報要否が“要”の場合、少なくとも1つのアクセス先および送信内容が設定されていれば良い。例えば、1つの監視対象に対して、メール、HMI21、およびWebベースHMI42のうちの2つ以上による発報が実行されてもよい。
【0070】
なお、
図2では発報ルールテーブル122を1つのテーブルとして図示したが、変更点別の発報の要否と、アクセス先と、送信内容とがそれぞれ異なるテーブルに登録されても良い。
【0071】
次に、発報の具体例を
図3~
図5を用いて説明する。
図3に示す各発報は、ある制御システム3に含まれる通信モジュール22が経年劣化による故障が予測される場合の例である。
【0072】
図3は、本実施形態に係るメールによる発報の一例を示す図である。
図3に示すメール411は、ある制御システム3に含まれる通信モジュール22が経年劣化による故障が予測される場合のメールの一例である。例えば、制御クラウドサーバ12の記憶部120に、変化点ごとのメール文面の定型文が保存されており、制御クラウドサーバ12は、変化点が発生した制御システム3の識別情報および通信モジュール22の識別情報を、メール文面の定型文に追加して、メールサーバ41に送信させる。
【0073】
図4は、本実施形態に係るHMI21による発報の一例を示す図である。例えば、制御クラウドサーバ12は、発報対象の制御システム3に含まれるクラウドコントローラ11に発報内容を送信し、クラウドコントローラ11によりHMI21のディスプレイ211に当該発報内容を表示させる。例えば、制御クラウドサーバ12の記憶部120に、変化点ごとのHMI21表示用のメッセージの定型文が保存されており、制御クラウドサーバ12は、変化点が発生した制御システム3の識別情報および通信モジュール22の識別情報を、当該定型文に追加することにより、メッセージM1を生成する。なお、メッセージM1の文面はクラウドコントローラ11またはHMI21が生成しても良い。
【0074】
図5は、本実施形態に係るWebベースHMI42による発報の一例を示す図である。例えば、制御クラウドサーバ12は、WebベースHMI42に制御信号を送信することにより、WebベースHMI42で提供される画面に発報内容を表示させる。これにより、WebベースHMI42にアクセスしたPCおよびタブレット装置のディスプレイ421に、当該発報内容が表示される。例えば、制御クラウドサーバ12の記憶部120に、変化点ごとのWebベースHMI42表示用のメッセージの定型文が保存されており、制御クラウドサーバ12は、変化点が発生した制御システム3の通信モジュール22の識別情報を当該定型文に追加することにより、メッセージM2を生成する。なお、メッセージM2の文面はWebベースHMI42が生成しても良い。
【0075】
次に、以上のように構成された、制御クラウドサーバ12で実行される処理の流れについて説明する。
【0076】
図6は、本実施形態に係る基準情報生成処理の流れの一例を示すフローチャートである。
【0077】
まず、制御クラウドサーバ12は、各クラウドコントローラ11a~11bから、制御システム情報121を取得する(S1)。
【0078】
そして、制御クラウドサーバ12は、取得した制御システム情報121から基準情報123を生成する(S2)。
【0079】
なお、基準情報123は、複数回にわたって取得された制御システム情報121から生成されてもよい。例えば、制御クラウドサーバ12は、AI技術により、制御システム3ごとに、制御システム3が問題なく動作している状況における過去の制御システム情報を学習することにより、基準となる制御システム情報のパターンを特定することにより、各制御システム3におけるセンサ等の「異常値」を判定するための基準を決定し、基準情報123に登録する。なお、基準情報123のうち、ファームウェアの更新情報など、制御システム情報121から生成されない情報については、空欄のままとしてよい。
【0080】
図7は、本実施形態に係る変化点の検知処理の流れの一例を示すフローチャートである。
【0081】
まず、制御クラウドサーバ12は、各クラウドコントローラ11a~11bから、制御システム3ごとの制御システム情報121を取得する(S101)。制御クラウドサーバ12は、取得した制御システム情報121を記憶部120に保存する。
【0082】
そして、制御クラウドサーバ12は、取得した制御システム3ごとの制御システム情報121を、制御システム3ごとの基準情報123と比較する。制御システム情報121がいずれかの基準情報123と一致しない制御システム3が存在する場合(S102“有”)、発報ルールテーブル122を参照して、対象の制御システム3における制御システム情報121と一致しない基準情報123に関する変化点の種別に対応する発報要否を特定する(S103)。
【0083】
発報ルールテーブル122において、該当の変化点の発報ルールにおいて発報要否が“要”になっている場合(S104“要”)、制御クラウドサーバ12は、発報ルールテーブル122から、対象の制御システム3におけるアクセス先を検索する(S105)。
【0084】
発報ルールテーブル122に登録されたアクセス先が“クラウドコントローラ”である場合(S106“クラウドコントローラ”)、制御クラウドサーバ12は、発報対象の制御システム3に含まれるクラウドコントローラ11に発報ルールテーブル122に登録されたHMI表示用メッセージを送付することにより、HMI21に発報させる(S107)。
【0085】
発報ルールテーブル122に登録されたアクセス先が“メールサーバ”である場合(S106“メールサーバ”)、制御クラウドサーバ12は、発報ルールテーブル122に登録された宛先メールアドレスおよびメッセージをメールサーバ41に送付することにより、当該メールアドレス宛にメールを送信させる(S108)。
【0086】
発報ルールテーブル122に登録されたアクセス先が“WebベースHMI”である場合(S106“WebベースHMI”)、制御クラウドサーバ12は、発報ルールテーブル122に登録された表示用メッセージをWebベースHMI42に送付することにより、WebベースHMI42に発報させる(S109)。
【0087】
また、制御システム情報121がいずれかの基準情報123と一致しない制御システム3が存在しない場合(S102“無”)、制御クラウドサーバ12は、発報をしない(S110)。また、発報ルールテーブル122において、対象の制御システム3における発報要否が“否”になっている場合にも(S104“否”)、制御クラウドサーバ12は、発報をしない。
【0088】
次に、本実施形態に係る故障予測の発報の処理の流れについて説明する。
【0089】
図8は、本実施形態に係る故障予測の発報の処理の流れの一例を示すフローチャートである。
【0090】
まず、制御クラウドサーバ12は、各クラウドコントローラ11a~11bから、制御システム3ごとの制御システム情報121を取得する(S121)。制御クラウドサーバ12は、取得した制御システム情報121を記憶部120に保存する。
【0091】
そして、制御クラウドサーバ12は、取得したシステム情報121に故障情報が含まれる場合(S122“Yes”)、「故障情報に含まれる故障が発生した機器(例えば通信モジュール22)の型番と同じ型番かつ当該故障が発生した機器の使用期間と規定の閾値以下の範囲の使用期間の機器を含まないこと」を、各制御システム3の基準情報123に追加する(S123)。
【0092】
当該故障情報は、例えば、通信モジュール22が経年劣化に伴い故障したことを示す情報とする。具体的には、故障情報は、故障した通信モジュール22が含まれる制御システム3の識別情報、故障した通信モジュール22の型番および経過年数を含む。なお、いずれの制御システム3においても故障が発生していない場合には、システム情報121には故障情報が含まれない。
【0093】
そして、制御クラウドサーバ12は、S123で追加した基準情報123と、各制御システム3の制御システム情報121とを比較する。制御システム情報121がS123で追加した基準情報123と一致しない制御システム3がある場合(S124“有”)、制御クラウドサーバ12は、発報ルールテーブル122から、当該制御システム3における故障予測の発報要否を検索する(S125)。
【0094】
発報ルールテーブル122において、当該制御システム3における故障予測の発報要否が“要”になっている場合(S126“要”)、制御クラウドサーバ12は、発報ルールテーブル122から、対象の機器を含む制御システム3における故障予測のアクセス先を検索する(S127)。
【0095】
発報ルールテーブル122に登録されたアクセス先が“クラウドコントローラ”である場合(S128“クラウドコントローラ”)、制御クラウドサーバ12は、発報対象の制御システム3に含まれるクラウドコントローラ11に発報ルールテーブル122に登録されたHMI表示用メッセージを送付することにより、HMI21に故障予測について表示させる(S129)。
【0096】
発報ルールテーブル122に登録されたアクセス先が“メールサーバ”である場合(S128“メールサーバ”)、制御クラウドサーバ12は、発報ルールテーブル122に登録された宛先メールアドレスおよびメッセージをメールサーバ41に送付することにより、当該メールアドレス宛に故障予測についてのメールを送信させる(S130)。
【0097】
発報ルールテーブル122に登録されたアクセス先が“WebベースHMI”である場合(S128“WebベースHMI”)、制御クラウドサーバ12は、発報ルールテーブル122に登録された表示用メッセージをWebベースHMI42に送付することにより、WebベースHMI42で提供される画面に故障予測についての情報を表示させる(S131)。
【0098】
また、いずれの制御システム3の制御システム情報121も、S123で追加した基準情報123と一致する場合(S124“無”)、制御クラウドサーバ12は、発報をしない(S132)。また、発報ルールテーブル122において、当該制御システム3における故障予測の発報要否が“否”になっている場合にも(S126“否”)、制御クラウドサーバ12は、発報をしない。
【0099】
ここで、このフローチャートの処理は終了する。
【0100】
なお、
図8では、故障情報は制御システム情報121に含まれるものとしたが、故障情報は、故障診断モジュール25から制御クラウドサーバ12に送信されてもよい。あるいは、制御システム3のオペレータまたは品質管理担当者が、通信モジュール22が経年劣化に伴い故障したことを示す故障情報を、制御クラウドサーバ12に入力しても良い。
【0101】
次に、更新情報の発報の場合に、制御クラウドサーバ12で実行される処理の流れについて説明する。
【0102】
図9は、本実施形態に係る更新情報の発報の処理の流れの一例を示すフローチャートである。
【0103】
まず、制御クラウドサーバ12は、ユーザによるファームウェアの新たなバージョンの入力を受け付ける(S141)。制御クラウドサーバ12のユーザは、例えば、制御クラウドサーバ12およびクラウドコントローラ11の開発運用会社の技術担当者等である。具体的には、制御システム3a~3nのうちのいずれかに含まれる機器のファームウェアの新しいバージョンがリリースされた場合、制御クラウドサーバ12およびクラウドコントローラ11の開発運用会社の技術担当者等が、制御クラウドサーバ12へファームウェアが更新される機器の型番およびファームウェアの最新バージョン等のモジュール情報を制御クラウドサーバ12に入力する。
【0104】
この場合、制御クラウドサーバ12は、入力されたファームウェアの新たなバージョンを、各制御システムの基準情報123に追加する(S142)。これにより、入力されたファームウェアの新たなバージョンが、複数の制御システム3の各々の標準の状態として規定される。
【0105】
そして、制御クラウドサーバ12は、記憶部120に保存された制御システム情報121を参照し、制御システム情報121と、S142で追加した基準情報123とを比較する。例えば、制御クラウドサーバ12は、制御システム情報121に登録された制御システム情報121に含まれる機器のうち、ファームウェアのバージョンが基準情報123に登録された最新バージョンと異なる機器がある場合(S143“有”)、制御クラウドサーバ12は、発報ルールテーブル122から、当該機器を含む制御システム3におけるファームウェアの更新情報の発報要否を検索する(S144)。以下、ファームウェアのバージョンが基準情報123に登録された最新バージョンと異なる機器を、更新対象の機器という。
【0106】
発報ルールテーブル122において、当該制御システム3におけるファームウェアの更新情報の発報要否が“要”になっている場合(S145“要”)、制御クラウドサーバ12は、発報ルールテーブル122から、更新対象の機器を含む制御システム3におけるファームウェアの更新情報のアクセス先を検索する(S146)。S147~S150の発報の処理は、
図7で説明したS106~S109の処理と同様である。
【0107】
また、更新対象の機器がない場合(S143“無”)、制御クラウドサーバ12は、発報をしない(S151)。また、発報ルールテーブル122において、当該制御システム3におけるファームウェアの更新情報の発報要否が“否”になっている場合にも(S145“否”)、制御クラウドサーバ12は、発報をしない。
【0108】
ここで、このフローチャートの処理は終了する。
【0109】
次に、故障診断モジュール25と制御クラウドサーバ12との関係について
図10~
図12を用いて説明する。
【0110】
図10は、本実施形態における通常運用時の制御クラウドサーバ12とローカルI/Oシステム2aとの通信の一例を示す図である。
図10においては、ローカルI/Oシステム2aで故障が発生しておらず、かつローカルI/Oシステム2aとクラウド環境1との間のインターネット5の通信が途絶していない。この場合、クラウドコントローラ11aとローカルI/Oシステム2aの通信モジュール22aとがインターネット5を介してデータの送受信をする。
【0111】
具体的には、クラウドコントローラ11aは、POUを実行することによりリモートI/O231a,232aへの制御信号を、インターネット5を介して通信モジュール22aに送信する。また、通信モジュール22aは、リモートI/O231a,232aに入力されたセンサデータを、インターネット5を介してクラウドコントローラ11aに送信する。
【0112】
ここで、仮に、ローカルI/Oシステム2aで故障が発生、または、ローカルI/Oシステム2aとクラウド環境1との間のインターネット5の通信が途絶したとする。
【0113】
図11は、本実施形態における非通常運用時の制御クラウドサーバ12とローカルI/Oシステム2aとの通信の一例を示す図である。
図11に示す例では、制御クラウドサーバ12とローカルI/Oシステム2aとの通信が途絶し、かつ、ローカルI/Oシステム2aで故障が発生している。
【0114】
この場合、クラウドコントローラ11aと通信モジュール22aとの間の制御信号とセンサデータの送受信ができないため、クラウドコントローラ11a側ではローカルI/Oシステム2aの故障が検知されない。
【0115】
この場合、故障診断モジュール25aは、通信モジュール22aを介さずに、制御クラウドサーバ12に故障情報を送信する。故障診断モジュール25aは、電話回線(不図示)により制御クラウドサーバ12と通信しても良い。
【0116】
この場合、制御クラウドサーバ12は、故障診断モジュール25aから取得した故障情報と、クラウドコントローラ11aから取得した制御システム情報とを比較する。クラウドコントローラ11a側ではローカルI/Oシステム2aの故障が検知されていないため、クラウドコントローラ11aから故障情報は送信されない。このため、制御クラウドサーバ12が故障診断モジュール25aから取得した故障情報とクラウドコントローラ11aから取得した制御システム情報とに差異が生じる。
【0117】
この場合、制御クラウドサーバ12は、クラウドコントローラ11aをダウンさせる制御信号を送信することで、制御システム3aを停止させる。また、制御クラウドサーバ12とローカルI/Oシステム2aとの通信が途絶していることにより、クラウドコントローラ11aがダウンしてもローカルI/Oシステム2a側が停止しない場合には、制御クラウドサーバ12は、故障診断モジュール25aに、ローカルI/Oシステム2aを停止させる制御信号を送信する。この場合、故障診断モジュール25aは、リモートI/O231a,232aを制御してローカルI/Oシステム2aを停止させる。
【0118】
ここで、ローカルI/Oシステム2aで発生するエラーについて、
図12を用いて説明する。
【0119】
図12は、本実施形態に係るリモートI/O23aに入力されたセンサデータの値を時系列に示すグラフの一例である。センサデータは例えばアナログ値とするが、これに限定されない。
【0120】
図12では、説明のため、エラーの基準を単純化して説明する。例えば、クラウドコントローラ11aおよび故障診断モジュール25aは、リモートI/O23aが10msごとに入力するセンサデータが100回連続で上限値(B)を超えた場合にエラー(故障)と判定するものとする。
【0121】
ここで、時刻t0~t1の間、クラウドコントローラ11aと通信モジュール22aとの間の通信が途絶したとする。クラウドコントローラ11aと通信モジュール22aとの間の通信が途絶した場合、途絶中にセンサデータが上限値(B)を超えたとしてもクラウドコントローラ11aへ異常値は伝達されない。
【0122】
例えば、時刻t0~t1の間、1.5秒にわたってセンサデータが上限値(B)を超えたとする。この場合、センサデータは150回連続で上限値(B)を超える。故障診断モジュール25aはローカルI/Oシステム2aに含まれるため、クラウドコントローラ11aと通信モジュール22aの通信が途絶していても、センサデータの収集を継続する。このため、故障診断モジュール25aは、センサデータが上限値(B)を100回連続で超えた時点、つまりセンサデータが上限値(B)を最初に超えてから1秒経過時点でエラーを検知する。この場合、故障診断モジュール25aは、検知したエラーを示す故障情報を、クラウドコントローラ11aに送信する。
【0123】
また、時刻t1の時点でクラウドコントローラ11aと通信モジュール22aとの間の通信が復帰しても、既にセンサデータは上限値(B)以下となっているため、通信の復帰後も、クラウドコントローラ11aはエラーを検知しない。このような場合に、故障診断モジュール25aからクラウドコントローラ11aに送信される故障情報と、クラウドコントローラ11aからクラウドコントローラ11aに送信される制御システム情報とに不一致が生じる。
【0124】
なお、故障情報の不一致が発生する状況は、上述の例に限定されるものではない。例えば、クラウドコントローラ11aと故障診断モジュール25aの両方が制御クラウドサーバ12に故障情報を送信した場合において、クラウドコントローラ11aが送信した故障情報の内容と故障診断モジュール25aが送信した故障情報の内容とに差異がある場合もある。この場合、制御クラウドサーバ12は、クラウドコントローラ11aに対してクラウドコントローラ11aをダウンさせる制御信号を送信する。
【0125】
このように、本実施形態の制御クラウドサーバ12は、複数のクラウドコントローラ11a~11nから、複数の制御システム3a~3nの構成および運転状態に関する制御システム情報121を取得し、取得した御システム情報121に基づいて複数の制御システム3a~3nごとの基準情報123を生成し、取得された複数のクラウドコントローラ11a~11nから収集された制御システム情報121と基準情報123とを比較して変化点がある場合に、発報ルールテーブル122に登録された発報手法により制御システム情報121ごとの発報先へ発報する。このため、本実施形態の制御クラウドサーバ12によれば、クラウド環境1に設けられた制御クラウドサーバ12で複数のクラウドコントローラ11a~11nの制御システム情報を集中管理して発報を行うことにより、制御システム3内で得られた情報を制御システム3への関係者への発報のために有効活用することができる。
【0126】
例えば、従来、制御システムの制御対象のプラントのローカル環境はクローズドであることが一般的であったため、ローカル環境に設けられたコントローラ自体に不具合が生じた場合、制御システムのシステム情報の解析および管理することが困難になる可能性があった。これに対して、本実施形態の制御クラウドサーバ12はクラウド環境1において複数のクラウドコントローラ11a~11nの制御システム情報を集中管理するため、BCP(Business Continuity Planning)対策に寄与することができる。
【0127】
また制御システムの制御対象のプラントのローカル環境がクローズドである場合、制御システムに含まれている機器のファームウェアのメーカー側がリリースしたファームウェアの更新情報を、制御システムのオペレータ、および当該制御システムの開発および保守を担当するシステムインテグレータのエンジニアが把握するために手間がかかる場合があった。これに対して、本実施形態の制御クラウドサーバ12はクラウド環境1においてファームウェアの更新情報も管理するため、オペレータ、およびエンジニアが容易にファームウェアの更新情報を把握することができる。
【0128】
また、本実施形態の制御クラウドサーバ12と同様の機能サーバを個別のプラントのローカル環境に物理的に設置する場合と比較して、初期導入および更新のコストの低減に寄与する。
【0129】
また、本実施形態の制御クラウドサーバ12は、複数の制御システム3a~3nのうちのいずれかで故障が発生した場合に、他の制御システム3の故障の発生を予測し、故障の発生が予測される制御システム3のオペレータまたはエンジニア等へ発報する。このため、本実施形態の制御クラウドサーバ12によれば、複数の制御システム3a~3nの情報を制御クラウドサーバ12で一括管理することにより、ある制御システム3で発生した故障の情報を、他の制御システム3の故障予測の情報提供に活用することができる。
【0130】
また、本実施形態の制御クラウドサーバ12は、故障診断モジュール25から取得した故障情報と、当該故障診断モジュール25と同じ制御システム3に含まれるクラウドコントローラ11から取得した制御システム情報に含まれる故障情報とが不一致の場合であって、当該クラウドコントローラ11がダウンしていない場合、当該クラウドコントローラ11に、制御信号を送信してダウンさせる。このため、本実施形態の制御クラウドサーバ12によれば、不具合が発生している可能性のある状態でクラウドコントローラ11が動作を継続することを低減することができる。また、本実施形態の制御クラウドサーバ12は、故障情報を、故障診断モジュール25とクラウドコントローラ11の両方から取得することにより、故障情報の信頼性を向上させることができる。
【0131】
なお、本実施形態においては、制御システム3に含まれている機器のファームウェアの新しいバージョンがリリースされた場合、制御クラウドサーバ12が発報するものとしたが、ファームウェアの新しいバージョンがリリースされた場合の処理はこれに限定されない。例えば、制御システム3に含まれている機器のファームウェアの新しいバージョンがリリースされた場合、制御クラウドサーバ12がクラウドコントローラ11に発報し、クラウドコントローラ11が当該ファームウェアの新しいバージョンを対象の機器に自動更新しても良い。
【0132】
本実施形態の制御クラウドサーバ12で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでCD-ROM、フレキシブルディスク(FD)、CD-R、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録されて提供される。
【0133】
また、本実施形態の制御クラウドサーバ12で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また、本実施形態の制御クラウドサーバ12で実行されるプログラムをインターネット等のネットワーク経由で提供または配布するように構成しても良い。
また、本実施形態の制御クラウドサーバ12で実行されるプログラムを、ROM等に予め組み込んで提供するように構成してもよい。
【0134】
本実施形態の制御クラウドサーバ12で実行されるプログラムは、上述した各処理を実行可能なジュール構成となっている。各処理の例としては、取得ステップ、発報ステップ、検索ステップ、比較ステップ、および出力ステップが挙げられる。実際のハードウェアとしてはCPU(プロセッサ)が上記記憶媒体から本実施形態の制御クラウドサーバ12で実行されるプログラムを読み出して実行することにより上記各部が主記憶装置上にロードされ、各処理を実行可能なジュールが主記憶装置上に生成されるようになっている。
【0135】
本発明の実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0136】
1 クラウド環境
2,2a~2n ローカルI/Oシステム
3,3a~3n 制御システム
5 インターネット
10 制御クラウドサービス
11,11a~11n クラウドコントローラ
22,22a~22n 通信モジュール
25,25a~25n 故障診断モジュール
41 メールサーバ
120 記憶部
121 制御システム情報
122 発報ルールテーブル
123 基準情報
211 ディスプレイ
411 メール
421 ディスプレイ
23,231a,232a,231n,232n リモートI/O
M1,M2 メッセージ
POU 当該
S 管理システム