JP5012548B2 - Programmable controller - Google Patents

Programmable controller Download PDF

Info

Publication number
JP5012548B2
JP5012548B2 JP2008027772A JP2008027772A JP5012548B2 JP 5012548 B2 JP5012548 B2 JP 5012548B2 JP 2008027772 A JP2008027772 A JP 2008027772A JP 2008027772 A JP2008027772 A JP 2008027772A JP 5012548 B2 JP5012548 B2 JP 5012548B2
Authority
JP
Japan
Prior art keywords
parameter
check code
programmable controller
held
plc
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
JP2008027772A
Other languages
Japanese (ja)
Other versions
JP2009187373A (en
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 JP2008027772A priority Critical patent/JP5012548B2/en
Publication of JP2009187373A publication Critical patent/JP2009187373A/en
Application granted granted Critical
Publication of JP5012548B2 publication Critical patent/JP5012548B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、パラメータを参照し、そのパラメータに応じて所定の動作をするプログラマブルコントローラに関する。   The present invention relates to a programmable controller that refers to a parameter and performs a predetermined operation in accordance with the parameter.

従来から知られているように、プログラマブルコントローラ(以下、PLCとも略記する)は、ファクトリ・オートメーション(FA)の制御装置として用いられている。このPLCは、一般に複数のモジュールから構成される。これらのモジュールには、PLC全体の制御を統率するためのCPUモジュール、FAの生産装置や設備装置の適所に取り付けられたスイッチやセンサの信号を入力するための入力モジュール、アクチュエータなどに制御信号を出力するための出力モジュール、通信ネットワークに接続するための通信モジュールおよびこれらの各モジュールに作動用電力を供給する電源モジュールなどがある。PLCはこれらのモジュールを適宜組み合わせて構成される。
CPUモジュールは、入力モジュールから入力された信号をCPUモジュールのI/O(Input/Output)メモリに取り込み(入力リフレッシュ)、予め登録されたユーザプログラム(シーケンスプログラム)に基づき論理演算し(演算実行)、その演算実行結果をI/Oメモリに書き込んで出力モジュールに送り出し(出力リフレッシュ)、その後いわゆる周辺のシステム処理(ローダ処理、各種システム処理)をする一連の処理を、繰り返す。CPUモジュールは、これらの処理を繰り返すことで、対象とする機器(以降、制御対象機器と呼ぶ)を制御する。
As is conventionally known, a programmable controller (hereinafter also abbreviated as PLC) is used as a control device for factory automation (FA). This PLC is generally composed of a plurality of modules. These modules include a CPU module for controlling the overall control of the PLC, an input module for inputting signals from switches and sensors installed at appropriate positions in FA production equipment and facility equipment, and control signals to actuators. There are an output module for outputting, a communication module for connecting to a communication network, and a power supply module for supplying operating power to each of these modules. The PLC is configured by appropriately combining these modules.
The CPU module fetches a signal input from the input module into an I / O (Input / Output) memory of the CPU module (input refresh), and performs a logical operation based on a user program (sequence program) registered in advance (calculation execution). The operation execution result is written in the I / O memory, sent to the output module (output refresh), and then a series of processes for performing so-called peripheral system processing (loader processing, various system processing) is repeated. The CPU module controls a target device (hereinafter referred to as a control target device) by repeating these processes.

一方、このような制御対象機器のインタフェース仕様にはいろいろな種類が存在する。その制御対象機器のインタフェース仕様に応じていちいち入出力モジュールなどを交換していたのでは効率が悪いため、一般的にPLCは制御対象機器のインタフェース仕様に応じて動作モードを決定するパラメータをPLC内に備え、そのパラメータに従った動作設定をするようにしている。このパラメータは、PLCに内蔵された不揮発性メモリに予め保持されており、制御対象機器と入出力モジュール間の信号の扱いや、CPUモジュールと入出力モジュール間の信号の扱い方が定められて、PLCの電源ON時に読み込まれる。こうしてPLCは、1つのハードウェアによって多種のアプリケーション(ユーザ要求)に対応できるようになっている。
また前述したパラメータはユーザ仕様に応じて適宜更新されて使われる。このパラメータを更新するには、PLCにプログラミングローダなどの設定機器を接続して、パラメータとこのパラメータの更新を促すためのフラグ情報などと共にPLCにダウンロードする。PLCはそのフラグ情報を定期的にチェックすることでパラメータの更新を実行する。
ちなみに、現在設定中のパラメータを変更すべく不揮発性メモリのパラメータを書き換えるには、概略以下のような手順にて行う。すなわち、(1)まずPLCを停止させ、ジャンパーピンやディップスイッチ等によって、PLC の動作モードをパラメータ更新モードに変更する。(2)次いで、パラメータのダウンロードを実行する。これにより、パラメータは不揮発性メモリに保持される。(3)ダウンロードが完了したらならば、PLCをプログラム実行モードに変更した後、再起動させる。
On the other hand, there are various types of interface specifications for such control target devices. Since it is inefficient to replace the input / output module according to the interface specification of the control target device, the PLC generally sets a parameter for determining the operation mode according to the interface specification of the control target device in the PLC. For this reason, the operation is set according to the parameters. This parameter is stored in advance in a nonvolatile memory built in the PLC, and the handling of signals between the control target device and the input / output module and the handling of signals between the CPU module and the input / output module are determined. Read when the PLC is powered on. In this way, the PLC can respond to various applications (user requests) with a single piece of hardware.
The above-described parameters are used by being updated as appropriate according to user specifications. In order to update this parameter, a setting device such as a programming loader is connected to the PLC, and the parameter and flag information for prompting the parameter to be updated are downloaded to the PLC. The PLC performs parameter updating by periodically checking the flag information.
Incidentally, in order to rewrite the parameters of the nonvolatile memory so as to change the currently set parameters, the following procedure is generally performed. That is, (1) First, the PLC is stopped, and the operation mode of the PLC is changed to the parameter update mode by a jumper pin, a dip switch or the like. (2) Next, parameter download is executed. Thereby, the parameter is held in the nonvolatile memory. (3) When downloading is completed, the PLC is changed to the program execution mode and then restarted.

このような、PLCを停止させた後に、パラメータをダウンロードして再起動する手間を省いたPLCが提案されている。(例えば、特許文献1を参照)。このPLCは、プログラム稼動中に保持されているプログラムの書き換えをするためのプログラムを保持する第1メモリと、この第1メモリに保持されたプログラムをバックアップする第2メモリと、プログラムを実行する際に使用する第3メモリとを備える。そしてPLCは、稼働中にダウンロードしたプログラムを第2メモリに保持させ、ダウンロードが正常に行なわれたか否かを確認し、そのダウンロードしたプログラムを第1メモリにコピー後、第3メモリに展開するように構成されている。
特開2004−272629号公報
There has been proposed a PLC that saves the trouble of downloading and restarting parameters after stopping the PLC. (For example, see Patent Document 1). This PLC includes a first memory that holds a program for rewriting a program held during program operation, a second memory that backs up the program held in the first memory, and when executing the program. And a third memory for use. Then, the PLC holds the program downloaded during operation in the second memory, confirms whether or not the download has been performed normally, copies the downloaded program to the first memory, and then expands the program to the third memory. It is configured.
JP 2004-272629 A

従来のPLCは、不揮発性メモリに保持されたパラメータの更新を促すフラグ情報がセットされたか否かによって更新処理を実行するようにした場合、PLCの稼動中にパラメータが変わったか否かを判断することができない。もちろん、更新を目的とするパラメータが、現在保持されているパラメータと同一であった場合でも、(そのパラメータの更新処理は不要であるが)フラグがセットされる度に更新処理を実行しなければならなかった。このため、この種のPLCは、不揮発性メモリの書き換え頻度が高く、その寿命を大きく短縮させてしまうという問題があった。
一方、(前述、不要なパラメータの更新を避けるために)、現在保持されているパラメータと更新を目的とするパラメータそのものを比較し、パラメータの変化を検出する方法も考えられる。しかし、このような方法ではパラメータの量に応じて、その比較時間が増大するという問題もあった。
更に、不揮発性メモリに予め保持されたパラメータが破損していた場合、起動時に誤った動作モードになり、PLCの誤動作を招く原因となる。これは、PLCを実際に稼動させてみて初めて異常に気付くことが多く、事故の原因にもなりかねない。そして、異常の挙動のみでは、原因究明に多大な時間を要することも否めなかった。
The conventional PLC determines whether or not the parameter has changed during the operation of the PLC when the update process is executed depending on whether or not flag information that prompts the update of the parameter held in the nonvolatile memory is set. I can't. Of course, even if the parameter for update is the same as the currently held parameter, the update process must be executed each time the flag is set (although the parameter update process is unnecessary). did not become. For this reason, this type of PLC has a problem that the rewrite frequency of the non-volatile memory is high and its life is greatly shortened.
On the other hand, a method of comparing a currently held parameter with the parameter itself for update and detecting a change in the parameter is also conceivable (to avoid unnecessary parameter update as described above). However, such a method has a problem that the comparison time increases in accordance with the amount of parameters.
Further, if a parameter stored in advance in the nonvolatile memory is damaged, an incorrect operation mode is entered at the time of startup, which causes a malfunction of the PLC. This is often noticed abnormally only after the PLC is actually operated, and may cause an accident. And it was undeniable that investigating the cause would require a lot of time only by the abnormal behavior.

本発明は、上記のような問題点を鑑みてなされたものであり、その目的は、PLCが稼動状態のまま、パラメータの更新を反映することができ、長寿命なPLCを提供することにある。
更に本発明は、破損したパラメータを検出した場合に、PLCを稼動せずに、(入出力リフレッシュおよび演算を行わない)その破損したパラメータを的確に通知する信頼性の高いPLCを提供することにある。更に本発明は、ユーザによる破損したパラメータの修復時間を節約することにある。
The present invention has been made in view of the above-described problems, and an object of the present invention is to provide a PLC having a long life that can reflect parameter updates while the PLC is operating. .
Furthermore, the present invention provides a highly reliable PLC that accurately notifies the damaged parameter (without input / output refresh and calculation) without operating the PLC when a damaged parameter is detected. is there. It is a further object of the present invention to save time for repairing damaged parameters by the user.

上述した目的を達成するため本発明の請求項1に係るプログラマブルコントローラは、動作モードを決定するパラメータを読み込み、当該パラメータに応じた動作モードを設定して動作するプログラマブルコントローラであって、パラメータおよびこのパラメータの正当性を検証するための第一のチェックコードが予め保持された第一の記憶手段と、この第一の記憶手段に保持されたパラメータを第二の記憶手段に転送する第一の転送手段と、第二の記憶手段に保持されたパラメータが更新されたことを示すフラグがセットされたとき、第二の記憶手段に保持されたパラメータを更新したパラメータから該パラメータの正当性を検証するための第二のチェックコードを算出するチェックコード算出手段と、第一のチェックコードと第二のチェックコードとを比較するチェックコード比較手段と、このチェックコード比較手段によって第一のチェックコードと第二のチェックコードとが相違したと判定されたとき、第二の記憶手段に保持されたパラメータを更新したパラメータおよび第二のチェックコードを第一の記憶手段にそれぞれ転送して、第一の記憶手段に予め保持されていたパラメータおよび第一のチェックコードを上書きする第二の転送手段と、第一の記憶手段に予め保持されていたパラメータを上書きしたパラメータを読み込み、動作モードを再設定するパラメータ設定手段と、を備えることを特徴とする。
請求項2に係るプログラマブルコントローラは、動作モードを決定するパラメータを読み込み、当該パラメータに応じた動作モードを設定して動作するプログラマブルコントローラであって、パラメータおよびこのパラメータの正当性を検証するための第一のチェックコードが予め保持された第一の記憶手段と、この第一の記憶手段に保持されたパラメータおよび第一のチェックコードを第二の記憶手段にそれぞれ転送する第一の転送手段と、第二の記憶手段に保持されたパラメータが更新されたことを示すフラグがセットされたとき、第二の記憶手段に保持されたパラメータを更新したパラメータから該パラメータの正当性を検証するための第二のチェックコードを算出するチェックコード算出手段と、第二の記憶手段に保持された第一のチェックコードと第二のチェックコードとを比較するチェックコード比較手段と、このチェックコード比較手段によって第二の記憶手段に保持された第一のチェックコードと第二のチェックコードとが相違したと判定されたとき、第二の記憶手段に保持されたパラメータを更新したパラメータおよび第二のチェックコードを第一の記憶手段にそれぞれ転送して、第一の記憶手段に予め保持されていたパラメータおよび第一のチェックコードを上書きする第二の転送手段と、第一の記憶手段に予め保持されていたパラメータを上書きしたパラメータを読み込み、動作モードを再設定するパラメータ設定手段と、
を備えることを特徴とする。
In order to achieve the above-described object, a programmable controller according to claim 1 of the present invention is a programmable controller that operates by reading a parameter for determining an operation mode and setting an operation mode according to the parameter. First storage means in which a first check code for verifying the validity of the parameter is held in advance, and first transfer for transferring the parameter held in the first storage means to the second storage means When the flag indicating that the parameter held in the second storage means is updated is set, the validity of the parameter is verified from the parameter updated in the second storage means. Check code calculating means for calculating a second check code for the first check code and the second check code Check code comparing means for comparing the check code, and when the check code comparing means determines that the first check code and the second check code are different, the parameter stored in the second storage means is updated. A second transfer means for transferring the parameter and the second check code, respectively, to the first storage means and overwriting the parameter and the first check code previously held in the first storage means; Parameter setting means for reading a parameter overwritten by a parameter previously stored in the storage means and resetting the operation mode.
A programmable controller according to claim 2 is a programmable controller that operates by reading a parameter for determining an operation mode, setting an operation mode according to the parameter, and verifying the validity of the parameter and the parameter. First storage means in which one check code is held in advance, first transfer means for transferring the parameters and first check code held in the first storage means to the second storage means, When a flag indicating that the parameter held in the second storage means has been updated is set, the second parameter for verifying the validity of the parameter from the parameter updated in the parameter held in the second storage means A check code calculating means for calculating a second check code, and a first code stored in the second storage means Check code comparing means for comparing the check code and the second check code, and the first check code and the second check code held in the second storage means by the check code comparing means are determined to be different When the parameter stored in the second storage means is updated, the second check code is transferred to the first storage means, respectively, and the parameter stored in advance in the first storage means and the second check code are transferred. A second transfer means for overwriting one check code; a parameter setting means for reading a parameter overwritten by a parameter stored in advance in the first storage means and resetting the operation mode;
It is characterized by providing.

請求項3に記載のプログラマブルコントローラは、請求項1〜2のいずれかに記載のプログラマブルコントローラであって、パラメータおよび第一のチェックコードは、プログラマブルコントローラに接続される所定の機器毎に予め複数のグループに分類されて第一の記憶手段に保持され、チェックコード算出手段は、プログラマブルコントローラの初期起動時に、分類保持されたパラメータ毎に各パラメータの正当性を検証するためのチェックコードをそれぞれ算出し、チェックコード比較手段は、算出された複数のチェックコードと該チェックコードに対応する第一のチェックコードとをそれぞれ比較すると共に、プログラマブルコントローラは、更にチェックコード比較手段によってチェックコードが一致したと判定されたとき、パラメータ設定手段にパラメータを設定させることを特徴とする。
請求項4に記載のプログラマブルコントローラは、請求項1〜2のいずれかに記載のプログラマブルコントローラであって、パラメータおよび第一のチェックコードは、プログラマブルコントローラに接続される所定の機器毎に予め複数のグループに分類されて第一の記憶手段に保持され、チェックコード算出手段は、プログラマブルコントローラの初期起動時に、分類保持されたパラメータ毎に各パラメータの正当性を検証するためのチェックコードをそれぞれ算出し、チェックコード比較手段は、算出された複数のチェックコードと該チェックコードに対応する第一のチェックコードとをそれぞれ比較すると共に、プログラマブルコントローラは、更にチェックコード比較手段によってチェックコードが相違したと判定されたとき、相違したチェックコードが含まれるグループを通知する通知手段とを備えることを特徴とする。
A programmable controller according to a third aspect is the programmable controller according to any one of the first to second aspects, wherein the parameter and the first check code are a plurality of predetermined devices connected to the programmable controller in advance. The check code calculation means calculates a check code for verifying the validity of each parameter for each classified and held parameter when the programmable controller is initially activated. The check code comparison means compares the plurality of calculated check codes with the first check code corresponding to the check code, and the programmable controller further determines that the check codes match with the check code comparison means. When Characterized in that to set the parameters to the chromatography data setting means.
A programmable controller according to a fourth aspect is the programmable controller according to any one of the first to second aspects, wherein the parameter and the first check code include a plurality of parameters in advance for each predetermined device connected to the programmable controller. The check code calculation means calculates a check code for verifying the validity of each parameter for each classified and held parameter when the programmable controller is initially activated. The check code comparing means compares the plurality of calculated check codes with the first check code corresponding to the check code, and the programmable controller further determines that the check code is different by the check code comparing means. Difference Characterized in that it comprises a notifying means for notifying a group that contains a check code.

請求項5に記載のプログラマブルコントローラは、第一または第二のチェックコードは、パラメータを順次加算して合計値としたSUM値、またはパラメータを巡回計算した値であることを特徴とする。
請求項6に記載のプログラマブルコントローラは、第一の記憶手段が、書き換え可能な不揮発性メモリであることを特徴とする。
The programmable controller according to claim 5 is characterized in that the first or second check code is a SUM value obtained by sequentially adding parameters, or a value obtained by cyclically calculating the parameters.
The programmable controller according to claim 6 is characterized in that the first storage means is a rewritable nonvolatile memory.

本発明の請求項1に係る構成によれば、パラメータおよびこのパラメータの正当性を検証するための第一のチェックコードを予め第一の記憶手段に保持しておき、パラメータの正当性を検証するためのチェックコードを所定の周期で算出し、この算出されたチェックコードと第一のチェックコードとを比較し相違したとき、動作モードの設定をする構成としたのでPLCが稼動状態(運用中)のままパラメータを更新して反映することができる。すなわち、本発明の請求項1に係るPLCは、PLCの稼動したまま動作モードの変更が可能となる。
また、本発明の請求項2に係る構成によれば、パラメータおよびこのパラメータの正当性を検証するための第一のチェックコードを予め第一の記憶手段に保持しておき、第一の記憶手段よりもアクセスタイムが速い第二の記憶手段にパラメータを転送し、第二の記憶手段が保持したパラメータの正当性を検証するためのチェックコードを所定の周期で算出する。この算出されたチェックコードと第一のチェックコードとを比較し相違したとき、第二の記憶手段に保持されたパラメータおよびこのパラメータから算出されたチェックコードを第一の記憶手段にそれぞれ転送し、この転送されたパラメータに応じて動作モードを設定する構成としたので、PLCが稼動状態(運用中)のままパラメータを更新し反映することができる。更に、不要なパラメータの更新を阻止することができるので、PLCの稼動したまま動作モードの変更が可能で、且つ長寿命なPLCを提供することができる。
According to the configuration of the first aspect of the present invention, the parameter and the first check code for verifying the validity of the parameter are held in the first storage unit in advance, and the validity of the parameter is verified. When the check code is calculated at a predetermined cycle, and the calculated check code and the first check code are compared and different, the operation mode is set so that the PLC is in an operating state (in operation) The parameters can be updated and reflected as they are. That is, the PLC according to claim 1 of the present invention can change the operation mode while the PLC is operating.
According to the second aspect of the present invention, the parameter and the first check code for verifying the validity of the parameter are held in the first storage unit in advance, and the first storage unit The parameter is transferred to the second storage means having a faster access time, and a check code for verifying the validity of the parameter held by the second storage means is calculated at a predetermined cycle. When the calculated check code and the first check code are compared and different, the parameters held in the second storage means and the check code calculated from the parameters are respectively transferred to the first storage means, Since the operation mode is set according to the transferred parameter, the parameter can be updated and reflected while the PLC is in an operating state (in operation). Furthermore, since unnecessary updating of parameters can be prevented, it is possible to change the operation mode while the PLC is operating, and to provide a PLC having a long life.

また、本発明の請求項3に係る構成によれば、パラメータおよびこのパラメータの正当性を検証するための第一のチェックコードを予め第一の記憶手段に保持しておき、第一の記憶手段よりもアクセスタイムが速い第二の記憶手段にパラメータおよび第一のチェックコードを転送し、第二の記憶手段が保持したパラメータの正当性を検証するためのチェックコードを所定の周期で算出する。この算出されたチェックコードと第二の記憶手段が保持したチェックコードとを比較し相違したとき、第二の記憶手段に保持されたパラメータおよびこのパラメータから算出されたチェックコードを第一の記憶手段にそれぞれ転送し、この転送されたパラメータに応じて動作モードの設定をする構成としたので、PLCが稼動状態(運用中)のままパラメータを高速に更新して反映することができる。更に、不要なパラメータの更新を阻止することができるので、PLCの稼動したまま動作モードの変更が可能で、且つ長寿命なPLCを提供することができる。
また、本発明の請求項4に係る構成によれば、パラメータおよび第一のチェックコードは、プログラマブルコントローラに接続される所定の機器毎に予め複数のグループに分類して第一の記憶手段に保持される。そして、プログラマブルコントローラの初期起動時に、分類保持されたパラメータ毎に各パラメータの正当性を検証するためのチェックコードをそれぞれ算出し、この算出された複数のチェックコードとこの複数のチェックコードに対応する第一のチェックコードとをそれぞれ比較し、それが全て一致したとき、パラメータを設定する構成としたので、PLCは誤った動作モードで稼動せず、PLCの誤動作を防ぎ、事故などを未然に防ぐことのできる信頼性の高いPLCを提供することができる。すなわち、常に正しい動作モードにて駆動する信頼性の高いPLCを提供することができる。
According to the third aspect of the present invention, the parameter and the first check code for verifying the validity of the parameter are held in the first storage unit in advance, and the first storage unit The parameter and the first check code are transferred to the second storage means having a faster access time, and a check code for verifying the validity of the parameter held by the second storage means is calculated at a predetermined cycle. When the calculated check code is different from the check code held by the second storage means, the parameter stored in the second storage means and the check code calculated from the parameter are stored in the first storage means. Since the operation mode is set according to the transferred parameters, the parameters can be updated and reflected at high speed while the PLC is in the operating state (in operation). Furthermore, since unnecessary updating of parameters can be prevented, it is possible to change the operation mode while the PLC is operating, and to provide a PLC having a long life.
According to the configuration of claim 4 of the present invention, the parameter and the first check code are classified into a plurality of groups in advance for each predetermined device connected to the programmable controller and held in the first storage means. Is done. Then, at the initial startup of the programmable controller, a check code for verifying the validity of each parameter is calculated for each parameter that is classified and held, and the check code corresponds to the calculated check code and the check code. The first check code is compared with each other, and when they all match, the parameter is set, so the PLC does not operate in the wrong operation mode, prevents the PLC from malfunctioning, and prevents accidents. It is possible to provide a PLC with high reliability that can be used. That is, it is possible to provide a highly reliable PLC that is always driven in the correct operation mode.

また、本発明の請求項5に係る構成によれば、パラメータおよび第一のチェックコードは、プログラマブルコントローラに接続される所定の機器毎に予め複数のグループに分類して第一の記憶手段に保持される。そして、プログラマブルコントローラの初期起動時に、分類保持されたパラメータ毎に各パラメータの正当性を検証するためのチェックコードをそれぞれ算出し、この算出された複数のチェックコードとこの複数のチェックコードに対応する第一のチェックコードとをそれぞれ比較し、そのいずれかが相違したとき、相違したチェックコードが含まれるグループを通知する構成としたので、ユーザは破損したパラメータのグループを容易に知ることができる。このため、破損したパラメータの修復作業では破損した特定のパラメータが含まれるグループのパラメータを修復すれば良いため、修復時間を節約することができる。
また、本発明の請求項6に係る構成によれば、一般的に広く知られたSUM値をチェックコードとしたので、簡単な加算プログラム(特殊な計算を必要としないプログラム)でチェックコード算出手段を作成することができる。
According to the fifth aspect of the present invention, the parameter and the first check code are classified into a plurality of groups in advance for each predetermined device connected to the programmable controller and held in the first storage unit. Is done. Then, at the initial startup of the programmable controller, a check code for verifying the validity of each parameter is calculated for each parameter that is classified and held, and the check code corresponds to the calculated check code and the check code. The first check code is compared with each other, and when one of them is different, the group including the different check code is notified, so that the user can easily know the group of the damaged parameter. For this reason, in the repair operation of the damaged parameter, it is only necessary to repair the parameter of the group including the specific damaged parameter, so that the repair time can be saved.
According to the configuration of the sixth aspect of the present invention, since the SUM value that is generally well known is used as the check code, the check code calculating means can be implemented with a simple addition program (a program that does not require special calculation). Can be created.

以下、本発明の好適な実施形態について図1〜図7の図面を基に説明する。尚、これらの図面は本発明の一実施形態を説明するための図面であって、これらの図面によって本発明が限定されるものではない。
DESCRIPTION OF EXEMPLARY EMBODIMENTS Hereinafter, preferred embodiments of the invention will be described with reference to the drawings of FIGS. These drawings are for explaining an embodiment of the present invention, and the present invention is not limited by these drawings.

図1は、本発明の実施例1に係るプログラマブルコントローラの内部構成図である。図1において、100は本発明のプログラマブルコントローラ(以下PLC)であり、105は図示しないセンサなどの信号が与えられる入力部、107は測定結果などを表示する表示部、108は各種設定操作などをする操作部、104はPLC100がネットワーク110を介して図示しない他の装置と通信をする通信部である。
102は、PLCの動作モードを決定するパラメータを保持するE2PROMやフラッシュメモリなどからなる不揮発性メモリ(第一の記憶手段)、103はSRAMなどからなる作業メモリ(第二の記憶手段)、106は図示しないアクチュエータなどの外部機器に制御信号を与える出力部、101は入力部105からの信号を基に演算などを行って出力部に制御の指示をするとともに、入出力パラメータを更新する制御部である。
制御部101は、パラメータを順番に加算していき合計値(SUM値)とするチェックコード算出手段101aと、予め不揮発性メモリに保持されたSUM値とパラメータから算出したSUM値とを比較するチェックコード比較手段101bと、不揮発性メモリに保持されたパラメータを参照し、その値に従って、制御部101自らの動作モードを決定するとともに、入力部105と出力部106に対して、回路の動作を決定する所定の信号を与えるパラメータ設定手段101cとを備える。
FIG. 1 is an internal configuration diagram of a programmable controller according to Embodiment 1 of the present invention. In FIG. 1, 100 is a programmable controller (hereinafter referred to as PLC) of the present invention, 105 is an input unit to which a signal from a sensor (not shown), etc. is given, 107 is a display unit for displaying measurement results, 108 is various setting operations, An operation unit 104 is a communication unit for the PLC 100 to communicate with another device (not shown) via the network 110.
Reference numeral 102 denotes a non-volatile memory (first storage means) such as an E 2 PROM or flash memory that holds parameters for determining the operation mode of the PLC, and 103 denotes a working memory (second storage means) such as an SRAM. Reference numeral 106 denotes an output unit that gives a control signal to an external device such as an actuator (not shown). Part.
The control unit 101 adds the parameters in order, and adds a check code calculation unit 101a to obtain a total value (SUM value), and a check for comparing the SUM value previously stored in the nonvolatile memory with the SUM value calculated from the parameter Refers to the code comparison means 101b and the parameters held in the nonvolatile memory, determines the operation mode of the control unit 101 itself according to the value, and determines the operation of the circuit for the input unit 105 and the output unit 106 Parameter setting means 101c for providing a predetermined signal.

これらチェックコード算出手段101a、チェックコード比較手段101bおよびパラメータ設定手段101cは、いずれも制御部101の内部メモリ(不図示)に保持されるプログラムである。
109は制御部101と不揮発性メモリ102、作業メモリ103、および通信部104を接続する内部バスである。
また、本発明の実施例1に係るPLCは、制御部101や入力部105、出力部106などのそれぞれの構成要素を各々モジュール構成にしても実現可能である。
概略的には上述したように構成された本発明の実施例1に係るPLC100が特徴とするところは、不揮発性メモリ(第一の記憶手段)に予め保持されたPLCの動作モードを決定するパラメータ(オリジナルパラメータ)が更新されると、この更新を検知し、PLCが稼動中であっても動作モードを再設定してこれを反映する点にある。
このような特徴を備えた本発明の実施例1に係るPLCの作動について、より詳細に説明する。
本発明の実施例1に係るPLC100は、電源投入後の初期起動時に、制御部101が不揮発性メモリ102に予め保持されたパラメータを参照し、このパラメータに従った動作を設定するように構成されている。そして、前述パラメータを適宜変更することによって多種のユーザアプリケーションに対応することができるようになっている。
The check code calculation unit 101a, the check code comparison unit 101b, and the parameter setting unit 101c are all programs held in an internal memory (not shown) of the control unit 101.
Reference numeral 109 denotes an internal bus that connects the control unit 101 to the nonvolatile memory 102, the work memory 103, and the communication unit 104.
In addition, the PLC according to the first embodiment of the present invention can be realized by configuring each component such as the control unit 101, the input unit 105, and the output unit 106 in a module configuration.
Schematically, the PLC 100 according to the first embodiment of the present invention configured as described above is characterized in that a parameter for determining an operation mode of the PLC held in advance in a nonvolatile memory (first storage means). When (original parameter) is updated, this update is detected, and even if the PLC is operating, the operation mode is reset and reflected.
The operation of the PLC according to the first embodiment of the present invention having such characteristics will be described in more detail.
The PLC 100 according to the first embodiment of the present invention is configured such that the control unit 101 refers to a parameter stored in advance in the nonvolatile memory 102 and sets an operation according to this parameter at the initial startup after power-on. ing. And it can respond to various user applications by changing the above-mentioned parameter suitably.

図2は、本発明の実施例1に係る、PLC100の不揮発性メモリ102に保持されたパラメータに関わるメモリ情報を示す図である。この図において、200は、不揮発性メモリの所定のアドレスに割り付けられたパラメータ領域である。201は、制御部101と入力部105の間における信号の扱い方、および、入力部105に対しての回路の動作を決定する入力パラメータであり、202は、入力パラメータ201を基に、チェックコード算出手段101aによって得られた入力パラメータSUM値である。203は、制御部101と出力部106の間における信号の扱い方、および、出力部106の動作を決定する出力パラメータであり、204は出力パラメータ203を基に、チェックコード算出手段101aによって得られた出力パラメータSUM値である。
尚、本発明にて扱うSUM値(チェックコード)は、データの正当性をチェックするためのコードとして広く一般的に知られたチェックコードであり、複数のパラメータを順次加算して得たものである。
さて、図3は、プログラマブルコントローラに接続される所定の機器(モジュール)毎に複数のグループに予め分類されたパラメータの例を示す表である。図3に示されるパラメータ分類は所定の機器(モジュール)毎のグループを意味し、No.1〜No.5は、図2に記載の入力パラメータ201に分類される項目であり、NO.6〜NO.10は、図2に記載の出力パラメータ203に分類される項目である。また、No.11は、図2には示してないが、入出力パラメータに分類される項目である。
FIG. 2 is a diagram illustrating memory information related to parameters held in the nonvolatile memory 102 of the PLC 100 according to the first embodiment of the present invention. In this figure, reference numeral 200 denotes a parameter area assigned to a predetermined address of the nonvolatile memory. 201 is an input parameter that determines how to handle the signal between the control unit 101 and the input unit 105 and the operation of the circuit for the input unit 105, and 202 is a check code based on the input parameter 201. This is the input parameter SUM value obtained by the calculation means 101a. 203 is an output parameter that determines how the signal is handled between the control unit 101 and the output unit 106 and the operation of the output unit 106, and 204 is obtained by the check code calculation unit 101 a based on the output parameter 203. Output parameter SUM value.
The SUM value (check code) handled in the present invention is a check code that is widely known as a code for checking the validity of data, and is obtained by sequentially adding a plurality of parameters. is there.
FIG. 3 is a table showing examples of parameters classified in advance into a plurality of groups for each predetermined device (module) connected to the programmable controller. The parameter classification shown in FIG. 3 means a group for each predetermined device (module), and No. 1 to No. 5 are items classified into the input parameters 201 shown in FIG. NO. 10 is an item classified as the output parameter 203 shown in FIG. Further, No. 11 is an item that is not shown in FIG. 2 but is classified as an input / output parameter.

図3において、入力パラメータに分類されるパラメータを説明する。例えば、NO.1の動作レンジ設定パラメータは、アナログ入力機器(モジュール)に対する動作レンジの設定をするパラメータであり、このパラメータを設定することでA/D変換特性を変えることができる。NO.2の変換許可/禁止設定パラメータは、アナログ入力機器(モジュール)に対するA/D変換を実施するか否かを決定するパラメータである。NO.3の断線時スケール設定パラメータは、アナログ入力機器(モジュール)に接続される外部負荷が未接続となった場合に、アナログ入力機器(モジュール)のA/D変換値を上限値とするか、下限値とするかを決定するパラメータである。NO.4の平均値回数設定パラメータは、アナログ入力機器(モジュール)へのA/D変換値の平均値を算出するための取得回数を決定するパラメータであり、移動平均や単純平均や加重平均など様々な用途で活用される。
同様、図3において、出力パラメータに分類されるパラメータを説明する。例えば、NO.6の出力許可/禁止パラメータはアナログ出力機器(モジュール)に対してD/A変換を実施するか否かを決定するパラメータである。NO.7の警報使用/未使用設定パラメータはアナログ入力機器(モジュール)のA/D変換値が後述の警報を発する閾値に達したときに、警報を発するか否かを設定するパラメータである。NO.8の警報種別パラメータは、警報を発するときに、警報の種別(上限/下限の絶対値警報や上限/下限の偏差警報など)を設定するパラメータである。NO.9のALM設定値パラメータは、アナログ入力モジュールのA/D変換値を受けて、警報を発する閾値を決定するパラメータである。NO.10の警報ONディレイ時間パラメータは、警報を発するときに、前述警報を発する閾値にアナログ入力機器(モジュール)のA/D変換値が達してから、警報を発するまでの時間を設定するパラメータである。
In FIG. 3, parameters classified as input parameters will be described. For example, the No. 1 operation range setting parameter is a parameter for setting an operation range for an analog input device (module), and the A / D conversion characteristics can be changed by setting this parameter. The conversion permission / prohibition setting parameter of No. 2 is a parameter for determining whether or not to perform A / D conversion for the analog input device (module). The disconnection scale setting parameter of NO.3 is whether the A / D conversion value of the analog input device (module) is the upper limit value when the external load connected to the analog input device (module) is not connected. , A parameter for determining whether to set the lower limit value. The No. 4 average value count setting parameter is a parameter that determines the number of acquisitions for calculating the average value of A / D conversion values for analog input devices (modules), such as moving average, simple average, and weighted average. Used for various purposes.
Similarly, in FIG. 3, parameters classified as output parameters will be described. For example, the output permission / prohibition parameter of No. 6 is a parameter that determines whether or not to perform D / A conversion on an analog output device (module). The alarm use / non-use setting parameter of No. 7 is a parameter for setting whether or not to issue an alarm when the A / D conversion value of the analog input device (module) reaches a threshold for issuing an alarm described later. The alarm type parameter No. 8 is a parameter for setting an alarm type (such as an upper limit / lower limit absolute value alarm or an upper limit / lower limit deviation alarm) when an alarm is issued. The ALM set value parameter of No. 9 is a parameter that receives the A / D conversion value of the analog input module and determines a threshold value for issuing an alarm. The NO.10 alarm ON delay time parameter is a parameter that sets the time from when the A / D conversion value of the analog input device (module) reaches the threshold value for issuing an alarm until the alarm is issued. It is.

また、同図3において、入出力パラメータに分類されるパラメータを説明る。NO.12のスケーリング設定パラメータは、アナログ入力機器(モジュール)への入力信号に対するアナログ出力機器(モジュール)の出力信号特性を決定するパラメータである。このパラメータを設定することで、アナログ入出力機器(モジュール)のA/D変換値およびD/A変換値を工業値に換算したスケール(量)に変えて扱うことができる。
このように、プログラマブルコントローラの動作モードを決定するパラメータは、プログラマブルコントローラに接続される所定の機器(モジュール)毎に複数のグループに分類されて不揮発性メモリ102に保持される。
図4は、本発明の実施例1に係る、プログラマブルコントローラの動作を説明するフローチャートである。図4を参照しながら本発明の詳細説明をする。ここでは電源投入後、PLCの初期化を目的とする状態を初期起動フェーズ(S301〜S304)とし、初期化以降の通常の運用状態を運用フェーズ(S305以降)とし、PLCを停止する異常状態を異常フェーズ(S320)と定義する。また、本実施例にて説明するSUM値の算出を行うチェックコード算出手段101aは、制御部101がパラメータを順番に加算していき合計値とする制御部101が実行するプログラムである。
In FIG. 3, parameters classified as input / output parameters will be described. The scaling setting parameter of No. 12 is a parameter that determines the output signal characteristic of the analog output device (module) with respect to the input signal to the analog input device (module). By setting this parameter, the A / D conversion value and D / A conversion value of the analog input / output device (module) can be changed to a scale (amount) converted to an industrial value.
As described above, the parameters that determine the operation mode of the programmable controller are classified into a plurality of groups for each predetermined device (module) connected to the programmable controller and are held in the nonvolatile memory 102.
FIG. 4 is a flowchart for explaining the operation of the programmable controller according to the first embodiment of the present invention. The present invention will be described in detail with reference to FIG. Here, after the power is turned on, the state for initializing the PLC is the initial startup phase (S301 to S304), the normal operation state after the initialization is the operation phase (S305 and later), and the abnormal state that stops the PLC is It is defined as an abnormal phase (S320). The check code calculation means 101a for calculating the SUM value described in the present embodiment is a program executed by the control unit 101 that adds the parameters in order and makes the total value.

さて、S301において、制御部101は、グループ毎に分類保持された入力パラメータ201および出力パラメータ203のそれぞれのSUM値を算出し、制御部101内の図示しない退避領域にそれぞれ転送する。
次いで制御部101は、S302に進み、S301にて算出した入力パラメータ201に対するSUM値と入力パラメータSUM値202、およびS301にて算出した出力パラメータ203に対するSUM値と出力パラメータSUM値204とをそれぞれ比較する。これら対に比較したSUM値がそれぞれ等しい場合、制御部101は、パラメータが正常であると判定し、S304へと移行する。これら対に比較したSUM値のいずれか一報が異なる場合は、パラメータに異常があったり、不揮発性メモリに異常がある可能性が高い。したがって、このままPLCを運用した場合には正常に動作しないことが想定されるので、制御部101は、パラメータが異常であると判定し、PLCを稼動せずにS320(異常フェーズ)へと移行する。
S320に移行した制御部101は、異常であるパラメータを含むグループ名を表示部107に通知(表示)すると共に、ネットワーク110を経由して本装置に接続される他の機器に向けてその異常(パラメータに異常を発見したことと、異常であるパラメータを含むグループ名)を通知する。
In S301, the control unit 101 calculates the SUM values of the input parameters 201 and the output parameters 203 classified and held for each group, and transfers them to a save area (not shown) in the control unit 101.
Next, the control unit 101 proceeds to S302, and compares the SUM value and input parameter SUM value 202 for the input parameter 201 calculated in S301, and the SUM value and output parameter SUM value 204 for the output parameter 203 calculated in S301, respectively. To do. When the SUM values compared to these pairs are equal, the control unit 101 determines that the parameters are normal, and proceeds to S304. If any one of the SUM values compared to these pairs is different, there is a high possibility that the parameter is abnormal or the nonvolatile memory is abnormal. Therefore, since it is assumed that the PLC does not operate normally when the PLC is operated as it is, the control unit 101 determines that the parameter is abnormal and shifts to S320 (abnormal phase) without operating the PLC. .
The control unit 101 that has proceeded to S320 notifies (displays) the group name including the parameter that is abnormal to the display unit 107, and the abnormality (to the other device connected to the apparatus via the network 110) Notify that the parameter is abnormal and the name of the group containing the abnormal parameter).

