Control system, control device and communication method

The control system uses a relay device to generate additional information for validating data transfer and notify devices of abnormalities, ensuring reliable processing by confirming data integrity.

JP7779211B2Active Publication Date: 2025-12-03OMRON CORP
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
JP2022113438
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2022-07-14
Publication Date
2025-12-03
Estimated Expiration
2042-07-14

AI Technical Summary

Technical Problem

Existing control systems lack a mechanism to reliably confirm the validity of data transfer between control devices, which can lead to unreliable execution of processes using transferred data.

Method used

A control system with a relay device that generates additional information indicating the validity of data transfer, allowing control devices to confirm data integrity and notify each other of abnormalities, ensuring reliable processing.

Benefits of technology

The system ensures reliable execution of processes by confirming data validity and notifying devices of abnormalities, enhancing the reliability of data transfer and processing.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007779211000001
    Figure 0007779211000001
  • Figure 0007779211000002
    Figure 0007779211000002
  • Figure 0007779211000003
    Figure 0007779211000003
Patent Text Reader

Abstract

To provide a mechanism capable of more surely executing processing using transferred data.SOLUTION: A control system includes a first control device and a second control device, and a relay device connected to the first control device through a first transmission path and connected to the first control device through a second transmission path. The relay device is configured to be able to execute processing for transferring data transmitted from the first control device to the second control device and processing for transferring data transmitted from the second control device to the first control device. The first control device is configured to be able to execute processing for generating first additional information showing validity related to at least one data transfer of data to be transmitted to the second control device and data to be received from the second control device. The second control device is configured so as to be able to execute processing for generating second additional information showing validity related to at least one data transfer of data to be transmitted to the first control device and data to be received from the first control device.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to a control system, a control device, and a communication method. [Background technology]

[0002] With the rapid development of information and communication technology in recent years, there is an increasing need for industrial equipment to process larger amounts of data. More specifically, technological innovations using communication technology, such as IoT (Internet of Things) and Industry 4.0, are progressing. As a result, the amount of data exchanged within systems is on the rise.

[0003] As one solution to this increase in data processing volume, International Publication No. 2013 / 137023 (Patent Document 1) discloses a configuration that allows data to be updated more appropriately between devices in a configuration including multiple communication lines.

[0004] When multiple controllers are connected to multiple networks to form a network distributed control system, a relay unit is used as a gateway to transfer data between the networks. Data exchange between the control devices is realized through this gateway. [Prior art documents] [Patent documents]

[0005] [Patent Document 1] International Publication No. 2013 / 137023 Summary of the Invention [Problem to be solved by the invention]

[0006] When a control device executes a process using data received from another control device, or when a control device executes a process to transmit data to another control device, it is preferable to confirm that the target data has been transferred properly. The present invention provides a mechanism that enables more reliable execution of processes using transferred data. [Means for solving the problem]

[0007] A control system according to one embodiment of the present invention includes a first control device, a second control device, and a relay device connected to the first control device via a first transmission path and connected to the first control device via a second transmission path. The relay device is configured to be able to execute a process of transferring data transmitted from the first control device to the second control device and a process of transferring data transmitted from the second control device to the first control device. The first control device is configured to be able to execute a process of generating first additional information indicating the validity of data transfer of at least one of data to be transmitted to the second control device and data received from the second control device. The second control device is configured to be able to execute a process of generating second additional information indicating the validity of data transfer of at least one of data to be transmitted to the first control device and data received from the first control device.

[0008] According to this configuration, each of the first control device and the second control device generates additional information indicating the validity of the data transfer, thereby providing a mechanism that enables each of the first control device and the second control device to more reliably execute processing using the transferred data. For example, if the validity of the transferred data cannot be confirmed, a program can be easily written that does not execute (skips) processing using the data.

[0009] The first additional information may be available from a first user program executed by a first control device. The second additional information may be available from a second user program executed by a second control device. With this configuration, the validity of the data can be confirmed before the user program for realizing the control calculation is executed.

[0010] The first additional information may be available by specifying a predetermined variable in the first user program. The second additional information may be available by specifying a predetermined variable in the second user program. With this configuration, by specifying a variable in the user program, processing for verifying the validity of data can be realized.

[0011] When the first control device detects an abnormality in the process of transmitting and receiving data via the first transmission path, the first control device may notify the relay device of the abnormality detection. With this configuration, the abnormality detected by the first control device can be notified to other devices via the relay device.

[0012] When the second control device detects an abnormality in the process of transmitting and receiving data via the second transmission path, the second control device may notify the relay device of the abnormality detection. With this configuration, the abnormality detected by the second control device can be notified to other devices via the relay device.

[0013] The relay device may be configured to notify the second control device of the abnormality detection when it detects an abnormality in the process of transmitting and receiving data via the first transmission path, and to notify the first control device of the abnormality detection when it detects an abnormality in the process of transmitting and receiving data via the second transmission path. With this configuration, an abnormality detected by the relay device regarding one transmission path can be notified to the control device connected to the other transmission path.

[0014] The relay device may be configured to, upon receiving a notification of abnormality detection from the first control device, forward the notification to the second control device, and, upon receiving a notification of abnormality detection from the second control device, forward the notification to the first control device. With this configuration, the relay device can notify the control device connected to one transmission line of an abnormality detected by the control device connected to the other transmission line.

[0015] When the first control device receives a notification of abnormality detection from another device, the first control device may update the first additional information to a value indicating an invalid state. With this configuration, not only the abnormality detected by the first control device itself but also the notification of abnormality detection received from the other device can be reflected in the first additional information.

