JP2020123309A - Io module duplication control device and method - Google Patents

Io module duplication control device and method Download PDF

Info

Publication number
JP2020123309A
JP2020123309A JP2019136898A JP2019136898A JP2020123309A JP 2020123309 A JP2020123309 A JP 2020123309A JP 2019136898 A JP2019136898 A JP 2019136898A JP 2019136898 A JP2019136898 A JP 2019136898A JP 2020123309 A JP2020123309 A JP 2020123309A
Authority
JP
Japan
Prior art keywords
module
data
identification information
latest
control device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2019136898A
Other languages
Japanese (ja)
Other versions
JP7358819B2 (en
Inventor
崇 光井
Takashi Mitsui
崇 光井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fuji Electric Co Ltd
Original Assignee
Fuji Electric Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fuji Electric Co Ltd filed Critical Fuji Electric Co Ltd
Publication of JP2020123309A publication Critical patent/JP2020123309A/en
Application granted granted Critical
Publication of JP7358819B2 publication Critical patent/JP7358819B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Safety Devices In Control Systems (AREA)

Abstract

To provide an IO module duplication control device and method that are able to realize, with a simple configuration, synchronization of data output from duplicated IO module.SOLUTION: Each of arithmetic devices (51) of IO modules of duplicated two systems, comprises: an upper data processing unit (71) that gives identification information to the newest upper data among control data input from a control device and stores the identification information in a storage unit; an acquisition unit (75) that acquires a serial number given to the newest upper data of an own system and a serial number given to the newest upper data of the other system in the IO module of the other system; and a data update processing unit (77) that compares the serial numbers of the own system and the other system, when both match, updates output data to be output to a to-be-controlled device from the own IO module, which is the newest upper data of the own system and stored in the storage unit, and when they do not match, does not update the output data and makes the output data be held as it is.SELECTED DRAWING: Figure 4

Description

本発明は、IOモジュール二重化制御装置及び方法に関する。 The present invention relates to an IO module duplication control device and method.

従来、プラントなどの監視制御システムにおいて、コントロールステーションなどの制御装置(コントローラともいう)と、モータ、ポンプなどの被制御装置(フィールド機器ともいう)との間での信号の送受信を制御するためのIOモジュールユニットが設けられている。 Conventionally, in a supervisory control system such as a plant, for controlling transmission/reception of signals between a control device (also referred to as a controller) such as a control station and a controlled device (also referred to as a field device) such as a motor or a pump. An IO module unit is provided.

このような監視制御システムの冗長性を高めるため、制御装置でのプロセッサの二重化、及び、IOモジュールユニットでのIOモジュールの二重化を行うことが知られている(特許文献1など参照)。 In order to increase the redundancy of such a supervisory control system, it is known to duplicate the processor in the control device and duplicate the IO module in the IO module unit (see Patent Document 1, etc.).

特開2010−204992号公報JP, 2010-204992, A

しかしながら、制御装置のプロセッサの動作周期と、IOモジュールユニットにおけるIOモジュールの動作周期とは異なっている。また、二重化されたIOモジュールのそれぞれは、異なる基準発振器の基準周波数に従って動作するため、非同期で動作している。 However, the operating cycle of the processor of the control device and the operating cycle of the IO module in the IO module unit are different. Further, since each of the duplicated IO modules operates according to the reference frequency of a different reference oscillator, it operates asynchronously.

すなわち、IOモジュールにおいて、制御装置から入力され、被制御装置へ出力される入出力信号(以下、IOデータと記載する)は、プロセッサの動作周期とかかわりなく、IOモジュールのそれぞれの動作周期に従って、新たに制御装置から入力されたIOデータに更新される。この結果、二重化されたIOモジュールにおけるIOデータの更新タイミングにずれが生じる可能性がある。このような状態を、IOデータの更新が非同期であるという。 That is, in the IO module, an input/output signal (hereinafter, referred to as IO data) input from the control device and output to the controlled device is according to each operation cycle of the IO module, regardless of the operation cycle of the processor. It is updated to IO data newly input from the control device. As a result, there is a possibility that a deviation occurs in the update timing of IO data in the duplicated IO module. Such a state is referred to as asynchronous updating of IO data.

制御装置からIOモジュールへIOデータが入力されるタイミングと、それがIOモジュールから被制御装置へのIOデータへ反映されるタイミングとが異なり、且つ、IOモジュール間でもIOデータへの反映のタイミングが異なっているので、故障などにより、一方のIOモジュールで稼動から待機への切り替えが行われたとき、被制御装置へ出力されるIOデータの値xが、一つ前に被制御装置からIOモジュールへ入力されたIOデータの値に戻ってしまうことがあり得る。この結果、制御処理の誤作動が発生する可能性があるという問題がある。 The timing at which IO data is input from the control device to the IO module and the timing at which it is reflected in the IO data from the IO module to the controlled device are different, and the timing at which the IO data is reflected between IO modules also differs. Since they are different, when one IO module is switched from operating to standby due to a failure or the like, the value x of the IO data output to the controlled device is the previous IO module from the controlled device. There is a possibility that the value of the IO data input to will be returned to. As a result, there is a problem that a malfunction of the control process may occur.

本発明はかかる点に鑑みてなされたものであり、二重化されたIOモジュールから出力されるデータの同期化を簡易な構成で実現できるIOモジュール二重化制御装置及び方法を提供することを目的の1つとする。 The present invention has been made in view of the above points, and an object of the present invention is to provide an IO module duplexing control device and method capable of realizing synchronization of data output from a duplexed IO module with a simple configuration. To do.

本発明に係るIOモジュール二重化制御装置の一態様は、上位の制御装置から入力された複数のデータを下位の被制御装置へ出力するIOモジュールを2つの系で二重化した二重化制御装置であって、二重化された、前記2つの系のIOモジュールのそれぞれは、前記制御装置から入力された前記複数のデータのうち最新のものに識別情報を付与し、記憶部に自らの系の最新上位データとして記憶させる上位データ処理部と、前記自らの系の最新上位データに付与された自らの系の識別情報、及び、他の系のIOモジュールにおいて他の系の最新上位データに付与された他の系の識別情報を取得する取得部と、前記自らの系の識別情報と前記他の系の識別情報とを比較し、両者が一致するときは、前記自らの系の最新上位データで、前記記憶部に記憶された、自らのIOモジュールから前記被制御装置へ出力させるための出力用データを更新し、両者が一致しないときは、前記出力用データを更新せずにそのまま保持させるデータ更新処理部と、を具備することを特徴とする。 One aspect of an IO module duplication control device according to the present invention is a duplication control device in which an IO module that outputs a plurality of data input from a higher-order control device to a lower-order controlled device is duplicated in two systems, Each of the duplicated IO modules of the two systems adds identification information to the latest one of the plurality of data input from the control device, and stores it in the storage unit as the latest higher-order data of its own system. The higher-order data processing unit, the identification information of the own system given to the latest higher-order data of the own system, and the other system given to the latest higher-order data of another system in the IO module of the other system. An acquisition unit that acquires identification information, compares the identification information of the own system with the identification information of the other system, and when both match, the latest higher-order data of the own system is stored in the storage unit. When the stored output data to be output to the controlled device from its own IO module is updated, and when the two do not match, the data update processing unit that holds the output data as it is, It is characterized by including.

本発明に係るIOモジュール二重化制御方法の一態様は、上位の制御装置から入力された複数のデータを下位の被制御装置へ出力するIOモジュールを2つの系で二重化した二重化制御方法であって、二重化された、前記2つの系のIOモジュールの演算装置のそれぞれに、前記制御装置から入力された前記複数のデータのうち最新のものに識別情報を付与し、記憶部に自らの系の最新上位データとして記憶させる上位データ処理工程と、前記自らの系の最新上位データに付与された自らの系の識別情報、及び、他の系のIOモジュールにおいて他の系の最新上位データに付与された他の系の識別情報を取得する取得工程と、前記自らの系の識別情報と前記他の系の識別情報とを比較し、両者が一致するときは、前記自らの系の最新上位データで、前記記憶部に記憶された、自らのIOモジュールから前記被制御装置へ出力させるための出力用データを更新し、両者が一致しないときは、前記出力用データを更新せずにそのまま保持させるデータ更新処理工程と、を実施させることを特徴とする。 One aspect of an IO module duplication control method according to the present invention is a duplication control method in which an IO module that outputs a plurality of data input from a higher-order control device to a lower-order controlled device is duplicated in two systems, Identification information is given to the latest one of the plurality of data input from the control device for each of the duplicated computing devices of the IO modules of the two systems, and the latest higher order of the own system is stored in the storage unit. An upper data processing step of storing as data, identification information of the own system given to the latest higher order data of the own system, and another given to the latest higher order data of another system in the IO module of the other system. The acquisition step of acquiring the identification information of the system, the identification information of the own system and the identification information of the other system are compared, and when the two match, with the latest higher-order data of the own system, A data update process of updating the output data stored in the storage unit for output from the own IO module to the controlled device, and retaining the output data without updating when the two do not match. It is characterized in that the steps and are carried out.

本発明によれば、二重化されたIOモジュールから出力されるデータの同期化を簡易な構成で実現できるIOモジュール二重化制御装置及び方法を提供することができる。 According to the present invention, it is possible to provide an IO module duplexing control device and method that can realize synchronization of data output from a duplexed IO module with a simple configuration.

第1の実施の形態に係るIOモジュール二重化装置が適用された制御システムを示す概略図である。It is a schematic diagram showing a control system to which an IO module duplication device according to a first embodiment is applied. 従来の二重化されたIOモジュールにおけるデータ更新のタイミングと稼動及び待機の切り替えのタイミングとの関係を示す模式図である。It is a schematic diagram which shows the relationship between the timing of data update and the timing of switching of operation and standby in the conventional dual IO module. 第1の実施の形態に係るIOモジュール二重化制御装置が適用された制御システムの要部を示す模式図である。It is a schematic diagram which shows the principal part of the control system to which the IO module duplication control apparatus which concerns on 1st Embodiment was applied. 図3に示すFPGAが実現する機能を示す機能ブロック図である。4 is a functional block diagram showing functions realized by the FPGA shown in FIG. 3. FIG. 第1の実施の形態に係るIOモジュール二重化制御装置における二重化切替処理を示すフローチャートである。6 is a flowchart showing a duplication switching process in the IO module duplication control device according to the first embodiment. 第1の実施の形態に係るIOモジュール二重化制御装置における同期データ更新処理を示すフローチャートである。6 is a flowchart showing a synchronous data update process in the IO module duplex control device according to the first embodiment. 第1の実施の形態に係るIOモジュール二重化制御装置における非同期データ更新処理を示すフローチャートである。6 is a flowchart showing an asynchronous data update process in the IO module duplex control device according to the first embodiment. 第1の実施の形態に係るIOモジュール二重化制御装置が適用された制御システムにおけるデータ更新のタイミングと稼動及び待機の切り替えのタイミングとの関係を示す模式図である。It is a schematic diagram which shows the relationship between the timing of data update and the timing of switching of operation and standby in the control system to which the IO module redundant control device according to the first embodiment is applied. 第1の実施の形態に係るIOモジュール二重化制御装置が適用された制御システムにおけるデータ更新のタイミングと稼動及び待機の切り替えのタイミングとの関係を示す模式図である。It is a schematic diagram which shows the relationship between the timing of data update and the timing of switching of operation and standby in the control system to which the IO module redundant control device according to the first embodiment is applied. 第3の実施の形態に係るIOモジュール二重化制御装置における二重化制御信号の構成を示す模式図である。It is a schematic diagram which shows the structure of the duplication control signal in the IO module duplication control apparatus which concerns on 3rd Embodiment. 第3の実施の形態に係るIOモジュール二重化制御装置における接続判定処理の各工程を示すフローチャートである。11 is a flowchart showing each step of a connection determination process in the IO module duplex control device according to the third embodiment.

図1〜図9を参照して、本実施の形態に係るIOモジュール二重化制御装置及び方法について詳細に説明する。 The IO module duplexing control device and method according to the present embodiment will be described in detail with reference to FIGS.

<第1の実施の形態>
図1は、第1の実施の形態に係るIOモジュール二重化装置が適用された制御システムを示す概略図である。図1に示すように、第1の実施の形態に係る制御システム1は、本発明の制御装置の一例であるコントローラ3と、コントローラ3から出力された制御データが入力されるIOモジュールユニット5と、IOモジュールユニット5に接続され、コントローラ3から制御を受ける、本発明の被制御装置の一例である、複数の外部機器7a、7b、7cと、で構成されている。
<First Embodiment>
FIG. 1 is a schematic diagram showing a control system to which the IO module duplexing device according to the first embodiment is applied. As shown in FIG. 1, a control system 1 according to the first embodiment includes a controller 3, which is an example of a control device of the present invention, and an IO module unit 5 to which control data output from the controller 3 is input. , A plurality of external devices 7a, 7b, 7c, which are examples of the controlled device of the present invention, which are connected to the IO module unit 5 and are controlled by the controller 3.

コントローラ3は、二重化された構成をとり、A系のプロセッサ3aと、B系のプロセッサ3bと、を備えている。プロセッサ3a、3bは、外部機器7a、7b、7cを制御するための制御データを生成し、出力するように構成されている。制御データは、本発明の複数のデータの一例であり、プロセッサ3a、3bの動作周期に従って一定の周期で順次出力される。プロセッサ3a、3bは、例えば、CPU(Central Processing Unit)であるが、特に限定されない。 The controller 3 has a duplicated configuration and includes an A system processor 3a and a B system processor 3b. The processors 3a, 3b are configured to generate and output control data for controlling the external devices 7a, 7b, 7c. The control data is an example of a plurality of data of the present invention, and is sequentially output at a constant cycle according to the operation cycle of the processors 3a and 3b. The processors 3a and 3b are, for example, CPUs (Central Processing Units), but are not particularly limited.

また、IOモジュールユニット5は、A系5a及びB系5bで、二重化された構成をとる。まず、A系5aを構成する要素について説明する。A系5aにおいて、コントローラ3のA系及びB系のプロセッサ3a、3bに通信可能に接続されたA系のI/Fモジュール9、11が備えられている。プロセッサ3a、3bと、I/Fモジュール9、11との間の通信は、例えば、Ethernet(登録商標)のような上位ネットワーク13を経由して行われるが、特に限定されない。 Further, the IO module unit 5 has a dual configuration of the A system 5a and the B system 5b. First, the elements constituting the A system 5a will be described. The A system 5a includes A system I/F modules 9 and 11 communicatively connected to the A system and B system processors 3a and 3b of the controller 3. Communication between the processors 3a and 3b and the I/F modules 9 and 11 is performed via a higher-level network 13 such as Ethernet (registered trademark), but is not particularly limited.

I/Fモジュール9、11は、プロセッサ3a、3bから入力された制御データのうち最新のものを一時的に記憶するバッファメモリ47(図3参照)を備えている。 The I/F modules 9 and 11 include a buffer memory 47 (see FIG. 3) that temporarily stores the latest control data input from the processors 3a and 3b.

また、A系5aにおいて、複数のIOモジュール15、17、19が、I/Fモジュール9、11に、内部バス21を介して通信可能に接続されている。ここでは、便宜上3つのIOモジュール15、17、19を例示しているが、一つの系に属するIOモジュールの数は特に限定されず少なくとも1つあればよい。 Further, in the A system 5a, a plurality of IO modules 15, 17, and 19 are communicably connected to the I/F modules 9 and 11 via the internal bus 21. Here, for convenience, three IO modules 15, 17, and 19 are illustrated, but the number of IO modules belonging to one system is not particularly limited and may be at least one.

複数のIOモジュール15、17、19には、複数の外部機器7a、7b、7cが、下位ネットワーク23におり、通信可能に接続されている。 A plurality of external devices 7a, 7b, 7c are connected to the plurality of IO modules 15, 17, 19 in the lower network 23 so that they can communicate with each other.

B系5bも、上述のようなA系5aと同様の構成になっている。すなわち、B系において、2つのI/Fモジュール25、27に、複数のIOモジュール29、31、33が内部バス35を介して通信可能に接続されている。 The B system 5b has the same configuration as the A system 5a as described above. That is, in the B system, a plurality of IO modules 29, 31, 33 are communicably connected to the two I/F modules 25, 27 via the internal bus 35.

また、B系5bの2つI/Fモジュール25、27は、通信線37、39により、A系5aのI/Fモジュール9、11と通信可能にそれぞれ接続されている。これにより、コントローラ3のA系及びB系のプロセッサ3a、3bから、A系5aのI/Fモジュール9、11に入力された制御データが、B系5bの2つのI/Fモジュール25、27に受け渡される。 Further, the two I/F modules 25 and 27 of the B system 5b are communicably connected to the I/F modules 9 and 11 of the A system 5a by communication lines 37 and 39, respectively. As a result, the control data input from the A-system and B-system processors 3a and 3b of the controller 3 to the I/F modules 9 and 11 of the A-system 5a are transferred to the two I/F modules 25 and 27 of the B-system 5b. To be delivered to.

複数のIOモジュール29、31、33には、複数の外部機器7a、7b、7cが、下位ネットワーク23を介して、通信可能に接続されている。外部機器7a、7b、7cの数は、第1の実施の形態では3つであるが、特に限定されない。 A plurality of external devices 7a, 7b, 7c are communicatively connected to the plurality of IO modules 29, 31, 33 via the lower network 23. The number of external devices 7a, 7b, 7c is three in the first embodiment, but is not particularly limited.

上述のような構成により、IOモジュールユニット5は、A系5a及びB系5bに二重化される。このようなIOモジュールユニット5に対し、コントローラ3から制御データが入力され、外部機器7a、7b、7cのいずれか一つに出力されるまでの処理の流れを、図2を参照して説明する。以下の説明では、制御データが、図1に示すコントローラ3のA系のプロセッサ3aからIOモジュールユニット5に入力され、外部機器7aに出力される経路が、A系5aのIOモジュール15及びB系5bのIOモジュール29によって二重化されている場合を例に挙げて説明する。 With the above configuration, the IO module unit 5 is duplicated into the A system 5a and the B system 5b. A flow of processing from the control data input from the controller 3 to the IO module unit 5 to the output to any one of the external devices 7a, 7b, 7c will be described with reference to FIG. .. In the following description, the control data is input from the A system processor 3a of the controller 3 shown in FIG. 1 to the IO module unit 5 and is output to the external device 7a by the IO module 15 and the B system of the A system 5a. The case where the IO module 29 of 5b is duplicated will be described as an example.

図2A及び図2Bは、従来の二重化されたIOモジュールにおけるデータ更新のタイミングと稼動及び待機の切り替えのタイミングとの関係を示す模式図である。図2A及び図2Bは、二重化されたIOモジュール15、29が常に非同期で動作している場合を示している。図2Aは、B系5bのIOモジュール29で遅延が発生している場合を示し、図2Bは、A系5aのIOモジュール15で遅延が発生している場合を示す。 2A and 2B are schematic diagrams showing the relationship between the timing of data update and the timing of switching between operation and standby in the conventional duplex IO module. 2A and 2B show a case where the duplicated IO modules 15 and 29 always operate asynchronously. 2A shows a case where a delay occurs in the IO module 29 of the B system 5b, and FIG. 2B shows a case where a delay occurs in the IO module 15 of the A system 5a.

図2A及び図2Bにおいて、最上段は、A系のプロセッサ3aから入力され、I/Fモジュール9、25のバッファメモリ47(図3参照)に記憶された制御データの値(以下、上位バスデータ値と記載する)を示している。 2A and 2B, the uppermost stage is a value of control data input from the A-system processor 3a and stored in the buffer memory 47 (see FIG. 3) of the I/F modules 9 and 25 (hereinafter, upper bus data). It is shown as a value).