S302にてパラメータが正常であると判定した場合、制御部101は、S304に進み、入力パラメータ201と出力パラメータ203を参照する。その値に従って、制御部101は、制御部101自らの動作モードを決定するとともに、入力部105と出力部106に対して、回路の動作を決定する所定の信号を与える。すなわち、制御部101は初期起動フェーズにおいて、入力パラメータ201と出力パラメータ203が正常であるか否かを判定し、それぞれのパラメータが正常である場合にのみパラメータを設定して運用フェーズ(S305以降)に移行する。
制御部101の処理はS305に進み、入力部105から入力された信号を制御部101内のI/Oメモリ(不図示)に取り込む(入力処理)。S306において制御部101は、予め保持されたプログラムに基づいて論理演算を実行する。次いで制御部101は、S307において、その演算実行結果をI/Oメモリに書き込んで出力部106に送り出す(出力処理)。この出力処理の後、制御部101は、S308において入力パラメータ201と出力パラメータ203のデータが更新されたか否かを不図示のデータ更新完了フラグにて確認する。
S308にてデータ更新完了フラグ(不図示)がセットされてない場合、すなわち入力パラメータ201と出力パラメータ203のデータが両方とも更新されてない場合(S308 No)、制御部101はS305へ移行する。
If it is determined in S302 that the parameters are normal, the control unit 101 proceeds to S304 and refers to the input parameters 201 and the output parameters 203. In accordance with the value, the control unit 101 determines its own operation mode, and gives a predetermined signal for determining the operation of the circuit to the input unit 105 and the output unit 106. That is, the control unit 101 determines whether or not the input parameter 201 and the output parameter 203 are normal in the initial startup phase, and sets the parameters only when each parameter is normal, and the operation phase (S305 and later). Migrate to
The processing of the control unit 101 proceeds to S305, and the signal input from the input unit 105 is taken into an I / O memory (not shown) in the control unit 101 (input processing). In step S306, the control unit 101 performs a logical operation based on a program stored in advance. Next, in step S307, the control unit 101 writes the calculation execution result in the I / O memory and sends it to the output unit 106 (output processing). After this output processing, the control unit 101 confirms whether or not the data of the input parameter 201 and the output parameter 203 has been updated in S308 using a data update completion flag (not shown).
When the data update completion flag (not shown) is not set in S308, that is, when both the input parameter 201 and the output parameter 203 are not updated (No in S308), the control unit 101 proceeds to S305.

