JP5993292B2 - Redundant system and redundancy method - Google Patents

Redundant system and redundancy method Download PDF

Info

Publication number
JP5993292B2
JP5993292B2 JP2012260977A JP2012260977A JP5993292B2 JP 5993292 B2 JP5993292 B2 JP 5993292B2 JP 2012260977 A JP2012260977 A JP 2012260977A JP 2012260977 A JP2012260977 A JP 2012260977A JP 5993292 B2 JP5993292 B2 JP 5993292B2
Authority
JP
Japan
Prior art keywords
control device
data
survival
calculation result
calculation
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
JP2012260977A
Other languages
Japanese (ja)
Other versions
JP2014106862A (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.)
Taiyo Nippon Sanso Corp
Original Assignee
Taiyo Nippon Sanso Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Taiyo Nippon Sanso Corp filed Critical Taiyo Nippon Sanso Corp
Priority to JP2012260977A priority Critical patent/JP5993292B2/en
Publication of JP2014106862A publication Critical patent/JP2014106862A/en
Application granted granted Critical
Publication of JP5993292B2 publication Critical patent/JP5993292B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Hardware Redundancy (AREA)
  • Safety Devices In Control Systems (AREA)

Description

本発明は、冗長化システムおよび冗長化方法に関し、例えば、超電導電磁石を超電導状態に保持するための冷却システム等で用いられる制御装置の冗長構成に関する。   The present invention relates to a redundancy system and a redundancy method, for example, to a redundant configuration of a control device used in a cooling system or the like for holding a superconducting electromagnet in a superconducting state.

超電導電磁石を構成する超電導コイルの温度は、冷却システムにより転移温度以下に維持されている。この種の冷却システムは、冷媒として液体ヘリウムを用いており、ヘリウムを液化するための液化装置を備えている。この液化装置により生成された液体ヘリウムの循環流量は、超電導電磁石の温度に応じて制御装置により制御されている。   The temperature of the superconducting coil constituting the superconducting electromagnet is maintained below the transition temperature by the cooling system. This type of cooling system uses liquid helium as a refrigerant and includes a liquefier for liquefying helium. The circulation flow rate of the liquid helium generated by this liquefaction device is controlled by the control device in accordance with the temperature of the superconducting electromagnet.

上述の冷却システムは無停止運転をする必要がある。このため、冷却システムにおける液体ヘリウムの循環流量を制御・管理するための制御装置として冗長化システムが用いられている。   The above cooling system needs to be operated without stopping. For this reason, a redundant system is used as a control device for controlling and managing the circulation flow rate of liquid helium in the cooling system.

図7に、上述の冷却システムにおける液体ヘリウムの循環流量を制御・管理するための制御装置に適用される従来の冗長化システムの構成例を示す。同図(a)から(c)に示す冗長化システム500は、冷却システムにおける液体ヘリウムの循環流量を制御するための制御データを演算する制御装置501,502と、上記制御データを格納するための共有メモリ503とを備えて構成されている。ここで、制御装置501は、故障が発生していない場合に通常的に運転される制御装置である。制御装置502は、制御装置501が故障したときに制御装置501に代わって運転される制御装置である。制御装置502は、制御装置501が正常運転している間は待機状態となっている。   FIG. 7 shows a configuration example of a conventional redundancy system applied to a control device for controlling and managing the circulation flow rate of liquid helium in the above cooling system. The redundancy system 500 shown in FIGS. 1A to 1C includes control devices 501 and 502 for calculating control data for controlling the circulation flow rate of liquid helium in the cooling system, and for storing the control data. And a shared memory 503. Here, the control device 501 is a control device that is normally operated when a failure has not occurred. The control device 502 is a control device that is operated in place of the control device 501 when the control device 501 fails. The control device 502 is in a standby state while the control device 501 is operating normally.

通常運転時は、図7(a)に示すように、制御装置501が、超電導磁石を構成する超電導コイルの温度に関する情報を含む入力データに基づいて、この超電導コイルの温度を転移温度以下に保つために必要とされる液体ヘリウムの循環流量の制御に必要な演算処理を実行し、その演算結果として得られる制御データを共有メモリ503に格納する。この制御データが共有メモリ503から出力データとして出力され、この出力データに基づいて、被冷却体である超電導電磁石の超電導コイルの温度が転移温度以下となるように、液体ヘリウムの循環流量を調整するためのバルブの開度が制御される。   At the time of normal operation, as shown in FIG. 7A, the control device 501 keeps the temperature of the superconducting coil below the transition temperature based on input data including information on the temperature of the superconducting coil constituting the superconducting magnet. For this purpose, a calculation process necessary for controlling the circulating flow rate of liquid helium is executed, and control data obtained as a result of the calculation is stored in the shared memory 503. This control data is output as output data from the shared memory 503. Based on this output data, the circulating flow rate of liquid helium is adjusted so that the temperature of the superconducting coil of the superconducting magnet that is the object to be cooled is equal to or lower than the transition temperature. The opening of the valve for controlling is controlled.

ここで、通常運転用の制御装置501が故障すると、この制御装置501に代わって、待機用の制御装置502が制御に必要な演算処理を実行する。このとき、図7(b)に示すように、待機用の制御装置502は、故障前の通常運転用の制御装置501による演算結果を共有メモリ503から読み出し、この演算結果を反映させて演算処理を実行することにより制御の連続性を保つ。そして、図7(c)に示すように、待機用の制御装置502は、自身が実行した演算処理の演算結果を共有メモリ503に格納する。   Here, when the control device 501 for normal operation breaks down, the standby control device 502 executes arithmetic processing necessary for control instead of the control device 501. At this time, as shown in FIG. 7B, the standby control device 502 reads out the calculation result from the control device 501 for normal operation before the failure from the shared memory 503, and reflects the calculation result to perform calculation processing. To maintain continuity of control. Then, as shown in FIG. 7C, the standby control device 502 stores the calculation result of the calculation process executed by itself in the shared memory 503.

通常運転用の制御装置501が故障した後は、待機用の制御装置502によって共有メモリ503に格納された演算結果に基づいて、液体ヘリウムの循環流量を調整するためのバルブの開度が制御される。このように、通常運転用の制御装置501が故障すると、この通常運転用の制御装置501から待機用の制御装置502への切り替えが行われる。   After the failure of the control device 501 for normal operation, the opening degree of the valve for adjusting the circulating flow rate of liquid helium is controlled based on the calculation result stored in the shared memory 503 by the standby control device 502. The As described above, when the control device 501 for normal operation breaks down, the control device 501 for normal operation is switched to the control device 502 for standby.

特開平6−152570号公報JP-A-6-152570 特開2011−187023号公報Japanese Patent Application Laid-Open No. 2011-187023 特開2010−146235号公報JP 2010-146235 A

しかしながら、上述の従来技術によれば、通常運転用の制御装置501から待機用の制御装置502に切り替える際、制御の連続性を保つために、待機用の制御装置502は共有メモリ503から通常運転用の制御装置501の演算結果を読み出し、その後の演算処理に反映させる必要がある。このため、制御装置の切り替えに時間を要していた。   However, according to the above-described prior art, when switching from the control device 501 for normal operation to the control device 502 for standby, the standby control device 502 performs normal operation from the shared memory 503 in order to maintain control continuity. It is necessary to read out the calculation result of the control device 501 for use and to reflect it in the subsequent calculation processing. For this reason, it took time to switch the control device.

図7に示す例のほか、冗長化構成に関する従来技術として、例えば、特許文献1、特許文献2、特許文献3に開示された技術が知られている。しかしながら、これらの特許文献の技術によれば、装置を切り替える際のデータ転送時間を短縮することはできるものの、依然として、データ転送時間を必要とする。   In addition to the example shown in FIG. 7, for example, techniques disclosed in Patent Document 1, Patent Document 2, and Patent Document 3 are known as conventional techniques related to a redundant configuration. However, according to the techniques of these patent documents, the data transfer time when switching the apparatuses can be shortened, but still requires the data transfer time.

本発明は、制御装置の切り替えを速やかに行うことができる冗長化システムおよび冗長化方法を提供することを目的とする。   An object of this invention is to provide the redundancy system and the redundancy method which can perform switching of a control apparatus rapidly.

本発明の一態様による冗長化システムは、制御対象の制御に関する演算処理を実行する第1制御装置と、前記第1制御装置による演算処理と並行して、前記第1制御装置による演算処理と同等の演算処理を実行する第2制御装置と、前記第1制御装置および前記第2制御装置によって共有される記憶装置と、を備え、前記記憶装置は、前記第1制御装置および前記第2制御装置による各演算処理の演算結果を格納するための演算結果記憶領域と、前記第1制御装置の生存を確認するためのデータおよび前記第2制御装置の生存を確認するためのデータを格納するための生存確認データ記憶領域と、前記第1制御装置の異常の発生を確認するためのデータおよび前記第2制御装置の異常の発生を確認するためのデータを格納する異常発生状態管理領域と、を有し、前記第2制御装置は、前記第1制御装置による演算処理の演算結果と前記第2制御装置による演算処理の演算結果とが整合しているか否かを判定する整合判定処理を行い、前記演算結果が整合していない場合、警報を発するとともに、前記第2制御装置による演算処理の演算結果が前記第1制御装置による演算処理の演算結果に置き換えられることで、前記第1制御装置による演算結果と前記第2制御装置による演算結果とを整合し、前記第1制御装置は、前記演算結果が整合された後に、前記生存確認データ記憶領域に格納されたデータを参照して前記第2制御装置の生存確認を行い、生存が確認できない場合、前記異常発生状態管理領域に格納された前記第2制御装置の異常の発生を確認するためのデータを更新し、前記第2制御装置は、前記演算結果が整合された後に、前記生存確認データ記憶領域に格納されたデータを参照して前記第1制御装置の生存確認を行い、生存が確認できない場合、前記異常発生状態管理領域に格納された前記第1制御装置の異常の発生を確認するためのデータを更新し、該データの更新後に、前記整合判定処理において置き換えられた演算結果を前記記憶装置から出力し、前記第1制御装置と前記第2制御装置は、前記生存確認データ記憶領域に格納されたデータを参照して共に相手側の制御装置の生存を確認できない場合、前記第1制御装置と前記第2制御装置のうち、先に前記異常発生状態管理領域のデータを更新した一方の制御装置のみが運転を継続し、他方の制御装置が運転を停止し、前記一方の制御装置は、前記演算結果記憶領域に格納された演算結果のうち、前記他方の制御装置により格納された演算結果を前記記憶装置から出力させる、冗長化システムの構成を有する。 A redundancy system according to an aspect of the present invention is equivalent to a first control device that executes arithmetic processing related to control of a control target and arithmetic processing by the first control device in parallel with the arithmetic processing by the first control device. And a storage device shared by the first control device and the second control device, wherein the storage device includes the first control device and the second control device. For storing the calculation result storage area for storing the calculation result of each calculation processing according to the above, the data for checking the survival of the first control device, and the data for checking the survival of the second control device An existence confirmation data storage area, an abnormality occurrence status tube for storing data for confirming the occurrence of an abnormality in the first control device and data for confirming the occurrence of an abnormality in the second control device Anda region, said second control device, matching determination determines whether the calculation result of the arithmetic processing operation result of the operation processing by the first control unit and by the second control device are consistent When the calculation result is not consistent, an alarm is issued and the calculation result of the calculation process by the second control device is replaced with the calculation result of the calculation process by the first control device. The calculation result by the first control device is matched with the calculation result by the second control device, and the first control device refers to the data stored in the survival confirmation data storage area after the calculation result is matched . If the survival of the second control device is confirmed and the survival cannot be confirmed, update the data for confirming the occurrence of the abnormality of the second control device stored in the abnormality occurrence state management area, Serial second control unit, after the operation result is matched, referring to the stored in the alive data storage area data performs alive of the first controller, if the survival can not be confirmed, the abnormality Data for confirming the occurrence of abnormality of the first control device stored in the occurrence state management area is updated, and after the data is updated, the operation result replaced in the consistency determination process is output from the storage device. the first controller and the second controller if it can not verify the viability of the existence confirmation data storage area by referring to the data stored in both the mating of the control device, the said first control device the Of the two control devices, only one control device that has previously updated the data in the abnormality occurrence state management area continues to operate, the other control device stops operating, and the one control device Of the calculation results stored in the calculation result storage area, the calculation result stored by the other control device is output from the storage device.

前記冗長化システムにおいて、例えば、前記第1制御装置は、該第1制御装置の生存を確認するためのデータとして、所定の数値範囲で巡回する数値データを生成して前記生存確認データ記憶領域に格納する。
前記冗長化システムにおいて、例えば、前記第2制御装置は、前記生存確認データ記憶領域に格納された数値データを参照し、該数値データに所定の変化がない場合、前記第1制御装置の生存を確認できないと判定する
In the redundancy system, for example, the first control device generates numerical data that circulates within a predetermined numerical range as data for confirming the survival of the first control device, and stores the numerical data in the survival confirmation data storage area. Store.
In the redundant system, for example, the second control device refers to the numerical data stored in the survival confirmation data storage area, and if there is no predetermined change in the numerical data, the second control device It is determined that it cannot be confirmed .

前記冗長化システムにおいて、例えば、前記第1制御装置は、該第1制御装置による演算処理の演算結果のチェックサム値を演算して前記記憶装置に格納し、前記第2制御装置は、該第2制御装置による演算処理の演算結果のチェックサム値を演算し、該演算により得られたチェックサム値と前記第1制御装置により前記記憶装置に格納されたチェックサム値とを比較することにより、前記第1制御装置による演算処理の演算結果と前記第2制御装置による演算処理の演算結果とが整合しているか否かを判定する
前記冗長化システムにおいて、例えば、前記第1制御装置は、通常運転用の制御装置であり、前記第2制御装置は、待機用の制御装置である。
In the redundancy system, for example, the first control device calculates a checksum value of a calculation result of calculation processing by the first control device and stores the checksum value in the storage device, and the second control device (2) calculating a checksum value of a calculation result of calculation processing by the control device, and comparing a checksum value obtained by the calculation with a checksum value stored in the storage device by the first control device; It is determined whether the calculation result of the calculation process by the first control device matches the calculation result of the calculation process by the second control device .
In the redundancy system, for example, the first control device is a control device for normal operation, and the second control device is a control device for standby.