[0016] When the second control device receives a notification of abnormality detection from another device, the second control device may update the second additional information to a value indicating an invalid state. With this configuration, not only the abnormality detected by the second control device itself but also the notification of abnormality detection received from another device can be reflected in the second additional information.

[0017] According to another example of the present invention, there is provided a control device connected to another control device via a relay device. The relay device is configured to be able to execute a process of transferring data transmitted from the control device to the other control device and a process of transferring data transmitted from the other control device to the control device. The control device is configured to be able to execute a process of generating additional information indicating the validity of data transfer for at least one of the data to be transmitted to the other control device and the data received from the other control device.

[0018] According to yet another example of the present invention, there is provided a communication method for a control system including a first control device, a second control device, and a relay device connected to the first control device via a first transmission path and connected to the first control device via a second transmission path. The communication method includes the steps of: the relay device forwarding data transmitted from the first control device to the second control device; the relay device forwarding data transmitted from the second control device to the first control device; the first control device generating first additional information indicating validity of data transfer of at least one of the data to be transmitted to the second control device and the data received from the second control device; and the second control device generating second additional information indicating validity of data transfer of at least one of the data to be transmitted to the first control device and the data received from the first control device. [Effects of the Invention]

[0019] According to the present invention, the validity of data transfer can be confirmed and monitored, so that the control device can more reliably execute processing using the transferred data. [Brief explanation of the drawings]

[0020] [Figure 1] 1 is a schematic diagram showing an example of the overall configuration of a control system according to the present embodiment; [Figure 2] FIG. 2 is a block diagram showing an example of a hardware configuration of a first arithmetic unit of a first device according to the present embodiment. [Figure 3] FIG. 10 is a block diagram showing an example of a hardware configuration of a second arithmetic unit of a second device according to the present embodiment. [Figure 4] FIG. 10 is a block diagram showing an example of a hardware configuration of a relay unit of a second device according to the present embodiment. [Figure 5] FIG. 2 is a schematic diagram showing an overview of data transfer in the control system according to the present embodiment. [Figure 6] FIG. 10 is a diagram showing an example of a process for providing additional information indicating validity in the control system according to the present embodiment. [Figure 7] FIG. 10 is a diagram showing another example of processing for providing additional information indicating validity in the control system according to the present embodiment. [Figure 8] FIG. 10 is a diagram showing yet another example of processing for providing additional information indicating validity in the control system according to the present embodiment. [Figure 9] FIG. 10 is a diagram showing yet another example of processing for providing additional information indicating validity in the control system according to the present embodiment. [Figure 10] 10 is a flowchart illustrating an example of a processing procedure for providing additional information indicating validity by the first arithmetic unit according to the present embodiment. [Figure 11] 10 is a flowchart illustrating an example of a processing procedure for providing additional information indicating validity by a second arithmetic unit according to the present embodiment. [Figure 12]It is a flowchart showing an example of a processing procedure for providing additional information indicating the validity by the relay unit according to the present embodiment. [Figure 13] It is a schematic diagram showing an example of processing when using additional information indicating the validity in the control system according to the present embodiment.

Embodiment for Carrying Out the Invention

[0021] Embodiments of the present invention will be described in detail with reference to the drawings. Note that the same or corresponding parts in the drawings are denoted by the same reference numerals and the description thereof will not be repeated.

[0022] <A. Overall Configuration Example> Next, an overall configuration example of the control system 1 according to the present embodiment will be described.

[0023] FIG. 1 is a schematic diagram showing an overall configuration example of the control system 1 according to the present embodiment. Referring to FIG. 1, the control system 1 includes a first device 10 and one or more second devices 20. The first device and the second device may be a type of computer such as a PLC (Programmable Logic Controller).

[0024] The first device 10 and one or more second devices 20 are connected via a field network 4. The field network 4 supports cyclic communication and message communication. As the field network 4, for example, EtherCAT (registered trademark), EtherNet / IP (registered trademark), PROFINET (registered trademark), PROFIBUS (registered trademark), DeviceNet (registered trademark), FL-net, CompoNet (registered trademark), etc. may be used.

[0025] The first device 10 includes a first arithmetic unit 100 (an example of a first control device) that executes control arithmetic. The first arithmetic unit 100 enables data communication via the field network 4. The first device 10 may further include a power supply unit, an I / O unit, a special unit, etc.

[0026] The second device 20 includes a second arithmetic unit 200 (an example of a second control device) that executes control calculations, and a relay unit 250 (an example of a relay device) having an interface for connecting to the field network 4. The second device 20 may further include a power supply unit, an I / O unit, a special unit, and the like.

[0027] The second arithmetic unit 200 and the relay unit 250 are connected via an internal bus 6 (see FIGS. 3 and 4). When the second device 20 includes an I / O unit and / or a special unit, the unit is also connected via the internal bus 6.

[0028] The relay unit 250 is a gateway for transferring data between the first arithmetic unit 100 and the second arithmetic unit 200. More specifically, the relay unit 250 transfers the data transmitted from the first arithmetic unit 100 so that the second arithmetic unit 200 can refer to it, and transfers the data output by the second arithmetic unit 200 so that the first arithmetic unit 100 can refer to it.

[0029] The control system 1 may include a support device 300 for creating and changing programs, settings, etc. executed by the first device 10 and / or the second device 20. The support device 300 may be connected to the second arithmetic unit 200 of the second device 20, or may be connected to the first arithmetic unit 100 of the first device 10.

[0030] <B. Hardware Configuration Example> Next, a hardware configuration example of the main devices of the control system 1 according to the present embodiment will be described.