2段目は、A系5aのIOモジュール15が、外部機器7aに出力するためにメモリ57(図3参照)に記憶しているデータの値(以下、IOデータ値と記載する)を示している。3段目は、B系5bのIOモジュール29が、外部機器7aに出力するためにメモリ57(図3参照)に記憶しているIOデータ値を示している。 The second row shows the value of the data (hereinafter referred to as the IO data value) stored in the memory 57 (see FIG. 3) by the IO module 15 of the A system 5a for output to the external device 7a. There is. The third row shows the IO data value stored in the memory 57 (see FIG. 3) by the IO module 29 of the B system 5b for output to the external device 7a.

4段目は、稼動中のIOモジュールが、A系5aのIOモジュール15又はB系5bのIOモジュール29のいずれであるかを示している。なお、第1の明細書において、IOモジュールが稼動中であるとは、外部機器7aに対して制御データを出力している状態であることをいい、待機中とは、外部機器7aに対して制御データを出力していない状態であることをいう。 The fourth row shows whether the operating IO module is the IO module 15 of the A system 5a or the IO module 29 of the B system 5b. In the first specification, that the IO module is in operation means that the control data is being output to the external device 7a, and that “standby” means that the external device 7a is in operation. It means that the control data is not output.

最下段は、IOモジュールユニット5から外部機器7aに出力されるデータの値(以下、下位出力データ値と記載する)を示す。 The lowermost row shows the value of data output from the IO module unit 5 to the external device 7a (hereinafter referred to as the lower output data value).

また、図2A及び図2B中、太い下向きの矢印は、A系5a又はB系5bのIOデータ値のいずれが、下位出力データ値に反映されているかを示しているが、反映のタイミングを正確に示すものではない。 2A and 2B, a thick downward arrow indicates which IO data value of the A system 5a or B system 5b is reflected in the lower output data value. Not shown in.

まず、図2Aを参照し、B系5bのIOモジュール29で遅延が発生している場合について説明する。 First, with reference to FIG. 2A, a case where a delay occurs in the IO module 29 of the B system 5b will be described.

図2Aに示すように、上位バスデータ値は、プロセッサ3aの動作周期(例えば、10ms)で更新されている。 As shown in FIG. 2A, the upper bus data value is updated in the operation cycle (for example, 10 ms) of the processor 3a.

A系5a及びB系5bにおいて、IOモジュール15、29は、後述するようにA系5aのIOモジュール15及びB系5bのIOモジュール29は、それぞれ基準発振器59を備え、それが発振する動作クロックに従って動作する。 In the A system 5a and the B system 5b, the IO modules 15 and 29 are provided with a reference oscillator 59, and the IO module 15 of the A system 5a and the IO module 29 of the B system 5b respectively have an operation clock that oscillates, as described later. Work according to.

このため、IOモジュール15、29が、上位バスデータ値をバッファメモリ47から読み取って、メモリ57(図3参照)に記憶したIOデータ値を書き換える処理(以下、データ更新処理と記載する)は、一定の動作周期(例えば、10ms)で行われるが、プロセッサ3aの動作周期とは同期していない。また、A系5aのIOモジュール15とB系5bのIOモジュール29との間でも同期していない。 Therefore, the IO modules 15 and 29 read the upper bus data value from the buffer memory 47 and rewrite the IO data value stored in the memory 57 (see FIG. 3) (hereinafter referred to as data update processing), Although it is performed in a fixed operation cycle (for example, 10 ms), it is not synchronized with the operation cycle of the processor 3a. Further, the IO module 15 of the A system 5a and the IO module 29 of the B system 5b are not synchronized.

さらに、ここでは、B系5bのIOモジュール29は、A系5aのIOモジュール15よりも遅れたタイミングでIOデータ更新処理を行っている。このため、図2Aに示すように、B系5bのIOデータ値は、A系5aのIOデータ値よりも遅れて更新されている。 Further, here, the IO module 29 of the B system 5b performs the IO data update process at a timing later than the IO module 15 of the A system 5a. Therefore, as shown in FIG. 2A, the IO data value of the B system 5b is updated later than the IO data value of the A system 5a.

図2Aに示すように、A系5aのIOモジュール15が稼動中で、A系5aのIOデータ値が、下位出力データ値に反映されている状態で、A系5aで異常が発生すると、A系5aのIOモジュール15が待機中に、B系5bのIOモジュール29が待機中から稼動中に切り替わる。 As shown in FIG. 2A, when the IO module 15 of the A system 5a is operating and the IO data value of the A system 5a is reflected in the lower output data value, if an abnormality occurs in the A system 5a, A While the IO module 15 of the system 5a is on standby, the IO module 29 of the B system 5b is switched from standby to active.

このようにB系5bが遅延しているときに、A系→B系の切り替えが行われると、そのタイミングで、B系5bのIOデータ値が下位出力データ値に反映されるため、下位出力データ値が現在の値「BD」から一つ前の値「81」に戻ってしまっている。このような下位出力データ値の後戻りが発生すると、外部機器7aの誤制御が発生するおそれがある。 When the A system→B system is switched while the B system 5b is thus delayed, the IO data value of the B system 5b is reflected in the lower output data value at that timing, so that the lower output The data value has returned from the current value "BD" to the previous value "81". When such a backward movement of the lower output data value occurs, there is a possibility that the external device 7a may be erroneously controlled.