本発明の一態様による冗長化方法は、制御対象の制御に関する演算処理を実行する第1制御装置と、前記第1制御装置による演算処理と並行して、前記第1制御装置による演算処理と同等の演算処理を実行する第2制御装置と、前記第1制御装置および前記第2制御装置によって共有される記憶装置と、を備えた冗長化システムの冗長化方法であって、前記記憶装置が、前記第1制御装置および前記第2制御装置による各演算処理の演算結果を格納するための演算結果記憶領域と、前記第1制御装置の生存を確認するためのデータおよび前記第2制御装置の生存を確認するためのデータを格納するための生存確認データ記憶領域と、前記第1制御装置の異常の発生を確認するためのデータおよび前記第2制御装置の異常の発生を確認するためのデータを格納する異常発生状態管理領域と、有し、前記第2制御装置は、前記第1制御装置による演算処理の演算結果と前記第2制御装置による演算処理の演算結果とが整合しているか否かを判定する整合判定処理を行い、前記演算結果が整合していない場合、警報を発するとともに、前記第2制御装置による演算処理の演算結果が前記第1制御装置による演算処理の演算結果に置き換えられることで、前記第1制御装置による演算結果と前記第2制御装置による演算結果とを整合する段階と、前記第1制御装置は、前記演算結果が整合された後に、前記生存確認データ記憶領域に格納されたデータを参照して前記第2制御装置の生存確認を行い、生存が確認できない場合、前記異常発生状態管理領域に格納された前記第2制御装置の異常の発生を確認するためのデータを更新する段階と、前記第2制御装置は、前記演算結果が整合された後に、前記生存確認データ記憶領域に格納されたデータを参照して前記第1制御装置の生存確認を行い、生存が確認できない場合、前記異常発生状態管理領域に格納された前記第1制御装置の異常の発生を確認するためのデータを更新し、該データの更新後に、前記整合判定処理において置き換えられた演算結果を前記記憶装置から出力する段階と、前記第1制御装置と前記第2制御装置は、前記生存確認データ記憶領域に格納されたデータを参照して共に相手側の制御装置の生存を確認できない場合、前記第1制御装置と前記第2制御装置のうち、先に前記異常発生状態管理領域のデータを更新した一方の制御装置のみが運転を継続し、他方の制御装置が運転を停止する段階と、前記一方の制御装置は、前記演算結果記憶領域に格納された演算結果のうち、前記他方の制御装置により格納された演算結果を前記記憶装置から出力させる段階と、を含む冗長化方法の構成を有する。 A redundancy method according to an aspect of the present invention is equivalent to a first control device that executes arithmetic processing related to control of a control target and an arithmetic processing by the first control device in parallel with the arithmetic processing by the first control device. A redundancy method for a redundant system comprising: a second control device that executes the arithmetic processing of: and a storage device shared by the first control device and the second control device, wherein the storage device includes: A calculation result storage area for storing calculation results of each calculation processing by the first control device and the second control device, data for confirming the survival of the first control device, and the survival of the second control device A survival confirmation data storage area for storing data for confirming data, data for confirming the occurrence of an abnormality in the first control device, and confirming the occurrence of an abnormality in the second control device And abnormal condition management area for storing data, comprising the second control device, whether a calculation result of the arithmetic processing by the arithmetic result and the second control device to the computing process by the first control unit is matched A consistency determination process is performed to determine whether or not the calculation result is inconsistent, and an alarm is issued, and the calculation result of the calculation process by the second control device is converted into the calculation result of the calculation process by the first control device. By replacing the operation result of the first control device with the operation result of the second control device, the first control device stores the survival confirmation data after the operation result is matched. If the existence of the second control device is confirmed by referring to the data stored in the area and the existence of the second control device cannot be confirmed, the abnormality of the second control device stored in the abnormality occurrence state management area A step of updating the data for checking an occurrence, the second control unit, after the operation result is matched, the first control unit by referring to the stored in the alive data storage area Data When the survival check is performed and the survival cannot be confirmed, the data for checking the occurrence of the abnormality of the first control device stored in the abnormality occurrence state management area is updated , and after the data is updated, the consistency determination process Outputting from the storage device the calculation result replaced in step 1, and the first control device and the second control device both refer to the data stored in the survival confirmation data storage area, and control the other side Of the first control device and the second control device, only one control device that has previously updated the data in the abnormality occurrence state management area continues to operate, and the other And the one control device outputs, from the storage device, the operation result stored by the other control device among the operation results stored in the operation result storage area. And a redundancy method including the steps.

本発明によれば、制御装置を切り替える際に演算結果の転送を省略することができる。従って、制御装置の切り替えを速やかに行うことが可能になる。   According to the present invention, it is possible to omit the transfer of calculation results when switching between control devices. Therefore, the control device can be switched quickly.

本発明の実施形態による冗長化システムの構成の一例を示すブロック図である。It is a block diagram which shows an example of a structure of the redundancy system by embodiment of this invention. 本発明の実施形態による冗長化システムの動作(整合判定)の流れを示すフローチャートである。It is a flowchart which shows the flow of operation | movement (consistency determination) of the redundancy system by embodiment of this invention. 本発明の実施形態による冗長化システムの動作(整合判定)の流れを補足するためのフローチャートである。It is a flowchart for supplementing the flow of the operation | movement (consistency determination) of the redundancy system by embodiment of this invention. 本発明の実施形態による冗長化システムの通常運転用の制御装置における動作の流れを示すフローチャートである。It is a flowchart which shows the flow of operation | movement in the control apparatus for normal operation of the redundancy system by embodiment of this invention. 本発明の実施形態による冗長化システムの待機用の制御装置における動作の流れを示すフローチャートである。It is a flowchart which shows the flow of operation | movement in the control apparatus for standby | standby of the redundancy system by embodiment of this invention. 本発明の実施形態による冗長化システムの動作を従来技術と対比して説明するための説明図である。It is explanatory drawing for demonstrating the operation | movement of the redundancy system by embodiment of this invention compared with a prior art. 従来技術による冗長化システムの構成例を示す図である。It is a figure which shows the structural example of the redundancy system by a prior art.

以下、図面を参照して、本発明の実施形態について、超電導電磁石を超電導状態に保持するための冷却システムを制御する制御装置に関する冗長化システムを例として説明する。ただし、本発明は、このような例に限定されず、任意のシステムの制御装置に適用することができる。   Hereinafter, an embodiment of the present invention will be described with reference to the drawings, taking as an example a redundant system related to a control device that controls a cooling system for holding a superconducting electromagnet in a superconducting state. However, the present invention is not limited to such an example, and can be applied to a control device of an arbitrary system.

[構成の説明]
図1は、本発明の実施形態による冗長化システム1000の構成の一例を示すブロック図である。同図に示すように、本実施形態による冗長化システム1000は、通常運転用の制御装置1100(第1制御装置)と、待機用の制御装置1200(第2制御装置)と、共有メモリ1300(記憶装置)とを備えて構成される。ここで、通常運転用の制御装置1100は、入力データDINに基づいて制御対象の制御に関する演算処理を実行して演算結果RAを出力するものであり、故障が発生しない限り通常的に運転される。本実施形態では、制御対象は、例えば、前述の超電導電磁石を超電導状態に保持するための冷却システムにおける液体ヘリウムの循環流量を規定するバルブの開度である。通常運転用の制御装置1100は、そのバルブの開度に関する制御データを演算する。
[Description of configuration]
FIG. 1 is a block diagram showing an example of the configuration of a redundancy system 1000 according to an embodiment of the present invention. As shown in the figure, the redundancy system 1000 according to the present embodiment includes a control device 1100 (first control device) for normal operation, a control device 1200 (second control device) for standby, and a shared memory 1300 ( Storage device). Here, the control device 1100 for normal operation executes calculation processing related to control of the control target based on the input data DIN and outputs the calculation result RA, and is normally operated unless a failure occurs. . In the present embodiment, the control target is, for example, the opening of a valve that defines the circulation flow rate of liquid helium in the cooling system for maintaining the superconducting electromagnet in the superconducting state. The control device 1100 for normal operation calculates control data related to the opening of the valve.

待機用の制御装置1200は、通常運転用の制御装置1100による演算処理と並行して、入力データDINに基づいて制御装置1100による演算処理と同等の演算処理を実行して演算結果RBを出力するものである。待機用の制御装置1200は、通常運転用の制御装置1100が故障したときに、この制御装置1100に代わって運転される。通常運転用の制御装置1100および待機用の制御装置1200は、それぞれ、例えば制御用のCPU(Central Processing Unit)であるが、この例に限定されない。   The standby control device 1200 executes arithmetic processing equivalent to the arithmetic processing by the control device 1100 based on the input data DIN in parallel with the arithmetic processing by the normal operation control device 1100 and outputs the arithmetic result RB. Is. The standby control device 1200 is operated in place of the control device 1100 when the normal operation control device 1100 fails. The control device 1100 for normal operation and the control device 1200 for standby are each a control CPU (Central Processing Unit), for example, but are not limited to this example.

共有メモリ1300は、通常運転用の制御装置1100および待機用の制御装置1200によって共有される記憶装置である。共有メモリ1300には、通常運転用の制御装置1100の演算結果RAと待機用の制御装置1200の演算結果RBが格納される。共有メモリ1300は、例えばスタティックランダムアクセスメモリ(SRAM:Static Random Access Memory)から構成されるが、この例に限定されず、例えば不揮発性メモリ等、任意の記憶デバイスから構成することができる。   The shared memory 1300 is a storage device shared by the control device 1100 for normal operation and the control device 1200 for standby. The shared memory 1300 stores the calculation result RA of the control device 1100 for normal operation and the calculation result RB of the control device 1200 for standby. The shared memory 1300 is configured by, for example, a static random access memory (SRAM), but is not limited to this example, and can be configured by an arbitrary storage device such as a nonvolatile memory.

本実施形態では、共有メモリ1300は、生存確認データ記憶領域1311,1312、チェックサム記憶領域1321、演算結果記憶領域1331,1332、選択部1340を有する。ここで、演算結果記憶領域1331は、通常運転用の制御装置1100による演算処理の演算結果RAを格納するためのものである。演算結果記憶領域1332は、待機用の制御装置1200による演算処理の演算結果RBを格納するためのものである。   In the present embodiment, the shared memory 1300 includes survival confirmation data storage areas 1311 and 1312, a checksum storage area 1321, calculation result storage areas 1331 and 1332, and a selection unit 1340. Here, the calculation result storage area 1331 is for storing a calculation result RA of calculation processing by the control device 1100 for normal operation. The calculation result storage area 1332 is for storing a calculation result RB of calculation processing by the standby control device 1200.

生存確認データ記憶領域1311は、通常運転用の制御装置1100の生存を確認するためのデータを格納するものである。生存確認データ記憶領域1312は、待機用の制御装置1200の生存を確認するためのデータを格納するものである。本実施形態では、「生存」なる用語は、通常運転用の制御装置1100または待機用の制御装置1200が正常な運転状態にあることを意味する。本実施形態では、生存確認用のデータが正常に生成されれば、そのデータを生成した制御装置は正常な運転状態にあるものと見なす。   The survival confirmation data storage area 1311 stores data for confirming the survival of the control device 1100 for normal operation. The survival confirmation data storage area 1312 stores data for confirming the survival of the standby control device 1200. In the present embodiment, the term “survival” means that the control device 1100 for normal operation or the control device 1200 for standby is in a normal operation state. In the present embodiment, if the survival confirmation data is normally generated, it is assumed that the control device that generated the data is in a normal operation state.

通常運転用の制御装置1100は、生存を確認するためのデータとして、「1」から「100」までの数値範囲(所定の数値範囲)で巡回する数値データを制御サイクルごとに生成して生存確認データ記憶領域1311に格納する。制御装置1200も同様に、生存を確認するためのデータとして「1」から「100」までの数値範囲で巡回する数値データを制御サイクルごとに生成して生存確認データ記憶領域1312に格納する。生存確認データ記憶領域1311,1312に格納されたデータは制御サイクルごとに更新される。生存を確認するためのデータは、例えばカウンタを用いて生成することができる。
なお、本実施形態では、生存を確認するためのデータの数値範囲を「1」から「100」までとするが、この例に限定されず、その数値範囲は任意である。
The control device 1100 for normal operation generates numerical data that circulates in a numerical range from “1” to “100” (predetermined numerical range) as data for confirming survival, and confirms survival. Store in the data storage area 1311. Similarly, the control device 1200 generates numerical data that circulates in a numerical range from “1” to “100” as data for confirming the existence for each control cycle, and stores the numerical data in the survival confirmation data storage area 1312. The data stored in the survival confirmation data storage areas 1311 and 1312 is updated every control cycle. Data for confirming survival can be generated using, for example, a counter.
In the present embodiment, the numerical range of data for confirming survival is from “1” to “100”, but is not limited to this example, and the numerical range is arbitrary.

本実施形態では、後述するように、待機用の制御装置1200は、生存確認データ記憶領域1311に格納されたデータを参照して通常運転用の制御装置1100の生存確認を行い、制御装置1100の生存を確認できない場合、共有メモリ1300の演算結果記憶領域1331,1332に格納された演算結果のうち、待機用の制御装置1200により演算結果記憶領域1332に格納された演算結果RBを共有メモリ1300から出力データDOUTとして出力させる。また、通常運転用の制御装置1100は、生存確認データ記憶領域1312に格納されたデータを参照して待機用の制御装置1200の生存確認を行い、制御装置1200の生存を確認できない場合、警報を発生させる。   In the present embodiment, as will be described later, the standby control device 1200 refers to the data stored in the survival confirmation data storage area 1311 to confirm the survival of the control device 1100 for normal operation, and When the survival cannot be confirmed, among the calculation results stored in the calculation result storage areas 1331 and 1332 of the shared memory 1300, the calculation result RB stored in the calculation result storage area 1332 by the standby control device 1200 is read from the shared memory 1300. Output as output data DOUT. Further, the control device 1100 for normal operation refers to the data stored in the survival confirmation data storage area 1312 to confirm the survival of the standby control device 1200. If the survival of the control device 1200 cannot be confirmed, an alarm is issued. generate.