[0031] (b1: First arithmetic unit 100) 2 is a block diagram showing an example of a hardware configuration of first arithmetic unit 100 of first device 10 according to the present embodiment. Referring to Fig. 2, first arithmetic unit 100 includes a processor 102 such as a CPU (Central Processing Unit) or an MPU (Micro-Processing Unit), a chipset 104, a memory 106, a storage 108, a host network interface 110, a USB (Universal Serial Bus) interface 112, a memory card interface 114, and a field network interface 120.

[0032] The processor 102 reads various programs stored in the storage 108, expands them in the memory 106, and executes them to realize the processing required by the first arithmetic unit 100. The chipset 104 controls data communication between the processor 102 and each component.

[0033] The storage 108 typically stores a system program 131 and a user program 132 that includes computer-readable code necessary for control operations.

[0034] Execution of the program stored in storage 108 causes the first calculation unit 100, which is a computer, to execute the processing described in this specification and causes the first calculation unit 100, which is a computer, to realize the functional configuration described in this specification.

[0035] The upper network interface 110 controls data communication with other devices via an upper network, and the USB interface 112 controls data communication with a support device via a USB connection.

[0036] The memory card interface 114 is configured to allow a memory card 116 to be attached and detached, and is capable of writing data to the memory card 116 and reading various data (user programs, trace data, etc.) from the memory card 116.

[0037] The field network interface 120 controls data communication with the second device 20 via the field network 4 .

[0038] (b2: second calculation unit 200) 3 is a block diagram showing an example of a hardware configuration of second arithmetic unit 200 of second device 20 according to the present embodiment. Referring to FIG. 3, second arithmetic unit 200 includes a processor 202 such as a CPU or an MPU, a chipset 204, a memory 206, a storage 208, a host network interface 210, a USB interface 212, a memory card interface 214, and an internal bus interface 220.

[0039] The processor 202 reads various programs stored in the storage 208, expands them in the memory 206, and executes them to realize the processing required by the second arithmetic unit 200. The chipset 204 controls data communication between the processor 202 and each component.

[0040] The storage 208 typically stores a system program 231 and a user program 232 that includes computer-readable code necessary for control operations.

[0041] Execution of the program stored in storage 208 causes the second calculation unit 200, which is a computer, to execute the processing described in this specification and realizes the functional configuration described in this specification in the second calculation unit 200, which is a computer.

[0042] The upper network interface 210 controls data communication with other devices via an upper network, and the USB interface 212 controls data communication with a support device via a USB connection.

[0043] The memory card interface 214 is configured to allow a memory card 216 to be attached and detached, and is capable of writing data to the memory card 216 and reading various data (user programs, trace data, etc.) from the memory card 216.

[0044] The internal bus interface 220 controls data communication with one or more units (including the relay unit 250) via the internal bus 6.

[0045] The internal bus 6 supports cyclic communication and message communication, similar to the field network 4. A manufacturer-specific communication method may be adopted as the internal bus 6, or, for example, EtherCAT (registered trademark), EtherNet / IP (registered trademark), PROFINET (registered trademark), PROFIBUS (registered trademark), DeviceNet (registered trademark), FL-net, CompoNet (registered trademark), etc. may also be used.

[0046] (b3: Relay unit 250) 4 is a block diagram showing an example of a hardware configuration of relay unit 250 of second device 20 according to the present embodiment. Referring to FIG. 4, relay unit 250 includes a processing circuit 260, a field network interface 270, and an internal bus interface 280.

[0047] The processing circuit 260 realizes the processing and functions of the relay unit 250 as described below. More specifically, the processing circuit 260 includes a processor 262, a memory 264, and a storage 266. The processor 262 reads out a system program (firmware) stored in the storage 266, expands it in the memory 264, and executes it, thereby realizing the processing required by the relay unit 250.

[0048] The field network interface 270 controls data communication with the first arithmetic unit 100 via the field network 4 .

[0049] The internal bus interface 280 controls data communication with one or more units (including the second arithmetic unit 200) via the internal bus 6.

[0050] (b4: Other configurations) 2 to 4 show configuration examples in which the necessary functions are provided by a processor executing a program, but some or all of these provided functions may be implemented using dedicated hardware circuits (e.g., an ASIC (Application Specific Integrated Circuit) or an FPGA (Field-Programmable Gate Array)).

[0051] In this specification, the term "processor" is not limited to a processor in the narrow sense that executes processing using a stored program, but may also include hardwired circuits such as ASICs and FPGAs. Therefore, the term "processor" can also be interpreted as processing circuitry whose processing is predefined by computer-readable code and / or hardwired circuits.

[0052] The main part of the computing unit may be realized using hardware that conforms to a general-purpose architecture (for example, an industrial PC based on a general-purpose PC). In this case, virtualization technology may be used to run multiple operating systems (OS) for different purposes in parallel, and necessary applications may be run on each OS.

[0053] (b5: Support device 300) The support device 300 according to the present embodiment is configured, for example, by a general-purpose computer or the like that follows a general-purpose architecture. Since a hardware configuration example of a general-purpose computer is well-known, a detailed description thereof will not be given.

[0054] <C. Data Transfer> Next, the process related to data transfer in the control system 1 according to the present embodiment will be described.

[0055] FIG. 5 is a schematic diagram showing an overview of data transfer in the control system 1 according to the present embodiment. FIG. 5 shows an example of data transmission between the first arithmetic unit 100 and the second arithmetic unit 200.

[0056] Referring to FIG. 5, a relay unit 250 is arranged between the first arithmetic unit 100 and the second arithmetic unit 200 as a gateway. The relay unit 250 is connected to the first arithmetic unit 100 via a field network 4 which is an example of the first transmission path, and is connected to the second arithmetic unit 200 via an internal bus 6 which is an example of the second transmission path.