なお、その後、A系5aのIOモジュール15が復帰したときは、そのまま、B系5bのIOモジュール29が稼動を続ける。B系5bのIOモジュール29に異常が発生すると、B系→A系の切り替えが発生する。しかし、この場合には、B系5bでの遅延による影響はない。 After that, when the IO module 15 of the A system 5a returns, the IO module 29 of the B system 5b continues to operate as it is. When an abnormality occurs in the IO module 29 of the B system 5b, switching from the B system to the A system occurs. However, in this case, there is no influence due to the delay in the B system 5b.

次に、図2Bを参照し、A系5aのIOモジュール15で遅延が発生している場合について説明する。図2Aと同様な処理等については説明を省略している。 Next, a case where a delay occurs in the IO module 15 of the A system 5a will be described with reference to FIG. 2B. Descriptions of the same processes as those in FIG. 2A are omitted.

図2Bに示すように、A系5aのIOモジュール15は、B系5bのIOモジュール29よりも遅れたタイミングでデータ更新処理を行っている。このため、A系5aのIOデータ値は、B系5bのIOデータ値よりも遅れて更新されている。 As shown in FIG. 2B, the IO module 15 of the A system 5a performs the data update process at a timing later than the IO module 29 of the B system 5b. Therefore, the IO data value of the A system 5a is updated later than the IO data value of the B system 5b.

図2Bに示すように、A系5aのIOモジュール15が稼動中で、A系5aのIOデータ値が、下位出力データ値に反映されている状態で、A系5aで異常が発生すると、A系5aのIOモジュール15が待機中に、B系5bのIOモジュール29が待機中から稼動中に切り替わる。しかし、このとき、A系5aでの遅延による影響はない。 As shown in FIG. 2B, when the IO module 15 of the A system 5a is in operation and the IO data value of the A system 5a is reflected in the lower output data value, if an abnormality occurs in the A system 5a, A While the IO module 15 of the system 5a is on standby, the IO module 29 of the B system 5b is switched from standby to active. However, at this time, there is no influence due to the delay in the A system 5a.

その後、A系5aのIOモジュール15が復帰したときは、そのまま、B系5bのIOモジュール29が稼動を続けるが、B系5bのIOモジュール29に異常が発生すると、B系→A系の切り替えが発生する。 After that, when the IO module 15 of the A system 5a is restored, the IO module 29 of the B system 5b continues to operate, but if an abnormality occurs in the IO module 29 of the B system 5b, the B system is switched to the A system. Occurs.

上述のようにA系5aが遅延しているときに、B系→A系の切り替えが行われると、そのタイミングで、A系5aのIOデータ値が下位出力データ値に反映されるため、下位出力データ値が現在の値「10」から一つ前の値「EC」に戻ってしまっている。このような下位出力データ値の後戻りが発生すると、外部機器7aの誤制御が発生するおそれがある。 When the A system 5a is delayed as described above and the B system is switched to the A system, the IO data value of the A system 5a is reflected in the lower output data value at that timing. The output data value has returned from the current value "10" to the previous value "EC". When such a backward movement of the lower output data value occurs, there is a possibility that the external device 7a may be erroneously controlled.

本発明者は、上述のように、A系5aとB系5bとの切り替わり時に下位出力データ値に後戻りが発生し、外部機器7aの誤作動が発生することを防ぐため、鋭意検討した結果、A系5aのIOモジュール15、17、19と、B系5bのIOモジュール29、31、33とのそれぞれにおいて、メモリ57に記憶されたIOデータ値に識別情報を付与し、且つ、図1に示すように、A系5aのIOモジュール15、17、19と、B系5bのIOモジュール29、31、33との間を、二重化制御信号線41、43、45で接続して互いに通信可能とし、互いがメモリ57に記憶しているIOデータ値に付与された識別情報を知らせ合い、両者が一致しているか否かに応じて、IOデータ値を、コントローラ3から新たに入力された最新の制御データの値で更新するか否かを判定することにより、A系5a及びB系5bにおける制御データの更新を同期させることができることを見出し、本発明を完成した。 As described above, the present inventor has diligently studied in order to prevent the occurrence of a backward movement in the lower output data value at the time of switching between the A system 5a and the B system 5b, and the malfunction of the external device 7a. In each of the IO modules 15, 17, 19 of the A-system 5a and the IO modules 29, 31, 33 of the B-system 5b, identification information is added to the IO data value stored in the memory 57, and as shown in FIG. As shown, the IO modules 15, 17, 19 of the A-system 5a and the IO modules 29, 31, 33 of the B-system 5b are connected by duplex control signal lines 41, 43, 45 to enable mutual communication. , Each other informs each other of the identification information given to the IO data value stored in the memory 57, and the IO data value is newly input from the controller 3 according to whether or not they match each other. The present invention has been completed by finding that it is possible to synchronize the update of the control data in the A system 5a and the B system 5b by determining whether or not to update with the value of the control data.

すなわち、第1の実施の形態に係るIOモジュール二重化制御装置は、上位の制御装置から入力された複数のデータを下位の被制御装置へ出力するIOモジュールを2つの系で二重化した二重化制御装置であって、二重化された、前記2つの系のIOモジュールのそれぞれは、前記制御装置から入力された前記複数のデータのうち最新のものに識別情報を付与し、記憶部に自らの系の最新上位データとして記憶させる上位データ処理部と、前記自らの系の最新上位データに付与された自らの系の識別情報、及び、他の系のIOモジュールにおいて他の系の最新上位データに付与された他の系の識別情報を取得する取得部と、前記自らの系の識別情報と前記他の系の識別情報とを比較し、両者が一致するときは、前記自らの系の最新上位データで、前記記憶部に記憶された、自らのIOモジュールから前記被制御装置へ出力させるための出力用データを更新し、両者が一致しないときは、前記出力用データを更新せずにそのまま保持させるデータ更新処理部と、を具備することを特徴とする。 That is, the IO module duplication control device according to the first embodiment is a duplication control device in which the IO modules that output a plurality of data input from the upper control device to the lower controlled device are duplicated in two systems. Therefore, each of the duplicated IO modules of the two systems assigns identification information to the latest one of the plurality of data input from the control device, and stores the latest higher order of its own system in the storage unit. An upper data processing unit to be stored as data, identification information of the own system given to the latest higher order data of the own system, and another given to the latest higher order data of another system in the IO module of the other system. The acquisition unit for acquiring the identification information of the system, the identification information of the own system and the identification information of the other system are compared, and when the two match, the latest higher-order data of the own system, A data update process of updating the output data stored in the storage unit for output from the own IO module to the controlled device, and retaining the output data without updating when the two do not match. And a section.

第1の実施の形態に係るIOモジュール二重化制御装置において、前記2つの系のIOモジュールのいずれか一方を稼動状態に切り替える二重化切替処理部をさらに備えることが好ましい。 It is preferable that the IO module duplication control device according to the first embodiment further includes a duplication switching processing unit that switches one of the two system IO modules to an operating state.

この場合において、前記データ更新処理部は、前記二重化切替処理部により前記自らの系のIOモジュールが待機状態から稼動状態に切り替えられたときは、前記自らの系の識別情報と前記他の系の識別情報との比較結果に関わらずに、前記記憶部が記憶する前記出力用データを前記最新上位データで更新することが好ましい。 In this case, the data update processing unit determines the identification information of the own system and the other system when the IO module of the own system is switched from the standby state to the operating state by the duplication switching processing unit. It is preferable to update the output data stored in the storage unit with the latest higher-order data regardless of the comparison result with the identification information.

また、第1の実施の形態に係るIOモジュール二重化制御装置において、前記2つの系のIOモジュールのそれぞれは、基準発振器を備え、基準発信器が発振する動作クロックに従って動作している場合、本発明の効果はより顕著になるので、好ましい。 Further, in the IO module duplex control device according to the first embodiment, each of the IO modules of the two systems includes a reference oscillator, and when the reference oscillator operates according to an operation clock oscillated by the reference oscillator, This is preferable because the effect of is more remarkable.

また、第1の実施の形態に係るIOモジュール二重化制御方法は、上位の制御装置から入力された複数のデータを下位の被制御装置へ出力するIOモジュールを2つの系で二重化した二重化制御方法であって、二重化された、前記2つの系のIOモジュールの演算装置のそれぞれに、前記制御装置から入力された前記複数のデータのうち最新のものに識別情報を付与し、記憶部に自らの系の最新上位データとして記憶させる上位データ処理工程と、前記自らの系の最新上位データに付与された自らの系の識別情報、及び、他の系のIOモジュールにおいて他の系の最新上位データに付与された他の系の識別情報を取得する取得工程と、前記自らの系の識別情報と前記他の系の識別情報とを比較し、両者が一致するときは、前記自らの系の最新上位データで、前記記憶部に記憶された、自らのIOモジュールから前記被制御装置へ出力させるための出力用データを更新し、両者が一致しないときは、前記出力用データを更新せずにそのまま保持させるデータ更新処理工程と、を実施させることを特徴とする。 Further, the IO module duplication control method according to the first embodiment is a duplication control method in which an IO module that outputs a plurality of data input from a higher-order control device to a lower-order controlled device is duplicated in two systems. Therefore, each of the redundant IO module arithmetic devices of the two systems is provided with the identification information to the latest one of the plurality of data input from the control device, and the storage unit is provided with its own system. Upper-level data processing step of storing as the latest higher-order data of the system, identification information of the own system given to the latest higher-order data of the own system, and given to the latest higher-order data of another system in the IO module of the other system The acquisition step of acquiring the identification information of the other system, and comparing the identification information of the own system and the identification information of the other system, and when the two match, the latest higher-order data of the own system Then, the output data stored in the storage unit for being output from the own IO module to the controlled device is updated, and when the two do not match, the output data is held as it is without being updated. And a data update processing step.

以下、図3を参照して、第1の実施の形態に係るIOモジュール二重化制御装置について詳細に説明する。図3は、第1の実施の形態に係るIOモジュール二重化制御装置が適用された制御システム1の要部を示す模式図である。 Hereinafter, the IO module duplexing control device according to the first embodiment will be described in detail with reference to FIG. FIG. 3 is a schematic diagram showing a main part of a control system 1 to which the IO module duplexing control device according to the first embodiment is applied.

図3に示すA系5aのIOモジュール15と、B系5bのIOモジュール29とは、同じ構成をしている。以下、A系5aを例に挙げて説明する。A系5aのIOモジュール15は、本発明の演算装置の一例であるFPGA(Field Programmable Gate Array)51を備えている。FPGAは、他の演算装置としては、ソフトウエアで処理を行うマイコン、CPUを例示できるが、特に限定されない。 The IO module 15 of the A system 5a and the IO module 29 of the B system 5b shown in FIG. 3 have the same configuration. Hereinafter, the A system 5a will be described as an example. The IO module 15 of the A system 5a includes an FPGA (Field Programmable Gate Array) 51 which is an example of the arithmetic device of the present invention. The FPGA can be exemplified by a microcomputer and a CPU that perform processing by software as another arithmetic device, but is not particularly limited.

FPGA51は、ハードウエアで処理を行うが、回路構成を変更可能なデバイスであり、以降で説明する各種機能を回路構成を適宜設定することで実現可能である。 The FPGA 51 performs processing by hardware, but is a device whose circuit configuration can be changed, and various functions described below can be realized by appropriately setting the circuit configuration.

FPGA51の上位側には、内部バス53を介して、バスI/F制御部55、メモリ57及び基準発振器59が接続されている。 A bus I/F control unit 55, a memory 57, and a reference oscillator 59 are connected to the upper side of the FPGA 51 via an internal bus 53.

バスI/F制御部55は、I/Fモジュール9との間の制御データの入出力を制御する。なお、I/Fモジュール9には、プロセッサ3a、3bから入力された制御データのうち最新のものを記憶するためのバッファメモリ47が設けられている。 The bus I/F control unit 55 controls input/output of control data with the I/F module 9. The I/F module 9 is provided with a buffer memory 47 for storing the latest control data input from the processors 3a and 3b.

