Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP6919289B2 - 制御装置、制御方法及び制御プログラム - Google Patents
[go: Go Back, main page]

JP6919289B2 - 制御装置、制御方法及び制御プログラム - Google Patents

制御装置、制御方法及び制御プログラム Download PDF

Info

Publication number
JP6919289B2
JP6919289B2 JP2017078171A JP2017078171A JP6919289B2 JP 6919289 B2 JP6919289 B2 JP 6919289B2 JP 2017078171 A JP2017078171 A JP 2017078171A JP 2017078171 A JP2017078171 A JP 2017078171A JP 6919289 B2 JP6919289 B2 JP 6919289B2
Authority
JP
Japan
Prior art keywords
data
unit
application
tact
control
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2017078171A
Other languages
English (en)
Other versions
JP2018180846A (ja
Inventor
崇 光井
崇 光井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fuji Electric Co Ltd
Original Assignee
Fuji Electric Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fuji Electric Co Ltd filed Critical Fuji Electric Co Ltd
Priority to JP2017078171A priority Critical patent/JP6919289B2/ja
Publication of JP2018180846A publication Critical patent/JP2018180846A/ja
Application granted granted Critical
Publication of JP6919289B2 publication Critical patent/JP6919289B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Testing And Monitoring For Control Systems (AREA)

Description

本発明は、制御装置、制御方法及び制御プログラムに関する。
従来、制御対象装置(例えば複数のプラント)を制御する制御装置が知られている。例えば、特許文献1には、通信ネットワークにより複数のプラントに接続されたイベント記録表示装置が開示されている。このイベント記録表示装置は、複数のプラントで発生した全てのイベントをメッセージデータとして表示あるいは再現し、複数のプラントで発生する様々な事象の解析を可能としている。
このような制御装置は、制御対象装置に関連するアプリケーションを実行するアプリケーション実行機能と、制御対象装置に関連するデータを収集するデータ収集機能とを有している。アプリケーション実行機能とデータ収集機能は、各タクト周期に含まれる別々の制御帯域(例えばアプリケーション帯域とシステム帯域)にそれぞれ割り当てられて実行される。
特開2009−251777号公報
しかしながら、従来の制御装置は、アプリケーション帯域で実行したアプリケーションデータを検証することなく、システム帯域で一律にデータ収集して、リアルタイムで上位機器にデータ送信していた。このため、対象データが多い場合、データ収集やデータ送信に掛かる負荷や時間が増大して、データの欠落等のエラーが発生しやすくなってしまう。また、データの収集密度(全収集データに占める有効データの割合)が低くなり、データの不具合や品質向上に必要なデータの変化を見逃すおそれが高くなってしまう。また、タクト周期毎にデータが送信されるため、データの受信タイミングや収集データの変化に基づいて有効なデータを判定しなければならず、解析の負荷や時間が増大してしまう。
さらに、従来の制御装置は、アプリケーション実行機能とデータ収集機能が同一(共通)の機能構成要素により実現されている。このため、例えば、データ収集機能に関連するパラメータの設定/変更を行う際には、制御対象装置を含むシステム全体を停止しなければならない。また、例えば、アプリケーション実行機能の設定/変更を行う際には、製作、デバッグ、試験の工数が増大してしまう。
本発明はかかる点に鑑みてなされたものであり、アプリケーション実行機能とデータ収集機能を好適に発揮させることができる制御装置、制御方法及び制御プログラムを提供することを目的の1つとする。
本実施形態の制御装置は、その一態様では、制御対象装置に関連するアプリケーションを実行するアプリケーション実行部と、前記制御対象装置に関連するデータを収集するデータ収集部と、を有し、前記データ収集部は、各タクト周期が共通の制御帯域と別の制御帯域に分割された複数のタクト周期のうち、前記各タクト周期に含まれる前記共通の制御帯域を利用して、前記アプリケーション実行部による前記アプリケーションの実行前後の少なくとも一方のタイミングで、前記データの収集を実行する、ことを特徴としている。
本実施形態の制御方法は、その一態様では、制御対象装置を制御する制御方法であって、前記制御対象装置に関連するアプリケーションを実行するアプリケーション実行ステップと、前記制御対象装置に関連するデータを収集するデータ収集ステップと、を有し、前記データ収集ステップでは、各タクト周期が共通の制御帯域と別の制御帯域に分割された複数のタクト周期のうち、前記各タクト周期に含まれる前記共通の制御帯域を利用して、前記アプリケーションステップによる前記アプリケーションの実行前後の少なくとも一方のタイミングで、前記データの収集を実行する、ことを特徴としている。
本実施形態の制御プログラムは、その一態様では、制御対象装置を制御するための制御プログラムであって、前記制御対象装置に関連するアプリケーションを実行するアプリケーション実行ステップと、前記制御対象装置に関連するデータを収集するデータ収集ステップと、をコンピュータに実行させ、前記データ収集ステップでは、各タクト周期が共通の制御帯域と別の制御帯域に分割された複数のタクト周期のうち、前記各タクト周期に含まれる前記共通の制御帯域を利用して、前記アプリケーションステップによる前記アプリケーションの実行前後の少なくとも一方のタイミングで、前記データの収集を実行する、ことを特徴としている。
本発明によれば、アプリケーション実行機能とデータ収集機能を好適に発揮させることができる制御装置、制御方法及び制御プログラムを提供することができる。
第1実施形態による制御システムとプラント群と支援ツールの構成を示すブロック図である。 第1実施形態によるプロセッサモジュール(制御装置)と支援ツールの内部構成を示す機能ブロック図である。 データ収集パラメータのフォーマット(設定ファイル形式)の一例を示す図である。 第1実施形態によるプロセッサモジュール(制御装置)の処理を示すタイミングチャートである。 データ蓄積部による蓄積データの一例を示す図である。 データ送信部がデータ蓄積部による蓄積データを送信するための送信パラメータの一例を示す図である。 第2実施形態によるプロセッサモジュール(制御装置)と支援ツールの内部構成を示す機能ブロック図である。 第2実施形態によるプロセッサモジュール(制御装置)の処理を示すタイミングチャートである。 第4実施形態によるプロセッサモジュール(制御装置)と支援ツールの内部構成を示す機能ブロック図である。 第4実施形態によるプロセッサモジュール(制御装置)の処理を示すタイミングチャートである。 図11Aはデータ収集変数値とデータ収集値の条件の一例を示す図であり、図11Bはタクト1〜5毎のデータ収集値の一例を示す図である。 図11Aと図11Bの条件下における収集データの一例を示す図である。 第5実施形態によるプロセッサモジュール(制御装置)と支援ツールの内部構成を示す機能ブロック図である。 第5実施形態によるプロセッサモジュール(制御装置)の処理を示すタイミングチャートである。 比較例のプロセッサモジュール(制御装置)の処理を示すタイミングチャートである。 比較例のデータ蓄積部による蓄積データの一例を示す図である。
≪第1実施形態≫
図1〜図6を参照して、第1実施形態による制御装置、制御方法及び制御プログラムについて詳細に説明する。第1実施形態による制御方法及び制御プログラムは、制御装置の内部コンピュータに各種の処理ステップを実行させることにより実現される。
図1に示すように、第1実施形態による制御システム10は、制御対象装置であるプラント群20に接続されており、当該プラント群20を構成する第1プラント21、第2プラント22、第3プラント23、第4プラント24を制御する。また、制御システム10は、通信ケーブル30を介して、プラント群20の制御を支援するための支援ツール(エンジニアリングツール、上位機器)40に接続されている。なお、プラント群を構成するプラントの数は4つに限定されず、種々の設計変更が可能である。
制御システム10は、プラント群20(第1プラント21〜第4プラント24)との間で各種のデータや入出力信号を伝送するためのIOモジュール11A〜11Gと通信モジュール12を有している。図1中の上段のIOモジュール11A〜11Bと通信モジュール12は、電源13を介して、プロセッサモジュール(制御装置)50に接続されている。図1中の下段のIOモジュール11C〜11Gは、電源14とバスケーブル15を介して、プロセッサモジュール50に接続されている。
プラント群20(第1プラント21〜第4プラント24)に必要なアプリケーションは、支援ツール40で作成され、通信ケーブル30を介して、プロセッサモジュール50にダウンロードされる。プロセッサモジュール50は、ダウンロードしたアプリケーションに基づいて、IOモジュール11A〜11Gと通信モジュール12を介して、プラント群20との間で各種のデータや入出力信号を伝送する。
図2に示すように、支援ツール40は、アプリケーション作成部41と、収集データ設定/変更部(パラメータ設定/変更部)42と、データ出力部43とを有している。
アプリケーション作成部41は、プラント群20(第1プラント21〜第4プラント24)に関連するアプリケーションを作成する。このアプリケーションは、例えば、プロセッサモジュール50で取り扱うIOデータや演算データ等の制御演算データを含むことができる。アプリケーション作成部41が作成したアプリケーションは、通信ケーブル30を介して、プロセッサモジュール50(後述するアプリケーション実行部51)にダウンロードされる。
収集データ設定/変更部42は、プラント群20(第1プラント21〜第4プラント24)に関連するデータを収集するためのパラメータの設定/変更についての入力操作を受ける。収集データ設定/変更部42には、第1プラント21〜第4プラント24に関するデータ収集パラメータが個別に入力される。このデータ収集パラメータによれば、例えば、第1プラント21〜第4プラント24から収集するデータの範囲や粗密をプラント毎に設定/変更することが可能になる。収集データ設定/変更部42によるデータ収集パラメータは、通信ケーブル30を介して、プロセッサモジュール50(後述するデータ収集パラメータ保持部52)にダウンロードされる。
図3は、データ収集パラメータのフォーマット(設定ファイル形式)の一例を示している。図3では、データ収集パラメータとして、No.(1、2、3)、プラント名(X、Y、Z)、変数(A00、B10、C20)及びタスク(0、1、2)が含まれている。タスク0は、データ収集の“優先度高”を意味しており、タスク1は、データ収集の“優先度中”を意味しており、タスク2は、データ収集の“優先度低”を意味している。
データ出力部43は、通信ケーブル30を介してプロセッサモジュール50(後述するデータ送信部57)から送信されてきた収集データ(タイムスタンプが付加された蓄積データ)を受信して、当該データの表示や解析を行う。
図2に示すように、プロセッサモジュール50は、アプリケーション実行部51と、データ収集パラメータ保持部(パラメータ設定/変更部)52と、タスクエンド検出部53と、データ収集部54と、タイムスタンプ付加部(計時部)55と、データ蓄積部56と、データ送信部57とを有している。
アプリケーション実行部51は、アプリケーション作成部41からダウンロードしたプラント群20(第1プラント21〜第4プラント24)に関連するアプリケーションを実行する。
データ収集パラメータ保持部52は、収集データ設定/変更部42からダウンロードしたデータ収集パラメータを保持する。このデータ収集パラメータは、データ収集部54によるデータの収集に関連するパラメータであり、データ収集部54によるデータの収集の態様を制御(設定/変更)するためのものである。
タスクエンド検出部53は、アプリケーション実行部51が実行するアプリケーションのタスクエンドを検出する。1つのタスクは、1つのプログラム又は複数のプログラムで構成されている。1つのタスクが1つのプログラムで構成されている場合、タスクとプログラムは等価な関係となり、タスクエンドとプログラムエンドは等価な関係となる。1つのタスクが複数のプログラムで構成されている場合、タスクとプログラムは等価な関係では無くなり、タスクエンドは、タスクを構成する最後のプログラムのプログラムエンドとなる。
データ収集部54は、データ収集パラメータ保持部52が保持するデータ収集パラメータを参照して(に従って)、プラント群20(第1プラント21〜第4プラント24)に関連するデータを収集する。ここで、データ収集パラメータ保持部52(データ収集パラメータ)を参照したデータ収集部54によるデータの収集に関連するパラメータの設定/変更は、アプリケーション実行部51によるアプリケーションの実行を維持したままで(アプリケーション実行部51を変更することなく)行うことができる。
図4のタイミングチャートに示すように、プロセッサモジュール50の処理は、複数のタクト周期(例えば1周期が1ms)に亘って実行される。各タクト周期は、アプリケーション帯域(各タクト周期に含まれる共通の制御帯域)と、システム帯域(各タクト周期に含まれる共通の制御帯域とは別の制御帯域)とに分割されている。アプリケーション実行部51によるアプリケーションの実行は、優先度に応じてタスク0、1、2に割り当てられる(タスク0の優先度が最も高く、タスク2の優先度が最も低い)。例えば、最も優先度が高いタスク0に注目すると、全てのタクト周期のアプリケーション帯域において、アプリケーション実行部51がアプリケーションを実行している。
図4のタイミングチャートに示すように、データ収集部54は、各タクト周期に含まれる共通の制御帯域であるアプリケーション帯域を利用して、アプリケーション実行部51によるアプリケーションの実行後のタイミングで、データの収集を実行している。より具体的に、データ収集部54は、各タクト周期に含まれる共通の制御帯域であるアプリケーション帯域を利用して、タスクエンド検出部53によるタスクエンドの検出後に、データの収集を実行している。すなわち、アプリケーション実行処理とデータ収集処理がデータ出力処理を挟んだ1つの塊となって実行されている。
ここで、データ収集部54が収集するデータは、アプリケーション実行前の入力データと、アプリケーション実行後の演算データとを含むことができる。例えば、1つのタスクが複数のプログラムで構成されている場合、入力データは、アプリケーション実行(演算)に用いる各種パラメータの他、前回以前のプログラム(タスクを構成する最後より前のプログラム)に係るアプリケーション実行後の演算データを含んでいる。また、演算データは、今回のプログラム(タスクを構成する最後のプログラム)に係るアプリケーション実行後の演算データを含んでいる。例えば、タスクエンド検出部53によるタスクエンドの検出後に入力データと演算データを一括して収集することにより、入力データと演算データを比較して、アプリケーション実行(演算)を高精度に検証することが可能になる。
タイムスタンプ付加部55は、データ収集部54が収集したデータに時刻情報であるタイムスタンプを付加する。タイムスタンプ付加部55が付加するタイムスタンプは、例えば、μs単位とすることができる。
データ蓄積部56は、タイムスタンプ付加部55によりタイムスタンプが付加された収集データを蓄積する。また、データ蓄積部56による蓄積データには、タイムスタンプの他にも、タスク番号や指定した変数などが付加されている。図5は、データ蓄積部56による蓄積データの一例を示している。
データ送信部57は、データ蓄積部56による蓄積データを、1または2以上のタクト周期毎に、通信ケーブル30を介して、上位機器である支援ツール40に送信する。図6は、データ送信部57がデータ蓄積部56による蓄積データを送信するための送信パラメータの一例を示している。図6では、送信パラメータとして、No.(1、2、3、4、5、6)データ種別(送信プロトコル、フレーム長、送信間隔、宛先IP番号、宛先ポート番号、自局ポート番号)、設定値(UDP/IP、8kbyte、5ms、192.168.1.11、51000、50001)が含まれている。
図4のタイミングチャートに示すように、データ送信部57は、各タクト周期に含まれる共通の制御帯域(アプリケーション帯域)とは別の制御帯域であるシステム帯域を利用して、データ蓄積部56による蓄積データを支援ツール40に送信する。しかも、データ送信部57は、全てのタクト周期のシステム帯域で蓄積データを送信するのではなく、隣接する5つのタクト周期のうちの1つのタクト周期のシステム帯域でのみ、蓄積データを送信している。つまり、データ送信部57は、データ蓄積部56による蓄積データを一定時間毎に支援ツール40に送信している。あるいは、データ送信部57は、データ蓄積部56に蓄積したデータの容量をモニタリングし、蓄積データの容量が一定量に到達したタイミングで、当該蓄積データを支援ツール40に送信してもよい。このように、蓄積データを、毎タクト周期ではなく、複数のタクト周期を跨いだ一定量毎または一定時間毎に送信することで、蓄積データの転送効率を向上させることができる。
さらに、データ収集パラメータ保持部52(データ収集パラメータ)を参照したデータ収集部54によるデータの収集に関連するパラメータの設定/変更も、各タクト周期に含まれる共通の制御帯域(アプリケーション帯域)とは別の制御帯域であるシステム帯域を利用して行われる。ここで、システム帯域で、蓄積データの送信とデータ収集パラメータの設定/変更が衝突しないように、これらを時間的にずらして実行することが好ましい。
このように、第1実施形態による制御装置、制御方法及び制御プログラムでは、データ収集部54が、各タクト周期に含まれる共通の制御帯域であるアプリケーション帯域を利用して、アプリケーション実行部51によるアプリケーションの実行後のタイミングで、データの収集を実行する。これにより、収集データの信頼性が大幅に向上するので(収集データが有効データだけで無効データが含まれることがないので)、データ収集やデータ送信に掛かる負荷や時間を減少して、データの欠落等のエラーを防止することができる。また、データの不具合や品質向上に必要なデータの変化を見逃すことがなく、解析の負荷や時間を大幅に短縮することが可能になる。また、アプリケーション実行直後のアプリケーション帯域でデータ収集処理を実行するので、アプリケーションの実行とデータ収集処理に殆ど時間差がなく、システム帯域でデータ収集処理を実行するよりも高精度な制御が可能になる。
第1実施形態では、アプリケーションの実行途中で意味のないデータ(破棄すべきデータ)を収集(取得)することなく、アプリケーションのタスクエンドを検出して、当該アプリケーションの実行終了後のデータのみを収集(取得)している。アプリケーションのタスクエンドは、プログラムの実行管理を行っているため、容易に検出が可能である。
また、上述したように、アプリケーション帯域にアプリケーションの実行とデータの収集を割り当てる一方、システム帯域に、蓄積データの送信とデータ収集パラメータの設定/変更を割り当てている。これにより、アプリケーションの実行とデータの収集に影響を与えることなく、システムの運転を維持することが可能になる。
さらに、既存システムのアプリケーションを変更することなく、制御システムを使用しているプラント等の品質向上や不具合解析に必要なデータを指定できるので、データ収集するアプリケーションの製作・検証が不要になる。加えて、制御システム運転中にデータの設定/変更を反映することが可能なため、原因究明の迅速化と早期解決を図ることができる。また、収集データにタスクエンドのタイムスタンプを付加するため、正確な処理タイミングが得られる。これにより、収集したデータは、リアルタイムに送信する必要がなく、データが蓄積した後にまとめて送信することができるので、送信処理の負荷を低減することが可能となる。
≪第2実施形態≫
図7、図8を参照して、第2実施形態による制御装置、制御方法及び制御プログラムについて詳細に説明する。第1実施形態との重複部分については、説明を省略する。
図7に示すように、第2実施形態のプロセッサモジュール50は、第1実施形態のプロセッサモジュール50(図2)において、タスクスタート検出部58を追加したものである。タスクスタート検出部58は、タスクエンド検出部53と並列な形で、アプリケーション実行部51とデータ収集部54に接続されている。
タスクスタート検出部58は、アプリケーション実行部51が実行するアプリケーションのタスクスタートを検出する。1つのタスクが1つのプログラムで構成されている場合、タスクとプログラムは等価な関係となり、タスクスタートとプログラムスタートは等価な関係となる。1つのタスクが複数のプログラムで構成されている場合、タスクとプログラムは等価な関係では無くなり、タスクスタートは、タスクを構成する最初のプログラムのプログラムスタートとなる。
図8のタイミングチャートに示すように、データ収集部54は、各タクト周期に含まれる共通の制御帯域であるアプリケーション帯域を利用して、アプリケーション実行部51によるアプリケーションの実行前後のタイミングで、データの収集を実行している。より具体的に、データ収集部54は、各タクト周期に含まれる共通の制御帯域であるアプリケーション帯域を利用して、タスクスタート検出部58によるタスクスタートの検出後、及び、タスクエンド検出部53によるタスクエンドの検出後に、データの収集を実行している。すなわち、アプリケーション実行処理とデータ出力処理のセットが前後のデータ収集処理によって挟まれている。
例えば、データ収集部54は、タスクスタート検出部58によるタスクスタートの検出後にアプリケーション実行前の入力データを収集し、且つ、タスクエンド検出部53によるタスクエンドの検出後にアプリケーション実行後の演算データを収集することができる。このように、入力データと演算データの収集タイミングをタスクスタートの検出後とタスクエンドの検出後に分散させることで、アプリケーション帯域内におけるデータ収集処理の負荷を低減することが可能になる。
≪第3実施形態≫
図示は省略しているが、第3実施形態のプロセッサモジュール50は、第2実施形態のプロセッサモジュール50(図7)において、タスクスタート検出部58を残しながら(機能させながら)、タスクエンド検出部53を省略した(機能させないようにした)ものである。この場合、データ収集部54は、各タクト周期に含まれる共通の制御帯域であるアプリケーション帯域を利用して、アプリケーション実行部51によるアプリケーションの実行前のタイミングで、データの収集を実行する。より具体的に、データ収集部54は、各タクト周期に含まれる共通の制御帯域であるアプリケーション帯域を利用して、タスクスタート検出部58によるタスクスタートの検出後に、データの収集を実行している。例えば、データ収集部54は、タスクスタート検出部58によるタスクスタートの検出後に、アプリケーション実行前の入力データを収集することができる。
≪第4実施形態≫
図9〜図12を参照して、第4実施形態による制御装置、制御方法及び制御プログラムについて詳細に説明する。第1実施形態〜第3実施形態との重複部分については、説明を省略する。
図9に示すように、第4実施形態のプロセッサモジュール50は、第1実施形態のプロセッサモジュール50(図2)において、タスクエンド検出部53を省略して、その代わりに、プログラムエンド検出部59を設けたものである。
プログラムエンド検出部59は、アプリケーション実行部51が実行するアプリケーションのプログラムエンドを検出する。すなわち、プログラムエンド検出部59は、1つのタスクが1つのプログラムで構成されているか又は複数のプログラムで構成されているかにかかわらず、タスクを構成するプログラム毎のプログラムエンドを検出する。
図10のタイミングチャートに示すように、データ収集部54は、各タクト周期に含まれる共通の制御帯域であるアプリケーション帯域を利用して、アプリケーション実行部51によるアプリケーションの実行後のタイミングで、データの収集を実行している。より具体的に、データ収集部54は、各タクト周期に含まれる共通の制御帯域であるアプリケーション帯域を利用して、プログラムエンド検出部59によるプログラムエンドの検出後に、データの収集を実行している。例えば、プログラムエンド検出部59によるプログラムエンドの検出後に、入力データと演算データを一括して収集することにより、入力データと演算データを比較して、アプリケーション実行(演算)を高精度に検証することが可能になる。
図10のタイミングチャートに示すように、プログラムP1〜P9は、優先度に応じたタスク0〜2に割り当てられて、プロセッサモジュール50で実行される。ここでは、プログラムP1が最も優先度が高いタスク0に割り当てられ、プログラムP2〜P4が2番目に優先度が高いタスク1に割り当てられ、プログラムP5〜P9が最も優先度が低いタスク2に割り当てられている。
図11Aは、データ収集変数値とデータ収集値の条件の一例を示しており、図11Bは、タクト1〜5毎のデータ収集値の一例を示している。タスク0のプログラムP1のデータ“A00”は、タクト1のときに“1”、タクト2のときに“2”、タクト3のときに“3”、タクト4のときに“4”、タクト5のときに“5”となる。タスク1のプログラムP2で使用する変数“A00”は、タスク0のプログラムP1の処理結果を出力する変数“A00”を入力値として使う場合、次のようになる。すなわち、プログラムP2の実行時の“A00”はタクト1の値となるので“1”となり、プログラムP2の変数“B01”の値は“10”となる。また、プログラムP2のデータ収集タイミングは、プログラムP2のプログラムエンドであるタクト1になるので、タスク1の“A00”として収集する値は“1”となり、演算時のデータと同じとなる。また、タスク2のプログラムP5の処理はタクト2で実行しているが、プログラムエンドの検出タイミングとデータ収集タイミングもタクト2となるので、検出誤差が略ゼロとなる。
図12は、図11Aと図11Bの条件下における収集データの一例を示している。図12では、例えば、タスク1とプログラムP2のように、プログラムエンドが訪れるタクト(タクト1)とタスクエンドが訪れるタクト(タクト2)が異なっている場合であっても、プログラムエンドに対応した正しい収集データを取得することができる。また、タスク2とプログラムP5のように、プログラムエンドが訪れるタクト(タクト2)とタスクエンドが訪れるタクト(タクト5)が異なっている場合であっても、プログラムエンドに対応した正しい収集データを取得することができる。また、プログラム単位毎にデータ収集を実行するので、共有メモリ等の他のプログラムにデータを書き換えられる可能性のあるデータについても、確実に、アプリケーション実行時の信頼性の高いデータを取得することができる。さらに、プロセッサモジュール50で実行されるプログラム処理毎に時刻を取得するので、タスクエンドよりも実際のプログラム処理時刻に近い時刻検出が可能になる。その結果、時間精度が重要な処理についても、高精度な解析が可能になる。
例えば、図11A、図11B、図12において、グローバル変数等のプログラム間に関連して実行される変数については、プログラム検出タイミングで当該データがコピーされる。
プログラムの処理が中断しながら複数タクトに跨って実行される場合、収集データがプログラム実行時のものと異なってしまい、且つ/又は、プログラムの実行タイミングとタスクエンドの時刻検出タイミングに差異が生じてしまうおそれがある。また、タスクエンドが集中した場合、データ収集とデータ送信の処理負荷が大きくなり、データ収集とデータ送信が完了しないおそれがある。
この点を重要な技術課題として捉えて、第4実施形態では、プログラムエンド検出部59が、アプリケーション実行部51が実行するアプリケーションのプログラムエンドを検出し、データ収集部54が、各タクト周期に含まれる共通の制御帯域であるアプリケーション帯域を利用して、プログラムエンド検出部59によるプログラムエンドの検出後に、データの収集を実行している。これにより、各プログラムエンドにデータ収集の処理負荷を分散させて、上記技術課題を解決することを可能としている。
ところで、データ収集部54による収集データは、プログラム毎に更新される「第1のデータ」と、プログラム毎に更新されずタスク毎に更新される「第2のデータ」とを含んでいる。「第1のデータ」は、上述した入力データと演算データを含んでおり、各タクト周期に含まれる共通の制御帯域であるアプリケーション帯域を利用して、データ収集部54によって収集される。一方、「第2のデータ」は、IO入出力データやローカル変数を含んでおり、プログラム毎に収集することの技術的意義が「第1のデータ」よりも低い。そこで、データ収集部54は、各タクト周期に含まれる共通の制御帯域(アプリケーション帯域)とは別の制御帯域であるシステム帯域を利用して、IO入出力データやローカル変数を含む「第2のデータ」を収集する。データ収集部54は、毎タクト周期で「第2のデータ」を収集するのではなく、タスクエンドを検出したタクト周期でだけ、システム帯域を利用して「第2のデータ」を収集する。このように、データ収集部54は、「第1のデータ」と「第2のデータ」のデータ種別に応じて、当該データをアプリケーション帯域とシステム帯域のいずれを利用して収集するかを切り替える。これにより、「第1のデータ」と「第2のデータ」のデータ収集処理の負荷を分散させることが可能になる。
なお、データ収集部54は、第4実施形態のみならず、第1実施形態〜第3実施形態においても、システム帯域を利用して「第2のデータ」を収集してもよい。
≪第5実施形態≫
図13、図14を参照して、第5実施形態による制御装置、制御方法及び制御プログラムについて詳細に説明する。第4実施形態との重複部分については、説明を省略する。
図13に示すように、第5実施形態のプロセッサモジュール50は、第4実施形態のプロセッサモジュール50(図9)において、プログラムスタート検出部60を追加したものである。プログラムスタート検出部60は、プログラムエンド検出部59と並列な形で、アプリケーション実行部51とデータ収集部54に接続されている。
プログラムスタート検出部60は、アプリケーション実行部51が実行するアプリケーションのプログラムスタートを検出する。すなわち、プログラムスタート検出部60は、1つのタスクが1つのプログラムで構成されているか又は複数のプログラムで構成されているかにかかわらず、タスクを構成するプログラム毎のプログラムスタートを検出する。
図14のタイミングチャートに示すように、データ収集部54は、各タクト周期に含まれる共通の制御帯域であるアプリケーション帯域を利用して、アプリケーション実行部51によるアプリケーションの実行前後のタイミングで、データの収集を実行している。より具体的に、データ収集部54は、各タクト周期に含まれる共通の制御帯域であるアプリケーション帯域を利用して、プログラムスタート検出部60によるプログラムスタートの検出後、及び、プログラムエンド検出部59によるプログラムエンドの検出後に、データの収集を実行している。
例えば、データ収集部54は、プログラムスタート検出部60によるプログラムスタートの検出後にアプリケーション実行前の入力データを収集し、且つ、プログラムエンド検出部59によるプログラムエンドの検出後にアプリケーション実行後の演算データを収集することができる。このように、入力データと演算データの収集タイミングをプログラムスタートの検出後とプログラムエンドの検出後に分散させることで、アプリケーション帯域内におけるデータ収集処理の負荷を低減することが可能になる。
≪第6実施形態≫
図示は省略しているが、第6実施形態のプロセッサモジュール50は、第5実施形態のプロセッサモジュール50(図13)において、プログラムスタート検出部60を残しながら(機能させながら)、プログラムエンド検出部59を省略した(機能させないようにした)ものである。この場合、データ収集部54は、各タクト周期に含まれる共通の制御帯域であるアプリケーション帯域を利用して、アプリケーション実行部51によるアプリケーションの実行前のタイミングで、データの収集を実行する。より具体的に、データ収集部54は、各タクト周期に含まれる共通の制御帯域であるアプリケーション帯域を利用して、プログラムスタート検出部60によるプログラムスタートの検出後に、データの収集を実行している。例えば、データ収集部54は、プログラムスタート検出部60によるプログラムスタートの検出後に、アプリケーション実行前の入力データを収集することができる。
≪第1実施形態〜第6実施形態の切替えについて≫
プロセッサモジュール50は、タスクエンド検出部53、タスクスタート検出部58、プログラムエンド検出部59及びプログラムスタート検出部60の全てを有することができる。その上で、ユーザによるマニュアル設定や所定条件に基づく自動設定によって、上述したタスクエンド検出部53、タスクスタート検出部58、プログラムエンド検出部59及びプログラムスタート検出部60の少なくとも一部を機能させることで、第1実施形態〜第6実施形態の切替えを実行することができる。すなわち、データ収集部54が、各タクト周期に含まれる共通の制御帯域であるアプリケーション帯域を利用して、アプリケーション実行部51によるアプリケーションの実行前後の少なくとも一方のタイミング(タスクスタート若しくはタスクエンド又はプログラムスタート若しくはプログラムエンドの少なくともいずれかの検出タイミング)で、データの収集を実行することができる。
≪比較例≫
図15は、比較例のプロセッサモジュール(制御装置)の処理を示すタイミングチャートである。図16は、比較例のデータ蓄積部による蓄積データの一例を示す図である。図15では、全てのタクト周期において、アプリケーション帯域を利用してアプリケーション実行処理を行い、且つ、システム帯域を利用してデータ収集処理とデータ送信処理を行っている。特に、システム帯域を利用したデータ収集処理とデータ送信処理は、優先度にかかわらず全てのタスク0、1、2で行っている。このため、アプリケーションを実行していなかったり、優先度が低かったり、アプリケーションの実行途中で意味のないデータ(破棄すべきデータ)等も一律かつ無作為に収集・送信してしまう。その結果、図16に示すように、データ蓄積部による蓄積データには不要なものが多く、支援ツールの側で、時系列に収集・送信した全データに検索を掛けて有効なデータを取り出すという処理が必須となってしまう。
なお、本発明は上記実施の形態に限定されず、種々変更して実施することが可能である。上記実施の形態において、添付図面に図示されている構成要素の大きさや形状、機能などについては、これに限定されず、本発明の効果を発揮する範囲内で適宜変更することが可能である。その他、本発明の目的の範囲を逸脱しない限りにおいて適宜変更して実施することが可能である。
例えば、上記実施の形態では、アプリケーション帯域を共通の制御帯域として、アプリケーション実行処理とデータ収集処理を実行している(図4、図8、図10、図14参照)が、システム帯域を共通の制御帯域として、アプリケーション実行処理とデータ収集処理を実行することも可能である。
本発明の制御装置、制御方法及び制御プログラムは、例えば、複数のプラントに関連するIOデータや演算データ等の制御に適用して好適である。
10 制御システム
11A〜11G IOモジュール
12 通信モジュール
13 電源
14 電源
15 バスケーブル
20 プラント群(制御対象装置)
21 第1プラント(制御対象装置)
22 第2プラント(制御対象装置)
23 第3プラント(制御対象装置)
24 第4プラント(制御対象装置)
30 通信ケーブル
40 支援ツール(エンジニアリングツール、上位機器)
41 アプリケーション作成部
42 収集データ設定/変更部(パラメータ設定/変更部)
43 データ出力部
50 プロセッサモジュール(制御装置)
51 アプリケーション実行部
52 データ収集パラメータ保持部(パラメータ設定/変更部)
53 タスクエンド検出部
54 データ収集部
55 タイムスタンプ付加部(計時部)
56 データ蓄積部
57 データ送信部
58 タスクスタート検出部
59 プログラムエンド検出部
60 プログラムスタート検出部

Claims (13)

  1. 制御対象装置に関連するアプリケーションを実行するアプリケーション実行部と、
    前記制御対象装置に関連するデータを収集するデータ収集部と、
    を有し、
    前記データ収集部は、各タクト周期が共通の制御帯域と別の制御帯域に分割された複数のタクト周期のうち、前記各タクト周期に含まれる前記共通の制御帯域を利用して、前記アプリケーション実行部による前記アプリケーションの実行前後の少なくとも一方のタイミングで、前記データの収集を実行する、
    ことを特徴とする制御装置。
  2. 前記アプリケーションのタスクエンドを検出するタスクエンド検出部をさらに有し、
    前記データ収集部は、前記各タクト周期に含まれる前記共通の制御帯域を利用して、前記タスクエンド検出部による前記タスクエンドの検出後に、前記データの収集を実行することを特徴とする請求項1に記載の制御装置。
  3. 前記アプリケーションのタスクスタートを検出するタスクスタート検出部をさらに有し、
    前記データ収集部は、前記各タクト周期に含まれる前記共通の制御帯域を利用して、前記タスクスタート検出部による前記タスクスタートの検出後に、前記データの収集を実行することを特徴とする請求項1または請求項2に記載の制御装置。
  4. 前記アプリケーションのプログラムエンドを検出するプログラムエンド検出部をさらに有し、
    前記データ収集部は、前記各タクト周期に含まれる前記共通の制御帯域を利用して、前記プログラムエンド検出部による前記プログラムエンドの検出後に、前記データの収集を実行することを特徴とする請求項1に記載の制御装置。
  5. 前記アプリケーションのプログラムスタートを検出するプログラムスタート検出部をさらに有し、
    前記データ収集部は、前記各タクト周期に含まれる前記共通の制御帯域を利用して、前記プログラムスタート検出部による前記プログラムスタートの検出後に、前記データの収集を実行することを特徴とする請求項1または請求項4に記載の制御装置。
  6. 前記データ収集部は、前記各タクト周期が前記共通の制御帯域と前記別の制御帯域に分割された前記複数のタクト周期のうち、前記各タクト周期に含まれる前記別の制御帯域を利用して、プログラム毎に更新されずタスク毎に更新される第2のデータを収集することを特徴とする請求項1から請求項5のいずれかに記載の制御装置。
  7. 前記アプリケーション実行部による前記アプリケーションの実行を維持したままで、前記データ収集部による前記データの収集に関連するパラメータの設定/変更を行うパラメータ設定/変更部をさらに有し、
    前記パラメータ設定/変更部は、上位機器において入力された、前記制御対象装置に関連するデータを収集するためのパラメータの設定/変更についてのデータ収集パラメータをダウンロードして、前記データ収集パラメータを保持する、
    ことを特徴とする請求項1から請求項6のいずれかに記載の制御装置。
  8. 前記パラメータ設定/変更部は、前記各タクト周期が前記共通の制御帯域と前記別の制御帯域に分割された前記複数のタクト周期のうち、前記各タクト周期に含まれる前記別の制御帯域を利用して、前記データ収集部による前記データの収集に関連するパラメータの設定/変更を行うことを特徴とする請求項7に記載の制御装置。
  9. 前記データ収集部が収集した前記データにタイムスタンプを付加して蓄積するデータ蓄積部と、前記データ蓄積部による蓄積データを1または2以上のタクト周期毎に上位機器に送信するデータ送信部とをさらに有することを特徴とする請求項1から請求項8のいずれかに記載の制御装置。
  10. 前記データ送信部は、前記データ蓄積部による前記蓄積データを一定量毎または一定時間毎に前記上位機器に送信することを特徴とする請求項9に記載の制御装置。
  11. 前記データ送信部は、前記各タクト周期が前記共通の制御帯域と前記別の制御帯域に分割された前記複数のタクト周期のうち、前記各タクト周期に含まれる前記別の制御帯域を利用して、前記データ蓄積部による前記蓄積データを前記上位機器に送信することを特徴とする請求項9または請求項10に記載の制御装置。
  12. 制御対象装置を制御する制御方法であって、
    前記制御対象装置に関連するアプリケーションを実行するアプリケーション実行ステップと、
    前記制御対象装置に関連するデータを収集するデータ収集ステップと、
    を有し、
    前記データ収集ステップでは、各タクト周期が共通の制御帯域と別の制御帯域に分割された複数のタクト周期のうち、前記各タクト周期に含まれる前記共通の制御帯域を利用して、前記アプリケーションステップによる前記アプリケーションの実行前後の少なくとも一方のタイミングで、前記データの収集を実行する、
    ことを特徴とする制御方法。
  13. 制御対象装置を制御するための制御プログラムであって、
    前記制御対象装置に関連するアプリケーションを実行するアプリケーション実行ステップと、
    前記制御対象装置に関連するデータを収集するデータ収集ステップと、
    をコンピュータに実行させ、
    前記データ収集ステップでは、各タクト周期が共通の制御帯域と別の制御帯域に分割された複数のタクト周期のうち、前記各タクト周期に含まれる前記共通の制御帯域を利用して、前記アプリケーションステップによる前記アプリケーションの実行前後の少なくとも一方のタイミングで、前記データの収集を実行する、
    ことを特徴とする制御プログラム。
JP2017078171A 2017-04-11 2017-04-11 制御装置、制御方法及び制御プログラム Active JP6919289B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017078171A JP6919289B2 (ja) 2017-04-11 2017-04-11 制御装置、制御方法及び制御プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017078171A JP6919289B2 (ja) 2017-04-11 2017-04-11 制御装置、制御方法及び制御プログラム

Publications (2)

Publication Number Publication Date
JP2018180846A JP2018180846A (ja) 2018-11-15
JP6919289B2 true JP6919289B2 (ja) 2021-08-18

Family

ID=64276606

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017078171A Active JP6919289B2 (ja) 2017-04-11 2017-04-11 制御装置、制御方法及び制御プログラム

Country Status (1)

Country Link
JP (1) JP6919289B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114488970B (zh) * 2021-12-24 2024-04-02 浙江中控技术股份有限公司 一种快速数据采集的系统及方法

Also Published As

Publication number Publication date
JP2018180846A (ja) 2018-11-15

Similar Documents

Publication Publication Date Title
EP3540532B1 (en) Control system and control method
CN110244991B (zh) 一种微服务依赖分析方法及装置
CN107302476B (zh) 一种测试异步交互系统的自动化测试方法与系统
US10452048B2 (en) Control system and control device
CN104539053A (zh) 基于爬虫技术的电力调度自动化巡检机器人及巡检方法
CN111092752B (zh) 跨多个网络切片的故障定位方法及装置
CN114545848B (zh) 伺服电机耐久测试的过程监控方法、装置和计算机设备
CN105490876A (zh) 发包联动并发监控自动化测试服务器性能的方法
CN103714060A (zh) 中断期历史数据的处理方法及前端采集子系统设备
JP6919289B2 (ja) 制御装置、制御方法及び制御プログラム
JP7102801B2 (ja) 制御システム、制御装置および表示装置
CN118055039A (zh) 一种基于遥测数据的网络设备管理方法及系统
CN116781797B (zh) 一种协议报文的转换方法及设备
JP5768722B2 (ja) 検証試験のためのプログラム、情報処理方法及び情報処理装置
US20050018694A1 (en) Method for analyzing network trace, method for judging order among nodes, processor for analyzing network trace, computer-executable program for controlling computer as processor, and method for correcting time difference among nodes in network
CN201163777Y (zh) 一种网络化测试设备
WO2017131961A1 (en) System and method for capturing and displaying packets and other messages in local control network (lcn)
CN115098554A (zh) 车辆自动驾驶数据处理方法、装置、电子设备和存储介质
CN111078277A (zh) 一种装包系统、装包方法及存储介质
JP2017097516A (ja) デバッグサポートシステム
JP5387083B2 (ja) ジョブ管理システムおよび方法
CN114928528B (zh) 故障诊断方法、控制器、协议转换系统及存储介质
CN110825643A (zh) 一种监控测试任务执行情况的方法
CN112445189B (zh) 数据收集系统、数据收集方法和程序
JP2005032086A (ja) データ収集システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200313

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210210

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210216

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210329

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210622

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210705

R150 Certificate of patent or registration of utility model

Ref document number: 6919289

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250