チェックサム記憶領域1321は、通常運転用の制御装置1100の演算結果RAのチェックサム値CSAを格納するためのものである。このチェックサム値CSAは、待機用の制御装置1200において、演算結果RBのチェックサム値CSBと比較することにより、制御装置1100の演算結果RAと制御装置1200の演算結果RBとが整合(一致)しているか否かの判定(以下、「整合判定」と称す。)を行う際に用いられる。
なお、本実施形態では、共有メモリ1300は、待機用の制御装置1200のチェックサム値CSBを格納するためのチェックサム記憶領域を有しておらず、待機用の制御装置1200のチェックサム値CSBは、この制御装置1200の記憶部(例えば、ダイナミックランダムアクセスメモリ)に保持される。
The checksum storage area 1321 is for storing the checksum value CSA of the calculation result RA of the control device 1100 for normal operation. The checksum value CSA is compared with the checksum value CSB of the calculation result RB in the standby control device 1200, so that the calculation result RA of the control device 1100 matches the calculation result RB of the control device 1200. This is used when determining whether or not the image is being processed (hereinafter referred to as “matching determination”).
In this embodiment, the shared memory 1300 does not have a checksum storage area for storing the checksum value CSB of the standby control device 1200, and the checksum value CSB of the standby control device 1200. Is stored in a storage unit (for example, a dynamic random access memory) of the control device 1200.

ただし、例えば、制御装置1100を待機用とし、制御装置1200を通常運転用として使用する等のように、制御装置の役割を切り替える運用を行う場合には、上述のチェックサム記憶領域1321に加えて、共有メモリ1300に、制御装置1200の演算結果RBのチェックサム値CSBを格納するためのチェックサム記憶領域1322(図示なし)を増設すればよい。ここで、制御装置1100を待機用とし、制御装置1200を通常運転用として使用する場合、上述の増設されたチェックサム記憶領域1322(図示なし)に制御装置1200により格納されたチェックサム値CSBは、制御装置1100において、演算結果RAのチェックサム値CSAと比較することにより、演算結果RAと演算結果RBとが整合しているか否かの判定を行う際に用いられる。この場合、制御装置1100の演算結果RAのチェックサム値CSAを格納するためのチェックサム記憶領域1321は使用されず、チェックサム値CSAは例えば制御装置1100の記憶部(例えば、ダイナミックランダムアクセスメモリ)に保持される。   However, in the case of performing an operation of switching the role of the control device such as using the control device 1100 for standby and the control device 1200 for normal operation, in addition to the checksum storage area 1321 described above, A checksum storage area 1322 (not shown) for storing the checksum value CSB of the calculation result RB of the control device 1200 may be added to the shared memory 1300. Here, when the control device 1100 is used for standby and the control device 1200 is used for normal operation, the checksum value CSB stored by the control device 1200 in the added checksum storage area 1322 (not shown) is The control device 1100 is used when determining whether or not the calculation result RA and the calculation result RB are consistent with each other by comparing with the checksum value CSA of the calculation result RA. In this case, the checksum storage area 1321 for storing the checksum value CSA of the calculation result RA of the control device 1100 is not used, and the checksum value CSA is stored in, for example, the storage unit (eg, dynamic random access memory) of the control device 1100. Retained.

選択部1340は、演算結果記憶領域1331および演算結果記憶領域1332を択一的に選択して、演算結果記憶領域1331に格納された演算結果RAまたは演算結果記憶領域1332に格納された演算結果RBの何れかを共有メモリ1300から出力するものである。ただし、この例に限定されず、演算結果記憶領域1331と演算結果記憶領域1332を異なるアドレス空間に割り付け、アドレスにより演算結果記憶領域1331および演算結果記憶領域1332を択一的に選択するものとしてもよい。   The selection unit 1340 alternatively selects the calculation result storage area 1331 and the calculation result storage area 1332 to calculate the calculation result RA stored in the calculation result storage area 1331 or the calculation result RB stored in the calculation result storage area 1332. Is output from the shared memory 1300. However, the present invention is not limited to this example. The calculation result storage area 1331 and the calculation result storage area 1332 may be allocated to different address spaces, and the calculation result storage area 1331 and the calculation result storage area 1332 may be alternatively selected according to addresses. Good.

[動作の説明]
次に、図2から図5に示すフローに沿って、図1に示す冗長化システム1000の動作を説明する。
ここで、図2は、本実施形態による冗長化システム1000の動作(整合判定)の流れを示すフローチャートである。図3は、本実施形態による冗長化システム1000の動作(整合判定)の流れを補足するためのフローチャートである。図4は、本実施形態による冗長化システム1000の通常運転用の制御装置1100における動作の流れを示すフローチャートである。図5は、本実施形態による冗長化システム1000の待機用の制御装置1200における動作の流れを示すフローチャートである。
[Description of operation]
Next, the operation of the redundancy system 1000 shown in FIG. 1 will be described along the flow shown in FIGS.
Here, FIG. 2 is a flowchart showing the flow of the operation (matching determination) of the redundancy system 1000 according to this embodiment. FIG. 3 is a flowchart for supplementing the flow of operation (matching determination) of the redundancy system 1000 according to this embodiment. FIG. 4 is a flowchart showing an operation flow in the control device 1100 for normal operation of the redundancy system 1000 according to the present embodiment. FIG. 5 is a flowchart showing an operation flow in the standby control device 1200 of the redundancy system 1000 according to the present embodiment.

冗長化システム1000を構成する通常運転用の制御装置1100と待機用の制御装置1200は、通常時は並列運転され、同一の入力データDINに基づいて同一の制御対象の制御に関する同様の演算処理を実行している。なお、同一の入力データDINに対して同一の演算結果を得ることができる限度において、待機用の制御装置1200による演算処理は、通常運転用の制御装置1100による演算処理と同一である必要はなく、等価な処理で足りる。本実施形態では、説明の簡略化のため、待機用の制御装置1200による演算処理は、通常運転用の制御装置1100による演算処理と同一であるものとする。   The control device 1100 for normal operation and the control device 1200 for standby constituting the redundancy system 1000 are operated in parallel during normal operation, and perform the same arithmetic processing related to control of the same control object based on the same input data DIN. Running. In addition, as long as the same calculation result can be obtained for the same input data DIN, the calculation processing by the standby control device 1200 does not have to be the same as the calculation processing by the control device 1100 for normal operation. Equivalent processing is sufficient. In the present embodiment, for simplification of explanation, it is assumed that the arithmetic processing by the control device 1200 for standby is the same as the arithmetic processing by the control device 1100 for normal operation.

本実施形態では、通常運転用の制御装置1100から待機用の制御装置1200への切り替えは、通常運転用の制御装置1100の演算結果RAと待機用の制御装置1200の演算結果RBとが整合(一致)していることを条件として実施される。換言すれば、通常運転用の制御装置1100の演算結果RAと待機用の制御装置1200の演算結果RBとが一致していなければ、仮に通常運転用の制御装置1100が故障しても、通常運転用の制御装置1100から待機用の制御装置1200への切り替えは実施されない。   In this embodiment, switching from the control device 1100 for normal operation to the control device 1200 for standby matches the calculation result RA of the control device 1100 for normal operation with the calculation result RB of the control device 1200 for standby ( It is carried out on condition that it is consistent). In other words, if the calculation result RA of the control device 1100 for normal operation and the calculation result RB of the control device 1200 for standby do not match, even if the control device 1100 for normal operation fails, the normal operation Switching from the control device 1100 for standby to the control device 1200 for standby is not performed.

以下では、通常運転用の制御装置1100の演算結果RAと待機用の制御装置1200の演算結果RBとが整合していることを判定するための処理(以下、「整合判定処理」と称す。)を先に説明し、その後、通常運転用の制御装置1100から待機用の制御装置1200へ切り替えるための処理(以下、「切り替え処理」と称す。)を説明する。   Hereinafter, a process for determining that the calculation result RA of the control device 1100 for normal operation and the calculation result RB of the control device 1200 for standby are matched (hereinafter referred to as “matching determination process”). Will be described first, and then, a process for switching from the control device 1100 for normal operation to the control device 1200 for standby (hereinafter referred to as “switching process”) will be described.

<整合判定処理>
図2に示すフローに沿って、整合判定処理を説明する。
概略的に、整合判定処理では、待機用の制御装置1200は、この制御装置1200の演算結果RBのチェックサム値CSBと通常運転用の制御装置1100の演算結果RAのチェックサム値CSAとを比較することにより、通常運転用の制御装置1100の演算処理の演算結果RBと待機用の制御装置1200の演算結果RBとが整合しているか否かを判定する。
<Consistency judgment processing>
The alignment determination process will be described along the flow shown in FIG.
In summary, in the matching determination process, the standby control device 1200 compares the checksum value CSB of the calculation result RB of the control device 1200 with the checksum value CSA of the calculation result RA of the control device 1100 for normal operation. Thus, it is determined whether or not the calculation result RB of the calculation process of the control device 1100 for normal operation matches the calculation result RB of the control device 1200 for standby.

この整合判定処理の前提として、通常運転用の制御装置1100は、各制御サイクルにおいて、前述の冷却システムで用いられる電磁石の温度に関する情報を含む入力データDINに基づいて、液化装置により生成される液体ヘリウムの循環流量を与えるバルブ開度を演算し、その演算結果RAを共有メモリ1300の演算結果記憶領域1331に格納する。   As a premise of this matching determination processing, the control device 1100 for normal operation is configured to use a liquid generated by the liquefier in each control cycle based on input data DIN including information on the temperature of the electromagnet used in the cooling system. The valve opening that gives the helium circulation flow rate is calculated, and the calculation result RA is stored in the calculation result storage area 1331 of the shared memory 1300.

演算結果RAが得られると、図2(a)のフローに示すように、通常運転用の制御装置1100は、演算結果RAのチェックサム値CSAを計算し、このチェックサム値CSAを自身の記憶部(例えば、ダイナミックランダムアクセスメモリ)に一時的に格納する(ステップS211)。また、通常運転用の制御装置1100は、上記計算により得られたチェックサム値CSAを共有メモリ1300のチェックサム記憶領域1321に格納する(ステップS212)。その後、通常運転用の制御装置1100は運転を継続し(ステップS213)、処理をステップS211に戻して次の制御サイクルに移行する。
このように、通常運転用の制御装置1100は、各制御サイクルにおいて、演算結果RAのチェックサム値CSAを計算して共有メモリ1300のチェックサム記憶領域1321の値を更新する。
When the calculation result RA is obtained, the control device 1100 for normal operation calculates the checksum value CSA of the calculation result RA and stores the checksum value CSA in its own memory, as shown in the flow of FIG. (Eg, dynamic random access memory) for temporary storage (step S211). Further, the control device 1100 for normal operation stores the checksum value CSA obtained by the above calculation in the checksum storage area 1321 of the shared memory 1300 (step S212). Thereafter, the control device 1100 for normal operation continues operation (step S213), returns the processing to step S211 and shifts to the next control cycle.
Thus, the control device 1100 for normal operation calculates the checksum value CSA of the calculation result RA and updates the value of the checksum storage area 1321 of the shared memory 1300 in each control cycle.

一方、待機用の制御装置1200は、通常運転用の制御装置1100と同様に、各制御サイクルにおいて、前述の冷却システムで用いられる電磁石の温度に関する情報を含む入力データDINに基づいて、液体ヘリウムの循環流量を与えるバルブ開度を独自に演算し、その演算結果RBを共有メモリ1300の演算結果記憶領域1332に格納する。ここで、各制御サイクルにおいて、制御装置1100および制御装置1200は、同一の入力データDINに基づいて同一の演算処理を実行するので、通常、待機用の制御装置1200の演算結果RBは通常運転用の制御装置1100の演算結果RAと一致する。   On the other hand, the control device 1200 for standby is similar to the control device 1100 for normal operation, in each control cycle, based on the input data DIN including information on the temperature of the electromagnet used in the cooling system described above. The valve opening that gives the circulation flow rate is independently calculated, and the calculation result RB is stored in the calculation result storage area 1332 of the shared memory 1300. Here, in each control cycle, control device 1100 and control device 1200 execute the same arithmetic processing based on the same input data DIN, so that the calculation result RB of standby control device 1200 is normally used for normal operation. This coincides with the calculation result RA of the control device 1100.

演算結果RBが得られると、待機用の制御装置1200は、図2(b)のフローに示すように、通常運転用の制御装置1100により計算されたチェックサム値CSAを用いて、通常運転用の制御装置1100による演算結果RAと待機用の制御装置1200による演算結果RBとが整合しているか否かを判定し、整合しない場合に警報を発生させる。具体的には、待機用の制御装置1200は、その演算結果RBのチェックサム値CSBを計算し(ステップS221)、このチェックサム値CSBを自身の記憶部に一時格納する。続いて、待機用の制御装置1200は、共有メモリ1300のチェックサム記憶領域1321から、通常運転用の制御装置1100の演算結果RAのチェックサム値CSAを取得して待機用の制御装置1200の記憶部に格納する(ステップS222)。   When the calculation result RB is obtained, the standby control device 1200 uses the checksum value CSA calculated by the control device 1100 for normal operation, as shown in the flow of FIG. It is determined whether or not the calculation result RA by the control device 1100 matches the calculation result RB by the standby control device 1200, and an alarm is generated if they do not match. Specifically, standby control device 1200 calculates checksum value CSB of calculation result RB (step S221), and temporarily stores this checksum value CSB in its storage unit. Subsequently, the standby control device 1200 acquires the checksum value CSA of the operation result RA of the normal operation control device 1100 from the checksum storage area 1321 of the shared memory 1300, and stores it in the standby control device 1200. (Step S222).

続いて、待機用の制御装置1200は、演算結果RBから計算したチェックサム値CSB(計算値)と、共有メモリ1300から取得したチェックサム値CSA(取得値)とを比較する(ステップS223)。そして、チェックサム値CSAとチェックサム値CSBとが整合(一致)するか否か、即ち、通常運転用の制御装置1100の演算結果RAと待機用の制御装置1200の演算結果RBとが整合するか否かを判定する(ステップS224)。ここで、チェックサム値CSAとチェックサム値CSBとが整合する場合(ステップS224;YES)、即ち、通常運転用の制御装置1100の演算結果RAと待機用の制御装置1200の演算結果RBとが整合する場合、待機用の制御装置1200は、そのまま運転を継続し(ステップS225)、処理をステップS221に戻して次の制御サイクルに移行する。   Subsequently, the standby control device 1200 compares the checksum value CSB (calculated value) calculated from the calculation result RB with the checksum value CSA (acquired value) acquired from the shared memory 1300 (step S223). Then, whether or not the checksum value CSA and the checksum value CSB match (match), that is, the calculation result RA of the control device 1100 for normal operation matches the calculation result RB of the control device 1200 for standby. Whether or not (step S224). Here, when the checksum value CSA and the checksum value CSB match (step S224; YES), that is, the calculation result RA of the control device 1100 for normal operation and the calculation result RB of the control device 1200 for standby are calculated. If they match, the standby control device 1200 continues to operate (step S225), returns the process to step S221, and shifts to the next control cycle.