[0057] It is assumed that there are cases where the output data of the first arithmetic unit 100 is transmitted to the second arithmetic unit 200 via the relay unit 250, and cases where the output data of the second arithmetic unit 200 is transmitted to the first arithmetic unit 100 via the relay unit 250.

[0058] The data (output data) transmitted from the first arithmetic unit 100 is transmitted to the relay unit 250. The relay unit 250 transmits the data received as the output data of the first arithmetic unit 100 to the second arithmetic unit 200 as the input data of the second arithmetic unit 200.

[0059] On the other hand, the data (output data) transmitted from the second arithmetic unit 200 is transmitted to the relay unit 250. The relay unit 250 transmits the data received as the output data of the second arithmetic unit 200 to the first arithmetic unit 100 as the input data of the first arithmetic unit 100.

[0060] In this way, the relay unit 250 transfers data between the first arithmetic unit 100 and the second arithmetic unit 200. That is, the relay unit 250 executes a process of transferring data transmitted from the first arithmetic unit 100 to the second arithmetic unit 200, and a process of transferring data transmitted from the second arithmetic unit 200 to the first arithmetic unit 100.

[0061] The control system 1 according to this embodiment has a mechanism for confirming and monitoring the legitimacy of data transfer. In this specification, "legitimacy of data transfer" means information indicating that the target data has been transferred appropriately and / or that the data to be transmitted or received is in a state in which it can be transferred appropriately.

[0062] More specifically, the first arithmetic unit 100 executes a process of generating additional information indicating the validity of at least one of the data transfers of the data to be transmitted to the second arithmetic unit 200 and the data received from the second arithmetic unit 200. This allows the user program 132 executed by the first arithmetic unit 100 to use the additional information indicating the validity of the output data transmitted from the first arithmetic unit 100 to the second arithmetic unit 200 and the additional information indicating the validity of the input data received by the first arithmetic unit 100 from the second arithmetic unit 200.

[0063] Similarly, the second arithmetic unit 200 executes a process of generating additional information indicating the validity of at least one of the data transfers of the data to be transmitted to the first arithmetic unit 100 and the data received from the first arithmetic unit 100. This allows the user program 232 executed by the second arithmetic unit 200 to use the additional information indicating the validity of the output data transmitted from the second arithmetic unit 200 to the first arithmetic unit 100 and the additional information indicating the validity of the input data received by the second arithmetic unit 200 from the first arithmetic unit 100.

[0064] In this specification, the "additional information indicating the validity of data transfer" may be information that varies in value depending on, for example, whether the target data has been properly transferred (and / or whether the data scheduled to be transmitted or received can be properly transferred). When some abnormality occurs in the transfer path, the additional information indicating validity is set to a value indicating that the corresponding data is not valid. Hereinafter, the "additional information indicating validity" may sometimes be simply abbreviated as "additional information".

[0065] The additional information may be assigned to, for example, device variables and system variables managed by each of the first arithmetic unit 100 and the second arithmetic unit 200. That is, based on the values indicated by the target device variables and system variables, it may be possible to monitor whether the corresponding data is valid. Note that the device variables and system variables may be member variables of a data object.

[0066] <D. Provision of Additional Information Indicating Validity> Next, the processes for providing additional information indicating validity in the first arithmetic unit 100 and the second arithmetic unit 200 will be described. Hereinafter, examples of processes for providing additional information indicating validity will be described.

[0067] In the following description, as the additional information indicating validity, the additional information 401 for input data and the additional information 402 for output data managed by the first arithmetic unit 100, and the additional information 411 for input data and the additional information 412 for output data managed by the second arithmetic unit 200 are exemplified. Note that the additional information 401 for input data and the additional information 402 for output data may be common additional information without distinction. Similarly, the additional information 411 for input data and the additional information 412 for output data may be common additional information without distinction.

[0068] Fig. 6 is a diagram showing an example of processing for providing additional information indicating validity in control system 1 according to this embodiment. Fig. 6 shows an example of processing when second arithmetic unit 200 detects some kind of abnormality in the processing of transmitting and receiving data via internal bus 6. For example, this can be the case when some kind of abnormality occurs in the transmission and reception of data by internal bus interface 220 (Fig. 3) of second arithmetic unit 200.

[0069] 6, first, the second arithmetic unit 200 detects some abnormality in the process of transmitting and receiving data via the internal bus 6 ((1) abnormality detection). Then, the second arithmetic unit 200 updates the input data additional information 411 and the output data additional information 412 to values ​​indicating an invalid state ((2) and (3) update).

[0070] In this case, when the relay unit 250 receives a notification of abnormality detection from the second arithmetic unit 200, or when the relay unit 250 detects some abnormality in the process of sending and receiving data via the internal bus 6 by itself ((4) abnormality detection), it notifies the first arithmetic unit 100 of the abnormality detection ((5) notification).

[0071] When the first calculation unit 100 receives notification of abnormality detection from the relay unit 250, it updates the input data additional information 401 and the output data additional information 402 to values ​​indicating an invalid state (updates (6), (7)).

[0072] As described above, if the second arithmetic unit 200 detects any abnormality in the process of sending and receiving data via the internal bus 6, it is determined that data cannot be sent and received between the first arithmetic unit 100 and the second arithmetic unit 200, and the additional information is updated to indicate an invalid state.