また、メモリ57には、プロセッサ3a、3bから入力されたデータを記憶するためのメモリ空間が用意されている。 Further, the memory 57 is provided with a memory space for storing data input from the processors 3a and 3b.

メモリ57は、本発明の記憶部の一例であり、コンピュータ読み取り可能な記録媒体であり、例えば、ROM(Read Only Memory)、EPROM(Erasable Programmable ROM)、EEPROM(Electrically EPROM)、RAM(Random Access Memory)、その他の適切な記憶媒体の少なくとも1つで構成されてもよい。メモリ57は、レジスタ、キャッシュ、メインメモリ(主記憶装置)などと呼ばれてもよい。 The memory 57 is an example of a storage unit of the present invention, and is a computer-readable recording medium. For example, a ROM (Read Only Memory), an EPROM (Erasable Programmable ROM), an EEPROM (Electrically EPROM), a RAM (Random Access Memory). ), and at least one other suitable storage medium. The memory 57 may be called a register, a cache, a main memory (main storage device), or the like.

基準発振器59は、FPGA51が動作の基準とする動作クロックを発振するデバイスであり、例えば、水晶発振器である。第1の実施の形態では、演算装置の一例であるFPGA51の外に設けられているが、演算装置の一部であってもよい。 The reference oscillator 59 is a device that oscillates an operation clock that the FPGA 51 uses as an operation reference, and is, for example, a crystal oscillator. In the first embodiment, it is provided outside the FPGA 51, which is an example of the arithmetic unit, but it may be a part of the arithmetic unit.

FPGA51の下位側には、IOデータを外部機器7aへ出力を制御するための入出力回路61が電気的に接続されている。入出力回路61は、外部機器7aへ入力されるデータの制御も行うことができる。 An input/output circuit 61 for controlling the output of IO data to the external device 7a is electrically connected to the lower side of the FPGA 51. The input/output circuit 61 can also control data input to the external device 7a.

入出力回路61と外部機器7aとの間には、IOモジュール15の稼動及び待機を切り替えるための切替スイッチ63が設けられている。 A change-over switch 63 for switching the operation and standby of the IO module 15 is provided between the input/output circuit 61 and the external device 7a.

また、FPGA51には、B系5bのIOモジュール29との間で、二重化制御信号線41を介して二重化のためのデータ(後述のシリアル番号及び異常レベルデータを含む)のやり取りを行う二重化通信部65が設けられている。 In the FPGA 51, a duplex communication unit that exchanges data (including a serial number and abnormal level data described later) for duplication with the IO module 29 of the B system 5b via the duplication control signal line 41. 65 is provided.

B系5bのIOモジュール29については、A系5aのIOモジュール29と同様の構成について同一の番号を付与し、説明を省略する。 Regarding the IO module 29 of the B system 5b, the same number is assigned to the same configuration as the IO module 29 of the A system 5a, and the description thereof is omitted.

図4は、図3に示すFPGA51が実現する機能を示す機能ブロック図である。FPGA51は、上位データ処理部71、下位データ処理部73、取得部75、データ更新処理部77、二重化切替処理部79及び異常レベル検出部81を実現するような回路構成になっている。 FIG. 4 is a functional block diagram showing functions realized by the FPGA 51 shown in FIG. The FPGA 51 has a circuit configuration that realizes an upper data processing unit 71, a lower data processing unit 73, an acquisition unit 75, a data update processing unit 77, a duplex switching processing unit 79, and an abnormal level detection unit 81.

上位データ処理部71は、プロセッサ3a、3bから入力された制御データのうち最新のもの(以下、最新上位データと記載する)に、本発明の自ら系の識別情報の一例であるシリアル番号を付与し、メモリ57内に記憶する処理を行う。より具体的には、上位データ処理部71は、I/Fモジュール9のバッファメモリ47に記憶された最新上位データを読み出し、これにシリアル番号を付与し、メモリ57内に書き込む。 The higher-order data processing unit 71 assigns a serial number, which is an example of identification information of its own system of the present invention, to the latest control data (hereinafter referred to as latest higher-order data) among the control data input from the processors 3a and 3b. Then, the process of storing in the memory 57 is performed. More specifically, the higher-order data processing unit 71 reads the latest higher-order data stored in the buffer memory 47 of the I/F module 9, assigns the latest higher-order data thereto, and writes it in the memory 57.

下位データ処理部73は、IOモジュール15から外部機器7aへ出力させるためにメモリ57に記憶された最新上位データ(以下、出力用データと記載する)を、入出力回路61に出力する処理を行う。下位データ処理部73は、IOモジュール15が稼動状態であるとき、出力用データを出力する。 The lower data processing unit 73 outputs the latest upper data (hereinafter, referred to as output data) stored in the memory 57 to be output from the IO module 15 to the external device 7a to the input/output circuit 61. .. The lower data processing unit 73 outputs the output data when the IO module 15 is in the operating state.

取得部75は、メモリ57内に記憶された最新上位データに付与されたシリアル番号と、B系5bのIOモジュール29のメモリ57に記憶された最新上位データに付与されたシリアル番号を取得する処理を行う。 The acquisition unit 75 acquires the serial number given to the latest higher-order data stored in the memory 57 and the serial number given to the latest higher-order data stored in the memory 57 of the IO module 29 of the B system 5b. I do.

データ更新処理部77は、A系5aの最新上位データに付与されたシリアル番号と、B系5bの最新上位データに付与されたシリアル番号とを比較し、両者が一致するときはメモリ57に記憶された出力用データを、プロセッサ3aから新たに入力された最新上位データで更新し、両者が一致しないときはメモリ57に記憶された出力用データを、最新データで更新せずに前回値のままで保持する処理(以下、同期データ更新処理と記載する)を行う。 The data update processing unit 77 compares the serial number given to the latest higher-order data of the A-system 5a with the serial number given to the latest higher-order data of the B-system 5b, and stores them in the memory 57 when they match. The output data thus obtained is updated with the latest higher-order data newly input from the processor 3a, and if the two do not match, the output data stored in the memory 57 is not updated with the latest data and the previous value remains unchanged. The processing (hereinafter, referred to as synchronous data update processing) held by is performed.

また、データ更新処理部77は、シリアル番号を比較せず、メモリ57に記憶された最新上位データを、プロセッサ3aから新たに入力された最新上位データで更新する処理(以下、非同期データ更新処理と記載する)も行う。つまり、データ更新処理部77は、同期データ更新処理、及び、非同期データ更新処理の2つのデータ更新処理を行うことができる。 Further, the data update processing unit 77 does not compare the serial numbers but updates the latest higher-order data stored in the memory 57 with the latest higher-order data newly input from the processor 3a (hereinafter referred to as asynchronous data update processing). Also describe). That is, the data update processing unit 77 can perform two data update processes, a synchronous data update process and an asynchronous data update process.

二重化切替処理部79は、A系5aのIOモジュール15、及び、B系5bのIOモジュール29のいずれか一方を稼動状態に切り替え、他方を待機状態に切り替える処理を行う。 The duplex switching processing unit 79 performs a process of switching one of the IO module 15 of the A system 5a and the IO module 29 of the B system 5b to an operating state and the other to a standby state.

異常レベル検出部81は、A系5aのIOモジュール15における異常を検出し、異常レベルを決定する処理を行う。また、異常レベル検出部81は、二重化通信部65を介して、B系5bのIOモジュール29の二重化切替処理部79に異常レベルを示すデータ(以下、異常レベルデータと記載する)を送信する。第1の実施の形態では、異常レベルデータは2ビットであり、低レベルから「00」、「01」、「10」及び「11」の4段階で異常レベルを表現しているが、特に4段階に限定されない。例えば、異常レベルデータは1ビットであり、異常レベルは、異常なしを示す「LOW(0)」と、異常ありを示す「High(1)」の2段階であってもよい。 The abnormality level detection unit 81 detects an abnormality in the IO module 15 of the A system 5a and performs processing for determining the abnormality level. Further, the abnormal level detection unit 81 transmits data indicating an abnormal level (hereinafter, referred to as abnormal level data) to the redundant switching processing unit 79 of the IO module 29 of the B system 5b via the redundant communication unit 65. In the first embodiment, the abnormal level data is 2 bits, and the abnormal level is expressed in four stages from low level to “00”, “01”, “10”, and “11”. It is not limited to stages. For example, the abnormality level data may be 1 bit, and the abnormality level may be in two stages: "LOW (0)" indicating no abnormality and "High (1)" indicating abnormality.

次に、図5〜図7のフローチャートを参照して、FPGA51の各機能が行う処理について説明する。以下の説明では、A系5aのIOモジュール15における処理を例に挙げて説明するが、B系5bのIOモジュール29も同じ処理を行う。図5は、第1の実施の形態に係るIOモジュール二重化制御装置における二重化切替処理を示すフローチャートである。 Next, processing performed by each function of the FPGA 51 will be described with reference to the flowcharts of FIGS. In the following description, the processing in the IO module 15 of the A system 5a will be described as an example, but the IO module 29 of the B system 5b also performs the same processing. FIG. 5 is a flowchart showing the duplexing switching processing in the IO module duplexing control device according to the first embodiment.

図5に示すように、まず、二重化切替処理部79は、二重化通信部65により、B系5bのIOモジュール29の異常レベル検出部81から、異常レベルデータを受信し、B系5bのIOモジュール(他モジュール)29の異常レベルを取得する(S101)。 As shown in FIG. 5, first, the duplexing switching processing unit 79 receives the abnormal level data from the abnormal level detection unit 81 of the IO module 29 of the B system 5b by the redundant communication unit 65, and the IO module of the B system 5b. (Other module) The abnormal level of 29 is acquired (S101).

次に、二重化切替処理部79は、自らの異常レベル検出部81から、異常レベルデータを受け取り、A系5aのIOモジュール(自モジュール)15の異常レベルを取得する(S102)。S101とS102の順番は逆になってもよい。 Next, the duplex switching processing unit 79 receives the abnormal level data from the abnormal level detection unit 81 of its own, and acquires the abnormal level of the IO module (self module) 15 of the A system 5a (S102). The order of S101 and S102 may be reversed.

次に、二重化切替処理部79は、A系5aのIOモジュール(自モジュール)15が稼動中か否かを判定する(S103)。二重化切替処理部79は、例えば、メモリ57に稼動状態及び待機状態のいずれであるかを示すデータ(以下、状態データと記載する)を記憶している。状態データは、例えば1ビットであり、稼動状態を「High(1)」と、待機状態を「Low(0)」と、それぞれ表現するが、特に限定されない。 Next, the duplex switching processing unit 79 determines whether or not the IO module (self module) 15 of the A system 5a is in operation (S103). The duplex switching processing unit 79 stores, for example, in the memory 57, data indicating the operating state or the standby state (hereinafter, referred to as state data). The state data is, for example, 1 bit, and the operating state is expressed as “High (1)” and the standby state is expressed as “Low (0)”, but it is not particularly limited.

二重化切替処理部79は、S103で判定がYesである場合、異常レベルは、A系5aのIOモジュール15が、B系5bのIOモジュール29よりも高いか否か判定する(S104)。 When the determination in S103 is Yes, the duplex switching processing unit 79 determines whether the abnormal level of the IO module 15 of the A system 5a is higher than that of the IO module 29 of the B system 5b (S104).

二重化切替処理部79は、S104で判定がYesである場合、切替スイッチ63(図3参照)をONのままで維持する(S105)。 If the determination in S104 is Yes, the duplex switching processing unit 79 keeps the changeover switch 63 (see FIG. 3) ON (S105).

一方、二重化切替処理部79は、S104で判定がNoである場合、切替スイッチ63をOFFに切り替える(S106)。二重化切替処理部79は、この切り替えに伴い、状態データを、稼動状態から待機状態に変更する。 On the other hand, when the determination is NO in S104, the duplex switching processing unit 79 switches the changeover switch 63 to OFF (S106). The duplication switching processing unit 79 changes the state data from the operating state to the standby state in accordance with this switching.

また、二重化切替処理部79は、S103で判定がNoである場合、異常レベルは、B系5bのIOモジュール29が、A系5aのIOモジュール15よりも高いか否か判定する(S107)。 When the determination in S103 is No, the duplex switching processing unit 79 determines whether the abnormal level of the IO module 29 of the B system 5b is higher than the IO module 15 of the A system 5a (S107).

