WO2024014048A1 - 制御システム、制御装置および通信方法 - Google Patents

制御システム、制御装置および通信方法 Download PDF

Info

Publication number
WO2024014048A1
WO2024014048A1 PCT/JP2023/008845 JP2023008845W WO2024014048A1 WO 2024014048 A1 WO2024014048 A1 WO 2024014048A1 JP 2023008845 W JP2023008845 W JP 2023008845W WO 2024014048 A1 WO2024014048 A1 WO 2024014048A1
Authority
WO
WIPO (PCT)
Prior art keywords
control device
additional information
data
relay
arithmetic unit
Prior art date
Application number
PCT/JP2023/008845
Other languages
English (en)
French (fr)
Inventor
貴雅 植田
Original Assignee
オムロン株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by オムロン株式会社 filed Critical オムロン株式会社
Publication of WO2024014048A1 publication Critical patent/WO2024014048A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks

Definitions

  • the present invention relates to a control system, a control device, and a communication method.
  • Patent Document 1 proposes a method for more appropriately updating data between devices in a configuration including multiple communication lines. Disclose possible configurations.
  • a relay unit that is a gateway in charge of data transfer between networks is used. Data exchange between control devices is realized through such a gateway.
  • the present invention provides a mechanism that can more reliably execute processing using transferred data.
  • a control system includes a first control device, a second control 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 capable of executing a process of generating first additional information indicating the validity of data transfer of at least one of the data transmitted to the second control device and the data received from the second control device. It is configured.
  • the second control device is capable of executing a process of generating second additional information indicating the validity of data transfer of at least one of the data transmitted to the first control device and the data received from the first control device. It is configured.
  • each of the first control device and the second control device generates additional information indicating the validity of the data transfer, so that the first control device and the second control device each generate the additional information that indicates the validity of the data transfer.
  • the first additional information may be available from the first user program executed by the first control device.
  • the second additional information may be available from a second user program executed on the second control device. According to this configuration, the user program for realizing the control calculation can be executed after confirming the validity of the data.
  • 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. According to this configuration, by specifying variables in the user program, it is possible to implement processing for confirming the validity of data.
  • the first control device When the first control device detects an abnormality in the process of transmitting and receiving data via the first transmission path, it may notify the relay device of the abnormality detection. According to this configuration, the abnormality detected by the first control device can be notified to other devices via the relay device.
  • the second control device When the second control device detects an abnormality in the process of transmitting and receiving data via the second transmission path, it may notify the relay device of the abnormality detection. According to this configuration, the abnormality detected by the second control device can be notified to other devices via the relay device.
  • the relay device When the relay device detects an abnormality in the process of transmitting and receiving data via the first transmission path, the relay device notifies the second control device of the abnormality detection, and when the relay device detects an abnormality in the process of transmitting and receiving data via the second transmission path. , the abnormality detection may be notified to the first control device. According to 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.
  • the relay device When the relay device receives a notification of abnormality detection from the first control device, it transfers the notification to the second control device, and when it receives a notification of abnormality detection from the second control device, it transfers the notification to the first control device. You may also do so. According to this configuration, the relay device can notify the control device connected to the other transmission path of an abnormality detected by the control device connected to one transmission path.
  • the first control device may update the first additional information to a value indicating an invalid state. According to this configuration, not only abnormalities detected by the own device but also notifications of abnormality detection received from other devices can be reflected in the first additional information.
  • the second control device may update the second additional information to a value indicating an invalid state. According to this configuration, not only abnormalities detected by the own device but also notifications of abnormality detection received from other devices can be reflected in the second additional information.
  • a control device is provided that is connected to another control device via a relay device.
  • the relay device is configured to be able to perform a process of transferring data transmitted from a control device to another control device, and a process of transferring data transmitted from another control device to the control device.
  • the control device is configured to be able to execute a process of generating additional information indicating validity of data transfer of at least one of data transmitted to another control device and data received from another control device. .
  • the first control device and the second control device are connected to the first control device via the first transmission path, and the first control device is connected to the first control device via the second transmission path.
  • a communication method in a control system including a relay device connected to a relay device is provided.
  • the communication method includes a step in which the relay device transfers data transmitted from the first control device to the second control device, a step in which the relay device transfers data transmitted from the second control device to the first control device, a step in which the first control device generates first additional information indicating validity of data transfer of at least one of the data transmitted to the second control device and the data received from the second control device;
  • the method includes a step in which the control device generates second additional information indicating validity of data transfer of at least one of the data transmitted to the first control device and the data received from the first control device.
  • the control device since the validity of data transfer can be confirmed and monitored, the control device can more reliably execute processing using the transferred data.
  • FIG. 1 is a schematic diagram showing an example of the overall configuration of a control system according to the present embodiment.
  • 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.
  • FIG. 2 is a block diagram showing an example of the hardware configuration of a second arithmetic unit of a second device according to the present embodiment.
  • FIG. 2 is a block diagram showing an example of the hardware configuration of a relay unit of a second device according to the present embodiment.
  • FIG. 2 is a schematic diagram showing an overview of data transfer in the control system according to the present embodiment.
  • FIG. 7 is a diagram illustrating an example of processing for providing additional information indicating validity in the control system according to the present embodiment.
  • FIG. 7 is a diagram illustrating another example of processing for providing additional information indicating validity in the control system according to the present embodiment.
  • FIG. 7 is a diagram illustrating yet another example of processing for providing additional information indicating validity in the control system according to the present embodiment.
  • FIG. 7 is a diagram illustrating yet another example of processing for providing additional information indicating validity in the control system according to the present embodiment.
  • 7 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.
  • 7 is a flowchart illustrating an example of a processing procedure for providing additional information indicating validity by the second arithmetic unit according to the present embodiment.
  • FIG. 7 is a flowchart illustrating an example of a processing procedure for providing additional information indicating validity by a relay unit according to the present embodiment.
  • FIG. 7 is a schematic diagram illustrating an example of processing when using additional information indicating validity in the control system according to the present embodiment.
  • FIG. 1 is a schematic diagram showing an example of the overall configuration of a control system 1 according to the present embodiment.
  • 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).
  • PLC programmable logic controller
  • the first device 10 and one or more second devices 20 are connected via the field network 4.
  • Field network 4 supports cyclic communication and message communication. Examples of the field network 4 include 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.
  • the first device 10 includes a first calculation unit 100 (an example of a first control device) that executes control calculations.
  • the first arithmetic unit 100 is capable of 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, and the like.
  • the second device 20 includes a second calculation unit 200 (an example of a second control device) that executes control calculations, and a relay unit 250 (an example of a relay device) that has 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.
  • the second arithmetic unit 200 and the relay unit 250 are connected via an internal bus 6 (see FIGS. 3 and 4). Note that if the second device 20 includes an I/O unit and/or a special unit, the units are also connected via the internal bus 6.
  • the relay unit 250 is a gateway for mutually 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 also transfers the data output from the second arithmetic unit 200 to the first arithmetic unit 200. Transfer it so that 100 can refer to it.
  • 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 computing unit 200 of the second device 20 or may be connected to the first computing unit 100 of the first device 10.
  • FIG. 2 is a block diagram showing an example of the hardware configuration of the first arithmetic unit 100 of the first device 10 according to the present embodiment.
  • the 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, and an upper network interface. 110, a USB (Universal Serial Bus) interface 112, a memory card interface 114, and a field network interface 120.
  • the processor 102 reads various programs stored in the storage 108, expands them to the memory 106, and executes them, thereby realizing necessary processing in the first arithmetic unit 100.
  • the chipset 104 controls data communication between the processor 102 and each component.
  • the storage 108 typically stores a system program 131 and a user program 132 that includes computer-readable codes necessary for control calculations.
  • the first arithmetic unit 100 which is a computer, executes the processes described in this specification
  • the first arithmetic unit 100 which is a computer, executes the processes described in this specification. Achieve the desired functional configuration.
  • the upper network interface 110 controls data communication with other devices via the upper network.
  • USB interface 112 controls data communication to and from supporting devices via a USB connection.
  • the memory card interface 114 is configured to allow a memory card 116 to be attached or removed, 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. There is.
  • the field network interface 120 controls data communication with the second device 20 via the field network 4.
  • FIG. 3 is a block diagram showing an example of the hardware configuration of the second arithmetic unit 200 of the second device 20 according to the present embodiment.
  • the second arithmetic unit 200 includes a processor 202 such as a CPU or an MPU, a chipset 204, a memory 206, a storage 208, an upper network interface 210, a USB interface 212, and a memory card interface. 214 and an internal bus interface 220.
  • the processor 202 reads various programs stored in the storage 208, expands them to the memory 206, and executes them, thereby realizing necessary processing in the second arithmetic unit 200.
  • the chipset 204 controls data communication between the processor 202 and each component.
  • the storage 208 typically stores a system program 231 and a user program 232 that includes computer-readable codes necessary for control calculations.
  • the second arithmetic unit 200 By executing the program stored in the storage 208, the second arithmetic unit 200, which is a computer, executes the processes described in this specification, and the second arithmetic unit 200, which is a computer, executes the processes described in this specification. Achieve the desired functional configuration.
  • the upper network interface 210 controls data communication with other devices via the upper network.
  • USB interface 212 controls data communication to and from supporting devices via a USB connection.
  • the memory card interface 214 is configured to allow a memory card 216 to be attached or removed, 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. There is.
  • the internal bus interface 220 controls data communication with one or more units (including the relay unit 250) via the internal bus 6.
  • the internal bus 6 supports cyclic communication and message communication.
  • a communication method exclusive to the manufacturer may be adopted, for example, EtherCAT (registered trademark), EtherNet/IP (registered trademark), PROFINET (registered trademark), PROFIBUS (registered trademark), DeviceNet (registered trademark). Trademark), FL-net, CompoNet (registered trademark), etc. may also be used.
  • FIG. 4 is a block diagram showing an example of the hardware configuration of relay unit 250 of second device 20 according to the present embodiment.
  • relay unit 250 includes a processing circuit 260, a field network interface 270, and an internal bus interface 280.
  • the processing circuit 260 realizes the processing and functions of the relay unit 250 as described below. More specifically, processing circuit 260 includes a processor 262, memory 264, and storage 266. The processor 262 reads the system program (firmware) stored in the storage 266, expands it to the memory 264, and executes it, thereby realizing necessary processing in the relay unit 250.
  • system program firmware
  • the field network interface 270 controls data communication with the first processing unit 100 via the field network 4.
  • the internal bus interface 280 controls data communication with one or more units (including the second arithmetic unit 200) via the internal bus 6.
  • FIGS. 2 to 4 show configuration examples in which necessary functions are provided by a processor executing a program, but some or all of these provided functions can be implemented using dedicated hardware circuits (e.g. , an ASIC (Application Specific Integrated Circuit), an FPGA (Field-Programmable Gate Array), etc.).
  • ASIC Application Specific Integrated Circuit
  • FPGA Field-Programmable Gate Array
  • a "processor” is not limited to a narrowly defined processor that executes processing using a stored program method, but may include hard-wired circuits such as ASIC and FPGA. Therefore, the term “processor” can also be read as a processing circuitry whose processing is predefined by computer readable code and/or hardwired circuitry.
  • the main part of the arithmetic unit may be realized using hardware that follows a general-purpose architecture (for example, an industrial personal computer based on a general-purpose personal computer).
  • a general-purpose architecture for example, an industrial personal computer based on a general-purpose personal computer.
  • virtualization technology may be used to run multiple OSs (Operating Systems) for different purposes in parallel, and to run necessary applications on each OS.
  • the support device 300 is configured, for example, by a general-purpose computer that follows a general-purpose architecture. Since examples of the hardware configuration of general-purpose computers are well known, detailed explanations will not be provided.
  • 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.
  • a relay unit 250 is arranged as a gateway between the first arithmetic unit 100 and the second arithmetic unit 200.
  • the relay unit 250 is connected to the first calculation unit 100 via the field network 4, which is an example of a first transmission path, and is connected to the second calculation unit 200 via the internal bus 6, which is an example of a second transmission path. It is connected.
  • the output data of the first arithmetic unit 100 is transmitted to the second arithmetic unit 200 via the relay unit 250, and the output data of the second arithmetic unit 200 is transmitted to the first arithmetic unit 100 via the relay unit 250. It is assumed that there may be cases where
  • 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.
  • 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.
  • the relay unit 250 transfers data between the first arithmetic unit 100 and the second arithmetic unit 200. That is, the relay unit 250 performs 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. Execute.
  • the control system 1 has a mechanism that can confirm and monitor the validity of data transfer.
  • "validity regarding data transfer” means information indicating that the target data has been appropriately transferred and/or that the data scheduled to be sent and received is in a state where it can be transferred appropriately. do.
  • the first arithmetic unit 100 transmits additional information indicating the validity of data transfer of at least one of the data transmitted to the second arithmetic unit 200 and the data received from the second arithmetic unit 200. Execute the process to generate. As a result, additional information indicating the validity of the output data transmitted from the first computing unit 100 to the second computing unit 200 is transmitted from the user program 132 executed by the first computing unit 100, and Additional information indicating the validity of the input data received from the second arithmetic unit 200 can be used.
  • the second arithmetic unit 200 performs a process of generating additional information indicating the validity of data transfer of at least one of the data transmitted to the first arithmetic unit 100 and the data received from the first arithmetic unit 100. Execute. As a result, additional information indicating the validity of the output data transmitted from the second arithmetic unit 200 to the first arithmetic unit 100 is transmitted from the user program 232 executed by the second arithmetic unit 200, and the second arithmetic unit 200 Additional information indicating the validity of input data received from one arithmetic unit 100 can be used.
  • additional information indicating the validity of data transfer refers to, for example, whether or not the target data has been appropriately transferred (and/or whether the data to be sent and received can be transferred appropriately). It may be information that has a different value depending on whether or not it exists. When some abnormality occurs in the transfer path, the additional information indicating validity is set to a value indicating that the corresponding data is invalid. Note that hereinafter, “additional information indicating validity” may be simply abbreviated as “additional information.”
  • the additional information may be assigned, for example, to device variables or system variables managed by each of the first calculation unit 100 and the second calculation unit 200. That is, it may be possible to monitor whether or not the corresponding data is valid based on the value indicated by the target device variable or system variable.
  • the device variables and system variables may be member variables of the data object.
  • additional information indicating validity will be used as additional information for input data 401 and additional information for output data 402 managed by the first calculation unit 100, and additional information for input data managed by the second calculation unit 200.
  • 411 and additional information for output data 412 are illustrated. Note that the additional information for input data 401 and the additional information for output data 402 may be common additional information without being distinguished. Similarly, the input data additional information 411 and the output data additional information 412 may be used as common additional information without being distinguished.
  • FIG. 6 is a diagram illustrating an example of processing for providing additional information indicating validity in the control system 1 according to the present embodiment.
  • FIG. 6 shows a processing example when the second arithmetic unit 200 detects some abnormality in the processing of transmitting and receiving data via the internal bus 6. For example, there may be a case where some abnormality occurs in data transmission/reception by the internal bus interface 220 (FIG. 3) of the second arithmetic unit 200.
  • second arithmetic unit 200 detects some abnormality in the process of transmitting and receiving data via 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 invalid states ((2), (3) update).
  • the relay unit 250 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 transmitting and receiving data via the internal bus 6 by itself ((4 ) abnormality detection), and notifies the first arithmetic unit 100 of the abnormality detection ((5) notification).
  • the first arithmetic unit 100 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 ((6), (7) Update).
  • the second arithmetic unit 200 detects some abnormality in the process of transmitting and receiving data via the internal bus 6, it is determined that data transmission and reception between the first arithmetic unit 100 and the second arithmetic unit 200 is not possible. Therefore, the additional information is updated to indicate an invalid state.
  • FIG. 7 is a diagram showing another example of processing for providing additional information indicating validity in the control system 1 according to the present embodiment.
  • FIG. 7 shows a processing example when the relay unit 250 detects some kind of abnormality in the processing of transmitting and receiving data via the internal bus 6. For example, there may be a case where some abnormality occurs in data transmission/reception by the internal bus interface 280 (FIG. 4) of the relay unit 250.
  • relay unit 250 detects some abnormality in the process of transmitting and receiving data via internal bus 6 ((1) abnormality detection).
  • the relay unit 250 notifies the second calculation unit 200 of the abnormality detection ((2) notification).
  • 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), (4) Update).
  • the relay unit 250 notifies the first arithmetic unit 100 of the abnormality detection ((5) notification).
  • 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, respectively ((6), (7) Update).
  • the relay unit 250 detects any abnormality in the process of transmitting and receiving data via the internal bus 6, it is determined that the data cannot be transmitted and received between the first arithmetic unit 100 and the second arithmetic unit 200. Therefore, the additional information is updated to indicate an invalid state.
  • FIG. 8 is a diagram showing still another example of processing for providing additional information indicating validity in the control system 1 according to the present embodiment.
  • FIG. 8 shows a processing example when the relay unit 250 detects some kind of abnormality in the processing of transmitting and receiving data via the field network 4. For example, there may be a case where some abnormality occurs in data transmission/reception by the field network interface 270 (FIG. 4) of the relay unit 250.
  • relay unit 250 detects some abnormality in the process of transmitting and receiving data via field network 4 ((1) abnormality detection).
  • the relay unit 250 notifies the first calculation unit 100 of the abnormality detection ((2) notification).
  • 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), (4) Update).
  • the relay unit 250 notifies the second arithmetic unit 200 of the abnormality detection ((5) notification).
  • 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, respectively ((6), (7) Update).
  • the relay unit 250 detects any abnormality in the process of transmitting and receiving data via the field network 4, it is determined that data cannot be transmitted and received between the first computing unit 100 and the second computing unit 200. Therefore, the additional information is updated to indicate an invalid state.
  • 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 a processing example when the first arithmetic unit 100 detects some abnormality in the processing of transmitting and receiving data via the field network 4. For example, there may be a case where some abnormality occurs in data transmission/reception by the field network interface 120 (FIG. 2) of the first processing unit 100.
  • the first arithmetic unit 100 detects some 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 invalid states ((2), (3) update).
  • the first arithmetic unit 100 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).
  • the second arithmetic unit 200 Upon receiving the notification of abnormality detection 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 ((6), (7) Update).
  • the first arithmetic unit 100 detects some abnormality in the process of transmitting and receiving data via the field network 4, it is determined that data transmission and reception between the first arithmetic unit 100 and the second arithmetic unit 200 is not possible. Therefore, the additional information is updated to indicate an invalid state.
  • first arithmetic unit 100 may record information indicating the content and type of the detected abnormality using any method.
  • the stored information may be read out via the support device 300 or the like.
  • FIG. 10 is a flowchart illustrating 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.
  • 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).
  • step S100 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 input data additional information 401 and the output data additional information 402 to values indicating invalid states (step S104). Then, the processing from step S100 onwards is repeated.
  • 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.
  • the first arithmetic unit 100 determines whether or not the notification of abnormality detection has been received from the relay unit 250. (Step S106). If a notification of abnormality detection has not been received from relay unit 250 (NO in step S106), the processes from step S100 onwards are repeated.
  • step S106 If a notification of abnormality detection has been received from the relay unit 250 (YES in step S106), the processes from step S104 onwards are 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, respectively.
  • the additional information for input data 401 and the additional information for output data 402 are changed to indicate valid values. May be updated.
  • FIG. 11 is a flowchart illustrating an example of a processing procedure for providing additional information indicating validity by the second arithmetic unit 200 according to the present 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.
  • the second arithmetic unit 200 determines whether any abnormality has occurred in the process of transmitting and receiving data via the internal bus 6 (step S200).
  • step S200 If any abnormality has occurred in the process of transmitting and receiving data via the internal bus 6 (YES in step S200), the second arithmetic unit 200 notifies the relay unit 250 of the abnormality detection (step S202). Subsequently, the second arithmetic unit 200 updates the input data additional information 411 and the output data additional information 412 to values indicating invalid states, respectively (step S204). Then, the processing from step S200 onwards is repeated.
  • the second arithmetic 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.
  • the second arithmetic unit 200 determines whether 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 relay unit 250 (NO in step S206), the processes from step S200 onwards are repeated.
  • step S204 If a notification of abnormality detection has been received from the relay unit 250 (YES in step S206), the processes from step S204 onwards are executed. That is, when the second arithmetic unit 200 receives a notification of abnormality detection from another device, it updates the additional information for input data 411 and the additional information for output data 412 to values indicating an invalid state, respectively.
  • the additional information for input data 411 and the additional information for output data 412 are changed to indicate valid values. May be updated.
  • FIG. 12 is a flowchart illustrating an example of a processing procedure for providing additional information indicating validity by 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.
  • relay unit 250 determines whether any abnormality has occurred in the process of transmitting and receiving data via field network 4 (step S300).
  • the relay unit 250 notifies the first calculation unit 100 of the abnormality detection (step S302), and also 2 arithmetic unit 200 is notified of the abnormality detection (step S304).
  • 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.
  • step S300 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.
  • the relay unit 250 determines whether any abnormality has occurred in the process of transmitting and receiving data via the internal bus 6 (step S306).
  • the relay unit 250 notifies the first arithmetic unit 100 of the abnormality detection (step S308), and 2 processing unit 200 is notified of the abnormality detection (step S310).
  • the relay unit 250 detects an abnormality in the process of transmitting and receiving data via the internal bus 6, it notifies the first arithmetic unit 100 of the abnormality detection.
  • step S306 If no abnormality has occurred 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.
  • 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 the notification of abnormality detection has been received from the first calculation unit 100 (YES in step S312), the relay unit 250 notifies the second calculation unit 200 of the abnormality detection (step S314).
  • the relay unit 250 when the relay unit 250 receives a notification of abnormality detection from the first calculation unit 100, it transfers the notification to the second calculation unit 200.
  • step S314 If the abnormality detection notification has not been received from the first arithmetic unit 100 (NO in step S312), the process of step S314 is skipped.
  • the relay unit 250 determines whether or not a notification of abnormality detection has been received from the second arithmetic unit 200 (step S316). If the notification of abnormality detection has been received from the second calculation unit 200 (YES in step S316), the relay unit 250 notifies the first calculation unit 100 of the abnormality detection (step S318).
  • the relay unit 250 when the relay unit 250 receives a notification of abnormality detection from the second calculation unit 200, it transfers the notification to the first calculation unit 100.
  • step S318 If the abnormality detection notification has not been received from the second arithmetic unit 200 (NO in step S316), the process of step S318 is skipped.
  • step S300 onwards the processing from step S300 onwards is repeated.
  • the relay unit 250 transfers the notification of abnormality recovery to the second calculation unit 200 and/or the first calculation unit 100. You can do it like this.
  • FIG. 13 is a schematic diagram showing a processing example when using additional information indicating validity in the control system 1 according to the present embodiment.
  • input data and output data may each be referenced as a data object, for example.
  • a data object 430 regarding input data includes one or more input data 432 and corresponding additional information for input data 401 (or additional information for input data 411).
  • a data object 440 for output data includes one or more output data 442 and corresponding additional information for output data 402 (or additional information for output data 412).
  • member data (variables) included in these data objects 430 and 440 can be specified as appropriate.
  • variable (or variable name) indicating additional information may be defined arbitrarily by the user, or may be defined in advance by the system.
  • one or more variables may be prepared in advance for additional information, and the user may assign (map) arbitrary additional information to each variable. .
  • the variable name of the variable prepared for additional information may include a prefix or suffix indicating that the variable is for additional information.
  • any variable name may be assigned to any additional information.
  • variable name of the variable assigned to each additional information may include a prefix or suffix indicating that the variable is for additional information.
  • the additional information for input data 401 and/or the additional information for output data 402 can be used. can.
  • the additional information for input data 411 and/or the additional information for output data 412 can be used.
  • the relay unit 250 may manage it. In this case, when additional information is requested from the user program executed by the first calculation unit 100 and/or the second calculation unit 200, the relay unit 250 transmits the requested additional information to the first calculation unit 100 and/or the second calculation unit 200. Alternatively, it may be provided to the second arithmetic unit 200.
  • the support device 300 may be connected to the relay unit 250 so that additional information managed by the relay unit 250 can be monitored.
  • the relay unit 250 may also manage the additional information.
  • a control system (1) A first control device (100) and a second control device (200), 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);
  • the relay device executes 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 provides first additional information (401, 402) indicating the validity of data transfer of at least one of the data transmitted to the second control device and the data received from the second control device.
  • the second control device provides second additional information (411, 412) indicating the validity of data transfer of at least one of the data transmitted to the first control device and the data received from the first control device.
  • a control system that is configured to be able to execute processing that generates.
  • the first additional information can be used from a first user program (132) executed by the first control device, The control system according to configuration 1, wherein the second additional information can be used from a second user program (232) executed by the second control device.
  • the first additional information can be used by specifying a predetermined variable in the first user program,
  • the relay device is 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). .
  • the relay device is Upon receiving a notification of abnormality detection from the first control device, transfer the notification to the second control device (S312, S314), The control system according to any one of configurations 1 to 6, wherein upon receiving a notification of abnormality detection from the second control device, the notification is transferred to the first control device (S316, S318).
  • the first control device updates the first additional information to a value indicating an invalid state when receiving a notification of abnormality detection from another device (S104). control system.
  • the second control device updates the second additional information to a value indicating an invalid state when receiving a notification of abnormality detection from another device (S204). control system.
  • 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 provides additional information (401, 402; 411, 412) indicating the validity of data transfer of at least one of the data transmitted to the other control device and the data received from the other control device.
  • a control device configured to be able to execute processing that generates.
  • a first control device (100) and a second control device (200) are connected to the first control device via a first transmission path (4), and are connected to the first control device via a second transmission path (6).
  • a communication method in a control system (1) comprising a control device and a connected relay device (250), a step in which the relay device transfers the data transmitted from the first control device to the second control device; a step in which the relay device transfers the data transmitted from the second control device to the first control device; First additional information (401, 402) indicating validity of data transfer of at least one of data transmitted by the first control device to the second control device and data received from the second control device.
  • a communication method comprising: a step of generating (S204).
  • Control system 4 Field network, 6 Internal bus, 10 First device, 20 Second device, 100 First calculation unit, 102, 202, 262 Processor, 104, 204 Chip set, 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 2nd 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.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Small-Scale Networks (AREA)
  • Programmable Controllers (AREA)

Abstract

制御システムは、第1制御装置および第2制御装置と、第1伝送路を介して第1制御装置と接続されるとともに、第2伝送路を介して第1制御装置と接続された中継装置とを含む。中継装置は、第1制御装置から送信されたデータを第2制御装置へ転送する処理と、第2制御装置から送信されたデータを第1制御装置へ転送する処理とを実行可能に構成されている。第1制御装置は、第2制御装置へ送信するデータ、および、第2制御装置から受信するデータのうち少なくとも一方のデータ転送に係る正当性を示す第1付加情報を生成する処理を実行可能に構成されている。第2制御装置は、第1制御装置へ送信するデータ、および、第1制御装置から受信するデータのうち少なくとも一方のデータ転送に係る正当性を示す第2付加情報を生成する処理を実行可能に構成されている。

Description

制御システム、制御装置および通信方法
 本発明は、制御システム、制御装置および通信方法に関する。
 近年の情報通信技術の飛躍的な発展に伴って、産業用装置においてもより多くのデータを処理する必要性が高まっている。より具体的には、IoT(Internet of Things)やIndustry 4.0などに代表される、通信技術を用いた技術革新が進みつつある。これによって、システム内でやり取りされるデータは増大傾向にある。
 このようなデータ処理量の増大に対するソリューションの一つとして、国際公開第2013/137023号(特許文献1)は、複数の通信ラインを含む構成において、装置間のデータ更新をより適切に行うことができる構成を開示する。
 複数のネットワークを用いて複数のコントローラを接続してネットワーク分散制御システムを構成する場合には、ネットワーク間のデータ転送を担当するゲートウェイである中継ユニットが用いられる。このようなゲートウェイを介して制御装置間のデータ交換を実現する。
国際公開第2013/137023号
 ある制御装置で他の制御装置から受信したデータを用いた処理を実行する場合や、ある制御装置から他の制御装置へデータを送信する処理を実行する場合においては、対象のデータが適切に転送されたことを確認することが好ましい。本発明は、転送されるデータを用いた処理をより確実に実行できる仕組みを提供する。
 本発明の一例に従う制御システムは、第1制御装置および第2制御装置と、第1伝送路を介して第1制御装置と接続されるとともに、第2伝送路を介して第1制御装置と接続された中継装置とを含む。中継装置は、第1制御装置から送信されたデータを第2制御装置へ転送する処理と、第2制御装置から送信されたデータを第1制御装置へ転送する処理とを実行可能に構成されている。第1制御装置は、第2制御装置へ送信するデータ、および、第2制御装置から受信するデータのうち少なくとも一方のデータ転送に係る正当性を示す第1付加情報を生成する処理を実行可能に構成されている。第2制御装置は、第1制御装置へ送信するデータ、および、第1制御装置から受信するデータのうち少なくとも一方のデータ転送に係る正当性を示す第2付加情報を生成する処理を実行可能に構成されている。
 この構成によれば、第1制御装置および第2制御装置の各々は、データ転送に係る正当性を示す付加情報を生成するので、第1制御装置および第2制御装置の各々において、転送されるデータを用いた処理をより確実に実行できる仕組みを提供する。例えば、転送されるデータの正当性が確認できない場合には、当該データを用いた処理を実行しない(スキップする)ようなプログラムを容易に記述できる。
 第1制御装置で実行される第1ユーザプログラムから第1付加情報を利用可能であってもよい。第2制御装置で実行される第2ユーザプログラムから第2付加情報を利用可能であってもよい。この構成によれば、データの正当性を確認した上で、制御演算を実現するためのユーザプログラムを実行できる。
 第1ユーザプログラムにおいて予め定められた変数を指定することで、第1付加情報を利用可能であってもよい。第2ユーザプログラムにおいて予め定められた変数を指定することで、第2付加情報を利用可能であってもよい。この構成によれば、ユーザプログラムにおいて、変数を指定することで、データの正当性を確認する処理を実現できる。
 第1制御装置は、第1伝送路を介してデータを送受信する処理に異常を検出すると、中継装置に異常検出を通知するようにしてもよい。この構成によれば、第1制御装置が検出した異常を中継装置を介して他の装置へ通知できる。
 第2制御装置は、第2伝送路を介してデータを送受信する処理に異常を検出すると、中継装置に異常検出を通知するようにしてもよい。この構成によれば、第2制御装置が検出した異常を中継装置を介して他の装置へ通知できる。
 中継装置は、第1伝送路を介してデータを送受信する処理に異常を検出すると、第2制御装置に異常検出を通知し、第2伝送路を介してデータを送受信する処理に異常を検出すると、第1制御装置に異常検出を通知するようにしてもよい。この構成によれば、一方の伝送路に関して中継装置が検出した異常を他方の伝送路に接続された制御装置へ通知できる。
 中継装置は、第1制御装置から異常検出の通知を受信すると、当該通知を第2制御装置へ転送し、第2制御装置から異常検出の通知を受信すると、当該通知を第1制御装置へ転送するようにしてもよい。この構成によれば、中継装置が一方の伝送路に接続された制御装置が検出した異常を他方の伝送路に接続された制御装置へ通知できる。
 第1制御装置は、他の装置から異常検出の通知を受信すると、第1付加情報を正当ではない状態を示す値に更新するようにしてもよい。この構成によれば、自装置が検出した異常だけではなく、他の装置から受信した異常検知の通知を第1付加情報に反映できる。
 第2制御装置は、他の装置から異常検出の通知を受信すると、第2付加情報を正当ではない状態を示す値に更新するようにしてもよい。この構成によれば、自装置が検出した異常だけではなく、他の装置から受信した異常検知の通知を第2付加情報に反映できる。
 本発明の別の一例に従えば、中継装置を介して他の制御装置と接続された制御装置が提供される。中継装置は、制御装置から送信されたデータを他の制御装置へ転送する処理と、他の制御装置から送信されたデータを制御装置へ転送する処理とを実行可能に構成されている。制御装置は、他の制御装置へ送信するデータ、および、他の制御装置から受信するデータのうち少なくとも一方のデータ転送に係る正当性を示す付加情報を生成する処理を実行可能に構成されている。
 本発明のさらに別の一例に従えば、第1制御装置および第2制御装置と、第1伝送路を介して第1制御装置と接続されるとともに、第2伝送路を介して第1制御装置と接続された中継装置とを備えた制御システムにおける通信方法が提供される。通信方法は、中継装置が第1制御装置から送信されたデータを第2制御装置へ転送するステップと、中継装置が第2制御装置から送信されたデータを第1制御装置へ転送するステップと、第1制御装置が、第2制御装置へ送信するデータ、および、第2制御装置から受信するデータのうち少なくとも一方のデータ転送に係る正当性を示す第1付加情報を生成するステップと、第2制御装置が、第1制御装置へ送信するデータ、および、第1制御装置から受信するデータのうち少なくとも一方のデータ転送に係る正当性を示す第2付加情報を生成するステップとを含む。
 本発明によれば、データ転送に係る正当性を確認および監視できるので、制御装置は、転送されるデータを用いた処理をより確実に実行できる。
本実施の形態に従う制御システムの全体構成例を示す模式図である。 本実施の形態に従う第1装置の第1演算ユニットのハードウェア構成例を示すブロック図である。 本実施の形態に従う第2装置の第2演算ユニットのハードウェア構成例を示すブロック図である。 本実施の形態に従う第2装置の中継ユニットのハードウェア構成例を示すブロック図である。 本実施の形態に従う制御システムにおけるデータ転送の概要を示す模式図である。 本実施の形態に従う制御システムにおける正当性を示す付加情報を提供するための処理例を示す図である。 本実施の形態に従う制御システムにおける正当性を示す付加情報を提供するための別の処理例を示す図である。 本実施の形態に従う制御システムにおける正当性を示す付加情報を提供するためのさらに別の処理例を示す図である。 本実施の形態に従う制御システムにおける正当性を示す付加情報を提供するためのさらに別の処理例を示す図である。 本実施の形態に従う第1演算ユニットによる正当性を示す付加情報を提供するための処理手順例を示すフローチャートである。 本実施の形態に従う第2演算ユニットによる正当性を示す付加情報を提供するための処理手順例を示すフローチャートである。 本実施の形態に従う中継ユニットによる正当性を示す付加情報を提供するための処理手順例を示すフローチャートである。 本実施の形態に従う制御システムにおける正当性を示す付加情報を利用する場合の処理例を示す模式図である。
 本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰り返さない。
 <A.全体構成例>
 次に、本実施の形態に従う制御システム1の全体構成例について説明する。
 図1は、本実施の形態に従う制御システム1の全体構成例を示す模式図である。図1を参照して、制御システム1は、第1装置10と、1または複数の第2装置20とを含む。第1装置および第2装置は、PLC(プログラマブルロジックコントローラ)などの一種のコンピュータであってもよい。
 第1装置10と、1または複数の第2装置20とは、フィールドネットワーク4を介して接続されている。フィールドネットワーク4は、サイクリック通信およびメッセージ通信をサポートしている。フィールドネットワーク4としては、例えば、EtherCAT(登録商標)、EtherNet/IP(登録商標)、PROFINET(登録商標)、PROFIBUS(登録商標)、DeviceNet(登録商標)、FL-net、CompoNet(登録商標)などを用いてもよい。
 第1装置10は、制御演算を実行する第1演算ユニット100(第1制御装置の一例)を含む。第1演算ユニット100は、フィールドネットワーク4によるデータ通信が可能になっている。第1装置10は、電源ユニット、I/Oユニット、特殊ユニットなどをさらに有してもよい。
 第2装置20は、制御演算を実行する第2演算ユニット200(第2制御装置の一例)と、フィールドネットワーク4に接続するためのインターフェイスを有する中継ユニット250(中継装置の一例)とを含む。第2装置20は、電源ユニット、I/Oユニット、特殊ユニットなどをさらに有してもよい。
 第2演算ユニット200と中継ユニット250とは、内部バス6(図3および図4参照)を介して接続されている。なお、第2装置20がI/Oユニットおよび/または特殊ユニットを含む場合には、当該ユニットも内部バス6を介して接続される。
 中継ユニット250は、第1演算ユニット100と第2演算ユニット200との間で互いにデータを転送するためのゲートウェイである。より具体的には、中継ユニット250は、第1演算ユニット100から送信されるデータを第2演算ユニット200が参照できるように転送するとともに、第2演算ユニット200が出力するデータを第1演算ユニット100が参照できるように転送する。
 制御システム1は、第1装置10および/または第2装置20で実行されるプログラムや設定などを作成および変更するためのサポート装置300を含んでいてもよい。サポート装置300は、第2装置20の第2演算ユニット200に接続されてもよいし、第1装置10の第1演算ユニット100に接続されてもよい。
 <B.ハードウェア構成例>
 次に、本実施の形態に従う制御システム1の主要な装置のハードウェア構成例について説明する。
 (b1:第1演算ユニット100)
 図2は、本実施の形態に従う第1装置10の第1演算ユニット100のハードウェア構成例を示すブロック図である。図2を参照して、第1演算ユニット100は、CPU(Central Processing Unit)やMPU(Micro-Processing Unit)などのプロセッサ102と、チップセット104と、メモリ106と、ストレージ108と、上位ネットワークインターフェイス110と、USB(Universal Serial Bus)インターフェイス112と、メモリカードインターフェイス114と、フィールドネットワークインターフェイス120とを含む。
 プロセッサ102は、ストレージ108に格納された各種プログラムを読み出して、メモリ106に展開して実行することで、第1演算ユニット100で必要な処理を実現する。チップセット104は、プロセッサ102と各コンポーネントとの間のデータ通信などを制御する。
 ストレージ108には、典型的には、システムプログラム131と、制御演算に必要なコンピュータ読み取り可能なコードを含むユーザプログラム132とが格納される。
 ストレージ108に格納されたプログラムが実行されることで、コンピュータである第1演算ユニット100に本明細書に記載された処理を実行させるとともに、コンピュータである第1演算ユニット100において本明細書に記載された機能構成を実現させる。
 上位ネットワークインターフェイス110は、上位ネットワークを介した他の装置との間のデータ通信を制御する。USBインターフェイス112は、USB接続を介してサポート装置との間のデータ通信を制御する。
 メモリカードインターフェイス114は、メモリカード116を着脱可能に構成されており、メモリカード116に対してデータを書き込み、メモリカード116から各種データ(ユーザプログラムやトレースデータなど)を読み出すことが可能になっている。
 フィールドネットワークインターフェイス120は、フィールドネットワーク4を介した第2装置20との間のデータ通信を制御する。
 (b2:第2演算ユニット200)
 図3は、本実施の形態に従う第2装置20の第2演算ユニット200のハードウェア構成例を示すブロック図である。図3を参照して、第2演算ユニット200は、CPUやMPUなどのプロセッサ202と、チップセット204と、メモリ206と、ストレージ208と、上位ネットワークインターフェイス210と、USBインターフェイス212と、メモリカードインターフェイス214と、内部バスインターフェイス220とを含む。
 プロセッサ202は、ストレージ208に格納された各種プログラムを読み出して、メモリ206に展開して実行することで、第2演算ユニット200で必要な処理を実現する。チップセット204は、プロセッサ202と各コンポーネントとの間のデータ通信などを制御する。
 ストレージ208には、典型的には、システムプログラム231と、制御演算に必要なコンピュータ読み取り可能なコードを含むユーザプログラム232とが格納される。
 ストレージ208に格納されたプログラムが実行されることで、コンピュータである第2演算ユニット200に本明細書に記載された処理を実行させるとともに、コンピュータである第2演算ユニット200において本明細書に記載された機能構成を実現させる。
 上位ネットワークインターフェイス210は、上位ネットワークを介した他の装置との間のデータ通信を制御する。USBインターフェイス212は、USB接続を介してサポート装置との間のデータ通信を制御する。
 メモリカードインターフェイス214は、メモリカード216を着脱可能に構成されており、メモリカード216に対してデータを書き込み、メモリカード216から各種データ(ユーザプログラムやトレースデータなど)を読み出すことが可能になっている。
 内部バスインターフェイス220は、内部バス6を介した1または複数のユニット(中継ユニット250を含む)との間のデータ通信を制御する。
 内部バス6は、フィールドネットワーク4と同様に、サイクリック通信およびメッセージ通信をサポートしている。内部バス6としては、メーカ専用の通信方式を採用してもよいし、例えば、EtherCAT(登録商標)、EtherNet/IP(登録商標)、PROFINET(登録商標)、PROFIBUS(登録商標)、DeviceNet(登録商標)、FL-net、CompoNet(登録商標)などを用いてもよい。
 (b3:中継ユニット250)
 図4は、本実施の形態に従う第2装置20の中継ユニット250のハードウェア構成例を示すブロック図である。図4を参照して、中継ユニット250は、処理回路260と、フィールドネットワークインターフェイス270と、内部バスインターフェイス280とを含む。
 処理回路260は、後述するような中継ユニット250の処理および機能を実現する。より具体的には、処理回路260は、プロセッサ262と、メモリ264と、ストレージ266とを含む。プロセッサ262は、ストレージ266に格納されたシステムプログラム(ファームウェア)を読み出して、メモリ264に展開して実行することで、中継ユニット250で必要な処理を実現する。
 フィールドネットワークインターフェイス270は、フィールドネットワーク4を介した第1演算ユニット100との間のデータ通信を制御する。
 内部バスインターフェイス280は、内部バス6を介した1または複数のユニット(第2演算ユニット200を含む)との間のデータ通信を制御する。
 (b4:その他の構成)
 図2~図4には、プロセッサがプログラムを実行することで必要な機能が提供される構成例を示したが、これらの提供される機能の一部または全部を、専用のハードウェア回路(例えば、ASIC(Application Specific Integrated Circuit)またはFPGA(Field-Programmable Gate Array)など)を用いて実装してもよい。
 本明細書において、「プロセッサ」は、ストアードプログラム方式で処理を実行する狭義のプロセッサに限られず、ASICやFPGAなどのハードワイヤード回路を含み得る。そのため、「プロセッサ」との用語は、コンピュータ読み取り可能なコードおよび/またはハードワイヤード回路によって予め処理が定義されている、処理回路(processing circuitry)と読み替えることもできる。
 演算ユニットの主要部は、汎用的なアーキテクチャに従うハードウェア(例えば、汎用パソコンをベースとした産業用パソコン)を用いて実現してもよい。この場合には、仮想化技術を用いて、用途の異なる複数のOS(Operating System)を並列的に実行させるとともに、各OS上で必要なアプリケーションを実行させるようにしてもよい。
 (b5:サポート装置300)
 本実施の形態に従うサポート装置300は、一例として、汎用的なアーキテクチャに従う汎用コンピュータなどで構成される。汎用コンピュータのハードウェア構成例は公知であるので、詳細な説明は行わない。
 <C.データ転送>
 次に、本実施の形態に従う制御システム1のデータ転送に係る処理について説明する。
 図5は、本実施の形態に従う制御システム1におけるデータ転送の概要を示す模式図である。図5には、第1演算ユニット100と第2演算ユニット200との間のデータの送信例を示す。
 図5を参照して、第1演算ユニット100と第2演算ユニット200との間には、ゲートウェイとして、中継ユニット250が配置されている。中継ユニット250は、第1伝送路の一例であるフィールドネットワーク4を介して第1演算ユニット100と接続されるとともに、第2伝送路の一例である内部バス6を介して第2演算ユニット200と接続されている。
 第1演算ユニット100の出力データが中継ユニット250を介して第2演算ユニット200へ送信される場合と、第2演算ユニット200の出力データが中継ユニット250を介して第1演算ユニット100へ送信される場合とが想定される。
 第1演算ユニット100から送信されたデータ(出力データ)は、中継ユニット250へ送信される。中継ユニット250は、第1演算ユニット100の出力データとして受信したデータを、第2演算ユニット200の入力データとして、第2演算ユニット200へ送信する。
 一方、第2演算ユニット200から送信されたデータ(出力データ)は、中継ユニット250へ送信される。中継ユニット250は、第2演算ユニット200の出力データとして受信したデータを、第1演算ユニット100の入力データとして、第1演算ユニット100へ送信する。
 このように、中継ユニット250は、第1演算ユニット100と第2演算ユニット200との間でデータを転送する。すなわち、中継ユニット250は、第1演算ユニット100から送信されたデータを第2演算ユニット200へ転送する処理と、第2演算ユニット200から送信されたデータを第1演算ユニット100へ転送する処理とを実行する。
 本実施の形態に従う制御システム1は、データ転送に係る正当性を確認および監視できる仕組みを有している。本明細書において、「データ転送に係る正当性」は、対象のデータが適切に転送されたこと、および/または、送受信する予定のデータが適切に転送され得る状態であることを示す情報を意味する。
 より具体的には、第1演算ユニット100は、第2演算ユニット200へ送信するデータ、および、第2演算ユニット200から受信するデータのうち少なくとも一方のデータ転送に係る正当性を示す付加情報を生成する処理を実行する。これによって、第1演算ユニット100で実行されるユーザプログラム132から、第1演算ユニット100から第2演算ユニット200へ送信する出力データの正当性を示す付加情報、および、第1演算ユニット100が第2演算ユニット200から受信する入力データの正当性を示す付加情報を利用できる。
 同様に、第2演算ユニット200は、第1演算ユニット100へ送信するデータ、および、第1演算ユニット100から受信するデータのうち少なくとも一方のデータ転送に係る正当性を示す付加情報を生成する処理を実行する。これによって、第2演算ユニット200で実行されるユーザプログラム232から、第2演算ユニット200から第1演算ユニット100へ送信する出力データの正当性を示す付加情報、および、第2演算ユニット200が第1演算ユニット100から受信する入力データの正当性を示す付加情報を利用できる。
 本明細書において、「データ転送に係る正当性を示す付加情報」は、例えば、対象のデータが適切に転送されたか否か(および/または、送受信する予定のデータが適切に転送され得る状態であるか否か)に応じて、値を異ならせる情報であってもよい。転送経路において何らかの異常が発生すると、正当性を示す付加情報は、対応するデータが正当ではない状態を示す値に設定される。なお、以下では、「正当性を示す付加情報」を単に「付加情報」と略称することもある。
 付加情報は、例えば、第1演算ユニット100および第2演算ユニット200の各々が管理するデバイス変数やシステム変数に割り付けられてもよい。すなわち、対象のデバイス変数やシステム変数が示す値に基づいて、対応するデータが正当であるか否かを監視できるようにしてもよい。なお、デバイス変数やシステム変数は、データオブジェクトのメンバ変数であってもよい。
 <D.正当性を示す付加情報の提供>
 次に、第1演算ユニット100および第2演算ユニット200において、正当性を示す付加情報を提供するための処理について説明する。以下、正当性を示す付加情報を提供するための処理例について説明する。
 以下の説明においては、正当性を示す付加情報として、第1演算ユニット100が管理する入力データ用付加情報401および出力データ用付加情報402と、第2演算ユニット200が管理する入力データ用付加情報411および出力データ用付加情報412とを例示する。なお、入力データ用付加情報401と出力データ用付加情報402とを区別することなく、共通の付加情報としてもよい。同様に、入力データ用付加情報411と出力データ用付加情報412とを区別することなく、共通の付加情報としてもよい。
 図6は、本実施の形態に従う制御システム1における正当性を示す付加情報を提供するための処理例を示す図である。図6には、第2演算ユニット200が内部バス6を介してデータを送受信する処理に何らかの異常を検出した場合の処理例を示す。例えば、第2演算ユニット200の内部バスインターフェイス220(図3)によるデータの送受信に何らかの異常が発生した場合が挙げられる。
 図6を参照して、まず、第2演算ユニット200が内部バス6を介してデータを送受信する処理に何らかの異常を検出する((1)異常検出)。すると、第2演算ユニット200は、入力データ用付加情報411および出力データ用付加情報412をそれぞれ正当ではない状態を示す値に更新する((2),(3)更新)。
 この場合において、中継ユニット250は、第2演算ユニット200からの異常検出の通知を受信すると、または、自ユニット単体で内部バス6を介してデータを送受信する処理に何らかの異常を検出すると((4)異常検出)、第1演算ユニット100に異常検出を通知する((5)通知)。
 第1演算ユニット100は、中継ユニット250からの異常検出の通知を受信すると、入力データ用付加情報401および出力データ用付加情報402をそれぞれ正当ではない状態を示す値に更新する((6),(7)更新)。
 以上のように、第2演算ユニット200が内部バス6を介してデータを送受信する処理に何らかの異常を検出すると、第1演算ユニット100と第2演算ユニット200との間のデータ送受信ができないと判断されるので、正当ではない状態を示すように、付加情報が更新される。
 図7は、本実施の形態に従う制御システム1における正当性を示す付加情報を提供するための別の処理例を示す図である。図7には、中継ユニット250が内部バス6を介してデータを送受信する処理に何らかの異常を検出した場合の処理例を示す。例えば、中継ユニット250の内部バスインターフェイス280(図4)によるデータの送受信に何らかの異常が発生した場合が挙げられる。
 図7を参照して、まず、中継ユニット250は、内部バス6を介してデータを送受信する処理に何らかの異常を検出する((1)異常検出)。
 すると、中継ユニット250は、第2演算ユニット200に異常検出を通知する((2)通知)。第2演算ユニット200は、中継ユニット250からの異常検出の通知を受信すると、入力データ用付加情報411および出力データ用付加情報412をそれぞれ正当ではない状態を示す値に更新する((3),(4)更新)。
 また、中継ユニット250は、第1演算ユニット100に異常検出を通知する((5)通知)。第1演算ユニット100は、中継ユニット250からの異常検出の通知を受信すると、入力データ用付加情報411および出力データ用付加情報412をそれぞれ正当ではない状態を示す値に更新する((6),(7)更新)。
 以上のように、中継ユニット250が内部バス6を介してデータを送受信する処理に何らかの異常を検出すると、第1演算ユニット100と第2演算ユニット200との間のデータ送受信ができないと判断されるので、正当ではない状態を示すように、付加情報が更新される。
 図8は、本実施の形態に従う制御システム1における正当性を示す付加情報を提供するためのさらに別の処理例を示す図である。図8には、中継ユニット250がフィールドネットワーク4を介してデータを送受信する処理に何らかの異常を検出した場合の処理例を示す。例えば、中継ユニット250のフィールドネットワークインターフェイス270(図4)によるデータの送受信に何らかの異常が発生した場合が挙げられる。
 図8を参照して、まず、中継ユニット250は、フィールドネットワーク4を介してデータを送受信する処理に何らかの異常を検出する((1)異常検出)。
 すると、中継ユニット250は、第1演算ユニット100に異常検出を通知する((2)通知)。第1演算ユニット100は、中継ユニット250からの異常検出の通知を受信すると、入力データ用付加情報401および出力データ用付加情報402をそれぞれ正当ではない状態を示す値に更新する((3),(4)更新)。
 また、中継ユニット250は、第2演算ユニット200に異常検出を通知する((5)通知)。第1演算ユニット100は、中継ユニット250からの異常検出の通知を受信すると、入力データ用付加情報411および出力データ用付加情報412をそれぞれ正当ではない状態を示す値に更新する((6),(7)更新)。
 以上のように、中継ユニット250がフィールドネットワーク4を介してデータを送受信する処理に何らかの異常を検出すると、第1演算ユニット100と第2演算ユニット200との間のデータ送受信ができないと判断されるので、正当ではない状態を示すように、付加情報が更新される。
 図9は、本実施の形態に従う制御システム1における正当性を示す付加情報を提供するためのさらに別の処理例を示す図である。図9には、第1演算ユニット100がフィールドネットワーク4を介してデータを送受信する処理に何らかの異常を検出した場合の処理例を示す。例えば、第1演算ユニット100のフィールドネットワークインターフェイス120(図2)によるデータの送受信に何らかの異常が発生した場合が挙げられる。
 図9を参照して、まず、第1演算ユニット100がフィールドネットワーク4を介してデータを送受信する処理に何らかの異常を検出する((1)異常検出)。すると、第1演算ユニット100は、入力データ用付加情報401および出力データ用付加情報402をそれぞれ正当ではない状態を示す値に更新する((2),(3)更新)。
 また、第1演算ユニット100は、中継ユニット250に異常検出を通知する((4)通知)。さらに、中継ユニット250は、第2演算ユニット200に異常検出を通知する((5)通知)。
 第2演算ユニット200は、中継ユニット250からの異常検出の通知を受信すると、入力データ用付加情報411および出力データ用付加情報412をそれぞれ正当ではない状態を示す値に更新する((6),(7)更新)。
 以上のように、第1演算ユニット100がフィールドネットワーク4を介してデータを送受信する処理に何らかの異常を検出すると、第1演算ユニット100と第2演算ユニット200との間のデータ送受信ができないと判断されるので、正当ではない状態を示すように、付加情報が更新される。
 なお、第1演算ユニット100、第2演算ユニット200および中継ユニット250の一部または全部は、検出した異常の内容や種類を示す情報を任意の方法で記録するようにしてもよい。この場合には、サポート装置300などを介して、格納された情報が読み出されてもよい。
 <E.処理手順例>
 次に、正当性を示す付加情報を提供するための処理手順例について説明する。
 図10は、本実施の形態に従う第1演算ユニット100による正当性を示す付加情報を提供するための処理手順例を示すフローチャートである。図10に示す各ステップは、第1演算ユニット100のプロセッサ102がシステムプログラム131を実行することで実現されてもよい。
 図10を参照して、第1演算ユニット100は、フィールドネットワーク4を介してデータを送受信する処理に何らかの異常が発生したか否かを判断する(ステップS100)。
 フィールドネットワーク4を介してデータを送受信する処理に何らかの異常が発生していれば(ステップS100においてYES)、第1演算ユニット100は、中継ユニット250に異常検出を通知する(ステップS102)。続いて、第1演算ユニット100は、入力データ用付加情報401および出力データ用付加情報402をそれぞれ正当ではない状態を示す値に更新する(ステップS104)。そして、ステップS100以下の処理が繰り返される。
 このように、第1演算ユニット100は、フィールドネットワーク4を介してデータを送受信する処理に異常を検出すると、中継ユニット250に異常検出を通知する。
 一方、フィールドネットワーク4を介してデータを送受信する処理に何らの異常も発生していなければ(ステップS100においてNO)、第1演算ユニット100は、中継ユニット250から異常検出の通知を受信したか否かを判断する(ステップS106)。中継ユニット250から異常検出の通知を受信していなければ(ステップS106においてNO)、ステップS100以下の処理が繰り返される。
 中継ユニット250から異常検出の通知を受信していれば(ステップS106においてYES)、ステップS104以下の処理が実行される。すなわち、第1演算ユニット100は、他の装置から異常検出の通知を受信すると、入力データ用付加情報401および出力データ用付加情報402をそれぞれ正当ではない状態を示す値に更新する。
 なお、検出された異常が復帰した場合、および/または、中継ユニット250から異常復帰の通知を受信すると、入力データ用付加情報401および出力データ用付加情報402をそれぞれ正当である値を示すように更新してもよい。
 図11は、本実施の形態に従う第2演算ユニット200による正当性を示す付加情報を提供するための処理手順例を示すフローチャートである。図11に示す各ステップは、第2演算ユニット200のプロセッサ202がシステムプログラム231を実行することで実現されてもよい。
 図11を参照して、第2演算ユニット200は、内部バス6を介してデータを送受信する処理に何らかの異常が発生したか否かを判断する(ステップS200)。
 内部バス6を介してデータを送受信する処理に何らかの異常が発生していれば(ステップS200においてYES)、第2演算ユニット200は、中継ユニット250に異常検出を通知する(ステップS202)。続いて、第2演算ユニット200は、入力データ用付加情報411および出力データ用付加情報412をそれぞれ正当ではない状態を示す値に更新する(ステップS204)。そして、ステップS200以下の処理が繰り返される。
 このように、第2演算ユニット200は、内部バス6を介してデータを送受信する処理に異常を検出すると、中継ユニット250に異常検出を通知する。
 一方、内部バス6を介してデータを送受信する処理に何らの異常も発生していなければ(ステップS200においてNO)、第2演算ユニット200は、中継ユニット250から異常検出の通知を受信したか否かを判断する(ステップS206)。中継ユニット250から異常検出の通知を受信していなければ(ステップS206においてNO)、ステップS200以下の処理が繰り返される。
 中継ユニット250から異常検出の通知を受信していれば(ステップS206においてYES)、ステップS204以下の処理が実行される。すなわち、第2演算ユニット200は、他の装置から異常検出の通知を受信すると、入力データ用付加情報411および出力データ用付加情報412をそれぞれ正当ではない状態を示す値に更新する。
 なお、検出された異常が復帰した場合、および/または、中継ユニット250から異常復帰の通知を受信すると、入力データ用付加情報411および出力データ用付加情報412をそれぞれ正当である値を示すように更新してもよい。
 図12は、本実施の形態に従う中継ユニット250による正当性を示す付加情報を提供するための処理手順例を示すフローチャートである。図12に示す各ステップは、中継ユニット250のプロセッサ262がシステムプログラムを実行することで実現されてもよい。
 図12を参照して、中継ユニット250は、フィールドネットワーク4を介してデータを送受信する処理に何らかの異常が発生したか否かを判断する(ステップS300)。
 フィールドネットワーク4を介してデータを送受信する処理に何らかの異常が発生していれば(ステップS300においてYES)、中継ユニット250は、第1演算ユニット100に異常検出を通知する(ステップS302)とともに、第2演算ユニット200に異常検出を通知する(ステップS304)。
 このように、中継ユニット250は、フィールドネットワーク4を介してデータを送受信する処理に異常を検出すると、第2演算ユニット200に異常検出を通知する。
 フィールドネットワーク4を介してデータを送受信する処理に何らかの異常が発生していなければ(ステップS300においてNO)、ステップS302およびS304の処理はスキップされる。
 続いて、中継ユニット250は、内部バス6を介してデータを送受信する処理に何らかの異常が発生したか否かを判断する(ステップS306)。
 内部バス6を介してデータを送受信する処理に何らかの異常が発生していれば(ステップS306においてYES)、中継ユニット250は、第1演算ユニット100に異常検出を通知する(ステップS308)とともに、第2演算ユニット200に異常検出を通知する(ステップS310)。
 このように、中継ユニット250は、内部バス6を介してデータを送受信する処理に異常を検出すると、第1演算ユニット100に異常検出を通知する。
 内部バス6を介してデータを送受信する処理に何らかの異常が発生していなければ(ステップS306においてNO)、ステップS308およびS310の処理はスキップされる。
 続いて、中継ユニット250は、第1演算ユニット100から異常検出の通知を受信したか否かを判断する(ステップS312)。第1演算ユニット100から異常検出の通知を受信していれば(ステップS312においてYES)、中継ユニット250は、第2演算ユニット200に異常検出を通知する(ステップS314)。
 このように、中継ユニット250は、第1演算ユニット100から異常検出の通知を受信すると、当該通知を第2演算ユニット200へ転送する。
 第1演算ユニット100から異常検出の通知を受信していなければ(ステップS312においてNO)、ステップS314の処理はスキップされる。
 続いて、中継ユニット250は、第2演算ユニット200から異常検出の通知を受信したか否かを判断する(ステップS316)。第2演算ユニット200から異常検出の通知を受信していれば(ステップS316においてYES)、中継ユニット250は、第1演算ユニット100に異常検出を通知する(ステップS318)。
 このように、中継ユニット250は、第2演算ユニット200から異常検出の通知を受信すると、当該通知を第1演算ユニット100へ転送する。
 第2演算ユニット200から異常検出の通知を受信していなければ(ステップS316においてNO)、ステップS318の処理はスキップされる。
 そして、ステップS300以下の処理が繰り返される。
 なお、第1演算ユニット100および/または第2演算ユニット200から異常復帰の通知を受信すると、中継ユニット250は、異常復帰の通知を第2演算ユニット200および/または第1演算ユニット100に転送するようにしてもよい。
 <F.正当性を示す付加情報の利用>
 次に、第1演算ユニット100で実行されるユーザプログラム132、ならびに、第2演算ユニット200で実行されるユーザプログラム232が正当性を示す付加情報を利用する場合の処理例について説明する。
 図13は、本実施の形態に従う制御システム1における正当性を示す付加情報を利用する場合の処理例を示す模式図である。
 図13を参照して、第1演算ユニット100および第2演算ユニット200において、例えば、入力データおよび出力データはそれぞれデータオブジェクトとして参照可能になっていてもよい。入力データについてのデータオブジェクト430は、1または複数の入力データ432と、対応する入力データ用付加情報401(または、入力データ用付加情報411)とを含む。同様に、出力データについてのデータオブジェクト440は、1または複数の出力データ442と、対応する出力データ用付加情報402(または、出力データ用付加情報412)とを含む。
 ユーザプログラム132,232においては、これらのデータオブジェクト430,440に含まれるメンバデータ(変数)を適宜指定することができる。
 付加情報を示す変数(あるいは、変数名)は、ユーザが任意に定義できるようにしてもよいし、システムとして予め定義されていてもよい。ユーザが任意に定義する方法としては、例えば、1または複数の変数が付加情報用に予め用意されており、ユーザが各変数に対して任意の付加情報を割り当てる(マッピングする)ようにしてもよい。ユーザの操作によって、各変数がいずれの付加情報を示すのかが決定される。このとき、付加情報用に用意された変数の変数名は、付加情報用であることを示すプリフィックスまたはサフィックスを含んでいてもよい。あるいは、任意の付加情報に対して任意の変数名を割り当てることができるようにしてもよい。
 一方、システムとして予め定義する場合には、利用できる付加情報毎にシステム変数をそれぞれ割り当てておいてもよい。この場合においても、付加情報毎に割り当てられた変数の変数名は、付加情報用であることを示すプリフィックスまたはサフィックスを含んでいてもよい。
 このように、第1演算ユニット100で実行されるユーザプログラム132において、予め定められた付加情報を示す変数を指定することで、入力データ用付加情報401および/または出力データ用付加情報402を利用できる。同様に、第2演算ユニット200で実行されるユーザプログラム232において予め定められた付加情報を示す変数を指定することで、入力データ用付加情報411および/または出力データ用付加情報412を利用できる。
 このようなデータオブジェクト430,440を実装することで、ユーザプログラムの作成を簡素化できる。
 <G.変形例>
 上述の説明においては、主として、第1演算ユニット100および第2演算ユニット200が付加情報を管理する構成例について説明したが、第1演算ユニット100および第2演算ユニット200に加えて、中継ユニット250も付加情報を管理することができる。中継ユニット250が管理する付加情報は、第1演算ユニット100および/または第2演算ユニット200が管理する付加情報と実質的に同期させることができる。
 さらに、第1演算ユニット100および第2演算ユニット200が付加情報の実体を管理するのではなく、中継ユニット250が管理するようにしてもよい。この場合には、第1演算ユニット100および/または第2演算ユニット200で実行されるユーザプログラムから付加情報が要求されると、中継ユニット250が要求された付加情報を第1演算ユニット100および/または第2演算ユニット200へ提供するようにしてもよい。
 また、サポート装置300を中継ユニット250に接続して、中継ユニット250が管理する付加情報をモニタできるようにしてもよい。
 このように、第1演算ユニット100および第2演算ユニット200だけが付加情報を管理するのではなく、中継ユニット250も付加情報を管理するようにしてもよい。
 <H.付記>
 上述したような本実施の形態は、以下のような技術思想を含む。
  [構成1]
 制御システム(1)であって、
 第1制御装置(100)および第2制御装置(200)と、
 第1伝送路(4)を介して前記第1制御装置と接続されるとともに、第2伝送路(6)を介して前記第1制御装置と接続された中継装置(250)とを備え、
 前記中継装置は、前記第1制御装置から送信されたデータを前記第2制御装置へ転送する処理と、前記第2制御装置から送信されたデータを前記第1制御装置へ転送する処理とを実行可能に構成されており、
 前記第1制御装置は、前記第2制御装置へ送信するデータ、および、前記第2制御装置から受信するデータのうち少なくとも一方のデータ転送に係る正当性を示す第1付加情報(401,402)を生成する処理を実行可能に構成されており、
 前記第2制御装置は、前記第1制御装置へ送信するデータ、および、前記第1制御装置から受信するデータのうち少なくとも一方のデータ転送に係る正当性を示す第2付加情報(411,412)を生成する処理を実行可能に構成されている、制御システム。
  [構成2]
 前記第1制御装置で実行される第1ユーザプログラム(132)から前記第1付加情報を利用可能であり、
 前記第2制御装置で実行される第2ユーザプログラム(232)から前記第2付加情報を利用可能である、構成1に記載の制御システム。
  [構成3]
 前記第1ユーザプログラムにおいて予め定められた変数を指定することで、前記第1付加情報を利用可能であり、
 前記第2ユーザプログラムにおいて予め定められた変数を指定することで、前記第2付加情報を利用可能である、構成2に記載の制御システム。
  [構成4]
 前記第1制御装置は、前記第1伝送路を介してデータを送受信する処理に異常を検出すると、前記中継装置に異常検出を通知する(S100,S102)、構成1~3のいずれか1項に記載の制御システム。
  [構成5]
 前記第2制御装置は、前記第2伝送路を介してデータを送受信する処理に異常を検出すると、前記中継装置に異常検出を通知する(S200,S202)、構成1~4のいずれか1項に記載の制御システム。
  [構成6]
 前記中継装置は、
  前記第1伝送路を介してデータを送受信する処理に異常を検出すると、前記第2制御装置に異常検出を通知し(S300,S304)、
  前記第2伝送路を介してデータを送受信する処理に異常を検出すると、前記第1制御装置に異常検出を通知する(S306,S308)、構成1~5のいずれか1項に記載の制御システム。
  [構成7]
 前記中継装置は、
  前記第1制御装置から異常検出の通知を受信すると、当該通知を前記第2制御装置へ転送し(S312,S314)、
  前記第2制御装置から異常検出の通知を受信すると、当該通知を前記第1制御装置へ転送する(S316,S318)、構成1~6のいずれか1項に記載の制御システム。
  [構成8]
 前記第1制御装置は、他の装置から異常検出の通知を受信すると、前記第1付加情報を正当ではない状態を示す値に更新する(S104)、構成1~7のいずれか1項に記載の制御システム。
  [構成9]
 前記第2制御装置は、他の装置から異常検出の通知を受信すると、前記第2付加情報を正当ではない状態を示す値に更新する(S204)、構成1~8のいずれか1項に記載の制御システム。
  [構成10]
 中継装置(250)を介して他の制御装置(200;100)と接続された制御装置(100;200)であって、
 前記中継装置は、前記制御装置から送信されたデータを前記他の制御装置へ転送する処理と、前記他の制御装置から送信されたデータを前記制御装置へ転送する処理とを実行可能に構成されており、
 前記制御装置は、前記他の制御装置へ送信するデータ、および、前記他の制御装置から受信するデータのうち少なくとも一方のデータ転送に係る正当性を示す付加情報(401,402;411,412)を生成する処理を実行可能に構成されている、制御装置。
  [構成11]
 第1制御装置(100)および第2制御装置(200)と、第1伝送路(4)を介して前記第1制御装置と接続されるとともに、第2伝送路(6)を介して前記第1制御装置と接続された中継装置(250)とを備えた制御システム(1)における通信方法であって、
 前記中継装置が前記第1制御装置から送信されたデータを前記第2制御装置へ転送するステップと、
 前記中継装置が前記第2制御装置から送信されたデータを前記第1制御装置へ転送するステップと、
 前記第1制御装置が、前記第2制御装置へ送信するデータ、および、前記第2制御装置から受信するデータのうち少なくとも一方のデータ転送に係る正当性を示す第1付加情報(401,402)を生成するステップ(S104)と、
 前記第2制御装置が、前記第1制御装置へ送信するデータ、および、前記第1制御装置から受信するデータのうち少なくとも一方のデータ転送に係る正当性を示す第2付加情報(411,412)を生成するステップ(S204)とを備える、通信方法。
 今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、請求の範囲によって示され、請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
 1 制御システム、4 フィールドネットワーク、6 内部バス、10 第1装置、20 第2装置、100 第1演算ユニット、102,202,262 プロセッサ、104,204 チップセット、106,206,264 メモリ、108,208,266 ストレージ、110,210 上位ネットワークインターフェイス、112,212 インターフェイス、114,214 メモリカードインターフェイス、116,216 メモリカード、120,270 フィールドネットワークインターフェイス、131,231 システムプログラム、132,232 ユーザプログラム、200 第2演算ユニット、220,280 内部バスインターフェイス、250 中継ユニット、260 処理回路、300 サポート装置、401,411 入力データ用付加情報、402,412 出力データ用付加情報、430,440 データオブジェクト、432 入力データ、442 出力データ。