[0073] Fig. 7 is a diagram showing another example of processing for providing additional information indicating validity in control system 1 according to the present embodiment. Fig. 7 shows an example of processing when relay unit 250 detects some kind of abnormality in the processing of transmitting and receiving data via internal bus 6. For example, this can be the case when some kind of abnormality occurs in the transmission and reception of data by internal bus interface 280 (Fig. 4) of relay unit 250.

[0074] Referring to FIG. 7, first, the relay unit 250 detects some kind of abnormality in the process of transmitting and receiving data via the internal bus 6 ((1) Abnormality detection).

[0075] Then, the relay unit 250 notifies the second arithmetic unit 200 of the abnormality detection ((2) notification). Upon receiving the abnormality detection notification from the relay unit 250, the second arithmetic unit 200 updates the input data additional information 411 and the output data additional information 412 to values ​​indicating an invalid state ((3) and (4) update).

[0076] Furthermore, the relay unit 250 notifies the first arithmetic unit 100 of the abnormality detection ((5) Notification). Upon receiving the abnormality detection notification from the relay unit 250, the first arithmetic unit 100 updates the input data additional information 411 and the output data additional information 412 to values ​​indicating an invalid state ((6) and (7) Update).

[0077] As described above, if the relay unit 250 detects any abnormality in the process of sending and receiving data via the internal bus 6, it determines that data cannot be sent and received between the first calculation unit 100 and the second calculation unit 200, and updates the additional information to indicate an invalid state.

[0078] Fig. 8 is a diagram showing yet another example of processing for providing additional information indicating validity in control system 1 according to the present embodiment. Fig. 8 shows an example of processing when relay unit 250 detects some kind of abnormality in the processing of transmitting and receiving data via field network 4. For example, this can be the case when some kind of abnormality occurs in the transmission and reception of data by field network interface 270 (Fig. 4) of relay unit 250.

[0079] Referring to FIG. 8, first, the relay unit 250 detects some kind of abnormality in the process of transmitting and receiving data via the field network 4 ((1) Abnormality detection).

[0080] Then, the relay unit 250 notifies the first arithmetic unit 100 of the abnormality detection ((2) notification). Upon receiving the abnormality detection notification from the relay unit 250, the first arithmetic unit 100 updates the input data additional information 401 and the output data additional information 402 to values ​​indicating an invalid state ((3) and (4) update).

[0081] Furthermore, the relay unit 250 notifies the second arithmetic unit 200 of the abnormality detection ((5) Notification). Upon receiving the abnormality detection notification from the relay unit 250, the first arithmetic unit 100 updates the input data additional information 411 and the output data additional information 412 to values ​​indicating an invalid state ((6) and (7) Update).

[0082] As described above, if the relay unit 250 detects any abnormality in the process of sending and receiving data via the field network 4, it determines that data cannot be sent and received between the first calculation unit 100 and the second calculation unit 200, and the additional information is updated to indicate an invalid state.

[0083] Fig. 9 is a diagram showing yet another example of processing for providing additional information indicating validity in the control system 1 according to the present embodiment. Fig. 9 shows an example of processing when the first arithmetic unit 100 detects some kind of abnormality in the processing of transmitting and receiving data via the field network 4. For example, this can be the case when some kind of abnormality occurs in the transmission and reception of data by the field network interface 120 (Fig. 2) of the first arithmetic unit 100.

[0084] 9, first, the first arithmetic unit 100 detects some kind of abnormality in the process of transmitting and receiving data via the field network 4 ((1) abnormality detection). Then, the first arithmetic unit 100 updates the input data additional information 401 and the output data additional information 402 to values ​​indicating an invalid state ((2) and (3) update).

[0085] The first arithmetic unit 100 also notifies the relay unit 250 of the abnormality detection ((4) notification). Furthermore, the relay unit 250 notifies the second arithmetic unit 200 of the abnormality detection ((5) notification).

[0086] When the second calculation unit 200 receives notification of abnormality detection from the relay unit 250, it updates the input data additional information 411 and the output data additional information 412 to values ​​indicating an invalid state (updates (6), (7)).

[0087] As described above, if the first calculation unit 100 detects any abnormality in the process of sending and receiving data via the field network 4, it is determined that data cannot be sent and received between the first calculation unit 100 and the second calculation unit 200, and the additional information is updated to indicate an invalid state.

[0088] Note that the first computing unit 100, the second computing unit 200, and some or all of the relay unit 250 may record information indicating the content and type of the detected abnormality by any method. In this case, the stored information may be read out via the support device 300 or the like.

[0089] <Example of processing procedure> Next, an example of a processing procedure for providing additional information indicating validity will be described.

[0090] FIG. 10 is a flowchart showing an example of a processing procedure for providing additional information indicating validity by the first arithmetic unit 100 according to the present embodiment. Each step shown in FIG. 10 may be realized by the processor 102 of the first arithmetic unit 100 executing the system program 131.

[0091] Referring to FIG. 10, the first arithmetic unit 100 determines whether any abnormality has occurred in the process of transmitting and receiving data via the field network 4 (step S100). <SimpleN

[0092] If any abnormality has occurred in the process of transmitting and receiving data via the field network 4 (YES in step S100), the first arithmetic unit 100 notifies the relay unit 250 of the abnormality detection (step S102). Subsequently, the first arithmetic unit 100 updates the additional information 401 for input data and the additional information 402 for output data to values indicating an invalid state, respectively (step S104). Then, the processing below step S100 is repeated.

[0093] As described above, when the first arithmetic unit 100 detects an abnormality in the process of transmitting and receiving data via the field network 4, it notifies the relay unit 250 of the abnormality detection.