二重化切替処理部79は、S107で判定がYesである場合、切替スイッチ63をOFFに切り替える(S108)。二重化切替処理部79は、この切り替えに伴い、状態データを、稼動状態から待機状態に変更する。 If the determination in S107 is Yes, the duplex switching processing unit 79 switches the changeover switch 63 to OFF (S108). The duplication switching processing unit 79 changes the state data from the operating state to the standby state in accordance with this switching.

一方、二重化切替処理部79は、S107で判定がNoである場合、切替スイッチ63(図3参照)をONのままで維持する(S109)。 On the other hand, when the determination in S107 is No, the duplex switching processing unit 79 maintains the changeover switch 63 (see FIG. 3) in the ON state (S109).

二重化切替処理部79は、上述のS101〜S109の処理を、例えば、定期的に行い、IOモジュール15、29での異常発生に応じて稼動又は待機の切り替えを行う。そして、稼動状態から待機状態へ、及び、待機状態から稼動状態への切り替えがなかった場合(S105、S107)、データ更新処理部77に、同期データ更新処理を実行させる。一方、稼動状態から待機状態へ、及び、待機状態から稼動状態への切り替えがあった場合(S106、S108)、データ更新処理部77に、非同期データ更新処理を実行させる。 The duplexing switching processing unit 79 performs the above-described processing of S101 to S109, for example, periodically, and switches between operation and standby depending on the occurrence of an abnormality in the IO modules 15 and 29. Then, when there is no switching from the operating state to the standby state and from the standby state to the operating state (S105, S107), the data update processing unit 77 is caused to execute the synchronous data update process. On the other hand, when the operating state is switched to the standby state and the standby state is switched to the operating state (S106, S108), the data update processing unit 77 is caused to execute the asynchronous data update process.

まず、同期データ更新処理について説明する。図6は、第1の実施の形態に係るIOモジュール二重化制御装置における同期データ更新処理を示すフローチャートである。 First, the synchronous data update process will be described. FIG. 6 is a flowchart showing a synchronous data update process in the IO module duplexing control device according to the first embodiment.

データ更新処理部77は、I/Fモジュール9のバッファメモリ47に記憶された最新上位データを読み出し、これにシリアル番号を付与し、メモリ57内に書き込む(S201)。 The data update processing unit 77 reads the latest high-order data stored in the buffer memory 47 of the I/F module 9, assigns the serial number to the latest high-order data, and writes the serial number in the memory 57 (S201).

次に、取得部75は、二重化通信部65により、B系5bのIOモジュール29の上位データ処理部71から、メモリ57内に書き込まれた最新上位データに付与されたシリアル番号を受信し、B系5bのIOモジュール(他モジュール)29のシリアル番号を取得する(S202)。 Next, the acquisition unit 75 receives the serial number given to the latest higher-order data written in the memory 57 from the higher-order data processing unit 71 of the IO module 29 of the B system 5b by the duplex communication unit 65, The serial number of the IO module (other module) 29 of the system 5b is acquired (S202).

次に、取得部75は、A系5aのIOモジュール15の上位データ処理部71から、メモリ57内に書き込まれた最新上位データに付与されたシリアル番号を受信することにより、A系5aのIOモジュール(自モジュール)15のシリアル番号を取得する(S203)。S202とS203の順番は逆になってもよい。 Next, the acquisition unit 75 receives the serial number given to the latest higher-order data written in the memory 57 from the higher-order data processing unit 71 of the IO module 15 of the A-system 5a, and thereby the IO of the A-system 5a is changed. The serial number of the module (self module) 15 is acquired (S203). The order of S202 and S203 may be reversed.

データ更新処理部77は、S203で取得したA系5aの最新上位データに付与されたシリアル番号と、S202で取得したB系5bの最新上位データに付与されたシリアル番号とを比較し、一致しているか否か判定する(S204)。 The data update processing unit 77 compares the serial number given to the latest higher-order data of the A-system 5a obtained at S203 with the serial number given to the latest higher-order data of the B-system 5b obtained at S202, and finds a match. It is determined whether or not (S204).

S204で判定がYesである場合、データ更新処理部77は、メモリ57に記憶された出力用データを、プロセッサ3aから新たに入力された最新上位データで更新する(S205)。 If the determination in S204 is Yes, the data update processing unit 77 updates the output data stored in the memory 57 with the latest higher-order data newly input from the processor 3a (S205).

S204で判定がNoである場合は、データ更新処理部77は、メモリ57に記憶された出力用データを、最新データで更新せずに前回値のままで保持する(S206)。 If the determination in S204 is No, the data update processing unit 77 holds the output data stored in the memory 57 as the previous value without updating the latest data (S206).

S205又はS206が完了した後、下位データ処理部73(図3参照)は、メモリ57に記憶された出力用データを入出力回路61へ出力する(S207)。ただし、下位データ処理部73は、A系5aのIOモジュール(自モジュール)15が稼動状態であるときに出力用データを出力する。 After S205 or S206 is completed, the lower data processing unit 73 (see FIG. 3) outputs the output data stored in the memory 57 to the input/output circuit 61 (S207). However, the lower data processing unit 73 outputs the output data when the IO module (self module) 15 of the A system 5a is in the operating state.

次に、非同期データ更新処理について説明する。図7は、第1の実施の形態に係るIOモジュール二重化制御装置における非同期データ更新処理を示すフローチャートである。 Next, the asynchronous data update process will be described. FIG. 7 is a flowchart showing an asynchronous data update process in the IO module duplication control device according to the first embodiment.

まず、データ更新処理部77は、I/Fモジュール9のバッファメモリ47に記憶された最新上位データを読み出し、これにシリアル番号を付与し、メモリ57内に書き込む(S301)。ここで、シリアル番号の付与は必須ではない。 First, the data update processing unit 77 reads out the latest higher-order data stored in the buffer memory 47 of the I/F module 9, assigns a serial number to this, and writes it in the memory 57 (S301). Here, it is not essential to give the serial number.

次に、データ更新処理部77は、メモリ57に記憶された出力用データを、プロセッサ3aから新たに入力された最新上位データで更新する(S302)。 Next, the data update processing unit 77 updates the output data stored in the memory 57 with the latest higher-order data newly input from the processor 3a (S302).

S302が完了した後、下位データ処理部73(図3参照)は、メモリ57に記憶された出力用データを入出力回路61へ出力する(S303)。ただし、下位データ処理部73は、A系5aのIOモジュール(自モジュール)15が稼動状態であるときに出力用データを出力する。 After S302 is completed, the lower data processing unit 73 (see FIG. 3) outputs the output data stored in the memory 57 to the input/output circuit 61 (S303). However, the lower data processing unit 73 outputs the output data when the IO module (self module) 15 of the A system 5a is in the operating state.

次に、第1の実施の形態に係るIOモジュール二重化制御装置が適用された制御システム1(図1参照)におけるコントローラ3から制御データが入力され、外部機器7a、7b、7cのいずれか一つに出力されるまでの処理の流れを、図8及び図9を参照して説明する。 Next, control data is input from the controller 3 in the control system 1 (see FIG. 1) to which the IO module redundant control device according to the first embodiment is applied, and any one of the external devices 7a, 7b, 7c is input. The flow of processing up to the output will be described with reference to FIGS. 8 and 9.

図8及び図9は、第1の実施の形態に係るIOモジュール二重化制御装置が適用された制御システム1におけるデータ更新のタイミングと稼動及び待機の切り替えのタイミングとの関係を示す模式図である。図8は、B系5bのIOモジュール29で遅延が発生している場合を示し、図9は、A系5aのIOモジュール15で遅延が発生している場合を示す。 FIG. 8 and FIG. 9 are schematic diagrams showing the relationship between the data update timing and the operation/standby switching timing in the control system 1 to which the IO module redundant control device according to the first embodiment is applied. FIG. 8 shows a case where a delay occurs in the IO module 29 of the B system 5b, and FIG. 9 shows a case where a delay occurs in the IO module 15 of the A system 5a.

図8及び図9において、最上段は、A系のプロセッサ3aから入力され、I/Fモジュール9、25のバッファメモリ47(図3参照)に記憶された上位バスデータ値を示している。 8 and 9, the uppermost row shows the upper bus data value input from the A-system processor 3a and stored in the buffer memory 47 (see FIG. 3) of the I/F modules 9 and 25.

2段目は、A系5aのIOモジュール15(図3参照)が取り扱うデータを示している。2段目のうち、第1行は、最上位データに付与されたシリアル番号を、第2行は、メモリ57に記憶された最上位データの値(以下、最新上位データ値と記載する)を、第3行は、最新上位データの一つ前のデータの値(以下、前回値と記載する)を、第4行は、メモリ57に記憶された出力用データの値(以下、出力用データ値と記載する)を、それぞれ示している。 The second row shows data handled by the IO module 15 (see FIG. 3) of the A system 5a. In the second row, the first row shows the serial number given to the highest-order data, and the second row shows the value of the highest-order data stored in the memory 57 (hereinafter referred to as the latest high-order data value). , The third row shows the value of the data immediately before the latest higher-order data (hereinafter referred to as the previous value), and the fourth row shows the value of the output data stored in the memory 57 (hereinafter referred to as the output data). Value)).

3段目は、B系5bのIOモジュール29(図3参照)が取り扱うデータを示している。3段目のうち、第1行は、最上位データに付与されたシリアル番号を、第3行は、メモリ57に記憶された最新上位データ値を、第3行は、最新上位データの一つ前の前回値を、第4行は、メモリ57に記憶された出力用データ値を、それぞれ示している。 The third row shows data handled by the IO module 29 (see FIG. 3) of the B system 5b. In the third row, the first row shows the serial number assigned to the highest-order data, the third row shows the latest high-order data value stored in the memory 57, and the third row shows one of the latest high-order data. The previous previous value is shown, and the fourth row shows the output data value stored in the memory 57, respectively.

4段目は、稼動中のIOモジュールが、A系5aのIOモジュール15か、B系5bのIOモジュール29のいずれであるかを示している。 The fourth row shows whether the operating IO module is the IO module 15 of the A system 5a or the IO module 29 of the B system 5b.

5段目は、図6を参照して説明した同期データ更新処理のS204で行ったシリアル番号が一致したか否かの判定の結果を示している。また、非同期データ更新処理が行われているときは、A系5aの出力用データが出力されているか、又は、B系5bの出力用データが出力されているか、のいずれであるかを示している。 The fifth row shows the result of the determination as to whether or not the serial numbers match in S204 of the synchronous data update processing described with reference to FIG. Further, when the asynchronous data update process is being performed, it indicates whether the output data of the A system 5a is output or the output data of the B system 5b is output. There is.

6段目は、データ更新処理部77(図4参照)が、同期データ更新処理又は非同期データ更新処理のいずれを行っているかを示している。 The sixth row shows whether the data update processing unit 77 (see FIG. 4) is performing synchronous data update processing or asynchronous data update processing.

最下段においては、第1行は、下位出力データに付与されたシリアル番号を、第2行は、IOモジュールユニット5から外部機器7aに出力される下位出力データ値を、それぞれ示す。なお、ここで付与されているシリアル番号は必須ではない。 In the lowermost row, the first row shows the serial number given to the lower-order output data, and the second row shows the lower-order output data value output from the IO module unit 5 to the external device 7a. The serial number assigned here is not essential.

また、図8及び図9中、太い下向きの矢印は、A系5a又はB系5bの出力用データ値のいずれが、下位出力データ値に反映されているかを示しているが、反映のタイミングを正確に示すものではない。 8 and 9, a thick downward arrow indicates which of the output data values of the A system 5a or the B system 5b is reflected in the lower output data value. It is not an accurate representation.

まず、図8を参照し、B系5bのIOモジュール29で遅延が発生している場合について説明する。 First, a case where a delay occurs in the IO module 29 of the B system 5b will be described with reference to FIG.

図8に示すように、上位バスデータ値は、プロセッサ3aの動作周期(例えば、10ms周期)で更新されている。 As shown in FIG. 8, the upper bus data value is updated in the operation cycle of the processor 3a (for example, 10 ms cycle).

A系5a及びB系5bにおいて、IOモジュール15、29が、上位バスデータ値をバッファメモリ47から読み取って、最新上位データ値としてメモリ57(図3参照)に記憶する。この最新上位データ値の更新タイミングは、プロセッサ3aの動作周期とは同期していない。 In the A system 5a and the B system 5b, the IO modules 15 and 29 read the upper bus data value from the buffer memory 47 and store it in the memory 57 (see FIG. 3) as the latest upper data value. The update timing of this latest upper data value is not synchronized with the operation cycle of the processor 3a.

