Control system and control device

AU2023361835B2Pending Publication Date: 2026-08-20KK TOSHIBA
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
AU2023361835
Authority / Receiving Office
AU · AU
Patent Type
Applications
Current Assignee / Owner
Priority Date
2022-10-11
Filing Date
2023-10-02
Publication Date
2026-08-20

AI Technical Summary

Technical Problem

Industrial equipment downtime is unavoidable during software updates, requiring equipment to be stopped and resulting in inefficiencies.

Method used

A control system and device with a first processing unit, a second processing unit, and a switching management unit that allows seamless software updates by transferring control between units within a predetermined control cycle, enabling continuous operation without stopping the equipment.

Benefits of technology

Enables software updates without interrupting equipment operation, preventing downtime and ensuring continuous control processing by ensuring the second processing unit can start controlling the equipment using updated software within the next control cycle.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000001_0000
    Figure 00000001_0000
  • Figure 00000022_0000
    Figure 00000022_0000
  • Figure 00000023_0000
    Figure 00000023_0000
Patent Text Reader

Abstract

According to the present embodiment, a control device comprises a first processing unit, a switching management unit, and a second processing unit. The first processing unit executes control of the next control period on the basis of control information modified during the present control period. The switching management unit transmits, to the first processing unit, a switching notification for instructing switching to the first processing unit. The second processing unit can execute control of a machine through the repetition of a prescribed control period by using second software different from first software. The second processing unit, by the time of switching completion, which is the point in time at which the control period during current processing ends, uses at least modified control information, and when control of the machine in the next control period is possible thereby, starts the control of the machine in the next control period.
Need to check novelty before this filing date? Find Prior Art

Description

Control system and control device

[0001] FIELD OF THE INVENTION Embodiments of the present invention relate to a control system and a control device.

[0002] When updating software for industrial equipment, it is common to stop processing temporarily before updating. This means that downtime occurs during the update, which means that industrial equipment must be stopped when updating software.

[0003] Japanese Patent Application Publication No. 8-137815

[0004] In order to solve such problems, an object of this embodiment is to provide a control system and a control device that are capable of updating software without stopping the device controlled by the software.

[0005] According to this embodiment, the control device includes a first processing unit, a switching management unit, and a second processing unit. The first processing unit uses first software to repeatedly control a device at a predetermined control period, and executes control for the next control period based on control information changed during the current control period. The switching management unit transmits a switching notification to the first processing unit to instruct switching to the first processing unit. The second processing unit is capable of repeatedly controlling the device at a predetermined control period using second software different from the first software. The second processing unit starts control of the device at the next control period if it is possible to control the device at the next control period using at least the changed control information by the switching completion time, which is the time when the control period currently being processed ends.

[0006] Software updates can be performed without shutting down the device.

[0007] A block diagram showing an example of the configuration of a control device according to this embodiment. A diagram showing an example of a control period of a first processing unit. A diagram showing an example of a message sequence chart when a second processing unit starts control processing. A diagram showing an example of a message sequence chart when control processing is not started. A diagram showing an example of a message sequence chart according to a first modified example of the first embodiment. A diagram showing an example of a message sequence chart when handover is not completed in time. A block diagram showing an example of the configuration of a control device according to a second embodiment. A block diagram showing an example of the configuration of a control system according to a third embodiment. A diagram showing an example of a message sequence chart according to the third embodiment.

[0008] A control system and a control device according to an embodiment of the present invention will be described in detail below with reference to the drawings. Note that the embodiment described below is an example of an embodiment of the present invention, and the present invention should not be interpreted as being limited to these embodiments. Furthermore, in the drawings referred to in this embodiment, identical parts or parts having similar functions are given the same or similar reference numerals, and repeated explanations thereof may be omitted. Furthermore, for convenience of explanation, the dimensional ratios of the drawings may differ from the actual ratios, and some components may be omitted from the drawings.

[0009] (First Embodiment) (Configuration) Fig. 1 is a block diagram showing an example configuration of a control device 10 according to this embodiment. As shown in Fig. 1, the control device 10 includes a first processing unit 11, a shared storage unit 12, a second processing unit 13, and a switching management unit 14. This control device 10 is configured to include, for example, a multi-core processor, and controls, for example, industrial equipment. Furthermore, the control device 10 can be configured as, for example, a host for a virtual machine or a host for running a container.