[0094] On the other hand, if no abnormality has occurred in the process of transmitting and receiving data via the field network 4 (NO in step S100), the first arithmetic unit 100 determines whether it has received a notification of abnormality detection from the relay unit 250 (step S106). If it has not received a notification of abnormality detection from the relay unit 250 (NO in step S106), the processing below step S100 is repeated.

[0095] If a notification of abnormality detection has been received from the relay unit 250 (YES in step S106), the processing from step S104 onwards is executed. That is, when the first arithmetic unit 100 receives a notification of abnormality detection from another device, it updates the input data additional information 401 and the output data additional information 402 to values ​​indicating an invalid state.

[0096] In addition, when the detected abnormality is resolved and / or when a notification of recovery from the abnormality is received from the relay unit 250, the additional information for input data 401 and the additional information for output data 402 may be updated to indicate valid values.

[0097] 11 is a flowchart showing an example of a processing procedure for providing additional information indicating validity by the second arithmetic unit 200 according to this embodiment. Each step shown in FIG. 11 may be realized by the processor 202 of the second arithmetic unit 200 executing the system program 231.

[0098] Referring to FIG. 11, the second calculation unit 200 determines whether or not some abnormality has occurred in the process of transmitting and receiving data via the internal bus 6 (step S200).

[0099] If some abnormality occurs in the process of transmitting and receiving data via the internal bus 6 (YES in step S200), the second calculation unit 200 notifies the relay unit 250 of the abnormality detection (step S202). Subsequently, the second calculation unit 200 updates the input data additional information 411 and the output data additional information 412 to values ​​indicating an invalid state (step S204). Then, the process from step S200 onwards is repeated.

[0100] In this way, when the second calculation unit 200 detects an abnormality in the process of transmitting and receiving data via the internal bus 6, it notifies the relay unit 250 of the abnormality detection.

[0101] On the other hand, if no abnormality has occurred in the process of transmitting and receiving data via the internal bus 6 (NO in step S200), the second calculation unit 200 determines whether or not a notification of abnormality detection has been received from the relay unit 250 (step S206). If a notification of abnormality detection has not been received from the relay unit 250 (NO in step S206), the processes from step S200 onwards are repeated.

[0102] If a notification of abnormality detection has been received from the relay unit 250 (YES in step S206), the processing from step S204 onwards is executed. That is, when the second arithmetic unit 200 receives a notification of abnormality detection from another device, it updates the input data additional information 411 and the output data additional information 412 to values ​​indicating an invalid state.

[0103] In addition, when the detected abnormality is resolved and / or when a notification of recovery from the abnormality is received from the relay unit 250, the additional information for input data 411 and the additional information for output data 412 may be updated to indicate valid values.

[0104] 12 is a flowchart showing an example of a processing procedure for providing additional information indicating the validity by the relay unit 250 according to the present embodiment. Each step shown in FIG. 12 may be realized by the processor 262 of the relay unit 250 executing a system program.

[0105] Referring to FIG. 12, the relay unit 250 determines whether or not some abnormality has occurred in the process of transmitting and receiving data via the field network 4 (step S300).

[0106] If any abnormality occurs in the process of sending and receiving data via the field network 4 (YES in step S300), the relay unit 250 notifies the first calculation unit 100 of the abnormality detection (step S302) and also notifies the second calculation unit 200 of the abnormality detection (step S304).

[0107] In this way, when the relay unit 250 detects an abnormality in the process of transmitting and receiving data via the field network 4, it notifies the second calculation unit 200 of the abnormality detection.

[0108] If no abnormality has occurred in the process of transmitting and receiving data via the field network 4 (NO in step S300), the processes of steps S302 and S304 are skipped.

[0109] Next, the relay unit 250 determines whether or not any abnormality has occurred in the process of transmitting and receiving data via the internal bus 6 (step S306).

[0110] If any abnormality occurs in the process of sending and receiving data via the internal bus 6 (YES in step S306), the relay unit 250 notifies the first calculation unit 100 of the abnormality detection (step S308) and also notifies the second calculation unit 200 of the abnormality detection (step S310).

[0111] In this way, when the relay unit 250 detects an abnormality in the process of transmitting and receiving data via the internal bus 6, it notifies the first calculation unit 100 of the abnormality detection.

[0112] If no abnormality occurs in the process of transmitting and receiving data via the internal bus 6 (NO in step S306), the processes of steps S308 and S310 are skipped.

[0113] Next, the relay unit 250 determines whether or not a notification of abnormality detection has been received from the first arithmetic unit 100 (step S312). If a notification of abnormality detection has been received from the first arithmetic unit 100 (YES in step S312), the relay unit 250 notifies the second arithmetic unit 200 of the abnormality detection (step S314).

[0114] Thus, when the relay unit 250 receives a notification of abnormality detection from the first arithmetic unit 100, it transfers the notification to the second arithmetic unit 200.

[0115] If the notification of abnormality detection has not been received from the first arithmetic unit 100 (NO in step S312), the process of step S314 is skipped.

[0116] Subsequently, the relay unit 250 determines whether it has received a notification of abnormality detection from the second arithmetic unit 200 (step S316). If it has received the notification of abnormality detection from the second arithmetic unit 200 (YES in step S316), the relay unit 250 notifies the first arithmetic unit 100 of the abnormality detection (step S318).

[0117] Thus, when the relay unit 250 receives a notification of abnormality detection from the second arithmetic unit 200, it transfers the notification to the first arithmetic unit 100.

[0118] If the notification of abnormality detection has not been received from the second arithmetic unit 200 (NO in step S316), the process of step S318 is skipped.

[0119] Then, the processes below step S300 are repeated. Note that when the relay unit 250 receives a notification of abnormality recovery from the first arithmetic unit 100 and / or the second arithmetic unit 200, the relay unit 250 may transfer the notification of abnormality recovery to the second arithmetic unit 200 and / or the first arithmetic unit 100.