また、A系5a及びB系5bとの間でも、最新上位データ値の更新タイミングは同期しておらず、B系5bが遅延している。 Also, the update timing of the latest upper data value is not synchronized with the A system 5a and the B system 5b, and the B system 5b is delayed.

しかしながら、A系5aのIOモジュール15とB系5bのIOモジュール29において、出力用データ値の更新タイミングは同期している。このような出力用データ値の更新タイミングの同期は、データ更新処理部77が、A系5aの最新上位データに付与されたシリアル番号と、B系5bの最新上位データに付与されたシリアル番号とを比較し、両者が一致するときはメモリ57に記憶された出力用データを、プロセッサ3aから新たに入力された最新上位データで更新し、両者が一致しないときはメモリ57に記憶された出力用データを、最新データで更新せずに前回値のままで保持していることにより、達成されている。 However, in the IO module 15 of the A system 5a and the IO module 29 of the B system 5b, the update timing of the output data value is synchronized. The data update processing unit 77 synchronizes the output data value update timing with the serial number assigned to the latest higher-order data of the A system 5a and the serial number assigned to the latest higher-order data of the B system 5b. When the two match, the output data stored in the memory 57 is updated with the latest higher-order data newly input from the processor 3a. When the two do not match, the output data stored in the memory 57 is compared. This is achieved by keeping the data at the previous value without updating it with the latest data.

図8に示すように、A系5aのIOモジュール15が稼動中で、A系5aのIOデータ値が、下位出力データ値に反映されている状態で、A系5aで異常が発生すると、A系5aのIOモジュール15が待機中に、B系5bのIOモジュール29が待機中から稼動中に切り替わる。 As shown in FIG. 8, when the IO module 15 of the A system 5a is operating and the IO data value of the A system 5a is reflected in the lower output data value, if an abnormality occurs in the A system 5a, A While the IO module 15 of the system 5a is on standby, the IO module 29 of the B system 5b is switched from standby to active.

上述のようにB系5bが遅延しているときに、A系→B系の切り替えが行われても、出力用データは同期しているので、下位出力データ値が現在の値から一つ前の値に戻ってしまうような下位出力データ値の後戻りが発生するのが防がれる。この結果、外部機器7aの誤制御が発生するおそれがない。 As described above, when the B system 5b is delayed, even if the A system is switched to the B system, the output data is in synchronization, so the lower output data value is one before the current value. This prevents backtracking of lower output data values that would otherwise return to the value of As a result, there is no risk of erroneous control of the external device 7a.

A系→B系の切り替えの後、A系5aのIOモジュール15が復帰するまでは、B系5bのIOモジュール29において、データ更新処理部77(図4参照)は、図7を参照して説明した非同期データ更新処理を行う。 After switching from the A system to the B system, the data update processing unit 77 (see FIG. 4) in the IO module 29 of the B system 5b refers to FIG. 7 until the IO module 15 of the A system 5a returns. Perform the asynchronous data update process described.

引き続きいて、A系5aのIOモジュール15が復帰するまで、B系5bのIOモジュール29が稼動を続ける。そして、B系5bのIOモジュール29に異常が発生すると、B系→A系の切り替えが発生する。この場合にも、上述のようなB系での遅延による影響はない。 Subsequently, the IO module 29 of the B system 5b continues to operate until the IO module 15 of the A system 5a is restored. Then, when an abnormality occurs in the IO module 29 of the B system 5b, switching from the B system to the A system occurs. Also in this case, there is no influence due to the delay in the B system as described above.

B系→A系の切り替えの後、A系5aのIOモジュール15において、データ更新処理部77(図4参照)は、図7を参照して説明した非同期データ更新処理を行う。 After switching from the B system to the A system, in the IO module 15 of the A system 5a, the data update processing unit 77 (see FIG. 4) performs the asynchronous data update process described with reference to FIG.

次に、図9を参照し、A系5aのIOモジュール15で遅延が発生している場合について説明する。図8と同様な処理等については説明を省略している。 Next, a case where a delay occurs in the IO module 15 of the A system 5a will be described with reference to FIG. Descriptions of the same processes as those in FIG. 8 are omitted.

図9に示すように、A系5a及びB系5bとで行わる最新上位データ値の更新タイミングは、上位バスデータ値の更新タイミングと同期しておらず、A系5a及びB系5bとの間でも同期しておらず、A系5aが遅延している。 As shown in FIG. 9, the update timing of the latest upper data value performed with the A system 5a and the B system 5b is not synchronized with the update timing of the upper bus data value, and the update timing with the A system 5a and the B system 5b is different. They are not synchronized even during the period, and the A system 5a is delayed.

しかしながら、A系5aのIOモジュール15とB系5bのIOモジュール29において、図8を参照して説明したように、出力用データ値の更新は同期している。 However, in the IO module 15 of the A system 5a and the IO module 29 of the B system 5b, as described with reference to FIG. 8, the update of the output data value is synchronized.

図9に示すように、A系5aのIOモジュール15が稼動中で、A系5aのIOデータ値が、下位出力データ値に反映されている状態で、A系5aで異常が発生すると、A系5aのIOモジュール15が待機中に、B系5bのIOモジュール29が待機中から稼動中に切り替わる。 As shown in FIG. 9, when the IO module 15 of the A system 5a is in operation and the IO data value of the A system 5a is reflected in the lower output data value, if an abnormality occurs in the A system 5a, A While the IO module 15 of the system 5a is on standby, the IO module 29 of the B system 5b is switched from standby to active.

上述のようにA系5aが遅延しているときに、A系→B系の切り替えが行われても、A系5a及びB系5bにおいて出力用データの更新タイミングは同期しているので、下位出力データ値が現在の値から一つ前の値に戻ってしまうような下位出力データ値の後戻りが発生するのが防がれる。この結果、外部機器7aの誤制御が発生するおそれがない。 Even if the A system→B system is switched when the A system 5a is delayed as described above, the update timings of the output data are synchronized in the A system 5a and the B system 5b. This prevents backtracking of lower output data values that would cause the output data value to return from the current value to the previous value. As a result, there is no risk of erroneous control of the external device 7a.

A系→B系の切り替えの後、A系5aのIOモジュール15が復帰するまでは、B系5bのIOモジュール29において、データ更新処理部77(図4参照)は、図7を参照して説明した非同期データ更新処理を行う。 After switching from the A system to the B system, the data update processing unit 77 (see FIG. 4) in the IO module 29 of the B system 5b refers to FIG. 7 until the IO module 15 of the A system 5a returns. Perform the asynchronous data update process described.

引き続きいて、A系5aのIOモジュール15が復帰するまで、B系5bのIOモジュール29が稼動を続ける。そして、B系5bのIOモジュール29に異常が発生すると、B系→A系の切り替えが発生する。この場合にも、上述のようなA系5aでの遅延による影響はない。 Subsequently, the IO module 29 of the B system 5b continues to operate until the IO module 15 of the A system 5a is restored. Then, when an abnormality occurs in the IO module 29 of the B system 5b, switching from the B system to the A system occurs. Also in this case, there is no influence due to the delay in the A system 5a as described above.

B系→A系の切り替えの後、A系5aのIOモジュール15において、データ更新処理部77(図4参照)は、図7を参照して説明した非同期データ更新処理を行う。 After switching from the B system to the A system, in the IO module 15 of the A system 5a, the data update processing unit 77 (see FIG. 4) performs the asynchronous data update process described with reference to FIG.

以上説明したように、上記実施の形態に係るIOモジュール二重化制御装置を適用した制御システム1では、A系5a及びB系5bのIOモジュール15、29の、データ更新処理部77(図3、4参照)は、A系5aのIOモジュール15における最新上位データに付与されたシリアル番号と、B系5bのIOモジュール29における最新上位データに付与されたシリアル番号とを比較し、両者が一致するときは、自らの系の最新上位データで、メモリ57部に記憶された、自らのIOモジュールから外部機器7aへ出力させるための出力用データを更新し、両者が一致しないときは、出力用データを更新せずに前回値を保持させる。これにより、A系5a及びB系5bのIOモジュール15、29の間で、出力用データの更新タイミングを同期させることができるため、A系5a及びB系5bのIOモジュール15、29の動作周期が異なり、いずれかの系において最新上位データの更新タイミングに遅延が生じていても、下位出力データ値の後戻りが発生するのが防がれる。この結果、外部機器7aの誤制御が発生するおそれがないという効果を発揮する。 As described above, in the control system 1 to which the IO module redundant control device according to the above embodiment is applied, the data update processing unit 77 (see FIGS. 3 and 4) of the IO modules 15 and 29 of the A system 5a and the B system 5b. (See reference) compares the serial number given to the latest higher-order data in the IO module 15 of the A system 5a with the serial number given to the latest higher-order data in the IO module 29 of the B system 5b. Is the latest high-order data of its own system, and updates the output data stored in the memory 57 section for output from its own IO module to the external device 7a. When the two do not match, the output data is updated. Keep the previous value without updating. As a result, the update timing of the output data can be synchronized between the IO modules 15 and 29 of the A system 5a and the B system 5b. Therefore, the operation cycle of the IO modules 15 and 29 of the A system 5a and the B system 5b However, even if there is a delay in the update timing of the latest upper data in any of the systems, it is possible to prevent the backward movement of the lower output data value from occurring. As a result, the effect that there is no risk of erroneous control of the external device 7a is exerted.

<第2の実施の形態>
第1の実施の形態では、例えば、図1に示すように、A系5a及びB系5bのIOモジュール15、29が一つの外部機器7aを制御する場合、すなわちIOモジュール15、29が1チャンネルである場合を例に挙げて説明した。しかし、IOモジュール15、29のチャネル数は2以上であってもよい。
<Second Embodiment>
In the first embodiment, for example, as shown in FIG. 1, when the IO modules 15 and 29 of the A system 5a and the B system 5b control one external device 7a, that is, the IO modules 15 and 29 have one channel. The case has been described as an example. However, the number of channels of the IO modules 15 and 29 may be two or more.

この場合、第1の実施の形態では、モジュール単位で二重化切替制御を行っているため、例えば、A系5aのIOモジュール15のいずれかのチャネルで異常が発生したとき、B系5bのIOモジュール29に切り替えられる。その後、B系5bのIOモジュール29のチャネルの1つで異常が発生した場合、A系5aのIOモジュール15の当該チャネルが正常であっても、モジュール毎に稼動状態を切り替えているので、A系5aのIOモジュール15が復帰していなければ、処理を戻すことができない。このため、外部機器7aの制御ができなくなるという事態の発生が懸念される。 In this case, in the first embodiment, since the duplex switching control is performed in module units, for example, when an abnormality occurs in any channel of the IO module 15 of the A system 5a, the IO module of the B system 5b. Switched to 29. After that, when an abnormality occurs in one of the channels of the IO module 29 of the B system 5b, the operating state is switched for each module even if the channel of the IO module 15 of the A system 5a is normal. If the IO module 15 of the system 5a is not restored, the process cannot be returned. Therefore, there is a concern that the external device 7a cannot be controlled.

そこで、第2の実施の形態に係るIOモジュール二重化制御装置では、第1の実施の形態において、モジュール毎に行っていた二重化切替制御を、チャネル毎に行うことを提案する。 Therefore, in the IO module duplex control device according to the second embodiment, it is proposed to perform the duplex switching control, which was performed for each module in the first embodiment, for each channel.

第2の実施の形態に係るIOモジュール二重化制御装置の構成及びIOモジュール二重化制御方法の各工程は、第1の実施の形態の説明及び図面を、「モジュール」を「モジュールのチャネル」に読み替えれば、当業者であればその詳細を容易に理解できるので、説明及び図面を省略する。 Regarding the configuration of the IO module duplication control device and each step of the IO module duplication control method according to the second embodiment, “module” may be replaced with “module channel” in the description and drawings of the first embodiment. For example, a person skilled in the art can easily understand the details, and therefore the description and the drawings are omitted.

このような構成により、チャネル毎に切り替えができ、正常なチャネルを使用した動作の継続が可能となるので、外部機器の制御ができなくなるという事態の発生を抑えることができるという効果を発揮する。 With such a configuration, switching can be performed for each channel, and operation using a normal channel can be continued. Therefore, it is possible to suppress the occurrence of a situation in which the external device cannot be controlled.

