JP2015215803A - プログラマブルコントローラ、及び演算処理システム - Google Patents

プログラマブルコントローラ、及び演算処理システム Download PDF

Info

Publication number
JP2015215803A
JP2015215803A JP2014098946A JP2014098946A JP2015215803A JP 2015215803 A JP2015215803 A JP 2015215803A JP 2014098946 A JP2014098946 A JP 2014098946A JP 2014098946 A JP2014098946 A JP 2014098946A JP 2015215803 A JP2015215803 A JP 2015215803A
Authority
JP
Japan
Prior art keywords
programmable controller
arithmetic processing
log data
unit
programmable
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
JP2014098946A
Other languages
English (en)
Other versions
JP6517474B2 (ja
Inventor
英五 深井
Eigo Fukai
英五 深井
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 JP2014098946A priority Critical patent/JP6517474B2/ja
Priority to CN201580001377.1A priority patent/CN105393176B/zh
Priority to PCT/JP2015/062091 priority patent/WO2015174223A1/ja
Priority to US15/116,648 priority patent/US20170052521A1/en
Publication of JP2015215803A publication Critical patent/JP2015215803A/ja
Application granted granted Critical
Publication of JP6517474B2 publication Critical patent/JP6517474B2/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
    • 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
    • G05B19/0423Input/output
    • 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
    • G05B19/0421Multiprocessor system
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B9/00Safety arrangements
    • G05B9/02Safety arrangements electric
    • G05B9/03Safety arrangements electric with multiple-channel loop, i.e. redundant control systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • 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
    • G05B19/0428Safety, monitoring
    • 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/20Pc systems
    • G05B2219/22Pc multi processor system
    • G05B2219/2225Communication, CPU accesses own I-O and next CPU over dual port memory

Abstract

【課題】ログデータの保存の信頼性を個乗させることができる。
【解決手段】実施形態の一例は、記憶部を有する、複数のプログラマブルコントローラで構成されるシステムに含まれるプログラマブルコントローラであって、演算処理部と、送信部と、を備える。演算処理部は、システムで行われる処理に関する演算処理を行う。送信部は、システムを構成するプログラマブルコントローラのうち、自装置と比べて演算処理部による演算負荷が少ない他のプログラマブルコントローラの記憶部に、演算処理部による演算処理に関するログデータを記憶させるために、当該ログデータを当該他のプログラマブルコントローラに送信するための制御を行う。
【選択図】図1

Description

本発明の実施形態は、プログラマブルコントローラ、及び演算処理システムに関する。
工場や公共設備に設けられた自動機械や、身近な機械などの様々な機械の制御を行うためにプログラマブルコントローラが用いられている。プログラマブルコントローラは、機械に設けられたセンサなどの情報を入力情報として取り込み、演算し、当該機械のアクチュエータへ命令値として出力する仕組みを備えている。
プログラマブルコントローラが設置されるシステムや場所は様々である。例えば、システムの欠損や、予想していない電動ノイズ、又は他雷災害などに起因する外部ノイズによる環境の一時的な影響等で、プログラマブルコントローラが扱っているデータ化けや処理の異常が生じる可能性がある。このような状況を抑止して、稼働性を安定させるためには、プログラマブルコントローラが行う処理に関するログデータを保存し、解析する手法が考えられる。
特開2010−176545号公報
しかしながら、従来技術においては、システム内で稼働性が高いプログラマブルコントローラほど、ログデータを解析する必要性が高くなるが、当該プログラマブルコントローラは処理負担が高い以上、さらにログデータを保存させるための処理でさらに処理負担を大きくするのは難しい。
実施形態の一例は、記憶部を有する、複数のプログラマブルコントローラで構成されるシステムに含まれるプログラマブルコントローラであって、演算処理部と、送信部と、を備える。演算処理部は、システムで行われる処理に関する演算処理を行う。送信部は、システムを構成するプログラマブルコントローラのうち、自装置と比べて演算処理部による演算負荷が少ない他のプログラマブルコントローラの記憶部に、演算処理部による演算処理に関するログデータを記憶させるために、当該ログデータを当該他のプログラマブルコントローラに送信するための制御を行う。
図1は、第1の実施形態のシステム構成例を示した図である。 図2は、第1の実施形態のプログラマブルコントローラのCPUが不揮発性メモリのプログラムを読み出すことで実現されるプログラム構成を示したブロック図である。 図3は、第1の実施形態のシステムにおけるログデータの保存処理の手順を示すフローチャートである。 図4は、第2の実施形態のシステムの概要を例示した図である。 図5は、第2の実施形態のシステム構成例を示した図である。 図6は、第2の実施形態のプログラマブルコントローラのCPUが不揮発性メモリのプログラムを読み出すことで実現されるプログラム構成を示したブロック図である。
(第1の実施形態)
図1は、第1の実施形態のシステム構成例を示した図である。図1に示されるように、システムは、システムバス180を介して、第1のプログラマブルコントローラ100_1と、第2のプログラマブルコントローラ100_2と、入力モジュール181と、出力モジュール182と、を接続している。
入力モジュール181は、プログラマブルコントローラ100_1、100_2で処理を行うために必要な入力データを受け渡すためのモジュールとする。出力モジュール182は、プログラマブルコントローラ100_1、100_2から受け渡された出力データに従って処理を行うモジュールとする。
図1に示されるように、第1のプログラマブルコントローラ100_1は、不揮発性メモリ101_1と、システム用メモリ102_1と、CPU103_1と、メモリ用I/F104_1と、演算処理用ASIC105_1と、データ転送処理部106_1と、停止用スイッチ107_1と、スイッチ群108_1と、内部バス用I/F109_1と、を備えている。
本実施形態のシステムは、第1のプログラマブルコントローラ100_1、及び第2のプログラマブルコントローラ100_2を、用いて二重化したシステム構成を実現している。本実施形態の二重化されたプログラマブルコントローラの各々は、互いの状態を監視し、自装置が稼働系又は待機系であるかを把握している。
本実施形態では、第1のプログラマブルコントローラ100_1を稼働系として、当該システムにおける処理を行う構成とし、第2のプログラマブルコントローラ100_2を待機系として、第1のプログラマブルコントローラ100_1が処理をできなくなった場合に代わりに処理を行う構成とする。本実施形態にかかる構成では、二重化システムとすることで、安定制御を実現できる。
プログラマブルコントローラにおいて、システムの稼働の安定性を向上させるために、プログラマブルコントローラが行った処理を検証するために、(入力データや出力データを含む)ログデータを保存するのが好ましい。
しかしながら、稼働系である第1のプログラマブルコントローラ100_1はシステムを稼働させるための様々な処理を行うことで、処理負担が大きい。このため、稼働系の第1のプログラマブルコントローラ100_1でログデータの保存処理を行うのは難しい場合が考えられる。
それに対して、待機系である第2のプログラマブルコントローラ100_2は、第1のプログラマブルコントローラ100_1が稼働している間は処理を行わないため、通常は処理負担が小さい。
そこで、本実施形態では第1のプログラマブルコントローラ100_1が処理を行っている間、当該第1のプログラマブルコントローラ100_1が行った処理に関するログデータを、第2のプログラマブルコントローラ100_2が、第2の外部メモリ152に記録させることとした。
なお、ログデータは、第1のプログラマブルコントローラ100_1による演算処理に必要な入力データ、第1のプログラマブルコントローラ100_1の演算処理結果である出力データ、第1のプログラマブルコントローラ100_1の演算中に出力された中間データ、さらには演算処理に用いられるシステムパラメータなど、システムによる処理を検証可能なデータであれば、どのようなデータでも良い。本実施形態では、入力データと、出力データと、をログデータとして格納する例について説明する。
本実施形態では、稼働系であるプログラマブルコントローラ(例えば、第1のプログラマブルコントローラ100_1)が、システムバス180に接続される入力モジュール181及び出力モジュール182へのアクセス権を有する。待機系のプログラマブルコントローラ(例えば、プログラマブルコントローラ100_2)は、システムバス180へのアクセス権を持たない。このため、稼働系であるプログラマブルコントローラ(例えば、第1のプログラマブルコントローラ100_1)のみが入力モジュール181にアクセスし、入力データを得られるとともに、出力モジュール182にアクセスして、演算結果である出力データを設定し、出力モジュール182による出力制御を実現できる。
システム用メモリ102_1は、第1のプログラマブルコントローラ100_1のCPU103_1が処理を行う際に作業領域として用いられる。
CPU103_1は、第1のプログラマブルコントローラ100_1全体を制御する。例えば、CPU103_1は、バスを介して接続されている不揮発性メモリ101_1、システム用メモリ102_1、演算処理用ASIC105_1、スイッチ群108_1等の制御を行う。また、CPU103_1は、不揮発性メモリ101_1から読み出されたプログラムに従って、様々な制御を行う。
メモリ用I/F104_1は、第1の外部メモリ151等と接続可能な接続インターフェース部として機能し、CPU103_1は、メモリ用I/F104_1に接続された第1の外部メモリ151等を検出可能とする。
演算処理用ASIC105_1は、システムで行われる処理に関する演算処理を行うためであって、第1のプログラマブルコントローラ100_1が、機械を制御するための演算を行うために設けられた電子回路とする。
データ転送処理部106_1は、内蔵メモリ116_1を備え、ケーブル185で接続された第2のプログラマブルコントローラ100_2との間でデータを送受信するためのインターフェース制御部とする。本実施形態では、内部メモリ116_1にデータが書き込まれた場合に、第2のプログラマブルコントローラ100_2が、内部メモリ116_1に書き込まれたデータを参照可能となり、第2のプログラマブルコントローラ100_2からの制御によりデータの転送を実現できる。内蔵メモリ116_1は、第1の外部メモリ151と比べて高速に読み出し及び書き出し可能なメモリとし、例えばSRAM(Static Random Access Memory)を用いることが考えられる。そして、内蔵メモリ116_1に書き込まれたデータは、第2のプログラマブルコントローラ100_2からの制御に従って、データ転送処理部106_1が内蔵メモリ116_1に書き込まれたデータの転送制御を行うことができる。
これにより、本実施形態においては、ログデータを、第2のプログラマブルコントローラ100_2に転送することが可能となる。転送する際の処理負担も、第1の外部メモリ151に書き込む処理と比べて軽いため、処理負担を高めることなく、ログデータの保存を実現できる。
停止用スイッチ107_1は、第1のプログラマブルコントローラ100_1、又は第1のプログラマブルコントローラ100_1が制御している機器等を緊急停止させるためのスイッチとする。スイッチ群108_1は、プログラマブルコントローラ100を制御するためのスイッチ群とする。
内部バス用I/F109_1は、システム内部を接続するシステムバス180と接続するためのインターフェースとする。
不揮発性メモリ101_1は、第1のプログラマブルコントローラ100_1が実行するプログラム等が格納されたメモリとする。本実施形態では、第1のプログラマブルコントローラ100_1の起動時に、不揮発性メモリ101_1に格納されたプログラムを、CPU103_1が実行することで、各種構成が実現される。
図2は、CPU103_1が不揮発性メモリ101_1のプログラムを読み出すことで実現されるプログラム構成を示したブロック図である。図2に示されるように、CPU103_1は、プログラムを実行することで、送信制御部201と、受信制御部202と、書込制御部203と、が実現される。なお、本実施形態のプログラムは、稼働系と待機系が入れ替わっても処理できるように、稼働系が行うべき構成と、待機系が行うべき構成と、を含んでいる。例えば、稼働系が行うべき構成として、送信制御部201を含み、待機系が行うべき構成として、受信制御部202と書込制御部203とを含んでいる。
送信制御部201は、システムを構成するプログラマブルコントローラのうち、自装置と比べて演算処理用ASICによる演算負荷が少ない他のプログラマブルコントローラ(本実施形態では待機系の第2のプログラマブルコントローラ100_2)の外部メモリに、演算処理用ASICによる演算処理に関するログデータを記憶させるために、ログデータを他のプログラマブルコントローラに送信するための制御を行う。
第1のプログラマブルコントローラ100_1の送信制御部201は、データ転送処理部106_1の内蔵メモリ116_1に、ログデータ(例えば、入力データ、及び出力データ)を書き込むことで、送信するための制御を実現している。本実施形態では、CPU103_1の送信制御部201が、第1の外部メモリ151よりも高速に書き込みが行えるデータ転送処理部106_1の内蔵メモリ116_1にログデータを書き込んだ場合に、第2のプログラマブルコントローラ100_2のデータ転送処理部106_2が、第1のプログラマブルコントローラ100_1のデータ転送処理部106_1に対して指示することで、ログデータの送信制御が行われる。
このログデータの送信制御は、データ転送処理部106_1、106_2内の(図示しない)処理装置で制御が行われるため、第1のプログラマブルコントローラ100_1のCPU103_1は特に処理を行わなくても良い。そして、ログデータが送信された後、第2のプログラマブルコントローラ100_2が、ログデータを、第2の外部メモリ152に書き込む制御を行う。これにより、第1のプログラマブルコントローラ100_1に処理負担を掛けずに、ログデータの書き込み制御を実現できる。
受信制御部202は、システムを構成するプログラマブルコントローラのうち、自装置と比べて演算処理用ASICによる演算負荷が高い他のプログラマブルコントローラから、当該他のプログラマブルコントローラの演算処理用ASICによる演算に関するログデータを受信するための制御を行う。本実施形態では、待機系である第2のプログラマブルコントローラ100_2の受信制御部202が、稼働系である第1のプログラマブルコントローラ100_1からログデータを受信するための制御を行う。
例えば、第2のプログラマブルコントローラ100_2のデータ転送処理部106_2が、第1のプログラマブルコントローラ100_1のデータ転送処理部106_1の内蔵メモリ116_1にログデータが格納されていることを検出した場合に、第2のプログラマブルコントローラ100_2の受信制御部202は、データ転送処理部106_2に対して、ログデータを受信するように指示する。これによりログデータの受信制御が行われる。
書込制御部203は、受信制御部202からの指示に従ってデータ転送処理部106_2が受信したログデータを、自装置のメモリ用I/F104_2を介して接続された外部メモリに書き込む。
上述した構成を稼働系と待機系とで実現することで、稼働系の演算処理に関するログデータを、待機系の外部メモリに格納できる。
図1に戻り、第2のプログラマブルコントローラ100_2は、不揮発性メモリ101_2と、システム用メモリ102_2と、CPU103_2と、メモリ用I/F104_2と、演算処理用ASIC105_2と、内蔵メモリ116_2を有するデータ転送処理部106_2と、停止用スイッチ107_2と、スイッチ群108_2と、内部バス用I/F109_2と、を備えている。第2のプログラマブルコントローラ100_2の構成は、第1のプログラマブルコントローラ100_1と同様の構成を備えているものとして説明を省略する。
次に、本実施形態のシステムにおけるログデータの保存処理について説明する。図3は、本実施形態のシステムにおける上述した処理の手順を示すフローチャートである。
まず、稼働系である第1のプログラマブルコントローラ100_1のCPU103_1が、入力モジュール181にアクセスして、入力データを、システム用メモリ102_1に格納する(ステップS301)。
次に、演算処理用ASIC105_1が、システム用メモリ102_1に格納された入力データを用いて、演算処理を行う(ステップS302)。
そして、演算処理用ASIC105_1が、演算処理した結果である出力データを、システム用メモリ102_1に格納する(ステップS303)。
そして、CPU103_1の送信制御部201が、システム用メモリ102_1に格納されている入力データ、及び出力データを、データ転送処理部106_1の内蔵メモリ116_1に転送する(ステップS304)。これにより、待機系である第2のプログラマブルコントローラ100_2が転送制御を行うことが可能となる。
一方、第2のプログラマブルコントローラ100_2のデータ転送処理部106_2は、ケーブル185を介して、第1のプログラマブルコントローラ100_1のデータ転送処理部106_1の内蔵メモリ116_1を参照する(ステップS311)。
そして、第2のプログラマブルコントローラ100_2の受信制御部202は、データ転送処理部106_2からの通知に基づいて、第1のプログラマブルコントローラ100_1のデータ転送処理部106_1の内蔵メモリ116_1にデータが入っているか否か判断する(ステップS312)。入っていないと判断した場合(ステップS312:No)、処理を終了する。
一方、受信制御部202が、内蔵メモリ116_1にデータが入っていると判断した場合(ステップS312:Yes)、データ転送処理部106_2に対してデータを受信するように指示する。データ転送処理部106_2は、当該指示に従って、第1のプログラマブルコントローラ100_1のデータ転送処理部106_1に読み出し命令を受け渡す。
そして、第1のプログラマブルコントローラ100_1のデータ転送処理部106_1は、読み出し命令に応じて、内蔵メモリ116_1に格納されていた入力データ、及び出力データを、第2のプログラマブルコントローラ100_2に送信し(ステップS305)、処理を終了する。
一方、第2のプログラマブルコントローラ100_2のデータ転送処理部106_2は、データ転送処理部106_1の内蔵メモリ116_1から、ログデータ(入力データ、及び出力データ)を受信する(ステップS313)。
そして、第2のプログラマブルコントローラ100_2のCPU103_2の書込制御部203が、受信したログデータ(入力データ、及び出力データ)を、第2の外部メモリ152に書き込む制御を行う(ステップS314)。
本実施形態では、プログラマブルコントローラが上述した構成を備えることで、稼働系のプログラマブルコントローラの負荷を大きくすることなく、ログデータを記録することができる。
(第2の実施形態)
第1の実施形態では、多重化したシステムにおいて、待機系のプログラマブルコントローラで、ログデータを記録する例について説明した。しかしながら、ログデータを記録するプログラマブルコントローラを、多重化したうちの待機系に制限するものではない。そこで、第2の実施形態では、多重化した複数のシステムがネットワークで接続された場合にログデータを記録する例について説明する。
図4は、第2の実施形態のシステムの概要を例示した図である。図4に示されるように、第1のシステムは、第1のユニット401と、第2のユニット402と、第1のハブ461と、第1のネットワーク451と、制御機器471〜474と、で構成されている。
第1のシステムでは、制御機器471〜474を、第1のユニット401及び第2のユニット402のうちいずれか一つで制御を行う。第1のハブ461は、稼働系と待機系とを切り替える制御を行う。通常は、第1のユニット401を稼働系とし、第2のユニット402を待機系とする。
本実施形態においては、複数の稼働系のプログラマブルコントローラ間で、ログデータを送受信する。例えば、複数の稼働系のプログラマブルコントローラのうち、処理負担が高い方の稼働系のプログラマブルコントローラが、ログデータを送信し、処理負担が低い方の稼働系のプログラマブルコントローラが、ログデータを受信し、当該ログデータを外部メモリに書き込む制御を行う。なお、システム間のログデータの送受信を、稼働系のプログラマブルコントローラ間の処理に制限するものではなく、待機系のプログラマブルコントローラを用いても良い。
第1のユニット401は、第1のプログラマブルコントローラ411と、伝送モジュール412と、入力モジュール413と、出力モジュール414と、で構成されている。そして、第1のユニット401は、これらの構成を内蔵バス415で接続している。同様に第2のユニット402も、第2のプログラマブルコントローラ421を含む構成とする。
そして、駆動系である第1のプログラマブルコントローラ411は、制御機器471〜474の制御を行う。この第1のプログラマブルコントローラ411は、多く機器を制御するため負荷が高い。
一方、第2のシステムは、第3のユニット403と、第4のユニット404と、第2のハブ462と、第2のネットワーク452と、制御機器481と、で構成されている。
第2のシステムでは、制御機器481を、第3のユニット403及び第4のユニット404のうちいずれか一つで制御を行う。第2のハブ462は、稼働系と待機系とを切り替える制御を行う。通常は、第3のユニット403を稼働系とし、第4のユニット404が待機系とする。
第3のユニット403は、第3のプログラマブルコントローラ431と、入力モジュール432と、伝送モジュール433と、出力モジュール434と、で構成されている。そして、第3のユニット403は、これらの構成を内蔵バス435で接続している。
そして、稼動系である第3のプログラマブルコントローラ431は、制御機器481の制御を行う。この第3のプログラマブルコントローラ431は、制御対象となる機器が一つのため、第1のプログラマブルコントローラ411と比べて処理負担が小さい。
また、各システムを構成するユニット群は、通信ネットワーク405を介して接続されている。
そこで、本実施形態では、第1のプログラマブルコントローラ411の演算処理に関するログデータを、第3のプログラマブルコントローラ431が記録する。
なお、図4に示す例では、二重化されたプログラマブルコントローラを含むシステムを2個記載したが、実際にはさらに多くのプログラマブルコントローラを含むシステムが接続されているものとする。
図5は、第2の実施形態のシステム構成例を示した図である。図5に示されるように、第1のユニット401は、内蔵バス415を介して、第1のプログラマブルコントローラ411と、伝送モジュール412と、入力モジュール413と、出力モジュール414と、を接続している。
なお、第1のプログラマブルコントローラ411は、不揮発性メモリ101_1と、システム用メモリ102_1と、CPU103_1と、メモリ用I/F104_1と、演算処理用ASIC105_1と、データ転送処理部106_1と、停止用スイッチ107_1と、スイッチ群108_1と、内部バス用I/F109_1と、を備え、第1の実施形態と同様の構成を備えている。また、入力モジュール413、及び出力モジュール414も、入力モジュール181、及び出力モジュール182と同様の構成とする。
伝送モジュール412は、伝送用メモリ551を備え、通信ネットワーク405を介して接続された機器と通信するためのモジュールとする。
また、第3のプログラマブルコントローラ431は、不揮発性メモリ101_3と、システム用メモリ102_3と、CPU103_3と、メモリ用I/F104_3と、演算処理用ASIC105_3と、データ転送処理部106_3と、停止用スイッチ107_3と、スイッチ群108_3と、内部バス用I/F109_3と、を備え、符号は異なるが、第1の実施形態の第1のプログラマブルコントローラ100_1と同様の構成を備えている。入力モジュール432、及び出力モジュール434も、第1の実施形態の入力モジュール181、及び出力モジュール182と同様の構成とする。なお、メモリ用I/F104_3に接続可能な外部メモリとして、第3の外部メモリ153を用いているが、第1の外部メモリ151等を接続してもよい。
また、伝送モジュール433は、伝送用メモリ561を備え、通信ネットワーク405を介して接続された機器と通信するためのモジュールとする。
第1の実施形態との違いは、第1のプログラマブルコントローラ411、及び第3のプログラマブルコントローラ431で実行されるプログラムが、第1の実施形態の第1のプログラマブルコントローラ100_1、及び第2のプログラマブルコントローラ100_2で実行されるプログラムと異なる点とする。
次に、第1のプログラマブルコントローラ411、及び第3のプログラマブルコントローラ431で実行されるプログラムについて説明する。
図6は、CPU103_1が不揮発性メモリ101_1のプログラムを読み出す、又はCPU103_3が不揮発性メモリ101_3のプログラムを読み出すことで実現されるプログラム構成を示したブロック図である。図6に示されるように、CPU103_1、103_3は、プログラムを実行することで、送信制御部601と、受信制御部602と、書込制御部203と、が実現される。なお、書込制御部203は、第1の実施形態と同様の処理を行うものとして説明を省略する。
送信制御部601は、処理負担が高いプログラマブルコントローラ(例えば第1のプログラマブルコントローラ411)側が利用する構成であり、受信制御部602、及び書込制御部203は、処理負担が低いプログラマブルコントローラ(例えば第3のプログラマブルコントローラ431)側が利用する構成とする。
送信制御部601は、通信ネットワーク405を介して、他のシステムに含まれる、自装置と比べて演算処理用ASICによる演算負荷が少ない他のプログラマブルコントローラ(例えば第3のプログラマブルコントローラ431)に対して、ログデータを送信するための制御を行う。当該送信するための制御は、どのようなタイミングで行っても良いが、演算処理用ASIC105_1の演算処理の合間などが考えられる。
本実施形態の送信制御部601は、演算負荷が少ない他のプログラマブルコントローラ(例えば、第3のプログラマブルコントローラ431)に対して、ログデータを送信するための制御として、内部バス用I/F109_1から、内蔵バス415を介して接続された伝送モジュール412にログデータを送信し、伝送モジュール412の伝送用メモリ551にログデータを記録させる。
伝送モジュール412は、コントローラ間の通信ネットワーク405にリンク接続されている伝送モジュール(例えば、伝送モジュール332)に対して、伝送用メモリの内容を同報送信する機能を有する。これにより、伝送用メモリ551に格納されたログデータは、通信ネットワーク405に接続される伝送モジュール(例えば、伝送モジュール433)に転送される。
そして、プログラマブルコントローラ(例えば、第3のプログラマブルコントローラ431)が、伝送モジュール(例えば伝送モジュール433)の伝送用メモリに、他の伝送モジュール(例えば伝送モジュール412)から伝送されたデータが格納されている場合に、受信制御部602が、伝送モジュールの伝送用メモリから、ログデータを受信するための制御を行う。通信ネットワーク405を介してログデータを取得できる。
書込制御部203が、取得したログデータを用いて、第1の実施の形態と同様の処理を行うことで、外部メモリにログデータが書き込まれる。
プログラマブルコントローラが伝送モジュールの伝送用モジュールデータが含まれているか否かの確認は非同期でも良い。また、通信ネットワーク405に複数のシステム(例えば、3個以上)が存在する場合、他の複数のシステムの各々から出力されたログデータを、一つの伝送用メモリに格納できる。
本実施形態の送信制御部601は、通信ネットワーク405を介して、複数のシステムに含まれる複数のプログラマブルコントローラに対して、ログデータを分けて送信するように制御してもよい。例えば、本実施形態の送信制御部601が、ログデータを分割し、分割したログデータ毎に、異なるプログラマブルコントローラに送信するように、伝送モジュール(例えば伝送モジュール412)に命令するなどが考えられる。
このように、複数のプログラマブルコントローラにログデータを分けて保存する場合に、プログラマブルコントローラの演算負荷に応じて、外部メモリに記憶させるログデータの量を分担しても良い。各プログラマブルコントローラに格納されるログデータが、時系列順ではなくなるが、解析する際に、合成等の処理を行えば良い。
また、本実施形態では、任意のプログラマブルコントローラ(例えば第1のプログラマブルコントローラ)のログデータを複数のプログラマブルコントローラ(例えば、第3のプログラマブルコントローラ、及び(図示しない)第5のプログラマブルコントローラ)の外部メモリに書き込むように制御しても良い。その際に、それぞれの外部メモリに格納されるログデータをハッシュ化しても良い。これにより、外部メモリに格納されたいずれか一方のログデータを第三者に抜き取られたとしても、復元するために読み取ることを抑止することができる。さらには、通信ネットワーク405でログデータを送受信する際に、ログデータを符号化しても良い。これらを行うことで、安全性を向上させることができる。
本実施形態では、ログデータを分割することで、複数のプログラマブルコントローラには、それぞれ異なるログデータが保存される例について説明したが、複数のプログラマブルコントローラの外部メモリに同一のログデータが記録されるように制御しても良い。
本実施形態においても、外部メモリにログデータを書き込むよりも、伝送モジュールの伝送メモリに、ログデータを出力する方が、処理負担が小さい。これにより、処理負担が大きいプログラマブルコントローラにおいて、処理負担をそれほど高めることなく、ログデータの記録が可能となる。
上述した実施形態で示したように、通常、システムは、プログラマブルコントローラ単体で構成されるわけでなく、複数のプログラマブルコントローラで構成される。プログラマブルコントローラにおいて、利用される入力データ及び出力データ量は大量となるため、毎スキャンごとに収集されるため、ログデータも大容量となる。この大容量のログデータを、処理負担が大きいプログラマブルコントローラで保存するのは難しかった。
上述した実施形態では、外部メモリとしては、例えば、NOR型のフラッシュメモリを使用することが考えられる。NOR型のフラッシュメモリは、データの信頼性が高い反面、デバイスへの書込み処理速度が遅いため、書込み完了待ちが長かった。このため、外部メモリに書き込み処理を行うだけでは、処理負担の多いプログラマブルコントローラでは、結果演算処理のリソースが不足する可能性があった。
さらには、外部記憶媒体への書込み処理速度は遅いだけでなく、デバイスのリフレッシュ処理等に重なると前回データの書込み完了まで次データが書き込めなくなる可能性がある。この場合に、ログデータが書き込まれずに、次の処理に移行する必要が生じる可能性がある。この場合に、ログデータに欠落が生じる可能性があった。
これに対して、上述した実施形態のプログラマブルコントローラでは、上述した構成を備えることで、処理負担が大きいプログラマブルコントローラについては処理負担を軽減し、処理負担が小さいプログラマブルコントローラにログデータの書き込み制御を行わせることとした。これにより演算処理のリソースが不足することを軽減するとともに、ログデータが欠落する可能性を抑止できる。このように、ログデータの保存の信頼性を個乗させることができる。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
100_1…第1のプログラマブルコントローラ、100_2…第2のプログラマブルコントローラ、101_1、101_2、101_3…不揮発性メモリ、102_1、102_2、102_3…システム用メモリ、103_1、103_2、103_3…CPU、104_1、104_2、104_3…メモリ用I/F、105_1、105_2、105_3…演算処理用ASIC、106_1、106_2、106_3…データ転送処理部、107_1、107_2、107_3…停止用スイッチ、108_1、108_2、108_3…スイッチ群、109_1、109_2、109_3…内部バス用I/F、116_1、116_2…内蔵メモリ、151…第1の外部メモリ、152…第2の外部メモリ、180…システムバス、181…入力モジュール、182…出力モジュール、185…ケーブル、201、601…送信制御部、202、602…受信制御部、203…書込制御部、401…第1のユニット、402…第2のユニット、403…第3のユニット、404…第4のユニット、405…通信ネットワーク、411…第1のプログラマブルコントローラ、412…伝送モジュール、413…入力モジュール、414…出力モジュール、415…内蔵バス、421…第2のプログラマブルコントローラ、431…第3のプログラマブルコントローラ、432…入力モジュール、433…伝送モジュール、434…出力モジュール、435…内蔵バス、451…第1のネットワーク、452…第2のネットワーク、461…第1のハブ、462…第2のハブ、471〜474…制御機器、481…制御機器、551…伝送用メモリ、561…伝送用メモリ。

Claims (8)

  1. 記憶部を有する、複数のプログラマブルコントローラで構成されるシステムに含まれるプログラマブルコントローラであって、
    前記システムで行われる処理に関する演算処理を行う演算処理部と、
    前記システムを構成するプログラマブルコントローラのうち、自装置と比べて前記演算処理部による演算負荷が少ない他のプログラマブルコントローラの前記記憶部に、前記演算処理部による演算処理に関するログデータを記憶させるために、当該ログデータを当該他のプログラマブルコントローラに送信するための制御を行う送信部と、
    を備えるプログラマブルコントローラ。
  2. 演算処理を行う稼働系のプログラマブルコントローラと、稼働系のプログラマブルコントローラが演算処理を行わなくなった場合に演算処理を行う待機系のプログラマブルコントローラで構成された前記システムに含まれるプログラマブルコントローラであって、
    前記送信部は、自装置と比べて前記演算処理部による演算負荷が少ない待機系のプログラマブルコントローラに対して、前記ログデータを送信するための制御を行う、
    請求項1に記載のプログラマブルコントローラ。
  3. 前記送信部は、演算処理を行う稼働系のプログラマブルコントローラを含むシステムが複数存在し、当該複数のシステム間が通信ネットワークで接続されている場合に、前記通信ネットワークを介して、他のシステムに含まれる、自装置と比べて前記演算処理部による演算負荷が少ない他のプログラマブルコントローラに対して、前記ログデータを送信するための制御を行う、
    請求項1に記載のプログラマブルコントローラ。
  4. 前記送信部は、前記通信ネットワークを介して、前記複数のシステムに含まれる複数の他のプログラマブルコントローラに対して、前記ログデータを分けて送信するための制御を行う、
    請求項3に記載のプログラマブルコントローラ。
  5. 外部記憶部と接続可能な接続インターフェースと演算処理部とを有する、複数のプログラマブルコントローラで構成されるシステムに含まれるプログラマブルコントローラであって、
    前記システムを構成するプログラマブルコントローラのうち、自装置と比べて前記演算処理部による演算負荷が高い他のプログラマブルコントローラから、当該他のプログラマブルコントローラの前記演算処理部による演算に関するログデータを受信するための制御を行う受信部と、
    前記受信部により受信された前記ログデータを、自装置の前記記憶部に書き込む書込部と、
    を備えるプログラマブルコントローラ。
  6. 演算処理を行う稼働系のプログラマブルコントローラと、稼働系のプログラマブルコントローラが演算処理を行わなくなった場合に演算処理を行う待機系のプログラマブルコントローラで構成された前記システムに含まれるプログラマブルコントローラであって、
    前記受信部は、自装置と比べて前記演算処理部による演算負荷が高い稼働系のプログラマブルコントローラから、前記ログデータを受信するための制御を行う、
    請求項5に記載のプログラマブルコントローラ。
  7. 前記受信部は、演算処理を行う稼働系のプログラマブルコントローラと、稼働系のプログラマブルコントローラが演算処理を行わなくなった場合に演算処理を行う待機系のプログラマブルコントローラと、で構成されたシステムが複数存在し、当該複数のシステム間が通信ネットワークで接続されている場合に、前記通信ネットワークを介して、他のシステムに含まれる、自装置と比べて前記演算処理部による演算負荷が高い他のプログラマブルコントローラから、前記ログデータを受信するための制御を行う、
    請求項5に記載のプログラマブルコントローラ。
  8. 外部記憶部と接続可能な接続インターフェースと演算処理部とを有する、複数のプログラマブルコントローラで構成されるシステムであって、
    前記システムに含まれるプログラマブルコントローラのうち、演算負荷が高いプログラマブルコントローラが、
    前記システムで行われる処理に関する演算処理を行う演算処理部と、
    前記システムを構成するプログラマブルコントローラのうち、自装置と比べて前記演算処理部による演算負荷が少ない他のプログラマブルコントローラの前記記憶部に、前記演算処理部による演算処理に関するログデータを記憶させるために、当該ログデータを当該他のプログラマブルコントローラに送信するための制御を行う送信部と、を備え、
    前記システムに含まれるプログラマブルコントローラのうち、演算負荷が低いプログラマブルコントローラが、
    前記システムを構成するプログラマブルコントローラのうち、自装置と比べて前記演算処理部による演算負荷が高い他のプログラマブルコントローラから、当該他のプログラマブルコントローラの前記演算処理部による演算に関するログデータを受信するための制御を行う受信部と、
    前記受信部により受信された前記ログデータを、自装置の前記記憶部に書き込む書込部と、を備える、
    演算処理システム。
JP2014098946A 2014-05-12 2014-05-12 プログラマブルコントローラ、及び演算処理システム Active JP6517474B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2014098946A JP6517474B2 (ja) 2014-05-12 2014-05-12 プログラマブルコントローラ、及び演算処理システム
CN201580001377.1A CN105393176B (zh) 2014-05-12 2015-04-21 可编程控制器及运算处理系统
PCT/JP2015/062091 WO2015174223A1 (ja) 2014-05-12 2015-04-21 プログラマブルコントローラ、及び演算処理システム
US15/116,648 US20170052521A1 (en) 2014-05-12 2015-04-21 Programmable controller and arithmetic processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014098946A JP6517474B2 (ja) 2014-05-12 2014-05-12 プログラマブルコントローラ、及び演算処理システム

Publications (2)

Publication Number Publication Date
JP2015215803A true JP2015215803A (ja) 2015-12-03
JP6517474B2 JP6517474B2 (ja) 2019-05-22

Family

ID=54479767

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014098946A Active JP6517474B2 (ja) 2014-05-12 2014-05-12 プログラマブルコントローラ、及び演算処理システム

Country Status (4)

Country Link
US (1) US20170052521A1 (ja)
JP (1) JP6517474B2 (ja)
CN (1) CN105393176B (ja)
WO (1) WO2015174223A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017168706A1 (ja) * 2016-03-31 2017-10-05 三菱電機株式会社 ユニット及び制御システム

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6923038B2 (ja) * 2019-04-26 2021-08-18 株式会社安川電機 通信システム、通信方法、及びプログラム
JP6903093B2 (ja) * 2019-04-26 2021-07-14 株式会社安川電機 通信システム、通信方法、及びプログラム

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08328891A (ja) * 1995-06-02 1996-12-13 Mitsubishi Electric Corp 待機冗長化構成の二重化システム
JPH0991011A (ja) * 1995-09-26 1997-04-04 Omron Corp 負荷分散装置および方法
JP2000149080A (ja) * 1998-11-13 2000-05-30 Toshiba Corp 入退室管理装置及び入退室管理システム
JP2000357011A (ja) * 1999-06-16 2000-12-26 Toshiba Corp 分散型プラント監視装置
JP2004213412A (ja) * 2003-01-06 2004-07-29 Hitachi Ltd 二重化制御装置
JP2006317990A (ja) * 2005-05-10 2006-11-24 Keyence Corp プログラマブル・ロジック・コントローラ及び通信システム
JP2010176545A (ja) * 2009-01-30 2010-08-12 Mitsubishi Electric Corp プログラマブルコントローラおよびデータ収集装置
JP2013156871A (ja) * 2012-01-31 2013-08-15 Hitachi Ltd 多重化制御装置および多重化拡張ボード

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4742443A (en) * 1985-03-28 1988-05-03 Allen-Bradley Company Programmable controller with function chart interpreter
US5392424A (en) * 1992-06-11 1995-02-21 Allen-Bradley Company, Inc. Apparatus for detecting parity errors among asynchronous digital signals
JP3882783B2 (ja) * 2002-05-31 2007-02-21 オムロン株式会社 プログラマブルコントローラ及びcpuユニット並びに通信ユニット及び通信ユニットの制御方法
WO2009110303A1 (en) * 2008-03-01 2009-09-11 Kabushiki Kaisha Toshiba Memory system
JP5583046B2 (ja) * 2011-02-10 2014-09-03 株式会社東芝 二重化制御装置
EP2701021A4 (en) * 2011-04-18 2014-11-19 Mitsubishi Electric Corp PROGRAMMABLE LOGIC CONTROLLER
JP2012252374A (ja) * 2011-05-31 2012-12-20 Renesas Electronics Corp 情報処理装置
US9172743B2 (en) * 2012-12-31 2015-10-27 Futurewei Technologies, Inc. Scalable storage systems with longest prefix matching switches
US20140331014A1 (en) * 2013-05-01 2014-11-06 Silicon Graphics International Corp. Scalable Matrix Multiplication in a Shared Memory System
US9217774B2 (en) * 2013-11-01 2015-12-22 International Business Machines Corporation Cycle-accurate replay and debugging of running FPGA systems

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08328891A (ja) * 1995-06-02 1996-12-13 Mitsubishi Electric Corp 待機冗長化構成の二重化システム
JPH0991011A (ja) * 1995-09-26 1997-04-04 Omron Corp 負荷分散装置および方法
JP2000149080A (ja) * 1998-11-13 2000-05-30 Toshiba Corp 入退室管理装置及び入退室管理システム
JP2000357011A (ja) * 1999-06-16 2000-12-26 Toshiba Corp 分散型プラント監視装置
JP2004213412A (ja) * 2003-01-06 2004-07-29 Hitachi Ltd 二重化制御装置
JP2006317990A (ja) * 2005-05-10 2006-11-24 Keyence Corp プログラマブル・ロジック・コントローラ及び通信システム
JP2010176545A (ja) * 2009-01-30 2010-08-12 Mitsubishi Electric Corp プログラマブルコントローラおよびデータ収集装置
JP2013156871A (ja) * 2012-01-31 2013-08-15 Hitachi Ltd 多重化制御装置および多重化拡張ボード

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017168706A1 (ja) * 2016-03-31 2017-10-05 三菱電機株式会社 ユニット及び制御システム
JPWO2017168706A1 (ja) * 2016-03-31 2018-04-05 三菱電機株式会社 ユニット及び制御システム
US10534343B2 (en) 2016-03-31 2020-01-14 Mitsubishi Electric Corporation Unit and control system

Also Published As

Publication number Publication date
CN105393176A (zh) 2016-03-09
JP6517474B2 (ja) 2019-05-22
US20170052521A1 (en) 2017-02-23
CN105393176B (zh) 2018-05-08
WO2015174223A1 (ja) 2015-11-19

Similar Documents

Publication Publication Date Title
JP2018073414A5 (ja)
JP2004021556A5 (ja)
US20140006742A1 (en) Storage device and write completion notification method
JP2013041403A (ja) 情報処理装置および情報処理方法
WO2015174223A1 (ja) プログラマブルコントローラ、及び演算処理システム
KR20170013319A (ko) 데이터 관리 방법, 노드, 그리고 데이터베이스 클러스터를 위한 시스템
JP3988146B2 (ja) マルチノードシステム、ノード間クロスバスイッチ、ノード、スイッチプログラム及びノードプログラム
JP6024138B2 (ja) クラスタシステム
JP2007280313A (ja) 冗長化システム
JP2015191414A (ja) 制御装置、ディスクアレイ装置、及び制御方法、並びにコンピュータ・プログラム
JP6304048B2 (ja) 制御システム、および制御装置
JP2007334668A (ja) メモリダンプ方法、クラスタシステム、それを構成するノードおよびプログラム
CN105389127B (zh) 在存储系统中传输消息的方法、装置及存储系统、控制器
JP2008226111A (ja) 2重化コントローラシステム、その稼動系コントローラ
JP7003432B2 (ja) 二重化システム
JP2014197346A (ja) コントローラおよびプログラム
JP2007041953A (ja) 制御装置のバックアップ方法及びコンピュータプログラム、並びに制御システム
EP3327521B1 (en) Duplexing process control device
JP2016207142A (ja) 計算機及びメモリ故障診断方法
JPWO2017090517A1 (ja) ソフトウェアストレージユニット、バックアップ方法、およびバックアップ制御プログラムが記録された記録媒体
JP5748122B2 (ja) プラント制御装置
JP5217971B2 (ja) データ通信システム
JPS60134352A (ja) 二重化バス制御装置
JP2008046731A (ja) 制御装置及び二重化制御プログラム
JP6631370B2 (ja) マイクロコンピュータ及び電子制御装置

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20151102

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170307

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

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180326

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180807

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181004

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190418

R150 Certificate of patent or registration of utility model

Ref document number: 6517474

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150