制御部101は、前述データ更新完了フラグ(不図示)がセットされた場合、すなわち入力パラメータ201と出力パラメータ203のどちらかのデータが更新されたと判定したとき(S308 Yes)、S309へ移行する。
S309において、制御部101は、入力パラメータ201および出力パラメータ203のそれぞれに対してSUM値を算出する。すなわち、制御部101は、パラメータ領域200が更新される所定の周期にて(S308の判定に基き)、入力パラメータ201と出力パラメータ203のそれぞれに対してSUM値を算出する。
そして制御部101は、S310において、上述入力パラメータ201から算出されたSUM値と入力パラメータSUM値202とを対に比較すると共に、上述出力パラメータ203から算出されたSUM値と出力パラメータSUM値204とを対に比較する。この対に比較したSUM値のいずれか一方が異なったとき、制御部101は、パラメータ領域200が以前に保持したデータとは違ったデータに書き換えられたと判定し(S310 Yes)、前述データ更新完了フラグ(不図示)をクリアしてS304に移行する。S304に移行すると制御部101は、パラメータを設定した後、入出力処理などの運用フェーズの処理をする。
When the data update completion flag (not shown) is set, that is, when the control unit 101 determines that either the input parameter 201 or the output parameter 203 has been updated (S308 Yes), the control unit 101 proceeds to S309.
In step S309, the control unit 101 calculates a SUM value for each of the input parameter 201 and the output parameter 203. That is, the control unit 101 calculates a SUM value for each of the input parameter 201 and the output parameter 203 at a predetermined cycle in which the parameter area 200 is updated (based on the determination in S308).
In S310, the control unit 101 compares the SUM value calculated from the input parameter 201 and the input parameter SUM value 202 in pairs, and calculates the SUM value calculated from the output parameter 203 and the output parameter SUM value 204. Compare the pair. When one of the SUM values compared to the pair is different, the control unit 101 determines that the parameter area 200 has been rewritten to data different from the data previously held (S310 Yes), and the data update is completed. The flag (not shown) is cleared and the process proceeds to S304. In step S304, after setting the parameters, the control unit 101 performs operation phase processing such as input / output processing.