[0010] The first processing unit 11 controls the device by repeating a predetermined control cycle, for example, using first software. The first processing unit 11 controls the drive of an actuator or the like in accordance with an input signal from, for example, a sensor. The first processing unit 11 stores, in the shared storage unit 12, control information that changes over time, such as the position and angle of the controlled object, internal parameters used by the first processing unit 11, and memory information that is information on memory allocation in the shared storage unit 12. A detailed example of the control cycle will be described later with reference to FIG. 2. The software according to this embodiment is an element that constitutes the control device 10, and refers to all elements excluding programs or hardware, which is a physical element.

[0011] The shared storage unit 12 is a storage unit that can be read and written by both the first processing unit 11 and the second processing unit 13. The shared storage unit 12 may include, for example, various types of RAM (Random Access Memory), or may include a storage medium such as an HDD (Hard Disk Drive) or an SSD (Solid State Drive).

[0012] The second processing unit 13, like the first processing unit 11, is capable of repeatedly controlling, for example, industrial equipment in accordance with a control period. That is, the second processing unit 13 is capable of repeatedly controlling industrial equipment in a predetermined control period using second software different from the first software. For example, the second software is software obtained after updating the first software. In this embodiment, the second processing unit 13 will be described as a unit in which, for example, the update of the controller software has been completed and which takes over the control processing of the first processing unit 11.

[0013] The switching management unit 14 manages switching of control between the first processing unit 11 and the second processing unit 13. Note that, in this embodiment, the description is given of management in which control is switched from the first processing unit 11 to the second processing unit 13, but this is not limiting. For example, it is also possible to switch control from the second processing unit 13 to the first processing unit 11 after updating the controller software of the first processing unit 11.

[0014] In this embodiment, the control device 10 has a clock, so that the first processing unit 11, the second processing unit 13, and the switching management unit 14 also share clock information.

[0015] 2 is a diagram showing an example of a control cycle of the first processing unit 11. For example, the first processing unit 11 outputs a control signal to a control target during a batch output period S10, and stores control information required for control of the next control cycle, such as the position and angle of the control target, in the shared storage unit 12.

[0016] Next, the first processing unit 11 inputs an external signal, such as an input signal from a sensor, from the shared storage unit 12 during a batch input period S12. Then, the first processing unit 11 calculates, for example, a control amount for a controlled object during a control calculation period S14. Control of the controlled object is repeated during the batch output period S10, batch input period S12, control calculation period S14, etc., at a control cycle t10 that includes a margin for communication time, etc. Note that after the second processing unit 13 starts control, it also performs control processing at a control cycle equivalent to that of the first processing unit 11.

[0017] 2, control information including position information of the controlled object changes for each control period t10 and t11. Therefore, when switching control processing from the first processing unit 11 to the second processing unit 13, the control information required for control, control parameters that change depending on the state of the controlled object, and the like must be handed over to the second processing unit 13. If this handover processing is not completed, for example, in the control period t10, the second processing unit 13 will not be able to continuously perform control in the control period t11. In other words, if the start of the control period t11 is delayed due to a delay in the handover processing, this will cause problems in the control of the controlled object.

[0018] Therefore, if the takeover process is completed within the control period, the second processing unit 13 takes over the process of the first processing unit 11 and starts the control process. Here, taking over the process according to this embodiment means that the second processing unit 13 becomes able to use, for example, the settings of internal parameters used for control by the first processing unit 11, memory information which is information on memory allocation in the shared storage unit 12, and control information. In other words, the second processing unit 13 starts control of the device in the next control period t11 if it is possible to control the device in the next control period t11 using at least the changed control information by the switching completion time, which is the time when the control period t10 currently being processed ends.

[0019] On the other hand, the second processing unit 13 does not start periodic processing if the internal parameter settings, the memory information that is information on memory allocation to the shared storage unit 12, and the control information are not completed within the switching completion time. In other words, if the takeover processing is not completed within the control period, the second processing unit 13 does not start control processing, and the first processing unit 11 continues the control processing.

[0020] (Operation) Figure 3 is a diagram showing an example of a message sequence chart when the second processing unit 13 starts control processing. As shown in Figure 3, first, the switching management unit 14 monitors the input status, such as a switching instruction signal from an external device (S201). When the switching management unit 14 detects the switching instruction signal, it transmits a switching notification to the first processing unit (S202). Note that the switching management unit 14 may determine the control status of the first processing unit 11 and transmit the switching notification. In addition, the status of the first processing unit 11 and the second processing unit 13 may be notified via a human-machine interface (HMI) of the switching management unit 14 (not shown).

[0021] When the first processing unit 11 receives a switching notification from the switching management unit 14, it calculates a switching completion time, which is the time when the control period ends. For example, periods such as control periods t10 and t11 are set in advance as parameters of the controller software. This allows the first processing unit 11 to calculate the switching completion time from the time when the switching signal is input from the switching management unit 14 to the time when the control period t10, t11, etc. ends. Then, the first processing unit 11 outputs a switching notification signal to the second processing unit 13 (S203).