[0120] <F. Use of additional information indicating validity> Next, a processing example when the user program 132 executed by the first arithmetic unit 100 and the user program 232 executed by the second arithmetic unit 200 use additional information indicating validity will be described.

[0121] FIG. 13 is a schematic diagram showing a processing example when additional information indicating validity is used in control system 1 according to the present embodiment.

[0122] 13, in the first arithmetic unit 100 and the second arithmetic unit 200, for example, the input data and the output data may each be referenced as a data object. A data object 430 for the input data includes one or more pieces of input data 432 and corresponding input data additional information 401 (or input data additional information 411). Similarly, a data object 440 for the output data includes one or more pieces of output data 442 and corresponding output data additional information 402 (or output data additional information 412).

[0123] In the user programs 132 and 232, member data (variables) contained in these data objects 430 and 440 can be appropriately specified.

[0124] The variables (or variable names) indicating the additional information may be arbitrarily defined by the user, or may be predefined by the system. As a method for the user to arbitrarily define the variables, for example, one or more variables may be prepared in advance for the additional information, and the user may assign (map) the additional information of his / her choice to each variable. The additional information that each variable indicates is determined by the user's operation. In this case, the variable names of the variables prepared for the additional information may include a prefix or suffix indicating that they are for additional information. Alternatively, any variable name may be assigned to any additional information.

[0125] On the other hand, when the additional information is defined in advance as a system, a system variable may be assigned to each available additional information. Even in this case, the variable name assigned to each additional information may include a prefix or suffix indicating that it is for additional information.

[0126] Thus, in the user program 132 executed by the first arithmetic unit 100, by specifying a variable indicating predetermined additional information, the additional information 401 for input data and / or the additional information 402 for output data can be used. Similarly, in the user program 232 executed by the second arithmetic unit 200, by specifying a variable indicating predetermined additional information, the additional information 411 for input data and / or the additional information 412 for output data can be used.

[0127] By implementing such data objects 430 and 440, the creation of the user program can be simplified.

[0128] <G. Variation> In the above description, mainly, the configuration example in which the first arithmetic unit 100 and the second arithmetic unit 200 manage the additional information has been described. However, in addition to the first arithmetic unit 100 and the second arithmetic unit 200, the relay unit 250 can also manage the additional information. The additional information managed by the relay unit 250 can be substantially synchronized with the additional information managed by the first arithmetic unit 100 and / or the second arithmetic unit 200.

[0129] Furthermore, instead of the first arithmetic unit 100 and the second arithmetic unit 200 managing the entity of the additional information, the relay unit 250 may manage it. In this case, when additional information is requested from the user program executed by the first arithmetic unit 100 and / or the second arithmetic unit 200, the relay unit 250 may provide the requested additional information to the first arithmetic unit 100 and / or the second arithmetic unit 200.

[0130] Also, the support device 300 may be connected to the relay unit 250 so that the additional information managed by the relay unit 250 can be monitored.

[0131] Thus, not only the first arithmetic unit 100 and the second arithmetic unit 200 manage the additional information, but the relay unit 250 may also manage the additional information.

[0132] <H. Supplementary Note> The embodiment as described above includes the following technical concepts.

[0133] [Configuration 1] A control system (1), comprising: a first control device (100) and a second control device (200); and a relay device (250) connected to the first control device via a first transmission line (4) and also connected to the first control device via a second transmission line (6), where the relay device is configured to be capable of executing a process of transferring data transmitted from the first control device to the second control device and a process of transferring data transmitted from the second control device to the first control device; the first control device is configured to be capable of executing a process of generating first additional information (401, 402) indicating the validity of at least one of the data transfer of the data to be transmitted to the second control device and the data received from the second control device; the second control device is configured to be capable of executing a process of generating second additional information (411, 412) indicating the validity of at least one of the data transfer of the data to be transmitted to the first control device and the data received from the first control device.

[0134] [Configuration 2] The first additional information is available from a first user program (132) executed by the first control device, and the second additional information is available from a second user program (232) executed by the second control device. The control system according to Configuration 1.

[0135] [Configuration 3] The first additional information is available by designating a variable predetermined in the first user program, 3. The control system according to configuration 2, wherein the second additional information is available by specifying a predetermined variable in the second user program.

[0136] [Configuration 4] The control system according to any one of configurations 1 to 3, wherein when the first control device detects an abnormality in the process of transmitting and receiving data via the first transmission path, it notifies the relay device of the abnormality detection (S100, S102).

[0137] [Configuration 5] The control system according to any one of configurations 1 to 4, wherein when the second control device detects an abnormality in the process of transmitting and receiving data via the second transmission path, it notifies the relay device of the abnormality detection (S200, S202).

[0138] [Configuration 6] The relay device When an abnormality is detected in the process of transmitting and receiving data via the first transmission path, the second control device is notified of the abnormality detection (S300, S304); The control system according to any one of configurations 1 to 5, wherein when an abnormality is detected in the process of transmitting and receiving data via the second transmission path, the first control device is notified of the abnormality detection (S306, S308).

[0139] [Configuration 7] The relay device When receiving a notification of abnormality detection from the first control device, the notification is transferred to the second control device (S312, S314); The control system according to any one of configurations 1 to 6, wherein, when a notification of abnormality detection is received from the second control device, the notification is transferred to the first control device (S316, S318).

[0140] [Configuration 8] The control system according to any one of configurations 1 to 7, wherein, when the first control device receives a notification of abnormality detection from another device, the first control device updates the first additional information to a value indicating an invalid state (S104).