そして、前述S310で対に比較したSUM値がいずれも等しい場合、制御部101は、パラメータ領域200に保持されたデータが以前に保持したデータと同じデータであると判定し(S310 No)、前述データ更新完了フラグ(不図示)をクリアして入力処理S305に移行する。
また、不揮発性メモリに保持されたパラメータを更新するための更新データは、ネットワーク110経由にて通信部104が格納したり、操作部108を操作することで格納することができるようになっている。そして、本発明のPLC100は、前述データ更新完了フラグ(不図示)がクリア状態のとき、制御部101以外にパラメータ領域200の書き換えが許可され、データ更新完了フラグ(不図示)がセット状態のとき、制御部101以外にパラメータ領域200の書き換えが許可されないように制御(排他論理条件)している。
また、本発明は、制御部101にデータ更新を伝える方法として、フラグのやりとり以外に割込にて行うことも可能である。
また、前述した実施例は、パラメータの正当性を検証するためのチェックコードとしてSUM値を例に説明したが、本発明のプログラマブルコントローラは、CRC(Cyclic Redundancy Check)などの巡回計算された符号をチェックコードとしても良い。
When the SUM values compared to the pair in S310 are equal, the control unit 101 determines that the data held in the parameter area 200 is the same as the data previously held (No in S310). The data update completion flag (not shown) is cleared and the process proceeds to input processing S305.
Update data for updating parameters held in the nonvolatile memory can be stored by the communication unit 104 via the network 110 or by operating the operation unit 108. . When the data update completion flag (not shown) is in the clear state, the PLC 100 of the present invention permits rewriting of the parameter area 200 other than the control unit 101, and the data update completion flag (not shown) is in the set state. In addition, control (exclusive logic condition) is performed so that rewriting of the parameter area 200 is not permitted except for the control unit 101.
Further, according to the present invention, as a method of transmitting data update to the control unit 101, it is also possible to perform by interruption other than the exchange of flags.
In the above-described embodiment, the SUM value is described as an example of the check code for verifying the validity of the parameter. However, the programmable controller of the present invention uses a cyclically calculated code such as CRC (Cyclic Redundancy Check). It may be a check code.

以上のようにすることで、本発明は、PLCの動作モードを決定するパラメータ(オリジナルパラメータ)およびそのオリジナルパラメータから算出されたチェックコード(オリジナルSUM値)を不揮発性メモリに予め保持しておき、PLC稼動中(運用中)において制御部101は、オリジナルパラメータの更新を目的とする更新データが、オリジナルパラメータが保持された領域上に上書きされると、その更新データに対してSUM値を算出する。
本発明のPLCは、制御部101が更新データから算出されたSUM値とオリジナルSUM値とを比較し、その比較の結果、互いのSUM値が相違したことによって、更新されたパラメータに応じた動作モードを再設定するようにしたので、PLC稼動中にパラメータを更新し、それを反映することが可能となった。
また、本発明は、更新データから算出されたSUM値とオリジナルSUM値を比較するようにしたので、更新データがオリジナルパラメータと違ったデータパターンであることを、的確に検出することが可能となった。
また、本発明は、オリジナルパラメータとオリジナルSUM値を入力用と出力用(入力パラメータ、入力パラメータSUM値、出力パラメータ、出力パラメータSUM値)に分類して、すなわち、プログラマブルコントローラに接続される所定の機器毎に予め分類(グループ分類)して不揮発性メモリに保持しておき、PLCの初期起動時(初期起動フェーズ)において、入力パラメータから算出されたSUM値と入力パラメータSUM値とを比較する。それと同様、本発明のPLCは、出力パラメータから算出されたSUM値と出力パラメータSUM値とを比較する。この結果、本発明は、比較対象としたSUM値が相違した場合に、PLCを稼動せずに異常処理(異常フェーズ)に移行する。
By doing as described above, the present invention holds in advance a parameter (original parameter) for determining the operation mode of the PLC and a check code (original SUM value) calculated from the original parameter in the nonvolatile memory, When the PLC is operating (in operation), the control unit 101 calculates the SUM value for the update data when the update data for updating the original parameter is overwritten on the area where the original parameter is held. .
In the PLC of the present invention, the control unit 101 compares the SUM value calculated from the update data with the original SUM value, and as a result of the comparison, the operation according to the updated parameter is made due to the difference between the SUM values. Since the mode is reset, it is possible to update the parameter while the PLC is running and reflect it.
In the present invention, since the SUM value calculated from the update data is compared with the original SUM value, it is possible to accurately detect that the update data has a data pattern different from the original parameter. It was.
Further, according to the present invention, the original parameter and the original SUM value are classified into input and output (input parameter, input parameter SUM value, output parameter, output parameter SUM value), that is, a predetermined parameter connected to the programmable controller. Each device is classified in advance (group classification) and stored in a non-volatile memory, and the SUM value calculated from the input parameter is compared with the input parameter SUM value at the initial activation of the PLC (initial activation phase). Similarly, the PLC of the present invention compares the SUM value calculated from the output parameter with the output parameter SUM value. As a result, when the SUM values to be compared are different, the present invention shifts to an abnormal process (abnormal phase) without operating the PLC.

