JPWO2014041829A1 - Safety arithmetic device, safety input device, safety output device and safety controller - Google Patents
Safety arithmetic device, safety input device, safety output device and safety controller Download PDFInfo
- Publication number
- JPWO2014041829A1 JPWO2014041829A1 JP2014535388A JP2014535388A JPWO2014041829A1 JP WO2014041829 A1 JPWO2014041829 A1 JP WO2014041829A1 JP 2014535388 A JP2014535388 A JP 2014535388A JP 2014535388 A JP2014535388 A JP 2014535388A JP WO2014041829 A1 JPWO2014041829 A1 JP WO2014041829A1
- Authority
- JP
- Japan
- Prior art keywords
- output
- input
- unit
- memory area
- safety
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Safety Devices In Control Systems (AREA)
Abstract
プロセッサ(11)およびメモリ(12)を有し、メモリは、第1メモリ領域(12A)と、第1メモリ領域とは異なるアドレスの第2メモリ領域(12B)を有し、プロセッサは、第1メモリ領域に書き込まれた入力データのプログラム処理を含む第1処理過程と、第2メモリ領域に書き込まれた入力データのプログラム処理、および第2メモリ領域に書き込まれた出力データへの冗長符号の付与と、を含む第2処理過程と、を実行する実行制御部(13)と、第1処理過程における冗長符号の付与を経た出力データ、および第2処理過程における冗長符号の付与を経た出力データを照合する結果照合部(14)と、プロセッサおよびメモリの故障の有無を診断する演算診断部(15)と、冗長検査、結果照合部における照合および演算診断部における診断の少なくともいずれかにおいて異常が検出された場合に、出力データの出力を停止させる異常処理部(16)と、を有する。The memory includes a processor (11) and a memory (12). The memory includes a first memory area (12A) and a second memory area (12B) having an address different from the first memory area. A first processing step including a program process of input data written in the memory area, a program process of input data written in the second memory area, and the provision of a redundant code to the output data written in the second memory area An execution control unit (13) that executes a second processing step including: output data that has been given a redundant code in the first processing step, and output data that has been given a redundant code in the second processing step. Result collation unit (14) for collation, operation diagnosis unit (15) for diagnosing the presence or absence of a failure of the processor and memory, verification in the redundancy check, result collation unit, and operation diagnosis If an abnormality is detected in at least one of diagnosis in section, it has the abnormality processing unit stopping output of the output data (16), the.
Description
本発明は、安全演算装置、安全入力装置、安全出力装置および安全コントローラ、特に、信頼性の高い制御動作を保障するための内部診断を実施する安全コントローラの構成に関する。 The present invention relates to a safety arithmetic device, a safety input device, a safety output device, and a safety controller, and more particularly, to a configuration of a safety controller that performs an internal diagnosis for ensuring a highly reliable control operation.
安全制御のための安全コントローラは、例えば、機能安全に関する国際規格であるIEC61508にしたがって、プロセッサやメモリにおける回路の永続的な故障であるハードウェア故障と、一時的な故障であるソフトウェア故障との両方を検出可能であることが求められている。 Safety controllers for safety control, for example, according to IEC61508, an international standard for functional safety, both hardware failures that are permanent failures of circuits in processors and memories and software failures that are temporary failures Is required to be detectable.
安全コントローラの内部診断については、例えば、2つのプロセッサの演算結果を照合して相互診断する手法や、1つのプロセッサにて同じ演算処理を2回実行して処理結果を比較する手法が知られている。例えば、特許文献1には、1つのプロセッサが同じ演算処理を2回実行した結果を別々のメモリに書き込む方法が開示されている。 For internal diagnosis of the safety controller, for example, there are known a method of comparing the operation results of two processors and performing a mutual diagnosis, and a method of executing the same operation processing twice in one processor and comparing the processing results. Yes. For example, Patent Document 1 discloses a method of writing the results of executing the same arithmetic processing twice by one processor in different memories.
特許文献1に記載の構成によると、2つのメモリからの出力は、二重化されたデマルチプレクサとフリップフロップ回路とを用いて一重化される。プロセッサで演算処理を2回実行した結果の照合は、二重化されたハードウェア回路により実現される。この二重化された回路構成を採用する場合、一重の入出力回路からなる一般的な構成に比べて、冗長な回路構成が必要となる分、安全コントローラが複雑かつ高コストとなることが問題となる。 According to the configuration described in Patent Document 1, outputs from two memories are unified using a duplexed demultiplexer and flip-flop circuit. The collation of the result of executing the arithmetic processing twice by the processor is realized by a duplicated hardware circuit. When this dual circuit configuration is adopted, there is a problem that the safety controller is complicated and expensive because a redundant circuit configuration is required compared to a general configuration including a single input / output circuit. .
本発明は、上記に鑑みてなされたものであって、一重の回路構成として簡易かつ低コストを実現し、ハードウェア故障およびソフトウェア故障の両方を検出可能とする安全演算装置、安全入力装置、安全出力装置および安全コントローラを得ることを目的とする。 The present invention has been made in view of the above, and realizes a simple and low-cost single circuit configuration, and can detect both a hardware failure and a software failure, a safety input device, a safety An object is to obtain an output device and a safety controller.
上述した課題を解決し、目的を達成するために、本発明は、入力データのプログラム処理を実施するプロセッサと、前記プロセッサへ入力される前記入力データ、および前記プログラム処理の結果である出力データを保持するメモリと、を有し、前記メモリは、第1メモリ領域と、前記第1メモリ領域とは異なるアドレスの第2メモリ領域と、のそれぞれに、前記入力データおよび前記出力データを保持可能であって、前記プロセッサは、前記第1メモリ領域に書き込まれた前記入力データの前記プログラム処理と、前記プログラム処理の結果として前記第1メモリ領域に書き込まれた前記出力データへの冗長符号の付与と、を含む第1処理過程と、前記第2メモリ領域に書き込まれた前記入力データの前記プログラム処理と、前記プログラム処理の結果として前記第2メモリ領域に書き込まれた前記出力データへの冗長符号の付与と、を含む第2処理過程と、を実行する実行制御部と、前記第1処理過程における前記冗長符号の付与を経た前記出力データと、前記第2処理過程における前記冗長符号の付与を経た前記出力データとを照合する結果照合部と、前記プロセッサおよび前記メモリの故障の有無を演算によって診断する演算診断部と、前記入力データおよび前記出力データの冗長検査、前記結果照合部における照合、および前記演算診断部における診断の少なくともいずれかにおいて異常が検出された場合に、前記出力データの出力を停止させる異常処理部と、を有することを特徴とする。 In order to solve the above-described problems and achieve the object, the present invention provides a processor that performs program processing of input data, the input data that is input to the processor, and output data that is a result of the program processing. And the memory can hold the input data and the output data in each of a first memory area and a second memory area having an address different from the first memory area. The processor performs the program processing of the input data written in the first memory area, and assigns a redundant code to the output data written in the first memory area as a result of the program processing. , The program processing of the input data written in the second memory area, and the program An execution control unit for executing a second processing step including adding a redundant code to the output data written in the second memory area as a result of the processing; and the redundant code in the first processing step A result collating unit that collates the output data that has been given and the output data that has been given the redundant code in the second processing step, and an arithmetic diagnostic unit that diagnoses whether the processor and the memory are faulty by calculation And an abnormality process for stopping output of the output data when an abnormality is detected in at least one of the redundancy check of the input data and the output data, the verification in the result verification unit, and the diagnosis in the arithmetic diagnosis unit And a portion.
本発明にかかる安全演算装置は、プロセッサおよびメモリを含む一重の回路構成を備える。実行制御部は、第1メモリ領域から読み出した入力データ、および第2メモリ領域から読み出した入力データに対し、それぞれプログラム処理を実行する。結果照合部は、双方の入力データについてのプログラム処理の結果を照合することで、ソフトウェア故障を検出する。演算診断部は、プロセッサおよびメモリにおけるハードウェア故障を検出する。これにより、安全演算装置は、一重の回路構成として簡易かつ低コストを実現し、ハードウェア故障およびソフトウェア故障の両方を検出できるという効果を奏する。 The safety arithmetic device according to the present invention has a single circuit configuration including a processor and a memory. The execution control unit executes program processing on the input data read from the first memory area and the input data read from the second memory area, respectively. The result verification unit detects a software failure by verifying the results of the program processing for both input data. The arithmetic diagnosis unit detects a hardware failure in the processor and the memory. As a result, the safety arithmetic device is simple and low-cost as a single circuit configuration, and has the effect of being able to detect both hardware and software failures.
以下に、本発明にかかる安全演算装置、安全入力装置、安全出力装置および安全コントローラの実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。 Hereinafter, embodiments of a safety arithmetic device, a safety input device, a safety output device, and a safety controller according to the present invention will be described in detail with reference to the drawings. Note that the present invention is not limited to the embodiments.
実施の形態1.
図1は、本発明の実施の形態1にかかる安全演算装置を備える安全コントローラの構成を示すブロック図である。安全コントローラは、安全演算装置10、安全入力装置18および安全出力装置19を備える。Embodiment 1 FIG.
FIG. 1 is a block diagram illustrating a configuration of a safety controller including a safety arithmetic device according to the first embodiment of the present invention. The safety controller includes a
安全演算装置10は、安全制御のための演算処理を実施する。安全入力装置18は、安全コントローラへの入力信号の入力を受け付ける。安全出力装置19は、安全コントローラから外部へ出力信号を出力する。安全演算装置10、安全入力装置18および安全出力装置19は、バス20を介して互いに内部接続されている。
The safety
安全演算装置10は、プロセッサ11およびメモリ12を有する。プロセッサ11は、安全演算装置10へ入力された入力データのプログラム処理を実施する。メモリ12は、プロセッサ11へ入力される入力データ、およびプログラム処理の結果である出力データを保持する。
The
メモリ12は、互いに独立した第1メモリ領域12Aおよび第2メモリ領域12Bを有する。第2メモリ領域12Bは、第1メモリ領域12Aとはアドレスが異なる。第1メモリ領域12Aおよび第2メモリ領域12Bは、いずれも入力データおよび出力データを保持可能とされている。
The
プロセッサ11は、実行制御部13、結果照合部14、演算診断部15、異常処理部16および入出力処理部17を有する。実行制御部13は、第1メモリ領域12Aに書き込まれた入力データについての第1処理過程と、第2メモリ領域12Bに書き込まれた入力データについての第2処理過程とを実行する。結果照合部14は、第1処理過程において第1メモリ領域12Aに書き込まれた出力データと、第2処理過程において第2メモリ領域12Bに書き込まれた出力データとを照合する。
The
演算診断部15は、プロセッサ11およびメモリ12の故障の有無を演算により診断する。演算診断部15によるプロセッサ11およびメモリ12の診断には、例えば、テストパターンを用いる。異常処理部16は、入力データおよび出力データの冗長検査、結果照合部14における照合、および演算診断部15における診断の少なくともいずれかにおいて異常が検出された場合に、出力データの出力を停止させる。
The operation diagnosis unit 15 diagnoses the presence or absence of a failure in the
入出力処理部17は、安全入力装置18と第1メモリ領域12Aおよび第2メモリ領域12Bとの間の入力データの転送と、安全出力装置19と第1メモリ領域12Aおよび第2メモリ領域12Bとの間の出力データの転送とを行う。
The input /
図2および図3は、安全コントローラの動作手順を示すフローチャートである。安全入力装置18は、入力データに冗長符号を付与する。入出力処理部17は、冗長符号が付与された入力データを安全入力装置18から読み込む。入出力処理部17は、読み込んだ入力データを第1メモリ領域12Aおよび第2メモリ領域12Bに書き込む(ステップS1)。
2 and 3 are flowcharts showing the operation procedure of the safety controller. The
実行制御部13は、第1メモリ領域12Aへ書き込まれた入力データ(第1入力データ)に付随する冗長符号をチェックする(ステップS2)。冗長符号は、例えばCRC(Cyclic Redundancy Checking)とする。
The
かかる冗長検査において異常が検出された場合(ステップS3、Yes)、異常処理部16は、安全コントローラの動作を停止させる(ステップS18)。一方、ステップS2の冗長検査により異常が無いことを確認すると(ステップS3、No)、実行制御部13は、第1入力データのプログラム処理を実行する(ステップS4)。プログラムは、例えばユーザにより作成されたアプリケーションプログラムとする。実行制御部13は、プログラム処理において、第1入力データと、第1メモリ領域12Aが保持する自己保存データとを用いる。
When an abnormality is detected in the redundancy check (step S3, Yes), the
実行制御部13は、ステップS4における処理結果である出力データ(第1出力データ)を、第1メモリ領域12Aに書き込む(ステップS5)。実行制御部13は、第1メモリ領域12Aが保持する自己保存データを、ステップS4における処理結果に応じて書き換える。
The
実行制御部13は、第1メモリ領域12Aへ書き込まれた第1出力データに冗長符号を付与する(ステップS6)。冗長符号は、例えばCRCとする。ステップS2からステップS6は、第1メモリ領域12Aに書き込まれた第1入力データについての第1処理過程に相当する。
The
次に、実行制御部13は、第2メモリ領域12Bへ書き込まれた入力データ(第2入力データ)に付随する冗長符号をチェックする(ステップS7)。冗長符号は、例えばCRCとする。かかる冗長検査において異常が検出された場合(ステップS8、Yes)、異常処理部16は、安全コントローラの動作を停止させる(ステップS18)。一方、ステップS7の冗長検査により異常が無いことを確認すると(ステップS8、No)、実行制御部13は、第2入力データのプログラム処理を実行する(ステップS9)。
Next, the
第1メモリ領域12Aおよび第2メモリ領域12Bは、オフセットアドレスが異なる以外は、メモリマップは同一である。実行制御部13は、第2入力データに対しては、ステップS4における第1入力データの処理のときとは異なるオフセットアドレスとして、同じプログラムを実行する。実行制御部13は、プログラム処理において、第2入力データと、第2メモリ領域12Bが保持する自己保存データとを用いる。
The
実行制御部13は、ステップS9における処理結果である出力データ(第2出力データ)を、第2メモリ領域12Bに書き込む(ステップS10)。実行制御部13は、第2メモリ領域12Bが保持する自己保存データを、ステップS9における処理結果に応じて書き換える。
The
実行制御部13は、第2メモリ領域12Bへ書き込まれた第2出力データに冗長符号を付与する(ステップS11)。冗長符号は、例えばCRCとする。ステップS7からステップS11は、第2メモリ領域12Bに書き込まれた第2入力データについての第2処理過程に相当する。
The
次に、結果照合部14は、ステップS6における冗長符号の付与を経た第1出力データと、ステップS11における冗長符号の付与を経た第2出力データとを比較照合する(ステップS12)。結果照合部14は、第1および第2出力データに加えて、値が変更される可能性のある自己保存データを、比較照合の範囲に含めることとしても良い。 Next, the result matching unit 14 compares and collates the first output data that has been given the redundant code in step S6 and the second output data that has been given the redundant code in step S11 (step S12). In addition to the first and second output data, the result collating unit 14 may include self-stored data whose value may be changed in the range of the comparison collation.
結果照合部14での照合において異常が検出された場合(ステップS13、Yes)、異常処理部16は、安全コントローラの動作を停止させる(ステップS18)。一方、結果照合部14での照合において異常が無いことを確認すると(ステップS13、No)、入出力処理部17は、第1メモリ領域12Aから第1出力データを読み出し、第1出力データを安全出力装置19に書き込む。
When abnormality is detected in the collation by the result collation unit 14 (step S13, Yes), the
安全出力装置19は、入出力処理部17によって書き込まれた第1出力データに付随する冗長符号をチェックする(ステップS14)。かかる冗長検査において異常が検出された場合(ステップS15、Yes)、異常処理部16は、安全出力装置19による第1出力データの出力を停止させる(ステップS18)。一方、ステップS14の冗長検査により異常が無いことを確認すると(ステップS15、No)、安全出力装置19は、第1出力データを出力する。
The
次に、演算診断部15は、プロセッサ11およびメモリ12の故障の有無を診断する(ステップS16)。演算診断部15は、プロセッサ11の演算ユニット(ALU;Arithmetic and Logic Unit)を、テストパターンを使用して診断する。テストパターンとしては、ALUのレジスタの各ビットが独立してON/OFFできることを確認可能であるものを選択する。
Next, the
例えば、和算を行うALUの場合、演算対象となる2つのレジスタの各ビット(0,0),(0,1),(1,0),(1,1)の確認と、下位ビットからのキャリー演算を実施する。さらに、隣接しているメモリビット間にショートが無いことを確認するために、テストパターンとしては、隣接ビットが異なる結果となるもの(0x5555および0xAAAA)を選択する。 For example, in the case of an ALU that performs summation, confirmation of each bit (0, 0), (0, 1), (1, 0), (1, 1) of two registers to be operated and Carry out the carry operation. Furthermore, in order to confirm that there is no short between adjacent memory bits, test patterns (0x5555 and 0xAAAA) that result in different adjacent bits are selected.
演算診断部15は、第1メモリ領域12Aおよび第2メモリ領域12Bの指定されたアドレスに対し、互いに異なるテストパターンの書き込みおよび読み出しを行う。第1メモリ領域12Aおよび第2メモリ領域12Bは、互いに異なるオフセットアドレスと、同じメモリマップとを持つ。同じテストパターンでは、オフセットアドレスラインが固着する故障があっても、第1メモリ領域12Aおよび第2メモリ領域12Bの同じアドレスに同じ値が書き込まれることとなり、正確な故障診断が困難となる。演算診断部15は、第1メモリ領域12Aおよび第2メモリ領域12Bの指定されたアドレスに予め異なる値を書き込み、読み出された値と書き込み時の値とを比較することで、アドレスラインの故障を診断する。
The
プロセッサ11およびメモリ12の故障診断において異常が検出された場合(ステップS17、Yes)、すなわちプロセッサ11およびメモリ12の少なくともいずれかに故障があった場合、異常処理部16は、安全コントローラの動作を停止させる(ステップS18)。異常処理部16は、第1メモリ領域12Aおよび第2メモリ領域12Bからの信号出力をOFFにする。
If an abnormality is detected in the failure diagnosis of the
一方、プロセッサ11およびメモリ12の故障診断により異常が無いこと、すなわちプロセッサ11およびメモリ12のいずれにも故障が無いことを確認すると(ステップS17、No)、安全コントローラは、ステップS1に戻って、安全制御のための動作を継続する。
On the other hand, when it is confirmed by the failure diagnosis of the
安全コントローラは、入力データおよび出力データの冗長検査、結果照合部14における照合、および演算診断部15における診断の少なくともいずれかにおいて異常が検出された場合、ステップS18における動作の停止により、無為の無限ループ状態となる。これにより、安全コントローラは、異常を検出した時点で、出力データの出力を停止させる。
When an abnormality is detected in at least one of the redundant check of the input data and the output data, the verification in the result verification unit 14, and the diagnosis in the
安全コントローラは、安全演算装置10のプロセッサ11およびメモリ12のいずれかにソフトウェア故障が発生した場合、結果照合部14による照合結果から、故障の発生を検出することができる。なお、安全コントローラは、ソフトウェア故障があった場合に、動作を停止させる以外に、所定の処置を施した上で動作を継続することとしても良い。
The safety controller can detect the occurrence of the failure from the collation result by the result collating unit 14 when a software fault occurs in either the
ソフトウェア故障は、ソフトウェア処理におけるある周期にて検出されても、次周期以降には解消されることがあり得る。安全コントローラは、例えば、故障が検出された周期の直前の周期における出力データを当該周期に適用することで、エラー扱いとせず次周期以降の処理を継続することとしても良い。安全コントローラは、所定回数の周期にて連続して故障を検出した場合に、動作を停止させることとしても良い。 Even if a software failure is detected in a certain cycle in software processing, it may be resolved after the next cycle. For example, the safety controller may apply the output data in the cycle immediately before the cycle in which the failure is detected to the cycle to continue the processing in the next cycle and not treat it as an error. The safety controller may stop the operation when it detects failures continuously in a predetermined number of cycles.
安全コントローラは、プロセッサ11およびメモリ12のいずれかにハードウェア故障が発生した場合、演算診断部15による診断結果から、故障の発生を検出することができる。ハードウェア故障は、ソフトウェア処理のある周期にて検出されれば、次周期以降も解消されないこととなる。このため、安全コントローラは、ハードウェア故障を検出した場合、直ちに動作を停止させる。
When a hardware failure occurs in either the
安全コントローラは、プロセッサ11、メモリ12、安全入力装置18および安全出力装置19からなる一重の回路構成を採用する。安全コントローラは、二重化されたハードウェア構造を採用しなくても、ハードウェア故障およびソフトウェア故障の両方を検出することができる。安全コントローラは、一重の回路構成として簡易かつ低コストを実現できる。
The safety controller employs a single circuit configuration including the
実施の形態2.
図4および図5は、本発明の実施の形態2にかかる安全演算装置を備える安全コントローラの動作手順を示すフローチャートである。本実施の形態にかかる安全コントローラは、実施の形態1にかかる安全コントローラ(図1参照)と同様の構成を備える。本実施の形態における動作手順のうちステップS1からステップS9の手順は、実施の形態1における動作手順のステップS1からS9(図2参照)と同様である。Embodiment 2. FIG.
FIG. 4 and FIG. 5 are flowcharts showing an operation procedure of the safety controller including the safety arithmetic device according to the second embodiment of the present invention. The safety controller according to the present embodiment has the same configuration as the safety controller according to the first embodiment (see FIG. 1). Of the operation procedures in the present embodiment, steps S1 to S9 are the same as steps S1 to S9 (see FIG. 2) of the operation procedures in the first embodiment.
実行制御部13は、ステップS9における処理結果である出力データ(第2出力データ)を、ビット反転させる(ステップS20)。実行制御部13は、ビット反転を経た第2出力データを、第2メモリ領域12Bに書き込む(ステップS10)。また、実行制御部13は、第2メモリ領域12Bが保持する自己保存データを、ステップS9における処理結果に応じて書き換えるとともに、ビット反転させる。
The
実行制御部13は、第2メモリ領域12Bへ書き込まれた第2出力データに冗長符号を付与する(ステップS11)。冗長符号は、例えばCRCとする。ステップS7からステップS11は、第2メモリ領域12Bに書き込まれた第2入力データについての第2処理過程に相当する。
The
次に、結果照合部14は、ステップS6における冗長符号の付与を経た第1出力データと、ステップS11における冗長符号の付与を経た第2出力データとを比較照合する(ステップS12)。ステップS12において、結果照合部14は、互いの排他論理和を求める手法により、第1出力データと第2出力データとを照合する。その後ステップS13からステップS15の動作手順は、実施の形態1におけるステップS13からステップS15の動作手順と同様である。 Next, the result matching unit 14 compares and collates the first output data that has been given the redundant code in step S6 and the second output data that has been given the redundant code in step S11 (step S12). In step S12, the result collating unit 14 collates the first output data and the second output data by a method of obtaining mutual exclusive OR. Thereafter, the operation procedure from step S13 to step S15 is the same as the operation procedure from step S13 to step S15 in the first embodiment.
ステップS14の冗長検査により異常が無いことを確認すると(ステップS15、No)、安全出力装置19は、第1出力データを出力する。次に、演算診断部15は、プロセッサ11の故障の有無を診断する(ステップS21)。第1メモリ領域12Aが保持する第1出力データに対し、第2メモリ領域12Bが保持する第2出力データは、ステップS20におけるビット反転を経ている。アドレスラインの故障は、第1出力データと第2出力データとを比較照合することで検出できる。よって、実施の形態2では、演算診断部15によるメモリ12の故障診断は不要となる。
When it is confirmed by the redundancy check in step S14 that there is no abnormality (step S15, No), the
ステップS17およびステップS18の動作手順は、実施の形態1におけるステップS17およびステップS18の動作手順と同様である。実施の形態2にかかる安全コントローラは、実施の形態1と同様に、一重の回路構成として簡易かつ低コストを実現し、ハードウェア故障およびソフトウェア故障の両方を検出することができる。 The operation procedure of step S17 and step S18 is the same as the operation procedure of step S17 and step S18 in the first embodiment. As in the first embodiment, the safety controller according to the second embodiment realizes simple and low cost as a single circuit configuration, and can detect both hardware failure and software failure.
実施の形態3.
実施の形態3にかかる安全コントローラは、実施の形態1にかかる安全コントローラ(図1参照)と同様の構成を備える。本実施の形態にかかる安全コントローラの動作手順は、実施の形態2にかかる安全コントローラの動作手順(図4および図5参照)のうちステップS20において、ビット反転に代えて、補数への変換を行う。ここで、本実施の形態の動作手順を、図4および図5のフローチャートを参照して説明する。Embodiment 3 FIG.
The safety controller according to the third embodiment has the same configuration as the safety controller according to the first embodiment (see FIG. 1). In the operation procedure of the safety controller according to the present embodiment, in step S20 of the operation procedure of the safety controller according to the second embodiment (see FIGS. 4 and 5), conversion to a complement is performed instead of bit inversion. . Here, the operation procedure of the present embodiment will be described with reference to the flowcharts of FIGS.
実行制御部13は、ステップS9における処理結果である出力データ(第2出力データ)を、補数へ変換する。実行制御部13は、補数への変換を経た第2出力データを、第2メモリ領域12Bに書き込む(ステップS10)。また、実行制御部13は、第2メモリ領域12Bが保持する自己保存データを、ステップS9における処理結果に応じて書き換えるとともに、補数に変換する。
The
結果照合部14は、ステップS6における冗長符号の付与を経た第1出力データと、ステップS11における冗長符号の付与を経た第2出力データとを比較照合する(ステップS12)。ステップS12において、結果照合部14は、互いの和がゼロであるか否かにより、第1出力データと第2出力データとを照合する。その後の動作手順は、実施の形態2におけるステップS13からステップS18の動作手順と同様である。 The result matching unit 14 compares and collates the first output data that has been given the redundant code in step S6 and the second output data that has been given the redundant code in step S11 (step S12). In step S12, the result collating unit 14 collates the first output data and the second output data depending on whether or not the sum is zero. The subsequent operation procedure is the same as the operation procedure from step S13 to step S18 in the second embodiment.
実施の形態3では、実施の形態2と同様、第1メモリ領域12Aに書き込まれる第1出力データと第2メモリ領域12Bに書き込まれる第2出力データとは異なる値である。アドレスラインの故障は、第1出力データと第2出力データとを比較照合することで検出できる。よって、実施の形態3では、演算診断部15によるメモリ12の故障診断は不要となる。
In the third embodiment, as in the second embodiment, the first output data written in the
実施の形態3にかかる安全コントローラは、実施の形態1および2と同様に、一重の回路構成として簡易かつ低コストを実現し、ハードウェア故障およびソフトウェア故障の両方を検出することができる。 As in the first and second embodiments, the safety controller according to the third embodiment realizes simple and low cost as a single circuit configuration, and can detect both hardware failures and software failures.
実施の形態4.
実施の形態4にかかる安全コントローラは、実施の形態1にかかる安全コントローラ(図1参照)と同様の構成を備える。本実施の形態にかかる安全コントローラの動作手順は、実施の形態2にかかる安全コントローラの動作手順(図4および図5参照)のうちステップS20において、ビット反転に代えて、エンディアンを逆転させる変換を行う。ここで、本実施の形態の動作手順を、図4および図5のフローチャートを参照して説明する。Embodiment 4 FIG.
The safety controller according to the fourth embodiment has the same configuration as the safety controller according to the first embodiment (see FIG. 1). In the operation procedure of the safety controller according to the present embodiment, in the operation procedure of the safety controller according to the second embodiment (see FIG. 4 and FIG. 5), in step S20, conversion to reverse endian is performed instead of bit inversion. Do. Here, the operation procedure of the present embodiment will be described with reference to the flowcharts of FIGS.
実行制御部13は、ステップS9における処理結果である出力データ(第2出力データ)について、例えば16ビットデータの上位ビットおよび下位ビットを逆にする変換を行う。実行制御部13は、エンディアンの逆転を経た第2出力データを、第2メモリ領域12Bに書き込む(ステップS10)。また、実行制御部13は、第2メモリ領域12Bが保持する自己保存データを、ステップS9における処理結果に応じて書き換えるとともに、エンディアンを逆転させる。
For example, the
結果照合部14は、ステップS6における冗長符号の付与を経た第1出力データと、ステップS11における冗長符号の付与を経た第2出力データとを比較照合する(ステップS12)。その際、結果照合部14は、第2メモリ領域12Bが保持する第2出力データを、エンディアンを逆転させて読み出す。結果照合部14は、第1出力データと、エンディアンの逆転を経た第2出力データとを照合する。その後の動作手順は、実施の形態2におけるステップS13からステップS18の動作手順と同様である。
The result matching unit 14 compares and collates the first output data that has been given the redundant code in step S6 and the second output data that has been given the redundant code in step S11 (step S12). At this time, the result matching unit 14 reads the second output data held in the
実施の形態4では、実施の形態2および3と同様、第1メモリ領域12Aに書き込まれる第1出力データと第2メモリ領域12Bに書き込まれる第2出力データとは異なる値である。アドレスラインの故障は、第1出力データと第2出力データとを比較照合することで検出できる。よって、実施の形態4では、演算診断部15によるメモリ12の故障診断は不要となる。
In the fourth embodiment, as in the second and third embodiments, the first output data written to the
実施の形態4にかかる安全コントローラは、実施の形態1から3と同様に、一重の回路構成として簡易かつ低コストを実現し、ハードウェア故障およびソフトウェア故障の両方を検出することができる。 As in the first to third embodiments, the safety controller according to the fourth embodiment realizes simple and low cost as a single circuit configuration, and can detect both hardware failures and software failures.
実施の形態4にかかる安全コントローラは、ステップS4における処理結果である出力データ(第1出力データ)についてエンディアンを逆転させることとしても良い。結果照合部14は、比較照合の際に、第1メモリ領域12Aが保持する第1出力データ、および第2メモリ領域12Bが保持する第2出力データのいずれについて、エンディアンを逆転させて読み出すこととしても良い。
The safety controller according to the fourth embodiment may reverse the endian for the output data (first output data) that is the processing result in step S4. The result collation unit 14 reads out the first output data held in the
実施の形態5.
実施の形態5にかかる安全コントローラは、実施の形態1にかかる安全コントローラ(図1参照)と同様の構成を備える。本実施の形態にかかる安全コントローラの動作手順は、実施の形態1にかかる安全コントローラの動作手順(図2および図3参照)と同様である。ここで、本実施の形態の動作手順を、図2および図3のフローチャートを参照して説明する。Embodiment 5 FIG.
The safety controller according to the fifth embodiment has the same configuration as the safety controller according to the first embodiment (see FIG. 1). The operation procedure of the safety controller according to the present embodiment is the same as the operation procedure of the safety controller according to the first embodiment (see FIGS. 2 and 3). Here, the operation procedure of the present embodiment will be described with reference to the flowcharts of FIGS.
第1入力データのプログラム処理(ステップS4)において、実行制御部13は、16ビット向けのコンパイラとして生成されたプログラムを使用する。一方、第2入力データのプログラム処理(ステップS9)において、実行制御部13は、32ビット向けのコンパイラとして生成されたプログラムを使用する。
In the program processing of the first input data (step S4), the
コントローラが扱うデータのほとんどは、16ビットデータである。実行制御部13は、ステップS4において、16ビットである第1入力データをレジスタにロードし、16ビット命令を実行する。実行制御部13は、処理結果である16ビットの第1出力データを第1メモリ領域12Aに書き込む(ステップS5)。
Most of the data handled by the controller is 16-bit data. In step S4, the
また、プロセッサ11は、ステップS9において、16ビットである第2入力データをレジスタにロードし、32ビット命令を実行する。実行制御部13は、処理結果である16ビットの第2出力データを第2メモリ領域12Bに書き込む(ステップS10)。
In step S9, the
実施の形態5では、第1入力データおよび第2入力データに対して実行する命令が互いに異なる。結果照合部14は、第1出力データと第2出力データとの比較照合により、プロセッサ11のソフトウェア故障およびハードウェア故障を検出することができる。よって、実施の形態5では、演算診断部15によるプロセッサ11の故障診断は不要となる。
In the fifth embodiment, instructions executed on the first input data and the second input data are different from each other. The result collation unit 14 can detect a software failure and a hardware failure of the
実施の形態5にかかる安全コントローラは、実施の形態1から4と同様に、一重の回路構成として簡易かつ低コストを実現し、ハードウェア故障およびソフトウェア故障の両方を検出することができる。 As in the first to fourth embodiments, the safety controller according to the fifth embodiment can achieve both simple and low cost as a single circuit configuration, and can detect both hardware failures and software failures.
実施の形態6.
図6は、本発明の実施の形態6にかかる安全演算装置を備える安全コントローラの構成を示すブロック図である。安全コントローラは、安全演算装置30、安全入力装置18および安全出力装置19を備える。実施の形態1と同一の部分には同一の符号を付し、重複する説明を適宜省略する。
FIG. 6 is a block diagram illustrating a configuration of a safety controller including the safety arithmetic device according to the sixth embodiment of the present invention. The safety controller includes a
安全演算装置30は、安全制御のための演算処理を実施する。安全演算装置30、安全入力装置18および安全出力装置19は、バス20を介して互いに内部接続されている。安全入力装置18は、安全コントローラへの入力データを基に、冗長符号を算出する。安全入力装置18は、入力データに冗長符号および付帯情報が付与された入力メッセージを生成する。入力メッセージは、入力データおよび冗長符号を含む。冗長符号は、例えばCRCとする。付帯情報は、例えばヘッダ情報とする。
The
安全演算装置30は、プロセッサ31およびメモリ12を有する。プロセッサ31は、安全演算装置30へ入力された入力データのプログラム処理を実施する。メモリ12は、プロセッサ31へ入力される入力メッセージ、およびプログラム処理の結果である出力メッセージを保持する。
The
プロセッサ31は、実行制御部32、結果照合部33、制御演算部34、メッセージ処理部35、演算診断部36、異常処理部37および送受信部38を有する。送受信部38は、安全入力装置18からの入力メッセージの受信と、安全出力装置19への出力メッセージの送信とを行う。送受信部38は、安全入力装置18と第1メモリ領域12Aおよび第2メモリ領域12Bとの間の入力メッセージの転送と、安全出力装置19と第1メモリ領域12Aおよび第2メモリ領域12Bとの間の出力メッセージの転送とを行う。
The processor 31 includes an
メッセージ処理部35は、入力メッセージ処理および出力メッセージ処理を実施する。メッセージ処理部35は、入力メッセージ処理として、入力メッセージに付与されている冗長符号を復号して検査する。メッセージ処理部35は、出力メッセージ処理として、出力データに冗長符号を付与し出力メッセージを生成する。
The
制御演算部34は、メッセージ処理部35からの入力メッセージに含まれる入力データについて、制御演算を実施する。制御演算部34は、例えば安全制御ロジックを実行する。実行制御部32は、第1メモリ領域12Aに書き込まれた入力メッセージについての第1処理過程と、第2メモリ領域12Bに書き込まれた入力メッセージについての第2処理過程とを実行する。
The control calculation unit 34 performs control calculation on the input data included in the input message from the
結果照合部33は、第1処理過程において第1メモリ領域12Aに書き込まれた出力メッセージと、第2処理過程において第2メモリ領域12Bに書き込まれた出力メッセージとを照合する。
The
演算診断部36は、プロセッサ31およびメモリ12の故障の有無を演算により診断する。演算診断部36によるプロセッサ31およびメモリ12の診断には、例えば、テストパターンを用いる。
The
異常処理部37は、入力データおよび出力データの冗長検査、結果照合部33における照合、および演算診断部36における診断の少なくともいずれかにおいて異常が検出された場合に、出力メッセージの出力を停止させる。
The
次に、安全コントローラの動作手順を説明する。送受信部38は、入力データに冗長符号が付与された入力メッセージを、安全入力装置18から読み込む。送受信部38は、読み込んだ入力メッセージを第1メモリ領域12Aおよび第2メモリ領域12Bに書き込む。
Next, the operation procedure of the safety controller will be described. The transmission /
メッセージ処理部35は、送受信部38で読み込まれた入力メッセージに対し、入力メッセージ処理を実施する。メッセージ処理部35は、第1処理過程において、入力メッセージに付随する冗長符号を復号し、冗長検査を実施する。メッセージ処理部35は、入力メッセージに含まれる入力データおよびヘッダ情報をチェックする。実行制御部32は、メッセージ処理部35での入力メッセージ処理を経た入力メッセージを第1メモリ領域12Aに書き込む。
The
実行制御部32は、第1処理過程において、第1メモリ領域12Aから読み出した入力メッセージを制御演算部34へ送る。制御演算部34は、入力メッセージに含まれる入力データの制御演算、例えば安全制御ロジックを実施する。実行制御部32は、制御演算部34での制御演算を経た入力データを、出力データとして第1メモリ領域12Aに書き込む。
The
実行制御部32は、第1処理過程において、第1メモリ領域12Aから読み出した出力データをメッセージ処理部35へ送る。メッセージ処理部35は、第1メモリ領域12Aから読み出した出力データに対して、出力メッセージ処理を実施する。メッセージ処理部35は、出力データを基に冗長符号を算出し、出力データに冗長符号を付与する。実行制御部32は、冗長符号が付与された出力データを、出力メッセージとして、第1メモリ領域12Aに書き込む。実行制御部32は、第1処理過程において、入力メッセージ処理、制御演算、出力メッセージ処理を実行し、その結果を第1メモリ領域12Aに随時記録する。
The
次に、メッセージ処理部35は、第2処理過程において、入力メッセージに付随する冗長符号を復号し、冗長検査を実施する。メッセージ処理部35は、入力メッセージに含まれる入力データおよびヘッダ情報をチェックする。実行制御部32は、メッセージ処理部35での入力メッセージ処理を経た入力メッセージを第2メモリ領域12Bに書き込む。
Next, in the second process, the
実行制御部32は、第2処理過程において、第2メモリ領域12Bから読み出した入力メッセージを制御演算部34へ送る。制御演算部34は、入力メッセージに含まれる入力データの制御演算、例えば安全制御ロジックを実施する。実行制御部32は、制御演算部34での制御演算を経た入力データを、出力データとして第2メモリ領域12Bに書き込む。
The
実行制御部32は、第2処理過程において、第2メモリ領域12Bから読み出した出力データをメッセージ処理部35へ送る。メッセージ処理部35は、第2メモリ領域12Bから読み出した出力データに対して、出力メッセージ処理を実施する。メッセージ処理部35は、出力データを基に冗長符号を算出する。メッセージ処理部35は、出力データに冗長符号が付与された出力メッセージを生成する。実行制御部32は、メッセージ処理部35で生成された出力メッセージを、第2メモリ領域12Bに書き込む。実行制御部32は、第2処理過程において、入力メッセージ処理、制御演算、出力メッセージ処理を実行し、その結果を第2メモリ領域12Bに随時記録する。
The
結果照合部33は、第1メモリ領域12Aに書き込まれた出力メッセージと、第2メモリ領域12Bに書き込まれた出力メッセージとを比較照合する。異常処理部37は、入力データおよび出力データの冗長検査、結果照合部33における照合、および演算診断部36における診断の少なくともいずれかにおいて異常が検出された場合に、出力メッセージの出力を停止させる。
The
実施の形態6においても、安全コントローラは、実施の形態1と同様、一重の回路構成として簡易かつ低コストを実現できる。 Also in the sixth embodiment, the safety controller can realize a simple and low cost as a single circuit configuration as in the first embodiment.
実施の形態7.
図7は、本発明の実施の形態7にかかる安全入力装置を備える安全コントローラの構成を示すブロック図である。安全コントローラは、安全入力装置40、安全演算装置50および安全出力装置19を備える。
FIG. 7: is a block diagram which shows the structure of the safety controller provided with the safety input
安全演算装置50は、安全制御のための演算処理を実施する。安全入力装置40は、安全コントローラへの入力信号の入力を受け付ける。安全出力装置19は、安全コントローラから外部へ出力信号を出力する。安全入力装置40、安全演算装置50および安全出力装置19は、バス20を介して互いに内部接続されている。
The
安全入力装置40は、入力部41、プロセッサ42およびメモリ43を有する。入力部41は、安全入力装置40への入力信号を数値化し、入力データとする。プロセッサ42は、入力部41からの入力データのプログラム処理を実施する。メモリ43は、プロセッサ42へ入力される入力データを保持する。
The
メモリ43は、互いに独立した第1メモリ領域43Aおよび第2メモリ領域43Bを有する。第2メモリ領域43Bは、第1メモリ領域43Aとはアドレスが異なる。第1メモリ領域43Aおよび第2メモリ領域43Bは、いずれも入力データを保持可能とされている。
The
プロセッサ42は、入力演算部44、入力診断部45、メッセージ処理部46、実行制御部47、結果照合部48および送信部49を有する。入力演算部44は、入力部41からの入力データに対する演算処理を実施する。入力診断部45は、入力部41へのテスト信号の送信によって、入力部41の異常の有無を診断する。
The
メッセージ処理部46は、入力メッセージ処理として、入力データに冗長符号および付帯情報を付与する。これにより、メッセージ処理部46は、安全演算装置50に対する入力メッセージを生成する。
The
実行制御部47は、第1メモリ領域43Aへの入力メッセージの書き込みを含む第1処理過程と、第2メモリ領域43Bへの入力メッセージの書き込みを含む第2処理過程と、を実行する。
The
結果照合部48は、第1処理過程において第1メモリ領域43Aに書き込まれた入力メッセージと、第2処理過程において第2メモリ領域43Bに書き込まれた入力メッセージとを照合する。
The
送信部49は、第1メモリ領域43Aに書き込まれた入力メッセージと、第2メモリ領域43Bに書き込まれた入力メッセージとのいずれかを、安全演算装置50へ送信する。
The
図8は、安全入力装置の動作手順を示すフローチャートである。入力診断部45は、入力部41に対してテスト信号を送信する(ステップS31)。入力診断部45は、入力部41の異常の有無を判断する(ステップS32)。
FIG. 8 is a flowchart showing an operation procedure of the safety input device. The
入力診断部45は、入力部41において入力データの値とテスト信号とが一致するか否かを確認する。入力信号がデジタル信号である場合、入力診断部45は、入力データの現在値とはON/OFFを反転させた信号をテスト信号とする。例えば、該当する入力チャンネルの値が「ON」である場合、入力診断部45は、テスト信号としてOFF信号を送信する。入力演算部44がOFF信号を確認した場合、入力診断部45は、入力部41に異常が無いものと判断する。該当する入力チャンネルの値が「OFF」である場合、入力診断部45は、テスト信号としてON信号を送信しても良い。
The
入力信号がアナログ信号である場合、入力診断部45は、アナログ入力の範囲の幅で変動する波形をテスト信号とする。テスト信号の波形を入力演算部44が確認した場合、入力診断部45は、入力部41に異常が無いものと判断する。入力信号部45は、アナログ入力の範囲内の値を複数回に分けて入力部41へ送信しても良い。当該値を入力演算部44が確認した場合、入力診断部45は、入力部41に異常が無いものと判断する。入力診断部45は、AD変換後の各ビットのON/OFFを確認できるように、テスト信号を選択する。
When the input signal is an analog signal, the
入力部41に異常があると入力診断部45が判断した場合(ステップS32、Yes)、送信部49は、安全演算装置50への入力メッセージの送信を停止させる(ステップS43)。安全コントローラは、動作を停止させる。
When the
入力部41に異常が無いと入力診断部45が判断した場合(ステップS32、No)、入力部41は、複数の入力端子の信号をサンプリングして数値化する。入力部41は、数値化された入力データを取得する(ステップS33)。入力演算部44は、入力部41の各入力チャンネルについて、入力データのフィルタ処理を実施する(ステップS34)。入力演算部44は、フィルタ処理により、通過させる入力データの値(入力値)を決定する。
When the
入力信号がデジタル信号である場合、入力演算部44は、所定の周期の入力信号が同じ値となったとき、当該値を入力値として確定する。または、入力演算部44は、所定の周期の入力信号の値のうち最も頻度が高い値を、入力値として確定する。入力信号がアナログ信号である場合、入力演算部44は、入力信号の所定の周期における移動平均値を、入力値として確定する。入力演算部44は、入力信号の所定の周期の中で急変した値を除去してから、入力値を確定しても良い。
When the input signal is a digital signal, the
メッセージ処理部46は、入力演算部44からの入力データに冗長符号および付帯情報を付与する。冗長符号は、例えばCRCとする。付帯情報は、例えばヘッダ情報とする。メッセージ処理部46は、入力データに冗長符号およびヘッダ情報が付与された入力メッセージ(第1入力メッセージ)を生成する(ステップS35)。
The
メッセージ処理部46は、入力データの通信ヘッダに、ヘッダ情報として送受信局情報やメッセージ番号を付与する。メッセージ処理部46は、ヘッダ情報およびペイロード(入力データ)についてCRC符号を算出する。メッセージ処理部46は、算出されたCRC符号をペイロードに追加する。
The
安全演算装置50は、CRC符号を再計算することで、入力メッセージのビット化けを検出することができる。また、安全演算装置50は、ヘッダ情報を確認することで、受け付けた入力メッセージが受信すべき入力メッセージであるか否かを判断することができる。
The
実行制御部47は、メッセージ処理部46からの第1入力メッセージを、第1メモリ領域43Aに書き込む(ステップS36)。第1処理過程は、ステップS33からステップS35までの処理過程とする。第1メモリ領域43Aは、第1入力メッセージを格納する以外に、第1処理過程における変数等の記憶領域としても機能する。
The
次に、入力演算部44は、ステップS34と同様に、入力部41の各入力チャンネルについて、入力データのフィルタ処理を実施する(ステップS37)。メッセージ処理部46は、ステップS35と同様に、入力演算部44からの入力データに冗長符号およびヘッダ情報を付与する。メッセージ処理部46は、入力データに冗長符号およびヘッダ情報が付与された入力メッセージ(第2入力メッセージ)を生成する(ステップS38)。
Next, similarly to step S34, the
実行制御部47は、メッセージ処理部46からの第2入力メッセージを、第2メモリ領域43Bに書き込む(ステップS39)。第2処理過程は、ステップS37からステップS39までの処理過程とする。第2メモリ領域43Bは、第2入力メッセージを格納する以外に、第2処理過程における変数等の記憶領域としても機能する。
The
結果照合部48は、第1メモリ領域43Aから第1入力メッセージを読み出す。結果照合部48は、第2メモリ領域43Bから第2入力メッセージを読み出す。結果照合部48は、それぞれ読み出された第1入力メッセージと第2入力メッセージとを比較照合する(ステップS40)。
The
結果照合部48での照合において異常が検出された場合(ステップS41、Yes)、送信部49は、安全演算装置50への入力メッセージの送信を停止させる(ステップS43)。安全コントローラは、動作を停止させる。
When an abnormality is detected in the collation by the result collation unit 48 (step S41, Yes), the
結果照合部48での照合において異常が無いことを確認すると(ステップS41、No)、送信部49は、第1入力メッセージまたは第2入力メッセージを安全演算装置50へ送信する(ステップS42)。送信部49は、例えば、第2メモリ領域43Bから第2入力メッセージを読み出す。送信部49は、読み出された第2入力メッセージを、安全演算装置50へ送信する。送信部49から安全演算装置50へ入力メッセージを送信すると、安全入力装置40は、ステップS31に戻り、安全コントローラへの入力信号の入力を受け付けるための動作を継続する。
When it is confirmed that there is no abnormality in the collation by the result collation unit 48 (step S41, No), the
安全入力装置40は、プロセッサ42およびメモリ43のいずれにソフトウェア故障が発生した場合、結果照合部48による照合結果から、故障の発生を検出することができる。なお、安全入力装置40は、ソフトウェア故障があった場合に、動作を停止させる以外に、所定の処置を施した上で動作を継続することとしても良い。
When a software failure occurs in either the
ソフトウェア故障は、ソフトウェア処理におけるある周期にて検出されても、次周期以降には解消されることがあり得る。安全入力装置40は、例えば、故障が検出された周期の直前の周期における入力メッセージを当該周期に適用することで、エラー扱いとせず次周期以降の処理を継続することとしても良い。安全入力装置40は、所定回数の周期にて連続して故障を検出した場合に、動作を停止させることとしても良い。
Even if a software failure is detected in a certain cycle in software processing, it may be resolved after the next cycle. For example, the
安全入力装置40は、プロセッサ42およびメモリ43のいずれかにハードウェア故障が発生した場合、結果照合部48による照合では、故障の発生を検出することが困難である。安全入力装置40は、ハードウェア故障を自己診断するために、例えば、周期の途中にて所定の診断プログラムを実施する。
When a hardware failure occurs in either the
安全入力装置40は、入力部41への入力信号の範囲の全体について、入力診断部45による診断を実施する。安全入力装置40は、一重の回路構成の入力部41について、回路部品の固着やドリフトの発生による誤入力を検出することができる。安全入力装置40および安全演算装置50は、入力メッセージの冗長検査とヘッダ情報の確認を行うことで、一重の通信手段にて、入力メッセージのエラーを検出できる。安全入力装置40は、結果照合部48での入力メッセージの照合により、ソフトウェアエラーの混入を防止できる。
The
安全入力装置40は、入力部41、プロセッサ42およびメモリ43からなる一重の回路構成を採用する。実施の形態7にかかる安全入力装置40は、一重の回路構成として簡易かつ低コストを実現し、ハードウェア故障およびソフトウェア故障の両方を検出することができる。
The
なお、安全入力装置40のプロセッサ42の動作には、上記の実施の形態1から5におけるプロセッサ11(図1参照)と同様の動作を追加することとしても良い。
The operation of the
実施の形態8.
図9は、本発明の実施の形態8にかかる安全出力装置を備える安全コントローラの構成を示すブロック図である。安全コントローラは、安全入力装置18、安全演算装置50および安全出力装置60を備える。Embodiment 8 FIG.
FIG. 9 is a block diagram illustrating a configuration of a safety controller including the safety output device according to the eighth embodiment of the present invention. The safety controller includes a
安全演算装置50は、安全制御のための演算処理を実施する。安全入力装置18は、安全コントローラへの入力信号の入力を受け付ける。安全出力装置60は、安全コントローラから外部へ出力信号を出力する。安全入力装置18、安全演算装置50および安全出力装置60は、バス20を介して互いに内部接続されている。
The
安全出力装置60は、出力部61、プロセッサ62およびメモリ63を有する。プロセッサ62は、出力メッセージのプログラム処理を実施する。メモリ63は、出力メッセージに含まれる出力データを保持する。出力部61は、出力データに応じた出力信号を出力する。
The
メモリ63は、互いに独立した第1メモリ領域63Aおよび第2メモリ領域63Bを有する。第2メモリ領域63Bは、第1メモリ領域63Aとはアドレスが異なる。第1メモリ領域63Aおよび第2メモリ領域63Bは、いずれも出力データを保持可能とされている。
The
プロセッサ62は、電源遮断部64、出力診断部65、結果照合部66、出力演算部67、メッセージ処理部68、実行制御部69および受信部70を有する。受信部70は、安全演算装置50からの出力メッセージを受信する。
The
メッセージ処理部68は、出力メッセージ処理として、出力メッセージに含まれる冗長符号および付帯情報を基に出力メッセージの内容を検査する。出力演算部67は、出力メッセージから出力データを取り出すための演算処理を実施する。実行制御部69は、第1メモリ領域63Aへの出力データの書き込みを含む第1処理過程と、第2メモリ領域63Bへの出力データの書き込みを含む第2処理過程と、を実行する。
As the output message processing, the
結果照合部66は、第1処理過程において第1メモリ領域63Aに書き込まれた出力データと、第2処理過程において第2メモリ領域63Bに書き込まれた出力データとを照合する。
The
出力診断部65は、出力部61へのテスト信号の送信によって、出力部61の異常の有無を診断する。電源遮断部64は、出力診断部65での診断結果に応じて、出力部61への電源を遮断する。
The
図10は、安全出力装置の動作手順を示すフローチャートである。出力診断部65は、出力部61に対してテスト信号を送信する(ステップS51)。出力診断部65は、出力部61の異常の有無を判断する(ステップS52)。
FIG. 10 is a flowchart showing an operation procedure of the safety output device. The
出力診断部65は、出力部61において出力データの値とテスト信号とが一致するか否かを確認する。出力信号をデジタル信号とする場合、出力診断部65は、出力データの現在値とはON/OFFを反転させた信号をテスト信号とする。出力診断部65は、出力部61へテスト信号を出力する。
The
例えば、該当する出力端子の値が「ON」である場合、出力診断部65は、テスト信号としてOFF信号を送信する。一定時間内に出力診断部65がOFF信号を確認した場合、出力診断部65は、出力部61に異常が無いものと判断する。または、出力診断部65は、出力端子の信号を読み出し、読み出された信号の値と、期待する出力データの値とを比較する。
For example, when the value of the corresponding output terminal is “ON”, the
出力信号をアナログ信号とする場合、出力診断部65は、DA変換器のレンジ範囲の値を複数回に分けて、出力部61へ送信する。出力診断部65は、出力部61の出力データの値を読み出して、読み出された値が誤差範囲内である場合、出力部61に異常が無いものと判断する。出力診断部65によるテストは、出力端子に接続されたデバイスが反応しない程度の短い時間内に行われるものとする。出力部61は、出力診断部65によるテスト中に、現在の出力データによる出力信号を継続して出力しても良い。
When the output signal is an analog signal, the
出力部61に異常があると出力診断部65が判断した場合(ステップS52、Yes)、電源遮断部64は、出力部61の電源を遮断する(ステップS63)。出力部61の電源の遮断により、安全出力装置60は、出力部61からの出力信号を強制的にゼロとする。
When the
出力部61に異常が無いと出力診断部65が判断した場合(ステップS52、No)、受信部70は、安全演算装置50からの出力メッセージを受信する(ステップS53)。メッセージ処理部68は、受信部70が受信した出力メッセージ(第1出力メッセージ)の内容を検査する(ステップS54)。
When the
出力メッセージは、冗長符号および付帯情報を含む。冗長符号は、例えばCRCとする。付帯情報は、例えばヘッダ情報とする。メッセージ処理部68は、第1出力メッセージのCRC符号を再計算することで、第1出力メッセージのビット化けを検出する。また、メッセージ処理部68は、ヘッダ情報である送受信局情報やメッセージ番号を確認することで、受け付けた第1出力メッセージが、安全出力装置60が出力信号を得るべき正しい出力メッセージであるか否かを判断する。
The output message includes a redundant code and accompanying information. The redundant code is, for example, CRC. The incidental information is header information, for example. The
出力演算部67は、出力部61の出力端子ごとの出力データ(第1出力データ)を、第1出力メッセージから取り出す。出力演算部67は、第1出力データのフィルタ処理を実施する(ステップS55)。出力演算部67は、所定の周期における移動平均値、または連続する同値を、フィルタ処理によって通過させる第1出力データの値(出力値)として決定する。出力演算部67は、フィルタ処理によって、出力値の振動を防止する。
The output calculation unit 67 extracts the output data (first output data) for each output terminal of the
実行制御部69は、出力演算部67からの第1出力データを、第1メモリ領域63Aに書き込む(ステップS56)。第1処理過程は、ステップS54からステップS56までの処理過程とする。第1メモリ領域63Aは、第1出力データを格納する以外に、第1処理過程における変数等の記憶領域としても機能する。
The
次に、メッセージ処理部68は、ステップS54と同様に、受信部70が受信した出力メッセージ(第2出力メッセージ)の内容を検査する(ステップS57)。メッセージ処理部68は、第2出力メッセージのCRC符号を再計算することで、第2出力メッセージのビット化けを検出する。また、メッセージ処理部68は、ヘッダ情報である送受信局情報やメッセージ番号を確認することで、受け付けた第2出力メッセージが、安全出力装置60が出力信号を得るべき正しい出力メッセージであるか否かを判断する。
Next, the
出力演算部67は、ステップS55と同様に、出力部61の出力端子ごとの出力データ(第2出力データ)を、第2出力メッセージから取り出す。出力演算部67は、第2出力データのフィルタ処理を実施する(ステップS58)。
Similarly to step S55, the output calculation unit 67 extracts the output data (second output data) for each output terminal of the
実行制御部69は、出力演算部67からの第2出力データを、第2メモリ領域63Bに書き込む(ステップS59)。第2処理過程は、ステップS57からステップS59までの処理過程とする。第2メモリ領域63Bは、第2出力データを格納する以外に、第2処理過程における変数等の記憶領域としても機能する。
The
結果照合部66は、第1メモリ領域63Aから第2出力データを読み出す。結果照合部66は、第2メモリ領域63Bから第2出力データを読み出す。結果照合部66は、それぞれ読み出された第1出力データと第2出力データとを比較照合する(ステップS60)。
The
結果照合部66での照合において異常が検出された場合(ステップS61、Yes)、電源遮断部64は、出力部61の電源を遮断する(ステップS63)。出力部61の電源の遮断により、安全出力装置60は、出力部61からの出力信号を強制的にゼロとする。
When abnormality is detected in the collation by the result collation unit 66 (step S61, Yes), the
結果照合部66での照合において異常が無いことを確認すると(ステップS61、No)、出力部61は、第1出力データまたは第2出力データに基づく出力信号を出力する(ステップS62)。出力部61が出力信号を出力すると、安全出力装置60は、ステップS51に戻り、出力信号を出力するための動作を継続する。
When it is confirmed that there is no abnormality in the collation by the result collating unit 66 (No at Step S61), the
安全出力装置60は、プロセッサ62およびメモリ63のいずれにソフトウェア故障が発生した場合、結果照合部66による照合結果から、故障の発生を検出することができる。なお、安全出力装置60は、ソフトウェア故障があった場合に、動作を停止させる以外に、所定の処置を施した上で動作を継続することとしても良い。
The
ソフトウェア故障は、ソフトウェア処理におけるある周期にて検出されても、次周期以降には解消されることがあり得る。安全出力装置60は、例えば、故障が検出された周期の直前の周期における出力データを当該周期に適用することで、エラー扱いとせず次周期以降の処理を継続することとしても良い。安全出力装置60は、所定回数の周期にて連続して故障を検出した場合に、動作を停止させることとしても良い。
Even if a software failure is detected in a certain cycle in software processing, it may be resolved after the next cycle. For example, the
安全出力装置60は、プロセッサ62およびメモリ63のいずれかにハードウェア故障が発生した場合、結果照合部66による照合では、故障の発生を検出することが困難である。安全出力装置60は、ハードウェア故障を自己診断するために、例えば、周期の途中にて所定の診断プログラムを実施する。
When a hardware failure occurs in either the
安全出力装置60は、出力部61の出力レンジの全体について、出力診断部65による診断を実施する。安全出力装置60は、一重の回路構成の出力部61について、回路部品の固着やドリフトの発生による誤出力を検出することができる。安全出力装置60および安全演算装置50は、出力メッセージの冗長検査とヘッダ情報の確認を行うことで、一重の通信手段にて、出力メッセージのエラーを検出できる。安全出力装置60は、結果照合部66での出力データの照合により、ソフトウェアエラーの混入を防止できる。
The
安全出力装置60は、出力部61、プロセッサ62およびメモリ63からなる一重の回路構成を採用する。実施の形態8にかかる安全出力装置60は、一重の回路構成として簡易かつ低コストを実現し、ハードウェア故障およびソフトウェア故障の両方を検出することができる。
The
なお、安全出力装置60のプロセッサ62の動作には、上記の実施の形態1から5におけるプロセッサ11(図1参照)と同様の動作を追加することとしても良い。
The operation of the
実施の形態9.
図11は、本発明の実施の形態9にかかる安全コントローラの構成を示すブロック図である。安全コントローラは、安全入力装置18、安全演算装置10、安全出力装置19、ゲートウェイ80およびエンジニアリングツール81を有する。安全演算装置10は、例えば、実施の形態1にかかる安全演算装置10とする。
FIG. 11 is a block diagram showing the configuration of the safety controller according to the ninth embodiment of the present invention. The safety controller includes a
エンジニアリングツール81は、例えば、PLCシステム等で動作させるシーケンスプログラムを編集するツールである。エンジニアリングツール81は、例えば、エンジニアリングツールソフトウェアがインストールされたパーソナルコンピュータなどで実現される。
The
安全演算装置10、安全入力装置18および安全出力装置19は、バス20を介して互いに内部接続されている。エンジニアリングツール81は、ゲートウェイ80を介してバス20に接続されている。スイッチおよびセンサ83は、安全入力装置18の入力部に接続されている。アクチュエータおよびコンタクタ84は、安全出力装置19の出力部に接続されている。
The
エンジニアリングツール81は、安全演算装置10の安全制御プログラムや設定パラメータの変更あるいは書き込みを行う。安全コントローラは、安全演算装置10を適用することで、二重化されたハードウェア構造を採用しなくても、ハードウェア故障およびソフトウェア故障の両方を検出することができる。安全コントローラは、一重の回路構成として簡易かつ低コストを実現できる。
The
安全コントローラの動作には、上記の実施の形態2から5にかかる安全コントローラと同様の動作を追加することとしても良い。安全コントローラは、実施の形態6にかかる安全演算装置30(図6参照)を適用しても良い。 The same operation as that of the safety controller according to the second to fifth embodiments may be added to the operation of the safety controller. The safety controller 30 (see FIG. 6) according to the sixth embodiment may be applied to the safety controller.
安全コントローラは、実施の形態7にかかる安全入力装置40(図7参照)を適用しても良い。この場合、エンジニアリングツール81は、安全入力装置40に対し、入力データのフィルタ処理の条件や、入力診断の条件を指定する。この場合も、安全コントローラは、一重の回路構成として簡易かつ低コストを実現できる。
As the safety controller, the safety input device 40 (see FIG. 7) according to the seventh embodiment may be applied. In this case, the
安全コントローラは、実施の形態8にかかる安全出力装置60(図9参照)を適用しても良い。この場合、エンジニアリングツール81は、安全出力装置60に対し、出力データのフィルタ処理の条件や、出力診断の条件を指定する。この場合も、安全コントローラは、一重の回路構成として簡易かつ低コストを実現できる。
As the safety controller, the safety output device 60 (see FIG. 9) according to the eighth embodiment may be applied. In this case, the
安全コントローラは、例えば、実施の形態6にかかる安全演算装置30、実施の形態7にかかる安全入力装置40、および実施の形態8にかかる安全出力装置60を組み合わせたものとしても良い。
The safety controller may be, for example, a combination of the
実施の形態10.
図12は、本発明の実施の形態10にかかる安全コントローラの構成を示すブロック図である。実施の形態9と同一の部分には同一の符号を付し、重複する説明を適宜省略する。
FIG. 12 is a block diagram showing a configuration of the safety controller according to the tenth embodiment of the present invention. The same parts as those in the ninth embodiment are denoted by the same reference numerals, and repeated description will be omitted as appropriate.
安全コントローラは、安全入力装置18、安全演算装置10、安全出力装置19、ネットワーク接続装置85およびエンジニアリングツール81を有する。安全演算装置10は、例えば、実施の形態1にかかる安全演算装置10とする。安全演算装置10、安全入力装置18、安全出力装置19およびエンジニアリングツール81は、ネットワーク接続装置85を介して互いに接続されている。
The safety controller includes a
エンジニアリングツール81は、安全演算装置10の安全制御プログラムや設定パラメータの変更あるいは書き込みを行う。安全コントローラは、安全演算装置10を適用することで、二重化されたハードウェア構造を採用しなくても、ハードウェア故障およびソフトウェア故障の両方を検出することができる。安全コントローラは、一重の回路構成として簡易かつ低コストを実現できる。
The
安全コントローラの動作には、上記の実施の形態2から5にかかる安全コントローラと同様の動作を追加することとしても良い。安全コントローラは、実施の形態6にかかる安全演算装置30(図6参照)を適用しても良い。 The same operation as that of the safety controller according to the second to fifth embodiments may be added to the operation of the safety controller. The safety controller 30 (see FIG. 6) according to the sixth embodiment may be applied to the safety controller.
安全コントローラは、実施の形態7にかかる安全入力装置40(図7参照)を適用しても良い。この場合、エンジニアリングツール81は、安全入力装置40に対し、入力データのフィルタ処理の条件や、入力診断の条件を指定する。この場合も、安全コントローラは、一重の回路構成として簡易かつ低コストを実現できる。
As the safety controller, the safety input device 40 (see FIG. 7) according to the seventh embodiment may be applied. In this case, the
安全コントローラは、実施の形態8にかかる安全出力装置60(図9参照)を適用しても良い。この場合、エンジニアリングツール81は、安全出力装置60に対し、出力データのフィルタ処理の条件や、出力診断の条件を指定する。この場合も、安全コントローラは、一重の回路構成として簡易かつ低コストを実現できる。
As the safety controller, the safety output device 60 (see FIG. 9) according to the eighth embodiment may be applied. In this case, the
安全コントローラは、例えば、実施の形態6にかかる安全演算装置30、実施の形態7にかかる安全入力装置40、および実施の形態8にかかる安全出力装置60を組み合わせたものとしても良い。
The safety controller may be, for example, a combination of the
本発明の安全コントローラは、機械や設備の安全制御を担う安全コントローラとして有用である。 The safety controller of the present invention is useful as a safety controller responsible for safety control of machines and facilities.
11 プロセッサ、12 メモリ、12A 第1メモリ領域、12B 第2メモリ領域、13 実行制御部、14 結果照合部、15 演算診断部、16 異常処理部、17 入出力処理部、18 安全入力装置、19 安全出力装置、20 バス、30 安全演算装置、31 プロセッサ、32 実行制御部、33 結果照合部、34 制御演算部、35 メッセージ処理部、36 演算診断部、37 異常処理部、38 送受信部、40 安全入力装置、41 入力部、42 プロセッサ、43 メモリ、43A 第1メモリ領域、43B 第2メモリ領域、44 入力演算部、45 入力診断部、46 メッセージ処理部、47 実行制御部、48 結果照合部、49 送信部、50 安全演算装置、60 安全出力装置、61 出力部、62 プロセッサ、63 メモリ、63A 第1メモリ領域、63B 第2メモリ領域、64 電源遮断部、65 出力診断部、66 結果照合部、67 出力演算部、68 メッセージ処理部、69 実行制御部、70 受信部、80 ゲートウェイ、81 エンジニアリングツール、83 スイッチおよびセンサ、84 アクチュエータおよびコンタクタ、85 ネットワーク接続装置。
DESCRIPTION OF
上述した課題を解決し、目的を達成するために、本発明は、入力データのプログラム処理を実施するプロセッサと、前記プロセッサへ入力される前記入力データ、および前記プログラム処理の結果である出力データを保持するメモリと、を有し、前記メモリは、第1メモリ領域と、前記第1メモリ領域とは異なるアドレスの第2メモリ領域と、のそれぞれに、前記入力データおよび前記出力データを保持可能であって、前記プロセッサは、前記第1メモリ領域に書き込まれた前記入力データの冗長検査および前記プログラム処理と、前記プログラム処理の結果として前記第1メモリ領域に書き込まれた前記出力データへの冗長符号の付与と、を含む第1処理過程と、前記第2メモリ領域に書き込まれた前記入力データの冗長検査および前記プログラム処理と、前記プログラム処理の結果として前記第2メモリ領域に書き込まれた前記出力データへの冗長符号の付与と、を含む第2処理過程と、を実行する実行制御部と、前記第1処理過程における前記冗長符号の付与を経た前記出力データと、前記第2処理過程における前記冗長符号の付与を経た前記出力データとを照合する結果照合部と、前記プロセッサおよび前記メモリの故障の有無を演算によって診断する演算診断部と、前記実行制御部における前記入力データの前記冗長検査、前記結果照合部における照合、および前記演算診断部における診断の少なくともいずれかにおいて異常が検出された場合に、前記出力データの出力を停止させる異常処理部と、を有することを特徴とする。 In order to solve the above-described problems and achieve the object, the present invention provides a processor that performs program processing of input data, the input data that is input to the processor, and output data that is a result of the program processing. And the memory can hold the input data and the output data in each of a first memory area and a second memory area having an address different from the first memory area. The processor includes a redundancy check of the input data written in the first memory area and the program processing, and a redundancy code for the output data written in the first memory area as a result of the program processing. the first process and the second of said input data written in the memory area redundancy check and the flop including a grant, the An execution control unit that executes a second processing step including: a gram processing; and a redundant code added to the output data written in the second memory area as a result of the program processing; A result collating unit that collates the output data that has been given the redundant code in the process and the output data that has been given the redundant code in the second processing process, and calculates whether the processor and the memory are faulty and calculating diagnostic unit for diagnosing by the redundancy check of the input data in the execution control unit, the comparison of the result verification unit, and when an abnormality is detected in at least one of diagnosis in the operation diagnosis unit, the And an abnormality processing unit for stopping output of the output data.
実行制御部13は、第1メモリ領域12Aへ書き込まれた入力データ(第1入力データ)に付随する冗長符号をチェックする(ステップS2)。冗長符号は、例えばCRC(Cyclic Redundancy Code)とする。
The
例えば、加算を行うALUの場合、演算対象となる2つのレジスタの各ビット(0,0),(0,1),(1,0),(1,1)の確認と、下位ビットからのキャリー演算を実施する。さらに、隣接しているメモリビット間にショートが無いことを確認するために、テストパターンとしては、隣接ビットが異なる結果となるもの(0x5555および0xAAAA)を選択する。 For example, in the case of an ALU that performs addition , confirmation of each bit (0,0), (0,1), (1,0), (1,1) of two registers to be operated and Carry calculation is performed. Furthermore, in order to confirm that there is no short between adjacent memory bits, test patterns (0x5555 and 0xAAAA) that result in different adjacent bits are selected.
入力信号がアナログ信号である場合、入力診断部45は、アナログ入力の範囲の幅で変動する波形をテスト信号とする。テスト信号の波形を入力演算部44が確認した場合、入力診断部45は、入力部41に異常が無いものと判断する。入力診断部45は、アナログ入力の範囲内の値を複数回に分けて入力部41へ送信しても良い。当該値を入力演算部44が確認した場合、入力診断部45は、入力部41に異常が無いものと判断する。入力診断部45は、AD変換後の各ビットのON/OFFを確認できるように、テスト信号を選択する。
When the input signal is an analog signal, the
メッセージ処理部46は、入力データの通信ヘッダに、ヘッダ情報として送受信局情報やメッセージ番号を付与する。メッセージ処理部46は、ヘッダ情報およびペイロード(入力データ)についてCRCを算出する。メッセージ処理部46は、算出されたCRCをペイロードに追加する。
The
安全演算装置50は、CRCを再計算することで、入力メッセージのビット化けを検出することができる。また、安全演算装置50は、ヘッダ情報を確認することで、受け付けた入力メッセージが受信すべき入力メッセージであるか否かを判断することができる。
Safety
出力メッセージは、冗長符号および付帯情報を含む。冗長符号は、例えばCRCとする。付帯情報は、例えばヘッダ情報とする。メッセージ処理部68は、第1出力メッセージのCRCを再計算することで、第1出力メッセージのビット化けを検出する。また、メッセージ処理部68は、ヘッダ情報である送受信局情報やメッセージ番号を確認することで、受け付けた第1出力メッセージが、安全出力装置60が出力信号を得るべき正しい出力メッセージであるか否かを判断する。
The output message includes a redundant code and accompanying information. The redundant code is, for example, CRC. The incidental information is header information, for example. The
次に、メッセージ処理部68は、ステップS54と同様に、受信部70が受信した出力メッセージ(第2出力メッセージ)の内容を検査する(ステップS57)。メッセージ処理部68は、第2出力メッセージのCRCを再計算することで、第2出力メッセージのビット化けを検出する。また、メッセージ処理部68は、ヘッダ情報である送受信局情報やメッセージ番号を確認することで、受け付けた第2出力メッセージが、安全出力装置60が出力信号を得るべき正しい出力メッセージであるか否かを判断する。
Next, the
結果照合部66は、第1メモリ領域63Aから第1出力データを読み出す。結果照合部66は、第2メモリ領域63Bから第2出力データを読み出す。結果照合部66は、それぞれ読み出された第1出力データと第2出力データとを比較照合する(ステップS60)。
The
Claims (11)
前記プロセッサへ入力される前記入力データ、および前記プログラム処理の結果である出力データを保持するメモリと、を有し、
前記メモリは、第1メモリ領域と、前記第1メモリ領域とは異なるアドレスの第2メモリ領域と、のそれぞれに、前記入力データおよび前記出力データを保持可能であって、
前記プロセッサは、
前記第1メモリ領域に書き込まれた前記入力データの前記プログラム処理と、前記プログラム処理の結果として前記第1メモリ領域に書き込まれた前記出力データへの冗長符号の付与と、を含む第1処理過程と、前記第2メモリ領域に書き込まれた前記入力データの前記プログラム処理と、前記プログラム処理の結果として前記第2メモリ領域に書き込まれた前記出力データへの冗長符号の付与と、を含む第2処理過程と、を実行する実行制御部と、
前記第1処理過程における前記冗長符号の付与を経た前記出力データと、前記第2処理過程における前記冗長符号の付与を経た前記出力データとを照合する結果照合部と、
前記プロセッサおよび前記メモリの故障の有無を演算によって診断する演算診断部と、
前記入力データおよび前記出力データの冗長検査、前記結果照合部における照合、および前記演算診断部における診断の少なくともいずれかにおいて異常が検出された場合に、前記出力データの出力を停止させる異常処理部と、を有することを特徴とする安全演算装置。A processor for performing program processing of input data;
A memory for holding the input data to be input to the processor and output data as a result of the program processing;
The memory can hold the input data and the output data in each of a first memory area and a second memory area having an address different from the first memory area,
The processor is
A first processing step including the program processing of the input data written to the first memory area and the provision of a redundant code to the output data written to the first memory area as a result of the program processing; And a program processing of the input data written to the second memory area, and a redundant code to the output data written to the second memory area as a result of the program processing. An execution control unit for executing the processing steps;
A result matching unit that collates the output data that has been given the redundant code in the first processing step and the output data that has been given the redundant code in the second processing step;
An operation diagnosis unit for diagnosing the presence of a failure in the processor and the memory by operation;
An abnormality processing unit for stopping the output of the output data when an abnormality is detected in at least one of the redundancy check of the input data and the output data, the verification in the result verification unit, and the diagnosis in the arithmetic diagnosis unit; A safety arithmetic device comprising:
前記結果照合部は、前記第1メモリ領域から読み出した前記出力データと、前記第2メモリ領域から読み出した前記出力データとを、互いの排他論理和により照合することを特徴とする請求項1に記載の安全演算装置。The execution control unit writes the output data bit-inverted in the second memory area in the second processing step,
The result collating unit collates the output data read from the first memory area and the output data read from the second memory area by mutual exclusive OR. The safety arithmetic device described.
前記結果照合部は、前記第1メモリ領域から読み出した前記出力データと、前記第2メモリ領域から読み出した前記出力データとを、互いの和により照合することを特徴とする請求項1に記載の安全演算装置。The execution control unit writes the output data that has been converted into a complement into the second memory area in the second processing step,
The result collating unit collates the output data read from the first memory area and the output data read from the second memory area with each other's sum. Safety computing device.
前記結果照合部は、前記第1メモリ領域から読み出した前記出力データと前記第2メモリ領域から読み出した前記出力データとのうちの一方についてエンディアンを逆転させて、照合することを特徴とする請求項1に記載の安全演算装置。The execution control unit reverses the endian for one of the output data to be written to the first memory area and the output data to be written to the second memory area,
The result collating unit performs collation by reversing an endian of one of the output data read from the first memory area and the output data read from the second memory area. The safety arithmetic device according to 1.
前記プロセッサへ入力される前記入力データ、および前記プログラム処理の結果である出力データを保持するメモリと、を有し、
前記メモリは、第1メモリ領域と、前記第1メモリ領域とは異なるアドレスの第2メモリ領域と、のそれぞれに、前記入力データおよび前記出力データを保持可能であって、
前記プロセッサは、
前記入力データを含む入力メッセージに付与されている冗長符号を復号して検査する入力メッセージ処理と、前記出力データに冗長符号を付与し出力メッセージとする出力メッセージ処理とを実施するメッセージ処理部と、
前記第1メモリ領域に書き込まれた前記入力メッセージについての制御演算と、前記出力メッセージ処理により得られた前記出力メッセージの前記第1メモリ領域への書き込みとを含む第1処理過程と、前記第2メモリ領域に書き込まれた前記入力メッセージについての制御演算と、前記出力メッセージ処理を経た前記出力メッセージの前記第2メモリ領域への書き込みとを含む第2処理過程と、を実行する実行制御部と、
前記第1メモリ領域に書き込まれた前記出力メッセージと、前記第2メモリ領域に書き込まれた前記出力メッセージとを照合する結果照合部と、
前記プロセッサおよび前記メモリの故障の有無を演算によって診断する演算診断部と、
前記入力データおよび前記出力データの冗長検査、前記結果照合部における照合、および前記演算診断部における診断の少なくともいずれかにおいて異常が検出された場合に、前記出力メッセージの出力を停止させる異常処理部と、を有することを特徴とする安全演算装置。A processor for performing program processing of input data;
A memory for holding the input data to be input to the processor and output data as a result of the program processing;
The memory can hold the input data and the output data in each of a first memory area and a second memory area having an address different from the first memory area,
The processor is
A message processing unit for performing an input message process for decoding and checking a redundant code given to an input message including the input data, and an output message process for giving a redundant code to the output data and setting it as an output message;
A first processing step including a control operation for the input message written to the first memory area, and a writing of the output message obtained by the output message process to the first memory area; An execution control unit that executes a control process for the input message written to the memory area and a second processing step including writing the output message to the second memory area after the output message process;
A result collating unit that collates the output message written in the first memory area with the output message written in the second memory area;
An operation diagnosis unit for diagnosing the presence of a failure in the processor and the memory by operation;
An abnormality processing unit for stopping output of the output message when an abnormality is detected in at least one of the redundancy check of the input data and the output data, the verification in the result verification unit, and the diagnosis in the arithmetic diagnosis unit; A safety arithmetic device comprising:
前記入力データのプログラム処理を実施するプロセッサと、
前記プロセッサへ入力される前記入力データを保持するメモリと、を有し、
前記メモリは、第1メモリ領域と、前記第1メモリ領域とは異なるアドレスの第2メモリ領域と、のそれぞれに、前記入力データを保持可能であって、
前記プロセッサは、
前記入力部へのテスト信号の送信によって、前記入力部の異常の有無を診断する入力診断部と、
前記入力データに冗長符号を付与し入力メッセージとする入力メッセージ処理を実施するメッセージ処理部と、
前記入力データに対する演算処理と、前記第1メモリ領域への前記入力メッセージの書き込みとを含む第1処理過程と、前記入力データに対する演算処理と、前記第2メモリ領域への前記入力メッセージの書き込みとを含む第2処理過程と、を実行する実行制御部と、
前記第1メモリ領域に書き込まれた前記入力メッセージと、前記第2メモリ領域に書き込まれた前記入力メッセージとを照合する結果照合部と、
安全制御のための演算処理を実施する安全演算装置へ前記入力メッセージを送信する送信部と、を備え、
前記送信部は、前記入力診断部における診断、および前記結果照合部における照合の少なくともいずれかにおいて異常が検出された場合に、前記入力メッセージの送信を停止させることを特徴とする安全入力装置。An input unit that digitizes the input signal and uses it as input data;
A processor for performing program processing of the input data;
A memory for holding the input data input to the processor;
The memory can hold the input data in each of a first memory area and a second memory area having an address different from the first memory area,
The processor is
An input diagnostic unit for diagnosing the presence or absence of an abnormality in the input unit by transmitting a test signal to the input unit;
A message processing unit for performing an input message process that assigns a redundant code to the input data and sets it as an input message;
A first processing step including arithmetic processing for the input data; writing of the input message to the first memory area; arithmetic processing for the input data; and writing of the input message to the second memory area. A second processing step including: an execution control unit that executes:
A result collating unit that collates the input message written to the first memory area with the input message written to the second memory area;
A transmission unit that transmits the input message to a safety arithmetic device that performs arithmetic processing for safety control, and
The said transmission part stops transmission of the said input message, when abnormality is detected in at least any one of the diagnosis in the said input diagnostic part, and the collation in the said result collation part, The safety input device characterized by the above-mentioned.
前記出力メッセージに含まれる出力データを保持するメモリと、
前記出力データに応じた出力信号を出力する出力部と、を有し、
前記メモリは、第1メモリ領域と、前記第1メモリ領域とは異なるアドレスの第2メモリ領域と、のそれぞれに、前記出力データを保持可能であって、
前記プロセッサは、
安全制御のための演算処理を実施する安全演算装置からの前記出力メッセージを受信する受信部と、
前記出力メッセージに含まれる冗長符号を基に前記出力メッセージの内容を検査する出力メッセージ処理を実施するメッセージ処理部と、
前記出力メッセージの内容の検査と、前記第1メモリ領域への前記出力データの書き込みとを含む第1処理過程と、前記出力メッセージの内容の検査と、前記第2メモリ領域への前記出力データの書き込みとを含む第2処理過程と、を実行する実行制御部と、
前記第1メモリ領域に書き込まれた前記出力データと、前記第2メモリ領域に書き込まれた前記出力データとを照合する結果照合部と、
前記出力部へのテスト信号の送信によって、前記出力部の異常の有無を診断する出力診断部と、を備え、
前記出力部は、前記出力診断部における診断、および前記結果照合部における照合の少なくともいずれかにおいて異常が検出された場合に、前記出力信号の出力を停止させることを特徴とする安全出力装置。A processor that performs program processing of the output message;
A memory for holding output data included in the output message;
An output unit that outputs an output signal according to the output data,
The memory can hold the output data in each of a first memory area and a second memory area having an address different from the first memory area,
The processor is
A receiver that receives the output message from the safety arithmetic device that performs arithmetic processing for safety control;
A message processing unit for performing output message processing for checking the content of the output message based on a redundant code included in the output message;
A first processing step including checking the contents of the output message and writing the output data to the first memory area; checking the contents of the output message; and outputting the output data to the second memory area. An execution control unit that executes a second processing step including writing;
A result collating unit that collates the output data written in the first memory area with the output data written in the second memory area;
An output diagnostic unit that diagnoses the presence or absence of an abnormality of the output unit by transmitting a test signal to the output unit;
The output unit stops output of the output signal when an abnormality is detected in at least one of diagnosis in the output diagnosis unit and verification in the result verification unit.
安全制御のための演算処理を実施する安全演算装置と、
前記安全コントローラから出力信号を出力する安全出力装置と、を有し、
前記安全演算装置は、
前記安全入力装置からの入力データのプログラム処理を実施するプロセッサと、
前記プロセッサへ入力される前記入力データ、および前記プログラム処理の結果である出力データを保持するメモリと、を有し、
前記メモリは、第1メモリ領域と、前記第1メモリ領域とは異なるアドレスの第2メモリ領域と、のそれぞれに、前記入力データおよび前記出力データを保持可能であって、
前記プロセッサは、
前記第1メモリ領域に書き込まれた前記入力データの前記プログラム処理と、前記プログラム処理の結果として前記第1メモリ領域に書き込まれた前記出力データへの冗長符号の付与と、を含む第1処理過程と、前記第2メモリ領域に書き込まれた前記入力データの前記プログラム処理と、前記プログラム処理の結果として前記第2メモリ領域に書き込まれた前記出力データへの冗長符号の付与と、を含む第2処理過程と、を実行する実行制御部と、
前記第1処理過程における前記冗長符号の付与を経た前記出力データと、前記第2処理過程における前記冗長符号の付与を経た前記出力データとを照合する結果照合部と、
前記プロセッサおよび前記メモリの故障の有無を演算によって診断する演算診断部と、
前記入力データおよび前記出力データの冗長検査、前記結果照合部における照合、および前記演算診断部における診断の少なくともいずれかにおいて異常が検出された場合に、前記出力データの出力を停止させる異常処理部と、を有することを特徴とする安全コントローラ。A safety input device that accepts input of input signals to the safety controller;
A safety computation device for performing computation processing for safety control;
A safety output device that outputs an output signal from the safety controller,
The safety arithmetic unit is
A processor for performing program processing of input data from the safety input device;
A memory for holding the input data to be input to the processor and output data as a result of the program processing;
The memory can hold the input data and the output data in each of a first memory area and a second memory area having an address different from the first memory area,
The processor is
A first processing step including the program processing of the input data written to the first memory area and the provision of a redundant code to the output data written to the first memory area as a result of the program processing; And a program processing of the input data written to the second memory area, and a redundant code to the output data written to the second memory area as a result of the program processing. An execution control unit for executing the processing steps;
A result matching unit that collates the output data that has been given the redundant code in the first processing step and the output data that has been given the redundant code in the second processing step;
An operation diagnosis unit for diagnosing the presence of a failure in the processor and the memory by operation;
An abnormality processing unit for stopping the output of the output data when an abnormality is detected in at least one of the redundancy check of the input data and the output data, the verification in the result verification unit, and the diagnosis in the arithmetic diagnosis unit; And a safety controller.
安全制御のための演算処理を実施する安全演算装置と、
前記安全コントローラから出力信号を出力する安全出力装置と、を有し、
前記安全入力装置は、
前記入力信号を数値化し、入力データとする入力部と、
前記入力データのプログラム処理を実施するプロセッサと、
前記プロセッサへ入力される前記入力データを保持するメモリと、を有し、
前記メモリは、第1メモリ領域と、前記第1メモリ領域とは異なるアドレスの第2メモリ領域と、のそれぞれに、前記入力データを保持可能であって、
前記プロセッサは、
前記入力部へのテスト信号の送信によって、前記入力部の異常の有無を診断する入力診断部と、
前記入力データに冗長符号を付与し入力メッセージとする入力メッセージ処理を実施するメッセージ処理部と、
前記入力データに対する演算処理と、前記第1メモリ領域への前記入力メッセージの書き込みとを含む第1処理過程と、前記入力データに対する演算処理と、前記第2メモリ領域への前記入力メッセージの書き込みとを含む第2処理過程と、を実行する実行制御部と、
前記第1メモリ領域に書き込まれた前記入力メッセージと、前記第2メモリ領域に書き込まれた前記入力メッセージとを照合する結果照合部と、
前記安全演算装置へ前記入力メッセージを送信する送信部と、を備え、
前記送信部は、前記入力診断部における診断、および前記結果照合部における照合の少なくともいずれかにおいて異常が検出された場合に、前記入力メッセージの送信を停止させることを特徴とする安全コントローラ。A safety input device that accepts input of input signals to the safety controller;
A safety computation device for performing computation processing for safety control;
A safety output device that outputs an output signal from the safety controller,
The safety input device is:
An input unit that digitizes the input signal and uses it as input data;
A processor for performing program processing of the input data;
A memory for holding the input data input to the processor;
The memory can hold the input data in each of a first memory area and a second memory area having an address different from the first memory area,
The processor is
An input diagnostic unit for diagnosing the presence or absence of an abnormality in the input unit by transmitting a test signal to the input unit;
A message processing unit for performing an input message process that assigns a redundant code to the input data and sets it as an input message;
A first processing step including arithmetic processing for the input data; writing of the input message to the first memory area; arithmetic processing for the input data; and writing of the input message to the second memory area. A second processing step including: an execution control unit that executes:
A result collating unit that collates the input message written to the first memory area with the input message written to the second memory area;
A transmission unit for transmitting the input message to the safety arithmetic unit,
The said transmission part stops transmission of the said input message, when abnormality is detected in at least any one of the diagnosis in the said input diagnostic part, and the collation in the said result collation part.
安全制御のための演算処理を実施する安全演算装置と、
前記安全コントローラから出力信号を出力する安全出力装置と、を有し、
前記安全出力装置は、
前記安全演算装置からの出力メッセージのプログラム処理を実施するプロセッサと、
前記出力メッセージに含まれる出力データを保持するメモリと、
前記出力データに応じた出力信号を出力する出力部と、を有し、
前記メモリは、第1メモリ領域と、前記第1メモリ領域とは異なるアドレスの第2メモリ領域と、のそれぞれに、前記出力データを保持可能であって、
前記プロセッサは、
前記安全演算装置からの前記出力メッセージを受信する受信部と、
前記出力メッセージに含まれる冗長符号を基に前記出力メッセージの内容を検査する出力メッセージ処理を実施するメッセージ処理部と、
前記出力メッセージの内容の検査と、前記第1メモリ領域への前記出力データの書き込みとを含む第1処理過程と、前記出力メッセージの内容の検査と、前記第2メモリ領域への前記出力データの書き込みとを含む第2処理過程と、を実行する実行制御部と、
前記第1メモリ領域に書き込まれた前記出力データと、前記第2メモリ領域に書き込まれた前記出力データとを照合する結果照合部と、
前記出力部へのテスト信号の送信によって、前記出力部の異常の有無を診断する出力診断部と、を備え、
前記出力部は、前記出力診断部における診断、および前記結果照合部における照合の少なくともいずれかにおいて異常が検出された場合に、前記出力信号の出力を停止させることを特徴とする安全コントローラ。A safety input device that accepts input of input signals to the safety controller;
A safety computation device for performing computation processing for safety control;
A safety output device that outputs an output signal from the safety controller,
The safety output device is:
A processor for executing program processing of an output message from the safety arithmetic unit;
A memory for holding output data included in the output message;
An output unit that outputs an output signal according to the output data,
The memory can hold the output data in each of a first memory area and a second memory area having an address different from the first memory area,
The processor is
A receiving unit for receiving the output message from the safety arithmetic unit;
A message processing unit for performing output message processing for checking the content of the output message based on a redundant code included in the output message;
A first processing step including checking the contents of the output message and writing the output data to the first memory area; checking the contents of the output message; and outputting the output data to the second memory area. An execution control unit that executes a second processing step including writing;
A result collating unit that collates the output data written in the first memory area with the output data written in the second memory area;
An output diagnostic unit that diagnoses the presence or absence of an abnormality of the output unit by transmitting a test signal to the output unit;
The said output part stops the output of the said output signal, when abnormality is detected in at least any one of the diagnosis in the said output diagnostic part, and the collation in the said result collation part, The safety controller characterized by the above-mentioned.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014535388A JP5762642B2 (en) | 2012-09-11 | 2013-03-11 | Safety arithmetic device, safety input device, safety output device and safety controller |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2012/073179 WO2014041596A1 (en) | 2012-09-11 | 2012-09-11 | Safety controller |
JPPCT/JP2012/073179 | 2012-09-11 | ||
JP2014535388A JP5762642B2 (en) | 2012-09-11 | 2013-03-11 | Safety arithmetic device, safety input device, safety output device and safety controller |
PCT/JP2013/056612 WO2014041829A1 (en) | 2012-09-11 | 2013-03-11 | Safety arithmetic device, safety input device, safety output device, and safety controller |
Publications (2)
Publication Number | Publication Date |
---|---|
JP5762642B2 JP5762642B2 (en) | 2015-08-12 |
JPWO2014041829A1 true JPWO2014041829A1 (en) | 2016-08-18 |
Family
ID=53887822
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014535388A Active JP5762642B2 (en) | 2012-09-11 | 2013-03-11 | Safety arithmetic device, safety input device, safety output device and safety controller |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5762642B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105334845B (en) * | 2015-11-25 | 2020-05-22 | 中国航空工业集团公司沈阳飞机设计研究所 | Mechanical dual-redundancy electrical four-redundancy angle-of-attack redundancy management method |
CN106325148B (en) * | 2016-08-09 | 2019-08-09 | 北京精密机电控制设备研究所 | A kind of servo-system turn electrically separated control and a detection circuit |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63298602A (en) * | 1987-05-29 | 1988-12-06 | Daikin Ind Ltd | Back-up device for air conditioner |
JPH028911A (en) * | 1988-06-27 | 1990-01-12 | Matsushita Electric Works Ltd | Programmable controller |
JPH02219101A (en) * | 1989-02-21 | 1990-08-31 | Matsushita Electric Ind Co Ltd | Output processor |
JP2000148216A (en) * | 1998-11-12 | 2000-05-26 | Mitsubishi Electric Corp | Plant controller communication equipment |
JP2010262432A (en) * | 2009-05-01 | 2010-11-18 | Mitsubishi Electric Corp | Safety controller |
JP5494255B2 (en) * | 2010-06-07 | 2014-05-14 | 富士電機株式会社 | Safety control system |
-
2013
- 2013-03-11 JP JP2014535388A patent/JP5762642B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP5762642B2 (en) | 2015-08-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2014041829A1 (en) | Safety arithmetic device, safety input device, safety output device, and safety controller | |
JP5068436B2 (en) | Method and apparatus for bus coupling of safety related processes | |
US8793533B2 (en) | Method and device for performing failsafe hardware-independent floating-point arithmetic | |
JP2015118468A (en) | Programmable controller | |
US20110178612A1 (en) | Safety input device | |
JP5608409B2 (en) | Self-diagnosis system and test circuit determination method | |
JP5762642B2 (en) | Safety arithmetic device, safety input device, safety output device and safety controller | |
JP5115101B2 (en) | Field device and fieldbus controller | |
US6487695B1 (en) | Method for providing fail-safe secure data transmission between a numerical control system and a spatially separate unit | |
JP2010160649A (en) | Controller and control method | |
US6507760B1 (en) | Numerical control unit with a spatially separated input device | |
JP3883856B2 (en) | Fault diagnosis method and apparatus for signal processing system | |
JP7140020B2 (en) | output controller | |
JP2019046274A (en) | Input and output device | |
JP2014119909A (en) | Communication coupler, information processor, control method and program | |
JP5906145B2 (en) | Transmission device, transmission system, and self-diagnosis method thereof | |
CN111124418A (en) | Communication data timeout judging method based on VCP redundant codes | |
JP2007532992A (en) | Error detection method and control system during data processing in processing system | |
US11982984B2 (en) | Automation system for monitoring a safety-critical process | |
US20210278815A1 (en) | Automation System For Monitoring A Safety-Critical Process | |
JP4711303B2 (en) | Contact input device | |
JP2012029250A (en) | Electronic device and control method of the same | |
JP2014225110A (en) | Safety controller | |
CN116455732A (en) | Data redundancy transmission control method and system composition for active safety of train | |
JP2001034500A (en) | Microcomputer failure diagnosing device and method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
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: 20150512 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150609 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5762642 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |