WO2024062671A1 - 産業用コントローラの制御プログラムの管理システム - Google Patents

産業用コントローラの制御プログラムの管理システム Download PDF

Info

Publication number
WO2024062671A1
WO2024062671A1 PCT/JP2023/017787 JP2023017787W WO2024062671A1 WO 2024062671 A1 WO2024062671 A1 WO 2024062671A1 JP 2023017787 W JP2023017787 W JP 2023017787W WO 2024062671 A1 WO2024062671 A1 WO 2024062671A1
Authority
WO
WIPO (PCT)
Prior art keywords
server device
group
processing unit
database
management system
Prior art date
Application number
PCT/JP2023/017787
Other languages
English (en)
French (fr)
Inventor
淳一 川本
Original Assignee
株式会社 東芝
東芝インフラシステムズ株式会社
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 株式会社 東芝, 東芝インフラシステムズ株式会社 filed Critical 株式会社 東芝
Publication of WO2024062671A1 publication Critical patent/WO2024062671A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B9/00Safety arrangements
    • G05B9/02Safety arrangements electric
    • G05B9/03Safety arrangements electric with multiple-channel loop, i.e. redundant control systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements

Definitions

  • This embodiment relates to a control program management system for an industrial controller.
  • the industrial plant control system includes a management system that manages the control program of the industrial controller.
  • the management system is composed of a server device and a plurality of client devices. In large industrial plants, the number of client devices can range from tens to hundreds.
  • This embodiment is intended to solve the above-mentioned problems, and aims to provide a control program management system for an industrial controller that can realize redundancy using two server devices. shall be.
  • a control program management system for an industrial controller includes a first server device including a first processing unit and a first database in which the control program is registered. , a second processing unit, and a second server device including a second database in which the program is registered.
  • the first processing section of the first server device is in the master state
  • the second processing section of the second server device is in the backup state
  • the second server device is in the master state. It has joined a first group that receives data sent from the device.
  • the first processing unit of the first server device transmits the first healthy signal to the first group at regular intervals
  • the second processing unit of the second server device transmits the first healthy signal from the first server device to the first group.
  • the backup state is switched to the master state based on the first healthy signal transmitted to the first group.
  • FIG. 1 is a diagram showing the configuration of a control system for an industrial plant according to a first embodiment; FIG. The figure which shows the structure of a 1st server apparatus. The figure which shows the structure of a 2nd server apparatus. A diagram showing the configuration of a client device.
  • FIG. 4 is a diagram for explaining the normal operation of the management system.
  • FIG. 3 is a diagram illustrating the operation of the first server device when an abnormality occurs.
  • FIG. 3 is a diagram illustrating the operation of the first server device when an abnormality occurs.
  • FIG. 3 is a diagram illustrating the operation of the first server device when an abnormality occurs.
  • FIG. 3 is a diagram illustrating the operation of the first server device when an abnormality occurs.
  • FIG. 3 is a diagram illustrating the operation of the first server device when an abnormality occurs.
  • FIG. 3 is a diagram illustrating the operation of the first server device when an abnormality occurs.
  • FIG. 3 is a diagram illustrating the operation of the first server device when an abnormality occurs
  • FIG. 3 is a diagram illustrating the operation of the first server device when a communication failure occurs.
  • FIG. 3 is a diagram illustrating the operation of the first server device when a communication failure occurs.
  • FIG. 11 is a diagram for explaining an operation of the first server device when a communication failure occurs;
  • FIG. 3 is a diagram illustrating the operation of the first server device when a communication failure occurs.
  • FIG. 7 is a diagram illustrating the operation of the second server device when a communication failure occurs.
  • FIG. 7 is a diagram illustrating the operation of the second server device when a communication failure occurs.
  • FIG. 7 is a diagram illustrating the operation of the second server device when a communication failure occurs.
  • FIG. 3 is a diagram illustrating an operation when two server devices are both in a master state.
  • FIG. 3 is a diagram illustrating an operation when two server devices are both in a master state.
  • FIG. 3 is a diagram illustrating an operation when two server devices are both in a master state.
  • FIG. 3 is
  • FIG. 1 is a diagram showing the configuration of an industrial plant control system 1 according to the first embodiment.
  • the control system 1 includes a management system 100 that manages control programs for industrial controllers.
  • the management system 100 includes a first server device 10, a second server device 20, and one or more client devices 30.
  • the management system 100 has a redundant configuration, and during normal operation, the first server device 10 is in a master state, that is, in an operating state, and the second server device 20 is in a backup state, that is, in a standby state. .
  • the first server device 10, the second server device 20, and the client device 30 are connected to a control network 61.
  • One or more industrial controllers 40 are connected to the control network 61.
  • Industrial controller 40 is connected to field network 62.
  • One or more field devices 50 are connected to the field network 62.
  • the specific method for implementing the control network 61 and the field network 62 is not particularly limited, but as an example, the control network 61 and the field network 62 are Ethernet (registered trademark). Further, the control network 61 may be duplicated.
  • FIG. 2 is a diagram showing the configuration of the first server device 10.
  • the first server device 10 includes a first processing section 11, a first storage section 12, and a first database 13.
  • the first processing unit 11 controls the operation of the first server device 10.
  • the first storage unit 12 has an area reserved for a first healthy counter 12a.
  • a control program for the industrial controller 40 is registered in the first database 13.
  • the first server device 10 manages a first group to which the second server device 20 and one or more client devices 30 can join. By transmitting data to the first group, the first server device 10 transmits the same data to the second server device 20 and one or more client devices 30 that have joined the first group. Can be sent in bulk. Such a mechanism can be realized by, for example, multicast communication using UDP (User Datagram Protocol).
  • UDP User Datagram Protocol
  • the first healthy counter 12a counts up or down at a predetermined period, for example, at a one-second period while the first server device 10 is functioning normally.
  • a mechanism can be realized, for example, by generating an interrupt at a predetermined period and incrementing or decrementing the value of a counter variable.
  • the first server device 10 is a personal computer.
  • the first processing unit 11 is a CPU (Central Processing Unit)
  • the first storage unit 12 is a RAM (Random Access Memory) and a ROM (Read Only Memory).
  • the first database 13 is realized by an application program executed by the CPU and a table constructed in an auxiliary storage device such as an HDD (Hard Disk Drive).
  • FIG. 3 is a diagram showing the configuration of the second server device 20.
  • the second server device 20 includes a second processing section 21, a second storage section 22, and a second database 23.
  • the second processing unit 21 controls the operation of the second server device 20.
  • the second storage unit 22 has an area reserved for a second healthy counter 22a.
  • a control program for the industrial controller 40 is registered in the second database 23 .
  • the second server device 20 can create a second group to which one or more client devices 30 can join. By transmitting data to the second group, the second server device 20 can collectively transmit the same data to one or more client devices 30 that have joined the second group.
  • Such a mechanism can be realized by, for example, UDP multicast communication.
  • the second server device 20 is a personal computer.
  • the second processing unit 21 is a CPU
  • the second storage unit 22 is a RAM.
  • the second database 23 is realized by an application program executed by the CPU and a table constructed in an auxiliary storage device such as an HDD.
  • FIG. 4 is a diagram showing the configuration of the client device 30.
  • the client device 30 includes a third processing section 31, a third storage section 32, a display section 33, and an input section 34.
  • the client device 30 can access the database of the server device that manages the groups to which the client device 30 has joined. For example, if the client device 30 has joined the first group managed by the first server device 10, the client device 30 cannot access the first database 13 of the first server device 10. Can be done. Furthermore, if the client device 30 has joined the second group managed by the second server device 20, the client device 30 can access the second database 23 of the second server device 20. Can be done.
  • the user can use the functions provided by the first server device 10 or the second server device 20 via the client device 30. Specifically, by operating the client device 30, the user can create, edit, add, delete, etc. a control program to be executed by the industrial controller 40. Furthermore, by operating the client device 30, the user can register the created control program in the first database 13 or the second database 23. Further, by operating the client device 30, the user can transmit a control program registered in the first database 13 or the second database 23 to the industrial controller 40 and have it executed.
  • the client device 30 is a personal computer.
  • the third processing unit 31 is a CPU
  • the third storage unit 32 is a RAM and a ROM.
  • the display section 33 is, for example, a liquid crystal display
  • the input section 34 is, for example, a keyboard, a mouse, or the like.
  • the industrial controller 40 is a DCS (Distributed Control System), a PLC (Programmable Logic Controller), or the like.
  • the industrial controller 40 collects the state of the industrial plant based on signals received via the field device 50 and the field network 62 from sensors (not shown) attached to the controlled object.
  • the industrial controller 40 executes various calculations based on the collected plant status, and controls actuators (not shown) attached to the controlled object via the field network 62 and field devices 50 based on the calculation results. Control industrial plants by operating them.
  • the field device 50 is a device for inputting and outputting signals with various devices attached to a controlled object.
  • the field device 50 includes an AI (Analog Input) device or a DI (Digital Input) device to which signals from a sensor or the like attached to a controlled object are input.
  • the field device 50 includes an AO (Analog Output) device or a DO (Digital Output) device that outputs a signal to an actuator or the like attached to a controlled object.
  • the operation of the management system 100 according to the first embodiment will be described.
  • client device 30 when there is no need to distinguish between the two client devices 30a and 30b, they will be collectively referred to as client device 30.
  • the control network 61 is duplicated by the control networks 61a and 61b.
  • FIG. 5 is a diagram illustrating the normal operation of the management system 100.
  • the first server device 10 is in the master state
  • the second server device 20 is in the backup state.
  • the second server device 20 has joined the first group managed by the first server device 10 in the master state, and receives data sent from the first server device 10 to the first group. can do.
  • the first database 13 of the first server device 10 and the second database 23 of the second server device 20 are equalized at a predetermined period, for example, every 30 seconds.
  • the equalization method is not particularly limited, as an example, the first server device 10 creates the first history information when updating the first database 13, and the second server device 20 Equalization is performed from the first database 13 to the second database 23 based on the first history information.
  • the two client devices 30a and 30b have joined a first group managed by the first server device 10 in the master state, and are unable to receive data sent from the first server device 10 to the first group. can be received. Further, the client devices 30a and 30b can access the first database 13 of the first server device 10.
  • the first server device 10 transmits data including the count value (first healthy signal) of its first healthy counter 12a to the first group at a constant period, for example, at a 3 second period.
  • This data also includes the machine name, IP address, and port number of the second server device 20 that is in a backup state.
  • the second server device 20 receives data sent from the first server device 10 to the first group at regular intervals, and based on the value of the first healthy signal included in the data, the second server device 20 It is determined whether or not the server device 10 is operating normally. Specifically, if the value of the first healthy signal received from the first server device 10 changes within a predetermined period, for example, 10 seconds, the second server device 20 It is determined that the device 10 is operating normally.
  • the client devices 30a and 30b receive data addressed to the first group from the first server device 10 at regular intervals, and based on the value of the first healthy signal included in the data, the client devices 30a and 30b receive the first healthy signal. It is determined whether the server device 10 is operating normally. In detail, if the value of the first healthy signal received from the first server device 10 changes during a predetermined period of time, for example 10 seconds, the client devices 30a and 30b 10 is determined to be operating normally.
  • an abnormality in the first server device 10 is a shutdown of the first server device 10, a stop of a function of an application executed on the first server device 10, an abnormality in the first database 13, a stop of a function of the operating system executed on the first server device 10, etc.
  • the value of the first healthy signal included in the data transmitted from the first server device 10 to the first group at regular intervals does not change. .
  • the second server device 20 detecting this determines that the first server device 10 is not operating normally, and switches from the backup state to the master state.
  • the second server device 20 that has switched to the master state leaves the first group and creates a second group.
  • the second server device 20 transmits data including the count value of its own second healthy counter 22a (second healthy signal) to the second group at a constant cycle, for example, at a 3 second cycle. .
  • the client devices 30a and 30b can continue to access the second database 23 of the second server device 20.
  • the first server device 10 when the first server device 10 is restored, the first server device 10 enters the backup state and joins the second group. At this time, equalization from the second database 23 to the first database 13 is performed.
  • the client devices 30a and 30b can continue to access the second database 23 of the second server device 20.
  • (At the time of communication failure of the first server device) 7A to 7D are diagrams illustrating the operation of the first server device 10 when a communication failure occurs.
  • the communication failure of the first server device 10 is a communication failure between the first server device 10 and the duplicated control networks 61a and 61b.
  • a first healthy signal is sent from the first server device 10 to the first group at regular intervals.
  • the data including this will no longer reach the second server device 20.
  • the second server device 20 detecting this determines that a communication failure has occurred in the first server device 10, and switches from the backup state to the master state.
  • the second server device 20 that has switched to the master state leaves the first group and creates a second group.
  • the client devices 30a and 30b when the client devices 30a and 30b do not receive data including the first healthy signal transmitted from the first server device 10 to the first group at a constant cycle, the client devices 30a and 30b It is determined that a communication failure has occurred, leaves the first group managed by the first server device 10, and joins the second group created by the second server device 20.
  • the second server device 20 transmits data including the count value of its own second healthy counter 22a (second healthy signal) to the second group at a constant cycle, for example, at a 3-second cycle.
  • the client devices 30a and 30b confirm the reception of the data including the second healthy signal transmitted from the second server device 20 to the second group, the client devices 30a and 30b update the data in the second database 23 of the second server device 20. become accessible.
  • the first server device 10 when the communication failure between the first server device 10 and the control networks 61a and 61b is restored, the first server device 10 enters the backup state and joins the second group. At this time, equalization from the second database 23 to the first database 13 is performed. The client devices 30a and 30b can continue to access the second database 23 of the second server device 20.
  • FIGS. 8A and 8B are diagrams illustrating the operation of the second server device 20 when a communication failure occurs.
  • the communication failure of the second server device 20 is a communication failure between the second server device 20 and the duplicated control networks 61a and 61b.
  • FIG. 8A when a communication failure occurs between the second server device 20 and the control networks 61a and 61b, a first healthy signal is sent from the first server device 10 to the first group at regular intervals. The data including this will no longer reach the second server device 20.
  • the second server device 20 detecting this incorrectly determines that a communication failure has occurred in the first server device 10, and switches from the backup state to the master state.
  • the second server device 20 that has switched to the master state leaves the first group and creates a second group.
  • the client devices 30a and 30b can receive data including the first healthy signal that is periodically transmitted from the first server device 10 to the first group. Therefore, the client devices 30a and 30b can continue to access the first database 13 of the first server device 10.
  • the second server device 20 when the communication failure between the second server device 20 and the control networks 61a and 61b is restored, the second server device 20 enters the backup state again and joins the first group. At this time, equalization is performed from the first database 13 to the second database 23. The client devices 30a and 30b can continue to access the first database 13 of the first server device 10.
  • FIGS. 9A and 9B are diagrams illustrating the operation when both the first server device 10 and the second server device 20 are in the master state. Such a state can occur due to a communication failure occurring between the first server device 10 and the control network 61b and a communication failure occurring between the second server device 20 and the control network 61a. .
  • data including the first healthy signal transmitted from the first server device 10 to the first group at regular intervals no longer reaches the second server device 20.
  • the second server device 20 detecting this switches from the backup state to the master state.
  • the second server device 20 that has switched to the master state leaves the first group and creates a second group.
  • the client device 30b is managed by the first server device 10 when the data including the first healthy signal transmitted from the first server device 10 to the first group at a fixed period no longer arrives.
  • the user leaves the first group and joins the second group generated by the second server device 20. This causes the client device 30b to access the second database 23 of the second server device 20.
  • the client device 30a can receive data including the first healthy signal transmitted from the first server device 10 to the first group at regular intervals, the client device 30a is managed by the first server device 10. Stay in the first group. Therefore, the client device 30a continues to access the first database 13 of the first server device 10. If such a state continues, the contents of the first database 13 and the contents of the second database 23 will diverge.
  • the first server device 10 maintains the master state and continues transmitting data including the first healthy signal.
  • the second server device 20 receives the data including the first healthy signal transmitted from the first server device 10, it switches from the master state to the backup state, rejoins the first group, and 2. Stop sending data including the healthy signal.
  • the client device 30a remains in the first group and continues to access the first database 13 of the first server device 10.
  • the client device 30b no longer receives data including the second healthy signal transmitted from the second server device 20, it leaves the second group and rejoins the first group. This allows the client device 30b to access the first database 13 of the first server device 10 again. At this time, equalization between the first database 13 and the second database 23 is performed.
  • the first server device 10 is in the master state and the second server device 20 is in the backup state during normal operation. Furthermore, the second server device 20 has joined the first group that receives data transmitted from the first server device 10.
  • the first server device 10 transmits a first healthy signal to the first group at regular intervals, and the second server device 20 transmits a first healthy signal to the first group from the first server device 10. Based on the first healthy signal, the backup state is switched to the master state.
  • redundancy can be achieved using two server devices. As a result, only two server devices are required compared to three in the past, resulting in a significant cost reduction. Further, since the second server device 20 is automatically switched from the backup state to the master state, it is possible to save the user's effort for switching.
  • the client device 30 joins the first group managed by the first server device 10. Based on the first healthy signal transmitted from the first server device 10 to the first group, the client device 30 leaves the first group and receives the second healthy signal generated by the second server device 20. Join the group. Thereby, when the second server device 20 switches to the master state, the client device 30 automatically connects to the second server device 20. Therefore, the trouble of switching by the user can be saved.
  • the client device 30 when the client device 30 has joined the first group, the client device 30 accesses the first database 13 of the first server device 10, and when it has joined the second group, the client device 30 accesses the first database 13 of the first server device 10.
  • the second database 23 of the server device 20 is accessed. Thereby, the client device 30 can always access the database of the server device in the master state.
  • the first server device 10 creates a first update history when updating the first database 13, and the second server device 20 creates a second update history from the first database 13 based on the first update history. is equalized into the database 23.
  • the second server device creates a second update history when updating the second database, and the first server device 10 updates the first database from the second database 23 based on the second update history. Perform equalization to 13. Thereby, the contents of the first database 13 and the second database 23 can always be kept the same.
  • This embodiment can also have the following configuration.
  • “Item 1] (First server device, second server device) A control program management system for an industrial controller, a first server device including a first processing unit and a first database in which the control program is registered; a second server device including a second processing unit and a second database in which the control program is registered; During normal operation, the first processing unit of the first server device is in a master state, the second processing unit of the second server device is in a backup state, and the second server device is in a backup state.
  • [Item 3] (First server device, second server device) The management system according to item 2, wherein the second processing unit of the second server device transmits a second healthy signal to the second group at regular intervals.
  • the first healthy signal is a signal that is counted up or down at a predetermined period, The second processing unit of the second server device, when the value of the first healthy signal transmitted from the first server device to the first group does not change over a predetermined period, The management system according to any one of items 1 to 3, wherein the management system switches from the backup state to the master state.
  • the second processing unit of the second server device is configured to change the master processing unit from the backup state when the first healthy signal transmitted from the first server device to the first group is not received.
  • the management system according to any one of items 1 to 4, which switches to a state.
  • [Item 6] (Client device) further comprising one or more client devices including a third processing unit, During the normal operation, the client device has joined the first group, The third processing unit of the client device leaves the first group based on the first healthy signal transmitted from the first server device to the first group, and The management system according to item 2, joining the second group.
  • [Item 7] (Client device) When the third processing unit of the client device has joined the first group, the third processing unit of the client device accesses the first database of the first server device and joins the second group.
  • the management system according to item 6, wherein the management system accesses the second database of the second server device when the server device is in use.
  • [Item 8] (Database equalization) The first processing unit of the first server device creates a first update history when updating the first database, and the second processing unit of the second server device creates a first update history when updating the first database, and the second processing unit of the second server device creates a first update history when updating the first database.
  • the management system according to any one of items 1 to 7, wherein the management system performs equalization from the second database to the first database based on an update history of the database.
  • Control system 10 First server device 11 First processing unit 12 First memory unit 12a First healthy counter 13 First database 20 Second server device 21 Second processing unit 22 Second memory unit 22a Second healthy counter 23 Second database 30 Client device 30a Client device 30b Client device 31 Third processing unit 32 Third memory unit 33 Display unit 34 Input unit 40 Industrial controller 50 Field device 61 Control network 61a Control network 61b Control network 62 Field network 100 Management system

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • Hardware Redundancy (AREA)
  • Safety Devices In Control Systems (AREA)
  • Programmable Controllers (AREA)