[0141] [Configuration 9] The control system according to any one of configurations 1 to 8, wherein the second control device, upon receiving notification of abnormality detection from another device, updates the second additional information to a value indicating an invalid state (S204).

[0142] [Configuration 10] A control device (100; 200) connected to another control device (200; 100) via a relay device (250), the relay device is configured to be able to execute a process of transferring data transmitted from the control device to the other control device and a process of transferring data transmitted from the other control device to the control device, The control device is configured to be able to execute a process of generating additional information (401, 402; 411, 412) indicating the legitimacy of data transfer for at least one of data to be sent to the other control device and data received from the other control device.

[0143] [Configuration 11] A communication method in a control system (1) including a first control device (100), a second control device (200), and a relay device (250) connected to the first control device via a first transmission path (4) and connected to the first control device via a second transmission path (6), comprising: a step of the relay device transferring the data transmitted from the first control device to the second control device; a step of the relay device transferring the data transmitted from the second control device to the first control device; a step (S104) of generating first additional information (401, 402) by the first control device, the first additional information indicating validity of data transfer of at least one of data to be transmitted to the second control device and data to be received from the second control device; A communication method comprising a step (S204) in which the second control device generates second additional information (411, 412) indicating the legitimacy of data transfer of at least one of the data to be sent to the first control device and the data received from the first control device.

[0144] The embodiments disclosed herein should be considered to be illustrative in all respects and not restrictive. The scope of the present invention is defined by the claims, not by the above description, and is intended to include all modifications within the meaning and scope of the claims. [Explanation of symbols]

[0145] 1 control system, 4 field network, 6 internal bus, 10 first device, 20 second device, 100 first arithmetic unit, 102, 202, 262 processor, 104, 204 chipset, 106, 206, 264 memory, 108, 208, 266 storage, 110, 210 upper network interface, 112, 212 interface, 114, 214 memory card interface, 116, 216 memory card, 120, 270 field network interface, 131, 231 system program, 132, 232 user program, 200 second arithmetic unit, 220, 280 internal bus interface, 250 relay unit, 260 processing circuit, 300 support device, 401, 411 additional information for input data, 402, 412 additional information for output data, 430, 440 data object, 432 Input data, 442 output data.

Claims

1. 1. A control system comprising: a first control device and a second control device; a relay device connected to the first control device via a first transmission line and connected to the first control device via a second transmission line; the relay device is configured to be able to execute a process of transferring data transmitted from the first control device to the second control device and a process of transferring data transmitted from the second control device to the first control device, the first control device is configured to be able to execute a process of generating first additional information indicating validity of data transfer of at least one of data to be transmitted to the second control device and data received from the second control device; A control system in which the second control device is configured to execute a process of generating second additional information indicating the legitimacy of data transfer for at least one of data to be sent to the first control device and data received from the first control device.

2. the first additional information is available from a first user program executed by the first control device; The control system of claim 1 , wherein the second additional information is available from a second user program executed on the second control device.

3. the first additional information is available by specifying a predetermined variable in the first user program; The control system according to claim 2 , wherein the second additional information is available by specifying a predetermined variable in the second user program.

4. The control system according to any one of claims 1 to 3, wherein when the first control device detects an abnormality in the process of transmitting and receiving data via the first transmission path, it notifies the relay device of the abnormality detection.

5. The control system according to any one of claims 1 to 3, wherein when the second control device detects an abnormality in the process of transmitting and receiving data via the second transmission path, it notifies the relay device of the abnormality detection.

6. The relay device When an abnormality is detected in the process of transmitting and receiving data via the first transmission path, the second control device is notified of the abnormality detection; 4. The control system according to claim 1, wherein when an abnormality is detected in the process of transmitting and receiving data via the second transmission path, the control system notifies the first control device of the abnormality detection.

7. The relay device When receiving a notification of abnormality detection from the first control device, the notification is transferred to the second control device; 4. The control system according to claim 1, wherein, when a notification of abnormality detection is received from the second control device, the notification is transferred to the first control device.

8. The control system according to any one of claims 1 to 3, wherein when the first control device receives a notification of abnormality detection from another device, it updates the first additional information to a value indicating an invalid state.

9. The control system according to any one of claims 1 to 3, wherein the second control device, when receiving a notification of abnormality detection from another device, updates the second additional information to a value indicating an invalid state.

10. A control device connected to another control device via a relay device, the relay device is configured to be able to execute a process of transferring data transmitted from the control device to the other control device and a process of transferring data transmitted from the other control device to the control device, The control device is configured to be able to execute a process of generating additional information indicating the legitimacy of data transfer for at least one of the data to be sent to the other control device and the data received from the other control device.

11. A communication method in a control system including a first control device, a second control device, and a relay device connected to the first control device via a first transmission path and connected to the first control device via a second transmission path, a step of the relay device transferring the data transmitted from the first control device to the second control device; a step of the relay device transferring the data transmitted from the second control device to the first control device; generating first additional information indicating validity of data transfer of at least one of data to be transmitted to the second control device and data to be received from the second control device by the first control device; A communication method comprising a step in which the second control device generates second additional information indicating the legitimacy of data transfer of at least one of the data to be sent to the first control device and the data received from the first control device.

Citation Information

Patent Citations

  • Method and device for data transfer

    JP1998301889A

  • Gateway device with network monitoring function

    JP2006222649A

  • Safety control system and safety control unit

    JP2019179361A

  • Image forming apparatus and data communication method

    JP2021047668A

  • Control device, image processing device, control method, computer-readable recording medium, and program

    WO2013137023A1