これに対し、チェックサム値CSAとチェックサム値CSBとが整合しない場合(ステップS224;NO)、待機用の制御装置1200は警報を発生させ(ステップS226)、演算結果が整合しない旨をオペレータに通知する。その後、待機用の制御装置1200は、そのまま運転を継続し(ステップS225)、処理をステップS221に戻して次の制御サイクルに移行する。
このように、待機用の制御装置1200は、通常運転用の制御装置1100の演算結果RAと待機用の制御装置1200の演算結果RBとに不整合が発生した場合に警報を発生させるが、運転を停止することなく、そのまま運転を継続する。
On the other hand, if the checksum value CSA and the checksum value CSB do not match (step S224; NO), the standby control device 1200 generates an alarm (step S226) and informs the operator that the calculation results do not match. Notice. Thereafter, the standby control device 1200 continues to operate (step S225), returns the process to step S221, and shifts to the next control cycle.
As described above, the standby control device 1200 generates an alarm when a mismatch occurs between the calculation result RA of the normal operation control device 1100 and the calculation result RB of the standby control device 1200. Continue operation without stopping.

次に、図3を参照して、通常運転用の制御装置1100の演算結果RAと待機用の制御装置1200の演算結果RBとが整合しない場合のオペレータの処置の一例を説明する。
なお、図3に示すステップS301と、ステップS302と、ステップS303と、ステップS304は、それぞれ、図2(b)に示すステップS221〜S223と、ステップS224と、ステップS225と、ステップS226に対応している。また、図3のステップS305は、図2のステップ225に含まれ、それ以外の図3のステップS306〜S309は、オペレータによる処置に相当する。
Next, with reference to FIG. 3, an example of the operator's treatment when the calculation result RA of the control device 1100 for normal operation and the calculation result RB of the control device 1200 for standby do not match will be described.
Note that step S301, step S302, step S303, and step S304 shown in FIG. 3 correspond to steps S221 to S223, step S224, step S225, and step S226 shown in FIG. 2B, respectively. ing. Further, step S305 in FIG. 3 is included in step 225 in FIG. 2, and other steps S306 to S309 in FIG. 3 correspond to treatment by the operator.

図2のステップS221〜S224に対応する図3のステップS301,S302では、オペレータの処置とは関係なく、上述したように、チェックサム値を用いた演算結果の整合に関する判定処理が自動的に実施される。そして、図3のステップS302において、演算結果が整合しないと判定された場合(ステップS302;NO)、上述したように、図2のステップS226に対応する図3のステップS304において、待機用の制御装置1200は警報を発生させてオペレータに通知する。この警報から、オペレータは、演算結果に不整合が発生したことを認識する。   In steps S301 and S302 in FIG. 3 corresponding to steps S221 to S224 in FIG. 2, regardless of the operator's treatment, as described above, the determination processing regarding the matching of the calculation results using the checksum value is automatically performed. Is done. If it is determined in step S302 in FIG. 3 that the calculation results do not match (step S302; NO), as described above, the standby control is performed in step S304 in FIG. 3 corresponding to step S226 in FIG. The device 1200 generates an alarm and notifies the operator. From this alarm, the operator recognizes that a mismatch has occurred in the calculation result.

この場合、オペレータは、手動により演算結果を整合させるための処置(以下、「手動整合」と称す。)を実施するか、または演算結果が整合しない原因を調査するかの何れのの対応をとるかを判断する(ステップS306)。ここで、手動整合を実施すると判断した場合(ステップS306;YES)、オペレータは、通常運転用の制御装置1100の演算結果RAを待機用の制御装置1200に複写することにより、待機用の制御装置1200の演算結果RBを通常運転用の制御装置1100の演算結果RAに置き換える。具体的には、共有メモリ1300の演算結果記憶領域1332に格納された演算結果RBを演算結果RAに書き替えると共に、待機用の制御装置1200の記憶部に記憶された演算結果RBを演算結果RAに書き替える。これにより、見かけ上、演算結果の不整合は解消される。その後、待機用の制御装置1200は、処理をステップS301に戻して運転を継続する。   In this case, the operator either takes a measure for manually matching the calculation results (hereinafter referred to as “manual alignment”) or investigates the cause of the mismatch of the calculation results. Is determined (step S306). When it is determined that manual alignment is to be performed (step S306; YES), the operator copies the calculation result RA of the control device 1100 for normal operation to the control device 1200 for standby, thereby allowing the standby control device. The calculation result RB of 1200 is replaced with the calculation result RA of the control device 1100 for normal operation. Specifically, the calculation result RB stored in the calculation result storage area 1332 of the shared memory 1300 is rewritten to the calculation result RA, and the calculation result RB stored in the storage unit of the standby control device 1200 is changed to the calculation result RA. Rewrite as This apparently eliminates the inconsistency between the calculation results. Thereafter, the standby control device 1200 returns the process to step S301 and continues the operation.

ここで、演算結果が整合しない場合として、通常運転用の制御装置1100の演算処理RAに原因がある場合と、待機用の制御装置1200の演算処理RBに原因がある場合の二通りがある。本実施形態では、演算結果が整合しない原因が何れの演算結果にあったとしても、通常運転用の制御装置1100の演算結果RAを有効なものとして取り扱い、待機用の制御装置1200の演算結果RBを通常運転用の制御装置1100の演算結果RAで置き換える。その理由は、通常運転用の制御装置1100の運転を継続することにより、制御の連続性を保つためである。   Here, there are two cases where the calculation results do not match, that is, when there is a cause in the arithmetic processing RA of the control device 1100 for normal operation and when there is a cause in the arithmetic processing RB of the control device 1200 for standby. In this embodiment, regardless of the calculation result that causes the calculation results to be inconsistent, the calculation result RA of the control device 1100 for normal operation is treated as valid, and the calculation result RB of the control device 1200 for standby is used. Is replaced with the calculation result RA of the control device 1100 for normal operation. The reason is to maintain control continuity by continuing the operation of the control device 1100 for normal operation.

ここで、仮に通常運転用の制御装置1100の演算結果RAを演算結果RBで置き換えたとすれば、演算結果が整合しない原因が待機用の制御装置1200の演算処理にあった場合、共有メモリ1300から出力データDOUTとして出力される制御データの値が急激に変化し、制御の連続性が著しく阻害されるおそれがある。このため、本実施形態では、不整合の原因の所在を問わず、通常運転用の制御装置1100の演算結果RAを優先的に出力する。また、演算結果の不整合の原因が一時的なものであれば、必ずしもその原因を調査して対策を講じる必要もなく、通常運転用の制御装置1100の運転を継続しても問題はない。   Here, if the calculation result RA of the control device 1100 for normal operation is replaced with the calculation result RB, if the cause of the inconsistency of the calculation results is the calculation processing of the control device 1200 for standby, from the shared memory 1300 The value of the control data output as the output data DOUT may change abruptly, and control continuity may be significantly impaired. For this reason, in the present embodiment, the calculation result RA of the control device 1100 for normal operation is preferentially output regardless of the cause of the mismatch. Further, if the cause of the inconsistency in the calculation results is temporary, it is not always necessary to investigate the cause and take countermeasures, and there is no problem even if the operation of the control device 1100 for normal operation is continued.

これに対し、オペレータが手動整合を実施しないと判断した場合、(ステップS306;NO)、即ち演算結果が整合しない原因を調査すると判断した場合、オペレータは、例えば、その原因を調査し(ステップS308)、その調査の結果に基づいて必要な対策を講じる(ステップS309)。例えば、オペレータは、演算結果が整合しない原因が通常運転用の制御装置1100の演算処理にあるのか、待機用の制御装置1200の演算処理にあるのかを分析し、その分析結果から、演算結果の不整合を生じさせた制御装置を修理する等の対策を講じる。   On the other hand, when it is determined that the operator does not perform manual alignment (step S306; NO), that is, when it is determined to investigate the cause of the inconsistent calculation result, for example, the operator investigates the cause (step S308). ), And necessary measures are taken based on the result of the investigation (step S309). For example, the operator analyzes whether the reason why the calculation results do not match is the calculation processing of the control device 1100 for normal operation or the calculation processing of the control device 1200 for standby, and from the analysis result, Take measures such as repairing the controller that caused the inconsistency.

手動整合を実施しないと判断する場合の例としては、上述のステップS307において演算結果RBを演算結果RAで置き換えて演算結果を強制的に整合させたにもかかわらず、その後も演算結果の不整合が発生する場合が挙げられる。この場合、通常運転用の制御装置1100または待機用の制御装置1200の何れかに恒久的な故障が存在する可能性が高いので、演算結果が整合しない原因を調査して適切な対策を講じることが望ましい。   As an example of the case where it is determined that manual alignment is not performed, the calculation result RB is replaced with the calculation result RA in the above-described step S307, and the calculation result is forcibly matched. May occur. In this case, since there is a high possibility that there is a permanent failure in either the control device 1100 for normal operation or the control device 1200 for standby, investigate the cause of the inconsistent calculation results and take appropriate measures. Is desirable.

<切り替え処理>
次に、図4および図5に示すフローに沿って、切り替え処理について説明する。
切り替え処理は、上述した整合判定処理において演算結果RAと演算結果RBとが整合していると判定されたことを前提として実施される。この前提が満足されている状況において、通常運転用の制御装置1100の生存を確認できなくなった場合、通常運転用の制御装置1100から待機用の制御装置1200への切り替え処理が実施される。
<Switching process>
Next, the switching process will be described along the flow shown in FIGS.
The switching process is performed on the assumption that the calculation result RA and the calculation result RB are determined to match in the above-described matching determination process. In the situation where this premise is satisfied, when it is no longer possible to confirm the survival of the control device 1100 for normal operation, a switching process from the control device 1100 for normal operation to the control device 1200 for standby is performed.

切り替え処理は、通常運転用の制御装置1100による処理と、待機用の制御装置1200による処理を含むが、先に、図4のフローに沿って通常運転用の制御装置1100による処理を説明し、その後に、図5のフローに沿って待機用の制御装置1200による処理を説明する。   The switching processing includes processing by the control device 1100 for normal operation and processing by the control device 1200 for standby. First, the processing by the control device 1100 for normal operation will be described along the flow of FIG. Then, the process by the standby control device 1200 will be described along the flow of FIG.

・通常運転用の制御装置1100による処理
通常運転用の制御装置1100は、各制御サイクルにおいて、待機用の制御装置1200が制御装置1100の生存を確認するためのデータとして、「1」から「100」までの数値範囲で巡回する生存確認用の数値データを生成し、共有メモリ1300の生存確認データ記憶領域1311に格納する(ステップS401)。最初の制御サイクルでは、通常運転用の制御装置1100は、生存確認用の数値データとして「1」を生成して共有メモリ1300の生存確認データ記憶領域1311に格納する。この生存確認用の数値データは、後述する図5に示す待機用の制御装置1200による処理(ステップS502)において参照される。
Processing by the control device 1100 for normal operation The control device 1100 for normal operation uses “1” to “100” as data for the standby control device 1200 to confirm the survival of the control device 1100 in each control cycle. ”Is generated and stored in the survival confirmation data storage area 1311 of the shared memory 1300 (step S401). In the first control cycle, the control device 1100 for normal operation generates “1” as numerical data for survival confirmation and stores it in the survival confirmation data storage area 1311 of the shared memory 1300. The numerical data for survival confirmation is referred to in a process (step S502) by the standby control device 1200 shown in FIG.

ここで、通常運転用の制御装置1100は、生存確認用の数値データを、各制御サイクルにおいて「1」だけカウントアップ(インクリメント)する。即ち、制御サイクルの進行に従って生存確認用の数値データは「1」ずつ増加する。そして、生存確認用の数値データが「100」に到達すると、その次の制御サイクルでは「1」に戻される。本実施形態では、「100」から「1」への数値データの変化も数値データのカウントアップとして取り扱う。ただし、生存確認用の数値データの増分は、この例に限定されず、任意に設定することができる。   Here, the control device 1100 for normal operation counts up (increments) the numerical data for survival confirmation by “1” in each control cycle. That is, the numerical data for survival confirmation increases by “1” as the control cycle progresses. When the numerical data for survival confirmation reaches “100”, it is returned to “1” in the next control cycle. In the present embodiment, a change in numerical data from “100” to “1” is also handled as a count-up of numerical data. However, the increment of numerical data for survival confirmation is not limited to this example, and can be arbitrarily set.

後述するように、待機用の制御装置1200も、通常運転用の制御装置1100と同様に、各制御サイクルにおいて、同一の数値範囲で巡回する生存確認用の数値データを生成して、共有メモリ1300の生存確認データ記憶領域1312に格納する。   As will be described later, similarly to the control device 1100 for normal operation, the standby control device 1200 generates numerical data for survival confirmation that circulates in the same numerical value range in each control cycle, and the shared memory 1300 Is stored in the survival confirmation data storage area 1312.

続いて、通常運転用の制御装置1100は、最初の制御サイクルにおいて、待機用の制御装置1200により共有メモリ1300の生存確認データ記憶領域1312に格納された生存確認用の数値データ「1」を取得して保持する(ステップS402)。
続いて、通常運転用の制御装置1100は、前回の制御サイクルにおいて共有メモリ1300の生存確認データ記憶領域1312から取得して保持した待機用の制御装置1200の生存確認用の数値データ(保持値)と、今回の制御サイクルにおいて共有メモリ1300の生存確認データ記憶領域1312から取得した待機用の制御装置1200の生存確認用の数値データ(取得値)とを比較する(ステップS403)。ただし、最初の制御サイクルでは、前回の制御サイクルで取得した数値データ(保持値)は存在しないので、この数値データ(保持値)として初期値「0」が設定される。
Subsequently, the control device 1100 for normal operation acquires the numerical data “1” for survival confirmation stored in the survival confirmation data storage area 1312 of the shared memory 1300 by the standby control device 1200 in the first control cycle. (Step S402).
Subsequently, the normal operation control device 1100 acquires the numerical data (holding value) for the survival check of the standby control device 1200 obtained and held from the survival check data storage area 1312 of the shared memory 1300 in the previous control cycle. And the numerical data (acquired value) for survival confirmation of the standby control device 1200 acquired from the survival confirmation data storage area 1312 of the shared memory 1300 in this control cycle (step S403). However, in the first control cycle, there is no numerical data (holding value) acquired in the previous control cycle, so the initial value “0” is set as this numerical data (holding value).