Abstract

管理システムは、第1のサーバ装置と、第2のサーバ装置とを備えている。通常動作時において、第1のサーバ装置はマスタ状態であり、第2のサーバ装置はバックアップ状態である。第2のサーバ装置は、第1のサーバ装置から送信されるデータを受信する第1のグループに加入している。第1のサーバ装置は、第1のヘルシー信号を一定周期で第1のグループ宛に送信する。第2のサーバ装置は、第1のサーバ装置から第1のグループ宛に送信される第1のヘルシー信号に基づいて、バックアップ状態からマスタ状態に切り替わる。

Description

産業用コントローラの制御プログラムの管理システム
 本実施の形態は、産業用コントローラの制御プログラムの管理システムに関する。
 産業プラントの制御システムは、産業用コントローラの制御プログラムを管理する管理システムを含んでいる。管理システムは、サーバ装置と複数のクライアント装置とから構成されている。大規模な産業プラントでは、クライアント装置の数は数十台から数百台にもなる。
特開2020-135157号公報
 上記のような管理システムにおいて、サーバ装置を冗長化する要求が存在する。しかしながら、一般的な冗長化の技術では、例えばサーバ装置を2台にすると、その2台のサーバ装置を制御するための別の1台のサーバ装置が必要となり、合計3台のサーバ装置が必要となる。
 本実施の形態は、上記のような課題を解決するためのものであり、2台のサーバ装置によって冗長化を実現することができる、産業用コントローラの制御プログラムの管理システムを提供することを目的とする。
 上記の課題を解決するために、本実施の形態に係る産業用コントローラの制御プログラムの管理システムは、第1の処理部および制御プログラムが登録される第1のデータベースを含む第1のサーバ装置と、第2の処理部およびプログラムが登録される第2のデータベースを含む第2のサーバ装置とを備える。通常動作時において、第1のサーバ装置の第1の処理部はマスタ状態であり、第2のサーバ装置の第2の処理部はバックアップ状態であり、第2のサーバ装置は、第1のサーバ装置から送信されるデータを受信する第1のグループに加入している。第1のサーバ装置の第1の処理部は、第1のヘルシー信号を一定周期で第1のグループ宛に送信し、第2のサーバ装置の第2の処理部は、第1のサーバ装置から第1のグループ宛に送信される第1のヘルシー信号に基づいて、バックアップ状態からマスタ状態に切り替わる。
実施の形態1に係る産業プラントの制御システムの構成を示す図。 第1のサーバ装置の構成を示す図。 第2のサーバ装置の構成を示す図。 クライアント装置の構成を示す図。 管理システムの正常時の動作を説明する図。 第1のサーバ装置の異常発生時の動作を説明する図。 第1のサーバ装置の異常発生時の動作を説明する図。 第1のサーバ装置の異常発生時の動作を説明する図。 第1のサーバ装置の異常発生時の動作を説明する図。 第1のサーバ装置の通信障害時の動作を説明する図。 第1のサーバ装置の通信障害時の動作を説明する図。 第1のサーバ装置の通信障害時の動作を説明する図。 第1のサーバ装置の通信障害時の動作を説明する図。 第2のサーバ装置の通信障害時の動作を説明する図。 第2のサーバ装置の通信障害時の動作を説明する図。 2つのサーバ装置がともにマスタ状態となる場合の動作を説明する図。 2つのサーバ装置がともにマスタ状態となる場合の動作を説明する図。 2つのサーバ装置がともにマスタ状態となる場合の動作を説明する図。 2つのサーバ装置がともにマスタ状態となる場合の動作を説明する図。
 以下では、図面を参照しながら、本実施の形態について説明する。なお、以降の説明では、本実施の形態に係る制御システムを産業プラントの制御に使用する例に基づいて説明する。ただし、本実施の形態に係る制御システムの適用可能な範囲は、産業プラントの制御に限定されるものではない。また、図面において同一または対応する要素には同じ参照符号を付して、詳細な説明は適宜省略する。
 (実施の形態1)
 図1は、実施の形態1に係る産業プラントの制御システム1の構成を示す図である。制御システム1は、産業用コントローラの制御プログラムを管理する管理システム100を含んでいる。管理システム100は、第1のサーバ装置10と、第2のサーバ装置20と、1つまたは複数のクライアント装置30とを備えている。管理システム100は冗長化された構成を有しており、通常動作時には、第1のサーバ装置10がマスタ状態、すなわち稼働状態であり、第2のサーバ装置20がバックアップ状態、すなわち待機状態である。第1のサーバ装置10、第2のサーバ装置20、およびクライアント装置30は、制御ネットワーク61に接続されている。
 制御ネットワーク61には、1つまたは複数の産業用コントローラ40が接続されている。産業用コントローラ40は、フィールドネットワーク62に接続されている。フィールドネットワーク62には、1つまたは複数のフィールド機器50が接続されている。なお、制御ネットワーク61およびフィールドネットワーク62の具体的な実現方法は特に限定されるものではないが、一例として、制御ネットワーク61およびフィールドネットワーク62は、イーサネット(登録商標)である。また、制御ネットワーク61は、二重化されていてもよい。
 図2は、第1のサーバ装置10の構成を示す図である。第1のサーバ装置10は、第1の処理部11と、第1の記憶部12と、第1のデータベース13とを備えている。第1の処理部11は、第1のサーバ装置10の動作を制御する。第1の記憶部12には、第1のヘルシーカウンタ12aの領域が確保されている。第1のデータベース13には、産業用コントローラ40の制御プログラムが登録される。
 第1のサーバ装置10は、第2のサーバ装置20および1つまたは複数のクライアント装置30が加入することができる第1のグループを管理している。第1のサーバ装置10は、第1のグループ宛にデータを送信することにより、第1のグループに加入している第2のサーバ装置20および1つまたは複数のクライアント装置30に同一のデータを一括送信することができる。このような仕組みは、例えば、UDP(User Datagram Protocol)のマルチキャスト通信によって実現することができる。
 第1のヘルシーカウンタ12aは、第1のサーバ装置10が正常に機能している間は、所定の周期、例えば1秒周期でカウントアップまたはカウントダウンされる。このような仕組みは、例えば、所定の周期で割り込みを発生させてカウンタ変数の値をインクリメントまたはデクリメントすることによって実現することができる。
 第1のサーバ装置10の具体的な実現方法は特に限定されるものではないが、一例として、第1のサーバ装置10は、パーソナルコンピュータである。この場合、第1の処理部11はCPU(Central Processing Unit)であり、第1の記憶部12はRAM(Random Access Memory)およびROM(Read Only Memory)である。また、第1のデータベース13は、CPUによって実行されるアプリケーションプログラムと、HDD(Hard Disk Drive)等の補助記憶装置内に構築されるテーブルとによって実現される。
 図3は、第2のサーバ装置20の構成を示す図である。第2のサーバ装置20は、第2の処理部21と、第2の記憶部22と、第2のデータベース23とを備えている。第2の処理部21は、第2のサーバ装置20の動作を制御する。第2の記憶部22には、第2のヘルシーカウンタ22aの領域が確保されている。第2のデータベース23には、産業用コントローラ40の制御プログラムが登録される。
 第2のサーバ装置20は、1つまたは複数のクライアント装置30が加入することができる第2のグループを生成することができる。第2のサーバ装置20は、第2のグループ宛にデータを送信することにより、第2のグループに加入している1つまたは複数のクライアント装置30に同一のデータを一括送信することができる。このような仕組みは、例えば、UDPのマルチキャスト通信によって実現することができる。
 第2のサーバ装置20の具体的な実現方法は特に限定されるものではないが、一例として、第2のサーバ装置20は、パーソナルコンピュータである。この場合、第2の処理部21はCPUであり、第2の記憶部22はRAMおよびRAMである。また、第2のデータベース23は、CPUによって実行されるアプリケーションプログラムと、HDD等の補助記憶装置内に構築されるテーブルとによって実現される。
 図4は、クライアント装置30の構成を示す図である。クライアント装置30は、第3の処理部31と、第3の記憶部32と、表示部33と、入力部34とを備えている。クライアント装置30は、自身が加入しているグループを管理するサーバ装置のデータベースにアクセスすることができる。例えば、クライアント装置30が第1のサーバ装置10の管理する第1のグループに加入している場合には、当該クライアント装置30は、第1のサーバ装置10の第1のデータベース13にアクセスすることができる。また、クライアント装置30が第2のサーバ装置20の管理する第2のグループに加入している場合には、当該クライアント装置30は、第2のサーバ装置20の第2のデータベース23にアクセスすることができる。
 ユーザは、クライアント装置30を経由して第1のサーバ装置10または第2のサーバ装置20が提供する機能を利用することができる。具体的には、ユーザは、クライアント装置30を操作することにより、産業用コントローラ40で実行される制御プログラムの作成、編集、追加、削除等を行うことができる。また、ユーザは、クライアント装置30を操作することにより、作成した制御プログラムを第1のデータベース13または第2のデータベース23に登録することができる。また、ユーザは、クライアント装置30を操作することにより、第1のデータベース13または第2のデータベース23に登録されている制御プログラムを産業用コントローラ40に送信して実行させることができる。
 クライアント装置30の具体的な実現方法は特に限定されるものではないが、一例として、クライアント装置30は、パーソナルコンピュータである。この場合、第3の処理部31はCPUであり、第3の記憶部32はRAMおよびROMである。また、表示部33は、例えば液晶ディスプレイであり、入力部34は、例えばキーボードおよびマウス等である。
 図1に戻って、産業用コントローラ40は、DCS(Distributed Control System)またはPLC(Programable Logic Controller)等である。産業用コントローラ40は、制御対象に取り付けられた図示しないセンサー等からフィールド機器50およびフィールドネットワーク62を介して受信される信号に基づいて、産業プラントの状態を収集する。
 産業用コントローラ40は、収集されたプラントの状態に基づいて各種の演算を実行し、演算結果に基づいて、フィールドネットワーク62およびフィールド機器50を介して、制御対象に取り付けられた図示しないアクチュエータ等を動作させることにより、産業プラントを制御する。
 フィールド機器50は、制御対象に取り付けられた各種装置との間で信号の入出力を行うための機器である。フィールド機器50は、制御対象に取り付けられたセンサー等からの信号が入力されるAI(Analog Input)機器またはDI(Digital Input)機器等を含んでいる。また、フィールド機器50は、制御対象に取り付けられたアクチュエータ等への信号を出力するAO(Analog Output)機器またはDO(Digital Output)機器等を含んでいる。
 次に、本実施の形態1に係る管理システム100の動作について説明する。以降の説明では、2つのクライアント装置30aおよび30bがあるものとして説明する。また、2つのクライアント装置30aおよび30bを区別する必要のないときは、両者をまとめてクライアント装置30と記載する。また、制御ネットワーク61は、制御ネットワーク61aおよび61bによって二重化されている。
 (正常時の動作)
 図5は、管理システム100の正常時の動作を説明する図である。管理システム100の正常動作時には、第1のサーバ装置10がマスタ状態であり、第2のサーバ装置20はバックアップ状態である。第2のサーバ装置20は、マスタ状態である第1のサーバ装置10が管理する第1のグループに加入しており、第1のサーバ装置10から第1のグループ宛に送信されるデータを受信することができる。
 第1のサーバ装置10の第1のデータベース13と第2のサーバ装置20の第2のデータベース23とは、所定の周期、例えば30秒周期で等値化される。等値化の方法は特に限定されるものではないが、一例として、第1のサーバ装置10が第1のデータベース13の更新時に第1の履歴情報を作成し、第2のサーバ装置20は、第1の履歴情報に基づいて、第1のデータベース13から第2のデータベース23への等値化を行う。
 2つのクライアント装置30aおよび30bは、マスタ状態である第1のサーバ装置10が管理する第1のグループに加入しており、第1のサーバ装置10から第1のグループ宛に送信されるデータを受信することができる。また、クライアント装置30aおよび30bは、第1のサーバ装置10の第1のデータベース13にアクセスすることができる。
 第1のサーバ装置10は、第1のグループ宛に自身の第1のヘルシーカウンタ12aのカウント値(第1のヘルシー信号)を含むデータを一定周期、例えば3秒周期で送信する。また、このデータには、バックアップ状態である第2のサーバ装置20のマシン名、IPアドレス、ポート番号が含まれている。
 第2のサーバ装置20は、第1のサーバ装置10から第1のグループ宛に一定周期で送信されるデータを受信し、当該データに含まれる第1のヘルシー信号の値に基づいて、第1のサーバ装置10が正常に動作しているか否かを判定する。詳細には、第2のサーバ装置20は、第1のサーバ装置10から受信される第1のヘルシー信号の値が所定の期間、例えば10秒の間に変化する場合には、第1のサーバ装置10は正常に動作していると判定する。
 クライアント装置30aおよび30bは、第1のサーバ装置10から第1のグループ宛に一定周期で受信されるデータを受信し、当該データに含まれる第1のヘルシー信号の値に基づいて、第1のサーバ装置10が正常に動作しているか否かを判定する。詳細には、クライアント装置30aおよび30bは、第1のサーバ装置10から受信される第1のヘルシー信号の値が所定の期間、例えば10秒の間に変化する場合には、第1のサーバ装置10は正常に動作していると判定する。
 (第1のサーバ装置の異常発生時)
 図6A~図6Dは、第1のサーバ装置10の異常発生時の動作を説明する図である。第1のサーバ装置10の異常とは、具体的には、第1のサーバ装置10のシャットダウン、第1のサーバ装置10上で実行されるアプリケーションの機能停止、第1のデータベース13の異常、第1のサーバ装置10上で実行されるオペレーティングシステムの機能停止等である。
 図6Aにおいて、第1のサーバ装置10に異常が発生すると、第1のサーバ装置10から第1のグループ宛に一定周期で送信されるデータに含まれる第1のヘルシー信号の値が変化しなくなる。これを検知した第2のサーバ装置20は、第1のサーバ装置10が正常に動作していないと判断し、バックアップ状態からマスタ状態に切り替わる。マスタ状態に切り替わった第2のサーバ装置20は、第1のグループから離脱し、第2のグループを生成する。
 図6Bにおいて、クライアント装置30aおよび30bは、第1のサーバ装置10から第1のグループ宛に一定周期で送信されるデータに含まれる第1のヘルシー信号の値が変化しなくなったことを検知すると、第1のサーバ装置10が正常に動作していないと判断し、第1のサーバ装置10が管理する第1のグループを離脱し、第2のサーバ装置20が生成した第2のグループに加入する。これにより、クライアント装置30aおよび30bは、第2のサーバ装置20の第2のデータベース23にアクセスできるようになる。
 図6Cにおいて、第2のサーバ装置20は、第2のグループ宛に自身の第2のヘルシーカウンタ22aのカウント値(第2のヘルシー信号)を含むデータを一定周期、例えば3秒周期で送信する。この間、クライアント装置30aおよび30bは、第2のサーバ装置20の第2のデータベース23にアクセスし続けることができる。
 図6Dにおいて、第1のサーバ装置10が復旧すると、第1のサーバ装置10はバックアップ状態となり、第2のグループに加入する。この際、第2のデータベース23から第1のデータベース13への等値化が行われる。クライアント装置30aおよび30bは、第2のサーバ装置20の第2のデータベース23にアクセスし続けることができる。
 (第1のサーバ装置の通信障害時)
 図7A~図7Dは、第1のサーバ装置10の通信障害時の動作を説明する図である。第1のサーバ装置10の通信障害とは、具体的には、第1のサーバ装置10と二重化された制御ネットワーク61aおよび61bとの間の通信障害である。
 図7Aにおいて、第1のサーバ装置10と制御ネットワーク61aおよび61bとの間の通信障害が発生すると、第1のサーバ装置10から第1のグループ宛に一定周期で送信される第1のヘルシー信号を含むデータが第2のサーバ装置20に届かなくなる。これを検知した第2のサーバ装置20は、第1のサーバ装置10の通信障害が発生したと判断し、バックアップ状態からマスタ状態に切り替わる。マスタ状態に切り替わった第2のサーバ装置20は、第1のグループから離脱し、第2のグループを生成する。
 図7Bにおいて、クライアント装置30aおよび30bは、第1のサーバ装置10から第1のグループ宛に一定周期で送信される第1のヘルシー信号を含むデータが届かなくなると、第1のサーバ装置10の通信障害が発生したと判断し、第1のサーバ装置10が管理する第1のグループを離脱し、第2のサーバ装置20が生成した第2のグループに加入する。
 図7Cにおいて、第2のサーバ装置20は、第2のグループ宛に自身の第2のヘルシーカウンタ22aのカウント値(第2のヘルシー信号)を含むデータを一定周期、例えば3秒周期で送信する。クライアント装置30aおよび30bは、第2のサーバ装置20から第2のグループ宛に送信される第2のヘルシー信号を含むデータの受信を確認すると、第2のサーバ装置20の第2のデータベース23にアクセスできるようになる。
 図7Dにおいて、第1のサーバ装置10と制御ネットワーク61aおよび61bとの間の通信障害が復旧すると、第1のサーバ装置10はバックアップ状態となり、第2のグループに加入する。この際、第2のデータベース23から第1のデータベース13への等値化が行われる。クライアント装置30aおよび30bは、第2のサーバ装置20の第2のデータベース23にアクセスし続けることができる。
 (第2のサーバ装置の通信障害時)
 図8A~図8Bは、第2のサーバ装置20の通信障害時の動作を説明する図である。第2のサーバ装置20の通信障害とは、具体的には、第2のサーバ装置20と二重化された制御ネットワーク61aおよび61bとの間の通信障害である。
 図8Aにおいて、第2のサーバ装置20と制御ネットワーク61aおよび61bとの間の通信障害が発生すると、第1のサーバ装置10から第1のグループ宛に一定周期で送信される第1のヘルシー信号を含むデータが第2のサーバ装置20に届かなくなる。これを検知した第2のサーバ装置20は、第1のサーバ装置10の通信障害が発生したと誤って判断し、バックアップ状態からマスタ状態に切り替わってしまう。マスタ状態に切り替わった第2のサーバ装置20は、第1のグループから離脱し、第2のグループを生成する。
 しかしながら、実際には第1のサーバ装置10の通信障害は発生していないので、クライアント装置30aおよび30bは、第1のサーバ装置10から第1のグループ宛に一定周期で送信される第1のヘルシー信号を含むデータを受信することができる。したがって、クライアント装置30aおよび30bは、第1のサーバ装置10の第1のデータベース13にアクセスし続けることができる。
 図8Bにおいて、第2のサーバ装置20と制御ネットワーク61aおよび61bとの間の通信障害が復旧すると、第2のサーバ装置20は再びバックアップ状態となり、第1のグループに加入する。この際、第1のデータベース13から第2のデータベース23への等値化が行われる。クライアント装置30aおよび30bは、第1のサーバ装置10の第1のデータベース13にアクセスし続けることができる。
 (2つのサーバ装置がともにマスタ状態となる場合)
 図9A~図9Bは、第1のサーバ装置10および第2のサーバ装置20がともにマスタ状態となる場合の動作を説明する図である。このような状態は、第1のサーバ装置10と制御ネットワーク61bとの間に通信障害が発生するとともに、第2のサーバ装置20と制御ネットワーク61aとの間に通信障害が発生することにより起こりえる。
 図9Aにおいて、第1のサーバ装置10から第1のグループ宛に一定周期で送信される第1のヘルシー信号を含むデータが第2のサーバ装置20に届かなくなる。これを検知した第2のサーバ装置20は、バックアップ状態からマスタ状態に切り替わる。マスタ状態に切り替わった第2のサーバ装置20は、第1のグループから離脱し、第2のグループを生成する。
 図9Bにおいて、クライアント装置30bは、第1のサーバ装置10から第1のグループ宛に一定周期で送信される第1のヘルシー信号を含むデータが届かなくなると、第1のサーバ装置10が管理する第1のグループを離脱し、第2のサーバ装置20が生成した第2のグループに加入する。これにより、クライアント装置30bは、第2のサーバ装置20の第2のデータベース23にアクセスするようになる。
 一方、クライアント装置30aは、第1のサーバ装置10から第1のグループ宛に一定周期で送信される第1のヘルシー信号を含むデータを受信することができるため、第1のサーバ装置10が管理する第1のグループに留まる。したがって、クライアント装置30aは、第1のサーバ装置10の第1のデータベース13にアクセスし続ける。このような状態が継続することにより、第1のデータベース13の内容と第2のデータベース23の内容とが乖離していく。
 図9Cにおいて、制御ネットワーク61aおよび61bの通信障害がすべて復旧すると、第1のサーバ装置10は、マスタ状態を維持し、第1のヘルシー信号を含むデータの送信を継続する。一方、第2のサーバ装置20は、第1のサーバ装置10から送信される第1のヘルシー信号を含むデータを受信すると、マスタ状態からバックアップ状態に切り替わり、第1のグループに再加入し、第2のヘルシー信号を含むデータの送信を停止する。
 図9Dにおいて、クライアント装置30aは、第1のグループに留まり、第1のサーバ装置10の第1のデータベース13にアクセスし続ける。一方、クライアント装置30bは、第2のサーバ装置20から送信される第2のヘルシー信号を含むデータが届かなくなると、第2のグループを離脱して、第1のグループに再加入する。これにより、クライアント装置30bは、第1のサーバ装置10の第1のデータベース13に再びアクセスできるようになる。この際、第1のデータベース13と第2のデータベース23との等値化が行われる。
 以上説明したように、本実施の形態1に係る管理システム100では、通常動作時において、第1のサーバ装置10はマスタ状態であり、第2のサーバ装置20はバックアップ状態である。また、第2のサーバ装置20は、第1のサーバ装置10から送信されるデータを受信する第1のグループに加入している。
 第1のサーバ装置10は、第1のヘルシー信号を一定周期で第1のグループ宛に送信し、第2のサーバ装置20は、第1のサーバ装置10から第1のグループ宛に送信される第1のヘルシー信号に基づいて、バックアップ状態からマスタ状態に切り替わる。
 上記の特徴により、本実施の形態1に係る管理システム100では、2台のサーバ装置によって冗長化を実現することができる。これにより、従来は3台必要であったサーバ装置が2台ですむため、大幅なコストダウンとなる。また、第2のサーバ装置20のバックアップ状態からマスタ状態への切り替えが自動で行われるため、ユーザによる切り替えの手間を省くことができる。
 また、通常動作時において、クライアント装置30は、第1のサーバ装置10が管理する第1のグループに加入している。クライアント装置30は、第1のサーバ装置10から第1のグループ宛に送信される第1のヘルシー信号に基づいて、第1のグループから離脱して、第2のサーバ装置20が生成した第2のグループに加入する。これにより、第2のサーバ装置20がマスタ状態に切り替わった際に、クライアント装置30は自動的に第2のサーバ装置20に接続するようになる。したがって、ユーザによる切り替えの手間を省くことができる。
 また、クライアント装置30は、第1のグループに加入している際は、第1のサーバ装置10の第1のデータベース13にアクセスし、第2のグループに加入している際は、第2のサーバ装置20の第2のデータベース23にアクセスする。これにより、クライアント装置30は、常にマスタ状態のサーバ装置のデータベースにアクセスすることができる。
 第1のサーバ装置10は、第1のデータベース13の更新時に第1の更新履歴を作成し、第2のサーバ装置20は、第1の更新履歴に基づいて、第1のデータベース13から第2のデータベース23への等値化を行う。第2のサーバ装置は、第2のデータベースの更新時に第2の更新履歴を作成し、第1のサーバ装置10は、第2の更新履歴に基づいて、第2のデータベース23から第1のデータベース13への等値化を行う。これにより、第1のデータベース13および第2のデータベース23の内容を常に同一に保つことができる。
 幾つかの実施の形態を説明したが、これらの実施の形態は例として提示したものであり、実施の形態の範囲を限定することは意図していない、これらの実施の形態は、その他の様々な形態で実施されることが可能であり、実施の形態の要旨を逸脱しない範囲で、種々の省略、置き換え、変更、組み合わせを行うことができる。これら実施の形態やその変形は、実施の形態の範囲や要旨に含まれると同様に、特許請求の範囲とその均等の範囲に含まれるものである。
 なお、本実施の形態は、以下のような構成を取ることもできる。
[項目1](第1のサーバ装置、第2のサーバ装置)
 産業用コントローラの制御プログラムの管理システムであって、
 第1の処理部および前記制御プログラムが登録される第1のデータベースを含む第1のサーバ装置と、
 第2の処理部および前記制御プログラムが登録される第2のデータベースを含む第2のサーバ装置と
を備え、
 通常動作時において、前記第1のサーバ装置の前記第1の処理部はマスタ状態であり、前記第2のサーバ装置の前記第2の処理部はバックアップ状態であり、前記第2のサーバ装置は、前記第1のサーバ装置から送信されるデータを受信する第1のグループに加入しており、
 前記第1のサーバ装置の前記第1の処理部は、第1のヘルシー信号を一定周期で前記第1のグループ宛に送信し、
 前記第2のサーバ装置の前記第2の処理部は、前記第1のサーバ装置から前記第1のグループ宛に送信される前記第1のヘルシー信号に基づいて、前記バックアップ状態から前記マスタ状態に切り替わる、管理システム。
[項目2](第1のサーバ装置、第2のサーバ装置)
 前記第2のサーバ装置の前記第2の処理部は、前記マスタ状態に切り替わると、前記第1のグループから離脱して、前記第2のサーバ装置から送信されるデータを受信する第2のグループを生成する、項目1に記載の管理システム。