[0022] This switching notification signal includes information such as the switching completion time, control information, internal parameters of the first processing unit 11, memory information of the shared storage unit 14, and control content. At this time, the switching notification may include an identifier of a processing unit to be switched from to another processing unit. It may also include an identifier indicating switching from the first processing unit 11 to the second processing unit 13. Furthermore, when transmitting the switching notification, the switching management unit 14 may transmit the switching notification after a human inputs transmission permission via a human-machine interface (HMI) of the switching management unit 14 (not shown).

[0023] Next, the second processing unit 13, which has received the switching notification from the first processing unit 11, prepares to enable periodic control calculation (S204). Note that the preparation includes, but is not limited to, setting parameters included in the switching notification, allocating memory from memory information, and setting the next control content in the output unit.

[0024] When all preparations are completed by the time of the switching completion, the second processing unit 13 transmits a completion notification to the switching management unit 14 and the first processing unit 11 (S205). Then, the second processing unit 13 starts control from the next control cycle (S206).

[0025] Next, when the first processing unit 11 receives a completion notification from the second processing unit 14 before the switching completion time, it stops the control processing (S207). Then, the first processing unit 11 transmits an end notification to the switching management unit 11 (S208). Then, the switching management unit 14 receives the completion notification from the second processing unit and the end notification from the first processing unit 11 (S207). In this way, by including the switching completion time and parameters necessary for control calculation in the switching notification and notifying the switching completion time, it becomes possible to switch processing units even in a control system that performs periodic processing.

[0026] 4 is a diagram showing an example of a message sequence chart when the second processing unit 13 does not start control processing. As shown in FIG. 4, the processes from S201 to S204 are performed in the same manner as in FIG. 3. If the second processing unit 13 is not fully prepared by the time the switching is completed, the second processing unit 13 does not send a completion notification, and does not start periodic processing calculations (S305).

[0027] Next, since the first processing unit 11 did not receive a completion notification from the second processing unit 14 within the switching completion time, the first processing unit 11 continues the processing operation and transmits a continuation notification to the switching management unit 14 (S306). Finally, the switching management unit 14 receives the continuation communication from the first processing unit 11 and transmits a continuation notification to the second processing unit 13 (S307).

[0028] In this way, by sharing the switching completion time between the first processing unit 11 and the second processing unit 14, the first processing unit 11 can continue the control processing if there is no switching completion notification. This prevents delays (downtime) in the control processing of the controlled object. If the switching fails, the switching management unit 14 can send a switching notification to the first processing unit 11 until the switching is successful. Possible reasons for the switching not being completed by the switching completion time include exceptional events such as the timing of the control state of the first processing unit 11 or a delay in input from an external sensor. Therefore, by repeating the switching process several times, it becomes possible to perform the switching within the switching completion time.

[0029] As described above, according to this embodiment, the end of the control period during the switching process is set as the switching completion time, which is shared by the first processing unit 11 and the second processing unit 14. As a result, if the setting process of the second processing unit 14 is completed by the switching completion time, the second processing unit 14 can start the control process and the first processing unit 11 can stop the control process. Therefore, it is possible to start the control period of the second processing unit 14 consecutively with respect to the control period of the first processing unit 11.

[0030] On the other hand, if the setting process is not completed by the switching completion time, the second processing unit 14 does not start the control process, thereby suppressing the occurrence of delays (downtime) in the control process of the control object. In this case, the first processing unit 11 is able to continue the control process because it does not receive a switching completion notification from the second processing unit 14. This suppresses the occurrence of delays (downtime) in the control process of the control object.

[0031] (Modification 1 of First Embodiment) The control device 10 according to Modification 1 of the first embodiment differs from the control device 10 according to the first embodiment in that the switching management unit 14 of the control device 10 manages the start and end of switching. The differences from the control device 10 according to the first embodiment will be described below.

[0032] FIG. 5 is a diagram illustrating an example of a message sequence chart according to Modification 1 of the first embodiment. As illustrated in FIG. 5 , the switching management unit 14 first monitors the input status of a switching instruction signal from an external device and the statuses of the first processing unit 11 and the second processing unit 13. Upon detecting the switching instruction signal, the switching management unit 14 transmits a switching notification to the first processing unit (S202). In this case, the switching management unit 14 transmits a switching notification including a switching completion time in synchronization with the end of the control period of the first processing unit 11 (S202). Note that the control period according to this embodiment is substantially constant, and the switching management unit 14 can calculate the switching completion time. The first processing unit 11 then outputs a switching notification signal to the second processing unit 13 (S203). This switching notification signal includes information such as the received switching completion time, control information, internal parameters of the first processing unit 11, memory information of the shared storage unit 14, and control content.