また、第1の実施の形態では、図5に示すフローチャートのS104、S107において、二重化切替処理部79(図4参照)が、モジュール毎に、異常レベルが自モジュールが高いか否か、及び、他モジュールが高いか否かの判定を行っている。第2の実施の形態では、二重化切替処理部79は、チャネル毎の異常レベルデータを取得しているので、次のようにチャネル毎の異常レベル判定結果を考慮したモジュール毎の二重化切替処理を行わせることが可能である。 In addition, in the first embodiment, in S104 and S107 of the flowchart shown in FIG. 5, the duplexing switching processing unit 79 (see FIG. 4) determines whether or not the abnormal level is high for each module, and It is determined whether other modules are expensive. In the second embodiment, since the duplex switching processing unit 79 acquires the abnormal level data for each channel, the duplex switching processing for each module in consideration of the abnormal level determination result for each channel is performed as follows. It is possible to

例えば、まず、二重化切替処理部79が、チャネル毎に、自ら又は他のいずれが異常レベルが高いかを比較し、その結果をメモリ57に記憶しておく。すべてのチャネルについて異常レベルの比較が終わったならば、二重化切替処理部79は、比較結果に基づいて、自モジュール又は他モジュールのいずれが、異常レベルが高いチャネルが少ないかを判定する。そして、二重化切替処理部79は、自モジュールにおける異常レベルが高いチャネルが少なければ、切り替えを行わず稼動を続行する。また、二重化切替処理部79は、他モジュールにおける異常レベルが高いチャネルが少なければ、切り替えを行う。 For example, first, the duplexing switching processing unit 79 compares, for each channel, which one of them or the other has a higher abnormal level, and stores the result in the memory 57. When the comparison of the abnormal levels is completed for all the channels, the duplexing switching processing unit 79 determines, based on the comparison result, which module, the own module or the other module, has few channels with high abnormal levels. Then, the duplexing switching processing unit 79 continues the operation without switching if there are few channels with a high abnormal level in its own module. Further, the duplexing switching processing unit 79 performs switching if there are few channels with high abnormal levels in other modules.

このような構成で、チャネル毎の異常レベルの比較結果を考慮して、モジュール毎の切り替えを行うことにより、正常なチャネルを使用して動作の継続が可能となるので、外部機器の制御ができなくなるという事態の発生の頻度を抑えることができるという効果を発揮する。 With such a configuration, it is possible to continue operation using a normal channel by switching between modules considering the comparison result of abnormal levels for each channel, so it is possible to control external devices. The effect that the frequency of occurrence of the situation that disappears can be suppressed can be exerted.

<第3の実施の形態>
上記第1の実施の形態及び第2の実施の形態において、図1に示すように、A系5aのIOモジュール15、17、19と、B系5bのIOモジュール29、31、33とを、二重化制御信号線41、43、45で接続して互いに通信可能としている。これらの二重化制御信号線41、43、45は、作業者が手作業で接続し、それらの接続先が正しいか否かで目視で行うことが想定される。このため、誤接続が発生することを完全に防ぐことは難しいことが懸念される。
<Third Embodiment>
In the first and second embodiments, as shown in FIG. 1, the IO modules 15, 17, 19 of the A system 5a and the IO modules 29, 31, 33 of the B system 5b are The redundant control signal lines 41, 43, and 45 are connected to enable communication with each other. It is assumed that the duplication control signal lines 41, 43, and 45 are manually connected by an operator and visually checked depending on whether or not the connection destinations are correct. For this reason, it is feared that it is difficult to completely prevent erroneous connection.

そこで、第3の実施の形態に係るIOモジュール二重化制御装置では、第1の実施の形態における、シリアル番号及び異常レベルを含む二重化のためのデータ(以下、「二重化制御信号」と記載する)に、IOモジュールを識別するためのIOモジュール識別情報の一例として局番情報をさらに付与することを提案する。以下、特に記載する場合を除き、第3の実施の形態を、第1の実施の形態に適用した場合を例に挙げて説明する。 Therefore, in the IO module duplication control device according to the third embodiment, the duplication data including the serial number and the abnormal level in the first embodiment (hereinafter referred to as “duplication control signal”) is used. , It is proposed to add station number information as an example of IO module identification information for identifying the IO module. The third embodiment will be described below by exemplifying a case where the third embodiment is applied to the first embodiment, unless otherwise specified.

図10は、第3の実施の形態に係るIOモジュール二重化制御装置における二重化制御信号の構成を示す模式図である。図10に示すように、二重化制御信号100は、IOモジュールを識別するための局番情報101と、第1の実施の形態で説明したシリアル番号102と、モジュール毎の異常レベルを示す異常レベルデータ103と、を含んでいる。第3の実施の形態を第2の実施の形態に適用する場合には、二重化制御信号100は、さらに、チャネル毎の異常レベルを示す異常レベルデータ104を含む。 FIG. 10 is a schematic diagram showing a configuration of a duplication control signal in the IO module duplication control device according to the third embodiment. As shown in FIG. 10, the duplication control signal 100 includes the station number information 101 for identifying the IO module, the serial number 102 described in the first embodiment, and the abnormal level data 103 indicating the abnormal level for each module. And, are included. When the third embodiment is applied to the second embodiment, the duplex control signal 100 further includes the abnormal level data 104 indicating the abnormal level for each channel.

局番情報101は、IOモジュールユニット5の中でIOモジュールを識別できるように固有な情報であればよい。また、局番情報101の形式は、特に限定されないが、例えば、A系5aを「1」、B系5bを「2」で示すような上位の階層を示す番号と、1つめのIOモジュールの接続ペアを示す「1」、2つめのIOモジュールの接続ペアを示す「2」のような下位の階層を示す情報とを、「‐(ハイフン)」でつないだものが考えられる。 The station number information 101 may be unique information so that the IO module can be identified in the IO module unit 5. Although the format of the station number information 101 is not particularly limited, for example, a number indicating a higher hierarchy such as "1" for the A system 5a and "2" for the B system 5b and the connection of the first IO module It is conceivable that "1" indicating a pair and information indicating a lower hierarchy such as "2" indicating a connection pair of the second IO module are connected by "- (hyphen)".

例えば、図1に示すIOモジュール15、17、19、29、31、33の局番情報は、以下の通りである。
A系
IOモジュール15: 1−1
IOモジュール17: 1−2
IOモジュール19: 1−3
B系
IOモジュール29: 2−1
IOモジュール31: 2−2
IOモジュール33: 2−3
For example, the station number information of the IO modules 15, 17, 19, 29, 31, 33 shown in FIG. 1 is as follows.
A system IO module 15: 1-1
IO module 17: 1-2
IO module 19: 1-3
B system IO module 29: 2-1
IO module 31: 2-2
IO module 33: 2-3

第3の実施の形態では、二重化切替処理部79が、自モジュールの局番情報をメモリ57に記憶している。そして、二重化切替処理部79は、メモリ57から局番情報を読み出し、他モジュールに送信にする二重化制御信号に格納している。 In the third embodiment, the duplex switching processing unit 79 stores the station number information of its own module in the memory 57. Then, the duplex switching processing unit 79 reads the station number information from the memory 57 and stores it in the duplex control signal to be transmitted to another module.

図11は、第3の実施の形態に係るIOモジュール二重化制御装置における接続判定処理の各工程を示すフローチャートである。接続判定処理は、図5を参照して説明した二重化切替処理に先だって、本発明の接続判定部の一例である二重化切替処理部79(図4参照)により行われる。 FIG. 11 is a flowchart showing each step of the connection determination processing in the IO module duplexing control device according to the third embodiment. The connection determination processing is performed by the duplex switching processing unit 79 (see FIG. 4) that is an example of the connection determination unit of the present invention, prior to the duplex switching processing described with reference to FIG.

まず、図11に示すように、二重化切替処理部79は、接続ペアの局番情報をプロセッサ3a又はプロセッサ3b(図1参照)から取得する(S401)。次に、他モジュールから受信した二重化制御信号から他モジュールの局番情報を取得する(S402)。 First, as illustrated in FIG. 11, the duplexing switching processing unit 79 acquires the station number information of the connection pair from the processor 3a or the processor 3b (see FIG. 1) (S401). Next, the station number information of the other module is acquired from the duplex control signal received from the other module (S402).

そして、接続ペアの局番情報(例えば、1−1;2−1)と、自モジュールの局番情報(メモリ57に格納)及び他モジュールの局番情報との対比を行い、一致しているか否かを判定する(S403)。 Then, the station number information of the connected pair (for example, 1-1; 2-1) is compared with the station number information of the own module (stored in the memory 57) and the station number information of other modules to determine whether they match. A determination is made (S403).

S403で判定がYesであれば、二重化切替処理(図5)に進む(S404)。一方、S403で判定がNoであれば、二重化制御信号線41、43、45の接続の不整合がある旨のエラーを作業者に通知し(S405)、二重化切替処理に進まずに、処理を終了する。 If the determination is Yes in S403, the process proceeds to the duplex switching process (FIG. 5) (S404). On the other hand, if the determination in S403 is No, the operator is notified of an error indicating that there is a mismatch in the connection of the duplex control signal lines 41, 43, 45 (S405), and the process is performed without proceeding to the duplex switching process. finish.

エラーの通知方法は、IOモジュール15、17、19、27、29、31に設けたLEDの点灯であるが、特に限定されない。 The error notification method is lighting of the LEDs provided on the IO modules 15, 17, 19, 27, 29, 31 but is not particularly limited.

このような構成により、第3の実施の形態に係るIOモジュール二重化制御装置及び二重化制御方法は、自らのモジュールの局番情報と他のモジュール局番情報に基づいて、二重化制御信号線41、43、45の接続先が正しいか否かを判定し、誤接続を検知し、エラーを通知して適切な対応を作業者に求めること、及び/又は、二重化切替処理を行わないようにすることができるようになるという効果を発揮する。 With such a configuration, the IO module duplication control device and the duplication control method according to the third embodiment, based on the station number information of the own module and the other module station number information, the duplication control signal lines 41, 43, 45. It is possible to determine whether or not the connection destination of is correct, detect an incorrect connection, notify the error and ask the operator for an appropriate response, and/or prevent the duplex switching processing from being performed. Exerts the effect of becoming.

なお、図11に示した接続判定処理は、特に限定されないが、二重化制御信号線41、43、45の接続作業後の、少なくともIOモジュールユニット5(図1参照)の稼動開始時に行えば足りる。 The connection determination process shown in FIG. 11 is not particularly limited, but may be performed at least at the start of operation of the IO module unit 5 (see FIG. 1) after the connection work of the redundant control signal lines 41, 43, 45.

なお、本発明は上記実施の形態に限定されず、種々変更して実施することが可能である。上記実施の形態において、添付図面に図示されている構成要素の大きさや形状、機能などについては、これに限定されず、本発明の効果を発揮する範囲内で適宜変更することが可能である。その他、本発明の目的の範囲を逸脱しない限りにおいて適宜変更して実施することが可能である。 It should be noted that the present invention is not limited to the above-mentioned embodiment, and can be implemented with various modifications. In the above-described embodiment, the size, shape, function, etc. of the constituent elements illustrated in the accompanying drawings are not limited to this, and can be appropriately changed within the range where the effect of the present invention is exhibited. Other than the above, the present invention can be appropriately modified and implemented without departing from the scope of the object of the present invention.

例えば、上記実施の形態では、図3及び図4に示すように、A系5aのIOモジュール15及びB系5bのIOモジュール29のそれぞれに、二重化切替処理部79を設け、互いに協働することにより二重化切替処理を行っているが、A系5aのIOモジュール15及びB系5bのIOモジュール29の外部に共通の二重化切替処理部を設けてもよい。 For example, in the above-described embodiment, as shown in FIGS. 3 and 4, each of the IO module 15 of the A system 5a and the IO module 29 of the B system 5b is provided with a duplex switching processing unit 79 to cooperate with each other. Although the duplex switching processing is performed by the above, a common duplex switching processing unit may be provided outside the IO module 15 of the A system 5a and the IO module 29 of the B system 5b.

また、上記実施の形態では、最新上位データに付与される識別情報にシリアル番号を用いているが、これに限定されるものではない。例えば、最新上位データに、「LOW(0)」及び「High(1)」の値を繰り返して付与してもよい。この場合、遅延が、A系5aのIOモジュール15及びB系5bのIOモジュール29の動作周期の1周期内であれば、シリアル番号を付与したときと同様に同期データ更新処理を行うことができる。 Further, in the above-mentioned embodiment, the serial number is used as the identification information given to the latest higher-order data, but the present invention is not limited to this. For example, the values of "LOW (0)" and "High (1)" may be repeatedly given to the latest upper-level data. In this case, if the delay is within one cycle of the operation cycle of the IO module 15 of the A system 5a and the IO module 29 of the B system 5b, the synchronous data update process can be performed in the same manner as when the serial number is assigned. ..