続いて、通常運転用の制御装置1100は、共有メモリ1300の生存確認データ記憶領域1312に格納された数値データを参照し、今回の制御サイクルで取得した生存確認用の数値データ(取得値)と前回の制御サイクルで取得して保持した数値データ(保持値)との間に所定の変化があるかどうかを判定する。具体的には、通常運転用の制御装置1100は、今回の制御サイクルで取得した生存確認用の数値データの値(取得値)が前回の制御サイクルで取得して保持した数値データの値(保持値)に対して「1」だけカウントアップされているか否かを判定する(ステップS404)。   Subsequently, the control device 1100 for normal operation refers to the numerical data stored in the survival confirmation data storage area 1312 of the shared memory 1300, and the numerical data (acquired value) for survival confirmation acquired in the current control cycle and It is determined whether or not there is a predetermined change between the numerical data (held value) acquired and held in the previous control cycle. Specifically, the control device 1100 for normal operation uses the numerical data value (retained) obtained and retained in the previous control cycle as the value (acquired value) for survival confirmation obtained in the current control cycle. It is determined whether or not “1” is counted up with respect to (value) (step S404).

前述したように、生存確認用の数値データは、各制御サイクルにおいて「1」ずつカウントアップされるので、もし待機用の制御装置1200が生存しているのであれば(即ち正常な運転状態にあるのであれば)、共有メモリ1300の生存確認データ記憶領域1312に格納された生存確認用の数値データの値は「1」だけカウントアップされているはずである。もし待機用の制御装置1200が何らかの故障を抱え、正常な運転状態になければ、生存確認データ記憶領域1312に格納された数値データの値はカウントアップされず、前回と同じ値に維持される。   As described above, the numerical data for survival confirmation is counted up by “1” in each control cycle, so if the standby control device 1200 is alive (that is, in a normal operating state). In this case, the value of the numerical data for survival confirmation stored in the survival confirmation data storage area 1312 of the shared memory 1300 should be counted up by “1”. If the standby control device 1200 has some trouble and is not in a normal operating state, the value of the numerical data stored in the survival confirmation data storage area 1312 is not counted up and is maintained at the same value as the previous time.

生存確認データ記憶領域1312に格納された生存確認用の数値データの値が「1」だけカウントアップされていれば(ステップS404;YES)、制御装置1100は運転を継続し(ステップS405)、処理をステップS401に戻して次の制御サイクルに移行する。前述のように、最初の制御サイクルでは、前回の制御サイクルで取得して保持した数値データとして初期値「0」が設定されるので、生存確認データ記憶領域1312から取得された生存確認用の数値データの値が「1」であれば、生存確認用の数値データは「1」だけカウントアップされていることになる。   If the value of the numerical data for survival confirmation stored in the survival confirmation data storage area 1312 has been incremented by “1” (step S404; YES), the control device 1100 continues to operate (step S405), and processing Is returned to step S401 to shift to the next control cycle. As described above, in the first control cycle, since the initial value “0” is set as the numerical data acquired and held in the previous control cycle, the survival confirmation numerical value acquired from the survival confirmation data storage area 1312 is set. If the data value is “1”, the numerical data for survival confirmation is counted up by “1”.

生存確認データ記憶領域1312に格納された数値データが「1」だけカウントアップされていない場合(ステップS404;NO)、通常運転用の制御装置1100は、所定時間のn秒(nは整数)が経過したか否かを判定する(ステップS406)。即ち、通常運転用の制御装置1100は、n秒の間、共有メモリ1300の生存確認用データ記憶領域1312に格納される生存確認用の数値データの値に変化がないかどうかを判定する。   When the numerical data stored in the survival confirmation data storage area 1312 is not counted up by “1” (step S404; NO), the control device 1100 for normal operation has a predetermined time of n seconds (n is an integer). It is determined whether or not it has elapsed (step S406). That is, the control device 1100 for normal operation determines whether there is no change in the value of the numerical data for survival confirmation stored in the survival confirmation data storage area 1312 of the shared memory 1300 for n seconds.

上記のn秒なる時間は、例えば、待機用の制御装置1200に恒久的な故障が発生したか否かの判定の基準となる時間であり、例えば3制御サイクル以上に相当する時間が経過しても生存確認用の数値データがカウントアップされなければ、待機用の制御装置1200に恒久的な故障が発生し、待機用の制御装置1200は生存していない状態にあることが推定される。   The time of n seconds is, for example, a time used as a reference for determining whether or not a permanent failure has occurred in the standby control device 1200. For example, a time corresponding to three or more control cycles has elapsed. If the numerical data for survival confirmation is not counted up, it is estimated that a permanent failure occurs in the standby control device 1200 and the standby control device 1200 is not alive.

n秒が経過しない場合(ステップS406;NO)、即ち、n秒が経過する前に、共有メモリ1300の生存確認用データ記憶領域1312に格納された生存確認用の数値データの値がカウントアップされた場合、通常運転用の制御装置1100は、待機用の制御装置1200に異常はないと判断する。そして、通常運転用の制御装置1100は、自身の運転を継続し(ステップS411)、処理をステップS401に戻して次の制御サイクルに移行する。   When n seconds have not elapsed (step S406; NO), that is, before the elapse of n seconds, the value of the numerical data for survival confirmation stored in the survival confirmation data storage area 1312 of the shared memory 1300 is counted up. In this case, the control device 1100 for normal operation determines that there is no abnormality in the control device 1200 for standby. Then, the control device 1100 for normal operation continues its own operation (step S411), returns the process to step S401, and shifts to the next control cycle.

これに対し、n秒が経過した場合(ステップS406;YES)、即ち、n秒が経過しても、共有メモリ1300の生存確認用データ記憶領域1312に格納された生存確認用の数値データの値に変化がない場合、通常運転用の制御装置1100は、待機用の制御装置1200に異常があり、その生存を確認できないと判定する(ステップS407)。この場合、通常運転用の制御装置1100は、待機用の制御装置1200に関する共有メモリ1300内の後述の異常発生状態管理領域(図示なし)に格納されたデータを更新し(ステップS408)、待機用の制御装置1200の運転を停止させる(ステップS409)。その後、通常運転用の制御装置1100は、運転を継続し(ステップS410)、処理をステップS401に戻して次の制御サイクルに移行する。   On the other hand, when n seconds have elapsed (step S406; YES), that is, even when n seconds have elapsed, the value of the numerical data for survival confirmation stored in the survival confirmation data storage area 1312 of the shared memory 1300. If there is no change, the control device 1100 for normal operation determines that there is an abnormality in the control device 1200 for standby and that its survival cannot be confirmed (step S407). In this case, the control device 1100 for normal operation updates data stored in an abnormality occurrence state management area (not shown), which will be described later, in the shared memory 1300 related to the control device 1200 for standby (step S408). The operation of the control device 1200 is stopped (step S409). Thereafter, the control device 1100 for normal operation continues operation (step S410), returns the processing to step S401, and shifts to the next control cycle.

ここで、待機用の制御装置1200に関する共有メモリ1300内の異常発生状態管理領域(図示なし)には、通常運転用の制御装置1100により待機用の制御装置1200の生存が確認されない場合の異常発生を示すデータが格納される。また、共有メモリ1300には、通常運転用の制御装置1100に関する異常発生状態管理領域(図示なし)も設定されている。本実施形態では、通常運転用の制御装置1100と待機用の制御装置1200が共に相手側の制御装置の生存を確認できないと判定した場合、先に異常発生状態管理領域のデータを更新した制御装置のみが運転を継続し、残りの他方の制御装置の運転が停止される。これにより、通常運転用の制御装置1100と待機用の制御装置1200が共に相手側の制御装置の生存を確認できないと判定した場合、相互に相手側の運転を停止させて共倒れになる状況を回避することができる。   Here, in the abnormality occurrence state management area (not shown) in the shared memory 1300 related to the standby control device 1200, an abnormality occurs when the control device 1100 for normal operation does not confirm the survival of the standby control device 1200. Is stored. The shared memory 1300 is also set with an abnormality occurrence state management area (not shown) related to the control device 1100 for normal operation. In this embodiment, when it is determined that the control device 1100 for normal operation and the control device 1200 for standby both cannot confirm the existence of the counterpart control device, the control device that updated the data in the abnormality occurrence state management area first. Only the operation continues, and the operation of the other control device is stopped. As a result, when it is determined that the control device 1100 for normal operation and the control device 1200 for standby cannot both confirm the existence of the control device on the other side, the other side's operation is mutually stopped to avoid the situation of collapsing can do.

例えば、通常運転用の制御装置1100と待機用の制御装置1200が共に相手側の制御装置の生存を確認できないと判定し(即ち、同時に異常を検出し)、且つ、通常運転用の制御装置1100が、先に、待機用の制御装置1200に関する共有メモリ1300内の異常発生状態管理領域のデータを更新した場合、待機用の制御装置1200は、通常運転用の制御装置1100を異常と判定した後、待機用の制御装置1200に関する共有メモリ1300内の異常発生状態管理領域のデータを参照することにより、自身が異常であることを認識する。この場合、通常運転用の制御装置1100の運転の停止が中止され(即ち、通常運転用の制御装置1100の運転が継続され)、待機用の制御装置1200の運転が停止される。これにより共倒れが回避され、この場合、通常運転用の制御装置1100により制御が継続される。   For example, it is determined that both the control device 1100 for normal operation and the control device 1200 for standby cannot confirm the existence of the counterpart control device (that is, detects an abnormality at the same time), and the control device 1100 for normal operation. However, when the data in the abnormality occurrence state management area in the shared memory 1300 related to the standby control device 1200 is first updated, the standby control device 1200 determines that the normal operation control device 1100 is abnormal. Then, by referring to the data in the abnormality occurrence state management area in the shared memory 1300 related to the standby control device 1200, it recognizes that it is abnormal. In this case, the stop of the operation of the control device 1100 for normal operation is stopped (that is, the operation of the control device 1100 for normal operation is continued), and the operation of the control device 1200 for standby is stopped. Thereby, collapsing is avoided, and in this case, control is continued by the control device 1100 for normal operation.

このように、本実施形態では、生存確認データ記憶領域1312に格納された生存確認用の数値データに変化がなく(即ち、その数値データが「1」だけカウントアップされておらず)、n秒が経過しても生存確認用の数値データに変化がない場合、通常運転用の制御装置1100は、待機用の制御装置1200の生存を確認できないと判定する。
なお、n秒が経過しても生存確認用の数値データが変化しないことの判定(ステップS406)は、必要に応じて省略してもよい。この場合、上述のステップS403において生存確認用の数値データがカウントアップされていないと判定された場合、通常運転用の制御装置1100は、待機用の制御装置1200の生存を確認できないと判定する。
Thus, in the present embodiment, there is no change in the survival confirmation numerical data stored in the survival confirmation data storage area 1312 (that is, the numerical data is not counted up by “1”), and n seconds If there is no change in the numerical data for confirmation of survival even after elapses, the control device 1100 for normal operation determines that the survival of the control device 1200 for standby cannot be confirmed.
Note that the determination that the numerical data for survival confirmation does not change even after n seconds have elapsed (step S406) may be omitted as necessary. In this case, if it is determined in step S403 that the numerical data for survival confirmation has not been counted up, the control device 1100 for normal operation determines that the survival of the standby control device 1200 cannot be confirmed.

上述のように、通常運転用の制御装置1100は、自身の生存確認用の数値データを共有メモリ1300の生存確認データ記憶領域1311に格納すると共に、待機用の制御装置1200によって生存確認データ記憶領域1312に格納された数値データに基づいて待機用の制御装置1200の生存を確認する。そして、通常運転用の制御装置1100は、待機用の制御装置1200の生存を確認できない場合、この待機用の制御装置1200の運転を停止させ、自身の運転を継続する。この場合、通常運転用の制御装置1100は、警報を発生させて、待機用の制御装置1200の生存が確認できない旨をオペレータに通知してもよい。   As described above, the control device 1100 for normal operation stores the numerical data for its own survival confirmation in the survival confirmation data storage area 1311 of the shared memory 1300, and the survival confirmation data storage area by the standby control apparatus 1200. The survival of the standby control device 1200 is confirmed based on the numerical data stored in 1312. When the control device 1100 for normal operation cannot confirm the survival of the control device 1200 for standby, the control device 1200 for standby operation stops the operation of the control device 1200 for standby and continues its operation. In this case, the control device 1100 for normal operation may generate an alarm and notify the operator that the survival of the control device 1200 for standby cannot be confirmed.

・待機用の制御装置1200による処理
上述の通常運転用の制御装置1100による処理では、待機用の制御装置1200の生存が確認できない場合、その運転を停止させたが、待機用の制御装置1200による処理では、待機用の制御装置1200が通常運転用の制御装置1100の生存を確認できない場合、待機用の制御装置1200を運転状態にし(後述のステップS509)、通常運転用の制御装置1100の運転を停止させる(後述のステップS511)。これにより、通常運転用の制御装置1100から待機用の制御装置1200に切り替える。その他は、上述の通常運転用の制御装置1100による処理と同様である。
Processing by the standby control device 1200 In the above-described processing by the normal operation control device 1100, if the survival of the standby control device 1200 cannot be confirmed, the operation is stopped, but the standby control device 1200 In the process, when the standby control device 1200 cannot confirm the survival of the normal operation control device 1100, the standby control device 1200 is set in an operation state (step S509 described later), and the normal operation control device 1100 is operated. Is stopped (step S511 described later). Thereby, the control device 1100 for normal operation is switched to the control device 1200 for standby. The rest is the same as the processing by the control device 1100 for normal operation described above.

具体的に説明する。待機用の制御装置1200は、上述の通常運転用の制御装置1100と同様に、各制御サイクルにおいて、通常運転用の制御装置1100が生存しているか否かを判定する生存確認処理を実施する。即ち、待機用の制御装置1200は、各制御サイクルにおいて、通常運転用の制御装置1100が制御装置1200の生存を確認するためのデータとして、「1」から「100」までの数値範囲で巡回する生存確認用の数値データを生成して、共有メモリ1300の生存確認データ記憶領域1312に格納する(ステップS501)。最初の制御サイクルでは、待機用の制御装置1200は、生存確認用の数値データとして「1」を生成して共有メモリ1300の生存確認データ記憶領域1312に格納する。この生存確認用の数値データは、上述した図4に示す通常運転用の制御装置1100による処理(ステップS402)において参照される。   This will be specifically described. The control device 1200 for standby performs a survival confirmation process for determining whether or not the control device 1100 for normal operation is alive in each control cycle, like the control device 1100 for normal operation described above. That is, the standby control device 1200 circulates in a numerical range from “1” to “100” as data for the normal operation control device 1100 to confirm the survival of the control device 1200 in each control cycle. Numerical data for existence confirmation is generated and stored in the existence confirmation data storage area 1312 of the shared memory 1300 (step S501). In the first control cycle, the standby control device 1200 generates “1” as numerical data for survival confirmation and stores it in the survival confirmation data storage area 1312 of the shared memory 1300. The numerical data for survival confirmation is referred to in the process (step S402) by the control device 1100 for normal operation shown in FIG.