[項目3](第1のサーバ装置、第2のサーバ装置)
 前記第2のサーバ装置の前記第2の処理部は、第2のヘルシー信号を一定周期で前記第2のグループ宛に送信する、項目2に記載の管理システム。
[項目4](第1のサーバ装置、第2のサーバ装置)
 前記第1のヘルシー信号は、所定の周期でカウントアップまたはカウントダウンされる信号であり、
 前記第2のサーバ装置の前記第2の処理部は、前記第1のサーバ装置から前記第1のグループ宛に送信される前記第1のヘルシー信号の値が所定の期間にわたって変化しない場合に、前記バックアップ状態から前記マスタ状態に切り替わる、項目1~3のいずれかに記載の管理システム。
[項目5](第1のサーバ装置、第2のサーバ装置)
 前記第2のサーバ装置の前記第2の処理部は、前記第1のサーバ装置から前記第1のグループ宛に送信される前記第1のヘルシー信号が受信されない場合に、前記バックアップ状態から前記マスタ状態に切り替わる、項目1~4のいずれかに記載の管理システム。
[項目6](クライアント装置)
 第3の処理部を含む1つまたは複数のクライアント装置をさらに備え、
 前記通常動作時において、前記クライアント装置は、前記第1のグループに加入しており、
 前記クライアント装置の前記第3の処理部は、前記第1のサーバ装置から前記第1のグループ宛に送信される前記第1のヘルシー信号に基づいて、前記第1のグループから離脱して、前記第2のグループに加入する、項目2に記載の管理システム。