そして本発明は、異常処理(異常フェーズ)にて、相違したパラメータが含まれるグループを通知するようにした。こうすることで本発明のPLCは、パラメータの破損による思わぬ不具合を回避することが可能となるともに、破損したパラメータを容易に特定できるので、不具合の原因究明の時間を大幅に削減することが可能となった。更に本発明のPLCは、パラメータを修復するときに、ユーザは破損したパラメータのみを修復すれば良いことから、パラメータの更新に対するユーザの負担や時間を節約することが可能となった。
また、本発明は、PLCの初期起動時(初期起動フェーズ)において、パラメータのSUM値の比較をすることによりオリジナルパラメータが正常であるか否かを判定した結果、パラメータが正常である場合にのみパラメータを設定し運用フェーズに移行するようにしたので、PLCは誤った動作モードで稼動せず、PLCの誤動作を防ぎ、事故などを未然に防ぐことのできる信頼性の高いPLCを提供することが可能となった。
In the present invention, a group including different parameters is notified in the abnormal process (abnormal phase). In this way, the PLC according to the present invention can avoid an unexpected failure due to parameter damage, and can easily identify the damaged parameter, thereby greatly reducing the time for investigating the cause of the failure. It has become possible. Furthermore, the PLC of the present invention can save the user's burden and time for parameter update because the user only needs to repair the damaged parameter when restoring the parameter.
Further, according to the present invention, only when the parameter is normal as a result of determining whether or not the original parameter is normal by comparing the SUM values of the parameters at the initial startup (initial startup phase) of the PLC. Since the parameter is set and the operation phase is shifted to, the PLC does not operate in the wrong operation mode, and it is possible to provide a highly reliable PLC that can prevent malfunction of the PLC and prevent accidents. It has become possible.

次に本発明の実施2に係るプログラマブルコントローラについて図5〜7を参照しながら説明する。
この実施例2が上述した実施例1と異なるところは、図5において、図1に対して第一の転送手段101dおよび第二の転送手段101eが付加された点、図6において、図2に対して作業メモリ103に割付される更新データ領域の説明図(図6(b))が付加された点、図7において、図4に対してプログラムの処理であるS303、S311、S312が付加された点にある。
また、図5〜7において図1〜4と同様な構成は同符号にて記載し、実施例1と重複する説明は省略する。

図5は、本発明の実施例2に係る、プログラマブルコントローラの内部構成図である。図5において図1との相違点は、不揮発性メモリ(第一の記憶手段)102に保持されたパラメータおよびそのSUM値(第一のチェックコード)を作業メモリ(第二の記憶手段)103に転送する第一の転送手段101dと、作業メモリ(第二の記憶手段)103に保持されたパラメータおよびそのSUM値(第二のチェックコード)を不揮発性メモリ(第一の記憶手段)102に転送する第二の転送手段101eとが制御部101に付加されている点である。
Next, a programmable controller according to the second embodiment of the present invention will be described with reference to FIGS.
The second embodiment differs from the first embodiment described above in that the first transfer means 101d and the second transfer means 101e are added to FIG. 1 in FIG. 5, and FIG. On the other hand, an explanatory diagram of the update data area allocated to the work memory 103 (FIG. 6B) is added. In FIG. 7, S303, S311 and S312 which are program processes are added to FIG. It is in the point.
5 to 7, the same components as those in FIGS. 1 to 4 are denoted by the same reference numerals, and the description overlapping with that of the first embodiment is omitted.

FIG. 5 is an internal configuration diagram of a programmable controller according to the second embodiment of the present invention. 5 differs from FIG. 1 in that the parameters held in the nonvolatile memory (first storage means) 102 and the SUM value (first check code) are stored in the working memory (second storage means) 103. The first transfer means 101d for transferring and the parameters and the SUM value (second check code) held in the working memory (second storage means) 103 are transferred to the nonvolatile memory (first storage means) 102. The second transfer means 101e is added to the control unit 101.

すなわち、制御部101は、不揮発性メモリ(第一の記憶手段)102に保持されたパラメータおよびそのSUM値(第一のチェックコード)を作業メモリ(第二の記憶手段)103に転送する第一の転送手段101dと、パラメータを順番に加算していき合計値(SUM値)とするチェックコード算出手段101aと、作業メモリ(第二の記憶手段)103に転送され保持されたSUM値(第一のチェックコード)と作業メモリ(第二の記憶手段)103に転送され保持されたパラメータに対して算出したSUM値(第二のチェックコード)とを比較するチェックコード比較手段101bと、作業メモリ(第二の記憶手段)103に保持されたパラメータおよびそのSUM値(第二のチェックコード)を不揮発性メモリ(第一の記憶手段)102に転送する第二の転送手段101eと、不揮発性メモリ(第一の記憶手段)102に保持されたパラメータを参照し、その値に従って、制御部101自らの動作モードを決定するとともに、入力部105と出力部106に対して、回路の動作を決定する所定の信号を与えるパラメータ設定手段101cとを備える。
これらチェックコード算出手段101a、チェックコード比較手段101b、パラメータ設定手段101c、第一の転送手段101dおよび第二の転送手段101eは、いずれも制御部101の内部メモリ(不図示)に保持されるプログラムである。
That is, the control unit 101 transfers the parameters held in the nonvolatile memory (first storage unit) 102 and the SUM value (first check code) to the working memory (second storage unit) 103. Transfer means 101d, a check code calculation means 101a for adding the parameters in order to obtain a total value (SUM value), and a SUM value (first storage) transferred and held in the work memory (second storage means) 103 Check code comparing means 101b for comparing the SUM value (second check code) calculated with respect to the parameter transferred and held in the work memory (second storage means) 103, and the work memory ( The second storage means) 103 and the SUM value (second check code) held in the non-volatile memory (first storage means) The second transfer unit 101e that transfers to 02 and the parameters held in the non-volatile memory (first storage unit) 102 are referred to, and the operation mode of the control unit 101 itself is determined according to the value, and the input unit 105 and a parameter setting means 101c for giving a predetermined signal for determining the operation of the circuit to the output unit 106.
These check code calculation unit 101a, check code comparison unit 101b, parameter setting unit 101c, first transfer unit 101d, and second transfer unit 101e are all programs stored in an internal memory (not shown) of the control unit 101. It is.

図6は、本発明の実施例2に係るPLC100の不揮発性メモリ102と作業メモリ103に割り付けされるメモリ情報を示す図である。ちなみに作業メモリ103は、第一の記憶手段を構成する不揮発性メモリ102よりもアクセスタイムが速いSRAM(スタティックRAM)などを用いる。
概略的には上述したように構成された本発明の実施例2に係るPLC100が特徴とするところは、不揮発性メモリ(第一の記憶手段)に保持されたパラメータ(オリジナルパラメータ)をアクセスタイムが速いSRAM(第二の記憶手段)に転送し、このSRAM上で上述した実施例1よりも短時間でパラメータ(オリジナルパラメータ)の更新を検知し、PLCが稼動中であっても動作モードを再設定してこれを反映する点にある。
このような特徴を備えた本発明の実施例2に係るPLCの作動について、より詳細に説明する。
さて図6(a)は、PLC100の不揮発性メモリ102に保持されたパラメータに関わるメモリ情報を示す図であり、実施例1にて説明した図2の説明と同様なのでその説明を省略する。
また、図6(a)に示すパラメータは、実施例1の図3と同様に、プログラマブルコントローラに接続される所定の機器(モジュール)毎に複数のグループに分類され、不揮発性メモリ102のパラメータ領域200に保持される。その分類およびパラメータは、実施例1の図3の説明と同様なのでその説明を省略する。
FIG. 6 is a diagram illustrating memory information allocated to the nonvolatile memory 102 and the working memory 103 of the PLC 100 according to the second embodiment of the present invention. Incidentally, the working memory 103 uses an SRAM (static RAM) having a faster access time than the non-volatile memory 102 constituting the first storage means.
Schematically, the PLC 100 according to the second embodiment of the present invention configured as described above is characterized in that the access time is the parameter (original parameter) held in the nonvolatile memory (first storage means). Transfer to a fast SRAM (second storage means), update of the parameter (original parameter) is detected in this SRAM in a shorter time than the first embodiment described above, and the operation mode is restored even when the PLC is in operation. It is to set and reflect this.
The operation of the PLC according to the second embodiment of the present invention having such characteristics will be described in more detail.
FIG. 6A is a diagram showing memory information related to the parameters held in the nonvolatile memory 102 of the PLC 100, and is the same as the description of FIG.
Also, the parameters shown in FIG. 6A are classified into a plurality of groups for each predetermined device (module) connected to the programmable controller, as in FIG. 3 of the first embodiment. 200. Since the classification and parameters are the same as those in FIG. 3 of the first embodiment, the description thereof is omitted.

図6(b)は、作業メモリ102に割り付けられたメモリ情報を示す図である。この図において、210は、制御部101が、前述したパラメータ領域200に保持された入出力パラメータ(201,203)およびそれらのSUM値(202,204)の退避や更新をするための更新データ領域である。入力パラメータ更新データ領域211は、制御部101が前述入力パラメータ201を退避したり、パラメータ更新時には通信部104や操作部108によって格納された更新データを保持する領域である。入力パラメータSUM更新領域212は、制御部101が前述入力パラメータSUM値202を退避したり、このSUM値202を更新するためのデータを保持する領域である。
出力パラメータ更新データ領域213は、制御部101が前述出力パラメータ203を退避したり、パラメータ更新時には通信部104や操作部108によって格納された更新データを保持する領域である。出力パラメータSUM更新領域214は、制御部101が前述出力パラメータSUM値204を退避したり、このSUM値204を更新するためのデータを保持する領域である。
図7は、本発明の実施例2に係るPLCの動作を説明するフローチャートである。この図において、実施例1にて説明した図4との相違点はS303、S311、S312が付加された点である。その他の処理に関しては実施例1における図4の説明と概略同様であるが、以降の説明は実施例1と相違する動きに限らず全て説明する。
FIG. 6B is a diagram showing memory information allocated to the work memory 102. In this figure, reference numeral 210 denotes an update data area for the control unit 101 to save and update the input / output parameters (201, 203) and their SUM values (202, 204) held in the parameter area 200 described above. It is. The input parameter update data area 211 is an area in which the control unit 101 saves the input parameter 201 or holds update data stored by the communication unit 104 or the operation unit 108 when updating parameters. The input parameter SUM update area 212 is an area in which the control unit 101 saves data for saving the input parameter SUM value 202 or updating the SUM value 202.
The output parameter update data area 213 is an area in which the control unit 101 saves the output parameter 203 or holds update data stored by the communication unit 104 or the operation unit 108 when updating parameters. The output parameter SUM update area 214 is an area in which the control unit 101 stores data for saving the output parameter SUM value 204 or updating the SUM value 204.
FIG. 7 is a flowchart for explaining the operation of the PLC according to the second embodiment of the present invention. In this figure, the difference from FIG. 4 described in the first embodiment is that S303, S311 and S312 are added. Other processes are substantially the same as the description of FIG. 4 in the first embodiment. However, the following description is not limited to the movement different from the first embodiment and will be described in full.