続いて、待機用の制御装置1200は、最初の制御サイクルにおいて、通常運転用の制御装置1100により共有メモリ1300の生存確認データ記憶領域1311に格納された生存確認用の数値データ「1」を取得して保持する(ステップS502)。
続いて、待機用の制御装置1200は、前回の制御サイクルにおいて共有メモリ1300の生存確認データ記憶領域1311から取得して保持した通常運転用の制御装置1100の生存確認用の数値データ(保持値)と、今回の制御サイクルにおいて共有メモリ1300の生存確認データ記憶領域1311から取得した通常運転用の制御装置1100の生存確認用の数値データ(取得値)とを比較する(ステップS503)。ただし、最初の制御サイクルでは、前回の制御サイクルは存在しないので、前回の制御サイクルで取得して保持した数値データ(保持値)として初期値「0」が設定される。
Subsequently, the standby control device 1200 acquires the numerical data “1” for survival confirmation stored in the survival confirmation data storage area 1311 of the shared memory 1300 by the control device 1100 for normal operation in the first control cycle. (Step S502).
Subsequently, the standby control device 1200 acquires the numerical data (holding value) for the survival check of the control device 1100 for the normal operation acquired and held from the survival check data storage area 1311 of the shared memory 1300 in the previous control cycle. And the numerical data (acquired value) for survival confirmation of the control device 1100 for normal operation acquired from the survival confirmation data storage area 1311 of the shared memory 1300 in the current control cycle (step S503). However, since the previous control cycle does not exist in the first control cycle, the initial value “0” is set as the numerical data (held value) acquired and held in the previous control cycle.

続いて、待機用の制御装置1200は、共有メモリ1300の生存確認データ記憶領域1311に格納された数値データを参照し、今回の制御サイクルで取得した生存確認用の数値データ(取得値)と前回の制御サイクルで取得して保持した数値データ(保持値)との間に所定の変化があるかどうかを判定する。具体的には、待機用の制御装置1200は、今回の制御サイクルで取得した生存確認用の数値データの値(取得値)が前回の制御サイクルで取得して保持した数値データの値(保持値)に対して「1」だけカウントアップされているか否かを判定する(ステップS504)。   Subsequently, the standby control device 1200 refers to the numerical data stored in the survival confirmation data storage area 1311 of the shared memory 1300, and the survival confirmation numerical data (acquired value) acquired in the current control cycle and the previous time. It is determined whether there is a predetermined change between the numerical data (held value) acquired and held in the control cycle. Specifically, the standby control device 1200 obtains the value (acquired value) of the numerical data for survival confirmation acquired in the current control cycle as the value (retained value) of the numerical data acquired and held in the previous control cycle. ) Is counted up by “1” (step S504).

生存確認データ記憶領域1311に格納された生存確認用の数値データの値が「1」だけカウントアップされていれば(ステップS504;YES)、制御装置1200は運転を継続し(ステップS505)、処理をステップS501に戻して次の制御サイクルに移行する。前述のように、最初の制御サイクルでは、前回の制御サイクルで取得して保持した数値データとして初期値「0」が設定されるので、生存確認データ記憶領域1311から取得された生存確認用の数値データの値が「1」であれば、生存確認用の数値データは「1」だけカウントアップされていることになる。   If the value of the numerical data for survival confirmation stored in the survival confirmation data storage area 1311 has been incremented by “1” (step S504; YES), the control device 1200 continues to operate (step S505), and processing Is returned to step S501 to shift to the next control cycle. As described above, in the first control cycle, the initial value “0” is set as the numerical data acquired and held in the previous control cycle. Therefore, the survival confirmation numerical value acquired from the survival confirmation data storage area 1311 is set. If the data value is “1”, the numerical data for survival confirmation is counted up by “1”.

生存確認データ記憶領域1311に格納された数値データが「1」だけカウントアップされていない場合(ステップS504;NO)、待機用の制御装置1200は、n秒が経過したか否かを判定する(ステップS506)。即ち、待機用の制御装置1200は、n秒の間、共有メモリ1300の生存確認用データ記憶領域1311に格納される生存確認用の数値データの値に変化がないかどうかを判定する。n秒の意味は、前述の通常運転用の制御装置1100による処理と同様である。   When the numerical data stored in the survival confirmation data storage area 1311 is not counted up by “1” (step S504; NO), the standby control device 1200 determines whether n seconds have passed (step S504: NO). Step S506). That is, the standby control device 1200 determines whether there is no change in the value of the survival confirmation numerical data stored in the survival confirmation data storage area 1311 of the shared memory 1300 for n seconds. The meaning of n seconds is the same as the processing by the control device 1100 for normal operation described above.

n秒が経過しない場合(ステップS506;NO)、即ち、n秒が経過する前に、共有メモリ1300の生存確認用データ記憶領域1311に格納された生存確認用の数値データの値がカウントアップされた場合、待機用の制御装置1200は、通常運転用の制御装置1100に異常はないと判断する。そして、待機用の制御装置1200は、自身の運転を継続し(ステップS513)、処理をステップS501に戻して次の制御サイクルに移行する。   If n seconds have not elapsed (step S506; NO), that is, before the elapse of n seconds, the value of the numerical data for survival confirmation stored in the survival confirmation data storage area 1311 of the shared memory 1300 is counted up. In this case, the standby control device 1200 determines that there is no abnormality in the normal operation control device 1100. Then, standby control device 1200 continues its operation (step S513), returns the process to step S501, and shifts to the next control cycle.

これに対し、n秒が経過した場合(ステップS506;YES)、即ち、n秒が経過しても、共有メモリ1300の生存確認用データ記憶領域1311に格納された生存確認用の数値データの値に変化がない場合、待機用の制御装置1200は、通常運転用の制御装置1100に異常があり、その生存を確認できないと判定する(ステップS507)。   On the other hand, if n seconds have elapsed (step S506; YES), that is, even if n seconds have elapsed, the value of the numerical data for survival confirmation stored in the survival confirmation data storage area 1311 of the shared memory 1300. If there is no change, the standby control device 1200 determines that there is an abnormality in the normal operation control device 1100 and that its survival cannot be confirmed (step S507).

このように、本実施形態では、生存確認データ記憶領域1311に格納された生存確認用の数値データに変化がなく(即ち、その数値データが「1」だけカウントアップされておらず)、n秒が経過しても生存確認用の数値データに変化がない場合、待機用の制御装置1200は、通常運転用の制御装置1100の生存を確認できないと判定する。
なお、n秒が経過しても生存確認用の数値データが変化しないことの判定(ステップS506)は、必要に応じて省略してもよい。この場合、上述のステップS503において生存確認用の数値データがカウントアップされていないと判定された場合に、待機用の制御装置1200は、通常運転用の制御装置1200の生存を確認できないと判定する。
Thus, in this embodiment, there is no change in the numerical data for survival confirmation stored in the survival confirmation data storage area 1311 (that is, the numerical data is not counted up by “1”), and n seconds If there is no change in the numerical data for survival confirmation even after elapses, the standby control device 1200 determines that the survival of the normal operation control device 1100 cannot be confirmed.
Note that the determination (step S506) that the numerical data for survival confirmation does not change after n seconds may be omitted if necessary. In this case, when it is determined in step S503 that the numerical data for survival confirmation has not been counted up, the standby control device 1200 determines that the survival of the normal operation control device 1200 cannot be confirmed. .

通常運転用の制御装置1100の生存を確認できないと判定すると(ステップS507)、待機用の制御装置1200は、通常運転用の制御装置1100に関する共有メモリ1300内の異常発生状態管理領域(図示なし)に格納されたデータを更新する(ステップS508)。そして、待機用の制御装置1200は、自身を運転状態に設定する(ステップS509)。ここで、通常運転用の制御装置1100に関する共有メモリ1300内の異常発生状態管理領域(図示なし)には、待機用の制御装置1200により通常運転用の制御装置1100の生存が確認されない場合の異常発生を示すデータが格納される。前述したように、本実施形態では、通常運転用の制御装置1100と待機用の制御装置1200が共に相手側の制御装置の生存を確認できないと判定した場合、先に異常発生状態管理領域のデータを更新した制御装置のみが運転を継続し、残りの制御装置の運転が停止される。これにより、通常運転用の制御装置1100と待機用の制御装置1200が共に相手側の制御装置の生存を確認できないと判定した場合の共倒れを回避する。   If it is determined that the survival of the control device 1100 for normal operation cannot be confirmed (step S507), the standby control device 1200 has an abnormality occurrence state management area (not shown) in the shared memory 1300 related to the control device 1100 for normal operation. The data stored in is updated (step S508). Then, the standby control device 1200 sets itself to an operating state (step S509). Here, in the abnormality occurrence state management area (not shown) in the shared memory 1300 related to the control device 1100 for normal operation, an abnormality occurs when the control device 1200 for normal operation is not confirmed by the control device 1200 for standby. Data indicating occurrence is stored. As described above, in the present embodiment, when the control device 1100 for normal operation and the control device 1200 for standby both determine that the survival of the counterpart control device cannot be confirmed, the data in the abnormality occurrence state management area is first displayed. Only the control device that has updated the operation continues, and the remaining control devices are stopped. This avoids collapsing when it is determined that the control device 1100 for normal operation and the control device 1200 for standby both cannot confirm the existence of the counterpart control device.

本実施形態では、待機用の制御装置1200は、通常運転用の制御装置1100と並行して運転されているので、厳密には定常的に運転状態にあるが、ステップS509では、待機用の制御装置1200は、共有メモリ1300のアクセス権を獲得し、選択部1340に演算結果記憶領域1332を選択させる。この結果、以後の制御サイクルでは、共有メモリ1300の演算結果記憶領域1332に格納された演算結果RBが出力データDOUTとして共有メモリ1300から出力される。これにより、通常運転用の制御装置1100から待機用の制御装置1200への切り替えが行われる。   In the present embodiment, the standby control device 1200 is operated in parallel with the normal operation control device 1100, and thus is strictly in a steady operating state. The device 1200 acquires the access right to the shared memory 1300 and causes the selection unit 1340 to select the calculation result storage area 1332. As a result, in the subsequent control cycle, the calculation result RB stored in the calculation result storage area 1332 of the shared memory 1300 is output from the shared memory 1300 as the output data DOUT. Thereby, switching from the control device 1100 for normal operation to the control device 1200 for standby is performed.

ここで、待機用の制御装置1200は、通常運転用の制御装置1100による演算処理と同様の演算処理を実行して、その演算結果RBを共有メモリ1300の演算結果記憶領域1332に逐次格納している。従って、故障が発生する直前の制御サイクルでは、演算結果記憶領域1332に格納された演算結果RBは、演算結果記憶領域1331に格納された演算結果RAと同一である。このため、故障が発生した制御サイクルで、通常運転用の制御装置1100から待機用の制御装置1200に切り替える際に、演算結果記憶領域1331に格納された演算結果RAを演算結果記憶領域1332に転送する必要がない。従って、制御を中断することなく、通常運転用の制御装置1100から待機用の制御装置1200に速やかに切り替えることができる。   Here, standby control device 1200 performs the same arithmetic processing as the normal operation control device 1100, and sequentially stores the arithmetic result RB in arithmetic result storage area 1332 of shared memory 1300. Yes. Therefore, in the control cycle immediately before the failure occurs, the calculation result RB stored in the calculation result storage area 1332 is the same as the calculation result RA stored in the calculation result storage area 1331. For this reason, when switching from the control device 1100 for normal operation to the control device 1200 for standby in the control cycle in which a failure has occurred, the calculation result RA stored in the calculation result storage area 1331 is transferred to the calculation result storage area 1332. There is no need to do. Therefore, the control device 1100 for normal operation can be quickly switched to the control device 1200 for standby without interrupting the control.

その後、待機用の制御装置1200は、通常運転用の制御装置1100を、稼働中のタスクを順次サスペンドさせるために待機状態にし(ステップS510)、この待機状態を経た後に通常運転用の制御装置1100の運転を停止させる(ステップS511)。その後、待機用の制御装置1200は、運転を継続し(ステップS512)、処理をステップS501に戻して次の制御サイクルに移行する。   Thereafter, the standby control device 1200 puts the normal operation control device 1100 into a standby state in order to suspend the running tasks in sequence (step S510), and after passing through this standby state, the normal operation control device 1100. Is stopped (step S511). Thereafter, the standby control device 1200 continues operation (step S512), returns the processing to step S501, and shifts to the next control cycle.

上述のように、待機用の制御装置1200による処理では、自身の生存確認用の数値データを共有メモリ1300の生存確認データ記憶領域1312に格納すると共に、生存確認データ記憶領域1311に格納された数値データに基づいて通常運転用の制御装置1100の生存を確認する。そして、通常運転用の制御装置1100の生存を確認できない場合、この制御装置1100の運転を停止させると共に自身が運転を継続し、それ以降、演算結果RBを出力データDOUTとして出力する。   As described above, in the processing by the standby control device 1200, the numerical value data for its own survival confirmation is stored in the survival confirmation data storage area 1312 of the shared memory 1300 and the numerical value stored in the survival confirmation data storage area 1311. The existence of the control device 1100 for normal operation is confirmed based on the data. If the survival of the control device 1100 for normal operation cannot be confirmed, the control device 1100 stops operating and continues to operate, and thereafter, the calculation result RB is output as the output data DOUT.