本発明は、二重化されたIOモジュールから出力されるデータの同期化を簡易な構成で実現できるIOモジュール二重化制御装置及び方法を提供するという効果を奏し、例えば、プラントの制御システムに適用して好適である。 INDUSTRIAL APPLICABILITY The present invention has an effect of providing an IO module duplexing control device and method capable of realizing synchronization of data output from a duplexed IO module with a simple configuration, and is suitable for application to, for example, a plant control system. Is.

1 制御システム
3 コントローラ(制御装置)
3a、3a プロセッサ
5 IOモジュールユニット
5a A系
5b B系
7a〜7c 外部機器(被制御装置)
9、11、25、27、29、31、33 I/Fモジュール
13 上位ネットワーク
15、17、19 IOモジュール
23 下位ネットワーク
41、43、45 二重化制御信号線
47 バッファメモリ
51 FPGA(演算装置)
55 バスI/F制御部
57 メモリ(記憶部)
59 基準発振器
61 入出力回路
63 切替スイッチ
65 二重化通信部
71 上位データ処理部
73 下位データ処理部
75 取得部
77 データ更新処理部
79 二重化切替処理部
81 異常レベル検出部
100 二重化制御信号
101 局番情報(IOモジュール識別情報)
102 シリアル番号(識別情報)
103、104 異常レベルデータ
1 Control system 3 Controller (control device)
3a, 3a Processor 5 IO module unit 5a A system 5b B system 7a to 7c External device (controlled device)
9, 11, 25, 27, 29, 31, 33 I/F module 13 Upper network 15, 17, 19 IO module 23 Lower network 41, 43, 45 Redundant control signal line 47 Buffer memory 51 FPGA (arithmetic unit)
55 Bus I/F control unit 57 Memory (storage unit)
59 Reference Oscillator 61 Input/Output Circuit 63 Changeover Switch 65 Duplex Communication Unit 71 Upper Data Processing Unit 73 Lower Data Processing Unit 75 Acquisition Unit 77 Data Update Processing Unit 79 Duplication Switching Processing Unit 81 Abnormal Level Detection Unit 100 Duplication Control Signal 101 Station Number Information ( IO module identification information)
102 Serial number (identification information)
103, 104 Abnormal level data

Claims (7)

上位の制御装置から入力された複数のデータを下位の被制御装置へ出力するIOモジュールを2つの系で二重化した二重化制御装置であって、
二重化された、前記2つの系のIOモジュールのそれぞれは、
前記制御装置から入力された前記複数のデータのうち最新のものに識別情報を付与し、記憶部に自らの系の最新上位データとして記憶させる上位データ処理部と、
前記自らの系の最新上位データに付与された自らの系の識別情報、及び、他の系のIOモジュールにおいて他の系の最新上位データに付与された他の系の識別情報を取得する取得部と、
前記自らの系の識別情報と前記他の系の識別情報とを比較し、両者が一致するときは、前記自らの系の最新上位データで、前記記憶部に記憶された、自らのIOモジュールから前記被制御装置へ出力させるための出力用データを更新し、両者が一致しないときは、前記出力用データを更新せずにそのまま保持させるデータ更新処理部と、
を具備することを特徴とするIOモジュール二重化制御装置。
A duplex control device in which IO modules for outputting a plurality of data input from a higher control device to a lower controlled device are duplicated in two systems,
Each of the dual IO modules of the two systems is
An upper data processing unit that gives identification information to the latest one of the plurality of data input from the control device and stores the latest data in the storage unit as the latest upper data of its own system,
An acquisition unit for acquiring the identification information of the own system given to the latest higher order data of the own system and the identification information of the other system given to the latest higher order data of the other system in the IO module of the other system. When,
When the identification information of the own system is compared with the identification information of the other system, and when the two match, the latest higher-order data of the own system is used to detect from the IO module of the own stored in the storage unit. A data update processing unit that updates the output data to be output to the controlled device, and when the two do not match, holds the output data as it is without updating,
An IO module duplexing control device comprising:
前記2つの系のIOモジュールのいずれか一方を稼動状態に切り替える二重化切替処理部をさらに備えることを特徴とする請求項1に記載のIOモジュール二重化制御装置。 The IO module duplication control device according to claim 1, further comprising a duplication switching processing unit that switches one of the IO modules of the two systems to an operating state. 前記2つの系のIOモジュールはチャネル数が2以上であり、前記2つの系のIOモジュールの稼動状態をチャネル毎に切り替える二重化切替処理部をさらに備えることを特徴とする請求項1に記載のIOモジュール二重化制御装置。 The IO module according to claim 1, wherein the IO modules of the two systems have two or more channels, and the system further comprises a duplexing switching processing unit that switches an operating state of the IO modules of the two systems for each channel. Module duplication controller. 前記データ更新処理部は、前記二重化切替処理部により前記自らの系のIOモジュールが待機状態から稼動状態に切り替えられたときは、前記自らの系の識別情報と前記他の系の識別情報との比較結果に関わらずに、前記記憶部が記憶する前記出力用データを前記最新上位データで更新することを特徴とする請求項2又は請求項3に記載のIOモジュール二重化制御装置。 When the IO module of the own system is switched from the standby state to the operating state by the duplication switching processing unit, the data update processing unit identifies the identification information of the own system and the identification information of the other system. 4. The IO module duplication control device according to claim 2, wherein the output data stored in the storage unit is updated with the latest higher-order data regardless of the comparison result. 前記2つの系のIOモジュールのそれぞれは、基準発振器を備え、基準発信器が発振する動作クロックに従って動作することを特徴とする請求項1から請求項4のいずれかに記載のIOモジュール二重化制御装置。 5. The IO module duplication control device according to claim 1, wherein each of the IO modules of the two systems includes a reference oscillator and operates according to an operation clock oscillated by a reference oscillator. .. 前記上位データ処理部は、前記制御装置から入力された前記複数のデータに、自らのIOモジュール識別情報をさらに付与し、
前記取得部は、自らの系の最新上位データに付与された自らのモジュール識別情報、及び、他の系のIOモジュールにおいて他の系の最新上位データに付与された他のモジュール識別情報を取得し、
前記自らのモジュール識別情報と前記他のモジュール識別情報とを比較し、両者が一致しないときは、自らのモジュール及び他のモジュールが正しく接続されていないと判定する接続判定部をさらに備えることを特徴とする請求項1から請求項5のいずれかに記載のIOモジュール二重化制御装置。
The higher-order data processing unit further adds its own IO module identification information to the plurality of data input from the control device,
The acquisition unit acquires its own module identification information given to the latest higher-order data of its own system and other module identification information given to the latest higher-order data of another system in the IO module of the other system. ,
It further comprises a connection determination unit that compares the module identification information of its own and the other module identification information, and when the two do not match, determines that its own module and the other module are not properly connected. The IO module duplexing control device according to any one of claims 1 to 5.
上位の制御装置から入力された複数のデータを下位の被制御装置へ出力するIOモジュールを2つの系で二重化した二重化制御方法であって、
二重化された、前記2つの系のIOモジュールの演算装置のそれぞれに、
前記制御装置から入力された前記複数のデータのうち最新のものに識別情報を付与し、記憶部に自らの系の最新上位データとして記憶させる上位データ処理工程と、
前記自らの系の最新上位データに付与された自らの系の識別情報、及び、他の系のIOモジュールにおいて他の系の最新上位データに付与された他の系の識別情報を取得する取得工程と、
前記自らの系の識別情報と前記他の系の識別情報とを比較し、両者が一致するときは、前記自らの系の最新上位データで、前記記憶部に記憶された、自らのIOモジュールから前記被制御装置へ出力させるための出力用データを更新し、両者が一致しないときは、前記出力用データを更新せずにそのまま保持させるデータ更新処理工程と、
を実施させることを特徴とするIOモジュール二重化制御方法。
A dual control method in which an IO module for outputting a plurality of data input from a higher-level control device to a lower-level controlled device is duplicated in two systems,
In each of the duplicated arithmetic units of the IO modules of the two systems,
An upper data processing step in which identification information is given to the latest one of the plurality of data input from the control device and stored in the storage unit as the latest upper data of its own system,
An acquisition step of acquiring the identification information of the own system given to the latest higher order data of the own system and the identification information of the other system given to the latest higher order data of the other system in the IO module of the other system. When,
When the identification information of the own system is compared with the identification information of the other system, and when the two match, the latest higher-order data of the own system is used to detect from the own IO module stored in the storage unit. Updating the output data for output to the controlled device, and when the two do not match, a data update processing step of holding the output data as it is without updating,
An IO module duplication control method, characterized in that:
JP2019136898A 2019-01-30 2019-07-25 IO module duplication control device and method Active JP7358819B2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019014409 2019-01-30
JP2019014409 2019-01-30

Publications (2)

Publication Number Publication Date
JP2020123309A true JP2020123309A (en) 2020-08-13
JP7358819B2 JP7358819B2 (en) 2023-10-11

Family

ID=71992802

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019136898A Active JP7358819B2 (en) 2019-01-30 2019-07-25 IO module duplication control device and method

Country Status (1)

Country Link
JP (1) JP7358819B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102646494B1 (en) * 2023-10-18 2024-03-12 주식회사 유니즈테크 Controller redundancy device and method for controlling the same

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH052571A (en) * 1990-09-26 1993-01-08 Honeywell Inc Method of executing both-end mutual inspection of primary database and secondary database in process control system
JP2007086972A (en) * 2005-09-21 2007-04-05 Hitachi Ltd Storage system, duplex control method, and program
JP2008234014A (en) * 2007-03-16 2008-10-02 Fuji Electric Fa Components & Systems Co Ltd Duplex controller system and operation-system/standby-system controller therefor

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH052571A (en) * 1990-09-26 1993-01-08 Honeywell Inc Method of executing both-end mutual inspection of primary database and secondary database in process control system
JP2007086972A (en) * 2005-09-21 2007-04-05 Hitachi Ltd Storage system, duplex control method, and program
JP2008234014A (en) * 2007-03-16 2008-10-02 Fuji Electric Fa Components & Systems Co Ltd Duplex controller system and operation-system/standby-system controller therefor

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102646494B1 (en) * 2023-10-18 2024-03-12 주식회사 유니즈테크 Controller redundancy device and method for controlling the same

Also Published As

Publication number Publication date
JP7358819B2 (en) 2023-10-11

Similar Documents

Publication Publication Date Title
US8503484B2 (en) System and method for a cross channel data link
US8780702B2 (en) Adaptive multi-redundant ring network system and method for selecting detour
JP6029737B2 (en) Control device
US11599090B2 (en) System and method of network synchronized time in safety applications
KR20080016435A (en) Memory controller and method of controlling memory
EP3629110B1 (en) High availability industrial automation controller and method of operating the same
JP2020123309A (en) Io module duplication control device and method
US11251991B2 (en) Communication system, communication apparatus, communication method, and program
JP6083480B1 (en) Monitoring device, fault tolerant system and method
US9003067B2 (en) Network and method for operating the network
US20080226304A1 (en) Optical transmission apparatus
KR101853245B1 (en) Programmable logic controllers, slave devices and redundant systems
US10996659B2 (en) Method and redundant automation system with a plurality of processor units per hardware unit
KR20120102240A (en) Redundancy plc system and data synchronization method thereof
JP5604799B2 (en) Fault tolerant computer
CN111164523B (en) Distributed control system
US20230318728A1 (en) Diagnostic System and Method for Network Synchronized Time in Safety Applications
KR100729930B1 (en) A failover circuit of a redendant system
US11914338B2 (en) Redundant automation system and method for operating the redundant automation system
JP2016058013A (en) Control system, relay devices, and control devices
JPH0462081B2 (en)
JP6641991B2 (en) Node and communication method
JP4640359B2 (en) Fault tolerant computer and synchronization control method in fault tolerant computer
JP7023726B2 (en) Duplex control system
US20200394111A1 (en) Method for Operating a Redundant Automation System

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220614

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230427

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230509

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230707

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230911

R150 Certificate of patent or registration of utility model

Ref document number: 7358819

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150