さて図7において、電源投入後、PLCの初期化を目的とする状態を初期起動フェーズ(S301〜S304)とし、初期化以降の通常の運用状態を運用フェーズ(S305以降)とし、PLCを停止する異常状態を異常フェーズ(S320)と定義する。また、本実施例にて説明するSUM値の算出、すなわち、チェックコード算出手段101aは、制御部101がパラメータを順番に加算していき合計値とする制御部101が実行するプログラムである。
S301において、制御部101は、グループ毎に分類保持された入力パラメータ201および出力パラメータ203のそれぞれのSUM値を算出し、制御部101内の図示しない退避領域にそれぞれ転送する。
次いで制御部101は、S302に進み、S301にて算出した入力パラメータ201に対するSUM値と入力パラメータSUM値202、およびS301にて算出した出力パラメータ203に対するSUM値と出力パラメータSUM値204とをそれぞれ比較する。これら対に比較したSUM値がそれぞれ等しい場合、制御部101は、パラメータが正常であると判定し、S303へと移行する。これら対に比較したSUM値のいずれか一報が異なる場合は、パラメータに異常があったり、不揮発性メモリに異常がある可能性が高い。したがって、このままPLCを運用した場合には正常に動作しないことが想定されるので、制御部101は、パラメータが異常であると判定し、PLCを稼動せずにS320(異常フェーズ)へと移行する。
In FIG. 7, after the power is turned on, the state for initialization of the PLC is set as the initial startup phase (S301 to S304), the normal operation state after the initialization is set as the operation phase (S305 and after), and the PLC is stopped. The abnormal state is defined as an abnormal phase (S320). The calculation of the SUM value described in the present embodiment, that is, the check code calculation means 101a is a program executed by the control unit 101 that adds the parameters in order and makes the total value.
In step S <b> 301, the control unit 101 calculates SUM values of the input parameters 201 and output parameters 203 classified and held for each group, and transfers them to a save area (not shown) in the control unit 101.
Next, the control unit 101 proceeds to S302, and compares the SUM value and input parameter SUM value 202 for the input parameter 201 calculated in S301, and the SUM value and output parameter SUM value 204 for the output parameter 203 calculated in S301, respectively. To do. When the SUM values compared to these pairs are equal, the control unit 101 determines that the parameter is normal, and proceeds to S303. If any one of the SUM values compared to these pairs is different, there is a high possibility that the parameter is abnormal or the nonvolatile memory is abnormal. Therefore, since it is assumed that the PLC does not operate normally when the PLC is operated as it is, the control unit 101 determines that the parameter is abnormal and shifts to S320 (abnormal phase) without operating the PLC. .

S320に移行した制御部101は、異常であるパラメータを含むグループ名を表示部107に通知(表示)すると共に、ネットワーク110を経由して本装置に接続される他の機器に向けてその異常(パラメータに異常を発見したことと、異常であるパラメータを含むグループ名)を通知する。
S302にてパラメータが正常であると判定した場合、制御部101は、S303に進む。S303において制御部101は、入力パラメータ201、入力パラメータSUM値202および出力パラメータ203、出力パラメータSUM値204を更新データ領域210にそれぞれ転送する。
次いで制御部101は、S304に進み、入力パラメータ201と出力パラメータ203を参照する。その値に従って、制御部101は、制御部101自らの動作モードを決定するとともに、入力部105と出力部106に対して、回路の動作を決定する所定の信号を与える。すなわち、制御部101は初期起動フェーズにおいて、入力パラメータ201と出力パラメータ203が正常であるか否かを判定し、それぞれのパラメータが正常である場合にのみパラメータを設定して運用フェーズ(S305以降)に移行する。
制御部101の処理はS305に進み、入力部105から入力された信号を制御部101内のI/Oメモリ(不図示)に取り込む(入力処理)。S306において制御部101は、予め保持されたプログラムに基づいて論理演算を実行する。次いで制御部101は、S307において、その演算実行結果をI/Oメモリに書き込んで出力部106に送り出す(出力処理)。
The control unit 101 that has proceeded to S320 notifies (displays) the group name including the parameter that is abnormal to the display unit 107, and the abnormality (to the other device connected to the apparatus via the network 110) Notify that the parameter is abnormal and the name of the group containing the abnormal parameter).
If it is determined in S302 that the parameters are normal, the control unit 101 proceeds to S303. In step S <b> 303, the control unit 101 transfers the input parameter 201, the input parameter SUM value 202, the output parameter 203, and the output parameter SUM value 204 to the update data area 210.
Next, the control unit 101 proceeds to S304, and refers to the input parameter 201 and the output parameter 203. In accordance with the value, the control unit 101 determines its own operation mode, and gives a predetermined signal for determining the operation of the circuit to the input unit 105 and the output unit 106. That is, the control unit 101 determines whether or not the input parameter 201 and the output parameter 203 are normal in the initial startup phase, and sets the parameters only when each parameter is normal, and the operation phase (S305 and later). Migrate to
The processing of the control unit 101 proceeds to S305, and the signal input from the input unit 105 is taken into an I / O memory (not shown) in the control unit 101 (input processing). In step S306, the control unit 101 performs a logical operation based on a program stored in advance. Next, in step S307, the control unit 101 writes the calculation execution result in the I / O memory and sends it to the output unit 106 (output processing).