[項目7](クライアント装置)
 前記クライアント装置の前記第3の処理部は、前記第1のグループに加入している際は、前記第1のサーバ装置の前記第1のデータベースにアクセスし、前記第2のグループに加入している際は、前記第2のサーバ装置の前記第2のデータベースにアクセスする、項目6に記載の管理システム。
[項目8](データベースの等値化)
 前記第1のサーバ装置の前記第1の処理部は、前記第1のデータベースの更新時に第1の更新履歴を作成し、前記第2のサーバ装置の前記第2の処理部は、前記第1の更新履歴に基づいて、前記第1のデータベースから前記第2のデータベースへの等値化を行い、
 前記第2のサーバ装置の前記第2の処理部は、前記第2のデータベースの更新時に第2の更新履歴を作成し、前記第1のサーバ装置の前記第1の処理部は、前記第2の更新履歴に基づいて、前記第2のデータベースから前記第1のデータベースへの等値化を行う、項目1~7のいずれかに記載の管理システム。
1 制御システム
10 第1のサーバ装置
11 第1の処理部
12 第1の記憶部
12a 第1のヘルシーカウンタ
13 第1のデータベース
20 第2のサーバ装置
21 第2の処理部
22 第2の記憶部
22a 第2のヘルシーカウンタ
23 第2のデータベース
30 クライアント装置
30a クライアント装置
30b クライアント装置
31 第3の処理部
32 第3の記憶部
33 表示部
34 入力部
40 産業用コントローラ
50 フィールド機器
61 制御ネットワーク
61a 制御ネットワーク
61b 制御ネットワーク
62 フィールドネットワーク
100 管理システム