確認的に、上述した本実施形態による冗長システム1000の動作について、図6を参照しながら前述の図7に示す従来技術と対比させて説明する。
図6(a)に示すように、本実施形態による冗長化システム1000によれば、故障が発生しない場合、通常運転用の制御装置1100および待機用の制御装置1200が同一の入力データDINに対して並列に同様の演算処理を実行する。また、通常運転用の制御装置1100の演算結果RAと待機用の制御装置1200の演算結果RBとが整合するか否かが定周期で判定される。共有メモリ1300には、通常運転用の制御装置1100による演算結果RAと、待機用の制御装置1200による演算結果RBの両方が逐次格納されるが、通常運転時には、出力データDOUTとして通常運転用の制御装置1100による演算結果RAが出力される。
For confirmation, the operation of the redundant system 1000 according to the present embodiment will be described in comparison with the prior art shown in FIG. 7 with reference to FIG.
As shown in FIG. 6A, according to the redundancy system 1000 according to the present embodiment, when a failure does not occur, the control device 1100 for normal operation and the control device 1200 for standby operate for the same input data DIN. The same arithmetic processing is executed in parallel. Further, whether or not the calculation result RA of the control device 1100 for normal operation matches the calculation result RB of the control device 1200 for standby is determined at regular intervals. The shared memory 1300 sequentially stores both the calculation result RA by the control device 1100 for normal operation and the calculation result RB by the control device 1200 for standby, but during normal operation, the output data DOUT is output for normal operation. A calculation result RA by the control device 1100 is output.

これに対し、図7(a)に示すように、従来技術によれば、通常運転時には、通常運転用の制御装置501のみが運転され、待機用の制御装置502は演算処理を実施しない。そのため、共有メモリ503には、通常運転用の制御装置1100の演算結果しか格納されない。   On the other hand, as shown in FIG. 7A, according to the prior art, only the control device 501 for normal operation is operated during normal operation, and the control device 502 for standby does not perform arithmetic processing. Therefore, only the calculation result of the control device 1100 for normal operation is stored in the shared memory 503.

図6に説明を戻すと、本実施形態による冗長化システム1000によれば、通常運転用の制御装置1100に故障が発生し、その生存確認がとれない場合、図6(b)に示すように、待機用の制御装置1200は、共有メモリ1300の演算結果記憶領域1332に格納された演算結果RBを共有メモリ1300から出力させる。これにより、通常運転用の制御装置1100から待機用の制御装置1200に運転が切り替えられる。このとき、共有メモリ1300には、それまでの通常運転用の制御装置1100の演算結果RAと同じ内容の演算結果RBが格納されており、また、待機用の制御装置1200の記憶部にも同一内容の演算結果RBが存在する。このため、制御装置を切り替える際に、通常運転用の制御装置による演算結果を待機用の制御装置に転送する必要がない。従って、制御を中断することなく、制御装置の切り替えを速やかに行うことができる。   Returning to FIG. 6, according to the redundancy system 1000 according to the present embodiment, when a failure occurs in the control device 1100 for normal operation and its survival cannot be confirmed, as shown in FIG. The standby control device 1200 causes the shared memory 1300 to output the calculation result RB stored in the calculation result storage area 1332 of the shared memory 1300. As a result, the operation is switched from the control device 1100 for normal operation to the control device 1200 for standby. At this time, the calculation result RB having the same content as the calculation result RA of the control device 1100 for normal operation is stored in the shared memory 1300, and is also the same in the storage unit of the control device 1200 for standby. There is a calculation result RB of the contents. For this reason, when switching a control apparatus, it is not necessary to transfer the calculation result by the control apparatus for normal operation to the control apparatus for standby. Therefore, the control device can be switched quickly without interrupting the control.

これに対し、図7(b)に示すように、従来技術によれば、通常運転用の制御装置501が故障すると、それまでの演算結果は共有メモリ503から待機用の制御装置502に転送される。そして、待機用の制御装置502は、共有メモリ503から転送された演算結果を反映させて演算処理を実行する。その後、図7(c)に示すように、待機用の制御装置502は、その演算結果を共有メモリ503に格納する。このように、従来技術によれば、制御装置を切り替える際に、共有メモリ503と待機用の制御装置502との間で演算結果を転送する必要がある。このため、図7に示す技術によれば、制御装置の切り替えを遅滞なく行うことが困難になる。   On the other hand, as shown in FIG. 7B, according to the conventional technique, when the control device 501 for normal operation fails, the calculation results so far are transferred from the shared memory 503 to the control device 502 for standby. The Then, the standby control device 502 executes a calculation process by reflecting the calculation result transferred from the shared memory 503. Thereafter, as shown in FIG. 7C, the standby control device 502 stores the calculation result in the shared memory 503. As described above, according to the related art, it is necessary to transfer the calculation result between the shared memory 503 and the standby control device 502 when switching the control device. For this reason, according to the technique shown in FIG. 7, it becomes difficult to switch the control devices without delay.

なお、上述した本実施形態では、本発明を冗長化システムとして表現したが、本発明を冗長化方法として表現することもできる。この場合、本発明による冗長化方法は、制御対象の制御に関する演算処理を実行する第1制御装置と、前記第1制御装置による演算処理と並行して、前記第1制御装置による演算処理と同等の演算処理を実行する第2制御装置と、前記第1制御装置および前記第2制御装置によって共有される記憶装置と、を備えた冗長化システムの冗長化方法であって、前記記憶装置が、前記第1制御装置および前記第2制御装置による各演算処理の演算結果を格納するための演算結果記憶領域と、前記第1制御装置の生存を確認するためのデータを格納するための生存確認データ記憶領域と、を有し、前記第2制御装置が、前記生存確認データ記憶領域に格納されたデータを参照して前記第1制御装置の生存確認を行う段階と、前記第2制御装置が、前記第1制御装置の生存を確認できない場合、前記演算結果記憶領域に格納された演算結果のうち、前記第2制御装置により格納された演算結果を前記記憶装置から出力させる段階と、を含む冗長化方法として表現することができる。   In the above-described embodiment, the present invention is expressed as a redundancy system. However, the present invention can also be expressed as a redundancy method. In this case, the redundancy method according to the present invention is equivalent to the first control device that executes the arithmetic processing related to the control of the control target and the arithmetic processing by the first control device in parallel with the arithmetic processing by the first control device. A redundancy method for a redundant system comprising: a second control device that executes the arithmetic processing of: and a storage device shared by the first control device and the second control device, wherein the storage device includes: Survival confirmation data for storing calculation result storage areas for storing the calculation results of the respective calculation processes by the first control device and the second control device, and data for checking the survival of the first control device A storage area, and the second control device refers to the data stored in the survival confirmation data storage area to perform the survival check of the first control device, and the second control device includes: Above A redundancy method including a step of outputting, from the storage device, a computation result stored by the second control device among computation results stored in the computation result storage area when the survival of one control device cannot be confirmed. Can be expressed as

上述したように、本実施形態によれば、通常運転用の制御装置1100と待機用の制御装置1200とを並列に運転して各演算結果を共有メモリ1300に逐次格納するようにしたので、通常運転用の制御装置1100から待機用の制御装置1200に切り替える際に、演算結果を転送する必要がない。従って、制御を中断することなく、通常運転用の制御装置1100から待機用の制御装置1200に速やかに切り替えることができる。   As described above, according to the present embodiment, the control device 1100 for normal operation and the control device 1200 for standby are operated in parallel, and each calculation result is sequentially stored in the shared memory 1300. When switching from the control device 1100 for operation to the control device 1200 for standby, there is no need to transfer the calculation result. Therefore, the control device 1100 for normal operation can be quickly switched to the control device 1200 for standby without interrupting the control.

また、本実施形態によれば、演算結果が整合していることが確認され、且つ、通常運転用の制御装置1100の生存を確認できない場合に、通常運転用の制御装置1100から待機用の制御装置1200に切り替えるので、制御の連続性を維持することができる。
また、本実施形態によれば、制御装置を切り替える前の段階で演算結果が整合していない場合、通常運転用の制御装置1100の演算結果RAを優先して出力するので、この場合にも制御の連続性を維持し、制御を安定化させることができる。
Further, according to the present embodiment, when it is confirmed that the calculation results are consistent and the survival of the control device 1100 for normal operation cannot be confirmed, the control for standby is performed from the control device 1100 for normal operation. Since switching to the device 1200, continuity of control can be maintained.
Further, according to the present embodiment, when the calculation results are not consistent at the stage before switching the control device, the calculation result RA of the control device 1100 for normal operation is preferentially output, so in this case as well, the control is performed. Can be maintained and control can be stabilized.

また、本実施形態によれば、通常運転用の制御装置1100は、待機用の制御装置1200の生存を確認できない場合、この待機用の制御装置1200の運転を停止させるので、待機用の制御装置1200が故障を抱えたまま運転を継続することがない。従って、待機用の制御装置1200の故障の拡大を防止することができる。   In addition, according to the present embodiment, the control device 1100 for normal operation stops the operation of the control device 1200 for standby when the survival of the control device 1200 for standby cannot be confirmed. The 1200 does not continue to operate with a failure. Accordingly, it is possible to prevent the failure of the standby control device 1200 from expanding.

なお、本実施形態では、共有メモリ1300の生存確認データ記憶領域1312に格納された生存確認用の数値データに基づいて、通常運転用の制御装置1100が待機用の制御装置1200の生存を確認するものとしたが、必要に応じて待機用の制御装置1200の生存確認を省略してもよい。この場合、共有メモリ1300の生存確認データ記憶領域1312を省略することができる。生存確認データ記憶領域1312を省略した場合、例えば、オペレータが待機用の制御装置1200の生存確認を手動により定期的に実施してもよく、その手法は任意である。ただし、上述した本実施形態のように、通常運転用の制御装置1100が待機用の制御装置1200の生存を確認するものとすれば、通常運転用の制御装置1100から待機用の制御装置1200に運転を切り替える際に制御を的確に継続することが可能になる。加えて、制御装置1200の生存をオペレータが確認する作業を省くことが可能になる。   In the present embodiment, the normal operation control device 1100 confirms the survival of the standby control device 1200 based on the survival confirmation numerical data stored in the survival confirmation data storage area 1312 of the shared memory 1300. Although it was assumed, the survival confirmation of the standby control device 1200 may be omitted as necessary. In this case, the survival confirmation data storage area 1312 of the shared memory 1300 can be omitted. When the survival confirmation data storage area 1312 is omitted, for example, the operator may periodically perform the survival confirmation of the standby control device 1200 manually, and the method is arbitrary. However, if the control device 1100 for normal operation confirms the survival of the control device 1200 for standby as in the present embodiment described above, the control device 1200 for normal operation changes from the control device 1100 for normal operation to the control device 1200 for standby. Control can be accurately continued when switching operation. In addition, it is possible to omit the work of the operator confirming the survival of the control device 1200.

また、本実施形態では、通常運転用の制御装置1100および待機用の制御装置1200の各演算結果のチェックサム値を用いて演算結果が整合するか否かを判定するものとしたが、チェックサム値を用いずに、演算結果自体を用いて、演算結果の整合を判定してもよい。この場合、チェックサム記憶領域1321を省略することができる。また、チェックサム値に限定されず、他の手法を用いて演算結果の整合を判定してもよい。   In this embodiment, the checksum value of each calculation result of the control device 1100 for normal operation and the control device 1200 for standby is used to determine whether or not the calculation results match. You may determine the consistency of a calculation result using a calculation result itself, without using a value. In this case, the checksum storage area 1321 can be omitted. Moreover, it is not limited to a checksum value, You may determine the consistency of a calculation result using another method.

以上、本発明の実施形態を説明したが、本発明は上述の実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲で種々の変形、変更、修正、置換等が可能である。
例えば、上述の実施形態では、通常運転用の制御装置1100と待機用の制御装置1200の2台の制御装置を用いて冗長化システム1000を構成したが、複数の通常運転用の制御装置と、これに対応する複数の待機用の制御装置とを用いて冗長化システムを構成してもよい。
Although the embodiments of the present invention have been described above, the present invention is not limited to the above-described embodiments, and various modifications, changes, corrections, substitutions, and the like are possible without departing from the spirit of the present invention. .
For example, in the above-described embodiment, the redundancy system 1000 is configured using two control devices, that is, the control device 1100 for normal operation and the control device 1200 for standby, but a plurality of control devices for normal operation, A redundant system may be configured by using a plurality of standby control devices corresponding to this.

また、上述の実施形態では、通常運転用の制御装置1100と待機用の制御装置1200により共有メモリ1300を共有するものとしたが、共有メモリ1300は他の冗長化システムによって共有されてもよい。
また、上述の実施形態では、1つの共有メモリ1300に演算結果記憶領域1331、1332を設けたが、演算結果記憶領域1331、1332を別個のメモリに設けてもよい。即ち、共有メモリは単一のメモリに限らず、複数のメモリの集合体であってもよい。
In the above-described embodiment, the shared memory 1300 is shared by the control device 1100 for normal operation and the control device 1200 for standby. However, the shared memory 1300 may be shared by other redundant systems.
In the above-described embodiment, the calculation result storage areas 1331 and 1332 are provided in one shared memory 1300. However, the calculation result storage areas 1331 and 1332 may be provided in separate memories. That is, the shared memory is not limited to a single memory, and may be an aggregate of a plurality of memories.

また、上述の実施形態では、生存確認データ記憶領域1311,1312、チェックサム記憶領域1321は、演算結果記憶領域1331,1332とは別の記憶領域としたが、演算結果記憶領域1331,1332の一部を生存確認データ記憶領域1311,1312、チェックサム記憶領域1321として用いてもよい。例えば、共有メモリ1300のアドレス空間の一部に、生存確認データ記憶領域1311,1312やチェックサム記憶領域1321等を割り付けてもよい。   In the above-described embodiment, the survival confirmation data storage areas 1311 and 1312 and the checksum storage area 1321 are different from the calculation result storage areas 1331 and 1332, but one of the calculation result storage areas 1331 and 1332 is used. May be used as the survival confirmation data storage areas 1311, 1312, and the checksum storage area 1321. For example, the survival confirmation data storage areas 1311 and 1312 and the checksum storage area 1321 may be allocated to a part of the address space of the shared memory 1300.

1000…冗長化システム、1100…通常運転用の制御装置、1200…待機用の制御装置、1300…共有メモリ、1311,1312…生存確認データ記憶領域、1321…チェックサム記憶領域、1331,1332…演算結果記憶領域、1340…選択部、S211〜S213,S221〜S226,S301〜S309,S401〜S411,S501〜S513…処理ステップ。   DESCRIPTION OF SYMBOLS 1000 ... Redundant system, 1100 ... Control apparatus for normal operation, 1200 ... Control apparatus for standby, 1300 ... Shared memory, 1311, 1312 ... Survival confirmation data storage area, 1321 ... Checksum storage area, 1331, 1332 ... Calculation Result storage area, 1340... Selection unit, S211 to S213, S221 to S226, S301 to S309, S401 to S411, S501 to S513.

Claims (6)