[0033] The processes from S204 to S206 are the same as those in the first embodiment. Then, the switching management unit 14, which has received a completion notification from the second processing unit 13 of the switching destination by the time the switching is completed, transmits an end notification to the first processing unit 11 of the switching source (S406).

[0034] Next, the first processing unit 11, which has received a completion notice from the second processing unit 13 of the switching destination and an end notice from the switching management unit 14 by the switching completion time, stops the periodic processing (S407).

[0035] In this way, the first processing unit 11 stops the control process in response to a termination notification from the switching management unit 14 in response to a completion notification from the second processing unit 13. This allows the switching management unit 14 to centrally manage the switching process while reducing downtime during updates.

[0036] 6 is a diagram showing an example of a message sequence chart when the handover is not completed in time. As shown in FIG. 6, the same processes as those in FIG. 5 are performed from S201 to S206. If the switching processing unit 14 does not receive the switching completion notification within a predetermined time, it determines that the switching completion notification will not be received within the switching completion time, and transmits a continuation notification to the first processing unit 11 and the second processing unit 13 (S505).

[0037] Possible criteria for the switching processing unit 14 to determine that the switching completion notification cannot be received by the switching completion time include, for example, the time obtained by subtracting a predetermined time as a margin from the switching completion time, the time obtained by subtracting a processing delay time for processing required at the time of switching completion from the switching completion time, or the time obtained by subtracting a predetermined time as a margin from the time obtained by subtracting a processing delay time for processing required at the time of switching completion from the switching completion time. In this way, when the switching processing unit 14 sends a continuation notification, it is possible to provide a time range for the timing of outputting the continuation notification based on the switching completion time.

[0038] Next, the first processing unit 11, which has received the continuation notification from the switching management unit 14, continues the periodic processing. Then, it sends a continuation notification response to the switching management unit 14 (S506). At this time, the first processing unit 11 follows the continuation notification from the switching management unit 14 regardless of the switching completion time.

[0039] Next, the second processing unit 13, which has received the continuation notification from the switching management unit 14, does not start the switching process or the periodic process. Then, it sends a continuation notification response to the switching management unit 14 (S507). At this time, the second processing unit 13 follows the continuation notification from the switching management unit 14 regardless of the switching completion time.

[0040] Finally, the switching management unit 14 determines, based on the continuation notification responses from the first processing unit 11 and the second processing unit 13, not to switch the periodic processing from the first processing unit 11 to the second processing unit 13, but to continue the periodic processing with the first processing unit 11 (S508). For example, if the switching management unit 14 is unable to receive a continuation notification response from the first processing unit 11 or the second processing unit 13, it may determine that the first processing unit 11 or the second processing unit 13 has not successfully received the continuation notification, and may send the continuation notification again.

[0041] In this way, when the switching processing unit 14 sends a continuation notification, in addition to having the same effect as the control device of the first embodiment, it is possible to provide a time range for the timing of outputting the continuation notification or stop notification based on the switching completion time.

[0042] Second Embodiment (Configuration) Fig. 7 is a block diagram showing an example of the configuration of a control device 10a according to a second embodiment. As shown in Fig. 7, the control device 10a differs from the control device 10 according to the first embodiment in that the first processing unit 11 and the second processing unit 13 each have switching management units 14, 14 as internal functions.

[0043] In this way, since the switching management units 14, 14 are present inside the first processing unit 11 and the second processing unit 13, the notifications required for switching can be sent and received more smoothly than in the first embodiment, thereby preventing the switching process from failing.

[0044] (Third embodiment) (Configuration) Fig. 8 is a block diagram showing an example configuration of a control system 70 according to a third embodiment. As shown in Fig. 8, the control system 70 includes a control device 10b according to the third embodiment and an orchestration unit 71. Each component of the control device 10b according to the third embodiment is configured by, for example, a container on a cloud server.

[0045] The orchestration unit 71 can deploy the first processing unit 11, the second processing unit 13, and the switching management unit 14 of the control device 10b. Note that deployment according to this embodiment means making application software provided via a network or the like executable. Furthermore, deployment according to this embodiment may also include software installation.

[0046] For example, the orchestration unit 71 configures the second processing unit 13 and the switching management unit 14 according to this embodiment by deployment while the first processing unit 11 continues to exercise control. That is, the second processing unit 13 and the switching management unit 14 are containers and applications that start operating by being so-called hot deployed by the orchestration unit 71.

