JP6099846B2 - 演算ユニット、エンジニアリングツール及びエンジニアリングツールプログラム - Google Patents

演算ユニット、エンジニアリングツール及びエンジニアリングツールプログラム Download PDF

Info

Publication number
JP6099846B2
JP6099846B2 JP2016559383A JP2016559383A JP6099846B2 JP 6099846 B2 JP6099846 B2 JP 6099846B2 JP 2016559383 A JP2016559383 A JP 2016559383A JP 2016559383 A JP2016559383 A JP 2016559383A JP 6099846 B2 JP6099846 B2 JP 6099846B2
Authority
JP
Japan
Prior art keywords
program
arithmetic unit
control application
executed
execution result
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
JP2016559383A
Other languages
English (en)
Other versions
JPWO2016157362A1 (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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Application granted granted Critical
Publication of JP6099846B2 publication Critical patent/JP6099846B2/ja
Publication of JPWO2016157362A1 publication Critical patent/JPWO2016157362A1/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
    • G05B9/00Safety arrangements
    • G05B9/02Safety arrangements electric
    • G05B9/03Safety arrangements electric with multiple-channel loop, i.e. redundant control systems
    • 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

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Programmable Controllers (AREA)
  • Safety Devices In Control Systems (AREA)
  • Stored Programmes (AREA)

Description

本発明は、二重化システムのプログラマブルロジックコントローラを構成する演算ユニット、エンジニアリングツール及びエンジニアリングツールプログラムに関する。
二重化システムにおいて、制御系から待機系へのトラッキング処理でのデータ量が大きいことが原因で、制御系のプログラム実行周期に遅延が発生することがあった。
特許文献1には、予めサブルーチンプログラムで一つの連続したメモリ領域のみを使ってプログラムしておき、サブルーチンプログラムの実行有無によってサブルーチンプログラムに対応する一つの連続したメモリ領域を転送する技術が知られている。上記の方法によれば、制御系から待機系へのトラッキング処理でのデータ量の低減を図れる。
特開2008−46731号公報
しかしながら、上記従来の技術では、メモリに分散して割り付けられている各デバイスを使用したサブルーチンプログラムでは、デバイスに格納されるプログラム実行結果データを制御系と待機系とで同期できないという問題があった。
本発明は、上記に鑑みてなされたものであって、メモリに分散して割り付けられているプログラム実行結果データを制御系と待機系とで同期できる演算ユニットを得ることを目的とする。
上述した課題を解決し、目的を達成するために、本発明は、二重化システムのプログラマブルロジックコントローラを構成する演算ユニットであって、複数のプログラム命令を含んだ制御アプリケーションを実行してプログラム実行結果データを生成するとともに、制御アプリケーション中の1以上のプログラム命令をモジュール化したプログラムモジュールごとに、実行したか否かをプログラム実行結果テーブルに記録するプログラム命令処理部を有する。また、本発明は、プログラム実行結果データの記録先がプログラム命令ごとに定義された参照アドレス管理テーブルを記憶する転送アドレス管理メモリを有する。また、本発明は、参照アドレス管理テーブル及びプログラム実行結果データに基づいて、プログラム命令処理部が実行したプログラムモジュールに含まれるプログラム命令のプログラム実行結果データのトラッキング処理を行うトラッキング処理部を有する。
本発明にかかる演算ユニットは、メモリに分散して割り付けられているプログラム実行結果データを制御系と待機系とで同期できるという効果を奏する。
本発明の実施の形態にかかる演算ユニットを用いて二重化システムにしたプログラマブルロジックコントローラ及びエンジニアリングツールを示す図 実施の形態にかかる演算ユニットを用いて二重化システムにしたプログラマブルロジックコントローラの構成を示す図 実施の形態にかかる演算ユニットのハードウェア構成を示す図 実施の形態にかかるエンジニアリングツールの構成を示す図 実施の形態にかかるエンジニアリングツールを実現する情報処理装置のハードウェア構成を示す図 実施の形態にかかるエンジニアリングツールの動作の流れを示すフローチャート 実施の形態にかかるエンジニアリングツールのプログラムエディタで作成されるプログラムの構成例を示す図 実施の形態にかかるエンジニアリングツールのトラッキング範囲設定機能部がトラッキング範囲を変更又は追加する処理の流れを示すフローチャート 実施の形態にかかる演算システムの参照アドレス管理テーブルの一例を示す図 実施の形態にかかる演算ユニットのデータトラッキング処理の流れを示すフローチャート 実施の形態にかかる演算ユニットのプログラム実行結果データの一例を示す図 実施の形態にかかる演算装置のプログラム実行結果テーブルの一例を示す図
以下に、本発明の実施の形態にかかる演算ユニット、エンジニアリングツール及びエンジニアリングツールプログラムを図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
実施の形態.
図1は、本発明の実施の形態にかかる演算ユニットを用いて二重化システムにしたプログラマブルロジックコントローラ及びエンジニアリングツールを示す図である。実施の形態のプログラマブルロジックコントローラ10は、CPU(Central Processing Unit)ユニットと称される二つの演算ユニット11,11を備えて二重化システムを構成している。なお、プログラマブルロジックコントローラ10を構成するユニットで演算ユニット11,11以外のユニットは図示を省略している。
演算ユニット11は制御系であり、演算ユニット11は待機系である。演算ユニット11にはエンジニアリングツールが接続されている。
演算ユニット11,11は、制御系及び待機系の関係にあるため、同じ構造である。以下の説明では、演算ユニット11,11に共通する事項について説明するときは、演算ユニット11と表記し、両者を区別する必要がある場合は符号に下付数字を付与して演算ユニット11又は演算ユニット11と表記する。後述する演算ユニット11の内部の構成要素についても同様である。
図2は、実施の形態にかかる演算ユニットを用いて二重化システムにしたプログラマブルロジックコントローラの構成を示す図である。演算ユニット11は、制御アプリケーションプログラム、サブルーチンプログラムおよびファンクションブロックの各プログラム命令を実行するプログラム命令処理部111と、プログラム実行結果データ121を記憶するデバイスメモリ112と、プログラム実行結果データ121をプログラム実行周期ごとにトラッキングバッファ1131に書き込んで、演算ユニット11のトラッキングバッファ1131に複写することによりプログラム実行結果データ121を制御系から待機系へ転送するトラッキング処理部113と、プログラム実行結果テーブル122を記憶する転送制御メモリ114と、参照アドレス管理テーブル123を記憶する転送アドレス管理メモリ115と、各プログラム及び実行タイミングを管理する制御アプリケーション124を格納する制御アプリケーション格納部116とを有する。
演算ユニット11は、演算ユニット11と同様の構成であり、プログラム命令処理部111、デバイスメモリ112、トラッキング処理部113、転送制御メモリ114と、転送アドレス管理メモリ115及び制御アプリケーション格納部116を有する。なお、待機系である演算ユニット11は、プログラム実行結果データ121、プログラム実行結果テーブル122、参照アドレス管理テーブル123及び制御アプリケーション124を保持していない。
プログラム実行結果テーブル122は、プログラム命令処理部111がプログラム命令を実行したか否かを示すテーブルであり、プログラム実行周期ごとに更新される。
プログラム実行結果データ121は、演算ユニット11がプログラム実行周期ごとにプログラムを実行した結果、生成されるデータである。
参照アドレス管理テーブル123は、転送するデータが格納された各先頭デバイスの位置及びサイズを管理するテーブルである。
プログラム命令処理部111が実行するプログラム、サブルーチンプログラムおよびファンクションブロックは、変数名であるデバイスとコマンドであるプログラム命令とで構成されており、各デバイスは分散してデバイスメモリ112に割り付けられている。制御系である演算ユニット11でプログラムが実行された結果であるプログラム実行結果データ121は、デバイスメモリ112へ格納される。
図3は、実施の形態にかかる演算ユニットのハードウェア構成を示す図である。演算ユニット11は、プログラム及びファームウェアを実行する演算装置51、演算装置51がワークエリアに用いるメモリ52、ファームウェアを格納する不揮発性メモリ53、プログラム、データ及びテーブルを記憶する記憶装置54及びエンジニアリングツールとの通信用の通信装置55を有する。演算装置51には、CPUを適用できる。記憶装置54には、フラッシュメモリを適用できる。
図2に示したプログラム命令処理部111及びトラッキング処理部113は、演算装置51がメモリ52をワークエリアにしてファームウェアを実行することによって実現される。デバイスメモリ112、転送制御メモリ114、転送アドレス管理メモリ115及び制御アプリケーション格納部116は、記憶装置54によって実現される。
図4は、実施の形態にかかるエンジニアリングツールの構成を示す図である。エンジニアリングツール20は、ユーザが制御アプリケーションを作成するためのユーザインタフェースであるプログラムエディタ21、プログラムエディタ21で作成した制御アプリケーションを演算ユニット11のプログラム命令処理部111で実行できる形式に変換するコンパイラ22、参照アドレス管理テーブル123をユーザが閲覧、作成及び編集するためのユーザインタフェースであるトラッキング範囲設定機能部23、エンジニアリングツール20で作成した制御アプリケーション及び参照アドレス管理テーブル123を演算ユニット11の転送アドレス管理メモリ115及び制御アプリケーション格納部116に書き込んだり、読み出したりする処理を行う通信機能部24を有する。
図5は、実施の形態にかかるエンジニアリングツールを実現する情報処理装置のハードウェア構成を示す図である。情報処理装置60は、プログラムを実行する演算装置61、演算装置61がワークエリアに用いるメモリ62、エンジニアリングツールプログラム631が記憶された記憶装置63、情報を表示する表示装置64、情報入力用のユーザインタフェースである入力装置65、及び演算ユニット11との通信用の通信装置66を有する。情報処理装置60には、汎用のコンピュータ端末を適用できる。演算装置61にはCPUを適用できる。記憶装置63にはフラッシュメモリを適用できる。表示装置64には、液晶表示装置を適用できる。入力装置65には、キーボード及びマウスを適用できる。
演算装置61がメモリ62をワークエリアにしてエンジニアリングツールプログラム631を実行することにより、情報処理装置60は、エンジニアリングツール20となる。すなわち、イントールされたエンジニアリングツールプログラム631を実行中の情報処理装置60は、エンジニアリングツール20を構成する。
図4に示したプログラムエディタ21、コンパイラ22及びトラッキング範囲設定機能部23は、演算装置61がメモリ62をワークエリアにしてエンジニアリングツールプログラム631を実行することによって実現される。通信機能部24は、エンジニアリングツールプログラム631を実行する演算装置61が通信装置66を制御することによって実現される。
図6は、実施の形態にかかるエンジニアリングツールの動作の流れを示すフローチャートである。ステップS101において、プログラムエディタ21は、入力装置65を通じてユーザにより行われた制御アプリケーションに含まれるプログラムの作成操作を受け付ける。プログラムの作成には、1以上のプログラム命令を一纏めにしてモジュール化した機能単位(Program Organization Unit, POU)のプログラムモジュールであるファンクションブロック及び、1以上のプログラム命令又はファンクションブロックを一纏めにしてモジュール化したサブルーチンプログラムを用いることができる。一例を挙げると、ファンクションブロックは、PID(Proportional-Integral-Derivative)制御のような機能単位のプログラムモジュールである。なお、複数のファンクションブロックを纏めたものは、一つのファンクションブロックと見なすことができる。
サブルーチンプログラムは、1以上のプログラム命令又はファンクションブロックを一纏めにしてモジュール化したものである。したがって、ファンクションブロックを含むサブルーチンプログラムは、1以上のファンクションブロックと、ファンクションブロックに含まれない命令とで構成される。
図7は、実施の形態にかかるエンジニアリングツールのプログラムエディタで作成されるプログラムの構成例を示す図である。プログラム[0]71は、ファンクションブロック[0]713及びファンクションブロック[1]714と、これらのファンクションブロックに含まれないプログラム命令[0]715及びプログラム命令[1]716とからなるサブルーチンプログラム[0]711と、プログラム命令[2]717からなるサブルーチンプログラム[1]712とで構成されている。プログラム[1]72は、ファンクションブロック[2]721と、ファンクションブロック[2]721に含まれないプログラム命令[3]722とで構成されている。プログラム[x]73は、ファンクションブロック[z]732と、ファンクションブロック[z]732に含まれないプログラム命令[w]733とからなるサブルーチンプログラム[y]731で構成されている。
図7に示すように、プログラム[0]71及びプログラム[x]73は、ファンクションブロック及びサブルーチンプログラムを用いて構成されている。
上記のように、実施の形態にかかるエンジニアリングツール20のプログラムエディタ21は、機能単位(Program Organization Unit, POU)であるファンクションブロック単位でモジュール化している。ただし、モジュール化は、ファンクションブロック単位に限定されることはない。
プログラムは、必ずしもサブルーチンプログラム又はファンクションブロックを用いて構成される必要はない。図7のプログラム[1]72は、ファンクションブロックを用いているが、サブルーチンプログラムを用いずに構成されている。
ステップS102において、コンパイラ22は、プログラムエディタ21を用いて作成されたプログラムをコンパイルし、プログラム命令処理部111が実行可能な形式に変換して、制御アプリケーションを生成する。
ステップS103において、コンパイラ22はトラッキング範囲を変更又は追加するかを判断する。トラッキング範囲を変更又は追加する場合は、ステップS103でYesとなり、ステップS104でトラッキング範囲設定機能部23は、トラッキング範囲を変更又は追加する。
図8は、実施の形態にかかるエンジニアリングツールのトラッキング範囲設定機能部がトラッキング範囲を変更又は追加する処理の流れを示すフローチャートである。ステップS201で、トラッキング範囲設定機能部23は、制御アプリケーション内のあるプログラムに含まれるプログラム命令の引数に割り付いているデバイス及びサイズを取得する。ステップS202で、トラッキング範囲設定機能部23は、取得したデバイス及びサイズを参照アドレス管理テーブル123に格納する。ステップS203で、トラッキング範囲設定機能部23は、参照アドレス管理テーブル123内の連続しているデバイスのサイズを加算する。ステップS204で、トラッキング範囲設定機能部23は、制御アプリケーション内に未処理プログラムがあるか否かを判断する。未処理のプログラムがあれば、ステップS204でYesとなり、ステップS201に進む。未処理のプログラムがなければステップS204でNoとなり、処理を終了する。以上の手順により、トラッキング範囲設定機能部23は、参照アドレス管理テーブル123を作成する。
ステップS105で、通信機能部24は、二重化システムの制御系である演算ユニット11の制御アプリケーション格納部116に制御アプリケーション124を書き込むとともに、参照アドレス管理テーブル123を転送アドレス管理メモリ115に書き込む。
トラッキング範囲を変更又は追加しない場合は、ステップS103でNoとなり、ステップS105へ進む。この場合は、制御アプリケーション124を制御アプリケーション格納部116に書き込む処理のみを行い、参照アドレス管理テーブル123を転送アドレス管理メモリ115に書き込む処理は省略できる。
図9は、実施の形態にかかる演算システムの参照アドレス管理テーブルの一例を示す図である。参照アドレス管理テーブル123は、制御アプリケーション124に含まれるプログラム中で使用される各デバイスについて、転送する先頭デバイス及び先頭デバイスからのサイズが定義されている。なお、複数のプログラム、サブルーチンプログラム又はファンクションブロックで共通して使用するデバイスについては、参照アドレス管理テーブルに、「共通」の欄を設けて、転送する先頭デバイス及び先頭デバイスからのサイズを定義している。
次に、実施の形態にかかる演算ユニットの動作について説明する。図10は、実施の形態にかかる演算ユニットのデータトラッキング処理の流れを示すフローチャートである。ステップS301で、プログラム命令処理部111は、制御アプリケーション124を実行する。ステップS302で、プログラム命令処理部111は、プログラム実行結果データ121をデバイスメモリ112に格納する。図11は、実施の形態にかかる演算ユニットのプログラム実行結果データの一例を示す図である。プログラム実行結果データ121は、先頭デバイス1211と制御アプリケーション124の実行結果である実行結果データ1212とで構成される。
ステップS303で、プログラム命令処理部111は、実行したプログラム中のサブルーチンプログラム、ファンクションブロック又はプログラム命令で使用するデバイスが転送対象であることを示すプログラム実行結果テーブル122を作成し、転送制御メモリ114に書き込む。なお、プログラム番号が「共通」となっているデバイスについては、実行有無にかかわらず転送対象にしてプログラム実行結果テーブル122を作成する。
図12は、実施の形態にかかる演算装置のプログラム実行結果テーブルの一例を示す図である。プログラム実行結果テーブル122は、制御アプリケーション124内のプログラムの各々について実行されたか否かを示している。プログラム[0]71が実行であり、プログラム[0]71に含まれるサブルーチンプログラム[0]711が実行される。サブルーチンプログラム[0]711に含まれるファンクションブロック[0]713及びプログラム命令[0]715は実行であるが、ファンクションブロック[1]714及びプログラム命令[1]716は不実行である。また、プログラム[0]71に含まれるサブルーチンプログラム[1]712は不実行であり、プログラム命令[2]717は不実行である。プログラム[1]72は実行であり、プログラム[1]72に含まれるファンクションブロック[2]721は実行される。しかし、プログラム[1]72に含まれるプログラム命令[3]722は不実行である。プログラム[x]73は、不実行であるため、プログラム[x]73に含まれるサブルーチンプログラム731[y]も不実行である。従って、サブルーチンプログラム[y]731に含まれるファンクションブロック[z]732及びプログラム命令[w]733も不実行である。
プログラム命令処理部111は、実行しなかったサブルーチンプログラム内のファンクションブロックに含まれるプログラム命令を全て実行しなかったとみなして、プログラム実行結果テーブル122に記録する。これにより、サブルーチンプログラム内のファンクションブロックに含まれるプログラム命令を実行したか否かの判断を省略し、演算装置51の負荷を低減できる。
図12では、実行有無が実行となっているサブルーチンプログラム、ファンクションブロック又はプログラムは、使用するデバイスが転送対象であることを示している。
ステップS304で、プログラム命令処理部111は、未実行のプログラムがあるか否かを判断する。未実行のプログラムがあれば、ステップS304でYesとなり、ステップS301へ進んで未実行のプログラムを実行する。
未実行のプログラムがなければ、ステップS304でNoとなり、ステップS305でトラッキング処理部113は、プログラム実行結果テーブル122及び参照アドレス管理テーブル123に基づいて、転送対象となっているサブルーチンプログラム、ファンクションブロック及びプログラム命令の先頭デバイスから参照アドレス管理テーブル123に規定されたサイズ分のデータをデバイスメモリから読み出して、トラッキングバッファ1131に書き込む。
以上の手順により、プログラム命令処理部111が実行したプログラム、サブルーチンプログラム及びファンクションブロックに含まれるプログラム命令で使用されるデバイス、及び実行有無に関わらず転送すると別途設定したデバイスのデータのみがトラッキング処理で待機系の演算ユニット11に転送される。これにより、デバイスが分散してデバイスメモリに割り付けられていても、トラッキング処理を実行できる。また、実行したプログラムに含まれるデバイスのデータを全て転送する場合と比較して、トラッキング処理で制御系から待機系へ転送するデータ量を低減できる。
なお、上記の説明においては、ファンクションブロックの実行有無により、ファンクションブロック内のプログラム命令で使用するデバイスを転送対象とするか否かを決定しているが、ファンクションブロック単位でのデバイスを転送対象とするか否かを判断せず、サブルーチンプログラム単位でのみ判断してもよい。サブルーチンプログラム中に使用頻度の異なるファンクションブロックが含まれている場合には、ファンクションブロック単位でデバイスを転送対象とするか否かを判断することで演算装置51の負荷を低減できるが、サブルーチンプログラム中のファンクションブロックの使用頻度に偏りがない場合には、ファンクションブロックでデバイスを転送対象とするか否かを判断しない方が演算装置51の負荷を低減できる。また、ファンクションブロック中のプログラム命令について、個別に転送対象とするか否かを決定しても良い。
上記のように、実施の形態では、プログラム、サブルーチンプログラム、ファンクションブロック及びプログラム命令の実行有無をプログラム実行結果テーブルに格納し、実行されたプログラム命令に割り付けられた各トラッキング転送範囲のデータのみトラッキング転送を行う。したがって、プログラム中のデバイスが分散してメモリに割り付けられていても、トラッキング転送を実行できる。また、二重化システムのトラッキングデータの転送量が少なくなり、プログラム実行周期を短縮できる。
また、1以上のプログラム命令を一纏めにしてモジュール化したファンクションブロック単位で実行したか否かを判断することにより、ファンクションブロックに含まれるプログラム命令を個別に実行したか否か判断する場合と比較して、演算装置51の負荷を低減できる。
また、複数のプログラム、サブルーチンプログラム又はファンクションブロックで共通して用いられるデバイスは、プログラム、サブルーチンプログラム及びファンクションブロックの実行有無によらず毎回転送するため、同じデバイスのデータが重複して転送対象となることを防ぎ、転送するデータ量を低減できる。
また、実施の形態にかかるエンジニアリングツール20を用いることにより、プログラム作成者は、制御アプリケーション124を作成してコンパイルし、演算ユニット10へ書込むだけで、メモリ52に分散して割り付けられているプログラム実行結果データ121を制御系と待機系とで同期できる二重化システムを構築できる。特に大容量のトラッキングを必要とする二重化システムに効果があり、制御スキャンの速度を高め、高精度な制御が可能となる。
また、実施の形態にかかるエンジニアリングツール20を用いることにより、プログラム作成者は、プログラム実行結果データ121の格納場所の連続性を意識する必要がない。また、制御アプリケーション124を作成、変更又は追加しても、トラッキング転送に影響を与えないため、自由に制御アプリケーション124を作成、変更及び追加ができる。特に、メモリ52にバラバラに割り付けられたデバイス又はラベル(変数)を使った制御アプリケーション124を変更を容易に行える。ラベルを使ったプログラムでは、コンパイラ22が自動的にメモリ52に連続して割り付けるため、変更すると、再度全ラベルを割り付け直す必要があるが、実施の形態にかかるエンジニアリングツール20を用いれば、部分的に変更した箇所のみコンパイルすればよいため、コンパイル時間が掛からない。これにより,プログラム作成者はプログラミング工数を削減できる。
以上の実施の形態に示した構成は、本発明の内容の一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、本発明の要旨を逸脱しない範囲で、構成の一部を省略、変更することも可能である。
10 プログラマブルロジックコントローラ、11,11,11 演算ユニット、20 エンジニアリングツール、21 プログラムエディタ、22 コンパイラ、23 トラッキング範囲設定機能部、24 通信機能部、51,61 演算装置、52,62 メモリ、53 不揮発性メモリ、54,63 記憶装置、55 通信装置、64 表示装置、65 入力装置、66 通信装置、71 プログラム[0]、72 プログラム[1]、73 プログラム[x]、111,111,111 プログラム命令処理部、112,112,112 デバイスメモリ、113,113,113 トラッキング処理部、113,113,113 トラッキング処理部、114,114,114 転送制御メモリ、115,115,115 転送アドレス管理メモリ、116,116,116 制御アプリケーション格納部、121 プログラム実行結果データ、122 プログラム実行結果テーブル、123 参照アドレス管理テーブル、124 制御アプリケーション、711 サブルーチンプログラム[0]、712 サブルーチンプログラム[1]、713 ファンクションブロック[0]、714 ファンクションブロック[1]、715 プログラム命令[0]、716 プログラム命令[1]、717 プログラム命令[2]、721 ファンクションブロック[2]、722 プログラム命令[3]、731 サブルーチンプログラム[y]、732 ファンクションブロック[z]、733 プログラム命令[w]、1131,1131,1131 トラッキングバッファ。

Claims (6)

  1. 二重化システムのプログラマブルロジックコントローラを構成する演算ユニットであって、
    複数のプログラム命令を含んだ制御アプリケーションを実行してプログラム実行結果データを生成するとともに、前記制御アプリケーション中の1以上のプログラム命令をモジュール化したプログラムモジュールごとに、実行したか否かをプログラム実行結果テーブルに記録するプログラム命令処理部と、
    前記プログラム実行結果データの記録先が前記プログラム命令ごとに定義された参照アドレス管理テーブルを記憶する転送アドレス管理メモリと、
    前記参照アドレス管理テーブル及び前記プログラム実行結果テーブルに基づいて、前記プログラム命令処理部が実行したプログラムモジュールに含まれるプログラム命令のプログラム実行結果データのトラッキング処理を行うトラッキング処理部とを有することを特徴とする演算ユニット。
  2. 前記参照アドレス管理テーブルは、前記プログラム命令が用いるデバイスと、データサイズとによって前記プログラム実行結果データの記録先が定義されることを特徴とする請求項1に記載の演算ユニット。
  3. 前記プログラムモジュールは、1以上のプログラム命令を一纏めにしたファンクションブロックであることを特徴とする請求項1に記載の演算ユニット。
  4. 前記制御アプリケーションは、前記ファンクションブロックを1以上含んだサブルーチンプログラムを少なくとも一つ含み、
    前記プログラム命令処理部は、実行しなかったサブルーチンプログラム内のファンクションブロックに含まれるプログラム命令を全て実行しなかったとみなして、前記プログラム実行結果テーブルに記録することを特徴とする請求項3に記載の演算ユニット。
  5. 二重化システムのプログラマブルロジックコントローラを構成する演算ユニットが実行する制御アプリケーションを作成するエンジニアリングツールであって、
    複数のプログラム命令を含んだ前記制御アプリケーションの作成用のユーザインタフェースであるプログラムエディタと、
    前記制御アプリケーションが前記演算ユニットで実行された際に生成されるプログラム実行結果データの前記演算ユニット内での記録先を前記プログラム命令ごとに定義する参照アドレス管理テーブルを作成するトラッキング範囲設定機能部と、
    制御アプリケーション及び前記参照アドレス管理テーブルを前記演算ユニットへ送信する通信機能部とを有することを特徴とするエンジニアリングツール。
  6. 二重化システムのプログラマブルロジックコントローラを構成する演算ユニットが実行する制御アプリケーションを作成する処理を情報処理装置に実行させるエンジニアリングツールプログラムであって、
    前記情報処理装置に、
    複数のプログラム命令を含んだ前記制御アプリケーションを生成する処理と、
    前記制御アプリケーションが前記演算ユニットで実行された際に生成されるプログラム実行結果データの前記演算ユニット内での記録先を前記プログラム命令ごとに定義する参照アドレス管理テーブルを作成する処理と、
    制御アプリケーション及び前記参照アドレス管理テーブルを前記演算ユニットへ送信する処理と実行させることを特徴とするエンジニアリングツールプログラム。
JP2016559383A 2015-03-30 2015-03-30 演算ユニット、エンジニアリングツール及びエンジニアリングツールプログラム Active JP6099846B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2015/059930 WO2016157362A1 (ja) 2015-03-30 2015-03-30 演算ユニット、エンジニアリングツール及びエンジニアリングツールプログラム

Publications (2)

Publication Number Publication Date
JP6099846B2 true JP6099846B2 (ja) 2017-03-22
JPWO2016157362A1 JPWO2016157362A1 (ja) 2017-04-27

Family

ID=57005315

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016559383A Active JP6099846B2 (ja) 2015-03-30 2015-03-30 演算ユニット、エンジニアリングツール及びエンジニアリングツールプログラム

Country Status (3)

Country Link
JP (1) JP6099846B2 (ja)
CN (1) CN107430385B (ja)
WO (1) WO2016157362A1 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005092520A (ja) * 2003-09-17 2005-04-07 Fuji Electric Systems Co Ltd 2重化コントローラシステム、その等値化方法
JP2007080116A (ja) * 2005-09-16 2007-03-29 Mitsubishi Electric Corp 二重化システム
JP2008046731A (ja) * 2006-08-11 2008-02-28 Toshiba Corp 制御装置及び二重化制御プログラム
JP2012133610A (ja) * 2010-12-22 2012-07-12 Hitachi Ltd 2重化プロセス制御装置および制御データ一致化方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001092691A (ja) * 1999-09-20 2001-04-06 Matsushita Electric Ind Co Ltd プログラム実行履歴管理装置
JP2007226413A (ja) * 2006-02-22 2007-09-06 Hitachi Ltd メモリダンプ方法、メモリダンププログラム、及び、計算機システム
JP2007328595A (ja) * 2006-06-08 2007-12-20 Nec Corp サーバシステムおよびそのシステムにおける同期化方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005092520A (ja) * 2003-09-17 2005-04-07 Fuji Electric Systems Co Ltd 2重化コントローラシステム、その等値化方法
JP2007080116A (ja) * 2005-09-16 2007-03-29 Mitsubishi Electric Corp 二重化システム
JP2008046731A (ja) * 2006-08-11 2008-02-28 Toshiba Corp 制御装置及び二重化制御プログラム
JP2012133610A (ja) * 2010-12-22 2012-07-12 Hitachi Ltd 2重化プロセス制御装置および制御データ一致化方法

Also Published As

Publication number Publication date
CN107430385A (zh) 2017-12-01
JPWO2016157362A1 (ja) 2017-04-27
WO2016157362A1 (ja) 2016-10-06
CN107430385B (zh) 2018-11-30

Similar Documents

Publication Publication Date Title
JP4621786B2 (ja) 情報処理装置、並列処理最適化方法およびプログラム
JP6633119B2 (ja) 自律的メモリの方法及びシステム
WO2004079583A1 (ja) データ転送制御装置およびdmaデータ転送制御方法
JP2010086410A (ja) メモリ保護方法、情報処理装置、メモリ保護プログラム及びメモリ保護プログラムを記録した記録媒体
US8266416B2 (en) Dynamic reconfiguration supporting method, dynamic reconfiguration supporting apparatus, and dynamic reconfiguration system
KR20160046623A (ko) 재구성 가능 프로세서 및 그 동작 방법
JP2016035692A (ja) 画像処理装置、システム、情報処理方法及びプログラム
JP6954256B2 (ja) エンジニアリング装置、エンジニアリング装置の制御方法及びプログラム
JP6099846B2 (ja) 演算ユニット、エンジニアリングツール及びエンジニアリングツールプログラム
JP2015210769A (ja) 情報処理装置、情報処理方法およびプログラム
RU2666334C2 (ru) Способ обработки данных
JP6455096B2 (ja) コントロールシステム、その支援装置、プログラマブルコントロール装置
JP2007257560A (ja) 複数の処理装置を備えたシステム上で実行されるプログラムのトレース方法、および、複数の処理装置を備えたシステム
JP6076564B2 (ja) システム設計支援ツール
JP5420358B2 (ja) バッチ処理実行方法及びバッチ処理実行システム
JP2010231295A (ja) 解析システム
JP6295914B2 (ja) プログラマブルコントローラシステム、その支援装置、プログラマブルコントローラ
JP5832368B2 (ja) エンジニアリング装置
CN107025144B (zh) 用于写入以及读取数据集的方法
KR102066212B1 (ko) 병렬 시스템에서의 데이터 복사 방법 및 이를 수행하기 위한 병렬 시스템
JP7080698B2 (ja) 情報処理装置
US9928045B2 (en) Information processing apparatus, compile method and non-transitory recording medium storing compile program
JP2022178916A (ja) 機械学習システム、機械学習プログラム、及び、機械学習方法
JP2016170629A (ja) 画像処理装置、その制御方法およびプログラム
JP2012190150A (ja) フォールトトレラントシステム、メモリ制御方法、及びプログラム

Legal Events

Date Code Title Description
A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20170113

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170221

R150 Certificate of patent or registration of utility model

Ref document number: 6099846

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250