制御対象の制御に関する演算処理を実行する第1制御装置と、
前記第1制御装置による演算処理と並行して、前記第1制御装置による演算処理と同等の演算処理を実行する第2制御装置と、
前記第1制御装置および前記第2制御装置によって共有される記憶装置と、
を備え、
前記記憶装置は、
前記第1制御装置および前記第2制御装置による各演算処理の演算結果を格納するための演算結果記憶領域と、
前記第1制御装置の生存を確認するためのデータおよび前記第2制御装置の生存を確認するためのデータを格納するための生存確認データ記憶領域と、
前記第1制御装置の異常の発生を確認するためのデータおよび前記第2制御装置の異常の発生を確認するためのデータを格納する異常発生状態管理領域と、
を有し、
前記第2制御装置は、前記第1制御装置による演算処理の演算結果と前記第2制御装置による演算処理の演算結果とが整合しているか否かを判定する整合判定処理を行い、前記演算結果が整合していない場合、警報を発するとともに、前記第2制御装置による演算処理の演算結果が前記第1制御装置による演算処理の演算結果に置き換えられることで、前記第1制御装置による演算結果と前記第2制御装置による演算結果とを整合し、
前記第1制御装置は、前記演算結果が整合された後に、前記生存確認データ記憶領域に格納されたデータを参照して前記第2制御装置の生存確認を行い、生存が確認できない場合、前記異常発生状態管理領域に格納された前記第2制御装置の異常の発生を確認するためのデータを更新し、
前記第2制御装置は、前記演算結果が整合された後に、前記生存確認データ記憶領域に格納されたデータを参照して前記第1制御装置の生存確認を行い、生存が確認できない場合、前記異常発生状態管理領域に格納された前記第1制御装置の異常の発生を確認するためのデータを更新し、該データの更新後に、前記整合判定処理において置き換えられた演算結果を前記記憶装置から出力し、
前記第1制御装置と前記第2制御装置は、前記生存確認データ記憶領域に格納されたデータを参照して共に相手側の制御装置の生存を確認できない場合、前記第1制御装置と前記第2制御装置のうち、先に前記異常発生状態管理領域のデータを更新した一方の制御装置のみが運転を継続し、他方の制御装置が運転を停止し、
前記一方の制御装置は、前記演算結果記憶領域に格納された演算結果のうち、前記他方の制御装置により格納された演算結果を前記記憶装置から出力させる、冗長化システム。
A first control device that executes arithmetic processing related to control of a control target;
A second control device that executes arithmetic processing equivalent to the arithmetic processing by the first control device in parallel with the arithmetic processing by the first control device;
A storage device shared by the first control device and the second control device;
With
The storage device
A calculation result storage area for storing calculation results of each calculation processing by the first control device and the second control device;
A survival confirmation data storage area for storing data for confirming the survival of the first control device and data for confirming the survival of the second control device;
An abnormality occurrence state management area for storing data for confirming the occurrence of an abnormality in the first control device and data for confirming the occurrence of an abnormality in the second control device;
Have
The second control device performs an alignment determination process for determining whether or not the calculation result of the calculation processing by the first control device matches the calculation result of the calculation processing by the second control device, and the calculation result Are not matched, a warning is issued, and the calculation result of the calculation process by the second control device is replaced with the calculation result of the calculation process by the first control device. Matching the calculation result by the second control device;
The first control device checks the survival of the second control device with reference to the data stored in the survival confirmation data storage area after the calculation results are matched , and if the survival cannot be confirmed, the abnormality Updating data for confirming the occurrence of an abnormality of the second control device stored in the occurrence state management area;
The second control device performs the survival check of the first control device with reference to the data stored in the survival confirmation data storage area after the calculation results are matched , and if the survival cannot be confirmed, the abnormality Data for confirming the occurrence of abnormality of the first control device stored in the occurrence state management area is updated, and after the data is updated, the operation result replaced in the consistency determination process is output from the storage device. ,
When the first control device and the second control device cannot confirm the existence of the counterpart control device by referring to the data stored in the survival confirmation data storage area, the first control device and the second control device Of the control devices, only one control device that has previously updated the data in the abnormality occurrence state management area continues operation, and the other control device stops operation,
The redundancy control system in which the one control device outputs, from the storage device, the operation result stored by the other control device among the operation results stored in the operation result storage area.
前記第1制御装置は、該第1制御装置による演算処理の演算結果のチェックサム値を演算して前記記憶装置に格納し、
前記第2制御装置は、該第2制御装置による演算処理の演算結果のチェックサム値を演算し、該演算により得られたチェックサム値と前記第1制御装置により前記記憶装置に格納されたチェックサム値とを比較することにより、前記第1制御装置による演算処理の演算結果と前記第2制御装置による演算処理の演算結果とが整合しているか否かを判定する、請求項1に記載の冗長化システム。
The first control device calculates a checksum value of a calculation result of calculation processing by the first control device and stores the checksum value in the storage device;
The second control device calculates a checksum value of a calculation result of the calculation processing by the second control device, and a checksum value obtained by the calculation and a check stored in the storage device by the first control device. by comparing the sum value to determine whether the calculation result of the arithmetic processing operation result of the operation processing by the first control unit and by the second control device are matched, according to claim 1 Redundant system.
前記第1制御装置は、該第1制御装置の生存を確認するためのデータとして、所定の数値範囲で巡回する数値データを生成して前記生存確認データ記憶領域に格納する、請求項1又は請求項2に記載の冗長化システム。 Wherein the first control device, as data for checking the viability of the first control unit, generates numerical data cyclically in a predetermined value range stored in the existence confirmation data storage area, according to claim 1 or claim Item 3. The redundant system according to item 2 . 前記第2制御装置は、前記生存確認データ記憶領域に格納された数値データを参照し、該数値データに所定の変化がない場合、前記第1制御装置の生存を確認できないと判定する、請求項3に記載の冗長化システム。 The second control unit refers to the numerical data stored in the existence confirmation data storage area determines that if there is no predetermined change in the numerical data can not confirm the survival of the first control device, according to claim 3. The redundant system according to 3 . 前記第1制御装置は、通常運転用の制御装置であり、前記第2制御装置は、待機用の制御装置である、請求項1から請求項4のいずれか一項に記載の冗長化システム。 The redundancy system according to any one of claims 1 to 4, wherein the first control device is a control device for normal operation, and the second control device is a control device for standby. 制御対象の制御に関する演算処理を実行する第1制御装置と、前記第1制御装置による演算処理と並行して、前記第1制御装置による演算処理と同等の演算処理を実行する第2制御装置と、前記第1制御装置および前記第2制御装置によって共有される記憶装置と、を備えた冗長化システムの冗長化方法であって、
前記記憶装置が、前記第1制御装置および前記第2制御装置による各演算処理の演算結果を格納するための演算結果記憶領域と、前記第1制御装置の生存を確認するためのデータおよび前記第2制御装置の生存を確認するためのデータを格納するための生存確認データ記憶領域と、前記第1制御装置の異常の発生を確認するためのデータおよび前記第2制御装置の異常の発生を確認するためのデータを格納する異常発生状態管理領域と、
を有し、
前記第2制御装置は、前記第1制御装置による演算処理の演算結果と前記第2制御装置による演算処理の演算結果とが整合しているか否かを判定する整合判定処理を行い、前記演算結果が整合していない場合、警報を発するとともに、前記第2制御装置による演算処理の演算結果が前記第1制御装置による演算処理の演算結果に置き換えられることで、前記第1制御装置による演算結果と前記第2制御装置による演算結果とを整合する段階と、
前記第1制御装置は、前記演算結果が整合された後に、前記生存確認データ記憶領域に格納されたデータを参照して前記第2制御装置の生存確認を行い、生存が確認できない場合、前記異常発生状態管理領域に格納された前記第2制御装置の異常の発生を確認するためのデータを更新する段階と、
前記第2制御装置は、前記演算結果が整合された後に、前記生存確認データ記憶領域に格納されたデータを参照して前記第1制御装置の生存確認を行い、生存が確認できない場合、前記異常発生状態管理領域に格納された前記第1制御装置の異常の発生を確認するためのデータを更新し、該データの更新後に、前記整合判定処理において置き換えられた演算結果を前記記憶装置から出力する段階と、
前記第1制御装置と前記第2制御装置は、前記生存確認データ記憶領域に格納されたデータを参照して共に相手側の制御装置の生存を確認できない場合、前記第1制御装置と前記第2制御装置のうち、先に前記異常発生状態管理領域のデータを更新した一方の制御装置のみが運転を継続し、他方の制御装置が運転を停止する段階と、
前記一方の制御装置は、前記演算結果記憶領域に格納された演算結果のうち、前記他方の制御装置により格納された演算結果を前記記憶装置から出力させる段階と、
を含む冗長化方法。
A first control device that executes arithmetic processing related to control of a control target; and a second control device that executes arithmetic processing equivalent to the arithmetic processing by the first control device in parallel with the arithmetic processing by the first control device; A redundancy method for a redundant system comprising: a storage device shared by the first control device and the second control device;
The storage device stores a calculation result storage area for storing calculation results of each calculation processing by the first control device and the second control device, data for confirming the survival of the first control device, and the first (2) A survival confirmation data storage area for storing data for confirming the survival of the control device, data for confirming the occurrence of an abnormality in the first control device, and the occurrence of an abnormality in the second control device An error occurrence state management area for storing data for
Have
The second control device performs an alignment determination process for determining whether or not the calculation result of the calculation processing by the first control device matches the calculation result of the calculation processing by the second control device, and the calculation result Are not matched, a warning is issued, and the calculation result of the calculation process by the second control device is replaced with the calculation result of the calculation process by the first control device. Matching the calculation result by the second control device;
The first control device checks the survival of the second control device with reference to the data stored in the survival confirmation data storage area after the calculation results are matched , and if the survival cannot be confirmed, the abnormality Updating data for confirming the occurrence of an abnormality in the second control device stored in the occurrence state management area;
The second control device performs the survival check of the first control device with reference to the data stored in the survival confirmation data storage area after the calculation results are matched , and if the survival cannot be confirmed, the abnormality Data for confirming the occurrence of an abnormality in the first control device stored in the occurrence state management area is updated , and after the data is updated, the operation result replaced in the consistency determination process is output from the storage device. Stages,
When the first control device and the second control device cannot confirm the existence of the counterpart control device by referring to the data stored in the survival confirmation data storage area, the first control device and the second control device Of the control devices, only one control device that has previously updated the data of the abnormality occurrence state management area continues operation, and the other control device stops operation,
The one control device outputs, from the storage device, the operation result stored by the other control device among the operation results stored in the operation result storage area;
Redundancy method including.
JP2012260977A 2012-11-29 2012-11-29 Redundant system and redundancy method Active JP5993292B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012260977A JP5993292B2 (en) 2012-11-29 2012-11-29 Redundant system and redundancy method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012260977A JP5993292B2 (en) 2012-11-29 2012-11-29 Redundant system and redundancy method

Publications (2)

Publication Number Publication Date
JP2014106862A JP2014106862A (en) 2014-06-09
JP5993292B2 true JP5993292B2 (en) 2016-09-14

Family

ID=51028263

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012260977A Active JP5993292B2 (en) 2012-11-29 2012-11-29 Redundant system and redundancy method

Country Status (1)

Country Link
JP (1) JP5993292B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105204327B (en) * 2015-08-24 2017-08-29 北京航空航天大学 The non-similar actuating system reliability confirmation method of aircraft based on minimal path non cross link
JP7309316B2 (en) 2017-10-25 2023-07-18 能美防災株式会社 receiver
CN113534708A (en) * 2021-07-12 2021-10-22 三一汽车制造有限公司 Industrial personal computer hot backup method, device and system

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62263554A (en) * 1986-05-09 1987-11-16 Fujitsu Ltd Shared memory duplex system
JPS6442742A (en) * 1987-08-11 1989-02-15 Hitachi Ltd Fault monitoring method for multi-processor system
JPH05298220A (en) * 1992-04-17 1993-11-12 Toshiba Corp Lan system
JPH11149458A (en) * 1997-11-18 1999-06-02 Toshiba Corp Duplex computer system and exclusive control method therefor
JP2005025289A (en) * 2003-06-30 2005-01-27 Fujitsu Ltd Data protecting program and method in external storage device shared by plural computer
JP4300129B2 (en) * 2004-02-10 2009-07-22 ファナック株式会社 Programmable sequence controller
JP5509637B2 (en) * 2009-03-18 2014-06-04 日本電気株式会社 Fault tolerant system
JP2010219370A (en) * 2009-03-18 2010-09-30 Toshiba Corp Semiconductor device and semiconductor system

Also Published As

Publication number Publication date
JP2014106862A (en) 2014-06-09

Similar Documents

Publication Publication Date Title
JP4973730B2 (en) Arithmetic processing device and control method of arithmetic processing device
JP6452629B2 (en) Parallel execution of continuous event processing (CEP) queries
JP5993292B2 (en) Redundant system and redundancy method
US9251230B2 (en) Exchanging locations of an out of synchronization indicator and a change recording indicator via pointers
US20140108753A1 (en) Merging an out of synchronization indicator and a change recording indicator in response to a failure in consistency group formation
CN104981787B (en) Data pre-fetching with parent nucleus and the chip for scouting core
US10609133B2 (en) Method and device for establishing communication connection
JP2014174616A (en) Fa system and control device
JP5872124B1 (en) Plant monitoring and control device
US20150207875A1 (en) Distributed coordinated snapshots
JP6596287B2 (en) Plant maintenance support system
EP1889163A1 (en) System and method for bypassing execution of an algorithm
JP2013065220A (en) Information processor
US20160371154A1 (en) Remote control device and control system
US10768586B2 (en) System and method for background element switching for models in model predictive estimation and control applications
JP4974365B2 (en) Distributed monitoring and control system
JP2006053737A (en) Replication system and replication method
KR102062082B1 (en) Energy management system
JP5956940B2 (en) Redundant system and working machine determination method
JP2007087121A (en) Total management apparatus, database system, database management method, and database management program
US10185602B2 (en) Information processing apparatus, information processing method, and computer program product
TWM583961U (en) Database data structure change updating system suitable for automatic teller machine
US9460013B2 (en) Method and system for removal of a cache agent
JP5687171B2 (en) Controller, monitoring unit, and sequence program update method
US9158477B2 (en) Preventing access loss when device adapter affinity to a node changes

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20141113

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20151002

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20151027

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151222

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160524

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160701

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160819

R150 Certificate of patent or registration of utility model

Ref document number: 5993292

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

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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