[0047] 9 is a diagram showing an example of a message sequence chart according to the third embodiment. As shown in Fig. 9, first, the orchestration unit 71 deploys the switching management unit 14 and the second processing unit 13 based on a switching trigger of the processing unit (S801).

[0048] The switching trigger here is, for example, a trigger given by a person via an HMI (not shown) of the orchestration unit 71, such as pressing a specific button on the screen, but is not limited to this. For example, it may be a trigger given by an IP packet or the like from outside the orchestration unit 71 via a network.

[0049] Next, the second processing unit 13 is deployed and automatically enters a state in which it can receive an instruction to prepare for switching (S802). In this embodiment, when the second processing unit 13 is deployed, it automatically enters a state in which it can receive an instruction to prepare for switching. Alternatively, after deployment, the orchestration unit 71 may again instruct the second processing unit 13 to prepare for switching.

[0050] Next, the switching management unit 14 is deployed, and automatically becomes capable of monitoring the states of the first processing unit 11 and the second processing unit 13 (S803). Note that in this embodiment, the switching management unit 14 automatically becomes capable of monitoring the states of the first processing unit 11 and the second processing unit 13, but it is also possible for the orchestration unit 71 to again instruct the switching management unit 14 to monitor the first processing unit 11 and the second processing unit 13 after deployment. Also, although the switching management unit 14 deploys the second processing unit 13 and then the switching management unit 14, the order of deployment is not limited to this order. The processing flow thereafter is the same as in the first embodiment.

[0051] As described above, according to this embodiment, the orchestration unit 71 deploys the second processing unit 13, which is the processing unit to which switching is to be made, and the switching management unit 14. This not only provides the effect of the control device according to the first embodiment, but also makes it possible to update the processing units even in a control system that performs periodic processing on the cloud.

[0052] Although several embodiments have been described above, these embodiments are presented only as examples and are not intended to limit the scope of the invention. The novel devices, methods, and programs described in this specification can be embodied in various other forms. Furthermore, various omissions, substitutions, and modifications can be made to the forms of the devices, methods, and programs described in this specification without departing from the spirit of the invention.

Claims

1. A control device comprising: a first processing unit that uses first software to control an equipment by repeating a predetermined control period, the first processing unit executing control for the next control period based on control information changed during the current control period; a switching management unit that sends a switching notification to the first processing unit instructing the first processing unit to switch to the first processing unit; and a second processing unit that is capable of controlling the equipment by repeating the predetermined control period using second software different from the first software, wherein the second processing unit starts control of the equipment in the next control period if control of the equipment in the next control period is possible using at least the changed control information by the switching completion time, which is the time when the control period currently being processed ends.

2. The control device according to claim 1, wherein the first processing unit notifies the second processing unit of the switching completion time when the switching notification is received.

3. The control device according to claim 2, further comprising a shared memory unit that can be read and written from the first processing unit and the second processing unit, wherein the first processing unit transmits the control information, internal parameters of the first processing unit, and memory information of the memory unit together with the switching completion time to the second processing unit.

4. The control device described in claim 3, wherein the second processing unit does not start control of the device if the setting of the internal parameters, memory information which is information on memory allocation to the shared memory unit, and reflection of the control information are not completed within the switching completion time.

5. The control device according to claim 2, wherein the second processing unit issues a completion notification when the device becomes capable of being controlled in the next control cycle within the switching completion time.

6. The control device according to claim 5, wherein the first processing unit stops controlling the device when the completion notification is received.

7. The control device described in claim 6, wherein the second processing unit transmits the completion notification to at least the switching management unit of the first processing unit and the switching management unit, and the switching management unit, upon receiving the completion notification, transmits an end notification to the first processing unit instructing it to end the periodic processing, and the first processing unit, upon receiving the end notification, stops the periodic processing.

8. The control device according to claim 1, wherein the switching management unit sets the switching completion time in the switching notification and sends it to the first processing unit, and if a completion notification is not received from the second processing unit within the switching completion time, sends a continuation notification to continue the current processing to the first processing unit and the second processing unit.

9. The control device according to claim 1, wherein the switching management unit according to claim 1 is configured within the first processing unit and the second processing unit.

10. A control system comprising: the control device according to claim 1; and an orchestration unit capable of deploying the switching management unit and the second processing unit.

Citation Information

Patent Citations

  • Communication controller of active / Standby configuration and active / Standby system switching method

    JP2001275140A

  • Electronic control device

    JP2015202710A

  • Process control system, process control apparatus, and program update method

    US20220317645A1