この出力処理の後、制御部101は、S308において更新データ領域210の入力パラメータ更新データ領域211と出力パラメータ更新データ領域213のデータが更新されたか否かを不図示のデータ更新完了フラグにて確認する。
S308にてデータ更新完了フラグ(不図示)がセットされてない場合、すなわち入力パラメータ更新データ領域211と出力パラメータ更新データ領域213のデータが両方とも更新されてない場合(S308 No)、制御部101は、S305へ移行する。
制御部101は、S308にて前述データ更新完了フラグ(不図示)がセットされた場合、すなわち入力パラメータ更新データ領域211と出力パラメータ更新データ領域213のどちらかのデータが更新されたと判定したとき(S308 Yes)、S309へ移行する。
S309において制御部101は、入力パラメータ更新データ領域211および出力パラメータ更新データ領域213の各更新データに対してSUM値をそれぞれ算出する。すなわち、制御部101は、更新データ領域210が更新される所定の周期にて(S308の判定に基き)、入力パラメータ更新データ領域211と出力パラメータ更新データ領域213の各更新データに対してSUM値をそれぞれ算出する。
After this output processing, the control unit 101 checks whether or not the data in the input parameter update data area 211 and the output parameter update data area 213 in the update data area 210 has been updated in S308 using a data update completion flag (not shown). To do.
If the data update completion flag (not shown) is not set in S308, that is, if both the input parameter update data area 211 and the output parameter update data area 213 are not updated (No in S308), the control unit 101 Shifts to S305.
When the data update completion flag (not shown) is set in S308, that is, when the control unit 101 determines that either the input parameter update data area 211 or the output parameter update data area 213 has been updated ( (S308 Yes), the process proceeds to S309.
In step S <b> 309, the control unit 101 calculates a SUM value for each update data in the input parameter update data area 211 and the output parameter update data area 213. That is, the control unit 101 performs a SUM value for each update data in the input parameter update data area 211 and the output parameter update data area 213 in a predetermined cycle in which the update data area 210 is updated (based on the determination in S308). Are calculated respectively.

そして制御部101は、S310において、上述入力パラメータ更新データ領域211の更新データから算出されたSUM値と入力パラメータSUM更新領域212に保持されたSUM値とを対に比較すると共に、上述出力パラメータ更新データ領域213の更新データから算出されたSUM値と出力パラメータSUM更新領域214に保持されたSUM値とを対に比較する。この対に比較したSUM値のいずれか一方が異なったとき、制御部101は、更新データ領域210が以前に保持したデータとは違ったデータに書き換えられたと判定する(S310 Yes)。一方、前述対に比較したSUM値がいずれも等しい場合(S310 No)、制御部101は、更新データ領域210に更新されたデータがこれまで保持していたデータと同じである(不変)と判定し、前述データ更新完了フラグ(不図示)をクリアして入力処理S305に移行する。
次いで、処理はS311に進み、S311において制御部101は、更新データ領域210の更新データをパラメータ領域200(不揮発性メモリ102)に転送する(書き込む)。
例えば、S310において制御部101は、入力パラメータSUM更新領域212に転送された(S303にて転送された)SUM値と入力パラメータ更新データ領域211に保持された更新データから算出したSUM値とを比較する。この比較の結果、SUM値が相違した場合に制御部101は、S311において、前述更新データから算出したSUM値を入力パラメータSUM更新領域212に上書きし、入力パラメータ更新データ領域211に保持された更新データを入力パラメータ201に転送する(書き込む)と共に、上書きされた入力パラメータSUM更新領域212のSUM値を入力パラメータSUM値202に転送する(書き込む)。
In S310, the control unit 101 compares the SUM value calculated from the update data in the input parameter update data area 211 with the SUM value held in the input parameter SUM update area 212, and updates the output parameter. The SUM value calculated from the update data in the data area 213 and the SUM value held in the output parameter SUM update area 214 are compared in pairs. When any one of the SUM values compared to the pair is different, the control unit 101 determines that the update data area 210 has been rewritten with data different from the data previously held (S310 Yes). On the other hand, when all the SUM values compared with the pair are equal (S310 No), the control unit 101 determines that the data updated in the update data area 210 is the same as the data held so far (invariant). Then, the data update completion flag (not shown) is cleared, and the process proceeds to the input process S305.
Next, the process proceeds to S311. In S311, the control unit 101 transfers (writes) the update data in the update data area 210 to the parameter area 200 (nonvolatile memory 102).
For example, in S310, the control unit 101 compares the SUM value transferred to the input parameter SUM update area 212 (transferred in S303) and the SUM value calculated from the update data held in the input parameter update data area 211. To do. If the SUM values are different as a result of this comparison, the control unit 101 overwrites the input parameter SUM update area 212 with the SUM value calculated from the update data in S311 and updates the input parameter update data area 211. The data is transferred (written) to the input parameter 201, and the SUM value in the overwritten input parameter SUM update area 212 is transferred (written) to the input parameter SUM value 202.

同様に、S310において制御部101は、出力パラメータSUM更新領域214に転送された(S303にて転送された)SUM値と出力パラメータ更新データ領域213に保持された更新データから算出したSUM値とを比較する。この比較の結果、SUM値が相違した場合に制御部101は、S311において、前述更新データから算出したSUM値を出力パラメータSUM更新領域214に上書きし、出力パラメータ更新データ領域213の更新データを出力パラメータ203に転送する(書き込む)と共に、上書きされた出力パラメータSUM更新領域214のSUM値を出力パラメータSUM値204に転送する(書き込む)。もちろん、それぞれのSUM値が異なれば両方書き込めば良い。
制御部101は、更新データおよびそのSUM値を不揮発性メモリに転送した(書き込んだ)後、S312において、更新できたか否かを確認する。更新できたならば、制御部101は、前述データ更新完了フラグ(不図示)をクリアしてS304に移行(S312 Yes)する。S304に移行したら、制御部101は、更新されたパラメータに従った動作設定を行った後、入出力処理などの運用処理をする。
S312で更新できなかった場合(S312 No)に制御部101は、不揮発性メモリの破損など、何らかの異常が発生したと判定し、S320の異常処理に移行する。
Similarly, in S310, the control unit 101 uses the SUM value transferred to the output parameter SUM update area 214 (transferred in S303) and the SUM value calculated from the update data held in the output parameter update data area 213. Compare. If the SUM values are different as a result of this comparison, the control unit 101 overwrites the output parameter SUM update area 214 with the SUM value calculated from the update data in S311 and outputs the update data in the output parameter update data area 213. In addition to transferring (writing) to the parameter 203, the overwritten SUM value in the output parameter SUM update area 214 is transferred (written) to the output parameter SUM value 204. Of course, if each SUM value is different, both may be written.
The control unit 101 transfers (writes) the update data and its SUM value to the nonvolatile memory, and then confirms whether or not the update data has been updated in S312. If the update is successful, the control unit 101 clears the data update completion flag (not shown) and proceeds to S304 (S312 Yes). After proceeding to S304, the control unit 101 performs operation processing such as input / output processing after setting operation according to the updated parameters.
When the update cannot be performed in S312 (No in S312), the control unit 101 determines that some abnormality has occurred, such as damage to the nonvolatile memory, and proceeds to the abnormality process in S320.

この例では、S303にて入力パラメータSUM更新領域212には入力パラメータSUM値202を転送したデータが保持され、出力パラメータSUM更新領域214には出力パラメータSUM値204を転送したデータが保持されたものとして説明した。これは、パラメータ領域200にE2PROMなどの不揮発性メモリを使用した場合に、データの読み出しに時間を費やすことから、高速に読み書きできる(アクセスタイムの速い)SRAMなどの作業メモリ103(第二の記憶手段)に予め退避しておくことで、SUM値の比較チェックが高速になる点と、対象とする不揮発性メモリの種類に関係なくSUM値の比較プログラムを同じ構造にできるメリットがあるためである。
尚、SUM値の比較方法は、(入力パラメータSUM値202と出力パラメータSUM値204を作業メモリ103にコピーせずに)不揮発性メモリに予め保持されたSUM値202,203(オリジナルSUM値)と更新データ(211,212)領域の更新データに対して算出したSUMとを比較しても良い。
この場合S310において制御部101は、入力パラメータSUM値202と入力パラメータ更新データ領域211に保持された更新データから算出したSUM値とを比較する。この比較の結果、SUM値が相違した場合(S310 Yes)に制御部101は、S311において、入力パラメータ更新データ領域211に保持された更新データを入力パラメータ201に転送する(書き込む)と共に、前述更新データから算出したSUM値を入力パラメータSUM値202に書き込む。
In this example, the input parameter SUM update area 212 holds the data transferred with the input parameter SUM value 202 in S303, and the output parameter SUM update area 214 holds the data transferred with the output parameter SUM value 204. As explained. This is because when a non-volatile memory such as E 2 PROM is used for the parameter area 200, it takes time to read data, so that the working memory 103 such as SRAM (second access time) (second access time) can be read and written. This means that the SUM value comparison check becomes faster and that the SUM value comparison program can have the same structure regardless of the type of the target nonvolatile memory. It is.
Note that the SUM value comparison method is as follows (without copying the input parameter SUM value 202 and the output parameter SUM value 204 to the working memory 103): SUM values 202 and 203 (original SUM values) stored in advance in the nonvolatile memory. The SUM calculated for the update data in the update data (211 and 212) area may be compared.
In this case, in step S <b> 310, the control unit 101 compares the input parameter SUM value 202 with the SUM value calculated from the update data held in the input parameter update data area 211. If the SUM values are different as a result of the comparison (S310 Yes), the control unit 101 transfers (writes) the update data held in the input parameter update data area 211 to the input parameter 201 in S311 and updates the above-mentioned update. The SUM value calculated from the data is written to the input parameter SUM value 202.

同様S310において、制御部101は、出力パラメータSUM値204と出力パラメータ更新データ領域213に保持された更新データから算出したSUM値とを比較する。この比較の結果、SUM値が相違した場合(S310 Yes)に制御部101は、S311において、出力パラメータ更新データ領域213に保持された更新データを出力パラメータ203に転送する(書き込む)と共に、前述更新データから算出したSUM値を出力パラメータSUM値204に書き込む。もちろん、それぞれのSUM値が異なれば両方書き込めば良い。
また、更新データ領域210に保持される更新データは、通信部104がネットワーク110経由にて更新したり、操作部108を操作することで、更新することができるようになっている。そして、本発明のPLC100は、前述データ更新完了フラグ(不図示)がクリア状態のときに制御部101以外に更新データ領域210の書き換えが許可され、データ更新完了フラグ(不図示)がセット状態のときには、制御部101以外に更新データ領域210の書き換えが許可されないように制御(排他論理条件)している。また、本発明は、制御部101にデータ更新を伝える方法として、フラグのやりとり以外に割込にて行うことも可能である。
Similarly, in S310, the control unit 101 compares the output parameter SUM value 204 with the SUM value calculated from the update data held in the output parameter update data area 213. If the SUM values are different as a result of this comparison (Yes in S310), the control unit 101 transfers (writes) the update data held in the output parameter update data area 213 to the output parameter 203 in S311 and updates the above-mentioned update. The SUM value calculated from the data is written in the output parameter SUM value 204. Of course, if each SUM value is different, both may be written.
The update data held in the update data area 210 can be updated by the communication unit 104 being updated via the network 110 or by operating the operation unit 108. In the PLC 100 of the present invention, when the data update completion flag (not shown) is in the clear state, rewriting of the update data area 210 is permitted except for the control unit 101, and the data update completion flag (not shown) is in the set state. In some cases, control (exclusive logic condition) is performed so that rewriting of the update data area 210 is not permitted except for the control unit 101. Further, according to the present invention, as a method of transmitting data update to the control unit 101, it is also possible to perform by interruption other than the exchange of flags.

また、前述した実施例は、パラメータの正当性を検証するためのチェックコードとしてSUM値を例に説明したが、本発明のプログラマブルコントローラは、CRC(Cyclic Redundancy Check)などの巡回計算された符号をチェックコードとしても良い。以上のようにすることで、本発明は、PLCの動作モードを決定するパラメータ(オリジナルパラメータ)およびそのオリジナルパラメータから算出されたチェックコード(オリジナルSUM値)を不揮発性メモリに予め保持しておき、PLCの初期起動時において、制御部101はオリジナルパラメータとオリジナルSUM値を、SRAMに退避する。
そして、PLC稼動中(運用中)において制御部101は、前述SRAMに退避されたオリジナルパラメータがオリジナルパラメータの更新を目的とする更新データに更新されると、その更新データに対してSUM値を算出する。
本発明のPLCは、この算出したSUM値とSRAMに退避したオリジナルSUM値とを比較し、その比較の結果、それぞれのSUM値が異なったことによって、不揮発性メモリに保持されたオリジナルパラメータとオリジナルSUM値を書き換えている。そして、本発明のPLCは、更新されたパラメータに応じて動作モードを再設定するようにしたので、PLC稼動中にパラメータを更新し、それを反映することが可能となった。
In the above-described embodiment, the SUM value is described as an example of the check code for verifying the validity of the parameter. However, the programmable controller of the present invention uses a cyclically calculated code such as CRC (Cyclic Redundancy Check). It may be a check code. By doing as described above, the present invention holds in advance a parameter (original parameter) for determining the operation mode of the PLC and a check code (original SUM value) calculated from the original parameter in the nonvolatile memory, At the initial startup of the PLC, the control unit 101 saves the original parameters and the original SUM value in the SRAM.
Then, when the PLC is operating (in operation), the control unit 101 calculates the SUM value for the updated data when the original parameter saved in the SRAM is updated to the update data for updating the original parameter. To do.
The PLC of the present invention compares the calculated SUM value with the original SUM value saved in the SRAM, and as a result of the comparison, the SUM value is different, so that the original parameter held in the nonvolatile memory and the original SUM value are compared. The SUM value is rewritten. Since the PLC of the present invention resets the operation mode in accordance with the updated parameter, it is possible to update the parameter during the operation of the PLC and reflect it.

また、本発明は、更新データから算出されたSUM値とSRAMにそれぞれ保持されたSUM値(オリジナルパラメータのコピー)を比較するようにしたので、更新データがオリジナルパラメータと違ったデータパターンであることを、短時間にて的確に検出することが可能となった。
また、本発明は、SUM値の比較結果にてパラメータの更新をするようにしたので、不揮発性メモリに対するパラメータの更新を抑制すること(不要な書込みを阻止すること)ができるため、長寿命なPLCを提供することが可能となった。
また、本発明は、オリジナルパラメータとオリジナルSUM値を入力用と出力用(入力パラメータ、入力パラメータSUM値、出力パラメータ、出力パラメータSUM値)に分類して、すなわち、プログラマブルコントローラに接続される所定の機器毎に予め分類(グループ分類)して不揮発性メモリに保持しておき、PLCの初期起動時(初期起動フェーズ)において、入力パラメータから算出されたSUM値と入力パラメータSUM値とを比較する。それと同様、本発明のPLCは、出力パラメータから算出されたSUM値と出力パラメータSUM値とを比較する。この結果、本発明は、比較対象としたSUM値が相違した場合に、PLCを稼動せずに異常処理(異常フェーズ)に移行する。
In the present invention, since the SUM value calculated from the update data is compared with the SUM value (copy of the original parameter) held in the SRAM, the update data has a data pattern different from the original parameter. Can be accurately detected in a short time.
In addition, since the present invention updates the parameters based on the comparison result of the SUM values, it can suppress the update of the parameters to the nonvolatile memory (prevent unnecessary writing), and thus has a long lifetime. It became possible to provide PLC.
Further, according to the present invention, the original parameter and the original SUM value are classified into input and output (input parameter, input parameter SUM value, output parameter, output parameter SUM value), that is, a predetermined parameter connected to the programmable controller. Each device is classified in advance (group classification) and stored in a non-volatile memory, and the SUM value calculated from the input parameter is compared with the input parameter SUM value at the initial activation of the PLC (initial activation phase). Similarly, the PLC of the present invention compares the SUM value calculated from the output parameter with the output parameter SUM value. As a result, when the SUM values to be compared are different, the present invention shifts to an abnormal process (abnormal phase) without operating the PLC.

また、本発明は、異常処理(異常フェーズ)にて、相違したパラメータが含まれるグループを通知するようにした。こうすることで本発明のPLCは、パラメータの破損による思わぬ不具合を回避することが可能となるともに、破損したパラメータを容易に特定できるので、不具合の原因究明の時間を大幅に削減することが可能となった。更に本発明のPLCは、パラメータを修復するときに、ユーザは破損したパラメータのみを修復すれば良いことから、パラメータの更新に対するユーザの負担や時間を節約することが可能となった。
そして本発明は、PLCの初期起動時(初期起動フェーズ)において、パラメータのSUM値の比較をすることによりオリジナルパラメータが正常であるか否かを判定した結果、パラメータが正常である場合にのみパラメータを設定し運用フェーズに移行するようにしたので、PLCは誤った動作モードで稼動せず、PLCの誤動作を防ぎ、事故などを未然に防ぐことのできる信頼性の高いPLCを提供することが可能となった。
Further, according to the present invention, a group including different parameters is notified in the abnormal process (abnormal phase). In this way, the PLC according to the present invention can avoid an unexpected failure due to parameter damage, and can easily identify the damaged parameter, thereby greatly reducing the time for investigating the cause of the failure. It has become possible. Furthermore, the PLC of the present invention can save the user's burden and time for parameter update because the user only needs to repair the damaged parameter when restoring the parameter.
In the present invention, when the PLC is initially started (initial startup phase), the parameter SUM value is compared to determine whether the original parameter is normal. As a result, the parameter is set only when the parameter is normal. Because the PLC has been set to shift to the operation phase, it is possible to provide a highly reliable PLC that does not operate in the wrong operation mode, prevents the PLC from malfunctioning, and prevents accidents. It became.

本発明の実施例1に係る、プログラマブルコントローラ(PLC)の構成を示す内部構成図である。It is an internal block diagram which shows the structure of the programmable controller (PLC) based on Example 1 of this invention. 本発明の実施例1に係る、プログラマブルコントローラ(PLC)におけるメモリ情報を示すブロック図である。It is a block diagram which shows the memory information in the programmable controller (PLC) based on Example 1 of this invention. 本発明の実施例1に係る、パラメータが、複数のグループに分類される例を示す表である。It is a table | surface which shows the example based on Example 1 of this invention that the parameter is classified into a some group. 本発明の実施例1にしたがって、制御部が実行する処理を示すフロー図である。It is a flowchart which shows the process which a control part performs according to Example 1 of this invention. 本発明の実施例2に係る、プログラマブルコントローラ(PLC)の構成を示す内部構成図である。It is an internal block diagram which shows the structure of the programmable controller (PLC) based on Example 2 of this invention. 本発明の実施例2に係る、プログラマブルコントローラ(PLC)におけるメモリ情報示すブロック図である。It is a block diagram which shows the memory information in the programmable controller (PLC) based on Example 2 of this invention. 本発明の実施2にしたがって、制御部が実行する処理を示すフロー図である。It is a flowchart which shows the process which a control part performs according to Embodiment 2 of this invention.

符号の説明Explanation of symbols

100 プログラマブルコントローラ(PLC)
101 制御部
101a チェックコード算出手段
101b チェックコード比較手段
101c パラメータ設定手段
101d 第一の転送手段
101e 第二の転送手段
102 不揮発性メモリ
103 作業メモリ
104 通信部
105 入力部
106 出力部
107 表示部
108 操作部
109 内部バス
110 ネットワーク
200 パラメータ領域(不揮発性メモリ)
201 入力パラメータ
202 入力パラメータSUM値
203 出力パラメータ
204 出力パラメータSUM値
210 更新データ領域(作業メモリ)
211 入力パラメータ更新データ領域
212 入力パラメータSUM更新領域
213 出力パラメータ更新データ領域
214 出力パラメータSUM更新領域
100 Programmable controller (PLC)
DESCRIPTION OF SYMBOLS 101 Control part 101a Check code calculation means 101b Check code comparison means 101c Parameter setting means 101d First transfer means 101e Second transfer means 102 Non-volatile memory 103 Work memory 104 Communication part 105 Input part 106 Output part 107 Display part 108 Operation Part 109 Internal bus 110 Network 200 Parameter area (nonvolatile memory)
201 Input Parameter 202 Input Parameter SUM Value 203 Output Parameter 204 Output Parameter SUM Value 210 Update Data Area (Work Memory)
211 Input parameter update data area 212 Input parameter SUM update area 213 Output parameter update data area 214 Output parameter SUM update area

Claims (6)

動作モードを決定するパラメータを読み込み、当該パラメータに応じた動作モードを設定して動作するプログラマブルコントローラであって、
前記パラメータおよびこのパラメータの正当性を検証するための第一のチェックコードが予め保持された第一の記憶手段と、
この第一の記憶手段に保持された前記パラメータを第二の記憶手段に転送する第一の転送手段と、
前記第二の記憶手段に保持されたパラメータが更新されたことを示すフラグがセットされたとき、前記第二の記憶手段に保持されたパラメータを更新したパラメータから該パラメータの正当性を検証するための第二のチェックコードを算出するチェックコード算出手段と、
前記第一のチェックコードと前記第二のチェックコードとを比較するチェックコード比較手段と、
このチェックコード比較手段によって前記第一のチェックコードと前記第二のチェックコードとが相違したと判定されたとき、前記第二の記憶手段に保持されたパラメータを更新したパラメータおよび前記第二のチェックコードを前記第一の記憶手段にそれぞれ転送して、前記第一の記憶手段に予め保持されていた前記パラメータおよび前記第一のチェックコードを上書きする第二の転送手段と、
前記第一の記憶手段に予め保持されていたパラメータを上書きしたパラメータを読み込み、動作モードを再設定するパラメータ設定手段と、
を備えることを特徴とするプログラマブルコントローラ。
A programmable controller that reads a parameter for determining an operation mode and operates by setting an operation mode according to the parameter ,
First storage means in which the parameter and a first check code for verifying the validity of the parameter are stored in advance;
A first transfer means for transferring the parameter held in the first storage means to a second storage means;
When a flag indicating that the parameter held in the second storage unit has been updated is set, in order to verify the validity of the parameter from the parameter updated in the parameter stored in the second storage unit Check code calculation means for calculating the second check code of
Check code comparing means for comparing the first check code and the second check code ;
When the check code comparing means determines that the first check code and the second check code are different, the parameter stored in the second storage means is updated and the second check A second transfer means for respectively transferring a code to the first storage means and overwriting the parameter and the first check code previously held in the first storage means;
A parameter setting unit that reads a parameter overwritten by a parameter previously stored in the first storage unit, and resets the operation mode;
A programmable controller comprising:
動作モードを決定するパラメータを読み込み、当該パラメータに応じた動作モードを設定して動作するプログラマブルコントローラであって、
前記パラメータおよびこのパラメータの正当性を検証するための第一のチェックコードが予め保持された第一の記憶手段と、
この第一の記憶手段に保持された前記パラメータおよび前記第一のチェックコードを第二の記憶手段にそれぞれ転送する第一の転送手段と、
前記第二の記憶手段に保持されたパラメータが更新されたことを示すフラグがセットされたとき、前記第二の記憶手段に保持されたパラメータを更新したパラメータから該パラメータの正当性を検証するための第二のチェックコードを算出するチェックコード算出手段と、
前記第二の記憶手段に保持された前記第一のチェックコードと前記第二のチェックコードとを比較するチェックコード比較手段と、
このチェックコード比較手段によって前記第二の記憶手段に保持された前記第一のチェックコードと前記第二のチェックコードとが相違したと判定されたとき、前記第二の記憶手段に保持されたパラメータを更新したパラメータおよび前記第二のチェックコードを前記第一の記憶手段にそれぞれ転送して、前記第一の記憶手段に予め保持されていた前記パラメータおよび前記第一のチェックコードを上書きする第二の転送手段と、
前記第一の記憶手段に予め保持されていたパラメータを上書きしたパラメータを読み込み、動作モードを再設定するパラメータ設定手段と、
を備えることを特徴とするプログラマブルコントローラ。
A programmable controller that reads a parameter for determining an operation mode and operates by setting an operation mode according to the parameter ,
First storage means in which the parameter and a first check code for verifying the validity of the parameter are stored in advance;
First transfer means for transferring the parameter and the first check code held in the first storage means to the second storage means, respectively;
When a flag indicating that the parameter held in the second storage unit has been updated is set, in order to verify the validity of the parameter from the parameter updated in the parameter stored in the second storage unit Check code calculation means for calculating the second check code of
Check code comparison means for comparing the first check code held in the second storage means with the second check code;
When it is determined by the check code comparison means that the first check code held in the second storage means is different from the second check code, the parameters held in the second storage means The updated parameter and the second check code are respectively transferred to the first storage unit, and the parameter and the first check code previously stored in the first storage unit are overwritten. Transfer means,
A parameter setting unit that reads a parameter overwritten by a parameter previously stored in the first storage unit, and resets the operation mode;
A programmable controller comprising:
請求項1〜2のいずれかに記載のプログラマブルコントローラであって、The programmable controller according to claim 1, wherein
前記パラメータおよび前記第一のチェックコードは、プログラマブルコントローラに接続される所定の機器毎に予め複数のグループに分類されて前記第一の記憶手段に保持され、The parameter and the first check code are classified into a plurality of groups in advance for each predetermined device connected to the programmable controller and held in the first storage unit,
前記チェックコード算出手段は、プログラマブルコントローラの初期起動時に、前記分類保持されたパラメータ毎に各パラメータの正当性を検証するためのチェックコードをそれぞれ算出し、The check code calculation means calculates a check code for verifying the validity of each parameter for each of the classified and held parameters at the initial startup of the programmable controller,
前記チェックコード比較手段は、算出された複数の前記チェックコードと該チェックコードに対応する前記第一のチェックコードとをそれぞれ比較すると共に、The check code comparison means compares the calculated plurality of check codes with the first check code corresponding to the check code, respectively.
前記プログラマブルコントローラは、更に前記チェックコード比較手段によってチェックコードが一致したと判定されたとき、前記パラメータ設定手段に前記パラメータを設定させることを特徴とするプログラマブルコントローラ。The programmable controller further causes the parameter setting means to set the parameter when it is determined by the check code comparison means that the check codes match.
請求項1〜2のいずれかに記載のプログラマブルコントローラであって、The programmable controller according to claim 1, wherein
前記パラメータおよび前記第一のチェックコードは、プログラマブルコントローラに接続される所定の機器毎に予め複数のグループに分類されて前記第一の記憶手段に保持され、The parameter and the first check code are classified into a plurality of groups in advance for each predetermined device connected to the programmable controller and held in the first storage unit,
前記チェックコード算出手段は、プログラマブルコントローラの初期起動時に、前記分類保持されたパラメータ毎に各パラメータの正当性を検証するためのチェックコードをそれぞれ算出し、The check code calculation means calculates a check code for verifying the validity of each parameter for each of the classified and held parameters at the initial startup of the programmable controller,
前記チェックコード比較手段は、算出された複数の前記チェックコードと該チェックコードに対応する前記第一のチェックコードとをそれぞれ比較すると共に、The check code comparison means compares the calculated plurality of check codes with the first check code corresponding to the check code, respectively.
前記プログラマブルコントローラは、更に前記チェックコード比較手段によってチェックコードが相違したと判定されたとき、相違した前記チェックコードが含まれる前記グループを通知する通知手段とThe programmable controller further includes notification means for notifying the group including the different check code when the check code comparison means determines that the check code is different.
を備えることを特徴とするプログラマブルコントローラ。A programmable controller comprising:
前記第一または第二のチェックコードは、前記パラメータを順次加算して合計値としたSUM値、または前記パラメータを巡回計算した値であることを特徴とする請求項1〜4のいずれかに記載のプログラマブルコントローラ。 The first or second check code is a SUM value obtained by sequentially adding the parameters, or a value obtained by cyclic calculation of the parameters. Programmable controller. 前記第一の記憶手段は、書き換え可能な不揮発性メモリであることを特徴とする請求項1〜5のいずれかに記載のプログラマブルコントローラ。The programmable controller according to claim 1, wherein the first storage unit is a rewritable nonvolatile memory.
JP2008027772A 2008-02-07 2008-02-07 Programmable controller Active JP5012548B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008027772A JP5012548B2 (en) 2008-02-07 2008-02-07 Programmable controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008027772A JP5012548B2 (en) 2008-02-07 2008-02-07 Programmable controller

Publications (2)

Publication Number Publication Date
JP2009187373A JP2009187373A (en) 2009-08-20
JP5012548B2 true JP5012548B2 (en) 2012-08-29

Family

ID=41070534

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008027772A Active JP5012548B2 (en) 2008-02-07 2008-02-07 Programmable controller

Country Status (1)

Country Link
JP (1) JP5012548B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9577882B2 (en) 2014-04-24 2017-02-21 Mitsubishi Electric Corporation Control system, master station, and remote station

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5387526B2 (en) * 2010-07-15 2014-01-15 株式会社デンソー Control device and tuning method
KR20150143832A (en) 2013-04-22 2015-12-23 미쓰비시덴키 가부시키가이샤 Programmable logic controller system and programmable logic controller
JP6173615B2 (en) * 2015-02-23 2017-08-02 三菱電機株式会社 Control device and control system
WO2021005691A1 (en) * 2019-07-08 2021-01-14 三菱電機株式会社 Control device, program monitoring method, and program

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0276001A (en) * 1988-09-13 1990-03-15 Meidensha Corp Up-line load method for pc program
JP3268130B2 (en) * 1994-07-20 2002-03-25 株式会社東芝 Data processing device using flash EEPROM
JP2002055822A (en) * 2000-08-08 2002-02-20 Nec Corp System and method for controlling program of terminal, and recording medium recorded with control program therefor
JP2004234588A (en) * 2003-02-03 2004-08-19 Hitachi Kokusai Electric Inc File checking method
JP2007034858A (en) * 2005-07-29 2007-02-08 Kyocera Mita Corp Data backup method and memory device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9577882B2 (en) 2014-04-24 2017-02-21 Mitsubishi Electric Corporation Control system, master station, and remote station

Also Published As

Publication number Publication date
JP2009187373A (en) 2009-08-20

Similar Documents

Publication Publication Date Title
US7818465B2 (en) I/O module expansion unit and distributed automation system
JP5012548B2 (en) Programmable controller
JP4788912B2 (en) PLC
JP2018128820A (en) Control device and method for controlling the same
JP6139386B2 (en) Programmable controller
JP2010238223A (en) I/o unit and industrial controller
EP2124151A1 (en) Information processing system and method for starting/recovering the system
JP5167936B2 (en) Information processing device
EP1983441B1 (en) Component information restoration method and electronic apparatus therefor
JP5041290B2 (en) PROGRAMMABLE CONTROLLER AND ITS ERROR RECOVERY METHOD
JP2013175118A (en) Control device, memory failure detection method thereof and self-diagnostic method thereof
JP2012118904A (en) Information processing apparatus
JP5365875B2 (en) Industrial controller
JP6870234B2 (en) Control device, control system and control method
CN116848476A (en) PLC-based support for zero downtime upgrades of control functions
JP5447700B2 (en) Measuring device
JP7379932B2 (en) Control device, user program execution control method, and system program
JPH09120376A (en) Data processor
JP5286831B2 (en) Measuring device
JP6051545B2 (en) PLC system, status display method, PLC, and programmable display
JP4867557B2 (en) Programmable controller
JP4232589B2 (en) Duplex controller and its equalization mode decision method
CN114860052B (en) Program execution judging method, device, equipment and readable storage medium
JP2003140915A (en) Computer device, and download method of program
JP5447699B2 (en) Measuring device

Legal Events

Date Code Title Description
A625 Written request for application examination (by other person)

Free format text: JAPANESE INTERMEDIATE CODE: A625

Effective date: 20100914

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20110422

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20111018

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111025

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111110

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120521

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150615

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5012548

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

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