Monitoring control system and monitoring control method
Patent Information
- Application Number
- JP2023142894
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-09-04
- Publication Date
- 2025-03-14
AI Technical Summary
【0008】 本発明の少なくとも一態様によれば、対象に対する監視制御を継続したまま、監視制御システム内の制御装置の更新が可能となる。 上記した以外の課題、構成及び効果は、以下の実施形態の説明により明らかにされる。
Smart Images

Figure 2025035682000001_ABST
Abstract
Description
[Technical field]
[0001] The present invention relates to a monitoring and control system and a monitoring and control method that operate in a plant, factory, or the like. [Background technology]
[0002] 2. Description of the Related Art Conventionally, in plants, factories and the like, monitoring and control systems that monitor and control target devices have been constructed by combining programmable logic controllers (hereinafter, abbreviated as "PLCs") and I / O (Input / Output) devices.
[0003] In such a monitoring and control system, it may become necessary to update (replace) the PLC, which is the control device, with a new PLC due to the end of its product life or the expansion of the PLC's functions. For example, Patent Document 1 discloses an update method using a process control device that includes a virtualization unit that operates on the hardware in place of the hardware, and a restoration unit that operates on the virtualization unit and restores applications. [Prior art documents] [Patent documents]
[0004] [Patent Document 1] JP 2015-138292 A Summary of the Invention [Problem to be solved by the invention]
[0005] Incidentally, Patent Document 1 describes updating a process control device while continuing operation of a control application, but does not describe debugging or adjustment of the updated process control device. In addition, while debugging or adjustment is being performed, it may be necessary to operate the pre-update process control device and the updated process control device simultaneously, but this is not described either. During debugging or adjustment of the updated process control device, the pre-update process control device was not operated.
[0006] In view of this situation, there has been a demand for a method for updating a control device while continuing monitoring and control by simultaneously operating the pre-update control device and the updated control device while the monitoring and control system is operating. [Means for solving the problem]
[0007] In order to solve the above problems, a monitoring and control system according to one aspect of the present invention is a monitoring and control system in which an operation is performed to update a current control device that monitors and controls a controlled device to a successor control device, the monitoring and control system having a configuration in which the current control device and a virtualization device are connected to a second network different from a first network that connected the current control device and one or more controlled devices before the start of the update, and the successor control device and the controlled devices are connected to the first network. The successor control device and the virtualization device are configured to be able to communicate with each other. Based on data received by the virtualization device from the current control device via the second network, the successor control device transmits control data to the controlled device via the first network to control the controlled device. Based on data received by the successor control device from the controlled device via the first network, the virtualization device transmits simulated data, in which no abnormality is detected by the current control device, to the current control device via the second network, and the successor control device monitors the controlled device. Effect of the Invention
[0008] According to at least one aspect of the present invention, it is possible to update a control device in a monitoring and control system while continuing monitoring and control of an object. Problems, configurations and effects other than those described above will become apparent from the following description of the embodiments. [Brief description of the drawings]
[0009] [Figure 1] FIG. 2 is a diagram illustrating an example of the configuration of a monitoring and control system before a PLC is updated. [Diagram 2] FIG. 1 is a diagram illustrating an example of the configuration of a conventional monitoring and control system during a PLC update period. [Diagram 3]FIG. 1 is a diagram illustrating an example of the configuration of a monitoring and control system during a PLC update period according to an embodiment of the present invention. [Figure 4] FIG. 2 is a diagram illustrating an example of a hardware configuration of a computer provided in each unit of a PLC. [Diagram 5] FIG. 2 is a diagram illustrating an example of the configuration of an option module and a virtualization device of an updated PLC in one embodiment of the present invention. [Figure 6] FIG. 2 is a diagram illustrating an example of the configuration and processing operation of an updated PLC during a PLC update period in one embodiment of the present invention. [Figure 7] 11 is a diagram illustrating an example of the configuration and processing operation of an updated PLC in a data-through mode when a CPU module in one embodiment of the present invention abnormally stops. FIG. [Figure 8] 5 is a flowchart showing an example of a procedure for updating a PLC in the monitoring and control system according to one embodiment of the present invention. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0010] DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, examples of modes for carrying out the present invention (hereinafter, referred to as "embodiments") will be described with reference to the accompanying drawings. In this specification and the accompanying drawings, the same or similar components are given the same reference numerals, and redundant explanations may be omitted or only differences may be explained. The number of each component may be singular or plural unless otherwise specified.
[0011] A control device updating method in a monitoring and control system according to an embodiment of the present invention will be described in detail with reference to the drawings. Before describing one embodiment of the present invention, a conventional control system updating method for updating a control device (eg, a PLC) while a monitoring and control system is in operation will be described with reference to FIGS. 1 and 2.
[0012] FIG. 1 is a diagram illustrating an example of the configuration of a monitoring and control system before a PLC is updated. 1, the monitoring and control system is made up of a PLC 10 that performs monitoring and control, controlled devices 31-33 (controlled device group 30) that are input / output devices that input and output various signals, status values, etc., and a LAN (Local Area Network) 40 that connects them. In this figure, only one PLC is depicted for the sake of explanation, but multiple PLCs may be connected to the LAN 40. Also, although only three controlled devices are depicted, more than one controlled device may be connected to the LAN 40.
[0013] The PLC 10 is composed of a CPU module (Central Processing Unit) 11 that has a calculation function and monitors and controls the controlled devices, and an option module 12 that is a communication device. Within the PLC 10, the CPU module 11 and the option module 12 transmit data to each other. The option module 12 communicates with the controlled devices 30 via a LAN 40.
[0014] Although the LAN 40 is described assuming a ring network, it may be connected using a general network such as Ethernet. Also, not only a wired network but also a wireless network may be used.
[0015] The controlled devices 31 to 33 are various input / output devices that operate within the monitoring and control system and are installed at the site of the monitoring and control system. For example, the controlled devices are sensor devices such as water meters and temperature sensors, valve devices such as flow control valves and on-off valves, motors, and other devices installed at the site. These controlled devices 31 to 33 operate based on bit data such as command values and numerical data such as a designated number of revolutions of the motor, which are transmitted from the PLC 10. The controlled devices 31 to 33 also transmit bit data such as state values and numerical data such as the current number of revolutions of the motor to the PLC 10.
[0016] <Configuration of monitoring and control system during conventional PLC update period> FIG. 2 is a diagram showing an example of the configuration of a monitoring and control system during a conventional PLC update period. Fig. 2 shows an example in which a PLC 20 is added to the monitoring and control system shown in Fig. 1. That is, the monitoring and control system shown in Fig. 2 is composed of a PLC 10, a PLC 20 that performs new monitoring and control in place of the PLC 10, controlled devices 31 to 33 (controlled device group 30), and a LAN 40 that connects them. In this figure, for the sake of explanation, only one updated PLC is shown, but multiple PLCs may be connected to the LAN 40. Also, although only three controlled devices are shown, multiple more controlled devices may be connected to the LAN 40.
[0017] The updated PLC 20 (successor model) basically has the same configuration as the PLC 10 (current model). The PLC 10 is a PLC that uses the control logic before the update as is during the update period. On the other hand, the PLC 20 is a PLC that uses the changed control logic after the update. The PLC 20 is composed of a CPU module 21 that monitors and controls the controlled devices 30, and an option module 22 that is a communication device. The option module 22 communicates with the controlled devices 30 via a LAN 40.
[0018] The newly installed PLC 20 in the monitoring and control system requires debugging, adjustment, etc., so it is not possible to monitor and control the plant including the group of controlled devices 30 immediately after installation. However, since the monitoring and control of the plant cannot be stopped during this time, as shown in Figure 2, the pre-update PLC (hereinafter referred to as the "pre-update PLC") 10 and the post-update PLC (hereinafter referred to as the "post-update PLC") 20 are connected in parallel to the same LAN 40, and the controlled devices controlled by each PLC are separated, allowing partial debugging and adjustment.
[0019] For example, modify the application program of PLC10 to exclude the controlled device 33 from the control targets of PLC10 before the update. Then, change the application program of PLC20 after the update, and use only the excluded controlled device 33 as the control target of PLC20 after the update to perform debugging on PLC20 after the update. As described above, it was necessary to modify the application programs of both PLC10 before the update and PLC20 after the update for the update. Also, in this method, since the application program of PLC20 after the update also has to be changed, there is also a possibility of creating defects due to forgetting to revert the changed content or making mistakes in the change after the debugging is completed.
[0020] The operating years of the PLC used in the plant (monitoring and control system) often exceed 10 years. For this reason, there are cases where the programming tools for modifying the application program of PLC10 before the update, as well as the development environments for programs such as compilers and assemblers, are no longer available. Even when the programming tools and development environments are available, there are cases where the PC (Personal Computer) that meets the conditions for operating them has been discontinued and is not available. Due to these factors, it may not be possible to modify the application program itself.
[0021] In that case, an operation method of performing debugging and adjustment during the time period when the controlled device is not operating was adopted. For example, at night or the like, physically disconnect PLC10 before the update from LAN40, connect PLC20 after the update to LAN40, and perform debugging and adjustment. Therefore, the burden on the operator during the update work is heavy, and the working period also tends to be long.
[0022] <Configuration of the Monitoring and Control System During the PLC Update Period> Next, the configuration of the monitoring and control system during the PLC update period according to an embodiment of the present invention will be described with reference to FIG. 3.
[0023] FIG. 3 is a diagram illustrating an example of the configuration of a monitoring and control system during a PLC update period according to an embodiment of the present invention. 3 shows a configuration in which the pre-update PLC 10 and the post-update PLC 50 are connected via a virtualization device 53 implemented in the post-update PLC 50. In FIG. 3, the monitoring and control system 1 is composed of the pre-update PLC 10, a PLC 50 that performs monitoring and control in place of the pre-update PLC 10, a LAN 60 that connects the pre-update PLC 10 and the post-update PLC 50, a group of controlled devices 30, and a LAN 40 that connects the post-update PLC 50 and the group of controlled devices 30. Furthermore, a monitoring and operation device 70 is connected to a higher level of the PLC 50 via the LAN 60. Also, a controlled device 34 is newly connected to the LAN 40 to which the controlled devices 31 to 33 are connected.
[0024] As described above, the pre-update PLC 10 (current machine) is made up of the CPU module 11 that executes monitoring and control of the controlled devices 30, and the option module 12 that is a communication device. The option module 12 communicates with the virtualization device 53 installed in the updated PLC 50 via the LAN 60 .
[0025] Although the LAN 60 is described assuming a ring-type network, it may be connected using a general network such as Ethernet. Also, not only a wired network but also a wireless network may be used.
[0026] The updated PLC 50 (successor) is made up of a CPU module 51 that executes monitoring and control of the controlled devices 30, an option module 52 that is a communication device, and a virtualization device 53 that simulates the operation of the controlled devices 30. The CPU module 51 executes monitoring and control of the controlled devices 30. However, the configuration and functions relating to updating of the PLC will be described in detail later with reference to FIG. The option module 52 communicates with the controlled devices 30 via the LAN 40 .
[0027] The virtualization device 53 communicates with the option module 12 installed in the pre-update PLC 10 via the LAN 60. The virtualization device 53 is provided to mix the pre-update PLC 10 and the post-update PLC 50 during the update period. By installing the virtualization device 53 between the pre-update PLC 10 and the controlled device group 30, the post-update PLC 50 and the controlled device group 30 are virtualized, and the pre-update PLC 10 can operate as usual. The virtualization device 53 virtualizes the post-update PLC 50 and the controlled device group 30 by simulating the operation of the controlled devices.
[0028] In this embodiment, the virtualization device 53 is used to verify the operation of the post-update PLC 50, the mixed operation of the pre-update PLC 10 and the post-update PLC 50, and the replacement without affecting the pre-update PLC 10. Hereinafter, in the description of data communication via the LAN 40 and the LAN 60, the descriptions of the LAN 40 and the LAN 60 may be omitted.
[0029] The configuration according to this embodiment is characterized in that the LAN connecting the pre-update PLC 10 and the controlled device group 30 is separated. Thereby, while the pre-update PLC 10 and the post-update PLC 50 are operating simultaneously, the debugging and adjustment of the post-update PLC 50 can be performed.
[0030] Further, this configuration is characterized in that the virtualization device 53 performs an operation simulating the controlled devices and makes the pre-update PLC 10 recognize that it is communicating with the controlled devices. Thereby, it is not necessary to change the application program of the pre-update PLC 10.
[0031] <Example of the hardware configuration of the computer included in the PLC> The CPU module 51, the option module 52, and the controlled device group 30 that constitute the PLC 50 each include a computer. FIG. 4 shows an example of the hardware configuration of the computer included in each part of the PLC 50.
[0032] 4, the calculator 80 is configured by a computer including a processor 80a such as a CPU, a storage unit 80b such as a ROM (Read Only Memory), a RAM (Random Access Memory), a HDD (Hard Disk Drive), or a SSD (Solid State Drive), an input / output I / F 80c, and a communication I / F 80d. The functions of each unit of the PLC 50 are realized by the processor 80a reading a program written in advance in the ROM or non-volatile storage into the RAM and executing the program. Each of the CPU module 51, the option module 52, and the virtualization device 53 is operated by a computer having a processor 80a and a memory (storage unit 80b).
[0033] The input / output I / F 80c performs input processing of UI (User Interface) information sent from an input device (not shown) and performs output processing of data to a display device (not shown). The input device is a keyboard, a mouse, etc. Furthermore, the input device may be a touch panel in which a touch sensor and a display panel are stacked. The communication I / F 80d performs communication processing for transmitting and receiving data between each section in the PLC 50, or between other PLCs and the controlled devices 30. Each module of the PLC 10 and PLC 20 shown in Fig. 2 has a configuration similar to that shown in this figure. Furthermore, the monitoring operation device 70 has a similar configuration. Furthermore, the controlled devices can be considered to basically have a similar configuration.
[0034] <Configuration of PLC option modules and virtualization device after update> Next, the configuration of the option module and virtualization device of the updated PLC according to one embodiment of the present invention will be described with reference to FIG. 5 is a diagram showing an example of the configuration of the option module 52 and the virtualization device 53 of the updated PLC 50. The CPU module 51 is omitted in FIG.
[0035] [Virtualization device] The virtualization device 53 is composed of a controlled device simulation program 531, a communication program 532, setting parameters 533, a transmission buffer 534, and a reception buffer 535. The transmission buffer 534 and the reception buffer 535 are realized by the RAM (storage unit 80b).
[0036] The controlled device simulation program 531 is software that simulates the communication operation of the controlled device group 30. The controlled device simulation program 531 is started up as many times as the controlled device group 30 that communicates with the option module 52, according to the setting parameters 533 set up from the setting tool. Alternatively, only one controlled device simulation program 531 may be started up, and one program may execute processing for the number of the controlled devices 30. The number of the controlled devices 30 refers to the number of controlled devices that wish to communicate, and is usually almost the total number of the controlled devices connected to the LAN 40. As the setting tool, a setting tool that runs on a PC for a user interface, or a setting tool that runs on a monitoring operation device 70 connected to a higher level of the PLC 50 may be used.
[0037] The setting parameters 533 include the number of controlled devices 30 with which the pre-update PLC 10 communicated, and information on each controlled device. For example, the information on each controlled device (hereinafter sometimes referred to as "configuration information") includes the number of transmitted words, the number of received words, the address of the transmitting area, and the address of the receiving area. The number of transmitted words and the number of received words are related to the data length, and the number of received words is one of the materials for determining whether communication data is addressed to the device itself. The address of the transmitting area and the address of the receiving area are information indicating the storage area in which each data is stored in the memory (e.g., the storage unit 80b) provided in the virtualization device 53.
[0038] The communication program 532 transmits data to the LAN 60 via a transmission buffer 534 in response to a request from the controlled device simulation program 531. The communication program 532 also passes data received from the LAN 60 to a reception buffer 535 to the controlled device simulation program 531. The communication program 532 is a low-level communication program. That is, the communication program 532 is a program that specifies a low-layer protocol close to the physical layer. Although the communication program 532 is described separately from the controlled device simulation program 531 in FIG. 5, it may be included in the controlled device simulation program 531.
[0039] In this embodiment, the successor control device (updated PLC 50) includes a processing device (CPU module 51) that executes monitoring and control of the controlled devices, and a communication device (option module 52) that communicates with the controlled devices. Data received from the current control device (pre-updated PLC 10) in the virtualization device is transferred to the communication device via the processing device. Data received from the controlled devices in the communication device is transferred to the virtualization device via the processing device.
[0040] [Communication between the PLC option module and the controlled devices before the update] The communication between the option module 12 (FIG. 1) of the pre-update PLC 10 and the controlled devices 30 is established in the following procedure. This is the same as the general procedure for establishing communication between a control device such as a PLC and a controlled device.
[0041] First, a connection request is transmitted from the option module 12 of the pre-update PLC 10 to the group of controlled devices 30 via the LAN 40. The controlled device to which the connection request is transmitted may be one or more. When the controlled device receives the connection request and determines that the connection request is addressed to itself, it transmits a response to the connection request (permission response) to the option module 12. Upon receiving a response to the connection request from the controlled device, the option module 12 transitions the connection state to "connection in progress" and sets communication status information (not shown) to "connection in progress".
[0042] Next, the option module 12 transmits construction information (not shown) to the group of controlled devices 30. The construction information is composed of the number of words to be transmitted from the option module 12 to the controlled devices, the number of words to be received, the address of the transmitting area, and the address of the receiving area. The construction information can be set using a setting tool, similar to the setting parameters 533. The address of the transmitting area and the address of the receiving area here are information indicating the storage areas in which each data is stored in the memory (e.g., storage unit 80b) provided in the option module 12.
[0043] If a specific item of the construction information sent from the option module 12 matches the information the controlled device has, the controlled device transmits a response indicating that the connection is complete to the option module 12. If there is a mismatch, the controlled device transmits a rejection response.
[0044] The option module 12 that has received the response indicating that the connection is complete transitions to a “connection complete state” and sets the “connection complete state” to the communication status information. As a result, the connection between the option module 12 of the pre-update PLC 10 and the group of controlled devices 30 is established.
[0045] Thereafter, the option module 12 periodically transmits control data to the group of controlled devices 30 in accordance with the control period, and receives monitoring data such as status values from the group of controlled devices 30 as a response. The option module 12 also monitors responses from the group of controlled devices 30. If there is no response for a certain period of time, the option module 12 transitions to an "unconnected state" and attempts to reconnect by again transmitting a connection request to the group of controlled devices 30.
[0046] [Simulated operation of virtualization device] After the update, the virtualization device 53 (FIG. 5) of the PLC 50 executes operations simulating the above procedure. Normally, a unique number is assigned in advance to a device connected to a communication network, and the device does not receive data other than that addressed to its own number. However, the virtualization device 53 makes it possible to execute the simulated operation by receiving (snooping) data other than that addressed to its own number.
[0047] The controlled device simulation program 531 of the virtualization device 53 is started by powering on the virtualization device 53. The controlled device simulation program 531 refers to communication status information 521 in the option module 52 to determine whether to respond to a connection request from the option module 12 implemented in the pre-update PLC 10. The communication status information 521 is information that indicates the communication status between the option module 52 and the controlled device group 30. The communication status may be "not connected", "connection in progress", or "connection complete". The communication status information 521 is generated for each controlled device.
[0048] When the communication status information 521 is "connection complete", the controlled device simulation program 531 transmits a response (permission response) to the connection request received from the option module 12 of the pre-update PLC 10 via the communication program 532. The option module 12 that receives the response to the connection request transmits construction information to the target controlled device. The construction information transmitted to this controlled device passes through the virtualization device 53.
[0049] In the virtualization device 53 that has received the construction information from the option module 12, the controlled device simulation program 531 compares the received construction information with the setting parameters 533. If the two match, the controlled device simulation program 531 transmits a response indicating that the connection is complete to the option module 12. The option module 12 that has received the response indicating that the connection is complete transitions to a "connection complete state" with the virtualization device 53.
[0050] The information (construction information) of the data sent to one of the controlled devices and the information of the setting parameters 533 include at least the number of words to be transmitted from the option module 12 to the controlled device, the number of words to be received, the address of the transmitting area, and the address of the receiving area.
[0051] In this way, the virtualization device has a controlled device simulation program for each controlled device to perform operations simulating the controlled device. The controlled device simulation program compares information (construction information) of data sent from the current control device (pre-update PLC 10) to any of the controlled devices with information of preset setting parameters 533. If both pieces of information match, the controlled device simulation program determines that the destination of the data is its own controlled device, and starts processing to connect to the current control device.
[0052] Such a simulated operation of the controlled device simulation program 531 completes the connection between the option module 12 and the virtualization device 53, and the pre-update PLC 10 can operate as if it were connected to the controlled devices 30.
[0053] The controlled device simulation program 531 continues to refer to the communication status information 521 at regular intervals, and dynamically changes the communication status with the option module 12. When one of the controlled devices 30, for example the controlled device 31, is powered off and the communication status information 521 changes to "not connected", the controlled device simulation program 531 cuts off the connection between the controlled device 31 and the option module 12. In this way, the virtualization device 53 monitors the connection status of the communication between the option module 52 and the controlled devices 30, and can transmit the connection status of the communication of the controlled devices 30 to the pre-update PLC 10 in real time.
[0054] 6, data received by the virtualization device 53 from the pre-update PLC 10 is transferred to the controlled devices 30 via the CPU module 51 (FIG. 3) and the option module 52. This makes it possible to control the controlled devices 30 from the pre-update PLC 10 while the pre-update PLC 10 and the post-update PLC 50 are connected to the same LAN 60 (FIG. 3).
[0055] 6, data received by the option module 52 from the controlled devices 30 is transferred to the pre-update PLC 10 via the CPU module 51 and the virtualization device 53. This makes it possible for the pre-update PLC 10 to monitor the controlled devices 30 while the pre-update PLC 10 and the post-update PLC 50 are connected to the same LAN 60.
[0056] (Simulated data) In this operating state, by transmitting simulation data (safety-related data) that will not cause the pre-update PLC 10 to detect an abnormality, from the post-update PLC 50 to the pre-update PLC 10, any of the controlled devices 31 to 33 can be excluded from monitoring by the pre-update PLC 10. This simulation data is of a specification that will not be judged as abnormal by the application program of the pre-update PLC 10.
[0057] The simulated data is data generated by the post-update PLC simulating the monitoring data of the controlled device, or data prepared in advance simulating the monitoring data of the controlled device. If truly abnormal data is sent to the pre-update PLC 10 when debugging assuming an abnormality, the pre-update PLC 10 will perform an operation corresponding to the abnormal data. For this reason, the post-update PLC 50 performs debugging using data received from the controlled device, while sending simulated data simulating normal values to the pre-update PLC 10.
[0058] Simulation data of a controlled device that is not monitored, for example, the controlled device 31, is transmitted to the pre-update PLC 10. This allows the controlled device 31 that is not monitored by the pre-update PLC 10 to be monitored by the post-update PLC 50, and enables debugging and adjustment related to the controlled device 31 in the post-update PLC 50.
[0059] The unit (switching) for the simulated transmission of safety-related data may be (is possible) per controlled device or per data. By using data as the unit, for example, if the controlled device 31 is an input device that has multiple channels and handles analog values (such as a 24V voltage input), the value of channel "0" can be monitored by the pre-update PLC 10, and the values of the other channels can be monitored by the post-update PLC 50. This allows for flexible debugging of the post-update PLC 50.
[0060] (Control Data) Furthermore, in the updated PLC 50, data received from the pre-update PLC 10 can be switched to control data 512d (see FIG. 6) of the application program 513 (see FIG. 6) in the CPU module 51 without being transferred to the controlled devices 30. This allows the updated PLC 50 to control the controlled devices, and enables debugging and adjustment of the updated PLC 50.
[0061] Switching to the control data 512d from the application program 513 may (is possible) be done on a controlled device basis or on a data basis. By using data as a unit, for example, if the controlled device 32 is an output device that has multiple channels and handles analog values (such as a voltage output of 24 V), the pre-update PLC 10 can output the value of channel "0" and the post-update PLC 50 can output the values of the other channels. This allows for flexible debugging of the post-update PLC 50.
[0062] It is also possible to newly add a controlled device, for example, a controlled device 34 (Fig. 3), which is only monitored and controlled by the updated PLC 50, to the LAN 40 to which the controlled devices 31 to 33 are connected. In this case, since the updated PLC 10 before the update does not transfer the transmission data from the newly added controlled device 34, the controlled device 34 can be safely added without affecting the updated PLC 10 before the update. The updated PLC 50 can handle an additional controlled device 34 without the involvement of the updated PLC 10 before the update. As described above, it becomes possible to debug and adjust the updated PLC 50 while continuing the monitoring and control of the updated PLC 10 before the update.
[0063] <Processing Operations of the Updated PLC During the PLC Update Period> Next, the processing operations of the updated PLC during the PLC update period will be described in detail with reference to Fig. 6. Fig. 6 is a diagram showing an example of the configuration and processing operations of the updated PLC during the PLC update period according to an embodiment of the present invention. The CPU module 51 is composed of a control program 511, a data memory 512, and an application program 513. The descriptions of the configurations of the option module 52 and the virtualization device 53 are omitted. The control program 511 is a program that controls data transfer and data switching within the CPU module 51. The application program 513 is a program that monitors and controls the controlled device group 30.
[0064] The virtualization device 53 of the updated PLC 50 starts the controlled device simulation program 531 based on the communication status information 521 set when the option module 52 starts communicating with the controlled device group 30 and the set parameters 533 set from the setting tool. The virtualization device 53 starts the controlled device simulation program 531 for each of the controlled devices 30 with which the option module 52 communicates, or starts one controlled device simulation program 531 to manage a plurality of controlled devices. For example, when the option module 52 communicates with four controlled devices 31 to 34, the virtualization device 53 generates the controlled device simulation programs 531 for the four devices.
[0065] (Data communication from the pre-update PLC to the controlled device via the virtualization device) The controlled device simulation program 531 establishes a connection with the option module 12 mounted in the pre-update PLC 10 and periodically executes communication according to the procedure described above. The controlled device simulation program 531 receives the control data received from the pre-update PLC 10 and stored in the receive buffer 535 via the communication program 532. Then, the controlled device simulation program 531 transfers the data acquired from the pre-update PLC 10 to the receive area 512c arranged in the data memory 512 of the CPU module 51.
[0066] The control program 511 of the CPU module 51 copies the data in the receiving area 512c sent from the pre-update PLC 10 to a sending area 512e that stores data to be sent to the controlled device.
[0067] The communication control program 524 of the option module 52 copies the data in the transmission area 512e of the CPU module 51 to be transmitted to the controlled device to a transmission buffer 522 in the option module 52, and then transmits the data to the controlled device.
[0068] (Data communication from the controlled device to the pre-update PLC via the option module) Next, the communication control program 524 of the option module 52 stores the monitoring data received from the controlled device in a receiving buffer 523 in the option module 52. Then, the communication control program 524 copies the data received from the controlled device and stored in the receiving buffer 523 to a receiving area 512f from the controlled device arranged in the data memory 512 of the CPU module 51.
[0069] The control program 511 of the CPU module 51 copies data in the receiving area 512 f from the controlled device to the sending area 512 b for the pre-update PLC 10 arranged in the data memory 512 .
[0070] The controlled device simulation program 531 of the virtualization device 53 retrieves data from the transmission area 512b arranged in the data memory 512 of the CPU module 51, and copies the data to the transmission buffer 534 via the communication program 532. Then, the controlled device simulation program 531 transmits the data in the transmission buffer 534 to the option module 12 of the pre-update PLC 10.
[0071] In this way, the post-update PLC 50 transfers the control data received from the pre-update PLC 10 to the controlled devices 30 via the virtualization device 53 →CPU module 51 →option module 52 . Furthermore, the post-update PLC 50 transfers the monitoring data received from the controlled devices 30 via the option module 52 → the CPU module 51 → the virtualization device 53 to the pre-update PLC 10 . By transferring the control data and monitoring data in this manner, monitoring and control of the controlled devices 30 becomes possible from the pre-update PLC 10 via the post-update PLC 50.
[0072] When the control program 511 of the CPU module 51 copies data in the receiving area 512c from the pre-update PLC 10 to the sending area 512e to the controlled device, it is possible to switch so as to copy the control data 512d of the application program 513 instead of the data in the receiving area 512c. The switching can be performed on a controlled device basis or on a data basis.
[0073] Similarly, when the control program 511 of the CPU module 51 copies data in the receiving area 512f from the controlled device to the sending area 512b to the pre-update PLC 10, it can switch so as to copy the simulation data 512a instead of the data in the receiving area 512f. The switching can be performed on a controlled device basis or on a data basis.
[0074] The switching operation to the control data 512d or the simulation data 512a is performed by the control program 511 based on the setting of the virtualization device 53. The switching instruction (condition setting) can be performed from a control parameter (description omitted) read by the application program 513 or the control program 511, or from a setting tool operating on a PC for a user interface, or from a setting tool operating on the monitoring operation device 70 connected to a higher level of the updated PLC 50. The condition setting is stored in the storage unit 80b.
[0075] In this way, the processing device (CPU module 51) has the ability to select, based on the settings of the virtualization device, to transfer control data to the communication device instead of transferring data received from the virtualization device to the communication device (option module 52). In addition, the processing device (CPU module 51) has a function that allows the communication device (option module 52) to select, based on the settings of the virtualization device, to transfer simulated data to the virtualization device instead of transferring data received from the controlled device to the virtualization device.
[0076] As described above, by switching the data of the pre-update PLC 10 and the post-update PLC 50 in real time in units of controlled devices or data units, the pre-update PLC 10 can be separated from the controlled devices, and the debugging of the post-update PLC 50 can be performed flexibly.
[0077] As described above, the monitoring and control system according to the present embodiment is a monitoring and control system in which an operation of updating a current control device (pre-update PLC 10) for monitoring and controlling a controlled device to a successor control device (post-update PLC 50) is performed. A second network (LAN 60) different from the first network (LAN 40) that connected the current control device and one or more controlled devices (controlled device group 30) before the start of the update is used to connect the current control device and the virtualization device, and the successor control device and the controlled devices are connected by the first network. The successor control device and the virtualization device are configured to be communicable. Based on the data received by the virtualization device from the current control device via the second network, the successor control device transmits control data to the controlled devices via the first network to control the controlled devices. Based on the data received by the successor control device from the controlled devices via the first network, the virtualization device transmits simulated data that is not detected as abnormal in the current control device to the current control device via the second network, and the successor control device monitors the controlled devices.
[0078] <Processing operation when the CPU module stops abnormally> Next, with reference to FIG. 7, the processing operation of the post-update PLC in the data through mode when the CPU module stops abnormally during the debugging of the post-update PLC will be described. FIG. 7 is a diagram showing an example of the configuration and processing operation of the post-update PLC in the data through mode when the CPU module according to an embodiment of the present invention stops abnormally.
[0079] 7, the virtualization device 53 and the option module 52 periodically read out CPU status information 514 inside the CPU module 51, which indicates the state of the CPU module 51, and monitor whether there is an abnormality in the operation of the CPU module 51. For example, the CPU module 51 self-diagnoses its own state and writes the diagnosis result to the CPU status information 514. Monitoring of abnormalities in the CPU module 51 is executed by a controlled device simulation program 531 of the virtualization device 53 and a communication control program 524 of the option module 52.
[0080] When the stop of the CPU module 51 is detected due to an abnormality (for example, a program error) in the CPU module 51, the controlled device simulation program 531 of the virtualization device 53 does not copy the data received from the pre-update PLC 10 to the receiving area 512c of the CPU module 51. The controlled device simulation program 531 directly copies the data received from the pre-update PLC 10 to the transmission buffer 522 of the option module 52.
[0081] Furthermore, when a stop of the CPU module 51 is detected, the communication control program 524 of the option module 52 does not copy the data received from the controlled device and stored in the receive buffer 523 in the option module 52 to the receive area 512f of the CPU module 51. The communication control program 524 passes the data received from the controlled device to the controlled device simulation program 531 of the virtualization device 53.
[0082] In this way, the virtualization device 53 and the option module 52 exchange data between the pre-update PLC 10 and the controlled devices 30 without passing through the CPU module 51. With this configuration, even if the CPU module 51 abnormally stops, it becomes possible for the pre-update PLC 10 to continue monitoring and controlling the controlled devices 30. Note that even if an abnormality occurs in the CPU module 51 that interferes with the monitoring and control of the controlled devices 30, the data-through mode may be entered.
[0083] The virtualization device 53 can also be switched to the data-through mode manually from the aforementioned setting tool. As a result, the application program 513 of the updated PLC 50 (CPU module 51) can be safely replaced without stopping the monitoring and control of the controlled device group 30.
[0084] <Procedure for Updating PLC> Next, with reference to FIG. 8, a control device update method using the virtualization device of the updated PLC will be described. FIG. 8 is a flowchart showing an example of the procedure for updating the PLC in the monitoring and control system according to the present embodiment.
[0085] First, in FIG. 1, after transitioning the output from the pre-update PLC 10 to the controlled device group 30 to a safe state, the monitoring and control by the pre-update PLC 10 is stopped. Then, the user disconnects the pre-update PLC 10 from the LAN 40 and disconnects the pre-update PLC 10 from the controlled device group 30 (step S1).
[0086] Next, as shown in FIG. 3, the user connects the virtualization device 53 installed in the updated PLC 50 and the option module 12 installed in the pre-update PLC 10 via the newly laid LAN 60 (step S2).
[0087] Next, the user connects the option module 52 installed in the updated PLC 50 to the LAN 40 laid from before, and connects the updated PLC 50 and the controlled device group 30 via the LAN 40 (step S3).
[0088] Next, the user sets the setting parameters (not shown) for communicating with the controlled device group 30 in the option module 52 installed in the updated PLC 50. Then, communication between the option module 52 of the updated PLC 50 and the controlled device group 30 is started (step S4). As a result, the monitoring and control of the controlled device group 30 by the updated PLC 50 is started.
[0089] Next, the user sets the setting parameters 533 in the virtualization device 53 implemented in the updated PLC 50 for communication with the option module 12 implemented in the pre-update PLC 10. Then, communication between the pre-update PLC 10 and the virtualization device 53 of the updated PLC 50 is started (step S5).
[0090] The virtualization device 53 starts communication with the pre-update PLC 10 by setting the setting parameters 533. Then, the virtualization device 53 starts operation simulating the controlled device group 30, using the communication status information 521 created by the communication between the option module 52 and the controlled device group 30, which started communication in step S4. This enables the pre-update PLC 10 to monitor and control the controlled device group 30 in the same way as when the controlled device group 30 is connected.
[0091] Next, debugging and adjustment of the updated PLC 50 is started (step S6). As already described, the control program 511 of the updated PLC 50 switches the data received from the pre-update PLC 10 to control data 512d and transmits it to the controlled devices 30, thereby debugging and adjusting the updated PLC 50. Moreover, the control program 511 switches the data received from the controlled devices 30 to simulation data 512 a and transmits it to the pre-update PLC 10 , thereby debugging and adjusting the post-update PLC 50 . By switching between the simulated data 512a and the actual data obtained from the controlled devices 30 depending on the area to be debugged and adjusted, it is possible to debug and adjust the updated PLC 50 while continuing monitoring and control by the pre-update PLC 10.
[0092] Next, the user determines whether the debugging and adjustment of the updated PLC 50 is completed (step S7), and if the debugging and adjustment is not completed (NO determination in step S7), the process returns to step S6. The process of step S6 is repeated until the debugging and adjustment of the updated PLC 50 is completed.
[0093] When the debugging and adjustment of the updated PLC 50 is completed (YES in step S7), the subject that monitors and controls the controlled devices is completely switched to the updated PLC 50. Then, the user removes the pre-update PLC 10 and the LAN 60 (step S8). However, the virtualization device 53 may be removed or may remain mounted on the updated PLC 50. The LAN 60 may also be left as it is. When the virtualization device 53 is to remain mounted on the updated PLC 50 after the update work is completed, the virtualization device 53 is set to be disabled, and only the CPU module 51 and the option module 52 are enabled to perform monitoring and control of the controlled devices 30.
[0094] As a result, it is possible to perform debugging and adjustment of the updated PLC 50 while the pre-update PLC 10 continues to monitor and control the controlled devices 30, and ultimately to realize updating of the PLC (switching from PLC 10 to PLC 50).
[0095] <Modification> The present invention is not limited to the above-described embodiment, and various other applications and modifications are possible without departing from the gist of the present invention as described in the claims. For example, the above-described embodiment is a detailed and specific description of the configuration in order to easily explain the present invention, and is not necessarily limited to the configuration including all of the components described. In addition, it is also possible to add, replace, or delete other components to a part of the configuration of the embodiment.
[0096] For example, the CPU module 51, the option module 52, and the virtualization device 53 are implemented in the PLC 50, but the virtualization device 53 may be disposed outside the PLC 50. In this case, the PLC 50 and the external virtualization device 53 exchange data via a dedicated line, or the LAN 40 or the LAN 60. This makes it easy to remove the virtualization device 53 after updating the PLC.
[0097] In addition, the above-mentioned configurations, functions, processing units, etc. may be realized in part or in whole by hardware, for example, by designing them as integrated circuits. As the hardware, a broad processor device such as an FPGA (Field Programmable Gate Array) or an ASIC (Application Specific Integrated Circuit) may be used.
[0098] In the above-described embodiment, the control lines and information lines are those that are considered necessary for the explanation, and not all control lines and information lines in the product are necessarily shown. In reality, it may be considered that almost all components are connected to each other. [Explanation of symbols]
[0099] 1...monitoring and control system, 10...PLC (PLC before update), 11...CPU module, 12...option module, 30...group of controlled devices, 40...LAN, 50...PLC (PLC after update), 51...CPU module, 52...option module, 53...virtualization device, 60...LAN (additional portion), 511...control program, 512...data memory, 512a...simulated data, 512b...sending area, 512c...receiving area, 512d...control data, 512e...sending area, 512f...receiving area, 513...application program, 514...CPU status information, 521...communication status information, 522...sending buffer, 523...receiving buffer, 524...communication control program, 531...controlled device simulation program, 532...communication program, 533...setting parameters, 534: Transmit buffer, 535: Receive buffer
Claims
1. A monitoring and control system in which a current control device that monitors and controls a controlled device is updated to a successor control device, a second network different from a first network that connected the current control device and one or more of the controlled devices before the start of the update, in which the current control device and a virtualization device are connected, and the successor control device and the controlled devices are connected via the first network; The successor control device and the virtualization device are configured to be able to communicate with each other, The successor control device controls the controlled device by transmitting control data to the controlled device via a first network based on data received by the virtualization device from the current control device via a second network; The virtualization device transmits simulation data, in which no abnormality is detected by the current control device, to the current control device via a second network based on the data received by the successor control device from the controlled device via a first network, and the successor control device monitors the controlled device. Supervisory control system.
2. The successor control device includes a processing device that executes monitoring and control of the controlled device, and a communication device that communicates with the controlled device; The data received from the current control device in the virtualization device is transferred to the communication device via the processing device; The data received by the communication device from the controlled device is transferred to the virtualization device via the processing device. The monitoring and control system according to claim 1 .
3. the processing device does not send data received from the current control device via the virtualization device to the controlled device, and transmits control data from the processing device to the controlled device via the communication device to control the controlled device; The virtualization device transmits data generated by the processing device by simulating the monitoring data of the controlled device, or data prepared in advance by simulating the monitoring data of the controlled device, to the current control device as the simulated data, and the processing device monitors the data received from the controlled device by the communication device. The monitoring and control system according to claim 2.
4. The processing device has a function of being able to select, based on a setting of the virtualization device, to transfer the control data to the communication device instead of transferring the data received from the virtualization device to the communication device. The monitoring and control system according to claim 3.
5. The processing device has a function of selecting, based on a setting of the virtualization device, to transfer the simulated data to the virtualization device instead of transferring the data received by the communication device from the controlled device to the virtualization device. The monitoring and control system according to claim 3.
6. the virtualization device has a controlled device simulation program for performing an operation simulating the controlled device for each of the controlled devices; The controlled device simulation program compares information of data sent from the current control device to any of the controlled devices with information of preset setting parameters, and if the two pieces of information match, determines that the destination of the data is its own controlled device and starts processing to connect to the current control device. The monitoring and control system according to claim 1 .
7. The information on the data sent to any of the controlled devices and the information on the setting parameters include at least the number of words transmitted from the current control device to the controlled device, the number of words received, the address of the transmission area, and the address of the reception area. The monitoring and control system according to claim 6.
8. When the information regarding the state of the processing device indicates an abnormality in the processing device, the virtualization device and the communication device exchange the data without passing through the processing device. The monitoring and control system according to claim 2.
9. The successor control device and the virtualization device are integrally configured. The monitoring and control system according to claim 1 .
10. A monitoring and control method for a monitoring and control system in which an operation is performed to update a current control device that monitors and controls a controlled device to a successor control device, comprising: a second network different from a first network that connected the current control device and one or more of the controlled devices before the start of the update, in which the current control device and a virtualization device are connected, and the successor control device and the controlled devices are connected via the first network; The successor control device and the virtualization device are configured to be able to communicate with each other, A process in which the successor control device transmits control data to the controlled device via a first network based on data received from the current control device by the virtualization device via a second network, thereby controlling the controlled device; The virtualization device transmits simulation data, in which no abnormality is detected by the current control device, to the current control device via a second network based on data received from the controlled device by the successor control device via a first network, and the successor control device monitors the controlled device. Supervisory control methods.
Citation Information
Patent Citations
Process controller and update method thereof
JP2015138292A