(57)【要約】【課題】動作履歴を容易に検証することができる制御システムを提供する。【解決手段】制御システム１は、少なくとも一つの機器を制御し、機器の動作状態に関する情報を含む表示用データを生成する操業用コントローラ１００Ａと、操業用コントローラ１００Ａが生成した表示用データに基づくインタフェース画像を表示する操業用インタフェース装置２００Ａと、表示用データを取得して蓄積するサーバステーション３００と、操業用コントローラ１００Ａと同様に少なくとも一つの機器を制御可能なコントローラ１００であって、サーバステーション３００が蓄積する表示用データを順次取得する再生用コントローラ１００Ｂと、操業用インタフェース装置２００Ａと同様にインタフェース画像を表示可能な装置であって、再生用コントローラ１００Ｂが取得する表示用データに基づくインタフェース画像を表示する再生用インタフェース装置２００Ｂと、を備える。【選択図】図１
2020009253.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも一つの機器を制御し、前記機器の動作状態に関する情報を含む表示用データを生成する操業用コントローラと、
前記操業用コントローラが生成した前記表示用データに基づくインタフェース画像を表示する操業用インタフェース装置と、
前記操業用コントローラから前記表示用データを取得して蓄積するサーバステーションと、
前記操業用コントローラと同様に前記少なくとも一つの機器を制御可能なコントローラであって、前記サーバステーションが蓄積する前記表示用データを順次取得する再生用コントローラと、
前記操業用インタフェース装置と同様に前記インタフェース画像を表示可能な装置であって、前記再生用コントローラが前記サーバステーションから取得する前記表示用データに基づくインタフェース画像を表示する再生用インタフェース装置と、を備える制御システム。
【請求項２】
前記操業用インタフェース装置及び前記再生用インタフェース装置は、インタフェース通信経路を介して前記操業用コントローラ及び前記再生用コントローラにそれぞれ接続され、
前記サーバステーションは、前記インタフェース通信経路とは別の記録再生通信経路を介して前記操業用コントローラ及び前記再生用コントローラに接続されている、請求項１記載の制御システム。
【請求項３】
前記操業用コントローラ及び前記再生用コントローラのそれぞれは、
少なくとも一つの機器を制御する制御処理部と、
前記制御処理部による少なくとも一つの機器の制御において得られるデータに基づいて前記表示用データを生成するデータ生成部と、
前記データ生成部が生成した前記表示用データを含む記録データを前記サーバステーションに周期的に送信する記録データ送信部と、
前記サーバステーションから前記表示用データを順次受信する再生データ受信部と、
前記表示用データを前記操業用インタフェース装置又は前記再生用インタフェース装置に送信する表示データ送信部と、
前記表示データ送信部が送信する前記表示用データを前記データ生成部から取得する操業モードと、前記再生データ受信部から取得する再生モードとを切り替える切替部と、
を有する請求項１又は２記載の制御システム。
【請求項４】
前記操業用コントローラ及び前記再生用コントローラのそれぞれは、
前記機器の状態の変化が予め設定された検出条件を満たした場合に、当該変化の情報を状態履歴情報として検出する状態変化検出部を更に有し、
前記記録データ送信部は、前記状態履歴情報を更に含む前記記録データを前記サーバステーションに周期的に送信する、請求項３記載の制御システム。
【請求項５】
前記操業用インタフェース装置及び前記再生用インタフェース装置のそれぞれは、
インタフェース画像を表示する表示部と、
前記制御処理部への操作入力を取得する操作入力取得部とを有し、
前記操業用コントローラ及び前記再生用コントローラのそれぞれは、
前記操作入力の内容の変化が予め設定された検出条件を満たした場合に、当該変化の情報を操作履歴情報として検出する操作変化検出部を更に有し、
前記記録データ送信部は、前記操作履歴情報を更に含む前記記録データを前記サーバステーションに周期的に送信する、請求項３又は４記載の制御システム。
【請求項６】
前記操業用コントローラ及び前記再生用コントローラのそれぞれは、物理的な記憶領域において予め定められたアドレス範囲に割り付けられたインタフェース記憶部を更に有し、
前記データ生成部は生成した前記表示用データを前記インタフェース記憶部に格納し、
前記記録データ送信部は前記サーバステーションに送信する前記記録データに含める前記表示用データを前記インタフェース記憶部から取得し、
前記再生データ受信部は受信した前記表示用データを前記インタフェース記憶部に格納し、
前記表示データ送信部は、前記操業用インタフェース装置又は前記再生用インタフェース装置に送信する前記表示用データを前記インタフェース記憶部から取得する、請求項３〜５のいずれか一項記載の制御システム。
【請求項７】
少なくとも一つの機器を制御する制御処理部と、
前記制御処理部による少なくとも一つの機器の制御において得られるデータに基づいて、インタフェース装置が表示するインタフェース画像の表示用データを生成するデータ生成部と、
前記データ生成部が生成した前記表示用データを含む記録データをデータ蓄積用のサーバステーションに周期的に送信する記録データ送信部と、
前記サーバステーションが蓄積した前記表示用データを順次受信する再生データ受信部と、
前記データ生成部により前記表示用データを生成する操業モードと、前記再生データ受信部により前記サーバステーションから前記表示用データを取得する再生モードとを切り替える切替部と、
前記表示用データを前記インタフェース装置に送信する表示データ送信部と、を備える制御装置。
【請求項８】
インタフェース画像を表示するインタフェース装置が取得する操作入力に基づいて少なくとも一つの機器を制御することと、
前記少なくとも一つの機器の制御において得られるデータに基づいて前記インタフェース画像の表示用データを生成することと、
前記表示用データを含む記録データをデータ蓄積用のサーバステーションに周期的に送信することと、
前記サーバステーションが蓄積した前記表示用データを順次受信することと、
前記少なくとも一つの機器の制御において得られるデータに基づいて前記表示用データを生成する操業モードと、前記サーバステーションから前記表示用データを取得する再生モードとを切り替えることと、
前記表示用データを前記インタフェース装置に送信することと、を制御装置に実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、制御システム、制御装置及びプログラムに関する。
【背景技術】
【０００２】
特許文献１には、プラント制御手段と、ネットワーク伝送路を介してプラント制御手段に接続されたリアルタイム監視装置及び履歴監視装置とを備えるプラント監視システムが開示されている。リアルタイム監視装置は、リアルタイムのプロセス監視に用いられる。履歴監視装置は、プロセス履歴を記憶する大容量メモリ装置を有し、過去のプロセス履歴の監視に用いられる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平０６−２０３２８３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本開示は、動作履歴を容易に検証することができる制御システムを提供する。
【課題を解決するための手段】
【０００５】
本開示の一側面に係る制御システムは、少なくとも一つの機器を制御し、機器の動作状態に関する情報を含む表示用データを生成する操業用コントローラと、操業用コントローラが生成した表示用データに基づくインタフェース画像を表示する操業用インタフェース装置と、操業用コントローラから表示用データを取得して蓄積するサーバステーションと、操業用コントローラと同様に少なくとも一つの機器を制御可能なコントローラであって、サーバステーションが蓄積する表示用データを順次取得する再生用コントローラと、操業用インタフェース装置と同様にインタフェース画像を表示可能な装置であって、再生用コントローラがサーバステーションから取得する表示用データに基づくインタフェース画像を表示する再生用インタフェース装置と、を備える。
【０００６】
本開示の他の側面に係る制御装置は、少なくとも一つの機器を制御する制御処理部と、制御処理部による少なくとも一つの機器の制御において得られるデータに基づいて、インタフェース装置が表示するインタフェース画像の表示用データを生成するデータ生成部と、データ生成部が生成した表示用データを含む記録データをデータ蓄積用のサーバステーションに周期的に送信する記録データ送信部と、サーバステーションが蓄積した表示用データを順次受信する再生データ受信部と、データ生成部により表示用データを生成する操業モードと、再生データ受信部によりサーバステーションから表示用データを取得する再生モードとを切り替える切替部と、表示用データをインタフェース装置に送信する表示データ送信部と、を備える。
【０００７】
本開示の更に他の側面に係るプログラムは、インタフェース画像を表示するインタフェース装置が取得する操作入力に基づいて少なくとも一つの機器を制御することと、少なくとも一つの機器の制御において得られるデータに基づいてインタフェース画像の表示用データを生成することと、表示用データを含む記録データをデータ蓄積用のサーバステーションに周期的に送信することと、サーバステーションが蓄積した表示用データを順次受信することと、少なくとも一つの機器の制御において得られるデータに基づいて表示用データを生成する操業モードと、サーバステーションから表示用データを取得する再生モードとを切り替えることと、表示用データをインタフェース装置に送信することと、を制御装置に実行させる。
【発明の効果】
【０００８】
本開示によれば、動作履歴を容易に検証することができる制御システムを提供することができる。
【図面の簡単な説明】
【０００９】
【図１】制御システムのハードウェア構成を例示するブロック図である。
【図２】操業用コントローラ、操業用インタフェース装置及びサーバステーションの機能上の構成を例示するブロック図である。
【図３】再生用コントローラ、再生用インタフェース装置及びサーバステーションの機能上の構成を例示するブロック図である。
【図４】動作モードの設定手順を例示するフローチャートである。
【図５】表示用データの記録手順を例示するフローチャートである。
【図６】表示用データの表示手順を例示するフローチャートである。
【図７】記録データの蓄積手順を例示するフローチャートである。
【図８】表示用データの再生手順を例示するフローチャートである。
【図９】表示用データの再生手順を例示するフローチャートである。
【発明を実施するための形態】
【００１０】
以下、実施形態について、図面を参照しつつ詳細に説明する。説明において、同一要素又は同一機能を有する要素には同一の符号を付し、重複する説明を省略する。
【００１１】
〔制御システム〕
本実施形態に係る制御システム１は、設備を構成する少なくとも一つの機器を制御するためのシステムである。設備の具体例としては、鉄鋼プラント設備（例えば、高炉設備、連続鋳造設備等）、水処理設備（例えば、上水設備、下水設備等）等が挙げられるが、必ずしもこれらに限られない。設備は、制御対象となる機器を含む限りいかなる設備であってもよい。
【００１２】
図１に示すように、制御システム１は、操業用コントローラ１００Ａと、操業用インタフェース装置２００Ａと、サーバステーション３００と、再生用コントローラ１００Ｂと、再生用インタフェース装置２００Ｂとを備える。
【００１３】
操業用コントローラ１００Ａ（制御装置）は、少なくとも一つの機器を制御し、機器の動作状態に関する情報を含む表示用データを生成する。動作状態に関する情報の具体例としては、位置、速度、温度等のように状態を大きさで示す情報、及び正常であるか異常であるか等のように状態を二値的に示す情報等が挙げられる。表示用データは、操業用コントローラ１００Ａに対する操作入力（後述）の情報を更に含んでいてもよい。操業用インタフェース装置２００Ａは、操業用コントローラ１００Ａが生成した表示用データに基づくインタフェース画像を表示する。サーバステーション３００は、操業用コントローラ１００Ａから表示用データを周期的に取得して蓄積する。再生用コントローラ１００Ｂ（制御装置）は、操業用コントローラ１００Ａと同様に少なくとも一つの機器を制御可能なコントローラであって、サーバステーション３００が蓄積する表示用データを順次取得する。表示用データを順次取得することは、サーバステーション３００に記録された表示用データを記録時間に従った順序で取得すること、及び記録時間を遡る順序で取得することを含む。また、いずれの順序においても、一データおき又は複数データおきに表示用データを間引いて取得することも含む。再生用インタフェース装置２００Ｂは、操業用インタフェース装置２００Ａと同様にインタフェース画像を表示可能な装置であって、再生用コントローラ１００Ｂがサーバステーション３００から取得する表示用データに基づくインタフェース画像を表示する。
【００１４】
操業用コントローラ１００Ａは、例えば制御対象の機器との間で信号の入出力を行うプログラマブルロジックコントローラである。信号の具体例としては、機器に出力する制御指令信号（例えばオン・オフ指令信号、速度指令信号等）、及び機器から入力されるフィードバック信号（例えば動作完了通知信号、異常報知信号等）が挙げられる。
【００１５】
例えば操業用コントローラ１００Ａは、回路１１０を有する。回路１１０は、プロセッサ１１１と、メモリ１１２と、ストレージ１１３と、インタフェース通信ポート１１４と、制御用入出力ポート１１５と、記録再生通信ポート１１６とを有する。ストレージ１１３は、コンピュータによって読み取り可能な不揮発型の記憶媒体（例えばハードディスク又はフラッシュメモリ）である。ストレージ１１３は、少なくとも一つの機器を制御し、機器の動作状態に関する情報を含む表示用データを生成することを装置に実行させるプログラムを記憶している。メモリ１１２は、ストレージ１１３からロードしたプログラム及びプロセッサ１１１による演算結果等を一時的に記憶する。プロセッサ１１１は、メモリ１１２と協働して上記プログラムを実行することで、少なくとも一つの機器を制御し、機器の動作状態に関する情報を含む表示用データを生成する。プロセッサ１１１は、複数の回路素子により構成されていてもよい。
【００１６】
インタフェース通信ポート１１４は、インタフェース通信経路を介して操業用インタフェース装置２００Ａに接続されており、プロセッサ１１１からの指令に応じて操業用インタフェース装置２００Ａとの間でネットワーク通信を行う。インタフェース通信経路は、例えば操作監視用のＬＡＮ（ローカルエリアネットワーク）である。なお、ここでの接続は、情報通信が可能となっていることを意味しており、必ずしも有線による物理的な接続を意味するわけではない。以下においても同様である。すなわちインタフェース通信経路は無線の通信経路であってもよい。
【００１７】
制御用入出力ポート１１５は、例えば高速フィールドバスを介して少なくとも一つの機器（例えば複数の制御対象機器９０（機器）や操作器具（不図示））と接続されており、プロセッサ１１１からの指令に応じて複数の制御対象機器９０や操作器具との間で信号の入出力を行う。
【００１８】
記録再生通信ポート１１６は、記録再生通信経路を介してサーバステーション３００と接続されており、プロセッサ１１１からの指令に応じてサーバステーション３００との間でネットワーク通信を行う。記録再生通信経路は、インタフェース通信経路とは別種の通信経路であり、例えば汎用イーサネット（登録商標）により構成されたＬＡＮである。なお、二つの通信経路が別種であるとは、通信用のリソースが互いに独立しており、一方の通信負荷が他方の通信量を制限しない関係にあることを意味する。一方の通信負荷が他方の通信量を制限しない関係の具体例としては、通信用の物理的なリソース（例えばケーブル）が互いに独立している関係が挙げられる。
【００１９】
操業用インタフェース装置２００Ａは、例えば操業用コントローラ１００Ａとの間で情報の入出力を行うためのＨＭＩ（ヒューマンマシンインタフェース）装置であり、インタフェース通信経路を介して操業用コントローラ１００Ａと接続されている。例えば操業用インタフェース装置２００Ａは、本体２０１と、表示デバイス２０２と、入力デバイス２０３とを有する。表示デバイス２０２は、ユーザに対する情報を表示するためのデバイスである。表示デバイス２０２の具体例としては、液晶モニタ、有機ＥＬモニタ等が挙げられる。入力デバイス２０３は、ユーザによる入力を取得するためのデバイスである。入力デバイス２０３の具体例としては、キーボード、タッチパッド、マウス等が挙げられる。なお、表示デバイス２０２及び入力デバイス２０３は、所謂タッチパネルとして一体化されていてもよい。
【００２０】
本体２０１は、回路２１０を有する。回路２１０は、プロセッサ２１１と、メモリ２１２と、ストレージ２１３と、入出力ポート２１４と、通信ポート２１５とを有する。ストレージ２１３は、コンピュータによって読み取り可能な不揮発型の記憶媒体（例えばハードディスク又はフラッシュメモリ）である。ストレージ２１３は、操業用コントローラ１００Ａが生成した表示用データに基づくインタフェース画像を表示することを装置に実行させるプログラムを記憶している。メモリ２１２は、ストレージ２１３からロードしたプログラム及びプロセッサ２１１による演算結果等を一時的に記憶する。プロセッサ２１１は、メモリ２１２と協働して上記プログラムを実行することで、操業用コントローラ１００Ａが生成した表示用データに基づくインタフェース画像を表示する。プロセッサ２１１は、複数の回路素子により構成されていてもよい。
【００２１】
入出力ポート２１４は、プロセッサ２１１からの指令に応じて表示デバイス２０２及び入力デバイス２０３との間で情報の入出力を行う。通信ポート２１５は、インタフェース通信経路を介して上記インタフェース通信ポート１１４に接続されており、プロセッサ２１１からの指令に応じて操業用コントローラ１００Ａとの間でネットワーク通信を行う。
【００２２】
なお、制御システム１は複数の操業用インタフェース装置２００Ａを備えていてもよい。この場合、操業用コントローラ１００Ａのインタフェース通信ポート１１４は、複数の操業用インタフェース装置２００Ａの通信ポート２１５との間でネットワーク通信を行う。
【００２３】
再生用コントローラ１００Ｂは、操業用コントローラ１００Ａと同様に少なくとも一つの機器を制御可能となるように構成されている。例えば再生用コントローラ１００Ｂは、操業用コントローラ１００Ａの故障時等に操業用コントローラ１００Ａの代わりとなり得るバックアップ用のコントローラであり、操業用コントローラ１００Ａと同様の回路１１０を有する。再生用コントローラ１００Ｂのストレージ１１３は、サーバステーション３００が蓄積する表示用データを順次取得することを装置に実行させるプログラムを記憶している。再生用コントローラ１００Ｂのプロセッサ１１１は、メモリ１１２と協働して上記プログラムを実行することで、サーバステーション３００が蓄積する表示用データを順次取得する。
【００２４】
再生用コントローラ１００Ｂのインタフェース通信ポート１１４は、インタフェース通信経路を介して再生用インタフェース装置２００Ｂに接続されており、プロセッサ１１１からの指令に応じて再生用インタフェース装置２００Ｂとの間でネットワーク通信を行う。再生用コントローラ１００Ｂの制御用入出力ポート１１５は、再生用コントローラ１００Ｂが操業用コントローラ１００Ａの代わりに用いられる際に複数の制御対象機器９０や操作器具（不図示）に接続され、プロセッサ１１１からの指令に応じて複数の制御対象機器９０や操作器具との間で信号の入出力を行う。再生用コントローラ１００Ｂの記録再生通信ポート１１６は、記録再生通信経路を介してサーバステーション３００と接続されており、プロセッサ１１１からの要求に応じてサーバステーション３００との間でネットワーク通信を行う。
【００２５】
ここで、再生用コントローラ１００Ｂのストレージ１１３が記憶するプログラムと、操業用コントローラ１００Ａのストレージ１１３が記憶するプログラムとは同じであってもよい。例えば操業用コントローラ１００Ａ及び再生用コントローラ１００Ｂのストレージ１１３は、いずれも、少なくとも一つの機器を制御することと、少なくとも一つの機器の制御において得られるデータに基づいてインタフェース画像の表示用データを生成することと、表示用データを含む記録データをサーバステーション３００に周期的に送信することと、サーバステーション３００が蓄積した表示用データを順次受信することと、少なくとも一つの機器の制御において得られるデータに基づいて表示用データを生成する操業モードと、サーバステーション３００から表示用データを取得する再生モードとを切り替えることと、表示用データをインタフェース装置（例えば操業用インタフェース装置２００Ａ又は再生用インタフェース装置２００Ｂ）に送信することと、を装置に実行させるプログラムを記憶している。
【００２６】
このプログラムによれば、再生用コントローラ１００Ｂの動作モードを再生モードから操業モードに切り替えることによって、再生用コントローラ１００Ｂを操業用コントローラ１００Ａとして動作させることが可能となる。同様に、操業用コントローラ１００Ａの動作モードを操業モードから再生モードに切り替えることによって、操業用コントローラ１００Ａを再生用コントローラ１００Ｂとして動作させることが可能となる。すなわち、簡単なモード切替によって、操業用コントローラ１００Ａ及び再生用コントローラ１００Ｂの相互の転用が可能となる。
【００２７】
再生用インタフェース装置２００Ｂは、操業用インタフェース装置２００Ａと同様にインタフェース画像を表示可能な装置である。例えば再生用インタフェース装置２００Ｂは、操業用インタフェース装置２００Ａの故障時等に操業用インタフェース装置２００Ａの代わりとなり得るバックアップ用のＨＭＩ装置であり、操業用インタフェース装置２００Ａと同様に本体２０１と、表示デバイス２０２と、入力デバイス２０３とを有する。
【００２８】
再生用インタフェース装置２００Ｂのストレージ２１３は、再生用コントローラ１００Ｂがサーバステーション３００から取得する表示用データに基づくインタフェース画像を表示することを装置に実行させるプログラムを記憶している。なお、操業用インタフェース装置２００Ａと再生用インタフェース装置２００Ｂとで、操業用コントローラ１００Ａ及び再生用コントローラ１００Ｂのいずれから表示用データを取得するかは異なっているものの、表示用データに基づくインタフェース画像を表示する点では共通である。このため、再生用インタフェース装置２００Ｂのストレージ２１３が記憶するプログラムと、操業用インタフェース装置２００Ａのストレージ２１３が記憶するプログラムとは同じであってもよい。
【００２９】
再生用インタフェース装置２００Ｂのプロセッサ２１１は、メモリ２１２と協働して上記プログラムを実行することで、再生用コントローラ１００Ｂがサーバステーション３００から取得する表示用データに基づくインタフェース画像を表示する。再生用インタフェース装置２００Ｂの通信ポート２１５は、インタフェース通信経路を介して再生用コントローラ１００Ｂのインタフェース通信ポート１１４に接続されており、プロセッサ２１１からの指令に応じて再生用コントローラ１００Ｂとの間でネットワーク通信を行う。
【００３０】
なお、制御システム１は複数の再生用インタフェース装置２００Ｂを備えていてもよい。この場合、再生用コントローラ１００Ｂのインタフェース通信ポート１１４は、複数の再生用インタフェース装置２００Ｂの通信ポート２１５との間でネットワーク通信を行う。再生用インタフェース装置２００Ｂの台数は操業用インタフェース装置２００Ａの台数より少なくてもよい。
【００３１】
サーバステーション３００は、例えばパーソナルコンピュータ等の汎用コンピュータであり、記録再生通信経路を介して操業用コントローラ１００Ａ及び再生用コントローラ１００Ｂに接続されている。例えばサーバステーション３００は、本体３０１と、表示デバイス３０２と、入力デバイス３０３とを有する。表示デバイス３０２は、ユーザに対する情報を表示するためのデバイスである。表示デバイス３０２の具体例としては、液晶モニタ、有機ＥＬモニタ等が挙げられる。入力デバイス３０３は、ユーザによる入力を取得するためのデバイスである。入力デバイス３０３の具体例としては、キーボード、タッチパッド、マウス等が挙げられる。なお、表示デバイス３０２及び入力デバイス３０３は、所謂タッチパネルとして一体化されていてもよい。
【００３２】
本体３０１は、回路３１０を有する。回路３１０は、プロセッサ３１１と、メモリ３１２と、ストレージ３１３と、入出力ポート３１４と、通信ポート３１５と、通信ポート３１６とを有する。ストレージ３１３は、コンピュータによって読み取り可能な不揮発型の記憶媒体（例えばハードディスク又はフラッシュメモリ）である。ストレージ３１３は、操業用コントローラ１００Ａから表示用データを取得して蓄積することを装置に実行させるプログラムを記憶する記憶領域と、表示用データを蓄積するための記憶領域とを含む。
【００３３】
メモリ３１２は、ストレージ３１３からロードしたプログラム及びプロセッサ３１１による演算結果等を一時的に記憶する。プロセッサ３１１は、メモリ３１２と協働して上記プログラムを実行することで、操業用コントローラ１００Ａから表示用データを取得してストレージ３１３に蓄積する。プロセッサ３１１は、複数の回路素子により構成されていてもよい。入出力ポート３１４は、プロセッサ３１１からの指令に応じて表示デバイス３０２及び入力デバイス３０３との間で情報の入出力を行う。通信ポート３１５は、記録再生通信経路を介して操業用コントローラ１００Ａの上記記録再生通信ポート１１６に接続されており、プロセッサ３１１からの指令に応じて操業用コントローラ１００Ａとの間でネットワーク通信を行う。通信ポート３１６は、記録再生通信経路を介して再生用コントローラ１００Ｂの上記記録再生通信ポート１１６に接続されており、プロセッサ３１１からの指令に応じて再生用コントローラ１００Ｂとの間でネットワーク通信を行う。
【００３４】
以下、操業用コントローラ１００Ａ、再生用コントローラ１００Ｂ、操業用インタフェース装置２００Ａ、再生用インタフェース装置２００Ｂ、及びサーバステーション３００の構成をより詳細に例示する。以下の説明においては、操業用コントローラ１００Ａ及び再生用コントローラ１００Ｂに共通する説明においてはこれらを区別せずに「コントローラ１００」という。同様に、操業用インタフェース装置２００Ａ及び再生用インタフェース装置２００Ｂに共通する説明においてもこれらを区別せずに「インタフェース装置２００」という。
【００３５】
図２は、操業用コントローラ１００Ａ、操業用インタフェース装置２００Ａ及びサーバステーション３００の機能上の構成（以下、「機能モジュール」という。）を例示するブロック図である。図３は、再生用コントローラ１００Ｂ、再生用インタフェース装置２００Ｂ及びサーバステーション３００の機能モジュールを例示するブロック図である。
【００３６】
図２及び図３に示すように、コントローラ１００は、機能モジュールとして、ユーザ入力取得部１２１と、制御処理部１２２と、制御用記憶部１２３と、データ生成部１２４と、操作変化検出部１２５と、状態変化検出部１２６と、再生データ受信部１２７と、切替部１２８と、インタフェース記憶部１２９と、記録データ送信部１３１と、表示データ送信部１３２とを有する。
【００３７】
ユーザ入力取得部１２１は、ユーザの操作入力（例えば上記表示デバイス２０２への操作入力）をインタフェース装置２００から受信する。ユーザ入力取得部１２１は、インタフェース装置２００を介さないコントローラ１００への制御用入出力ポート１１５からの操作器具（不図示）によるユーザの入力を更に取得してもよい。制御処理部１２２は、少なくとも一つの機器（例えば上記複数の制御対象機器９０）を制御する。例えば制御処理部１２２は、指定位置への移動指令、指定速度での移動指令等の様々な制御指令を制御対象機器９０に出力し、制御指令に応じた動作状態に関する情報を制御対象機器９０から取得する。制御処理部１２２は、ユーザ入力取得部１２１が取得するユーザの入力に従って動作するように制御対象機器９０を制御してもよい。以下、制御処理部１２２の制御内容を指定するためのユーザの入力を「制御処理部１２２への操作入力」という。
【００３８】
制御用記憶部１２３は、制御処理部１２２に実行させるための制御プログラムを記憶する。制御プログラムは、制御対象機器９０への制御指令の内容と、制御指令の出力タイミングとを含む。また、制御用記憶部１２３は、制御対象機器９０の制御において得られるデータ（以下、「制御データ」という。）を制御処理部１２２から取得して一時的に記憶する。制御データは、制御対象機器９０の動作状態に関する情報と、制御処理部１２２への操作入力に関する情報とを含む。制御対象機器９０の動作状態に関する情報は、例えば動作位置・速度等のように大きさを含む情報と、正常であるか異常であるかを示す二値的な情報（例えば異常を報知するアラーム信号のオン・オフ）との両方を含み得る。
【００３９】
データ生成部１２４は、上記制御データに基づいて上記表示用データを生成する。より具体的に、データ生成部１２４は、制御用記憶部１２３から取得した制御データを予め定められたフォーマットに従って配列して表示用データを生成する。データ生成部１２４は、生成した表示用データをインタフェース記憶部１２９に格納する。この際に、データ生成部１２４は、新たに記憶する表示用データによって古い表示用データ（インタフェース記憶部１２９が記憶していた表示用データ）を上書きしてもよい。
【００４０】
再生データ受信部１２７は、サーバステーション３００から表示用データを順次受信する。再生データ受信部１２７は、受信した表示用データをインタフェース記憶部１２９に格納する。この際に、再生データ受信部１２７は、新たに記憶する表示用データによって古い表示用データ（インタフェース記憶部１２９が記憶していた表示用データ）を上書きしてもよい（図３参照）。
【００４１】
インタフェース記憶部１２９は、物理的な記憶領域（例えばメモリ１１２の記憶領域）において予め定められたアドレス範囲に割り付けられている。当該アドレス範囲は、インタフェース記憶部１２９の専用とされる。すなわち、上述したインタフェース記憶部１２９の他の記憶部（例えば上述の制御用記憶部１２３及び後述のイベント記憶部１３３）は、インタフェース記憶部１２９に割り付けられていないアドレス範囲に設けられる。
【００４２】
表示データ送信部１３２は、インタフェース装置２００からの要求に応じた表示用データをインタフェース記憶部１２９から取得してインタフェース装置２００に送信する。
【００４３】
切替部１２８は、表示データ送信部１３２が送信する表示用データをデータ生成部１２４から取得する操業モードと、再生データ受信部１２７から取得する再生モードとを切り替える。例えば切替部１２８は、インタフェース記憶部１２９に格納する表示用データをデータ生成部１２４から取得する操業モード（図２参照）と、再生データ受信部１２７から取得する再生モード（図３参照）とを切り替える。切替部１２８がコントローラ１００の動作モードを操業モードにすると、当該コントローラ１００を操業用コントローラ１００Ａとして用いることが可能となる。操業用コントローラ１００Ａにおいては、表示用データがデータ生成部１２４から切替部１２８を介してインタフェース記憶部１２９に入力される（図２参照）。
【００４４】
切替部１２８がコントローラ１００の動作モードを再生モードにすると、当該コントローラ１００を再生用コントローラ１００Ｂとして用いることが可能となる。再生用コントローラ１００Ｂにおいては、表示用データが再生データ受信部１２７から切替部１２８を介してインタフェース記憶部１２９に入力される（図３参照）。
【００４５】
操作変化検出部１２５は、上記制御処理部１２２への操作入力の内容の変化が予め設定された検出条件を満たした場合に、当該変化の情報を操作履歴情報として検出する。例えば操作変化検出部１２５は、制御用記憶部１２３が記憶する制御データを参照して上記操作履歴情報を検出し、検出した操作履歴情報をイベント記憶部１３３に格納する。操作履歴情報は、例えば上記検出条件を満たす変化が生じた時刻と、当該変化の内容とを含む。上記検出条件の具体例としては、「操作入力の変化量がゼロを超えること」が挙げられる。このような条件が設定される場合、操作入力の内容に生じた変化の情報は全て操作履歴情報として検出される。
【００４６】
状態変化検出部１２６は、制御対象機器９０の状態の変化が予め設定された検出条件を満たした場合に、当該変化の情報を状態履歴情報として検出し、イベント記憶部１３３に格納する。例えば状態変化検出部１２６は、制御用記憶部１２３が記憶する制御データを参照して上記状態履歴情報を検出し、検出した状態履歴情報をイベント記憶部１３３に格納する。状態履歴情報は、例えば上記検出条件を満たす変化が生じた時刻と、当該変化の内容とを含む。上記検出条件の具体例としては、制御対象機器９０の異常発生を報知するアラーム信号がオフ状態からオン状態に変化すること、制御対象機器９０の動作状態を示す数値が正常値から異常値に変化すること、等が挙げられる。
【００４７】
記録データ送信部１３１は、データ生成部１２４が生成した表示用データを含む記録データをサーバステーション３００に周期的に送信する。記録データ送信部１３１は、上記操作履歴情報を更に含む記録データをサーバステーション３００に周期的に送信してもよく、上記状態履歴情報を更に含む記録データをサーバステーション３００に周期的に送信してもよい。記録データ送信部１３１は、記録データに含める表示用データをインタフェース記憶部１２９から取得し、記録データに含める操作履歴情報及び状態履歴情報をイベント記憶部１３３から取得する。なお、記録データ送信部１３１が記録データを送信する周期は、表示データ送信部１３２が表示用データを送信する周期に比べ長くてもよい。
【００４８】
コントローラ１００の各機能モジュールは、例えば上記プロセッサ１１１がメモリ１１２と協働してストレージ１１３のプログラムを実行することで構成される。コントローラ１００は、必ずしもプログラムにより各構成が構成されるものに限られない。コントローラ１００の少なくとも一部の機能モジュール、例えば通信を制御する機能モジュールが、専用の論理回路又はこれを集積したＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）により構成されていてもよい。
【００４９】
インタフェース装置２００は、機能モジュールとして、表示部２２２と、ユーザ入力取得部２２１とを有する。表示部２２２は、予め表示対象として設定されたインタフェース画像を表示するための表示用データを表示データ送信部１３２から周期的に受信し、受信した表示用データに基づいて上記インタフェース画像を表示する。インタフェース画像は、例えば上記表示用データに基づいて制御対象機器９０の稼働状態を示す画像と、ユーザによる入力用のツール画像とを含む。ツール画像の具体例としては、テキスト入力用のテキストボックス、ボタン等が挙げられる。
【００５０】
ユーザ入力取得部２２１（操作入力取得部）は、ユーザによる入力を取得する。ユーザによる入力は、少なくとも制御処理部１２２への操作入力を含む。
【００５１】
インタフェース装置２００の各機能モジュールは、例えば上記プロセッサ２１１がメモリ２１２と協働してストレージ２１３のプログラムを実行することで構成される。インタフェース装置２００は、必ずしもプログラムにより各構成が構成されるものに限られない。インタフェース装置２００の少なくとも一部の機能モジュールが、専用の論理回路又はこれを集積したＡＳＩＣにより構成されていてもよい。
【００５２】
サーバステーション３００は、機能モジュールとして、記録データ受信部３２１と、記録データ蓄積部３２２と、再生用データ送信部３２３と、ログ表示部３２５と、データ抽出部３２６と、動作モード設定部３２４とを含む。
【００５３】
記録データ受信部３２１は、記録データ送信部１３１により送信された上記記録データを受信し、記録データ蓄積部３２２に格納する。記録データ蓄積部３２２は、上記記録データを順次蓄積する。例えば記録データ蓄積部３２２は、記録データ受信部３２１による記録データの受信時刻等の時刻情報と、当該記録データの内容とを対応付けて順次蓄積する。記録データ蓄積部３２２は、蓄積したデータを、所定時間ごとに一つのファイル（以下、「データファイル」という。）にまとめて保存してもよい。また、記録データ蓄積部３２２は、記憶領域の空きの減少に応じて、古いファイルを自動削除してもよい。
【００５４】
再生用データ送信部３２３は、記録データ蓄積部３２２に蓄積された表示用データを順次再生データ受信部１２７に送信する。ログ表示部３２５は、動作モード設定部３２４への入力に従って、状態履歴情報及び操作履歴情報の少なくとも一方を表示する。例えばログ表示部３２５は、状態履歴情報及び操作履歴情報の少なくとも一方を時系列の表またはグラフで表示する。
【００５５】
データ抽出部３２６は、再生用データ送信部３２３が再生データ受信部１２７に送信する表示用データ、ログ表示部３２５が表示する状態履歴情報、及びログ表示部３２５が表示する操作履歴情報を記録データ蓄積部３２２から抽出する。例えばデータ抽出部３２６は、ユーザの入力（例えば入力デバイス３０３への入力）に従って、データファイルを記録データ蓄積部３２２から読み出すことと、当該データファイル内の状態履歴情報及び操作履歴情報を抽出してログ表示部３２５に出力することと、当該データファイル内の表示用データを順次抽出して再生用データ送信部３２３に出力することとを実行する。
【００５６】
動作モード設定部３２４は、コントローラ１００の動作モード（上記操業モード又は再生モード）を指定するユーザの入力を取得し、コントローラ１００の切替部１２８に出力する。切替部１２８は、動作モード設定部３２４から取得する動作モードの指定に応じて上記操業モード及び上記取得モードを切り替える。
【００５７】
サーバステーション３００の各機能モジュールは、例えば上記プロセッサ３１１がメモリ３１２と協働してストレージ３１３のプログラムを実行することで構成される。サーバステーション３００は、必ずしもプログラムにより各構成が構成されるものに限られない。サーバステーション３００の少なくとも一部の機能モジュールが、専用の論理回路又はこれを集積したＡＳＩＣにより構成されていてもよい。
【００５８】
〔制御データの記録・再生手順〕
続いて、制御データの記録・再生方法の一例として、制御システム１が実行する記録・再生手順を例示する。以下、この手順を事前設定手順、表示用データの記録手順、及び表示用データの再生手順に分けて詳細に説明する。
【００５９】
（事前設定手順）
図４は、コントローラ１００の動作モードの指定をサーバステーション３００が取得する手順を示すフローチャートである。図４に示すように、サーバステーション３００は、ステップＳ０１，Ｓ０２，Ｓ０３，Ｓ０４を実行する。ステップＳ０１では、動作モード設定部３２４が、動作モードの指定機能の呼び出し（例えば動作モード指定用のアプリケーションの起動）を待機する。ステップＳ０２では、動作モード設定部３２４が動作モードの指定用の画面を表示（例えば表示デバイス３０２に表示）する。ステップＳ０３では、動作モード設定部３２４が、上記動作モードの指定用の画面に対するユーザの入力を待機する。ステップＳ０４では、動作モードの指定用の画面に対する入力を動作モード設定部３２４が取得し、コントローラ１００の切替部１２８に出力する。切替部１２８は、動作モードの指定に従って、コントローラ１００の動作モードを上記操業モード又は再生モードのいずれかに設定する。ステップＳ０４において動作モードが操業モードとされたコントローラ１００は操業用コントローラ１００Ａとして利用可能となり、当該コントローラ１００に接続されたインタフェース装置２００は操業用インタフェース装置２００Ａとして機能する。一方、ステップＳ０４において動作モードが再生モードとされたコントローラ１００は再生用コントローラ１００Ｂとして利用可能となり、当該コントローラ１００に接続されたインタフェース装置２００は再生用インタフェース装置２００Ｂとして機能する。以上で動作モードの設定手順が完了する。
【００６０】
（表示用データの記録手順）
図５は、操業用コントローラ１００Ａが実行する表示用データの記録手順を例示するフローチャートである。図６に示すように、操業用コントローラ１００Ａは、まずステップＳ３１，Ｓ３２を実行する。ステップＳ３１では、制御処理部１２２が、ユーザ入力取得部２２１等から取得した操作入力の情報をユーザ入力取得部１２１から取得する。ステップＳ３２では、操作変化検出部１２５が、操作入力の変化（前回取得した操作入力からの変化）が予め設定された検出条件を満たすか否かを確認する。
【００６１】
ステップＳ３２において操作入力の変化が検出条件を満たすと判定した場合、操業用コントローラ１００ＡはステップＳ３３を実行する。ステップＳ３３では、操作変化検出部１２５が、操作入力の変化の情報を操作履歴情報として検出し、当該操作履歴情報をイベント記憶部１３３に格納する。
【００６２】
次に、操業用コントローラ１００Ａは、ステップＳ３４を実行する。ステップＳ３２において操作入力の変化が検出条件を満たさないと判定した場合、操業用コントローラ１００ＡはステップＳ３３を省略してステップＳ３４を実行する。ステップＳ３４では、制御処理部１２２が、動作状態に関する情報を制御対象機器９０から取得する。
【００６３】
次に、操業用コントローラ１００Ａは、ステップＳ３５を実行する。ステップＳ３５では、制御処理部１２２が、動作状態の変化（前回取得した動作状態からの変化）が予め設定された検出条件を満たすか否かを確認する。
【００６４】
ステップＳ３５において動作状態の変化が検出条件を満たすと判定した場合、操業用コントローラ１００ＡはステップＳ３６を実行する。ステップＳ３６では、状態変化検出部１２６が、動作状態の変化の情報を状態履歴情報として検出し、当該状態履歴情報をイベント記憶部１３３に格納する。
【００６５】
次に、操業用コントローラ１００Ａは、ステップＳ３７を実行する。ステップＳ３５において動作状態の変化が検出条件を満たさないと判定した場合、操業用コントローラ１００Ａは、ステップＳ３６を省略してステップＳ３７を実行する。ステップＳ３７では、制御処理部１２２が、制御用記憶部１２３が記憶する制御プログラム、操作入力及び動作状態に基づいて、制御対象機器９０に制御指令を出力する。例えば制御処理部１２２は、動作状態を制御プログラム及び操作入力に従った状態に近付けるための制御指令を算出し、制御対象機器９０に出力する。制御処理部１２２は、制御対象機器９０の制御において得られる上記制御データを制御処理部１２２に格納する。
【００６６】
次に、操業用コントローラ１００Ａは、ステップＳ３８，Ｓ４１，Ｓ４２を実行する。ステップＳ３８では、データ生成部１２４が、上記制御データに基づいて上記表示用データを生成し、インタフェース記憶部１２９に格納する。ステップＳ４１では、制御処理部１２２が、制御周期の経過を待機する。ステップＳ４２では、記録データ送信部１３１が、記録データの送信用の周期（以下、「記録周期」という。）が経過したか否かを確認する。
【００６７】
ステップＳ４２において記録周期が経過していると判定した場合、操業用コントローラ１００ＡはステップＳ４３を実行する。ステップＳ４３では、記録データ送信部１３１が、インタフェース記憶部１２９が記憶する表示用データと、イベント記憶部１３３が記憶する操作履歴情報及び状態履歴情報とを含む記録データを記録データ受信部３２１に送信し、イベント記憶部１３３の記憶内容を消去する。
【００６８】
その後、操業用コントローラ１００Ａは処理をステップＳ３１に戻す。ステップＳ４２において記録周期が経過していないと判定した場合、操業用コントローラ１００ＡはステップＳ４３を実行することなく処理をステップＳ３１に戻す。以後、制御処理部１２２による制御が制御周期で繰り返され、サーバステーション３００への記録データの送信が記録周期で繰り返される。
【００６９】
図６は、操業用インタフェース装置２００Ａが実行する表示用データの表示手順を例示するフローチャートである。図７に示すように、操業用インタフェース装置２００Ａは、ステップＳ５１，Ｓ５２，Ｓ５３を実行する。ステップＳ５１では、表示部２２２が、予め表示対象として設定されたインタフェース画像を表示するためのデータを表示データ送信部１３２から取得する。例えば表示部２２２は、インタフェース画像を表示するためのデータの識別情報を指定し、当該識別情報に従って表示データ送信部１３２がインタフェース記憶部１２９の表示用データから抽出したデータを取得する。ステップＳ５２では、表示部２２２が、受信した表示用データに基づいて更新したインタフェース画像を表示する。ステップＳ５３では、表示部２２２が、予め設定された表示更新周期の経過を待機する。その後、操業用インタフェース装置２００Ａは処理をステップＳ５１に戻す。以後、表示用データの取得及びインタフェース画像の更新が表示更新周期で繰り返される。
【００７０】
図７は、サーバステーション３００が実行する記録データの蓄積手順を例示するフローチャートである。図８に示すように、サーバステーション３００は、まずステップＳ６１，Ｓ６２を実行する。ステップＳ６１では、記録データ受信部３２１が、記録データの受信を待機する。ステップＳ６２では、記録データ受信部３２１が、記録データ送信部１３１により送信された記録データを受信して蓄積する。例えば記録データ受信部３２１は、記録データの受信時刻等の時刻情報と、当該記録データの内容とを対応付けて一時記憶領域（例えば上記メモリ３１２の記憶領域）でデータファイルに蓄積する。
【００７１】
次に、サーバステーション３００は、ステップＳ６３を実行する。ステップＳ６３では、記録データ受信部３２１が、データファイルに蓄積された記録データの数が所定数（例えば一時間分のデータ数）に達したか否かを確認する。ステップＳ６３において、記録データの数が所定数に達していないと判定した場合、サーバステーション３００は処理をステップＳ６１に戻す。以後、データファイルに蓄積された記録データの数が所定数に達するまで記録データの受信及び蓄積が繰り返される。ステップＳ６３において、記録データの数が所定数に達したと判定した場合、サーバステーション３００はステップＳ６４を実行する。ステップＳ６４では、記録データ受信部３２１が、データファイルを記録データ蓄積部３２２に保存する。記録データ受信部３２１は、保存日時を含むファイル名を付してデータファイルを保存してもよい。
【００７２】
次に、サーバステーション３００はステップＳ６５を実行する。ステップＳ６５では、記録データ蓄積部３２２が、残容量（例えばストレージ３１３において記録データ蓄積部３２２に割り当てられた記憶領域のうちデータファイルが格納されていない領域の容量）が、予め設定されたファイル削除基準値未満であるか否かを確認する。ステップＳ６５において、残容量はファイル削除基準値以上であると判定した場合、サーバステーション３００は処理をステップＳ６１に戻す。以後、残容量がファイル削除基準値未満となるまでは、記録データの蓄積とデータファイルの保存とが繰り返される。ステップＳ６５において、残容量はファイル削除基準値未満であると判定した場合、記録データ蓄積部３２２は、最も古い一つのデータファイルを削除する。記録データ蓄積部３２２は、最も古い側から順に複数のファイルを削除してもよい。サーバステーション３００は、以上の蓄積手順を繰り返し実行する。
【００７３】
（表示用データの再生手順）
図８は、サーバステーション３００が実行する表示用データの再生手順を例示するフローチャートである。なお、ここでの再生は、記録データ蓄積部３２２に蓄積された表示用データを順次再生用コントローラ１００Ｂに送信することを意味する。再生用コントローラ１００Ｂは、サーバステーション３００から送信される表示用データを順次取得し、再生用インタフェース装置２００Ｂは、再生用コントローラ１００Ｂが取得する表示用データに基づくインタフェース画像を表示する。
【００７４】
まず、サーバステーション３００はステップＳ７１，Ｓ７２を実行する。ステップＳ７１では、データ抽出部３２６が、再生操作機能の呼び出し（例えば再生操作用のアプリケーションの起動）を待機する。ステップＳ７２では、データ抽出部３２６が、再生操作用の画面を表示（例えば表示デバイス３０２に表示）する。
【００７５】
次に、サーバステーション３００はステップＳ７３，Ｓ７４，Ｓ７５，Ｓ７６を実行する。ステップＳ７３では、データ抽出部３２６が、データファイルのロード（ストレージ３１３からの読み出し）指令を待機する。例えばデータ抽出部３２６は、上記再生操作用の画面において、データファイルのロードボタンが操作（例えばクリック又はタップ）されるのを待機する。ステップＳ７４では、データ抽出部３２６がデータファイルの選択用の画面を表示する。ステップＳ７５では、データ抽出部３２６が、上記選択用の画面におけるデータファイルの選択入力を待機する。サーバステーション３００のオペレータは、データファイルの選択用の画面において、ファイル名が含む日時の情報等に基づいて、再生したい時間帯のデータファイルを選択する。ステップＳ７６では、選択されたデータファイルをデータ抽出部３２６がロードする。以下、ロードされたデータファイルを「再生対象ファイル」という。
【００７６】
次に、サーバステーション３００はステップＳ７７を実行する。ステップＳ７７では、操作履歴の検索指令（再生対象ファイル内の操作履歴情報を検索する指令）が入力されているか否かをデータ抽出部３２６が確認する。例えばデータ抽出部３２６は、上記再生操作用の画面において、操作履歴の検索ボタンが操作（例えばクリック又はタップ）されているか否かを確認する。ステップＳ７７において、操作履歴の検索指令が入力されていると判定した場合、サーバステーション３００はステップＳ７８を実行する。ステップＳ７８では、データ抽出部３２６が、再生対象ファイル内の操作履歴情報を抽出してログ表示部３２５に出力する。これに応じ、ログ表示部３２５は、抽出された操作履歴情報を上記再生操作用の画面にリスト表示する。なお、このリスト表示は、個々の操作履歴情報が対応付けられた表示用データの識別情報（例えばフレーム番号）の表示を含んでいてもよい。
【００７７】
ステップＳ７７において、操作履歴の検索指令は入力されていないと判定した場合、サーバステーション３００はステップＳ８１を実行する。ステップＳ８１では、状態履歴の検索指令（再生対象ファイル内の状態履歴情報を検索する指令）が入力されているか否かをデータ抽出部３２６が確認する。例えばデータ抽出部３２６は、上記再生操作用の画面において、状態履歴の検索ボタンが操作（例えばクリック又はタップ）されているか否かを確認する。ステップＳ８１において、状態履歴の検索指令が入力されていると判定した場合、サーバステーション３００はステップＳ８２を実行する。ステップＳ８２では、データ抽出部３２６が、再生対象ファイル内の状態履歴情報を抽出してログ表示部３２５に出力する。これに応じ、ログ表示部３２５は、抽出された状態履歴情報を上記再生操作用の画面にリスト表示する。なお、このリスト表示は、個々の状態履歴情報が対応付けられた表示用データの識別情報（例えばフレーム番号）の表示を含んでいてもよい。
【００７８】
ステップＳ７８又はステップＳ８２の次に、サーバステーション３００はステップＳ８３を実行する。ステップＳ８１において状態履歴の検索指令は入力されていないと判定した場合、サーバステーション３００はステップＳ７８，Ｓ８２を実行せずにステップＳ８３を実行する。ステップＳ８３では、再生開始指令が入力されているか否かをデータ抽出部３２６が確認する。例えばデータ抽出部３２６は、上記再生操作用の画面において、再生指令の入力ボタンが操作（例えばクリック又はタップ）されているか否かを確認する。ステップＳ８３において、再生開始指令は入力されていないと判定した場合、サーバステーション３００は処理をステップＳ７７に戻す。以後、再生開始指令が入力されるまでは、操作履歴の検索指令及び状態履歴の検索指令の待機と、指令に応じた操作履歴情報及び状態履歴情報の抽出・表示とが繰り返される。
【００７９】
なお、上記再生操作用の画面は、複数種類の再生指令の入力ボタンを含んでいてもよい。入力ボタンの具体例としては、記録時間の古い順に表示用データを再生する順再生ボタン、記録時間の新しい順に表示用データを再生する逆再生ボタン等が挙げられる。更に再生操作用の画面は、再生条件を指定するツールを含んでいてもよい。再生条件を指定するツールの具体例としては、再生を開始する表示用データの識別情報を入力するための開始フレーム入力ボックス、再生対象の表示用データの移行を記録時間の新しい方へ加速させる早送りボタン、及び再生対象の表示用データの移行を記録時間の古い方へ加速させる巻き戻しボタン等が挙げられる。
【００８０】
ステップＳ８３において再生開始指令が入力されたと判定した場合、サーバステーション３００は、図９に示すようにステップＳ９１を実行する。ステップＳ９１では、データ抽出部３２６が、上記再生操作用の画面への入力内容に基づいて、再生条件を設定する。例えばデータ抽出部３２６は、上記順再生ボタン及び逆再生ボタンのいずれが操作されたかに応じて、順再生（記録時間の古い順に表示用データを再生すること）及び逆再生（記録時間の新しい順に表示用データを再生すること）のいずれを実行するかを決める。また、データ抽出部３２６は、開始フレーム入力ボックスへの入力等に基づいて、再生を開始する表示用データを決めてもよい。
【００８１】
次に、サーバステーション３００はステップＳ９２，Ｓ９３を実行する。ステップＳ９２では、データ抽出部３２６が、上記再生条件に基づいて、次に再生すべき表示用データ（以下、「再生用データ」という。）を上記データファイルから抽出し、再生用データ送信部３２３に出力する。ステップＳ９３では、再生用データ送信部３２３が、再生用データを再生用コントローラ１００Ｂの再生データ受信部１２７に送信する。これに応じ、再生データ受信部１２７は、再生用データをインタフェース記憶部１２９に書き込む。再生用データがインタフェース記憶部１２９に書き込まれることによって、当該再生用データに基づくインタフェース画像が再生用インタフェース装置２００Ｂにより表示される。なお、インタフェース画像の表示のために再生用インタフェース装置２００Ｂが実行する処理は、操業用インタフェース装置２００Ａが実行する上述のステップＳ５１，Ｓ５２，Ｓ５３と同じである。
【００８２】
次に、サーバステーション３００はステップＳ９４を実行する。ステップＳ９４では、再生条件の変更指令が入力されていないかをデータ抽出部３２６が確認する。再生条件の変更指令の具体例としては、上記順再生ボタン又は逆再生ボタンの操作による再生方向の逆転指令、上記早送りボタン又は巻き戻しボタンの操作による再生加速指令等が挙げられる。更に別の具体例として、開始フレーム入力ボックスへの上記識別情報の入力と、上記順再生ボタン又は逆再生ボタンの操作との組み合わせにより、当該識別情報に対応する表示用データに再生位置をジャンプさせる指令も挙げられる。
【００８３】
ステップＳ９４において、再生条件の変更指令があると判定した場合、サーバステーション３００は処理をステップＳ９１に戻し、再生条件の設定を再実行してから表示用データの抽出・送信を再開する。ステップＳ９４において、再生条件の変更指令はないと判定した場合、サーバステーション３００はステップＳ９５を実行する。ステップＳ９５では、再生停止指令が入力されているか否かをデータ抽出部３２６が確認する。例えばデータ抽出部３２６は、上記再生操作用の画面において、停止指令の入力ボタンが操作（例えばクリック又はタップ）されているか否かを確認する。
【００８４】
ステップＳ９５において、停止指令はないと判定した場合、サーバステーション３００はステップＳ９６を実行する。ステップＳ９６では、予め設定された再生フレーム周期が経過したか否かをデータ抽出部３２６が確認する。例えばデータ抽出部３２６は、ステップＳ９２の実行直前からの経過時間が上記再生フレーム周期に達したか否かを確認する。ステップＳ９６において再生フレーム周期は経過していないと判定した場合、サーバステーション３００は処理をステップＳ９４に戻す。以後、再生フレーム周期の経過までは、再生条件の変更指令及び停止指令の有無の確認が継続される。
【００８５】
ステップＳ９６において、再生フレーム周期が経過したと判定した場合、サーバステーション３００はステップＳ９７を実行する。ステップＳ９７では、データ抽出部３２６が、再生対象のフレーム（表示用データの識別情報）を再生条件に従って次のフレームに移行させる。再生条件の変更指令として再生加速指令が入力されている場合、データ抽出部３２６は、一つまたは複数のフレームを飛ばしたフレームに再生対象のフレームを移行させてもよい。すなわち、データ抽出部３２６は、一データおき又は複数データおきに表示用データを間引いてもよい。これにより、再生が加速される。なお、表示用データを間引くのに代えて、再生フレーム周期を短縮させることによっても再生を加速させることが可能である。ステップＳ９７の実行後、サーバステーション３００は処理をステップＳ９２に戻す。以後、再生条件の変更指令又は停止指令の入力がない限り、再生条件に従った再生が継続される。
【００８６】
ステップＳ９５において、停止指令があると判定した場合、サーバステーション３００は再生手順を終了する。なお、サーバステーション３００は、再生対象の表示用データが再生対象ファイルの末尾（順再生の場合：最も記録時間の新しい表示用データ、逆再生の場合：最も記録時間の古い表示用データ）に達した場合には、再生手順を終了してもよいし、再生対象ファイルの先頭（順再生の場合：最も記録時間の古い表示用データ、逆再生の場合：最も記録時間の新しい表示用データ）に戻して再生を継続してもよい。
【００８７】
〔本実施形態の効果〕
以上に説明したように、制御システム１は、少なくとも一つの機器を制御し、機器の動作状態に関する情報を含む表示用データを生成する操業用コントローラ１００Ａと、操業用コントローラ１００Ａが生成した表示用データに基づくインタフェース画像を表示する操業用インタフェース装置２００Ａと、操業用コントローラ１００Ａから表示用データを取得して蓄積するサーバステーション３００と、操業用コントローラ１００Ａと同様に少なくとも一つの機器を制御可能なコントローラ１００であって、サーバステーション３００が蓄積する表示用データを順次取得する再生用コントローラ１００Ｂと、操業用インタフェース装置２００Ａと同様にインタフェース画像を表示可能な装置であって、再生用コントローラ１００Ｂがサーバステーション３００から取得する表示用データに基づくインタフェース画像を表示する再生用インタフェース装置２００Ｂと、を備える。
【００８８】
この制御システムによれば、操業用コントローラ１００Ａが生成した表示用データに基づくインタフェース画像を操業用インタフェース装置２００Ａに表示するのと同じ状況が、再生用コントローラ１００Ｂと再生用インタフェース装置２００Ｂとの間に再現される。このため、操業用インタフェース装置２００Ａによるインタフェース画像の表示と同じ態様で過去のインタフェース画像を再生することで、動作履歴を容易に検証することができる。具体的には、操業用コントローラ１００Ａが生成する表示用データと同じ態様の表示用データが再生用コントローラ１００Ｂに再現されるので、表示用データに基づく限りどのようなインタフェース画像であっても事後的に再生用インタフェース装置２００Ｂに表示させることができる。このため、操業用インタフェース装置２００Ａが表示していなかったインタフェース画像であっても、再生用インタフェース装置２００Ｂに事後的に再現することもできる。
【００８９】
また、操業用コントローラ１００Ａと同様に機器を制御可能なコントローラ１００によって再生用コントローラ１００Ｂが構成されるので、再生用コントローラ１００Ｂを操業用コントローラ１００Ａの予備としても活用することができる。換言すると、操業用コントローラ１００Ａの予備を再生用コントローラ１００Ｂとして有効活用することができる。
【００９０】
同様に、操業用インタフェース装置２００Ａと同様にインタフェース画像を表示可能な装置によって再生用インタフェース装置２００Ｂが構成されるので、再生用インタフェース装置２００Ｂを操業用インタフェース装置２００Ａの予備としても活用することができる。換言すると、操業用インタフェース装置２００Ａの予備を再生用インタフェース装置２００Ｂとして有効活用することができる。
【００９１】
更に、操業用インタフェース装置２００Ａ及び再生用インタフェース装置２００Ｂで構成の共通化が可能である。このため、相互の転用を容易に行うことができる。また、操業用インタフェース装置２００Ａ及び再生用インタフェース装置２００Ｂでソフトウェアの共通化も可能である。このため、ソフトウェアのアップデートが容易である。このように、システムの効率的な管理・運用が可能である。
【００９２】
操業用インタフェース装置２００Ａ及び再生用インタフェース装置２００Ｂは、インタフェース通信経路を介して操業用コントローラ１００Ａ及び再生用コントローラ１００Ｂにそれぞれ接続され、サーバステーション３００は、インタフェース通信経路とは別の記録再生通信経路を介して操業用コントローラ１００Ａ及び再生用コントローラ１００Ｂに接続されていてもよい。この場合、操業用コントローラ１００Ａからサーバステーション３００へのデータの送信頻度及びサーバステーション３００から再生用コントローラ１００Ｂへのデータの送信頻度が高くなっても、インタフェース通信経路の通信負担が増えない。このため、表示用データをサーバステーション３００に蓄積する周期を短縮することができる。これにより、動作履歴をより詳細に検証することができる。
【００９３】
操業用コントローラ１００Ａ及び再生用コントローラ１００Ｂのそれぞれは、少なくとも一つの制御対象機器９０を制御する制御処理部１２２と、制御処理部１２２による少なくとも一つの制御対象機器９０の制御において得られるデータに基づいて表示用データを生成するデータ生成部１２４と、データ生成部１２４が生成した表示用データを含む記録データをサーバステーション３００に周期的に送信する記録データ送信部１３１と、サーバステーション３００から表示用データを順次受信する再生データ受信部１２７と、表示用データを操業用インタフェース装置２００Ａ又は再生用インタフェース装置２００Ｂに送信する表示データ送信部１３２と、表示データ送信部１３２が送信する表示用データをデータ生成部１２４から取得する操業モードと、再生データ受信部１２７から取得する再生モードとを切り替える切替部１２８と、を有していてもよい。この場合、操業用コントローラ１００Ａ及び再生用コントローラ１００Ｂで構成の共通化を図りつつ、切替部１２８により操業モード及び再生モードを切り替えるのみで、相互の転用を容易に行うことができる。操業用コントローラ１００Ａ及び再生用コントローラ１００Ｂでソフトウェアの共通化も可能である。このため、ソフトウェアのアップデートが容易である。このように、システムの効率的な管理・運用が可能である。
【００９４】
操業用コントローラ１００Ａ及び再生用コントローラ１００Ｂのそれぞれは、制御対象機器９０の状態の変化が予め設定された検出条件を満たした場合に、当該変化の情報を状態履歴情報として検出する状態変化検出部１２６を更に有し、記録データ送信部１３１は、状態履歴情報を更に含む記録データをサーバステーション３００に周期的に送信してもよい。この場合、状態履歴情報を参照し、検証すべき範囲を絞り込んで過去のインタフェース画像を再生することができる。従って、動作履歴を更に容易に検証することができる。
【００９５】
操業用インタフェース装置２００Ａ及び再生用インタフェース装置２００Ｂのそれぞれは、インタフェース画像を表示する表示部２２２と、制御処理部１２２への操作入力を取得するユーザ入力取得部２２１とを有し、操業用コントローラ１００Ａ及び再生用コントローラ１００Ｂのそれぞれは、操作入力の内容の変化が予め設定された検出条件を満たした場合に、当該変化の情報を操作履歴情報として検出する操作変化検出部１２５を更に有し、記録データ送信部１３１は、操作履歴情報を更に含む記録データをサーバステーション３００に周期的に送信してもよい。この場合、操作履歴情報を参照し、検証すべき範囲を絞り込んで過去のインタフェース画像を再生することができる。従って、動作履歴を更に容易に検証することができる。
【００９６】
操業用コントローラ１００Ａ及び再生用コントローラ１００Ｂのそれぞれは、物理的な記憶領域において予め定められたアドレス範囲に割り付けられたインタフェース記憶部１２９を更に有し、データ生成部１２４は生成した表示用データをインタフェース記憶部１２９に格納し、記録データ送信部１３１はサーバステーション３００に送信する記録データに含める表示用データをインタフェース記憶部１２９から取得し、再生データ受信部１２７は受信した表示用データをインタフェース記憶部１２９に格納し、表示データ送信部１３２は、操業用インタフェース装置２００Ａ又は再生用インタフェース装置２００Ｂに送信する表示用データをインタフェース記憶部１２９から取得してもよい。この場合、表示用データを記憶するアドレス範囲を固定することで、表示用データの書き込み及び読出しを高速化することができる。これにより、表示用データをサーバステーション３００に蓄積する周期を更に短縮することができる。
【００９７】
また、インタフェース画像の表示用のデータが特定の記憶領域から取得される構成によれば、制御対象機器９０の変更又は追加時等においても表示用のデータの探索範囲に変更は生じないので、コントローラ１００とインタフェース装置２００との間のインタフェースに関するプログラムに変更を加える必要がない。このため、システムのより効率的な管理・運用が可能である。
【００９８】
以上、実施形態について説明したが、本発明は必ずしも上述した形態に限定されるものではなく、その要旨を逸脱しない範囲で様々な変形が可能である。
【符号の説明】
【００９９】
１…制御システム、９０…制御対象機器（機器）、１００…コントローラ、１００Ａ…操業用コントローラ（制御装置）、１００Ｂ…再生用コントローラ（制御装置）、１２２…制御処理部、１２４…データ生成部、１２５…操作変化検出部、１２６…状態変化検出部、１２７…再生データ受信部、１２８…切替部、１２９…インタフェース記憶部、１３１…記録データ送信部、１３２…表示データ送信部、２００…インタフェース装置、２００Ａ…操業用インタフェース装置、２００Ｂ…再生用インタフェース装置、２２１…ユーザ入力取得部（操作入力取得部）、３００…サーバステーション。
【図１】
2020009253.tif 000003
【図２】
2020009253.tif 000004
【図３】
2020009253.tif 000005
【図４】
2020009253.tif 000006
【図５】
2020009253.tif 000007
【図６】
2020009253.tif 000008
【図７】
2020009253.tif 000009
【図８】
2020009253.tif 000010
【図９】
2020009253.tif 000011