Claims (8)

  1.  産業用コントローラの制御プログラムの管理システムであって、
     第1の処理部および前記制御プログラムが登録される第1のデータベースを含む第1のサーバ装置と、
     第2の処理部および前記制御プログラムが登録される第2のデータベースを含む第2のサーバ装置と
    を備え、
     通常動作時において、前記第1のサーバ装置の前記第1の処理部はマスタ状態であり、前記第2のサーバ装置の前記第2の処理部はバックアップ状態であり、前記第2のサーバ装置は、前記第1のサーバ装置から送信されるデータを受信する第1のグループに加入しており、
     前記第1のサーバ装置の前記第1の処理部は、第1のヘルシー信号を一定周期で前記第1のグループ宛に送信し、
     前記第2のサーバ装置の前記第2の処理部は、前記第1のサーバ装置から前記第1のグループ宛に送信される前記第1のヘルシー信号に基づいて、前記バックアップ状態から前記マスタ状態に切り替わる、管理システム。
  2.  前記第2のサーバ装置の前記第2の処理部は、前記マスタ状態に切り替わると、前記第1のグループから離脱して、前記第2のサーバ装置から送信されるデータを受信する第2のグループを生成する、請求項1に記載の管理システム。
  3.  前記第2のサーバ装置の前記第2の処理部は、第2のヘルシー信号を一定周期で前記第2のグループ宛に送信する、請求項2に記載の管理システム。
  4.  前記第1のヘルシー信号は、所定の周期でカウントアップまたはカウントダウンされる信号であり、
     前記第2のサーバ装置の前記第2の処理部は、前記第1のサーバ装置から前記第1のグループ宛に送信される前記第1のヘルシー信号の値が所定の期間にわたって変化しない場合に、前記バックアップ状態から前記マスタ状態に切り替わる、請求項1に記載の管理システム。
  5.  前記第2のサーバ装置の前記第2の処理部は、前記第1のサーバ装置から前記第1のグループ宛に送信される前記第1のヘルシー信号が受信されない場合に、前記バックアップ状態から前記マスタ状態に切り替わる、請求項1に記載の管理システム。
  6.  第3の処理部を含む1つまたは複数のクライアント装置をさらに備え、
     前記通常動作時において、前記クライアント装置は、前記第1のグループに加入しており、
     前記クライアント装置の前記第3の処理部は、前記第1のサーバ装置から前記第1のグループ宛に送信される前記第1のヘルシー信号に基づいて、前記第1のグループから離脱して、前記第2のグループに加入する、請求項2に記載の管理システム。
  7.  前記クライアント装置の前記第3の処理部は、前記第1のグループに加入している際は、前記第1のサーバ装置の前記第1のデータベースにアクセスし、前記第2のグループに加入している際は、前記第2のサーバ装置の前記第2のデータベースにアクセスする、請求項6に記載の管理システム。
  8.  前記第1のサーバ装置の前記第1の処理部は、前記第1のデータベースの更新時に第1の更新履歴を作成し、前記第2のサーバ装置の前記第2の処理部は、前記第1の更新履歴に基づいて、前記第1のデータベースから前記第2のデータベースへの等値化を行い、
     前記第2のサーバ装置の前記第2の処理部は、前記第2のデータベースの更新時に第2の更新履歴を作成し、前記第1のサーバ装置の前記第1の処理部は、前記第2の更新履歴に基づいて、前記第2のデータベースから前記第1のデータベースへの等値化を行う、請求項1に記載の管理システム。
