JP2016095586A - 分散制御システム、制御装置、制御方法及びプログラム - Google Patents

分散制御システム、制御装置、制御方法及びプログラム Download PDF

Info

Publication number
JP2016095586A
JP2016095586A JP2014230081A JP2014230081A JP2016095586A JP 2016095586 A JP2016095586 A JP 2016095586A JP 2014230081 A JP2014230081 A JP 2014230081A JP 2014230081 A JP2014230081 A JP 2014230081A JP 2016095586 A JP2016095586 A JP 2016095586A
Authority
JP
Japan
Prior art keywords
program
unit
functional unit
execution
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.)
Granted
Application number
JP2014230081A
Other languages
English (en)
Other versions
JP6563187B2 (ja
Inventor
元気 立野
Genki Tateno
元気 立野
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2014230081A priority Critical patent/JP6563187B2/ja
Priority to CN201580037605.0A priority patent/CN106662856B/zh
Priority to US15/525,018 priority patent/US10520935B2/en
Priority to PCT/JP2015/081381 priority patent/WO2016076236A1/ja
Publication of JP2016095586A publication Critical patent/JP2016095586A/ja
Application granted granted Critical
Publication of JP6563187B2 publication Critical patent/JP6563187B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B23/00Testing or monitoring of control systems or parts thereof
    • G05B23/02Electric testing or monitoring
    • G05B23/0205Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
    • G05B23/0218Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults
    • G05B23/0243Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults model based detection method, e.g. first-principles knowledge model
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/13Plc programming
    • G05B2219/13186Simulation, also of test inputs

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Programmable Controllers (AREA)
  • Testing And Monitoring For Control Systems (AREA)

Abstract

【課題】制御装置への処理の割り振りを最適に行い、分散制御システム全体の信頼性を向上する。
【解決手段】シミュレート部62は、分散制御システムで実行される制御プログラムの一部を構成する機能単位プログラムが予め割り振られて、機能単位プログラムをシミュレートし、共有メモリ部61は、シミュレート部によりシミュレートされた機能単位プログラムのシミュレート結果を他の制御装置と共有すべく記憶する。そして、制御装置のうち、少なくともいずれか一つに備えられたシミュレーション命令部65は、共有メモリ部を参照し、シミュレート結果に対応する機能単位プログラム毎の実行時間をシミュレーションテーブルデータベース70に格納する。
【選択図】図5

Description

本発明の実施形態は、分散制御システム、制御装置、制御方法及びプログラムに関する。
プラントなどの制御システムにおいて、分散配置された複数の通信モジュールのそれぞれにコントローラを接続し、通信ネットワークを介して、制御システム全体を連携して動作させる制御システムが知られている。
このような制御システムにおいては、通信ネットワークを介して予め定められた時間以内に制御コマンド及び制御データを含む通信フレームの送出が可能となるリアルタイム性が要求される。
一方、コンピュータ利用の一態様として、インターネット等の通信ネットワークを介して配置したサーバ等に実際の処理やデータ格納などを行わせ、ユーザはそれらをサービスとして利用するいわゆるクラウドコンピューティングが知られている。
特開2009−15401号公報
しかしながら、プラントなどの制御システムにおいて、ローカルシステムにおける負荷を分散すべく、クラウドコンピューティングを導入しようとした場合、リアルタイム性の確保が困難となる虞があった。
ところで、従来のローカル制御システムにおいては、シーケンス制御が幅広く用いられており、その多くは、PLC(Programmable Logic controller)上で動作するソフトウェアとして実現されている。
制御装置としてのPLCは、小型のコンピュータとして構成されており、他のコンピュータと同様にマイクロプロセッサ上でソフトウェアが実行されることで処理を行うが、リレー回路を原型とするステートマシンを動作モデルとしている。
大規模な制御システムを構築する場合には、複数の制御装置(PLC)が連携をとって動作する必要があるが、これらの複数のPLCへの処理の割り振りは、当該制御システムを構築する設計者に委ねられており、必ずしも最適に割り振りがなされるとは限らない。
本発明は、上記に鑑みてなされたものであって、複数の制御装置が連携して動作するに際し、各制御装置への処理の割り振りを最適に行い、制御システム全体の信頼性を向上することができる分散制御システム、制御装置、制御方法及びプログラムを提供することを目的としている。
実施形態の分散制御システムは、通信ネットワークと、通信ネットワークを介して接続され、それぞれ自己が制御すべき被制御装置の制御を行う複数の制御装置と、を備えた分散制御システムである。
制御装置のシミュレート部は、分散制御システムで実行される制御プログラムの一部を構成する機能単位プログラムが予め割り振られ、当該割り振られた機能単位プログラムをシミュレートする。
共有メモリ部は、シミュレート部によりシミュレートされた機能単位プログラムのシミュレート結果を他の制御装置と共有すべく記憶する。
そして、制御装置のうち、少なくともいずれか一つは、予め設定された機能単位プログラムの複数の制御装置への割り振りに対応する機能単位プログラム毎の実行時間を格納可能に構成されたシミュレーションテーブルデータベースを備え、シミュレーション命令部は、共有メモリ部を参照し、前記シミュレート結果に対応する前記機能単位プログラム毎の実行時間を前記シミュレーションテーブルデータベースに格納する。
図1は、実施形態の分散制御システムの概要構成ブロック図である。 図2は、ローカル制御システムの概要構成ブロック図である。 図3は、PLCの概要構成ブロック図である。 図4は、ローカル制御システムの概要機能ブロック図である。 図5は、シミュレータ命令部を設けたPLCの機能構成ブロック図である。 図6は、シミュレーションテーブルデータベースの説明図である。 図7は、他のシミュレーションテーブルデータベースの説明図である。 図8は、第2実施形態の通信モジュールの概要機能構成図である。 図9は、入出力データベースの一例の説明図である。
次に実施形態について図面を参照して詳細に説明する。
[1]第1実施形態
図1は、実施形態の分散制御システムの概要構成ブロック図である。
分散制御システム10は、大別するとサーバシステム11と、サーバシステム11に通信ネットワーク12を介して接続された複数のローカル制御システム13−1〜13−n(nは2以上の整数)と、を備えている。
ここで、ローカル制御システム13−1〜13−nの構成について説明する。
ローカル制御システム13−1〜13−nは、同様な構成となっているので、以下においては、ローカル制御システム13−1を例として説明する。
図2は、ローカル制御システムの概要構成ブロック図である。
ローカル制御システム13−1は、通信ネットワークとの間のインタフェース動作を行う通信モジュール21と、通信モジュール21にLAN22を介して接続され、オペレータが各種操作を行うための複数のHMI(Human Machine Interface)23−1〜23−x(xは2以上の整数)と、自己に接続された出力機器(被制御機器)を制御する複数のPLC24−1〜24−y(yは2以上の整数)と、自己に接続された出力機器との間のインタフェース動作を行う複数のリモートI/O25−1〜25−zと、を備えている。
次にPLCの構成について説明する。
PLC24−1〜24−yは、同様の構成であるので、以下の説明においては、PLC24−1を例として説明する。
図3は、PLCの概要構成ブロック図である。
PLC24−1は、スイッチ、センサ、信号発生装置等の各種入力機器が接続される複数の入力端子を備えた入力端子部31と、入力端子部31に接続され入力インタフェース動作を行う入力インタフェース部32と、バルブ、ランプ、ブザー、アクチュエータ等の各種出力機器(被制御機器)が接続される複数の出力端子を備えた出力端子部33と、出力端子部33に接続され出力インタフェース動作を行う出力インタフェース部34と、入力インタフェース部32及び出力インタフェース部34が接続され、PLC24−1全体を制御する制御部35と、を備えている。
上記構成において、制御部35は、マイクロコンピュータとして構成されており、制御部35全体を制御するMPU41と、制御プログラムを含む各種データを不揮発的に記憶するROM42と、ワークエリアとしても用いられ、各種データを一時的に格納するRAM43と、制御パラメータ等の各種データを不揮発的、かつ、更新可能に記憶するフラッシュROM44と、通信ネットワークを介して他のPLCあるいはサーバと通信を行うための通信インタフェース部45と、各部を通信可能に接続するバス46と、を備えている。
次にローカル制御システム13−1の機能構成について説明する。
図4は、ローカル制御システムの概要機能ブロック図である。
ローカル制御システム13−1を構成する通信モジュール21は、サーバシステム11との間で通信(パケット通信)を行う通信部51と、LAN22を介して接続されたPLC24−1〜24−yとの間で共有するデータを格納したネットワーク共有メモリ部52と、ネットワーク共有メモリ部52上に配置された入力情報を通信部51に入力する入力部53と、通信部51を介して入力されるサーバシステム11の演算実行結果とネットワーク共有メモリ部52上に格納されたローカル制御システム13−1の演算実行結果とを比較し、比較結果に基づいていずれかの演算実行結果を採用し、採用した演算実行結果を所定の演算実行結果格納領域に格納する出力判定部54と、ローカル制御システム13−1全体の処理を実行するためのプログラムを機能毎にモジュール化して作成された機能単位プログラムPOU(Program Organization Unit)を、LAN22を介して接続されたPLC24−1〜24−yのいずれに割り振るかを判別する分配サーバ部55と、を備えている。
本実施形態において、機能単位プログラムは、PLC24−1〜PLC24−yから見れば、必ずしも自己の処理を実行するためのものとはなっていない。すなわち、ローカル制御システム13−1において実施される機能を実現するための一部を担っているだけである。例えば、PLC24−1により実行された機能単位プログラムPOUの実行結果は、当該PLC24−1では利用されず、PLC24−3においてその実行結果が利用されることもある。このため、分配サーバ部55は、ローカル制御システム13−1全体において、より実行効率が高くなるように、機能単位プログラムPOUを割り振る。なお、割り振りの詳細については、追って説明する。
上記構成において、通信モジュール21は、サーバシステム11と通信を行って、当該ローカル制御システム13−1で実行すべきタスク(後述するメインスキャンタスクTMあるいはハイスピードスキャンタスクTH)の変更、更新がなされる度に当該タスクを取得し、LAN22を介して接続されたPLC24−1〜24−yに配信する。
また、PLC24−1〜PLC24−yは、それぞれ、LAN22を介して接続された他のPLC及び通信モジュール21との間で共有するデータを格納したネットワーク共有メモリ部61と、スキャン周期の開始タイミングで分配サーバ部55により割り振られた実行優先度が低く、最大許容実行時間の長いメインスキャンタスク(MSタスク)TMあるいは実行優先度が高く、最大許容実行時間の短いハイスピードスキャンタスク(HSタスク)THに対応する機能単位プログラムPOUを実行して、演算結果をネットワーク共有メモリ部61の所定の領域にローカル演算結果として書き込む(格納する)とともに、演算を行った旨を表す実行フラグをネットワーク共有メモリ部61の所定の領域に書き込むシミュレータ部62と、スキャン周期の終了タイミングで演算実行結果を出力情報として対応する出力機器に出力する入出力部63と、を備えている。
ここで、PLC24−1〜PLC24−yへの機能単位プログラムPOUの割り振りについて説明する。
一般に、MPU、DSU等のプロセッサには各演算(基数・補数・浮動小数点・シフト演算など)に対して得手不得手があり、また、使用できるリソース(メモリ、キャッシュなど)もハードウェア構成により異なっている。
すなわち、PLC24−1〜PLC24−yを構成するプロセッサであるMPU41も同様に各演算(基数・補数・浮動小数点・シフト演算など)に対して得手不得手がある。また、同一のプロセッサであっても、割り込み処理の頻度(被制御装置数の多少)等により、演算速度は異なる。
このため、同一の機能単位プログラムPOUを実行させたとしても、演算スピードがプロセッサ毎、ひいては、PLC毎に異なることとなっている。
そこで、本実施形態においては、ローカル制御システム13−1〜13−n毎にいずれか一つのPLCにシミュレータ命令部を設け、当該ローカル制御システムに属しているPLCに動作シミュレーションを行わせ、予め機能単位プログラムを割り振るための情報を収集し、割り振り基準を作成している。
具体的には、以下の説明においては、PLC24−3にシミュレータ命令部を設けるものとして説明する。
図5は、シミュレータ命令部を設けたPLCの機能構成ブロック図である。
シミュレータ命令部65が設けられたPLC24−3は、通信モジュール21(または他のローカル制御システム13−2〜13−nのPLC[ノード])と通信し、タスクの変更・更新のたびにそれを取得する。シミュレータ命令部65は、実制御ではなく、シミュレーションを行っていることを表す、シミュレーションフラグをネットワーク共有メモリ部61上の所定のアドレスにセットする。
このネットワーク共有メモリ部61の内容は、ローカル制御システム13−1の通信モジュール21のネットワーク共有メモリ部52にも反映される。
この結果、ローカル制御システム13−1の通信モジュール21の分配サーバ部55(図4参照)は、ネットワーク共有メモリ部52上の所定のアドレスにシミュレーションフラグがセットされた場合、機能単位プログラムPOUの割り振りを一時停止する。これにより、PLC24−3のシミュレータ命令部65は、シミュレーション対象の機能単位プログラムをシミュレーションを指示するオペレータの指示に従って所定のPLCに割り振るように、分配サーバ部55に割り振り情報を、例えば、ネットワーク共有メモリ部52を介して伝達する。この結果、分配サーバ部55は、シミュレーション対象の機能単位プログラムをシミュレーションを指示するオペレータの指示に従って所定のPLCに割り振ることが可能となる。
図6は、シミュレーションテーブルデータベースの説明図である。
実際には、オペレータの指示は、シミュレーションテーブルデータベース(DB)70としてシミュレータ命令部65が予め保有している。
すなわち、シミュレータ命令部65は、ユーザが設計したシミュレーションテーブルデータベース(シミュレーション表)70に基づきローカル制御システム13−1を構成している各PLC24−1〜24−yに所定の機能単位プログラムPOUを割り振るべく、割振情報を上書きする。
この結果、ローカル制御システム13−1を構成している各PLC24−1〜24−yのシミュレータ部62は、スキャン周期の開始タイミングで、割振情報に基づいて割り振られた機能単位プログラムの演算を開始し、演算結果をネットワーク共有メモリ部61にローカル実行結果(演算実行結果)として記録する。
このとき、当該13−1を構成している各PLC24−1〜24−yの入出力部63は、スキャン周期の終了タイミングにおいて、ネットワーク共有メモリ部61の所定のアドレスにシミュレーションフラグがセットされている場合には、割り振られた機能単位プログラムPOUの演算実行結果は、シミュレーションであるので、演算実行結果を出力情報として出力機器に出力しない。すなわち、シミュレーション結果が制御に用いられることは無い。
これにより、シミュレータ命令部65としても機能しているPLC24−3は、演算実行結果が出力されるネットワーク共有メモリ部61を監視し、当該演算実行に要した時間(演算実行時間)をシミュレーション結果としてシミュレーションテーブルデータベース70に保存する。
シミュレーションテーブルデータベース70は、図6に示すように、PLC24−1〜24−y毎に、シミュレーションフラグを格納するシミュレーションモードデータと、シミュレーション対象のタスクの割り振りをタスクの優先度別に指定する割振情報データ72−1〜72−yと、シミュレーション対象のタスク毎の演算実行時間(シミュレーション実行時間)を格納する実行結果データ73−1〜73−yと、を備えている。
例えば、図6の例の場合、PLC24−1には、割振情報データ72−1に示すように、実行優先度が低く、最大許容実行時間の長い(例えば、1000ms)メインスキャンタスクTMとしての機能単位プログラムPOU1及び機能単位プログラムPOU2が割り振られ、それらの実行結果データ73−1は、それぞれ、200ms、350msとなっている。
また、PLC24−1には、割振情報データ72−1に示すように、実行優先度が高く、最大許容実行時間の短い(例えば、100ms)ハイスピードスキャンタスクTHとしての機能単位プログラムPOU4及び機能単位プログラムPOU7が割り振られ、その実行結果データ73−1は、それぞれ、70ms、50msとなっている。
同様に、PLC24−2には、割振情報データ72−2に示すように、メインスキャンタスクTMとしての機能単位プログラムPOU3が割り振られ、その実行結果データ73−2は、100msとなっている。
また、PLC24−2には、割振情報データ72−2に示すように、ハイスピードスキャンタスクTHとしての機能単位プログラムPOU8が割り振られ、その実行結果は、実行結果データ73−2に示すように、125msとなっている。
さらにPLC24−yには、割振情報データ72−yに示すように、メインスキャンタスクとしての機能単位プログラムPOU37が割り振られ、その実行結果データは、1150msとなっている。
また、PLC24−yには、割振情報データ72−2に示すように、ハイスピードスキャンタスクとしての機能単位プログラムPOU42が割り振られ、その実行結果は、実行結果データ73−yに示すように、85msとなっている。
したがって、シミュレーション結果に基づいて、機能単位プログラムを割り振る場合には、上述の例の場合、PLC24−1については、機能単位プログラムPOU1及び機能単位プログラムPOU2の実行時間が、メインスキャンタスクの最大許容実行時間(例えば、1000ms)以内であったので、メインスキャンタスクとしての機能単位プログラムPOU1及び機能単位プログラムPOU2をPLC24−1に割り振っても良いとの判断がなされる。
同様にPLC24−1については、機能単位プログラムPOU4の実行時間が、ハイスピードスキャンタスクの最大許容実行時間(例えば、100ms)以内であったので、ハイスピードスキャンタスクとしての機能単位プログラムPOU4を割り振っても良いとの判断がなされる。
またPLC24−2については、機能単位プログラムPOU3の実行時間が、メインスキャンタスクの最大許容実行時間(例えば、1000ms)以内であったので、メインスキャンタスクとしての機能単位プログラムPOU3をPLC24−2に割り振っても良いとの判断がなされる。
しかしながら、PLC24−2については、機能単位プログラムPOU8の実行時間が125msであり、ハイスピードスキャンタスクの最大許容実行時間(例えば、100s)を超えているので、ハイスピードスキャンタスクTHとしての機能単位プログラムPOU8については、PLC24−2に割り振ることはできないとの判断がなされる。
同様に、PLC24−yについては、機能単位プログラムPOU37の実行時間が1150msであり、メインスキャンタスクの最大許容実行時間(例えば、1000ms)を超えているので、メインスキャンタスクとしての機能単位プログラムPOU37をPLC24−yに割り振ることはできないとの判断がなされる。
また、PLC24−yについては、機能単位プログラムPOU42の実行時間が、ハイスピードスキャンタスクTHの最大許容実行時間(例えば、100ms)以内であったので、ハイスピードスキャンタスクTHとしての機能単位プログラムPOU42を割り振っても良いとの判断がなされる。
以上の説明のように、ローカル制御システムの各PLC24−1〜PLC24−yの演算特性をより適切に把握し、負荷分散することが可能になる。また、ローカル側のPLC数(ノード数)を決定するための指標としてシミュレーション結果を用いることも可能である。すなわち、PLCに割り振られる機能単位プログラムの数が多すぎると判断される場合には、PLCの数を増加するようにすれば、最適なPLCの数(=y)を設定することができる。
ところで、実際のシステム構築には、PLCの故障も想定する必要がある。
例えば、PLCの故障としては、入出力部とシミュレータの故障が想定できる。
これら入出力部とシミュレータの故障を検出するためには、ネットワーク共有メモリ上において、入出力部あるいはシミュレータが定周期的に入出力するエリア(アドレス)を監視すればよい。
この入出力部あるいはシミュレータ部62が定周期的に入出力するエリア(アドレス)を監視は、例えば、分配サーバが行う。
より具体的には、分配サーバは、シミュレータが定周期的に入出力するエリア(アドレス)を監視していて、入出力が定周期的になされなかった場合には、対応するシミュレータが故障したものとして、分配サーバはそのシミュレータを備えたPLC(ノード)を除外して、機能単位プログラムを分配する(割り振る)。
また、予め故障したPLC(ノード)に代替可能な代替PLC(代替ノード)を明示的に設定できるようにしてもよい。例えば、シミュレーションテーブルデータベース70に代替PLC(代替ノード)を特定するための代替PLC特定データを格納するようにしてもよい。
図7は、他のシミュレーションテーブルデータベースの説明図である。
図7に示すように、代替PLC特定データ74を設けることにより、例えば、PLC24−2が故障した場合には、PLC24−1を代替PLCとして機能させる。
また、入出力部63が故障した場合には、入力を参照している機能単位プログラムPOUを実行しても、実行結果を取得できず、意味が無いため、分配サーバ部55は、当該機能単位プログラムを除く他の機能単位プログラムのみを分配するように構成すればよい。ここで、入出力部が故障したPLCに対し、上述した代替PLCが明示的に指定されていた場合には、これを無視するように動作すれば良い。
このような構成によれば、ローカル制御システムの各PLC(ノード)の故障をより適切に把握し、負荷分散することが可能になる。
[2]第2実施形態
上述した実施形態においては、サーバシステム11からの制御指示に基づいて、ローカル制御システムの複数のPLCに機能単位プログラムを割り振って分散処理を行う構成について説明したが、本実施形態は、サーバシステム11側でもローカル制御システム13−1〜13−nのそれぞれを構成する複数のPLCに割り振った機能単位プログラムと同一の機能単位プログラムPOUを動作させて、その結果が一致する場合には正常であると判断し、不一致の場合(相違した場合)には、ローカル制御システム13−1〜13−nの判断を優先して採用する構成を採っている。
図8は、第2実施形態の通信モジュールの概要機能構成図である。
ところで、通信モジュール21の入力部53に入力される入力情報と、出力判定部54に入力されるローカル制御システム13−1〜13−nからの出力情報とは、同一のスキャン周期における同一の機能単位プログラムPOU同士において一対一に対応している。
そこで、本実施形態では、データ入出力の情報を記録し、保存する入出力データベース56を備える構成を採り、サーバシステム11及びローカル制御システム13−1〜13−nのそれぞれで実行した機能単位プログラムPOUの実行結果を比較して、動作制御を行うようにしている。
図9は、入出力データベースの一例の説明図である。
入出力データベースは、入出力日時を格納した入出力日時データ81と、機能単位プログラムPOUを特定する機能単位プログラム特定データ82と、入力データ83と、サーバシステム11による実行結果であるサーバ出力データ84と、PLCによる実行結果であるローカル出力データ85と、出力判定結果を格納する出力判定データ86と、を備えている。
ところで、同一の機能単位プログラムPOUを実行する場合、実際に実行するのがサーバシステム11であろうと、ローカル制御システム13−1〜13−nを構成しているPLC24−1〜24−yであろうと、入力データ83の値が同じである限り同一の結果が出るはずである。
したがって、同一の機能単位プログラムPOUについて、同一の入力データ83に対して、サーバシステム11と対応するPLCとで出力データに相違がある場合には、何らかの異常があったものと判断できることとなる。
例えば、図9の例の場合、入出力日時データ=「2014/06/23 16:14:10:000」、機能単位プログラム特定データ=「POU1」(スキャン周期500ms)におけるサーバ出力データ84=「1」であり、ローカル出力データ85=「0」であり、サーバ出力データ84とローカル出力データ85とを比較することで、相違があることが分かる。
このように、サーバシステム11と、ローカル制御システム13−1〜13−nとで、出力データに相違が生じた場合には、機器の故障を除くと、人為的によるものが強く疑われる。
このため、本第2実施形態では、サーバシステム11及びローカル制御システム13−1〜13−nの演算結果を保管し、それぞれに相違がある場合のトラブルシューティングに役立たせている。例えば、悪意のある者にサーバシステムの演算結果を経路上でなりすまされた場合、その者がシステム・プラントの何(どこ)をいつ攻撃しようとしたかを特定することもできる。
さらに、人為的なデータの操作による相違が疑われる場合には、各工場・プラントにおいて定められた行動規範に基づく迅速な行動が求められると想定される。したがって、相違を迅速にオペレータに伝達することが必要となる。
そこで、入出力データベースを定期的に監視し、出力判定が相違「あり」となった場合に、予め指定された機器(HMIのPCやアラーム灯)に通信ネットワーク(LAN等)を介して通知(伝達)するように構成すれば良い。
これにより、通知を受けた機器は、定められたアラーム(ピープ音)や出力してもよいし、文字情報をディスプレイに出力してもよい。
すなわち、情報を通知すべき、オペレータに適切な表現で伝達できればその手段は問わない。
この結果、人為的な行為による出力データの相違が検出されたことを迅速にオペレータに伝達でき、ひいては、その対処を迅速に行わせることが可能になる。ひいては分散制御システムの事業継続性を図るBCP(Business Continuity Plan)として機能することが可能となる。
以上説明したとおり、各実施形態によれば、複数の制御装置が連携して動作するに際し、各制御装置への処理の割り振りを最適に行うことができ、ひいては、制御システム全体の信頼性を向上することができる。
以上の説明においては、サーバシステム11を一つの装置として説明してきたが、インターネット等の通信ネットワークの複数箇所にサーバ装置を配置するクラウドサーバシステムに適用することも可能である。
本実施形態の制御装置で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでCD−ROM、フレキシブルディスク(FD)、CD−R、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録されて提供される。
また、本実施形態の制御装置で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また、本実施形態の制御装置で実行されるプログラムをインターネット等のネットワーク経由で提供または配布するように構成しても良い。
また、本実施形態の制御装置のプログラムを、ROM等に予め組み込んで提供するように構成してもよい。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
10 分散制御システム
11 サーバシステム
12 通信ネットワーク(第2の通信ネットワーク)
13 ローカル制御システム
21 通信モジュール
22 LAN(第1の通信ネットワーク)
23−1〜23−x HMI
24−1〜24−y PLC(制御装置)
25−1〜25−z リモートI/O
35 制御部
41 MPU(実行部)
42 ROM
43 RAM
44 フラッシュROM
45 通信インタフェース部
51 通信部
52 ネットワーク共有メモリ部
53 入力部
54 出力判定部
55 分配サーバ部
56 入出力データベース
61 ネットワーク共有メモリ部
62 シミュレータ部
63 入出力部
65 シミュレータ命令部
70 シミュレーションテーブルデータベース
72 割振情報データ
73 実行結果データ
74 代替PLC特定データ
81 入出力日時データ
82 機能単位プログラム特定データ
83 入力データ
84 サーバ出力データ
85 ローカル出力データ
86 出力判定データ

Claims (10)

  1. 通信ネットワークと、
    前記通信ネットワークを介して接続され、それぞれ自己が制御すべき被制御装置の制御を行う複数の制御装置と、を備えた分散制御システムであって、
    前記制御装置は、前記分散制御システムで実行される制御プログラムの一部を構成する機能単位プログラムが予め割り振られ、当該割り振られた前記機能単位プログラムをシミュレートするシミュレート部と、
    前記シミュレート部によりシミュレートされた前記機能単位プログラムのシミュレート結果を他の制御装置と共有すべく記憶する共有メモリ部と、備え、
    前記制御装置のうち、少なくともいずれか一つは、予め設定された前記機能単位プログラムの前記複数の制御装置への割り振りに対応する前記機能単位プログラム毎の実行時間を格納可能に構成されたシミュレーションテーブルデータベースと、
    前記共有メモリ部を参照し、前記シミュレート結果に対応する前記機能単位プログラム毎の実行時間を前記シミュレーションテーブルデータベースに格納するシミュレーション命令部と、
    を備えた分散制御システム。
  2. 前記データベースは、前記いずれかの制御装置が故障した場合の代替制御装置の情報を格納している、
    請求項1記載の分散制御システム。
  3. 第1の通信ネットワークと、
    前記第1の通信ネットワークを介して接続され、それぞれ自己が制御すべき被制御装置の制御を行う複数の制御装置と、
    前記第1の通信ネットワークを介して、前記複数の制御装置と接続されるとともに、第2の通信ネットワークを介してサーバシステムと接続された通信モジュールと、を備えた分散制御システムであって、
    前記制御装置は、前記分散制御システムで実行される制御プログラムの一部を構成する機能単位プログラムが予め割り振られ、当該割り振られた前記機能単位プログラムを処理する実行部と、
    前記実行部により実行された前記機能単位プログラムの実行結果を他の制御装置と共有すべく記憶する共有メモリ部と、備え、
    前記通信モジュールは、前記割り振られた前記機能単位プログラムの入力データを同じにして、前記サーバシステムにおいて求めた前記機能単位プログラム毎の実行結果と、前記制御装置が求めた前記機能単位プログラム毎の実行結果と、が一致しているか否かを判定する出力判定部と、
    前記サーバシステムにおいて求めた前記機能単位プログラム毎の実行結果、前記制御装置が求めた前記機能単位プログラム毎の実行結果及び前記判定の結果を対応づけて記憶する入出力データベースと、
    を備えた分散制御システム。
  4. 前記出力判定部は、スキャン周期の終了タイミングで、自己の前記実行部の実行結果あるいは受信した前記他の制御装置の実行部の実行結果と、前記サーバの実行結果とを前記機能単位プログラム単位で比較して判定し、
    前記通信モジュールは、前記出力判定部の判定により、比較結果が不一致した場合にその旨を通知する通知部を備える、
    請求項3記載の分散制御システム。
  5. 通信ネットワークを介して接続され、分散制御システムを構築する他の制御装置と共働して自己が制御すべき被制御装置の制御を行う制御装置であって、
    前記分散制御システムで実行される制御プログラムの一部を構成する機能単位プログラムが予め割り振られ、当該割り振られた前記機能単位プログラムをシミュレートするシミュレート部と、
    前記シミュレート部によりシミュレートされた前記機能単位プログラムのシミュレート結果を他の制御装置と共有すべく記憶する共有メモリ部と、
    を備えた制御装置。
  6. 前記機能単位プログラムが予め割り振られ、当該割り振られた前記機能単位プログラムを実行する実行部と、
    前記実行部により実行された前記機能単位プログラムの実行結果を所定のスキャン周期内に送信する送信部と、
    前記他の制御装置の実行部により実行された実行結果を受信する受信部と、を備え、
    前記共有メモリ部は、前記実行部により実行された前記機能単位プログラムの実行結果及び前記他の制御装置の実行部により実行された実行結果を記憶し、
    自己の前記実行部の実行結果あるいは受信した前記他の制御装置の実行部の実行結果に基づいて、前記被制御装置の制御を行う、
    請求項5記載の制御装置。
  7. 通信ネットワークを介して接続され、分散制御システムを構築する他の制御装置とデータを共有する共有メモリ部を備え、前記他の制御装置と共働して自己が制御すべき被制御装置の制御を行う制御装置において実行される制御方法であって、
    前記分散制御システムで実行される制御プログラムの一部を構成する機能単位プログラムが予め割り振られ、当該割り振られた前記機能単位プログラムをシミュレートする過程と、
    前記機能単位プログラムのシミュレート結果を他の制御装置と共有すべく前記共有メモリ部に記憶する過程と、
    を備えた制御方法。
  8. 前記機能単位プログラムが予め割り振られ、当該割り振られた前記機能単位プログラムを実行する過程と、
    前記実行された前記機能単位プログラムの実行結果を所定のスキャン周期内に送信する過程と、
    前記他の制御装置により実行された実行結果を受信する過程と、
    前記実行された前記機能単位プログラムの実行結果及び前記他の制御装置により実行された実行結果を前記共有メモリ部に記憶する過程と、
    自己の前記実行結果あるいは受信した前記他の制御装置の実行結果に基づいて、前記被制御装置の制御を行う過程と、
    請求項7記載の制御方法。
  9. 通信ネットワークを介して接続され、分散制御システムを構築する他の制御装置とデータを共有する共有メモリ部を備え、前記他の制御装置と共働して自己が制御すべき被制御装置の制御を行う制御装置をコンピュータにより制御するためのプログラムであって、
    前記コンピュータを、
    前記分散制御システムで実行される制御プログラムの一部を構成する機能単位プログラムが予め割り振られ、当該割り振られた前記機能単位プログラムをシミュレートする手段と、
    前記機能単位プログラムのシミュレート結果を他の制御装置と共有すべく前記共有メモリ部に記憶する手段と、
    して機能させるプログラム。
  10. 前記コンピュータを、
    前記機能単位プログラムが予め割り振られ、当該割り振られた前記機能単位プログラムを実行する手段と、
    前記実行された前記機能単位プログラムの実行結果を所定のスキャン周期内に送信する手段と、
    前記他の制御装置により実行された実行結果を受信する手段と、
    前記実行された前記機能単位プログラムの実行結果及び前記他の制御装置により実行された実行結果を前記共有メモリ部に記憶する手段と、
    自己の前記実行結果あるいは受信した前記他の制御装置の実行結果に基づいて、前記被制御装置の制御を行う手段と、
    して機能させる、
    請求項9記載のプログラム。
JP2014230081A 2014-11-12 2014-11-12 分散制御システム、制御装置及び制御方法 Active JP6563187B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2014230081A JP6563187B2 (ja) 2014-11-12 2014-11-12 分散制御システム、制御装置及び制御方法
CN201580037605.0A CN106662856B (zh) 2014-11-12 2015-11-06 分散控制系统、控制装置、控制方法
US15/525,018 US10520935B2 (en) 2014-11-12 2015-11-06 Distributed control system, control device, control method, and computer program product
PCT/JP2015/081381 WO2016076236A1 (ja) 2014-11-12 2015-11-06 分散制御システム、制御装置、制御方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014230081A JP6563187B2 (ja) 2014-11-12 2014-11-12 分散制御システム、制御装置及び制御方法

Publications (2)

Publication Number Publication Date
JP2016095586A true JP2016095586A (ja) 2016-05-26
JP6563187B2 JP6563187B2 (ja) 2019-08-21

Family

ID=55954323

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014230081A Active JP6563187B2 (ja) 2014-11-12 2014-11-12 分散制御システム、制御装置及び制御方法

Country Status (4)

Country Link
US (1) US10520935B2 (ja)
JP (1) JP6563187B2 (ja)
CN (1) CN106662856B (ja)
WO (1) WO2016076236A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109313423A (zh) * 2017-03-01 2019-02-05 普雷索拉工业物联网公司 用于监管和控制工业设施中的机器的装置及包括多个装置的系统

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6356726B2 (ja) * 2016-05-19 2018-07-11 ファナック株式会社 ラダープログラム解析装置
JP6783636B2 (ja) * 2016-11-24 2020-11-11 株式会社東芝 制御サーバ
US10317888B2 (en) 2017-03-01 2019-06-11 PLETHORA IloT, S.L. Device and system including multiple devices for supervision and control of machines in industrial installation
US11143010B2 (en) 2017-06-13 2021-10-12 Schlumberger Technology Corporation Well construction communication and control
US11021944B2 (en) * 2017-06-13 2021-06-01 Schlumberger Technology Corporation Well construction communication and control
JP6707198B2 (ja) * 2017-06-19 2020-06-10 三菱電機株式会社 分散配置装置、分散配置システム、および、分散配置方法
JP6903275B2 (ja) * 2017-09-14 2021-07-14 オムロン株式会社 制御装置および制御方法
JP6998781B2 (ja) 2018-02-05 2022-02-10 住友重機械工業株式会社 故障診断システム

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0991011A (ja) * 1995-09-26 1997-04-04 Omron Corp 負荷分散装置および方法
JPH10333721A (ja) * 1997-06-04 1998-12-18 Mitsubishi Electric Corp プログラマブルコントローラ用プログラミングツール
JPH1185220A (ja) * 1997-09-09 1999-03-30 Yokogawa Electric Corp プログラマブルコントローラ
JP2005044038A (ja) * 2003-07-24 2005-02-17 Toshiba Corp リモートメンテナンス方法およびそのシステム
JP2007241556A (ja) * 2006-03-07 2007-09-20 Mitsubishi Electric Corp 複数の演算装置によるシーケンス処理実行装置
JP2012018628A (ja) * 2010-07-09 2012-01-26 Mitsubishi Electric Corp 分散制御システム試験実行管理装置
JP2012059078A (ja) * 2010-09-09 2012-03-22 Fuji Electric Co Ltd Plcシステム、その開発支援装置

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4273669B2 (ja) * 2001-02-28 2009-06-03 沖電気工業株式会社 ノード情報管理システム及びノード
US7231338B2 (en) * 2001-11-09 2007-06-12 Sun Microsystems, Inc. Distributed simulation system having phases of a timestep
US7225037B2 (en) * 2003-09-03 2007-05-29 Unitronics (1989) (R″G) Ltd. System and method for implementing logic control in programmable controllers in distributed control systems
US20090006066A1 (en) * 2007-06-28 2009-01-01 Behm Michael L Method and System for Automatic Selection of Test Cases
JP4888718B2 (ja) 2007-06-29 2012-02-29 オムロン株式会社 分散型制御システム
JP5581749B2 (ja) * 2010-03-15 2014-09-03 オムロン株式会社 表示装置、表示方法、プログラム、およびコンピュータ読み取り可能な記録媒体
WO2012028161A1 (en) * 2010-08-31 2012-03-08 Abb Technology Ag Method for debugging of process or manufacturing plant solutions comprising multiple sub-systems
DE102011077319B4 (de) * 2011-06-09 2015-08-06 Siemens Aktiengesellschaft Simulationssystem, Verfahren zur Durchführung einer Simulation, Leitsystem und Computerprogrammprodukt
CN102404140B (zh) * 2011-10-26 2014-08-20 深圳第七大道网络技术有限公司 一种分布式服务器的控制方法、装置和系统
US10360316B2 (en) * 2012-12-21 2019-07-23 Rockwell Automation Technologies, Inc. Integration of simulation of a machine for industrial automation
US9665272B2 (en) * 2014-02-28 2017-05-30 Invensys Systems, Inc. Touch gesture for connection of streams in a flowsheet simulator
JP2015210728A (ja) 2014-04-28 2015-11-24 株式会社東芝 プラント制御装置、プラント制御プログラム、およびプラント制御方法
EP3206101B1 (en) * 2014-10-08 2019-07-03 Mitsubishi Electric Corporation Test device for monitoring control device

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0991011A (ja) * 1995-09-26 1997-04-04 Omron Corp 負荷分散装置および方法
JPH10333721A (ja) * 1997-06-04 1998-12-18 Mitsubishi Electric Corp プログラマブルコントローラ用プログラミングツール
JPH1185220A (ja) * 1997-09-09 1999-03-30 Yokogawa Electric Corp プログラマブルコントローラ
JP2005044038A (ja) * 2003-07-24 2005-02-17 Toshiba Corp リモートメンテナンス方法およびそのシステム
JP2007241556A (ja) * 2006-03-07 2007-09-20 Mitsubishi Electric Corp 複数の演算装置によるシーケンス処理実行装置
JP2012018628A (ja) * 2010-07-09 2012-01-26 Mitsubishi Electric Corp 分散制御システム試験実行管理装置
JP2012059078A (ja) * 2010-09-09 2012-03-22 Fuji Electric Co Ltd Plcシステム、その開発支援装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109313423A (zh) * 2017-03-01 2019-02-05 普雷索拉工业物联网公司 用于监管和控制工业设施中的机器的装置及包括多个装置的系统
JP2020502596A (ja) * 2017-03-01 2020-01-23 プレソラ アイアイオーティー ソシエダッド リミターダ 産業設備における機械の監視及び制御のための装置、及び複数のこのような装置を含むシステム
JP2021015614A (ja) * 2017-03-01 2021-02-12 アイングラ アイアイオーティー ソシエダッド リミターダ 産業設備における機械の監視及び制御のための装置、及び複数のこのような装置を含むシステム
JP7125457B2 (ja) 2017-03-01 2022-08-24 アイングラ アイアイオーティー ソシエダッド リミターダ 産業用アプリケーション機械を監視及び制御するためのシステム、装置、及び方法

Also Published As

Publication number Publication date
JP6563187B2 (ja) 2019-08-21
US10520935B2 (en) 2019-12-31
US20170315544A1 (en) 2017-11-02
CN106662856A (zh) 2017-05-10
CN106662856B (zh) 2020-01-31
WO2016076236A1 (ja) 2016-05-19

Similar Documents

Publication Publication Date Title
JP6563187B2 (ja) 分散制御システム、制御装置及び制御方法
CN112540578A (zh) 工业控制系统超融合架构
JP2021531574A (ja) 産業用pcデバイス及び産業用pcデバイスの動作方法
US10412041B2 (en) Internet protocol (IP) addressing using an industrial control program
US9641483B2 (en) Method of providing a naming service inside an industrial communication system, and a router
JP2018129020A (ja) インダストリアル・インターネットオペレーティングシステムに基づくインダストリアル・プロセス制御管理方法と装置
US10735478B2 (en) Controller and method for setting up communication links to redundantly operated controllers in an industrial automation system
WO2018179125A1 (ja) ネットワーク構成情報生成方法および通信機器
JP2017515418A (ja) 独立した基礎ネットワークにマップされた論理モデルを提供するゲートウェイ
CN107450980B (zh) 运行自动化装置的方法以及自动化装置
EP2942711B1 (en) Dynamic generation of proxy connections
JP2013054584A (ja) データ中継制御装置、リンク間転送設定支援装置およびリンク間転送設定方法
JP2012133610A (ja) 2重化プロセス制御装置および制御データ一致化方法
WO2015135559A1 (en) Optimized configuration method for an automation system
JP6196505B2 (ja) クラウド制御システム、及びその制御プログラムの実行方法
US9262372B1 (en) Achieving balanced interconnectivity in a computer network
CN111108452A (zh) 用于为可编程逻辑控制器提供服务的方法和装置
KR101545232B1 (ko) 분산형 컴퓨팅을 이용한 통합 감시 제어 시스템
CN109962788B (zh) 多控制器调度方法、装置和系统及计算机可读存储介质
CN110908805A (zh) 一种信息分发方法、机器人及存储介质
JP6356736B2 (ja) コントローラシステムおよび制御方法
US20220137584A1 (en) Control system, support device, and support program
US11651006B2 (en) Method of visualizing screen content on a data visualization system, and data visualization system for visualizing screen content
US11622015B2 (en) Method for configuring an OPC UA PubSub subscriber, automation system, computer program and computer-readable medium
EP4354280A2 (en) Systems and methods for automatically deploying security updates in an operations technology network

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170815

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20170911

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20170912

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180508

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20181113

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190111

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: 20190625

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190724

R150 Certificate of patent or registration of utility model

Ref document number: 6563187

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150