Claims (11)

  1.  制御システムであって、
     第1制御装置および第2制御装置と、
     第1伝送路を介して前記第1制御装置と接続されるとともに、第2伝送路を介して前記第1制御装置と接続された中継装置とを備え、
     前記中継装置は、前記第1制御装置から送信されたデータを前記第2制御装置へ転送する処理と、前記第2制御装置から送信されたデータを前記第1制御装置へ転送する処理とを実行可能に構成されており、
     前記第1制御装置は、前記第2制御装置へ送信するデータ、および、前記第2制御装置から受信するデータのうち少なくとも一方のデータ転送に係る正当性を示す第1付加情報を生成する処理を実行可能に構成されており、
     前記第2制御装置は、前記第1制御装置へ送信するデータ、および、前記第1制御装置から受信するデータのうち少なくとも一方のデータ転送に係る正当性を示す第2付加情報を生成する処理を実行可能に構成されている、制御システム。
  2.  前記第1制御装置で実行される第1ユーザプログラムから前記第1付加情報を利用可能であり、
     前記第2制御装置で実行される第2ユーザプログラムから前記第2付加情報を利用可能である、請求項1に記載の制御システム。
  3.  前記第1ユーザプログラムにおいて予め定められた変数を指定することで、前記第1付加情報を利用可能であり、
     前記第2ユーザプログラムにおいて予め定められた変数を指定することで、前記第2付加情報を利用可能である、請求項2に記載の制御システム。
  4.  前記第1制御装置は、前記第1伝送路を介してデータを送受信する処理に異常を検出すると、前記中継装置に異常検出を通知する、請求項1~3のいずれか1項に記載の制御システム。
  5.  前記第2制御装置は、前記第2伝送路を介してデータを送受信する処理に異常を検出すると、前記中継装置に異常検出を通知する、請求項1~4のいずれか1項に記載の制御システム。
  6.  前記中継装置は、
      前記第1伝送路を介してデータを送受信する処理に異常を検出すると、前記第2制御装置に異常検出を通知し、
      前記第2伝送路を介してデータを送受信する処理に異常を検出すると、前記第1制御装置に異常検出を通知する、請求項1~5のいずれか1項に記載の制御システム。
  7.  前記中継装置は、
      前記第1制御装置から異常検出の通知を受信すると、当該通知を前記第2制御装置へ転送し、
      前記第2制御装置から異常検出の通知を受信すると、当該通知を前記第1制御装置へ転送する、請求項1~6のいずれか1項に記載の制御システム。
  8.  前記第1制御装置は、他の装置から異常検出の通知を受信すると、前記第1付加情報を正当ではない状態を示す値に更新する、請求項1~7のいずれか1項に記載の制御システム。
  9.  前記第2制御装置は、他の装置から異常検出の通知を受信すると、前記第2付加情報を正当ではない状態を示す値に更新する、請求項1~8のいずれか1項に記載の制御システム。
  10.  中継装置を介して他の制御装置と接続された制御装置であって、
     前記中継装置は、前記制御装置から送信されたデータを前記他の制御装置へ転送する処理と、前記他の制御装置から送信されたデータを前記制御装置へ転送する処理とを実行可能に構成されており、
     前記制御装置は、前記他の制御装置へ送信するデータ、および、前記他の制御装置から受信するデータのうち少なくとも一方のデータ転送に係る正当性を示す付加情報を生成する処理を実行可能に構成されている、制御装置。
  11.  第1制御装置および第2制御装置と、第1伝送路を介して前記第1制御装置と接続されるとともに、第2伝送路を介して前記第1制御装置と接続された中継装置とを備えた制御システムにおける通信方法であって、
     前記中継装置が前記第1制御装置から送信されたデータを前記第2制御装置へ転送するステップと、
     前記中継装置が前記第2制御装置から送信されたデータを前記第1制御装置へ転送するステップと、
     前記第1制御装置が、前記第2制御装置へ送信するデータ、および、前記第2制御装置から受信するデータのうち少なくとも一方のデータ転送に係る正当性を示す第1付加情報を生成するステップと、
     前記第2制御装置が、前記第1制御装置へ送信するデータ、および、前記第1制御装置から受信するデータのうち少なくとも一方のデータ転送に係る正当性を示す第2付加情報を生成するステップとを備える、通信方法。
PCT/JP2023/008845 2022-07-14 2023-03-08 制御システム、制御装置および通信方法 WO2024014048A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2022-113438 2022-07-14
JP2022113438A JP2024011462A (ja) 2022-07-14 2022-07-14 制御システム、制御装置および通信方法

Publications (1)

Publication Number Publication Date
WO2024014048A1 true WO2024014048A1 (ja) 2024-01-18

Family

ID=89536423

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2023/008845 WO2024014048A1 (ja) 2022-07-14 2023-03-08 制御システム、制御装置および通信方法

Country Status (2)

Country Link
JP (1) JP2024011462A (ja)
WO (1) WO2024014048A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10301889A (ja) * 1997-04-22 1998-11-13 Sony Computer Entertainment:Kk データ転送方法及び装置
WO2018154884A1 (ja) * 2017-02-22 2018-08-30 オムロン株式会社 制御システム、制御装置および制御プログラム
JP2021047668A (ja) * 2019-09-19 2021-03-25 京セラドキュメントソリューションズ株式会社 画像形成装置、データ通信方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10301889A (ja) * 1997-04-22 1998-11-13 Sony Computer Entertainment:Kk データ転送方法及び装置
WO2018154884A1 (ja) * 2017-02-22 2018-08-30 オムロン株式会社 制御システム、制御装置および制御プログラム
JP2021047668A (ja) * 2019-09-19 2021-03-25 京セラドキュメントソリューションズ株式会社 画像形成装置、データ通信方法

Also Published As

Publication number Publication date
JP2024011462A (ja) 2024-01-25

Similar Documents

Publication Publication Date Title
JP6870568B2 (ja) 通信システム、制御装置、設定装置、設定方法およびプログラム
EP3998529A1 (en) Updating operational technology devices using container orchestration systems
US8489210B2 (en) Electronic operator interface based controller and device automatic downloads
US10429813B2 (en) Communication system, communication device, and communication program
US9696692B2 (en) Industrial automation control system
JP6265158B2 (ja) 電子機器
JP2009015401A (ja) 分散型制御システム
CN109839890B (zh) 控制装置、控制方法以及计算机可读存储介质
JP2019179361A (ja) セーフティ制御システムおよびセーフティ制御ユニット
US11165745B2 (en) Control system, controller, and control method
CN111095138B (zh) 控制装置、控制装置的控制方法、信息处理程序及记录介质
WO2024014048A1 (ja) 制御システム、制御装置および通信方法
KR101869233B1 (ko) 분산형 피엘씨를 위한 아이오티 구조의 프로세스 관리 시스템의 구동 방법
US20180013857A1 (en) Local hart proxy server for modular smart transmitter devices
JP6357879B2 (ja) システムおよび障害処理方法
WO2020235174A1 (ja) 転送装置、情報処理装置、および、データ転送方法
CN109906440B (zh) 处理控制系统中的具有分开的冗余方案的多核心设备
WO2024014047A1 (ja) 制御システム、制御装置および通信方法
WO2023248548A1 (ja) 制御システム、中継装置および通信方法
WO2023248551A1 (ja) 制御システム、中継装置および通信方法
JP2008077265A (ja) プログラマブルコントローラのプログラム更新方法
JP2003198590A (ja) マルチプロトコルゲートウェイ、及びマルチプロトコルコントローラ
JP6915583B2 (ja) セーフティ制御システムおよびセーフティ制御システムにおける制御方法
JP6772739B2 (ja) 通信システム
JP6409520B2 (ja) 制御システム、および中継装置

Legal Events

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

Ref document number: 23839228

Country of ref document: EP

Kind code of ref document: A1