PCT/JP2023/017787 2022-09-21 2023-05-11 産業用コントローラの制御プログラムの管理システム WO2024062671A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2022150585A JP2024044823A (ja) 2022-09-21 2022-09-21 産業用コントローラの制御プログラムの管理システム
JP2022-150585 2022-09-21

Publications (1)

Publication Number Publication Date
WO2024062671A1 true WO2024062671A1 (ja) 2024-03-28

Family

ID=90454304

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2023/017787 WO2024062671A1 (ja) 2022-09-21 2023-05-11 産業用コントローラの制御プログラムの管理システム

Country Status (2)

Country Link
JP (1) JP2024044823A (ja)
WO (1) WO2024062671A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011048534A (ja) * 2009-08-26 2011-03-10 Nec Corp フォールトトレラントコンピュータ及び電源制御方法
JP2012181606A (ja) * 2011-02-28 2012-09-20 Toshiba Corp 監視システム
JP2015032152A (ja) * 2013-08-02 2015-02-16 株式会社東芝 情報処理システム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011048534A (ja) * 2009-08-26 2011-03-10 Nec Corp フォールトトレラントコンピュータ及び電源制御方法
JP2012181606A (ja) * 2011-02-28 2012-09-20 Toshiba Corp 監視システム
JP2015032152A (ja) * 2013-08-02 2015-02-16 株式会社東芝 情報処理システム

Also Published As

Publication number Publication date
JP2024044823A (ja) 2024-04-02

Similar Documents

Publication Publication Date Title
US7120820B2 (en) Redundant control system and control computer and peripheral unit for a control system of this type
US8516296B2 (en) Efficient architecture for interfacing redundant devices to a distributed control system
US8924498B2 (en) Method and system for process control network migration
US10042330B2 (en) Redundant process controllers for segregated supervisory and industrial control networks
JP3937230B2 (ja) プロセスデータ収集装置
US20210352158A1 (en) Redundancy In A Network Centric Process Control System
EP2530542B1 (en) Systems and methods for alert device removal
EP3175591B1 (en) System and method for controller redundancy and controller network redundancy with ethernet/ip i/o
US9361151B2 (en) Controller system with peer-to-peer redundancy, and method to operate the system
CA2594066A1 (en) Redundancy coupler for industrial communications networks
US11343206B2 (en) Redundant infrastructure for industrial automation distributed control systems
US9231779B2 (en) Redundant automation system
US10069538B2 (en) Fault tolerant physical layer solution for FOUNDATION FIELDBUS H1 networks or other networks in industrial process control and automation systems
CN110967969A (zh) 高可用性工业自动化系统及通过该系统传送信息的方法
EP3629110A1 (en) High availability industrial automation controller and method of operating the same
WO2024062671A1 (ja) 産業用コントローラの制御プログラムの管理システム
WO2019087849A1 (ja) 通信システム、被制御機器、及び、通信システムの制御方法
JP7326239B2 (ja) コントローラ、および、コントローラシステム
US20230058281A1 (en) Control System and Method for Fine-Grained Reconciliation of Local Archives in Master/Master Scenarios of Servers of a Technical Installation
JP2015207239A (ja) 制御システム、制御装置およびプログラム
Wołoszyk et al. High Availability of the Modern Railway Systems Using the Example of Axle Counter
Balasubramanian et al. Intelligent manufacturing system control
CN115473761A (zh) 基于dcs系统的can总线的通信方法、系统、设备及介质
JP2022025254A (ja) 分散制御システム
Kwiecień et al. Utilization of redundant communication network throughput for non-critical data exchange in networked control systems

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 23867802

Country of ref document: EP

Kind code of ref document: A1