WO2023248551A1 - Control system, relay device, and communication method - Google Patents

Control system, relay device, and communication method Download PDF

Info

Publication number
WO2023248551A1
WO2023248551A1 PCT/JP2023/008839 JP2023008839W WO2023248551A1 WO 2023248551 A1 WO2023248551 A1 WO 2023248551A1 JP 2023008839 W JP2023008839 W JP 2023008839W WO 2023248551 A1 WO2023248551 A1 WO 2023248551A1
Authority
WO
WIPO (PCT)
Prior art keywords
controller
data
communication
relay unit
output data
Prior art date
Application number
PCT/JP2023/008839
Other languages
French (fr)
Japanese (ja)
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 WO2023248551A1 publication Critical patent/WO2023248551A1/en

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • 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]

Definitions

  • the present invention relates to a control system, a relay 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. Discloses a configuration that allows this.
  • a relay unit that is a gateway in charge of data transfer between networks is used.
  • a controller belonging to a certain network exchanges data with a controller belonging to another network via a relay unit.
  • Such data exchange realizes control status monitoring and control between controllers.
  • a control system includes a first controller having an interface for connecting to a first transmission line, a second controller having an interface for connecting to a second transmission line, and a second controller for connecting to the first transmission line. and a relay unit having a first interface for connecting to the second transmission line and a second interface for connecting to the second transmission line.
  • the relay unit transmits the output data transmitted from the first controller through cyclic communication to the second controller according to the transfer settings, and also transmits the output data transmitted from the first controller through message communication to the second controller.
  • data can be transmitted from the first controller to the second controller by both cyclic communication and message communication, so more data can be exchanged. Additionally, since either cyclic communication or message communication can be selected depending on the characteristics of the data, deterioration in control performance can be suppressed.
  • the relay unit transmits the output data transmitted from the first controller through cyclic communication to the second controller through cyclic communication, and transmits the output data transmitted from the first controller through message communication to the second controller through message communication. You may also do so. According to this configuration, by transmitting data from the first controller to the relay unit and from the relay unit to the second controller using the same method, processing related to data transfer can be simplified.
  • the relay unit may transmit output data transmitted from the second controller through cyclic communication to the first controller, and transmit output data transmitted from the second controller through message communication to the first controller. .
  • data can be transmitted from the second controller to the first controller by both cyclic communication and message communication, so that more data can be exchanged. Additionally, since either cyclic communication or message communication can be selected depending on the characteristics of the data, deterioration in control performance can be suppressed.
  • the relay unit may sequentially transmit the output data transmitted from the first controller through message communication to the second controller through message communication. According to this configuration, since data transmitted through message communication is transmitted sequentially, processing related to data transfer can be simplified.
  • the relay unit may hold output data sent from the first controller through message communication, and may also send the held data to the second controller in response to access from the second controller.
  • the second controller can acquire data at appropriate timing depending on the control state of the second controller.
  • the relay unit may notify the second controller that it holds the output data transmitted by message communication from the first controller. According to this configuration, the second controller can execute the process of acquiring data from the relay unit based on the notification from the relay unit.
  • the relay unit may notify the second controller through cyclic communication that it holds the output data transmitted from the first controller through message communication.
  • the second controller can acquire notifications from the relay unit through cyclic communication, so it can be determined whether or not to acquire data from the relay unit at each cycle of control calculation in the second controller. .
  • the control system may provide a user interface for creating transfer settings in response to user operations. According to this configuration, the user can easily create transfer settings via the user interface.
  • a relay unit is provided that is connected to a first controller via a first transmission path and connected to a second controller via a second transmission path.
  • the relay unit has a first interface for connecting to the first transmission path, a second interface for connecting to the second transmission path, and a relay unit that transmits output data transmitted by cyclic communication from the first controller to the first interface according to transfer settings. and a processing circuit that transmits output data transmitted by message communication from the first controller to the second controller.
  • communication in a control system comprising a first controller having an interface for connecting to a first transmission path, and a second controller having an interface for connecting to a second transmission path.
  • a method is provided. The communication method includes the steps of transmitting the output data transmitted from the first controller through cyclic communication to the second controller according to the transfer settings, and transmitting the output data transmitted from the first controller through message communication to the second controller. and steps.
  • a configuration is provided in which more data can be exchanged while suppressing a decline in control performance.
  • FIG. 2 is a schematic diagram showing an example of application of 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 according to the present embodiment.
  • FIG. 2 is a block diagram showing an example of a hardware configuration of an arithmetic unit of the main control device according to the present embodiment.
  • FIG. 2 is a block diagram showing an example of a hardware configuration of an arithmetic unit of a sub-control device according to the present embodiment.
  • FIG. 3 is a block diagram showing an example of the hardware configuration of a relay unit of the sub-control device according to the present embodiment.
  • FIG. 2 is a schematic diagram showing an overview of data communication 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 according to the present embodiment.
  • FIG. 2 is a block diagram showing an example of a hardware configuration of an arithmetic unit of the main control device according to the present embodiment.
  • FIG. 2 is a schematic diagram showing an example of a data structure used for data communication in the control system according to the present embodiment.
  • FIG. 3 is a diagram for explaining processing in a relay unit in the control system according to the present embodiment.
  • FIG. 3 is a diagram for explaining I/O data transmission by cyclic communication in the control system according to the present embodiment.
  • FIG. 3 is a diagram for explaining I/O data transmission by message communication (sequential transmission method) in the control system according to the present embodiment.
  • FIG. 3 is a diagram for explaining I/O data transmission by message communication (temporary holding method) in the control system according to the present embodiment.
  • 12 is a diagram for explaining processing related to the data presence flag shown in FIG. 11.
  • FIG. 2 is a sequence diagram illustrating an example of a procedure for data transmission by message communication in the control system according to the present embodiment.
  • FIG. 2 is a sequence diagram showing an example of a data transfer procedure in the control system according to the present embodiment.
  • 3 is a flowchart illustrating an example of a processing procedure for I/O data transmission by cyclic communication of a relay unit according to the present embodiment.
  • 3 is a flowchart illustrating an example of a processing procedure for I/O data transmission (sequential transmission method) by message communication of a relay unit according to the present embodiment.
  • 3 is a flowchart illustrating an example of a processing procedure for I/O data transmission (temporary holding method) by message communication of a relay unit according to the present embodiment.
  • FIG. 2 is a schematic diagram showing an example of a user interface for creating transfer settings for a relay unit in the control system according to the present embodiment.
  • FIG. 1 is a schematic diagram showing an application example of a control system 1 according to the present embodiment.
  • control system 1 includes a first controller and a second controller.
  • the first controller has an interface for connecting to the first transmission path.
  • the second controller has an interface for connecting to the second transmission path.
  • the control system 1 further includes a relay unit having a first interface for connecting to the first transmission path and a second interface for connecting to the second transmission path.
  • the relay unit is a kind of gateway, and transmits the output data transmitted from the first controller through cyclic communication to the second controller according to the transfer settings, and also transmits the output data transmitted from the first controller through message communication to the second controller. Send to controller.
  • cyclic communication is a method of transmitting predetermined data at every predetermined transmission cycle (for example, 1 msec to several 100 msec).
  • messages communication is a method of transmitting data in response to a request from a source or a destination.
  • Message communication includes acyclic communication and event-driven communication.
  • input data means data input to the controller of interest (data referenced by the controller of interest).
  • the “input data” includes, for example, command values given from other controllers, state values acquired by sensors connected to other controllers, and the like.
  • output data means data output by the unit of interest (data whose value is changed by the unit of interest).
  • Output data includes, for example, command values given to other controllers and/or actuators connected to other controllers.
  • data is transferred from the first controller to the second controller via the relay unit. Even if the data is the same, it can be seen as “output data” from the perspective of the first controller that is the source, and as “input data” when seen from the second controller that is the destination.
  • input data and output data may be collectively referred to as “input/output data” or “I/O data.”
  • input/output data and I/O data may include only input data or only output data.
  • the data transmitted by the cyclic communication shown in FIG. 1 has a relatively high priority and a relatively small amount of data.
  • data transmitted through message communication has a relatively low priority and a relatively large amount of data.
  • message communication without time constraints can be used. By exchanging data with relatively low update frequency through message communication, the amount of data exchanged through cyclic communication can be reduced.
  • control system 1 it is possible to arbitrarily set whether to use cyclic communication or message communication depending on the characteristics of the data to be transmitted.
  • FIG. 2 is a schematic diagram showing an example of the overall configuration of the control system 1 according to the present embodiment.
  • control system 1 according to the present embodiment includes main control device 10 and one or more sub-control devices 20.
  • main controller and “sub controller” are used for convenience of explanation, and they may have substantially the same hardware configuration or have substantially the same functions. It may be a configuration.
  • the main control device and the sub-control device may be a type of computer such as a PLC (programmable logic controller).
  • 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 main control device 10 corresponds to a first controller having an interface for connecting to the field network 4, which corresponds to a first transmission path.
  • the main control device 10 includes a calculation unit 100 that executes control calculations.
  • the arithmetic unit 100 is capable of data communication via the field network 4.
  • the main controller 10 may further include a power supply unit, an I/O unit, a special unit, and the like.
  • the sub-control device 20 includes a calculation unit 200 that performs control calculations and a relay unit 250 that performs data communication via the field network 4.
  • the sub-control device 20 may further include a power supply unit, an I/O unit, a special unit, and the like.
  • the arithmetic unit 200 and the relay unit 250 are connected via an internal bus 6 (see FIGS. 4 and 5). Note that if the sub-control device 20 includes an I/O unit and/or a special unit, the units are also connected via the internal bus 6.
  • the arithmetic unit 200 corresponds to a second controller having an interface for connecting to the internal bus 6, which corresponds to a second transmission line.
  • the relay unit 250 relays data transmitted from the main control device 10 so that it can be referenced by the calculation unit 200, and also relays data output from the calculation unit 200 so that it can be transmitted to the main control device 10. That is, the relay unit 250 is a gateway having a first interface for connecting to the field network 4 (first transmission path) and a second interface for connecting to the internal bus 6 (second transmission path).
  • the control system 1 may include a support device 300 for creating and changing programs, settings, etc. executed by the main control device 10 and/or the sub-control device 20.
  • the support device 300 may be connected to the calculation unit 200 of the sub-control device 20 or the calculation unit 100 of the main control device 10.
  • FIG. 3 is a block diagram showing an example of the hardware configuration of the arithmetic unit 100 of the main control device 10 according to the present embodiment.
  • the 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 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 arithmetic unit 100 By executing the program stored in the storage 108, the arithmetic unit 100, which is a computer, executes the processing described in this specification, and the functional configuration described in this specification in the arithmetic unit 100, which is a computer, is executed. Make it happen.
  • 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 sub-control device 20 via the field network 4. More specifically, field network interface 120 includes a receive buffer 121 for holding received data and a transmit buffer 122 used for generating data to be transmitted.
  • FIG. 4 is a block diagram showing an example of the hardware configuration of the arithmetic unit 200 of the sub-control device 20 according to the present embodiment.
  • the 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. , 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 arithmetic unit 200.
  • Chipset 204 controls data communication between 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 arithmetic unit 200 By executing the program stored in the storage 208, the arithmetic unit 200, which is a computer, executes the processing described in this specification, and the functional configuration described in this specification is performed in the arithmetic unit 200, which is a computer. Make it happen.
  • 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. More specifically, internal bus interface 220 includes a receive buffer 221 for holding received data and a transmit buffer 222 used for generating data to be transmitted.
  • 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. 5 is a block diagram showing an example of the hardware configuration of relay unit 250 of sub-control 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.
  • the storage 266 stores transfer settings 268 for realizing data transfer.
  • FIG. 5 shows an example in which the transfer settings 268 are stored in the storage 266, they may be obtained from the main control device 10 and the calculation unit 200 as necessary. That is, the transfer settings 268 are not stored in advance in the storage 266 of the relay unit 250, and the transfer settings are acquired from each of the main controller 10 and the calculation unit 200 when the relay unit 250 is started. You can.
  • the transfer settings 268 mainly include settings for transferring I/O data between the main control device 10 and the arithmetic unit 200 by cyclic communication. Note that the transfer settings 268 may include settings necessary for transferring I/O data between the main control device 10 and the arithmetic unit 200 by message communication.
  • the field network interface 270 controls data communication with the main controller 10 via the field network 4. More specifically, field network interface 270 includes a reception buffer 271 for holding received data and a transmission buffer 272 used for generating data to be transmitted.
  • the internal bus interface 280 controls data communication with one or more units (including the arithmetic unit 200) via the internal bus 6. More specifically, internal bus interface 280 includes a receive buffer 281 for holding received data and a transmit buffer 282 used for generating data to be transmitted.
  • FIGS. 3 to 5 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. 6 is a schematic diagram showing an overview of data communication in the control system 1 according to the present embodiment.
  • FIG. 6 shows an example of transmission of I/O data between the main controller 10 and the arithmetic unit 200.
  • a relay unit 250 is arranged as a gateway between main controller 10 and arithmetic unit 200.
  • the main control device 10 and the relay unit 250 are connected via a field network 4 corresponding to a first transmission path.
  • I/O data is transmitted only by cyclic communication, but in this embodiment, cyclic communication is It is also possible to choose between communication and message communication.
  • the data (output data) transmitted from the main control device 10 is transmitted to the relay unit 250.
  • Relay unit 250 transmits data received as output data from main controller 10 to arithmetic unit 200 as input data to arithmetic unit 200 .
  • Relay unit 250 transmits the data received as output data of arithmetic unit 200 to main control device 10 as input data of main control device 10 .
  • the relay unit 250 transfers data between the main control device 10 and the calculation unit 200. That is, the relay unit 250 transmits the output data transmitted from the main controller 10 (first controller) through cyclic communication to the arithmetic unit 200 (second controller) according to the transfer setting 268 (FIG. 5), and also Output data sent from the device 10 via message communication is sent to the arithmetic unit 200.
  • the relay unit 250 transmits the output data transmitted from the arithmetic unit 200 through cyclic communication to the main controller 10 according to the transfer settings 268, and also controls the output data transmitted from the arithmetic unit 200 through message communication to the main controller 10. Send to device 10.
  • the relay unit 250 transmits the output data transmitted from the main controller 10 through cyclic communication to the calculation unit 200 through cyclic communication, and transmits the output data transmitted from the main controller 10 through message communication through the message communication.
  • the data may be transmitted to the calculation unit 200.
  • the method of transmitting data from main controller 10 to relay unit 250 and the method of transmitting data from relay unit 250 to calculation unit 200 may be different.
  • FIG. 7 is a schematic diagram showing an example of a data structure used for data communication in the control system 1 according to the present embodiment.
  • Each transmission cycle includes a cyclic communication band 12 and a message communication band 14.
  • a frame 16 having a predetermined data size is transmitted.
  • the frames 16 are sequentially transferred between devices (units) connected to the field network 4. As a result, the frame 16 cyclically circulates through the field network 4.
  • an area is prepared for writing output data for each device connected to the field network 4.
  • FIG. 7 shows an example in which N areas are prepared for each of N devices to write output data.
  • a device connected to the field network 4 can refer to data stored in an area other than the area for writing data (that is, data written by another device).
  • an area is also provided to store management information (communication management information 18) necessary for communication.
  • the message communication band 14 is transmitted from a designated device to one or more other devices according to instructions from a device (for example, referred to as a "communication master” or "master") that manages the field network 4. Used for message communication. Note that in message communication, data with a larger data size than that sent in one cyclic communication may be transmitted, so one data transmission requires the bandwidth for multiple cyclic communications. Sometimes it's necessary.
  • each transmission period includes a cyclic communication band and a message communication band.
  • FIG. 8 is a diagram for explaining processing in relay unit 250 in control system 1 according to the present embodiment.
  • relay unit 250 includes a field network interface 270 connected to field network 4 and an internal bus interface 280 connected to internal bus 6.
  • the field network interface 270 has a reception buffer 271 and a transmission buffer 272.
  • the reception buffer 271 holds data received from the main control device 10, and the transmission buffer 272 holds data to be sent to the main control device 10.
  • the internal bus interface 280 has a receive buffer 281 and a transmit buffer 282.
  • the reception buffer 281 holds data received from the calculation unit 200, and the transmission buffer 282 holds data to be sent to the calculation unit 200.
  • the relay unit 250 copies the data held by the receive buffer 271 of the field network interface 270 to the send buffer 282 of the internal bus interface 280, and also copies the data held by the receive buffer 281 of the internal bus interface 280 to the field. Copy the data to the transmission buffer 272 of the network interface 270.
  • the relay unit 250 realizes data transfer by copying data between buffers.
  • FIG. 9 is a diagram for explaining I/O data transmission by cyclic communication in the control system 1 according to the present embodiment.
  • FIG. 9 shows a frame 16A that cyclically circulates through the field network 4 and a frame 16B that cyclically circulates through the internal bus 6.
  • FIG. 9(A) shows a processing example for realizing data transmission from the main controller 10 to the arithmetic unit 200.
  • main controller 10 writes output data to the area allocated to frame 16A.
  • Frame 16A is then transmitted to relay unit 250.
  • the relay unit 250 extracts the output data of the main control device 10 included in the frame 16A, and writes the extracted output data of the main control device 10 in the area allocated to the frame 16B. That is, frame 16B includes output data of main controller 10 as output data of relay unit 250. Frame 16B is then sent to computing unit 200. Arithmetic unit 200 extracts the output data of relay unit 250 (output data of main controller 10) included in frame 16B as input data.
  • FIG. 9(B) shows an example of processing for realizing data transmission from the sub-control device 20 to the main control device 10.
  • arithmetic unit 200 writes output data to the area allocated to frame 16B. Frame 16B is then transmitted to relay unit 250.
  • the relay unit 250 extracts the output data of the arithmetic unit 200 included in the frame 16B, and writes the extracted output data of the arithmetic unit 200 to the area allocated to the frame 16A. That is, frame 16A includes output data of arithmetic unit 200 as output data of relay unit 250. Thereafter, frame 16A is transmitted to main controller 10.
  • the main control device 10 extracts the output data of the relay unit 250 (output data of the arithmetic unit 200) included in the frame 16A as input data.
  • the relay unit 250 exchanges (copies) data between the frame 16A that cyclically circulates through the field network 4 and the frame 16B that cyclically circulates the internal bus 6. , realizes I/O data transmission by cyclic communication.
  • I/O data transmission via message communication may employ either a sequential transmission method or a temporary retention method, for example.
  • the relay unit 250 sequentially transmits the output data transmitted from the main control device 10 through message communication to the calculation unit 200 through message communication, and also transmits the output data transmitted from the calculation unit 200 through message communication to the main control device through message communication. 10 may be transmitted sequentially.
  • FIG. 10 is a diagram for explaining I/O data transmission by message communication (sequential transmission method) in the control system 1 according to the present embodiment.
  • data (output data) transmitted from main controller 10 to relay unit 250 by message communication is then transferred from relay unit 250 to arithmetic unit as input data. 200 by message communication.
  • data (output data) transmitted from the arithmetic unit 200 to the relay unit 250 by message communication is then transmitted as input data from the relay unit 250 to the main controller 10 by message communication.
  • the relay unit 250 when the relay unit 250 receives data from the main controller 10 or the arithmetic unit 200 through message communication, the relay unit 250 transmits the received data to the arithmetic unit 200 or the main controller 10 through the message communication.
  • data transmission by message communication is performed sequentially depending on the availability of the message communication band 14 of the field network 4 and the internal bus 6.
  • a delay may occur depending on the priority of message communication until the data is transmitted to the destination.
  • the data is transmitted in the order in which the relay unit 250 receives the data.
  • the relay unit 250 In the temporary holding method, the relay unit 250 temporarily holds data received from the transmission source through message communication, and then the transmission destination acquires the data through message communication.
  • the relay unit 250 holds the output data sent from the main controller 10 by message communication, and also sends the held data to the calculation unit 200 in response to access from the calculation unit 200. good.
  • the main control device 10 holds the output data sent from the relay unit 250 through message communication, and also sends the held data to the calculation unit 200 in response to access from the main control device 10. You can.
  • the relay unit 250 receives access from the destination and reads the data to be transmitted. Therefore, the relay unit 250 may notify the data destination that it holds the data. Upon receiving this notification, the destination accesses (polles) the relay unit 250.
  • the relay unit 250 notifies the calculation unit 200 that it holds the output data sent from the main controller 10 through message communication, and also holds the output data sent from the calculation unit 200 through message communication.
  • the main control device 10 may be notified that the
  • FIG. 11 is a diagram for explaining I/O data transmission by message communication (temporary holding method) in the control system 1 according to the present embodiment.
  • main controller 10 transmits data to relay unit 250 by message communication.
  • Relay unit 250 holds data from main controller 10 .
  • relay unit 250 notifies that it holds data from main controller 10. This notification is realized, for example, by setting the data presence flag included in the output data of the relay unit 250 to ON. That is, the data presence flag is included in frames that circulate cyclically.
  • the arithmetic unit 200 acquires the data held in the relay unit 250 through message communication.
  • the relay unit 250 sets the data presence flag to OFF. Note that the relay unit 250 may delete the data it has held, or may hold the data as is until it receives new data.
  • the relay unit 250 notifies the arithmetic unit 200 through cyclic communication that it holds the output data transmitted from the main controller 10 through message communication, and also notifies the arithmetic unit 200 that it holds the output data transmitted from the arithmetic unit 200 through message communication.
  • the main control device 10 may be notified by cyclic communication that the output data is held.
  • FIG. 12 is a diagram for explaining processing related to the data presence flag shown in FIG. 11.
  • relay unit 250 holds the data from main controller 10.
  • the data presence flag is set to ON.
  • the arithmetic unit 200 recognizes that data is held in the relay unit 250 (data exists) by setting the data presence flag to ON. The arithmetic unit 200 then accesses the relay unit 250 and acquires the data (more specifically, reads the data).
  • the data presence flag is included in the output data of the relay unit 250, it can be referenced from the application executed by the arithmetic unit 200 (and the main control device 10). Therefore, by including in the application a code that controls the timing of access to the relay unit 250, data can be exchanged using only a data presence flag (a type of interlock signal) related to data exchange.
  • FIGS. 11 and 12 show an example in which data is transmitted from the main controller 10 to the arithmetic unit 200 of the sub-control device 20. However, the same applies when transmitting data from the arithmetic unit 200 of the sub-control device 20 to the main control device 10.
  • the control system 1 employs a master-slave communication system.
  • the main controller 10 serves as a communication master (hereinafter simply referred to as "master")
  • the relay unit 250 serves as a communication slave (hereinafter simply referred to as "slave").
  • FIG. 13 is a sequence diagram showing an example of a procedure for data transmission by message communication in the control system 1 according to the present embodiment. Referring to FIG. 13, in field network 4 to which main controller 10 and relay unit 250 are connected, frames circulate at every transmission cycle.
  • the cyclically circulating frame includes communication management information 18 (see FIG. 7) in addition to I/O data.
  • Communication management information 18 may include a message presence flag for requesting message communication by relay unit 250, which is a slave. That is, the main control device 10, which is the master, manages the field network 4 and therefore knows the available bandwidth, so it performs message communication at an appropriate timing.
  • the relay unit 250 which is a slave, does not know when to perform message communication. Therefore, when the relay unit 250 becomes in a state where message communication is necessary, it sets the message presence flag of the communication management information 18 to ON.
  • the communication management information 18 whose message presence flag is set to ON is represented by a solid line
  • the communication management information 18 whose message presence flag is set to OFF is represented by a broken line.
  • Exchange using the message presence flag included in the communication management information 18 is realized by, for example, a field network interface or an internal bus interface.
  • the application (user program) executed by the main control device 10 and the arithmetic unit 200 may perform processing to request data transmission.
  • main controller 10 when an application requests data transmission, main controller 10 writes a message containing the requested data to relay unit 250.
  • Relay unit 250 processes the written messages. For example, processing for holding data included in a message is performed.
  • the relay unit 250 When the relay unit 250 completes the processing of the message, it prepares a response to the writing of the message and sets the message presence flag of the communication management information 18 to ON.
  • the main control device 10 accesses the relay unit 250 and reads the response from the relay unit 250.
  • the application of the main control device 10 confirms that the message writing was successful based on the read response. Then, data transmission through a series of message communications is completed.
  • the application of the main control device 10 understands that data transmission is completed based on the response read information.
  • FIG. 13 shows an example in which data is transmitted from the main control device 10 to the relay unit 250 by message communication
  • data may also be transmitted from the arithmetic unit 200 of the sub-control device 20 to the relay unit 250 by message communication. The same is true.
  • FIG. 13 shows an example in which a response is read by setting the message presence flag to ON in the communication management information 18, but the same process is performed when any data other than the response is sent from the slave to the master. executed.
  • FIG. 14 is a sequence diagram showing an example of a data transfer procedure in the control system 1 according to the present embodiment.
  • FIG. 14 shows a process when data is transferred from the main control device 10 to the arithmetic unit 200 of the sub-control device 20 via the relay unit 250.
  • the same applies to the case where data is transferred from the arithmetic unit 200 of the sub-control device 20 to the main control device 10 via the relay unit 250.
  • Frame 16A that circulates through the field network 4 at each transmission cycle and a frame 16B that circulates through the internal bus 6 at each transmission cycle are shown.
  • Frame 16A includes a data presence flag 22A as part of the output data of relay unit 250. Further, the frame 16A includes communication management information 18A in addition to I/O data.
  • frame 16B includes data presence flag 22B as part of the output data of relay unit 250. Further, the frame 16B includes communication management information 18B in addition to I/O data.
  • the state in which the data presence flags 22A and 22B are set to ON is represented by a solid line
  • the state in which the data presence flags 22A and 22B are set to OFF is represented by a broken line.
  • the communication management information 18A, 18B whose message presence flag is set to ON is represented by a solid line
  • the communication management information 18A, 18B whose message presence flag is set to OFF is represented by a broken line.
  • main controller 10 when the application of main controller 10 requests data transmission (sequence SQ2), main controller 10 writes a message containing the requested data to relay unit 250 (sequence SQ4).
  • Relay unit 250 processes the written message (sequence SQ6).
  • the relay unit 250 When the relay unit 250 completes the processing of the message, it prepares a response to the writing of the message and sets the message presence flag of the communication management information 18A to ON (sequence SQ8).
  • Main controller 10 accesses relay unit 250 and reads the response from relay unit 250 (sequence SQ10). The application of the main control device 10 confirms that the message writing was successful based on the read response (sequence SQ12). This completes data transmission by message communication from main controller 10 to relay unit 250.
  • the relay unit 250 sets the data presence flag 22B to ON (sequence SQ12).
  • the application of the arithmetic unit 200 requests data acquisition (reading) in response to the data presence flag 22B being set to ON (sequence SQ14).
  • main controller 10 accesses relay unit 250 and reads data held in relay unit 250 (sequence SQ16).
  • the relay unit 250 processes the message (data) it holds and prepares a response to the message read (sequence SQ18). Then, the relay unit 250 sets the message presence flag of the communication management information 18B to ON (sequence SQ20).
  • the arithmetic unit 200 accesses the relay unit 250 and reads the response from the relay unit 250 according to the message presence flag included in the communication management information 18B (sequence SQ22). The application of the arithmetic unit 200 confirms that the message has been successfully read based on the read response (sequence SQ24). This completes the data transmission from the relay unit 250 to the arithmetic unit 200 by message communication.
  • FIG. 15 is a flowchart illustrating an example of a processing procedure for I/O data transmission by cyclic communication of relay unit 250 according to the present embodiment. Each step shown in FIG. 15 may be realized by the processor 262 of the relay unit 250 executing a system program.
  • relay unit 250 determines whether the frame update cycle via field network 4 has arrived (step S2). When the frame update period via the field network 4 arrives (YES in step S2), the relay unit 250 extracts the output data of the main controller 10 included in the received frame (step S4), and is held in the transmission buffer associated with the internal bus 6 (step S6). The relay unit 250 then reconstructs the frame including the data held in the transmission buffer associated with the field network 4 (step S8), and transmits the reconstructed frame via the field network 4 (step S10). ).
  • step S12 It is determined whether the frame update cycle via the internal bus 6 has arrived (step S12).
  • the relay unit 250 extracts the output data of the arithmetic unit 200 included in the received frame (step S14), and transmits the extracted data. It is held in the transmission buffer associated with the field network 4 (step S16).
  • the relay unit 250 then reconstructs the frame including the data held in the transmission buffer associated with the internal bus 6 (step S18), and transmits the reconstructed frame via the internal bus 6 (step S20). ).
  • FIG. 16 is a flowchart illustrating an example of a processing procedure for I/O data transmission (sequential transmission method) by relay unit 250 through message communication according to the present embodiment. Each step shown in FIG. 16 may be realized by the processor 262 of the relay unit 250 executing a system program.
  • relay unit 250 determines whether the message presence flag of communication management information 18 of the frame cyclically circulating on internal bus 6 is ON (step S30). If the message presence flag of the communication management information 18 of the frame cyclically circulating on the internal bus 6 is OFF (NO in step S30), the relay unit 250 receives the message from the main controller 10 via the field network 4. It is determined whether data has been received (step S32). That is, it is determined whether data has been received from the main controller 10 in a state where data can be transmitted to the arithmetic unit 200.
  • the relay unit 250 If data is received by message communication from the main controller 10 via the field network 4 (YES in step S32), the relay unit 250 holds the received data in the buffer associated with the internal bus 6 (step S34). Then, the relay unit 250 sets the message presence flag of the communication management information 18 of the frame cyclically circulating on the internal bus 6 to ON (step S36).
  • step S32 If data is not received by message communication from the main control device 10 via the field network 4 (NO in step S32), the processes of steps S34 to S36 are skipped.
  • step S30 If the message presence flag of the communication management information 18 of the frame cyclically circulating on the internal bus 6 is ON (YES in step S30), the relay unit 250 determines whether the arithmetic unit 200 has read the data held in the buffer. It is determined whether or not (step S38). If the arithmetic unit 200 has not read the data held in the buffer (NO in step S38), the process of step S40 is skipped.
  • step S38 If the arithmetic unit 200 has read the data held in the buffer (YES in step S38), the relay unit 250 turns off the message presence flag of the communication management information 18 of the frame cyclically circulating the internal bus 6. settings (step S40). Then, the processing from step S30 onwards is repeated.
  • the relay unit 250 determines whether the message presence flag of the communication management information 18 of the frame cyclically circulating in the field network 4 is ON (step S50). If the message presence flag of the communication management information 18 of the frame cyclically circulating in the field network 4 is OFF (NO in step S50), the relay unit 250 receives data from the arithmetic unit 200 via the internal bus 6 by message communication. is received (step S52). That is, it is determined whether data has been received from the arithmetic unit 200 in a state where data can be transmitted to the main control device 10.
  • the relay unit 250 If data is received by message communication from the main controller 10 via the internal bus 6 (YES in step S52), the relay unit 250 holds the received data in a buffer associated with the field network 4 (step S54). Then, the relay unit 250 sets the message presence flag of the communication management information 18 of the frame cyclically circulating the field network 4 to ON (step S56).
  • step S52 If data is not received by message communication from the arithmetic unit 200 via the internal bus 6 (NO in step S52), the processes of steps S54 to S56 are skipped.
  • step S50 If the message presence flag of the communication management information 18 of the frame cyclically circulating in the field network 4 is ON (YES in step S50), the relay unit 250 reads the data held in the buffer by the main controller 10. It is determined whether or not it has been completed (step S58). If the main controller 10 has not read the data held in the buffer (NO in step S58), the process in step S60 is skipped.
  • step S58 If the main controller 10 has read the data held in the buffer (YES in step S58), the relay unit 250 turns off the message presence flag of the communication management information 18 of the frame cyclically circulating the field network 4. (step S60). Then, the processing from step S50 onwards is repeated.
  • FIG. 17 is a flowchart illustrating an example of a processing procedure for I/O data transmission (temporary holding method) by message communication of the relay unit 250 according to the present embodiment. Each step shown in FIG. 17 may be realized by the processor 262 of the relay unit 250 executing a system program.
  • relay unit 250 determines whether the data presence flag of the frame cyclically circulating on internal bus 6 is ON (step S70). If the data presence flag of the frame cyclically circulating on the internal bus 6 is OFF (NO in step S70), the relay unit 250 determines whether the data has been received by message communication from the main controller 10 via the field network 4. It is determined whether or not (step S72). That is, it is determined whether data has been received from the main controller 10 in a state where data can be transmitted to the arithmetic unit 200.
  • the relay unit 250 If data is received by message communication from the main controller 10 via the field network 4 (YES in step S72), the relay unit 250 holds the received data in the buffer associated with the internal bus 6 (step S72). S74). Then, the relay unit 250 sets the data presence flag of the frame cyclically circulating on the internal bus 6 to ON (step S76).
  • step S72 If data is not received by message communication from the main control device 10 via the field network 4 (NO in step S72), the processes of steps S74 to S76 are skipped.
  • the relay unit 250 determines whether or not the arithmetic unit 200 has read the data held in the buffer. (Step S78). If the arithmetic unit 200 has not read out the data held in the buffer (NO in step S78), the processes in steps S80 to S84 are skipped.
  • step S78 If the arithmetic unit 200 has read the data held in the buffer (YES in step S78), the relay unit 250 prepares a response (step S80), and determines whether the arithmetic unit 200 has read the response. (Step S82). If the arithmetic unit 200 has not read the response (NO in step S82), the process of step S82 is repeated.
  • step S82 If the arithmetic unit 200 has read the response (YES in step S82), the relay unit 250 sets the data presence flag of the frame cyclically circulating on the internal bus 6 to OFF (step S84). Then, the processing from step S70 onwards is repeated.
  • the relay unit 250 determines whether the data presence flag of the frame cyclically circulating in the field network 4 is ON (step S90). If the data presence flag of the frame cyclically circulating through the field network 4 is OFF (NO in step S90), the relay unit 250 determines whether data has been received by message communication from the arithmetic unit 200 via the internal bus 6. (Step S92). That is, it is determined whether data has been received from the arithmetic unit 200 in a state where data can be transmitted to the main control device 10.
  • the relay unit 250 holds the received data in the buffer associated with the field network 4 (step S94). Then, the relay unit 250 sets the data presence flag of the frame cyclically circulating in the field network 4 to ON (step S96).
  • step S92 If data is not received by message communication from the arithmetic unit 200 via the internal bus 6 (NO in step S92), the processing in steps S94 to S96 is skipped.
  • the relay unit 250 determines whether the main controller 10 has read the data held in the buffer. (Step S98). If the main control device 10 has not read the data held in the buffer (NO in step S98), the processes in steps S100 to S104 are skipped.
  • step S100 the relay unit 250 prepares a response (step S100) and determines whether the main controller 10 has read the response. A judgment is made (step S102). If the main controller 10 has not read the response (NO in step S102), the process of step S102 is repeated.
  • step S102 If the main control device 10 has read the response (YES in step S102), the relay unit 250 sets the data presence flag of the frame cyclically circulating the field network 4 to OFF (step S104). Then, the processing from step S90 onwards is repeated.
  • FIG. 18 is a schematic diagram showing an example of a user interface for creating transfer settings 268 for relay unit 250 in control system 1 according to the present embodiment.
  • the support device 300 provides the user interface shown in FIG.
  • a setting screen 350 displays a setting item group 352 for data to be transferred from the arithmetic unit 200 to the main controller 10, and a setting item group 354 for data to be transferred from the main controller 10 to the arithmetic unit 200.
  • Each of the setting item groups 352 and 354 includes multiple types of settings according to data structure and data type.
  • the setting screen 350 includes a data candidate group 356 to be data transferred.
  • the user selects the target item from the setting item groups 352 and 354, and then selects the data to be transferred from the data candidate group 356.
  • the add button 358 By pressing the add button 358, the selected data is added as a transfer target, and by pressing the delete button 360, the selected data is deleted from the transfer target.
  • the transfer settings 268 created by the user by operating the settings screen 350 are stored in the relay unit 250, and the corresponding settings are also stored in the main controller 10 and the calculation unit 200.
  • the user interface is not limited to the example shown in FIG. 18, and any interface may be provided, or the transfer settings 268 may be created using any method without providing a user interface.
  • the user interface may not be provided by the support device 300, but may be provided directly by the calculation unit 200 or the relay unit 250.
  • a web server function may be incorporated into the computing unit 200 or the relay unit 250.
  • control system 1 may provide a user interface for creating the transfer settings 268 in response to user operations.
  • a first controller having an interface (120) for connecting to the first transmission path (4); a second controller (200) having an interface (220) for connecting to the second transmission path (6); comprising a relay unit (250) having a first interface (270) for connecting to the first transmission line and a second interface (280) for connecting to the second transmission line,
  • the relay unit transmits the output data transmitted from the first controller through cyclic communication to the second controller according to the transfer setting (268), and transmits the output data transmitted from the first controller through message communication to the second controller.
  • a control system transmitting to a second controller.
  • the relay unit transmits the output data transmitted from the first controller by cyclic communication to the second controller by cyclic communication, and transmits the output data transmitted from the first controller by message communication to the second controller by message communication.
  • the control system according to configuration 1, transmitting to the second controller.
  • the relay unit transmits output data transmitted from the second controller through cyclic communication to the first controller, and transmits output data transmitted from the second controller through message communication to the first controller. , the control system according to configuration 1 or 2.
  • the relay unit holds the output data transmitted by message communication from the first controller, and transmits the held data to the second controller in response to access from the second controller.
  • the control system according to any one of 4.
  • a relay unit (250) connected to the first controller (10) via the first transmission line (4) and connected to the second controller via the second transmission line (6), a first interface (270) for connecting to the first transmission line; a second interface (280) for connecting to the second transmission path; Sending the output data sent from the first controller through cyclic communication to the second controller according to transfer settings (268), and sending the output data sent from the first controller through message communication to the second controller.
  • a relay device comprising a processing circuit (260).
  • a communication method in a control system (1) comprising: transmitting the output data transmitted by cyclic communication from the first controller to the second controller according to the transfer settings (S4 to S10); A communication method comprising the step of transmitting output data transmitted from the first controller by message communication to the second controller (S30 to S40; S70 to S84).
  • Control system 4 Field network, 6 Internal bus, 10 Main controller, 12 Cyclic communication band, 14 Message communication band, 16, 16A, 16B frame, 18, 18A, 18B Communication management information, 20 Sub-control device , 22A, 22B data presence flag, 100, 200 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, 121, 221, 271, 281 Reception buffer, 122, 222, 272, 282 Transmission buffer, 131, 231 System program, 132 , 232 User program, 220, 280 Internal bus interface, 250 Relay unit, 260 Processing circuit, 268 Transfer settings, 300 Support device, 350 Setting screen, 352, 354 Setting item group, 356 Data candidate group, 358 Add button, 360 Delete button.

Abstract

This control system includes a first controller that has an interface for connecting to a first transmission path, a second controller that has an interface for connecting to a second transmission path, and a relay unit that has a first interface for connecting to the first transmission path and a second interface for connecting to the second transmission path. The relay unit transmits, to the second controller in accordance with transfer settings, output data that has been transmitted by cyclic communication from the first controller, and transmits, to the second controller, output data that has been transmitted by message communication from the first controller.

Description

制御システム、中継装置および通信方法Control system, relay device and communication method
 本発明は、制御システム、中継装置および通信方法に関する。 The present invention relates to a control system, a relay device, and a communication method.
 近年の情報通信技術の飛躍的な発展に伴って、産業用装置においてもより多くのデータを処理する必要性が高まっている。より具体的には、IoT(Internet of Things)やIndustry 4.0などに代表される、通信技術を用いた技術革新が進みつつある。これによって、システム内でやり取りされるデータは増大傾向にある。 With the rapid development of information and communication technology in recent years, there is an increasing need for industrial equipment to process more data. More specifically, technological innovation using communication technology, typified by IoT (Internet of Things) and Industry 4.0, is progressing. As a result, the amount of data exchanged within the system is increasing.
 このようなデータ処理量の増大に対する解決手段の一つとして、国際公開第2013/137023号(特許文献1)は、複数の通信ラインを含む構成において、装置間のデータ更新をより適切に行うことができる構成を開示する。 As one solution to this increase in the amount of data processing, International Publication No. 2013/137023 (Patent Document 1) proposes a method for more appropriately updating data between devices in a configuration including multiple communication lines. Discloses a configuration that allows this.
 複数のネットワークを用いて複数のコントローラを接続してネットワーク分散制御システムを構成する場合には、ネットワーク間のデータ転送を担当するゲートウェイである中継ユニットが用いられる。このようなネットワーク分散制御システムでは、あるネットワークに属するコントローラは、中継ユニットを介して他のネットワークに属するコントローラとデータを交換する。このようなデータ交換によって、制御状態の監視やコントローラ間の制御などを実現する。 When configuring a network distributed control system by connecting multiple controllers using multiple networks, a relay unit that is a gateway in charge of data transfer between networks is used. In such a network distributed control system, a controller belonging to a certain network exchanges data with a controller belonging to another network via a relay unit. Such data exchange realizes control status monitoring and control between controllers.
国際公開第2013/137023号International Publication No. 2013/137023
 コントローラ間で交換されるデータ量が増大することに伴って、データ交換に要する時間が長くなるため、制御性能が低下し得る。そのため、制御性能の低下を抑制しつつ、より多くのデータを交換できる構成が要望されている。 As the amount of data exchanged between controllers increases, the time required for data exchange becomes longer, and control performance may deteriorate. Therefore, there is a need for a configuration that can exchange more data while suppressing deterioration in control performance.
 本発明の一例に従う制御システムは、第1伝送路に接続するためのインターフェイスを有する第1コントローラと、第2伝送路に接続するためのインターフェイスを有する第2コントローラと、第1伝送路に接続するための第1インターフェイスと第2伝送路に接続するための第2インターフェイスとを有する中継ユニットとを含む。中継ユニットは、第1コントローラからサイクリック通信で送信された出力データを転送設定に従って第2コントローラへ送信するとともに、第1コントローラからメッセージ通信で送信された出力データを第2コントローラへ送信する。 A control system according to an example of the present invention includes a first controller having an interface for connecting to a first transmission line, a second controller having an interface for connecting to a second transmission line, and a second controller for connecting to the first transmission line. and a relay unit having a first interface for connecting to the second transmission line and a second interface for connecting to the second transmission line. The relay unit transmits the output data transmitted from the first controller through cyclic communication to the second controller according to the transfer settings, and also transmits the output data transmitted from the first controller through message communication to the second controller.
 この構成によれば、第1コントローラから第2コントローラへのデータ送信は、サイクリック通信およびメッセージ通信の両方で行うことができるので、より多くのデータを交換できる。併せて、データの特性に応じて、サイクリック通信およびメッセージ通信のいずれかを選択できるので、制御性能の低下を抑制できる。 According to this configuration, data can be transmitted from the first controller to the second controller by both cyclic communication and message communication, so more data can be exchanged. Additionally, since either cyclic communication or message communication can be selected depending on the characteristics of the data, deterioration in control performance can be suppressed.
 中継ユニットは、第1コントローラからサイクリック通信で送信された出力データをサイクリック通信で第2コントローラへ送信し、第1コントローラからメッセージ通信で送信された出力データをメッセージ通信で第2コントローラへ送信するようにしてもよい。この構成によれば、第1コントローラから中継ユニット、および、中継ユニットから第2コントローラへのデータ送信を同じ方法で行うことで、データの転送に係る処理を簡素化できる。 The relay unit transmits the output data transmitted from the first controller through cyclic communication to the second controller through cyclic communication, and transmits the output data transmitted from the first controller through message communication to the second controller through message communication. You may also do so. According to this configuration, by transmitting data from the first controller to the relay unit and from the relay unit to the second controller using the same method, processing related to data transfer can be simplified.
 中継ユニットは、第2コントローラからサイクリック通信で送信された出力データを第1コントローラへ送信するとともに、第2コントローラからメッセージ通信で送信された出力データを第1コントローラへ送信するようにしてもよい。この構成によれば、第2コントローラから第1コントローラへのデータ送信は、サイクリック通信およびメッセージ通信の両方で行うことができるので、より多くのデータを交換できる。併せて、データの特性に応じて、サイクリック通信およびメッセージ通信のいずれかを選択できるので、制御性能の低下を抑制できる。 The relay unit may transmit output data transmitted from the second controller through cyclic communication to the first controller, and transmit output data transmitted from the second controller through message communication to the first controller. . According to this configuration, data can be transmitted from the second controller to the first controller by both cyclic communication and message communication, so that more data can be exchanged. Additionally, since either cyclic communication or message communication can be selected depending on the characteristics of the data, deterioration in control performance can be suppressed.
 中継ユニットは、第1コントローラからメッセージ通信で送信された出力データをメッセージ通信で第2コントローラへ逐次送信するようにしてもよい。この構成によれば、メッセージ通信で送信されたデータを逐次送信するので、データの転送に係る処理を簡素化できる。 The relay unit may sequentially transmit the output data transmitted from the first controller through message communication to the second controller through message communication. According to this configuration, since data transmitted through message communication is transmitted sequentially, processing related to data transfer can be simplified.
 中継ユニットは、第1コントローラからメッセージ通信で送信された出力データを保持するとともに、第2コントローラからのアクセスに応じて、当該保持したデータを第2コントローラへ送信するようにしてもよい。この構成によれば、第2コントローラの制御状態などに応じて、第2コントローラは適切なタイミングでデータを取得できる。 The relay unit may hold output data sent from the first controller through message communication, and may also send the held data to the second controller in response to access from the second controller. According to this configuration, the second controller can acquire data at appropriate timing depending on the control state of the second controller.
 中継ユニットは、第1コントローラからメッセージ通信で送信された出力データを保持していることを第2コントローラへ通知するようにしてもよい。この構成によれば、第2コントローラは、中継ユニットからの通知に基づいて、中継ユニットからデータを取得する処理を実行できる。 The relay unit may notify the second controller that it holds the output data transmitted by message communication from the first controller. According to this configuration, the second controller can execute the process of acquiring data from the relay unit based on the notification from the relay unit.
 中継ユニットは、第1コントローラからメッセージ通信で送信された出力データを保持していることをサイクリック通信で第2コントローラへ通知するようにしてもよい。この構成によれば、第2コントローラは、サイクリック通信で中継ユニットからの通知を取得できるので、第2コントローラでの制御演算の周期毎に、中継ユニットからデータを取得するか否かを判断できる。 The relay unit may notify the second controller through cyclic communication that it holds the output data transmitted from the first controller through message communication. According to this configuration, the second controller can acquire notifications from the relay unit through cyclic communication, so it can be determined whether or not to acquire data from the relay unit at each cycle of control calculation in the second controller. .
 制御システムは、ユーザ操作に応じて、転送設定を作成するためのユーザインターフェイスを提供するようにしてもよい。この構成によれば、ユーザは、ユーザインターフェイスを介して、転送設定を容易に作成できる。 The control system may provide a user interface for creating transfer settings in response to user operations. According to this configuration, the user can easily create transfer settings via the user interface.
 本発明の別の一例に従えば、第1伝送路を介して第1コントローラに接続されるとともに、第2伝送路を介して第2コントローラに接続された中継ユニットが提供される。中継ユニットは、第1伝送路に接続するための第1インターフェイスと、第2伝送路に接続するための第2インターフェイスと、第1コントローラからサイクリック通信で送信された出力データを転送設定に従って第2コントローラへ送信するとともに、第1コントローラからメッセージ通信で送信された出力データを第2コントローラへ送信する処理回路とを含む。 According to another example of the present invention, a relay unit is provided that is connected to a first controller via a first transmission path and connected to a second controller via a second transmission path. The relay unit has a first interface for connecting to the first transmission path, a second interface for connecting to the second transmission path, and a relay unit that transmits output data transmitted by cyclic communication from the first controller to the first interface according to transfer settings. and a processing circuit that transmits output data transmitted by message communication from the first controller to the second controller.
 本発明のさらに別の一例に従えば、第1伝送路に接続するためのインターフェイスを有する第1コントローラと、第2伝送路に接続するためのインターフェイスを有する第2コントローラとを備える制御システムにおける通信方法が提供される。通信方法は、転送設定に従って、第1コントローラからサイクリック通信で送信された出力データを第2コントローラへ送信するステップと、第1コントローラからメッセージ通信で送信された出力データを第2コントローラへ送信するステップとを含む。 According to yet another example of the present invention, communication in a control system comprising a first controller having an interface for connecting to a first transmission path, and a second controller having an interface for connecting to a second transmission path. A method is provided. The communication method includes the steps of transmitting the output data transmitted from the first controller through cyclic communication to the second controller according to the transfer settings, and transmitting the output data transmitted from the first controller through message communication to the second controller. and steps.
 本発明によれば、制御性能の低下を抑制しつつ、より多くのデータを交換できる構成を提供する。 According to the present invention, a configuration is provided in which more data can be exchanged while suppressing a decline in control performance.
本実施の形態に従う制御システムの適用例を示す模式図である。FIG. 2 is a schematic diagram showing an example of application of 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 according to the present embodiment. 本実施の形態に従う主制御装置の演算ユニットのハードウェア構成例を示すブロック図である。FIG. 2 is a block diagram showing an example of a hardware configuration of an arithmetic unit of the main control device according to the present embodiment. 本実施の形態に従う副制御装置の演算ユニットのハードウェア構成例を示すブロック図である。FIG. 2 is a block diagram showing an example of a hardware configuration of an arithmetic unit of a sub-control device according to the present embodiment. 本実施の形態に従う副制御装置の中継ユニットのハードウェア構成例を示すブロック図である。FIG. 3 is a block diagram showing an example of the hardware configuration of a relay unit of the sub-control device according to the present embodiment. 本実施の形態に従う制御システムにおけるデータ通信の概要を示す模式図である。FIG. 2 is a schematic diagram showing an overview of data communication in the control system according to the present embodiment. 本実施の形態に従う制御システムにおけるデータ通信に用いられるデータ構造の一例を示す模式図である。FIG. 2 is a schematic diagram showing an example of a data structure used for data communication in the control system according to the present embodiment. 本実施の形態に従う制御システムにおける中継ユニットにおける処理を説明するための図である。FIG. 3 is a diagram for explaining processing in a relay unit in the control system according to the present embodiment. 本実施の形態に従う制御システムにおけるサイクリック通信によるI/Oデータ送信を説明するための図である。FIG. 3 is a diagram for explaining I/O data transmission by cyclic communication in the control system according to the present embodiment. 本実施の形態に従う制御システムにおけるメッセージ通信(逐次送信方式)によるI/Oデータ送信を説明するための図である。FIG. 3 is a diagram for explaining I/O data transmission by message communication (sequential transmission method) in the control system according to the present embodiment. 本実施の形態に従う制御システムにおけるメッセージ通信(一時保持方式)によるI/Oデータ送信を説明するための図である。FIG. 3 is a diagram for explaining I/O data transmission by message communication (temporary holding method) in the control system according to the present embodiment. 図11に示すデータ有フラグに関する処理を説明するための図である。12 is a diagram for explaining processing related to the data presence flag shown in FIG. 11. FIG. 本実施の形態に従う制御システムにおけるメッセージ通信によるデータ送信の手順例を示すシーケンス図である。FIG. 2 is a sequence diagram illustrating an example of a procedure for data transmission by message communication in the control system according to the present embodiment. 本実施の形態に従う制御システムにおけるデータ転送の手順例を示すシーケンス図である。FIG. 2 is a sequence diagram showing an example of a data transfer procedure in the control system according to the present embodiment. 本実施の形態に従う中継ユニットのサイクリック通信によるI/Oデータ送信の処理手順例を示すフローチャートである。3 is a flowchart illustrating an example of a processing procedure for I/O data transmission by cyclic communication of a relay unit according to the present embodiment. 本実施の形態に従う中継ユニットのメッセージ通信によるI/Oデータ送信(逐次送信方式)の処理手順例を示すフローチャートである。3 is a flowchart illustrating an example of a processing procedure for I/O data transmission (sequential transmission method) by message communication of a relay unit according to the present embodiment. 本実施の形態に従う中継ユニットのメッセージ通信によるI/Oデータ送信(一時保持方式)の処理手順例を示すフローチャートである。3 is a flowchart illustrating an example of a processing procedure for I/O data transmission (temporary holding method) by message communication of a relay unit according to the present embodiment. 本実施の形態に従う制御システムにおける中継ユニットの転送設定を作成するためのユーザインターフェイス例を示す模式図である。FIG. 2 is a schematic diagram showing an example of a user interface for creating transfer settings for a relay unit in the control system according to the present embodiment.
 本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰り返さない。 Embodiments of the present invention will be described in detail with reference to the drawings. Note that the same or corresponding parts in the figures are designated by the same reference numerals, and the description thereof will not be repeated.
 <A.適用例>
 まず、本発明が適用される場面の一例について説明する。
<A. Application example>
First, an example of a scene to which the present invention is applied will be described.
 図1は、本実施の形態に従う制御システム1の適用例を示す模式図である。図1を参照して、制御システム1は、第1コントローラおよび第2コントローラを含む。第1コントローラは、第1伝送路に接続するためのインターフェイスを有している。第2コントローラは、第2伝送路に接続するためのインターフェイスを有している。 FIG. 1 is a schematic diagram showing an application example of a control system 1 according to the present embodiment. Referring to FIG. 1, control system 1 includes a first controller and a second controller. The first controller has an interface for connecting to the first transmission path. The second controller has an interface for connecting to the second transmission path.
 制御システム1は、第1伝送路に接続するための第1インターフェイスと第2伝送路に接続するための第2インターフェイスとを有する中継ユニットをさらに含む。中継ユニットは、一種のゲートウェイであり、第1コントローラからサイクリック通信で送信された出力データを転送設定に従って第2コントローラへ送信するとともに、第1コントローラからメッセージ通信で送信された出力データを第2コントローラへ送信する。 The control system 1 further includes a relay unit having a first interface for connecting to the first transmission path and a second interface for connecting to the second transmission path. The relay unit is a kind of gateway, and transmits the output data transmitted from the first controller through cyclic communication to the second controller according to the transfer settings, and also transmits the output data transmitted from the first controller through message communication to the second controller. Send to controller.
 本明細書において、「サイクリック通信」は、予め定められた送信周期(例えば、1msec~数100msec)毎に予め定められたデータを送信する方法である。 In this specification, "cyclic communication" is a method of transmitting predetermined data at every predetermined transmission cycle (for example, 1 msec to several 100 msec).
 本明細書において、「メッセージ通信」は、送信元または送信先の要求に応じて、データを送信する方法である。「メッセージ通信」は、非サイクリック通信およびイベントドリブン通信を含む。 In this specification, "message communication" is a method of transmitting data in response to a request from a source or a destination. "Message communication" includes acyclic communication and event-driven communication.
 本明細書において、「入力データ」および「出力データ」との用語は、対象のデータが注目しているコントローラから見てどのような意味を持っているのかを示す。 In this specification, the terms "input data" and "output data" indicate what meaning the target data has from the perspective of the controller in focus.
 より具体的には、「入力データ」は、注目しているコントローラに入力されるデータ(注目しているコントローラが参照するデータ)を意味する。「入力データ」は、例えば、他のコントローラから与えられる指令値、他のコントローラに接続されたセンサなどで取得された状態値などを含む。 More specifically, "input data" means data input to the controller of interest (data referenced by the controller of interest). The "input data" includes, for example, command values given from other controllers, state values acquired by sensors connected to other controllers, and the like.
 一方、「出力データ」は、注目しているユニットが出力するデータ(注目しているユニットが値を変更するデータ)を意味する。「出力データ」は、例えば、他のコントローラおよび/または他のコントローラに接続されたアクチュエータに対して与える指令値などを含む。 On the other hand, "output data" means data output by the unit of interest (data whose value is changed by the unit of interest). "Output data" includes, for example, command values given to other controllers and/or actuators connected to other controllers.
 図1に示す構成例においては、中継ユニットを介して、第1コントローラから第2コントローラへデータが転送される。同じデータであっても、送信元の第1コントローラから見れば「出力データ」となり、送信先の第2コントローラから見れば「入力データ」となり得る。 In the configuration example shown in FIG. 1, data is transferred from the first controller to the second controller via the relay unit. Even if the data is the same, it can be seen as "output data" from the perspective of the first controller that is the source, and as "input data" when seen from the second controller that is the destination.
 以下の説明においては、「入力データ」および「出力データ」を「入出力データ」または「I/Oデータ」と総称することもある。但し、「入出力データ」および「I/Oデータ」は、入力データのみ、あるいは、出力データのみを含む場合もある。 In the following description, "input data" and "output data" may be collectively referred to as "input/output data" or "I/O data." However, "input/output data" and "I/O data" may include only input data or only output data.
 図1に示すサイクリック通信により送信されるデータは、優先度が相対的に高く、また、データ量が相対的に少ない。これに対して、メッセージ通信により送信されるデータは、優先度が相対的に低く、また、データ量が相対的に多い。このように、高頻度のデータ交換方法であるサイクリック通信に加えて、時間制約を持たないメッセージ通信を利用可能に構成する。更新頻度が相対的に低いデータ交換をメッセージ通信で行うことで、サイクリック通信によるデータ交換量を低減できる。 The data transmitted by the cyclic communication shown in FIG. 1 has a relatively high priority and a relatively small amount of data. On the other hand, data transmitted through message communication has a relatively low priority and a relatively large amount of data. In this way, in addition to cyclic communication, which is a high-frequency data exchange method, message communication without time constraints can be used. By exchanging data with relatively low update frequency through message communication, the amount of data exchanged through cyclic communication can be reduced.
 本実施の形態に従う制御システム1においては、送信対象のデータの特性などに応じて、サイクリック通信およびメッセージ通信のいずれを用いるかを任意に設定できる。 In the control system 1 according to the present embodiment, it is possible to arbitrarily set whether to use cyclic communication or message communication depending on the characteristics of the data to be transmitted.
 このように、中継ユニット(ゲートウェイ)を介して、コントローラ間でI/Oデータを交換する制御システムにおいて、サイクリック通信だけではなく、メッセージ通信によってもI/Oデータを送信できる構成を採用する。このような構成を採用することで、送信可能なデータ量を増加させることができ、これによって、制御性能の低下を抑制しつつ、より多くのデータを交換できる。すなわち、制御性能の向上およびコントローラ間通信の大容量化を実現できる。 In this way, in a control system that exchanges I/O data between controllers via a relay unit (gateway), a configuration is adopted in which I/O data can be transmitted not only by cyclic communication but also by message communication. By adopting such a configuration, it is possible to increase the amount of data that can be transmitted, thereby allowing more data to be exchanged while suppressing deterioration in control performance. That is, it is possible to improve control performance and increase the capacity of communication between controllers.
 <B.全体構成例>
 次に、本実施の形態に従う制御システム1の全体構成例について説明する。
<B. Overall configuration example>
Next, an example of the overall configuration of the control system 1 according to the present embodiment will be described.
 図2は、本実施の形態に従う制御システム1の全体構成例を示す模式図である。図2を参照して、本実施の形態に従う制御システム1は、主制御装置10と、1または複数の副制御装置20とを含む。 FIG. 2 is a schematic diagram showing an example of the overall configuration of the control system 1 according to the present embodiment. Referring to FIG. 2, control system 1 according to the present embodiment includes main control device 10 and one or more sub-control devices 20.
 本明細書において、「主制御装置」および「副制御装置」との用語は、説明の便宜上の区別であり、実質的に同一のハードウェア構成であってもよいし、実質的に同一の機能構成であってもよい。主制御装置および副制御装置は、PLC(プログラマブルロジックコントローラ)などの一種のコンピュータであってもよい。 In this specification, the terms "main controller" and "sub controller" are used for convenience of explanation, and they may have substantially the same hardware configuration or have substantially the same functions. It may be a configuration. The main control device and the sub-control device may be a type of computer such as a PLC (programmable logic controller).
 主制御装置10と、1または複数の副制御装置20とは、フィールドネットワーク4を介して接続されている。フィールドネットワーク4は、サイクリック通信およびメッセージ通信をサポートしている。フィールドネットワーク4としては、例えば、EtherCAT(登録商標)、EtherNet/IP(登録商標)、PROFINET(登録商標)、PROFIBUS(登録商標)、DeviceNet(登録商標)、FL-net、CompoNet(登録商標)などを用いてもよい。 The main control device 10 and one or more sub-control devices 20 are connected via a 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.
 このように、主制御装置10は、第1伝送路に相当するフィールドネットワーク4に接続するためのインターフェイスを有する第1コントローラに相当する。 In this way, the main control device 10 corresponds to a first controller having an interface for connecting to the field network 4, which corresponds to a first transmission path.
 主制御装置10は、制御演算を実行する演算ユニット100を含む。演算ユニット100は、フィールドネットワーク4によるデータ通信が可能になっている。主制御装置10は、電源ユニット、I/Oユニット、特殊ユニットなどをさらに有してもよい。 The main control device 10 includes a calculation unit 100 that executes control calculations. The arithmetic unit 100 is capable of data communication via the field network 4. The main controller 10 may further include a power supply unit, an I/O unit, a special unit, and the like.
 副制御装置20は、制御演算を実行する演算ユニット200と、フィールドネットワーク4によるデータ通信を行う中継ユニット250とを含む。副制御装置20は、電源ユニット、I/Oユニット、特殊ユニットなどをさらに有してもよい。 The sub-control device 20 includes a calculation unit 200 that performs control calculations and a relay unit 250 that performs data communication via the field network 4. The sub-control device 20 may further include a power supply unit, an I/O unit, a special unit, and the like.
 演算ユニット200と中継ユニット250とは、内部バス6(図4および図5参照)を介して接続されている。なお、副制御装置20がI/Oユニットおよび/または特殊ユニットを含む場合には、当該ユニットも内部バス6を介して接続される。 The arithmetic unit 200 and the relay unit 250 are connected via an internal bus 6 (see FIGS. 4 and 5). Note that if the sub-control device 20 includes an I/O unit and/or a special unit, the units are also connected via the internal bus 6.
 このように、演算ユニット200は、第2伝送路に相当する内部バス6に接続するためのインターフェイスを有する第2コントローラに相当する。 In this way, the arithmetic unit 200 corresponds to a second controller having an interface for connecting to the internal bus 6, which corresponds to a second transmission line.
 中継ユニット250は、主制御装置10から送信されるデータを演算ユニット200で参照できるように中継するとともに、演算ユニット200が出力するデータを主制御装置10へ送信できるように中継する。すなわち、中継ユニット250は、フィールドネットワーク4(第1伝送路)に接続するための第1インターフェイスと、内部バス6(第2伝送路)に接続するための第2インターフェイスとを有するゲートウェイである。 The relay unit 250 relays data transmitted from the main control device 10 so that it can be referenced by the calculation unit 200, and also relays data output from the calculation unit 200 so that it can be transmitted to the main control device 10. That is, the relay unit 250 is a gateway having a first interface for connecting to the field network 4 (first transmission path) and a second interface for connecting to the internal bus 6 (second transmission path).
 制御システム1は、主制御装置10および/または副制御装置20で実行されるプログラムや設定などを作成および変更するためのサポート装置300を含んでいてもよい。サポート装置300は、副制御装置20の演算ユニット200に接続されてもよいし、主制御装置10の演算ユニット100に接続されてもよい。 The control system 1 may include a support device 300 for creating and changing programs, settings, etc. executed by the main control device 10 and/or the sub-control device 20. The support device 300 may be connected to the calculation unit 200 of the sub-control device 20 or the calculation unit 100 of the main control device 10.
 <C.ハードウェア構成例>
 次に、本実施の形態に従う制御システム1の主要な装置のハードウェア構成例について説明する。
<C. Hardware configuration example>
Next, an example of the hardware configuration of the main devices of the control system 1 according to the present embodiment will be described.
 (c1:演算ユニット100)
 図3は、本実施の形態に従う主制御装置10の演算ユニット100のハードウェア構成例を示すブロック図である。図3を参照して、演算ユニット100は、CPU(Central Processing Unit)やMPU(Micro-Processing Unit)などのプロセッサ102と、チップセット104と、メモリ106と、ストレージ108と、上位ネットワークインターフェイス110と、USB(Universal Serial Bus)インターフェイス112と、メモリカードインターフェイス114と、フィールドネットワークインターフェイス120とを含む。
(c1: calculation unit 100)
FIG. 3 is a block diagram showing an example of the hardware configuration of the arithmetic unit 100 of the main control device 10 according to the present embodiment. Referring to FIG. 3, the 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.
 プロセッサ102は、ストレージ108に格納された各種プログラムを読み出して、メモリ106に展開して実行することで、演算ユニット100で必要な処理を実現する。チップセット104は、プロセッサ102と各コンポーネントとの間のデータ通信などを制御する。 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 arithmetic unit 100. The chipset 104 controls data communication between the processor 102 and each component.
 ストレージ108には、典型的には、システムプログラム131と、制御演算に必要なコンピュータ読み取り可能なコードを含むユーザプログラム132とが格納される。 The storage 108 typically stores a system program 131 and a user program 132 that includes computer-readable codes necessary for control calculations.
 ストレージ108に格納されたプログラムが実行されることで、コンピュータである演算ユニット100に本明細書に記載された処理を実行させるとともに、コンピュータである演算ユニット100において本明細書に記載された機能構成を実現させる。 By executing the program stored in the storage 108, the arithmetic unit 100, which is a computer, executes the processing described in this specification, and the functional configuration described in this specification in the arithmetic unit 100, which is a computer, is executed. Make it happen.
 上位ネットワークインターフェイス110は、上位ネットワークを介した他の装置との間のデータ通信を制御する。USBインターフェイス112は、USB接続を介してサポート装置との間のデータ通信を制御する。 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.
 メモリカードインターフェイス114は、メモリカード116を着脱可能に構成されており、メモリカード116に対してデータを書き込み、メモリカード116から各種データ(ユーザプログラムやトレースデータなど)を読み出すことが可能になっている。 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.
 フィールドネットワークインターフェイス120は、フィールドネットワーク4を介した副制御装置20との間のデータ通信を制御する。より具体的には、フィールドネットワークインターフェイス120は、受信したデータを保持するための受信バッファ121と、送信するデータの生成などに用いられる送信バッファ122とを含む。 The field network interface 120 controls data communication with the sub-control device 20 via the field network 4. More specifically, field network interface 120 includes a receive buffer 121 for holding received data and a transmit buffer 122 used for generating data to be transmitted.
 (c2:演算ユニット200)
 図4は、本実施の形態に従う副制御装置20の演算ユニット200のハードウェア構成例を示すブロック図である。図4を参照して、演算ユニット200は、CPUやMPUなどのプロセッサ202と、チップセット204と、メモリ206と、ストレージ208と、上位ネットワークインターフェイス210と、USBインターフェイス212と、メモリカードインターフェイス214と、内部バスインターフェイス220とを含む。
(c2: calculation unit 200)
FIG. 4 is a block diagram showing an example of the hardware configuration of the arithmetic unit 200 of the sub-control device 20 according to the present embodiment. Referring to FIG. 4, the 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. , an internal bus interface 220.
 プロセッサ202は、ストレージ208に格納された各種プログラムを読み出して、メモリ206に展開して実行することで、演算ユニット200で必要な処理を実現する。チップセット204は、プロセッサ202と各コンポーネントとの間のデータ通信などを制御する。 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 arithmetic unit 200. Chipset 204 controls data communication between processor 202 and each component.
 ストレージ208には、典型的には、システムプログラム231と、制御演算に必要なコンピュータ読み取り可能なコードを含むユーザプログラム232とが格納される。 The storage 208 typically stores a system program 231 and a user program 232 that includes computer-readable codes necessary for control calculations.
 ストレージ208に格納されたプログラムが実行されることで、コンピュータである演算ユニット200に本明細書に記載された処理を実行させるとともに、コンピュータである演算ユニット200において本明細書に記載された機能構成を実現させる。 By executing the program stored in the storage 208, the arithmetic unit 200, which is a computer, executes the processing described in this specification, and the functional configuration described in this specification is performed in the arithmetic unit 200, which is a computer. Make it happen.
 上位ネットワークインターフェイス210は、上位ネットワークを介した他の装置との間のデータ通信を制御する。USBインターフェイス212は、USB接続を介してサポート装置との間のデータ通信を制御する。 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.
 メモリカードインターフェイス214は、メモリカード216を着脱可能に構成されており、メモリカード216に対してデータを書き込み、メモリカード216から各種データ(ユーザプログラムやトレースデータなど)を読み出すことが可能になっている。 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.
 内部バスインターフェイス220は、内部バス6を介した1または複数のユニット(中継ユニット250を含む)との間のデータ通信を制御する。より具体的には、内部バスインターフェイス220は、受信したデータを保持するための受信バッファ221と、送信するデータの生成などに用いられる送信バッファ222とを含む。 The internal bus interface 220 controls data communication with one or more units (including the relay unit 250) via the internal bus 6. More specifically, internal bus interface 220 includes a receive buffer 221 for holding received data and a transmit buffer 222 used for generating data to be transmitted.
 内部バス6は、フィールドネットワーク4と同様に、サイクリック通信およびメッセージ通信をサポートしている。内部バス6としては、メーカ専用の通信方式を採用してもよいし、例えば、EtherCAT(登録商標)、EtherNet/IP(登録商標)、PROFINET(登録商標)、PROFIBUS(登録商標)、DeviceNet(登録商標)、FL-net、CompoNet(登録商標)などを用いてもよい。 Similarly to the field network 4, the internal bus 6 supports cyclic communication and message communication. As the internal bus 6, 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.
 (c3:中継ユニット250)
 図5は、本実施の形態に従う副制御装置20の中継ユニット250のハードウェア構成例を示すブロック図である。図5を参照して、中継ユニット250は、処理回路260と、フィールドネットワークインターフェイス270と、内部バスインターフェイス280とを含む。
(c3: relay unit 250)
FIG. 5 is a block diagram showing an example of the hardware configuration of relay unit 250 of sub-control device 20 according to the present embodiment. Referring to FIG. 5, relay unit 250 includes a processing circuit 260, a field network interface 270, and an internal bus interface 280.
 処理回路260は、後述するような中継ユニット250の処理および機能を実現する。より具体的には、処理回路260は、プロセッサ262と、メモリ264と、ストレージ266とを含む。プロセッサ262は、ストレージ266に格納されたシステムプログラム(ファームウェア)を読み出して、メモリ264に展開して実行することで、中継ユニット250で必要な処理を実現する。ストレージ266には、システムプログラムに加えて、データ転送を実現するための転送設定268が格納されている。 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. In addition to the system program, the storage 266 stores transfer settings 268 for realizing data transfer.
 図5には、転送設定268がストレージ266に格納されている例を示すが、必要に応じて、主制御装置10および演算ユニット200から取得するようにしてもよい。すなわち、中継ユニット250のストレージ266には、転送設定268が事前に格納されてはおらず、中継ユニット250の起動時などにおいて、主制御装置10および演算ユニット200のそれぞれから転送設定を取得するようにしてもよい。 Although FIG. 5 shows an example in which the transfer settings 268 are stored in the storage 266, they may be obtained from the main control device 10 and the calculation unit 200 as necessary. That is, the transfer settings 268 are not stored in advance in the storage 266 of the relay unit 250, and the transfer settings are acquired from each of the main controller 10 and the calculation unit 200 when the relay unit 250 is started. You can.
 転送設定268は、主として、サイクリック通信でI/Oデータを主制御装置10と演算ユニット200との間で転送するための設定を含む。なお、転送設定268は、メッセージ通信でI/Oデータを主制御装置10と演算ユニット200との間で転送するために必要な設定を含んでいてもよい。 The transfer settings 268 mainly include settings for transferring I/O data between the main control device 10 and the arithmetic unit 200 by cyclic communication. Note that the transfer settings 268 may include settings necessary for transferring I/O data between the main control device 10 and the arithmetic unit 200 by message communication.
 フィールドネットワークインターフェイス270は、フィールドネットワーク4を介した主制御装置10との間のデータ通信を制御する。より具体的には、フィールドネットワークインターフェイス270は、受信したデータを保持するための受信バッファ271と、送信するデータの生成などに用いられる送信バッファ272とを含む。 The field network interface 270 controls data communication with the main controller 10 via the field network 4. More specifically, field network interface 270 includes a reception buffer 271 for holding received data and a transmission buffer 272 used for generating data to be transmitted.
 内部バスインターフェイス280は、内部バス6を介した1または複数のユニット(演算ユニット200を含む)との間のデータ通信を制御する。より具体的には、内部バスインターフェイス280は、受信したデータを保持するための受信バッファ281と、送信するデータの生成などに用いられる送信バッファ282とを含む。 The internal bus interface 280 controls data communication with one or more units (including the arithmetic unit 200) via the internal bus 6. More specifically, internal bus interface 280 includes a receive buffer 281 for holding received data and a transmit buffer 282 used for generating data to be transmitted.
 (c4:その他の構成)
 図3~図5には、プロセッサがプログラムを実行することで必要な機能が提供される構成例を示したが、これらの提供される機能の一部または全部を、専用のハードウェア回路(例えば、ASIC(Application Specific Integrated Circuit)またはFPGA(Field-Programmable Gate Array)など)を用いて実装してもよい。
(c4: Other configurations)
FIGS. 3 to 5 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やFPGAなどのハードワイヤード回路を含み得る。そのため、「プロセッサ」との用語は、コンピュータ読み取り可能なコードおよび/またはハードワイヤード回路によって予め処理が定義されている、処理回路(processing circuitry)と読み替えることもできる。 In this specification, 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.
 演算ユニットの主要部は、汎用的なアーキテクチャに従うハードウェア(例えば、汎用パソコンをベースとした産業用パソコン)を用いて実現してもよい。この場合には、仮想化技術を用いて、用途の異なる複数のOS(Operating System)を並列的に実行させるとともに、各OS上で必要なアプリケーションを実行させるようにしてもよい。 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). In this case, virtualization technology may be used to run multiple OSs (Operating Systems) for different purposes in parallel, and to run necessary applications on each OS.
 (c5:サポート装置300)
 本実施の形態に従うサポート装置300は、一例として、汎用的なアーキテクチャに従う汎用コンピュータなどで構成される。汎用コンピュータのハードウェア構成例は公知であるので、詳細な説明は行わない。
(c5: Support device 300)
The support device 300 according to this embodiment 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.
 <D.データ通信>
 次に、本実施の形態に従う制御システム1におけるデータ通信について説明する。
<D. Data communication>
Next, data communication in the control system 1 according to this embodiment will be explained.
 図6は、本実施の形態に従う制御システム1におけるデータ通信の概要を示す模式図である。図6には、主制御装置10と演算ユニット200との間のI/Oデータの送信例を示す。 FIG. 6 is a schematic diagram showing an overview of data communication in the control system 1 according to the present embodiment. FIG. 6 shows an example of transmission of I/O data between the main controller 10 and the arithmetic unit 200.
 図6を参照して、主制御装置10と演算ユニット200との間には、ゲートウェイとして、中継ユニット250が配置されている。主制御装置10と中継ユニット250との間は、第1伝送路に相当するフィールドネットワーク4を介して接続されている。 Referring to FIG. 6, a relay unit 250 is arranged as a gateway between main controller 10 and arithmetic unit 200. The main control device 10 and the relay unit 250 are connected via a field network 4 corresponding to a first transmission path.
 主制御装置10の出力データが中継ユニット250を介して演算ユニット200へ送信される場合と、演算ユニット200の出力データが中継ユニット250を介して主制御装置10へ送信される場合とが想定される。本実施の形態においては、いずれの送信についても、サイクリック通信による方法、および、メッセージ通信による方法が可能になっている。 It is assumed that the output data of the main controller 10 is transmitted to the arithmetic unit 200 via the relay unit 250 and the case that the output data of the arithmetic unit 200 is transmitted to the main controller 10 via the relay unit 250. Ru. In this embodiment, for both types of transmission, a method using cyclic communication and a method using message communication are possible.
 一般的な制御システムにおいては、I/Oデータは、サイクリック通信のみで送信されるが、本実施の形態においては、送信されるデータ量および要求される定時性などに応じて、サイクリック通信およびメッセージ通信のいずれを選択することも可能になっている。 In a general control system, I/O data is transmitted only by cyclic communication, but in this embodiment, cyclic communication is It is also possible to choose between communication and message communication.
 主制御装置10から送信されたデータ(出力データ)は、中継ユニット250へ送信される。中継ユニット250は、主制御装置10の出力データとして受信したデータを、演算ユニット200の入力データとして、演算ユニット200へ送信する。 The data (output data) transmitted from the main control device 10 is transmitted to the relay unit 250. Relay unit 250 transmits data received as output data from main controller 10 to arithmetic unit 200 as input data to arithmetic unit 200 .
 一方、演算ユニット200から送信されたデータ(出力データ)は、中継ユニット250へ送信される。中継ユニット250は、演算ユニット200の出力データとして受信したデータを、主制御装置10の入力データとして、主制御装置10へ送信する。 On the other hand, data (output data) transmitted from the calculation unit 200 is transmitted to the relay unit 250. Relay unit 250 transmits the data received as output data of arithmetic unit 200 to main control device 10 as input data of main control device 10 .
 このように、中継ユニット250は、主制御装置10と演算ユニット200との間でデータを転送する。すなわち、中継ユニット250は、主制御装置10(第1コントローラ)からサイクリック通信で送信された出力データを転送設定268(図5)に従って演算ユニット200(第2コントローラ)へ送信するとともに、主制御装置10からメッセージ通信で送信された出力データを演算ユニット200へ送信する。 In this way, the relay unit 250 transfers data between the main control device 10 and the calculation unit 200. That is, the relay unit 250 transmits the output data transmitted from the main controller 10 (first controller) through cyclic communication to the arithmetic unit 200 (second controller) according to the transfer setting 268 (FIG. 5), and also Output data sent from the device 10 via message communication is sent to the arithmetic unit 200.
 同様に、中継ユニット250は、演算ユニット200からサイクリック通信で送信された出力データを転送設定268に従って主制御装置10へ送信するとともに、演算ユニット200からメッセージ通信で送信された出力データを主制御装置10へ送信する。 Similarly, the relay unit 250 transmits the output data transmitted from the arithmetic unit 200 through cyclic communication to the main controller 10 according to the transfer settings 268, and also controls the output data transmitted from the arithmetic unit 200 through message communication to the main controller 10. Send to device 10.
 このとき、中継ユニット250は、主制御装置10からサイクリック通信で送信された出力データをサイクリック通信で演算ユニット200へ送信し、主制御装置10からメッセージ通信で送信された出力データをメッセージ通信で演算ユニット200へ送信するようにしてもよい。あるいは、主制御装置10から中継ユニット250へのデータ送信の方法と、中継ユニット250から演算ユニット200へのデータ送信の方法とを異ならせてもよい。 At this time, the relay unit 250 transmits the output data transmitted from the main controller 10 through cyclic communication to the calculation unit 200 through cyclic communication, and transmits the output data transmitted from the main controller 10 through message communication through the message communication. Alternatively, the data may be transmitted to the calculation unit 200. Alternatively, the method of transmitting data from main controller 10 to relay unit 250 and the method of transmitting data from relay unit 250 to calculation unit 200 may be different.
 サイクリック通信では、予め定められた送信周期毎にデータが送信されるので、送信先では常に最新のデータを利用できる。 In cyclic communication, data is transmitted every predetermined transmission cycle, so the latest data is always available at the destination.
 図7は、本実施の形態に従う制御システム1におけるデータ通信に用いられるデータ構造の一例を示す模式図である。 FIG. 7 is a schematic diagram showing an example of a data structure used for data communication in the control system 1 according to the present embodiment.
 図7を参照して、フィールドネットワーク4においては、送信周期毎に通信用帯域が区切られている。各送信周期は、サイクリック通信用帯域12とメッセージ通信用帯域14とを含む。サイクリック通信用帯域12においては、予め定められたデータサイズのフレーム16が送信される。フレーム16は、フィールドネットワーク4に接続されたデバイス(ユニット)間を順次転送される。これによって、フレーム16は、フィールドネットワーク4をサイクリックに巡回する。 Referring to FIG. 7, in the field network 4, communication bands are divided for each transmission cycle. Each transmission cycle includes a cyclic communication band 12 and a message communication band 14. In the cyclic communication band 12, a frame 16 having a predetermined data size is transmitted. The frames 16 are sequentially transferred between devices (units) connected to the field network 4. As a result, the frame 16 cyclically circulates through the field network 4.
 サイクリック通信用帯域12において、フィールドネットワーク4に接続されたデバイス毎に出力データを書き込むための領域が用意されている。図7には、N個のデバイスがそれぞれ出力データを書き込むためのN個の領域が用意されている例を示す。フィールドネットワーク4に接続されたデバイスは、自デバイスがデータを書き込むための領域以外の領域に格納されているデータ(すなわち、他のデバイスが書き込んだデータ)を参照できる。 In the cyclic communication band 12, an area is prepared for writing output data for each device connected to the field network 4. FIG. 7 shows an example in which N areas are prepared for each of N devices to write output data. A device connected to the field network 4 can refer to data stored in an area other than the area for writing data (that is, data written by another device).
 また、サイクリック通信用帯域12においては、出力データを書き込める領域に加えて、通信に必要な管理情報(通信管理情報18)を格納する領域も用意されている。 Furthermore, in the cyclic communication band 12, in addition to an area where output data can be written, an area is also provided to store management information (communication management information 18) necessary for communication.
 一方、メッセージ通信用帯域14は、フィールドネットワーク4を管理するデバイス(例えば、「通信マスタ」または「マスタ」などと称される。)による指示に従って、指定されたデバイスから他の1または複数のデバイスに対するメッセージ通信に用いられる。なお、メッセージ通信においては、1回のサイクリック通信で送信されるデータより大きいデータサイズのデータが送信されることもあるので、1回のデータ送信には、複数回分のサイクリック通信用帯域が必要なこともある。 On the other hand, the message communication band 14 is transmitted from a designated device to one or more other devices according to instructions from a device (for example, referred to as a "communication master" or "master") that manages the field network 4. Used for message communication. Note that in message communication, data with a larger data size than that sent in one cyclic communication may be transmitted, so one data transmission requires the bandwidth for multiple cyclic communications. Sometimes it's necessary.
 なお、内部バス6においても、図7と同様に、送信周期毎に通信用帯域が区切られており、各送信周期は、サイクリック通信用帯域とメッセージ通信用帯域とを含む。 Note that in the internal bus 6 as well, similarly to FIG. 7, communication bands are divided for each transmission period, and each transmission period includes a cyclic communication band and a message communication band.
 図8は、本実施の形態に従う制御システム1における中継ユニット250における処理を説明するための図である。 FIG. 8 is a diagram for explaining processing in relay unit 250 in control system 1 according to the present embodiment.
 図8を参照して、中継ユニット250は、フィールドネットワーク4に接続されたフィールドネットワークインターフェイス270と、内部バス6に接続された内部バスインターフェイス280とを含む。 Referring to FIG. 8, relay unit 250 includes a field network interface 270 connected to field network 4 and an internal bus interface 280 connected to internal bus 6.
 フィールドネットワークインターフェイス270は、受信バッファ271および送信バッファ272を有している。受信バッファ271は、主制御装置10から受信したデータを保持し、送信バッファ272は、主制御装置10へ送信するデータを保持する。 The field network interface 270 has a reception buffer 271 and a transmission buffer 272. The reception buffer 271 holds data received from the main control device 10, and the transmission buffer 272 holds data to be sent to the main control device 10.
 内部バスインターフェイス280は、受信バッファ281および送信バッファ282を有している。受信バッファ281は、演算ユニット200から受信したデータを保持し、送信バッファ282は、演算ユニット200へ送信するデータを保持する。 The internal bus interface 280 has a receive buffer 281 and a transmit buffer 282. The reception buffer 281 holds data received from the calculation unit 200, and the transmission buffer 282 holds data to be sent to the calculation unit 200.
 中継ユニット250は、フィールドネットワークインターフェイス270の受信バッファ271が保持しているデータを内部バスインターフェイス280の送信バッファ282へデータコピーするとともに、内部バスインターフェイス280の受信バッファ281が保持しているデータをフィールドネットワークインターフェイス270の送信バッファ272へデータコピーする。 The relay unit 250 copies the data held by the receive buffer 271 of the field network interface 270 to the send buffer 282 of the internal bus interface 280, and also copies the data held by the receive buffer 281 of the internal bus interface 280 to the field. Copy the data to the transmission buffer 272 of the network interface 270.
 中継ユニット250は、このようなバッファ間のデータコピーによって、データ転送を実現する。 The relay unit 250 realizes data transfer by copying data between buffers.
 <E.サイクリック通信によるI/Oデータ送信>
 次に、本実施の形態に従う制御システム1におけるサイクリック通信によるI/Oデータ送信について説明する。
<E. I/O data transmission using cyclic communication>
Next, I/O data transmission by cyclic communication in the control system 1 according to the present embodiment will be explained.
 図9は、本実施の形態に従う制御システム1におけるサイクリック通信によるI/Oデータ送信を説明するための図である。図9には、フィールドネットワーク4をサイクリックに巡回するフレーム16Aと、内部バス6をサイクリックに巡回するフレーム16Bとを示す。 FIG. 9 is a diagram for explaining I/O data transmission by cyclic communication in the control system 1 according to the present embodiment. FIG. 9 shows a frame 16A that cyclically circulates through the field network 4 and a frame 16B that cyclically circulates through the internal bus 6.
 図9(A)には、主制御装置10から演算ユニット200へのデータ送信を実現するための処理例を示す。図9(A)を参照して、主制御装置10は、フレーム16Aに割り当てられた領域に対して出力データを書き込む。その後、フレーム16Aは、中継ユニット250へ送信される。 FIG. 9(A) shows a processing example for realizing data transmission from the main controller 10 to the arithmetic unit 200. Referring to FIG. 9(A), main controller 10 writes output data to the area allocated to frame 16A. Frame 16A is then transmitted to relay unit 250.
 中継ユニット250は、フレーム16Aに含まれる主制御装置10の出力データを抽出し、抽出した主制御装置10の出力データをフレーム16Bに割り当てられた領域に書き込む。すなわち、フレーム16Bは、中継ユニット250の出力データとして、主制御装置10の出力データを含む。その後、フレーム16Bは、演算ユニット200へ送信される。演算ユニット200は、フレーム16Bに含まれる中継ユニット250の出力データ(主制御装置10の出力データ)を入力データとして抽出する。 The relay unit 250 extracts the output data of the main control device 10 included in the frame 16A, and writes the extracted output data of the main control device 10 in the area allocated to the frame 16B. That is, frame 16B includes output data of main controller 10 as output data of relay unit 250. Frame 16B is then sent to computing unit 200. Arithmetic unit 200 extracts the output data of relay unit 250 (output data of main controller 10) included in frame 16B as input data.
 図9(B)には、副制御装置20から主制御装置10へのデータ送信を実現するための処理例を示す。図9(B)を参照して、演算ユニット200は、フレーム16Bに割り当てられた領域に対して出力データを書き込む。その後、フレーム16Bは、中継ユニット250へ送信される。 FIG. 9(B) shows an example of processing for realizing data transmission from the sub-control device 20 to the main control device 10. Referring to FIG. 9(B), arithmetic unit 200 writes output data to the area allocated to frame 16B. Frame 16B is then transmitted to relay unit 250.
 中継ユニット250は、フレーム16Bに含まれる演算ユニット200の出力データを抽出し、抽出した演算ユニット200の出力データをフレーム16Aに割り当てられた領域に書き込む。すなわち、フレーム16Aは、中継ユニット250の出力データとして、演算ユニット200の出力データを含む。その後、フレーム16Aは、主制御装置10へ送信される。主制御装置10は、フレーム16Aに含まれる中継ユニット250の出力データ(演算ユニット200の出力データ)を入力データとして抽出する。 The relay unit 250 extracts the output data of the arithmetic unit 200 included in the frame 16B, and writes the extracted output data of the arithmetic unit 200 to the area allocated to the frame 16A. That is, frame 16A includes output data of arithmetic unit 200 as output data of relay unit 250. Thereafter, frame 16A is transmitted to main controller 10. The main control device 10 extracts the output data of the relay unit 250 (output data of the arithmetic unit 200) included in the frame 16A as input data.
 図9に示すように、中継ユニット250は、フィールドネットワーク4をサイクリックに巡回するフレーム16Aと、内部バス6をサイクリックに巡回するフレーム16Bとの間で、データを交換(コピー)することで、サイクリック通信によるI/Oデータ送信を実現する。 As shown in FIG. 9, the relay unit 250 exchanges (copies) data between the frame 16A that cyclically circulates through the field network 4 and the frame 16B that cyclically circulates the internal bus 6. , realizes I/O data transmission by cyclic communication.
 <F.メッセージ通信によるI/Oデータ送信>
 次に、本実施の形態に従う制御システム1におけるメッセージ通信によるI/Oデータ送信について説明する。メッセージ通信によるI/Oデータ送信は、例えば、逐次送信方式、および、一時保持方式のいずれかを採用してもよい。
<F. I/O data transmission via message communication>
Next, I/O data transmission by message communication in the control system 1 according to the present embodiment will be explained. I/O data transmission by message communication may employ either a sequential transmission method or a temporary retention method, for example.
 (f1:逐次送信方式)
 中継ユニット250は、主制御装置10からメッセージ通信で送信された出力データをメッセージ通信で演算ユニット200へ逐次送信するとともに、演算ユニット200からメッセージ通信で送信された出力データをメッセージ通信で主制御装置10へ逐次送信するようにしてもよい。
(f1: sequential transmission method)
The relay unit 250 sequentially transmits the output data transmitted from the main control device 10 through message communication to the calculation unit 200 through message communication, and also transmits the output data transmitted from the calculation unit 200 through message communication to the main control device through message communication. 10 may be transmitted sequentially.
 図10は、本実施の形態に従う制御システム1におけるメッセージ通信(逐次送信方式)によるI/Oデータ送信を説明するための図である。 FIG. 10 is a diagram for explaining I/O data transmission by message communication (sequential transmission method) in the control system 1 according to the present embodiment.
 図10を参照して、逐次送信方式のメッセージ通信においては、主制御装置10から中継ユニット250へメッセージ通信により送信されたデータ(出力データ)は、その後、入力データとして、中継ユニット250から演算ユニット200へメッセージ通信により送信される。同様に、演算ユニット200から中継ユニット250へメッセージ通信により送信されたデータ(出力データ)は、その後、入力データとして、中継ユニット250から主制御装置10へメッセージ通信により送信される。 Referring to FIG. 10, in message communication of the sequential transmission method, data (output data) transmitted from main controller 10 to relay unit 250 by message communication is then transferred from relay unit 250 to arithmetic unit as input data. 200 by message communication. Similarly, data (output data) transmitted from the arithmetic unit 200 to the relay unit 250 by message communication is then transmitted as input data from the relay unit 250 to the main controller 10 by message communication.
 このように、逐次送信方式において、中継ユニット250は、主制御装置10または演算ユニット200からメッセージ通信によりデータを受信すると、当該受信したデータをメッセージ通信により演算ユニット200または主制御装置10へ送信する。ここで、メッセージ通信によるデータ送信は、フィールドネットワーク4および内部バス6のメッセージ通信用帯域14の空き状態に応じて、逐次実行される。 In this way, in the sequential transmission method, when the relay unit 250 receives data from the main controller 10 or the arithmetic unit 200 through message communication, the relay unit 250 transmits the received data to the arithmetic unit 200 or the main controller 10 through the message communication. . Here, data transmission by message communication is performed sequentially depending on the availability of the message communication band 14 of the field network 4 and the internal bus 6.
 逐次送信方式においては、中継ユニット250がデータを受信した後、送信先に当該データが送信されるまでには、メッセージ通信の優先度に応じた遅延が発生し得る。但し、基本的には、中継ユニット250がデータを受信した順に、データは送信される。 In the sequential transmission method, after the relay unit 250 receives data, a delay may occur depending on the priority of message communication until the data is transmitted to the destination. However, basically, the data is transmitted in the order in which the relay unit 250 receives the data.
 (f2:一時保持方式)
 一時保持方式においては、中継ユニット250が送信元からメッセージ通信により受信したデータを一時的に保持した上で、送信先がメッセージ通信により当該データを取得する。
(f2: Temporary holding method)
In the temporary holding method, the relay unit 250 temporarily holds data received from the transmission source through message communication, and then the transmission destination acquires the data through message communication.
 すなわち、中継ユニット250は、主制御装置10からメッセージ通信で送信された出力データを保持するとともに、演算ユニット200からのアクセスに応じて、当該保持したデータを演算ユニット200へ送信するようにしてもよい。逆に、主制御装置10は、中継ユニット250からメッセージ通信で送信された出力データを保持するとともに、主制御装置10からのアクセスに応じて、当該保持したデータを演算ユニット200へ送信するようにしてもよい。 That is, even if the relay unit 250 holds the output data sent from the main controller 10 by message communication, and also sends the held data to the calculation unit 200 in response to access from the calculation unit 200. good. Conversely, the main control device 10 holds the output data sent from the relay unit 250 through message communication, and also sends the held data to the calculation unit 200 in response to access from the main control device 10. You can.
 このように、中継ユニット250は、送信先からのアクセスを受けて、送信すべきデータを読み取ってもらうことになる。そのため、中継ユニット250は、データの送信先に対して、データを保持していることを通知するようにしてもよい。この通知を受けて、送信先は、中継ユニット250にアクセス(ポーリング)する。 In this way, the relay unit 250 receives access from the destination and reads the data to be transmitted. Therefore, the relay unit 250 may notify the data destination that it holds the data. Upon receiving this notification, the destination accesses (polles) the relay unit 250.
 すなわち、中継ユニット250は、主制御装置10からメッセージ通信で送信された出力データを保持していることを演算ユニット200へ通知するとともに、演算ユニット200からメッセージ通信で送信された出力データを保持していることを主制御装置10へ通知するようにしてもよい。 That is, the relay unit 250 notifies the calculation unit 200 that it holds the output data sent from the main controller 10 through message communication, and also holds the output data sent from the calculation unit 200 through message communication. The main control device 10 may be notified that the
 図11は、本実施の形態に従う制御システム1におけるメッセージ通信(一時保持方式)によるI/Oデータ送信を説明するための図である。 FIG. 11 is a diagram for explaining I/O data transmission by message communication (temporary holding method) in the control system 1 according to the present embodiment.
 図11(A)を参照して、主制御装置10がメッセージ通信によりデータを中継ユニット250へ送信する。中継ユニット250は、主制御装置10からのデータを保持する。 Referring to FIG. 11(A), main controller 10 transmits data to relay unit 250 by message communication. Relay unit 250 holds data from main controller 10 .
 図11(B)を参照して、中継ユニット250は、主制御装置10からのデータを保持していることを通知する。この通知は、例えば、中継ユニット250の出力データに含まれるデータ有フラグをONに設定することで実現される。すなわち、データ有フラグは、サイクリックに巡回するフレームに含まれている。 Referring to FIG. 11(B), relay unit 250 notifies that it holds data from main controller 10. This notification is realized, for example, by setting the data presence flag included in the output data of the relay unit 250 to ON. That is, the data presence flag is included in frames that circulate cyclically.
 図11(C)を参照して、演算ユニット200は、データ有フラグがONに設定されていることに応じて、中継ユニット250に保持されているデータをメッセージ通信により取得する。中継ユニット250は、演算ユニット200によりデータが取得されると、データ有フラグをOFFに設定する。なお、中継ユニット250は、保持していたデータを削除してもよいし、新たなデータを受信するまでそのまま保持していてもよい。 Referring to FIG. 11(C), in response to the data presence flag being set to ON, the arithmetic unit 200 acquires the data held in the relay unit 250 through message communication. When the data is acquired by the calculation unit 200, the relay unit 250 sets the data presence flag to OFF. Note that the relay unit 250 may delete the data it has held, or may hold the data as is until it receives new data.
 このように、中継ユニット250は、主制御装置10からメッセージ通信で送信された出力データを保持していることをサイクリック通信で演算ユニット200へ通知するとともに、演算ユニット200からメッセージ通信で送信された出力データを保持していることをサイクリック通信で主制御装置10へ通知してもよい。 In this way, the relay unit 250 notifies the arithmetic unit 200 through cyclic communication that it holds the output data transmitted from the main controller 10 through message communication, and also notifies the arithmetic unit 200 that it holds the output data transmitted from the arithmetic unit 200 through message communication. The main control device 10 may be notified by cyclic communication that the output data is held.
 図12は、図11に示すデータ有フラグに関する処理を説明するための図である。
 図12を参照して、主制御装置10がメッセージ通信によりデータを中継ユニット250へ送信すると、中継ユニット250は、主制御装置10からのデータを保持する。データが保持されることに応じて、データ有フラグがONに設定される。
FIG. 12 is a diagram for explaining processing related to the data presence flag shown in FIG. 11.
Referring to FIG. 12, when main controller 10 transmits data to relay unit 250 by message communication, relay unit 250 holds the data from main controller 10. In response to data being held, the data presence flag is set to ON.
 演算ユニット200は、データ有フラグがONに設定されることで、中継ユニット250にデータが保持されている(データが存在している)ことを認識する。そして、演算ユニット200は、中継ユニット250にアクセスしてデータを取得する(より具体的には、データを読み出す)。 The arithmetic unit 200 recognizes that data is held in the relay unit 250 (data exists) by setting the data presence flag to ON. The arithmetic unit 200 then accesses the relay unit 250 and acquires the data (more specifically, reads the data).
 データ有フラグは、中継ユニット250の出力データに含まれているので、演算ユニット200(および、主制御装置10)で実行されるアプリケーションから参照することができる。そのため、中継ユニット250へのアクセスのタイミングを制御するコードをアプリケーションに含まれることで、データ交換に係るデータ有フラグ(一種のインターロック信号)のみで、データをやり取りできる。 Since the data presence flag is included in the output data of the relay unit 250, it can be referenced from the application executed by the arithmetic unit 200 (and the main control device 10). Therefore, by including in the application a code that controls the timing of access to the relay unit 250, data can be exchanged using only a data presence flag (a type of interlock signal) related to data exchange.
 なお、図11および図12には、説明の便宜上、主制御装置10から副制御装置20の演算ユニット200へデータを送信する例を示す。但し、副制御装置20の演算ユニット200から主制御装置10へデータを送信する場合も同様である。 Note that, for convenience of explanation, FIGS. 11 and 12 show an example in which data is transmitted from the main controller 10 to the arithmetic unit 200 of the sub-control device 20. However, the same applies when transmitting data from the arithmetic unit 200 of the sub-control device 20 to the main control device 10.
 ここで、メッセージ通信によるデータ送信の手順例について説明する。本実施の形態に従う制御システム1は、マスタスレーブ方式の通信方式を採用している。例えば、フィールドネットワーク4においては、主制御装置10が通信マスタ(以下、単に「マスタ」と称す。)となり、中継ユニット250が通信スレーブ(以下、単に「スレーブ」と称す。)となる。 Here, an example of a procedure for transmitting data through message communication will be described. The control system 1 according to this embodiment employs a master-slave communication system. For example, in the field network 4, the main controller 10 serves as a communication master (hereinafter simply referred to as "master"), and the relay unit 250 serves as a communication slave (hereinafter simply referred to as "slave").
 図13は、本実施の形態に従う制御システム1におけるメッセージ通信によるデータ送信の手順例を示すシーケンス図である。図13を参照して、主制御装置10および中継ユニット250が接続されたフィールドネットワーク4では、フレームが送信周期毎に巡回する。 FIG. 13 is a sequence diagram showing an example of a procedure for data transmission by message communication in the control system 1 according to the present embodiment. Referring to FIG. 13, in field network 4 to which main controller 10 and relay unit 250 are connected, frames circulate at every transmission cycle.
 サイクリックに巡回するフレームは、I/Oデータに加えて、通信管理情報18(図7参照)を含む。通信管理情報18は、スレーブである中継ユニット250がメッセージ通信を要求するためのメッセージ有フラグを含み得る。すなわち、マスタである主制御装置10は、フィールドネットワーク4を管理しているため、空いている帯域を把握しているので、適切なタイミングでメッセージ通信を行う。 The cyclically circulating frame includes communication management information 18 (see FIG. 7) in addition to I/O data. Communication management information 18 may include a message presence flag for requesting message communication by relay unit 250, which is a slave. That is, the main control device 10, which is the master, manages the field network 4 and therefore knows the available bandwidth, so it performs message communication at an appropriate timing.
 これに対して、スレーブである中継ユニット250は、いずれのタイミングでメッセージ通信を行ってよいのかが分からない。そのため、中継ユニット250は、メッセージ通信が必要な状態になると、通信管理情報18のメッセージ有フラグをONに設定する。マスタである主制御装置10は、通信管理情報18に含まれているメッセージ有フラグがONに設定されていることに応じて、中継ユニット250にアクセスすることで、メッセージ通信により送信すべきデータを読み出す。 On the other hand, the relay unit 250, which is a slave, does not know when to perform message communication. Therefore, when the relay unit 250 becomes in a state where message communication is necessary, it sets the message presence flag of the communication management information 18 to ON. The main controller 10, which is the master, accesses the relay unit 250 in response to the message presence flag included in the communication management information 18 being set to ON, and transmits data to be transmitted by message communication. read out.
 図13には、メッセージ有フラグがONに設定されている通信管理情報18を実線で表現し、メッセージ有フラグがOFFに設定されている通信管理情報18を破線で表現している。 In FIG. 13, the communication management information 18 whose message presence flag is set to ON is represented by a solid line, and the communication management information 18 whose message presence flag is set to OFF is represented by a broken line.
 通信管理情報18に含まれるメッセージ有フラグを用いたやり取りは、例えば、フィールドネットワークインターフェイスまたは内部バスインターフェイスにより実現される。この場合、主制御装置10および演算ユニット200で実行されるアプリケーション(ユーザプログラム)は、データの送信を要求する処理を行えばよい。 Exchange using the message presence flag included in the communication management information 18 is realized by, for example, a field network interface or an internal bus interface. In this case, the application (user program) executed by the main control device 10 and the arithmetic unit 200 may perform processing to request data transmission.
 より具体的には、アプリケーションがデータの送信を要求すると、主制御装置10は、要求されたデータを含むメッセージを中継ユニット250に書き込む。中継ユニット250は、書き込まれたメッセージを処理する。例えば、メッセージに含まれるデータを保持する処理などが行われる。 More specifically, when an application requests data transmission, main controller 10 writes a message containing the requested data to relay unit 250. Relay unit 250 processes the written messages. For example, processing for holding data included in a message is performed.
 中継ユニット250は、メッセージの処理が完了すると、メッセージの書き込みに対するレスポンスを用意し、通信管理情報18のメッセージ有フラグをONに設定する。主制御装置10は、中継ユニット250にアクセスして、中継ユニット250からレスポンスを読み出す。主制御装置10のアプリケーションは、読み出したレスポンスに基づいて、メッセージの書き込みが成功したことを確認する。そして、一連のメッセージ通信によるデータ送信が完了する。 When the relay unit 250 completes the processing of the message, it prepares a response to the writing of the message and sets the message presence flag of the communication management information 18 to ON. The main control device 10 accesses the relay unit 250 and reads the response from the relay unit 250. The application of the main control device 10 confirms that the message writing was successful based on the read response. Then, data transmission through a series of message communications is completed.
 主制御装置10のアプリケーションは、レスポンスの読み出しの情報に基づいて、データ送信が完了したことを把握する。 The application of the main control device 10 understands that data transmission is completed based on the response read information.
 なお、図13には、メッセージ通信により主制御装置10から中継ユニット250へデータを送信する例を示すが、メッセージ通信により副制御装置20の演算ユニット200から中継ユニット250へデータを送信する場合も同様である。 Although FIG. 13 shows an example in which data is transmitted from the main control device 10 to the relay unit 250 by message communication, data may also be transmitted from the arithmetic unit 200 of the sub-control device 20 to the relay unit 250 by message communication. The same is true.
 図13には、通信管理情報18によりメッセージ有フラグがONに設定されることで、レスポンスが読み出される例を示すが、レスポンス以外の任意のデータをスレーブからマスタへ送信する場合も同様の処理が実行される。 FIG. 13 shows an example in which a response is read by setting the message presence flag to ON in the communication management information 18, but the same process is performed when any data other than the response is sent from the slave to the master. executed.
 図14は、本実施の形態に従う制御システム1におけるデータ転送の手順例を示すシーケンス図である。図14には、中継ユニット250を介して、主制御装置10から副制御装置20の演算ユニット200へデータが転送される場合の処理を示す。但し、中継ユニット250を介して、副制御装置20の演算ユニット200から主制御装置10へデータが転送される場合の処理も同様である。 FIG. 14 is a sequence diagram showing an example of a data transfer procedure in the control system 1 according to the present embodiment. FIG. 14 shows a process when data is transferred from the main control device 10 to the arithmetic unit 200 of the sub-control device 20 via the relay unit 250. However, the same applies to the case where data is transferred from the arithmetic unit 200 of the sub-control device 20 to the main control device 10 via the relay unit 250.
 図14を参照して、フィールドネットワーク4を送信周期毎に巡回するフレーム16Aと、内部バス6を送信周期毎に巡回するフレーム16Bとを示す。フレーム16Aは、中継ユニット250の出力データの一部として、データ有フラグ22Aを含む。また、フレーム16Aは、I/Oデータに加えて、通信管理情報18Aを含む。同様に、フレーム16Bは、中継ユニット250の出力データの一部として、データ有フラグ22Bを含む。また、フレーム16Bは、I/Oデータに加えて、通信管理情報18Bを含む。 Referring to FIG. 14, a frame 16A that circulates through the field network 4 at each transmission cycle and a frame 16B that circulates through the internal bus 6 at each transmission cycle are shown. Frame 16A includes a data presence flag 22A as part of the output data of relay unit 250. Further, the frame 16A includes communication management information 18A in addition to I/O data. Similarly, frame 16B includes data presence flag 22B as part of the output data of relay unit 250. Further, the frame 16B includes communication management information 18B in addition to I/O data.
 図14には、データ有フラグ22A,22BがONに設定されている状態を実線で表現し、データ有フラグ22A,22BがOFFに設定されている状態を破線で表現している。また、メッセージ有フラグがONに設定されている通信管理情報18A,18Bを実線で表現し、メッセージ有フラグがOFFに設定されている通信管理情報18A,18Bを破線で表現している。 In FIG. 14, the state in which the data presence flags 22A and 22B are set to ON is represented by a solid line, and the state in which the data presence flags 22A and 22B are set to OFF is represented by a broken line. Further, the communication management information 18A, 18B whose message presence flag is set to ON is represented by a solid line, and the communication management information 18A, 18B whose message presence flag is set to OFF is represented by a broken line.
 図14を参照して、主制御装置10のアプリケーションがデータの送信を要求すると(シーケンスSQ2)、主制御装置10は、要求されたデータを含むメッセージを中継ユニット250に書き込む(シーケンスSQ4)。中継ユニット250は、書き込まれたメッセージを処理する(シーケンスSQ6)。 Referring to FIG. 14, when the application of main controller 10 requests data transmission (sequence SQ2), main controller 10 writes a message containing the requested data to relay unit 250 (sequence SQ4). Relay unit 250 processes the written message (sequence SQ6).
 中継ユニット250は、メッセージの処理が完了すると、メッセージの書き込みに対するレスポンスを用意し、通信管理情報18Aのメッセージ有フラグをONに設定する(シーケンスSQ8)。主制御装置10は、中継ユニット250にアクセスして、中継ユニット250からレスポンスを読み出す(シーケンスSQ10)。主制御装置10のアプリケーションは、読み出したレスポンスに基づいて、メッセージの書き込みが成功したことを確認する(シーケンスSQ12)。これにより、主制御装置10から中継ユニット250へのメッセージ通信によるデータ送信が完了する。 When the relay unit 250 completes the processing of the message, it prepares a response to the writing of the message and sets the message presence flag of the communication management information 18A to ON (sequence SQ8). Main controller 10 accesses relay unit 250 and reads the response from relay unit 250 (sequence SQ10). The application of the main control device 10 confirms that the message writing was successful based on the read response (sequence SQ12). This completes data transmission by message communication from main controller 10 to relay unit 250.
 一方、中継ユニット250は、データ有フラグ22BをONに設定する(シーケンスSQ12)。演算ユニット200のアプリケーションは、データ有フラグ22BがONに設定されたことに応じて、データの取得(読み出し)を要求する(シーケンスSQ14)。すると、主制御装置10は、中継ユニット250にアクセスして、中継ユニット250に保持されているデータを読み出す(シーケンスSQ16)。 On the other hand, the relay unit 250 sets the data presence flag 22B to ON (sequence SQ12). The application of the arithmetic unit 200 requests data acquisition (reading) in response to the data presence flag 22B being set to ON (sequence SQ14). Then, main controller 10 accesses relay unit 250 and reads data held in relay unit 250 (sequence SQ16).
 中継ユニット250は、データが読み出されると、保持しているメッセージ(データ)を処理して、メッセージの読み出しに対するレスポンスを用意する(シーケンスSQ18)。そして、中継ユニット250は、通信管理情報18Bのメッセージ有フラグをON設定する(シーケンスSQ20)。 When the data is read, the relay unit 250 processes the message (data) it holds and prepares a response to the message read (sequence SQ18). Then, the relay unit 250 sets the message presence flag of the communication management information 18B to ON (sequence SQ20).
 演算ユニット200は、通信管理情報18Bに含まれているメッセージ有フラグに応じて、中継ユニット250にアクセスして、中継ユニット250からレスポンスを読み出す(シーケンスSQ22)。演算ユニット200のアプリケーションは、読み出したレスポンスに基づいて、メッセージの読み出しが成功したことを確認する(シーケンスSQ24)。これにより、中継ユニット250から演算ユニット200へのメッセージ通信によるデータ送信が完了する。 The arithmetic unit 200 accesses the relay unit 250 and reads the response from the relay unit 250 according to the message presence flag included in the communication management information 18B (sequence SQ22). The application of the arithmetic unit 200 confirms that the message has been successfully read based on the read response (sequence SQ24). This completes the data transmission from the relay unit 250 to the arithmetic unit 200 by message communication.
 <G.処理手順例>
 次に、本実施の形態に従う制御システム1における中継ユニット250の処理手順例について説明する。
<G. Processing procedure example>
Next, an example of a processing procedure of relay unit 250 in control system 1 according to the present embodiment will be described.
 図15は、本実施の形態に従う中継ユニット250のサイクリック通信によるI/Oデータ送信の処理手順例を示すフローチャートである。図15に示す各ステップは、中継ユニット250のプロセッサ262がシステムプログラムを実行することで実現されてもよい。 FIG. 15 is a flowchart illustrating an example of a processing procedure for I/O data transmission by cyclic communication of relay unit 250 according to the present embodiment. Each step shown in FIG. 15 may be realized by the processor 262 of the relay unit 250 executing a system program.
 図15を参照して、中継ユニット250は、フィールドネットワーク4を介したフレームの更新周期が到来したか否かを判断する(ステップS2)。フィールドネットワーク4を介したフレームの更新周期が到来すれば(ステップS2においてYES)、中継ユニット250は、受信したフレームに含まれる主制御装置10の出力データを抽出し(ステップS4)、抽出したデータを内部バス6に関連付けられた送信バッファに保持する(ステップS6)。そして、中継ユニット250は、フィールドネットワーク4に関連付けられた送信バッファに保持されているデータを含むフレームを再構成し(ステップS8)、再構成したフレームをフィールドネットワーク4を介して送信する(ステップS10)。 Referring to FIG. 15, relay unit 250 determines whether the frame update cycle via field network 4 has arrived (step S2). When the frame update period via the field network 4 arrives (YES in step S2), the relay unit 250 extracts the output data of the main controller 10 included in the received frame (step S4), and is held in the transmission buffer associated with the internal bus 6 (step S6). The relay unit 250 then reconstructs the frame including the data held in the transmission buffer associated with the field network 4 (step S8), and transmits the reconstructed frame via the field network 4 (step S10). ).
 内部バス6を介したフレームの更新周期が到来したか否かを判断する(ステップS12)。内部バス6を介したフレームの更新周期が到来すれば(ステップS12においてYES)、中継ユニット250は、受信したフレームに含まれる演算ユニット200の出力データを抽出し(ステップS14)、抽出したデータをフィールドネットワーク4に関連付けられた送信バッファに保持する(ステップS16)。そして、中継ユニット250は、内部バス6に関連付けられた送信バッファに保持されているデータを含むフレームを再構成し(ステップS18)、再構成したフレームを内部バス6を介して送信する(ステップS20)。 It is determined whether the frame update cycle via the internal bus 6 has arrived (step S12). When the update cycle of the frame via the internal bus 6 arrives (YES in step S12), the relay unit 250 extracts the output data of the arithmetic unit 200 included in the received frame (step S14), and transmits the extracted data. It is held in the transmission buffer associated with the field network 4 (step S16). The relay unit 250 then reconstructs the frame including the data held in the transmission buffer associated with the internal bus 6 (step S18), and transmits the reconstructed frame via the internal bus 6 (step S20). ).
 以下、ステップS2~S20の処理は繰り返される。
 図16は、本実施の形態に従う中継ユニット250のメッセージ通信によるI/Oデータ送信(逐次送信方式)の処理手順例を示すフローチャートである。図16に示す各ステップは、中継ユニット250のプロセッサ262がシステムプログラムを実行することで実現されてもよい。
Thereafter, the processes of steps S2 to S20 are repeated.
FIG. 16 is a flowchart illustrating an example of a processing procedure for I/O data transmission (sequential transmission method) by relay unit 250 through message communication according to the present embodiment. Each step shown in FIG. 16 may be realized by the processor 262 of the relay unit 250 executing a system program.
 図16を参照して、中継ユニット250は、内部バス6をサイクリックに巡回するフレームの通信管理情報18のメッセージ有フラグがONであるか否かを判断する(ステップS30)。内部バス6をサイクリックに巡回するフレームの通信管理情報18のメッセージ有フラグがOFFであれば(ステップS30においてNO)、中継ユニット250は、フィールドネットワーク4を介して主制御装置10からメッセージ通信によりデータを受信したか否かを判断する(ステップS32)。すなわち、演算ユニット200へデータを送信できる状態において、主制御装置10からデータを受信したか否かを判断する。 Referring to FIG. 16, relay unit 250 determines whether the message presence flag of communication management information 18 of the frame cyclically circulating on internal bus 6 is ON (step S30). If the message presence flag of the communication management information 18 of the frame cyclically circulating on the internal bus 6 is OFF (NO in step S30), the relay unit 250 receives the message from the main controller 10 via the field network 4. It is determined whether data has been received (step S32). That is, it is determined whether data has been received from the main controller 10 in a state where data can be transmitted to the arithmetic unit 200.
 フィールドネットワーク4を介して主制御装置10からメッセージ通信によりデータを受信していれば(ステップS32においてYES)、中継ユニット250は、受信したデータを内部バス6に関連付けられたバッファに保持する(ステップS34)。そして、中継ユニット250は、内部バス6をサイクリックに巡回するフレームの通信管理情報18のメッセージ有フラグをONに設定する(ステップS36)。 If data is received by message communication from the main controller 10 via the field network 4 (YES in step S32), the relay unit 250 holds the received data in the buffer associated with the internal bus 6 (step S34). Then, the relay unit 250 sets the message presence flag of the communication management information 18 of the frame cyclically circulating on the internal bus 6 to ON (step S36).
 フィールドネットワーク4を介して主制御装置10からメッセージ通信によりデータを受信していなければ(ステップS32においてNO)、ステップS34~S36の処理はスキップされる。 If data is not received by message communication from the main control device 10 via the field network 4 (NO in step S32), the processes of steps S34 to S36 are skipped.
 内部バス6をサイクリックに巡回するフレームの通信管理情報18のメッセージ有フラグがONであれば(ステップS30においてYES)、中継ユニット250は、演算ユニット200がバッファに保持しているデータを読み出したか否かを判断する(ステップS38)。演算ユニット200がバッファに保持しているデータを読み出していなければ(ステップS38においてNO)、ステップS40の処理はスキップされる。 If the message presence flag of the communication management information 18 of the frame cyclically circulating on the internal bus 6 is ON (YES in step S30), the relay unit 250 determines whether the arithmetic unit 200 has read the data held in the buffer. It is determined whether or not (step S38). If the arithmetic unit 200 has not read the data held in the buffer (NO in step S38), the process of step S40 is skipped.
 演算ユニット200がバッファに保持しているデータを読み出していれば(ステップS38においてYES)、中継ユニット250は、内部バス6をサイクリックに巡回するフレームの通信管理情報18のメッセージ有フラグをOFFに設定する(ステップS40)。そして、ステップS30以下の処理が繰り返される。 If the arithmetic unit 200 has read the data held in the buffer (YES in step S38), the relay unit 250 turns off the message presence flag of the communication management information 18 of the frame cyclically circulating the internal bus 6. settings (step S40). Then, the processing from step S30 onwards is repeated.
 並行して、中継ユニット250は、フィールドネットワーク4をサイクリックに巡回するフレームの通信管理情報18のメッセージ有フラグがONであるか否かを判断する(ステップS50)。フィールドネットワーク4をサイクリックに巡回するフレームの通信管理情報18のメッセージ有フラグがOFFであれば(ステップS50においてNO)、中継ユニット250は、内部バス6を介して演算ユニット200からメッセージ通信によりデータを受信したか否かを判断する(ステップS52)。すなわち、主制御装置10へデータを送信できる状態において、演算ユニット200からデータを受信したか否かを判断する。 In parallel, the relay unit 250 determines whether the message presence flag of the communication management information 18 of the frame cyclically circulating in the field network 4 is ON (step S50). If the message presence flag of the communication management information 18 of the frame cyclically circulating in the field network 4 is OFF (NO in step S50), the relay unit 250 receives data from the arithmetic unit 200 via the internal bus 6 by message communication. is received (step S52). That is, it is determined whether data has been received from the arithmetic unit 200 in a state where data can be transmitted to the main control device 10.
 内部バス6を介して主制御装置10からメッセージ通信によりデータを受信していれば(ステップS52においてYES)、中継ユニット250は、受信したデータをフィールドネットワーク4に関連付けられたバッファに保持する(ステップS54)。そして、中継ユニット250は、フィールドネットワーク4をサイクリックに巡回するフレームの通信管理情報18のメッセージ有フラグをONに設定する(ステップS56)。 If data is received by message communication from the main controller 10 via the internal bus 6 (YES in step S52), the relay unit 250 holds the received data in a buffer associated with the field network 4 (step S54). Then, the relay unit 250 sets the message presence flag of the communication management information 18 of the frame cyclically circulating the field network 4 to ON (step S56).
 内部バス6を介して演算ユニット200からメッセージ通信によりデータを受信していなければ(ステップS52においてNO)、ステップS54~S56の処理はスキップされる。 If data is not received by message communication from the arithmetic unit 200 via the internal bus 6 (NO in step S52), the processes of steps S54 to S56 are skipped.
 フィールドネットワーク4をサイクリックに巡回するフレームの通信管理情報18のメッセージ有フラグがONであれば(ステップS50においてYES)、中継ユニット250は、主制御装置10がバッファに保持しているデータを読み出したか否かを判断する(ステップS58)。主制御装置10がバッファに保持しているデータを読み出していなければ(ステップS58においてNO)、ステップS60の処理はスキップされる。 If the message presence flag of the communication management information 18 of the frame cyclically circulating in the field network 4 is ON (YES in step S50), the relay unit 250 reads the data held in the buffer by the main controller 10. It is determined whether or not it has been completed (step S58). If the main controller 10 has not read the data held in the buffer (NO in step S58), the process in step S60 is skipped.
 主制御装置10がバッファに保持しているデータを読み出していれば(ステップS58においてYES)、中継ユニット250は、フィールドネットワーク4をサイクリックに巡回するフレームの通信管理情報18のメッセージ有フラグをOFFに設定する(ステップS60)。そして、ステップS50以下の処理が繰り返される。 If the main controller 10 has read the data held in the buffer (YES in step S58), the relay unit 250 turns off the message presence flag of the communication management information 18 of the frame cyclically circulating the field network 4. (step S60). Then, the processing from step S50 onwards is repeated.
 図17は、本実施の形態に従う中継ユニット250のメッセージ通信によるI/Oデータ送信(一時保持方式)の処理手順例を示すフローチャートである。図17に示す各ステップは、中継ユニット250のプロセッサ262がシステムプログラムを実行することで実現されてもよい。 FIG. 17 is a flowchart illustrating an example of a processing procedure for I/O data transmission (temporary holding method) by message communication of the relay unit 250 according to the present embodiment. Each step shown in FIG. 17 may be realized by the processor 262 of the relay unit 250 executing a system program.
 図17を参照して、中継ユニット250は、内部バス6をサイクリックに巡回するフレームのデータ有フラグがONであるか否かを判断する(ステップS70)。内部バス6をサイクリックに巡回するフレームのデータ有フラグがOFFであれば(ステップS70においてNO)、中継ユニット250は、フィールドネットワーク4を介して主制御装置10からメッセージ通信によりデータを受信したか否かを判断する(ステップS72)。すなわち、演算ユニット200へデータを送信できる状態において、主制御装置10からデータを受信したか否かを判断する。 Referring to FIG. 17, relay unit 250 determines whether the data presence flag of the frame cyclically circulating on internal bus 6 is ON (step S70). If the data presence flag of the frame cyclically circulating on the internal bus 6 is OFF (NO in step S70), the relay unit 250 determines whether the data has been received by message communication from the main controller 10 via the field network 4. It is determined whether or not (step S72). That is, it is determined whether data has been received from the main controller 10 in a state where data can be transmitted to the arithmetic unit 200.
 フィールドネットワーク4を介して主制御装置10からメッセージ通信によりデータを受信していれば(ステップS72においてYES)、中継ユニット250は、受信したデータを内部バス6に関連付けられたバッファに保持する(ステップS74)。そして、中継ユニット250は、内部バス6をサイクリックに巡回するフレームのデータ有フラグをONに設定する(ステップS76)。 If data is received by message communication from the main controller 10 via the field network 4 (YES in step S72), the relay unit 250 holds the received data in the buffer associated with the internal bus 6 (step S72). S74). Then, the relay unit 250 sets the data presence flag of the frame cyclically circulating on the internal bus 6 to ON (step S76).
 フィールドネットワーク4を介して主制御装置10からメッセージ通信によりデータを受信していなければ(ステップS72においてNO)、ステップS74~S76の処理はスキップされる。 If data is not received by message communication from the main control device 10 via the field network 4 (NO in step S72), the processes of steps S74 to S76 are skipped.
 内部バス6をサイクリックに巡回するフレームのデータ有フラグがONであれば(ステップS70においてYES)、中継ユニット250は、演算ユニット200がバッファに保持しているデータを読み出したか否かを判断する(ステップS78)。演算ユニット200がバッファに保持しているデータを読み出していなければ(ステップS78においてNO)、ステップS80~S84の処理はスキップされる。 If the data presence flag of the frame cyclically circulating on the internal bus 6 is ON (YES in step S70), the relay unit 250 determines whether or not the arithmetic unit 200 has read the data held in the buffer. (Step S78). If the arithmetic unit 200 has not read out the data held in the buffer (NO in step S78), the processes in steps S80 to S84 are skipped.
 演算ユニット200がバッファに保持しているデータを読み出していれば(ステップS78においてYES)、中継ユニット250は、レスポンスを用意し(ステップS80)、演算ユニット200がレスポンスを読み出したか否かを判断する(ステップS82)。演算ユニット200がレスポンスを読み出していなければ(ステップS82においてNO)、ステップS82の処理が繰り返される。 If the arithmetic unit 200 has read the data held in the buffer (YES in step S78), the relay unit 250 prepares a response (step S80), and determines whether the arithmetic unit 200 has read the response. (Step S82). If the arithmetic unit 200 has not read the response (NO in step S82), the process of step S82 is repeated.
 演算ユニット200がレスポンスを読み出していれば(ステップS82においてYES)、中継ユニット250は、内部バス6をサイクリックに巡回するフレームのデータ有フラグをOFFに設定する(ステップS84)。そして、ステップS70以下の処理が繰り返される。 If the arithmetic unit 200 has read the response (YES in step S82), the relay unit 250 sets the data presence flag of the frame cyclically circulating on the internal bus 6 to OFF (step S84). Then, the processing from step S70 onwards is repeated.
 並行して、中継ユニット250は、フィールドネットワーク4をサイクリックに巡回するフレームのデータ有フラグがONであるか否かを判断する(ステップS90)。フィールドネットワーク4をサイクリックに巡回するフレームのデータ有フラグがOFFであれば(ステップS90においてNO)、中継ユニット250は、内部バス6を介して演算ユニット200からメッセージ通信によりデータを受信したか否かを判断する(ステップS92)。すなわち、主制御装置10へデータを送信できる状態において、演算ユニット200からデータを受信したか否かを判断する。 In parallel, the relay unit 250 determines whether the data presence flag of the frame cyclically circulating in the field network 4 is ON (step S90). If the data presence flag of the frame cyclically circulating through the field network 4 is OFF (NO in step S90), the relay unit 250 determines whether data has been received by message communication from the arithmetic unit 200 via the internal bus 6. (Step S92). That is, it is determined whether data has been received from the arithmetic unit 200 in a state where data can be transmitted to the main control device 10.
 内部バス6を介して演算ユニット200からメッセージ通信によりデータを受信していれば(ステップS92においてYES)、中継ユニット250は、受信したデータをフィールドネットワーク4に関連付けられたバッファに保持する(ステップS94)。そして、中継ユニット250は、フィールドネットワーク4をサイクリックに巡回するフレームのデータ有フラグをONに設定する(ステップS96)。 If data is received by message communication from the arithmetic unit 200 via the internal bus 6 (YES in step S92), the relay unit 250 holds the received data in the buffer associated with the field network 4 (step S94). ). Then, the relay unit 250 sets the data presence flag of the frame cyclically circulating in the field network 4 to ON (step S96).
 内部バス6を介して演算ユニット200からメッセージ通信によりデータを受信していなければ(ステップS92においてNO)、ステップS94~S96の処理はスキップされる。 If data is not received by message communication from the arithmetic unit 200 via the internal bus 6 (NO in step S92), the processing in steps S94 to S96 is skipped.
 フィールドネットワーク4をサイクリックに巡回するフレームのデータ有フラグがONであれば(ステップS90においてYES)、中継ユニット250は、主制御装置10がバッファに保持しているデータを読み出したか否かを判断する(ステップS98)。主制御装置10がバッファに保持しているデータを読み出していなければ(ステップS98においてNO)、ステップS100~S104の処理はスキップされる。 If the data presence flag of the frame cyclically circulating in the field network 4 is ON (YES in step S90), the relay unit 250 determines whether the main controller 10 has read the data held in the buffer. (Step S98). If the main control device 10 has not read the data held in the buffer (NO in step S98), the processes in steps S100 to S104 are skipped.
 主制御装置10がバッファに保持しているデータを読み出していれば(ステップS98においてYES)、中継ユニット250は、レスポンスを用意し(ステップS100)、主制御装置10がレスポンスを読み出したか否かを判断する(ステップS102)。主制御装置10がレスポンスを読み出していなければ(ステップS102においてNO)、ステップS102の処理が繰り返される。 If the main controller 10 has read the data held in the buffer (YES in step S98), the relay unit 250 prepares a response (step S100) and determines whether the main controller 10 has read the response. A judgment is made (step S102). If the main controller 10 has not read the response (NO in step S102), the process of step S102 is repeated.
 主制御装置10がレスポンスを読み出していれば(ステップS102においてYES)、中継ユニット250は、フィールドネットワーク4をサイクリックに巡回するフレームのデータ有フラグをOFFに設定する(ステップS104)。そして、ステップS90以下の処理が繰り返される。 If the main control device 10 has read the response (YES in step S102), the relay unit 250 sets the data presence flag of the frame cyclically circulating the field network 4 to OFF (step S104). Then, the processing from step S90 onwards is repeated.
 <H.ユーザインターフェイス例>
 次に、本実施の形態に従う制御システム1における中継ユニット250の転送設定268を作成するためのユーザインターフェイス例について説明する。
<H. User interface example>
Next, an example of a user interface for creating transfer settings 268 for relay unit 250 in control system 1 according to the present embodiment will be described.
 図18は、本実施の形態に従う制御システム1における中継ユニット250の転送設定268を作成するためのユーザインターフェイス例を示す模式図である。例えば、サポート装置300が図18に示すユーザインターフェイスを提供する。 FIG. 18 is a schematic diagram showing an example of a user interface for creating transfer settings 268 for relay unit 250 in control system 1 according to the present embodiment. For example, the support device 300 provides the user interface shown in FIG.
 図18を参照して、設定画面350は、演算ユニット200から主制御装置10へ転送するデータの設定項目群352と、主制御装置10から演算ユニット200へ転送するデータの設定項目群354とを含む。設定項目群352,354の各々は、データ構造およびデータ種類の別に複数種類の設定を含む。設定画面350は、データ転送の対象となるデータ候補群356を含む。 Referring to FIG. 18, a setting screen 350 displays a setting item group 352 for data to be transferred from the arithmetic unit 200 to the main controller 10, and a setting item group 354 for data to be transferred from the main controller 10 to the arithmetic unit 200. include. Each of the setting item groups 352 and 354 includes multiple types of settings according to data structure and data type. The setting screen 350 includes a data candidate group 356 to be data transferred.
 ユーザは、設定項目群352,354のうち対象の項目を選択した上で、データ候補群356から転送対象のデータを選択する。追加ボタン358が押下されることで、選択中のデータが転送対象として追加され、削除ボタン360が押下されることで、選択中のデータが転送対象から削除される。 The user selects the target item from the setting item groups 352 and 354, and then selects the data to be transferred from the data candidate group 356. By pressing the add button 358, the selected data is added as a transfer target, and by pressing the delete button 360, the selected data is deleted from the transfer target.
 ユーザが設定画面350を操作して作成した転送設定268は、中継ユニット250に格納されるとともに、主制御装置10および演算ユニット200にも対応する設定が格納される。 The transfer settings 268 created by the user by operating the settings screen 350 are stored in the relay unit 250, and the corresponding settings are also stored in the main controller 10 and the calculation unit 200.
 なお、図18に示すユーザインターフェイス例に限られず、任意のインターフェイスが提供されてもよいし、ユーザインターフェイスを用意せずに、任意の方法で転送設定268を作成できるようにしてもよい。 Note that the user interface is not limited to the example shown in FIG. 18, and any interface may be provided, or the transfer settings 268 may be created using any method without providing a user interface.
 また、ユーザインターフェイスは、サポート装置300が提供するのではなく、演算ユニット200または中継ユニット250が直接的に提供するようにしてもよい。この場合には、例えば、演算ユニット200または中継ユニット250にウェブサーバ機能を組み込んでもよい。 Furthermore, the user interface may not be provided by the support device 300, but may be provided directly by the calculation unit 200 or the relay unit 250. In this case, for example, a web server function may be incorporated into the computing unit 200 or the relay unit 250.
 このように、制御システム1は、ユーザ操作に応じて、転送設定268を作成するためのユーザインターフェイスを提供するようにしてもよい。 In this way, the control system 1 may provide a user interface for creating the transfer settings 268 in response to user operations.
 <I.付記>
 上述したような本実施の形態は、以下のような技術思想を含む。
<I. Additional notes>
This embodiment as described above includes the following technical idea.
  [構成1]
 第1伝送路(4)に接続するためのインターフェイス(120)を有する第1コントローラ(10)と、
 第2伝送路(6)に接続するためのインターフェイス(220)を有する第2コントローラ(200)と、
 前記第1伝送路に接続するための第1インターフェイス(270)と前記第2伝送路に接続するための第2インターフェイス(280)とを有する中継ユニット(250)とを備え、
 前記中継ユニットは、前記第1コントローラからサイクリック通信で送信された出力データを転送設定(268)に従って前記第2コントローラへ送信するとともに、前記第1コントローラからメッセージ通信で送信された出力データを前記第2コントローラへ送信する、制御システム。
[Configuration 1]
a first controller (10) having an interface (120) for connecting to the first transmission path (4);
a second controller (200) having an interface (220) for connecting to the second transmission path (6);
comprising a relay unit (250) having a first interface (270) for connecting to the first transmission line and a second interface (280) for connecting to the second transmission line,
The relay unit transmits the output data transmitted from the first controller through cyclic communication to the second controller according to the transfer setting (268), and transmits the output data transmitted from the first controller through message communication to the second controller. A control system transmitting to a second controller.
  [構成2]
 前記中継ユニットは、前記第1コントローラからサイクリック通信で送信された出力データをサイクリック通信で前記第2コントローラへ送信し、前記第1コントローラからメッセージ通信で送信された出力データをメッセージ通信で前記第2コントローラへ送信する、構成1に記載の制御システム。
[Configuration 2]
The relay unit transmits the output data transmitted from the first controller by cyclic communication to the second controller by cyclic communication, and transmits the output data transmitted from the first controller by message communication to the second controller by message communication. The control system according to configuration 1, transmitting to the second controller.
  [構成3]
 前記中継ユニットは、前記第2コントローラからサイクリック通信で送信された出力データを前記第1コントローラへ送信するとともに、前記第2コントローラからメッセージ通信で送信された出力データを前記第1コントローラへ送信する、構成1またはた2に記載の制御システム。
[Configuration 3]
The relay unit transmits output data transmitted from the second controller through cyclic communication to the first controller, and transmits output data transmitted from the second controller through message communication to the first controller. , the control system according to configuration 1 or 2.
  [構成4]
 前記中継ユニットは、前記第1コントローラからメッセージ通信で送信された出力データをメッセージ通信で前記第2コントローラへ逐次送信する、構成1~3のいずれか1項に記載の制御システム。
[Configuration 4]
4. The control system according to any one of configurations 1 to 3, wherein the relay unit sequentially transmits the output data transmitted from the first controller by message communication to the second controller by message communication.
  [構成5]
 前記中継ユニットは、前記第1コントローラからメッセージ通信で送信された出力データを保持するとともに、前記第2コントローラからのアクセスに応じて、当該保持したデータを前記第2コントローラへ送信する、構成1~4のいずれか1項に記載の制御システム。
[Configuration 5]
The relay unit holds the output data transmitted by message communication from the first controller, and transmits the held data to the second controller in response to access from the second controller. 4. The control system according to any one of 4.
  [構成6]
 前記中継ユニットは、前記第1コントローラからメッセージ通信で送信された出力データを保持していることを前記第2コントローラへ通知する、構成5に記載の制御システム。
[Configuration 6]
6. The control system according to configuration 5, wherein the relay unit notifies the second controller that it holds the output data transmitted from the first controller by message communication.
  [構成7]
 前記中継ユニットは、前記第1コントローラからメッセージ通信で送信された出力データを保持していることをサイクリック通信で前記第2コントローラへ通知する、構成6に記載の制御システム。
[Configuration 7]
7. The control system according to configuration 6, wherein the relay unit notifies the second controller by cyclic communication that it holds the output data transmitted from the first controller by message communication.
  [構成8]
 前記制御システムは、ユーザ操作に応じて、前記転送設定を作成するためのユーザインターフェイス(350)を提供する、構成1~7のいずれか1項に記載の制御システム。
[Configuration 8]
The control system according to any one of configurations 1 to 7, wherein the control system provides a user interface (350) for creating the transfer settings in response to a user operation.
  [構成9]
 第1伝送路(4)を介して第1コントローラ(10)に接続されるとともに、第2伝送路(6)を介して第2コントローラに接続された中継ユニット(250)であって、
 前記第1伝送路に接続するための第1インターフェイス(270)と、
 前記第2伝送路に接続するための第2インターフェイス(280)と、
 前記第1コントローラからサイクリック通信で送信された出力データを転送設定(268)に従って前記第2コントローラへ送信するとともに、前記第1コントローラからメッセージ通信で送信された出力データを前記第2コントローラへ送信する処理回路(260)とを備える、中継装置。
[Configuration 9]
A relay unit (250) connected to the first controller (10) via the first transmission line (4) and connected to the second controller via the second transmission line (6),
a first interface (270) for connecting to the first transmission line;
a second interface (280) for connecting to the second transmission path;
Sending the output data sent from the first controller through cyclic communication to the second controller according to transfer settings (268), and sending the output data sent from the first controller through message communication to the second controller. A relay device comprising a processing circuit (260).
  [構成10]
 第1伝送路(4)に接続するためのインターフェイス(120)を有する第1コントローラ(10)と、第2伝送路に接続するためのインターフェイス(220)を有する第2コントローラ(200)とを備える制御システム(1)における通信方法であって、
 転送設定に従って、前記第1コントローラからサイクリック通信で送信された出力データを前記第2コントローラへ送信するステップ(S4~S10)と、
 前記第1コントローラからメッセージ通信で送信された出力データを前記第2コントローラへ送信するステップ(S30~S40;S70~S84)とを備える、通信方法。
[Configuration 10]
A first controller (10) having an interface (120) for connecting to the first transmission line (4), and a second controller (200) having an interface (220) for connecting to the second transmission line. A communication method in a control system (1), comprising:
transmitting the output data transmitted by cyclic communication from the first controller to the second controller according to the transfer settings (S4 to S10);
A communication method comprising the step of transmitting output data transmitted from the first controller by message communication to the second controller (S30 to S40; S70 to S84).
 今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、請求の範囲によって示され、請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。 The embodiments disclosed this time should be considered to be illustrative in all respects and not restrictive. The scope of the present invention is indicated by the claims rather than the above description, and it is intended that equivalent meanings and all changes within the scope of the claims are included.
 1 制御システム、4 フィールドネットワーク、6 内部バス、10 主制御装置、12 サイクリック通信用帯域、14 メッセージ通信用帯域、16,16A,16B フレーム、18,18A,18B 通信管理情報、20 副制御装置、22A,22B データ有フラグ、100,200 演算ユニット、102,202,262 プロセッサ、104,204 チップセット、106,206,264 メモリ、108,208,266 ストレージ、110,210 上位ネットワークインターフェイス、112,212 インターフェイス、114,214 メモリカードインターフェイス、116,216 メモリカード、120,270 フィールドネットワークインターフェイス、121,221,271,281 受信バッファ、122,222,272,282 送信バッファ、131,231 システムプログラム、132,232 ユーザプログラム、220,280 内部バスインターフェイス、250 中継ユニット、260 処理回路、268 転送設定、300 サポート装置、350 設定画面、352,354 設定項目群、356 データ候補群、358 追加ボタン、360 削除ボタン。 1 Control system, 4 Field network, 6 Internal bus, 10 Main controller, 12 Cyclic communication band, 14 Message communication band, 16, 16A, 16B frame, 18, 18A, 18B Communication management information, 20 Sub-control device , 22A, 22B data presence flag, 100, 200 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, 121, 221, 271, 281 Reception buffer, 122, 222, 272, 282 Transmission buffer, 131, 231 System program, 132 , 232 User program, 220, 280 Internal bus interface, 250 Relay unit, 260 Processing circuit, 268 Transfer settings, 300 Support device, 350 Setting screen, 352, 354 Setting item group, 356 Data candidate group, 358 Add button, 360 Delete button.

Claims (10)

  1.  第1伝送路に接続するためのインターフェイスを有する第1コントローラと、
     第2伝送路に接続するためのインターフェイスを有する第2コントローラと、
     前記第1伝送路に接続するための第1インターフェイスと前記第2伝送路に接続するための第2インターフェイスとを有する中継ユニットとを備え、
     前記中継ユニットは、前記第1コントローラからサイクリック通信で送信された出力データを転送設定に従って前記第2コントローラへ送信するとともに、前記第1コントローラからメッセージ通信で送信された出力データを前記第2コントローラへ送信する、制御システム。
    a first controller having an interface for connecting to the first transmission path;
    a second controller having an interface for connecting to a second transmission path;
    a relay unit having a first interface for connecting to the first transmission line and a second interface for connecting to the second transmission line,
    The relay unit transmits output data transmitted from the first controller through cyclic communication to the second controller according to transfer settings, and transmits output data transmitted from the first controller through message communication to the second controller. control system.
  2.  前記中継ユニットは、前記第1コントローラからサイクリック通信で送信された出力データをサイクリック通信で前記第2コントローラへ送信し、前記第1コントローラからメッセージ通信で送信された出力データをメッセージ通信で前記第2コントローラへ送信する、請求項1に記載の制御システム。 The relay unit transmits the output data transmitted from the first controller by cyclic communication to the second controller by cyclic communication, and transmits the output data transmitted from the first controller by message communication to the second controller by message communication. The control system of claim 1, wherein the control system transmits to a second controller.
  3.  前記中継ユニットは、前記第2コントローラからサイクリック通信で送信された出力データを前記第1コントローラへ送信するとともに、前記第2コントローラからメッセージ通信で送信された出力データを前記第1コントローラへ送信する、請求項1または2に記載の制御システム。 The relay unit transmits output data transmitted from the second controller through cyclic communication to the first controller, and transmits output data transmitted from the second controller through message communication to the first controller. , the control system according to claim 1 or 2.
  4.  前記中継ユニットは、前記第1コントローラからメッセージ通信で送信された出力データをメッセージ通信で前記第2コントローラへ逐次送信する、請求項1~3のいずれか1項に記載の制御システム。 The control system according to any one of claims 1 to 3, wherein the relay unit sequentially transmits the output data transmitted from the first controller by message communication to the second controller by message communication.
  5.  前記中継ユニットは、前記第1コントローラからメッセージ通信で送信された出力データを保持するとともに、前記第2コントローラからのアクセスに応じて、当該保持したデータを前記第2コントローラへ送信する、請求項1~4のいずれか1項に記載の制御システム。 2. The relay unit retains the output data transmitted by message communication from the first controller, and transmits the retained data to the second controller in response to access from the second controller. 4. The control system according to any one of items 4 to 4.
  6.  前記中継ユニットは、前記第1コントローラからメッセージ通信で送信された出力データを保持していることを前記第2コントローラへ通知する、請求項5に記載の制御システム。 The control system according to claim 5, wherein the relay unit notifies the second controller that it holds the output data transmitted from the first controller by message communication.
  7.  前記中継ユニットは、前記第1コントローラからメッセージ通信で送信された出力データを保持していることをサイクリック通信で前記第2コントローラへ通知する、請求項6に記載の制御システム。 The control system according to claim 6, wherein the relay unit notifies the second controller by cyclic communication that it holds the output data transmitted from the first controller by message communication.
  8.  前記制御システムは、ユーザ操作に応じて、前記転送設定を作成するためのユーザインターフェイスを提供する、請求項1~7のいずれか1項に記載の制御システム。 The control system according to any one of claims 1 to 7, wherein the control system provides a user interface for creating the transfer settings in response to a user operation.
  9.  第1伝送路を介して第1コントローラに接続されるとともに、第2伝送路を介して第2コントローラに接続された中継ユニットであって、
     前記第1伝送路に接続するための第1インターフェイスと、
     前記第2伝送路に接続するための第2インターフェイスと、
     前記第1コントローラからサイクリック通信で送信された出力データを転送設定に従って前記第2コントローラへ送信するとともに、前記第1コントローラからメッセージ通信で送信された出力データを前記第2コントローラへ送信する処理回路とを備える、中継装置。
    A relay unit connected to a first controller via a first transmission path and connected to a second controller via a second transmission path,
    a first interface for connecting to the first transmission line;
    a second interface for connecting to the second transmission line;
    A processing circuit that transmits output data transmitted from the first controller through cyclic communication to the second controller according to transfer settings, and transmits output data transmitted from the first controller through message communication to the second controller. A relay device comprising:
  10.  第1伝送路に接続するためのインターフェイスを有する第1コントローラと、第2伝送路に接続するためのインターフェイスを有する第2コントローラとを備える制御システムにおける通信方法であって、
     転送設定に従って、前記第1コントローラからサイクリック通信で送信された出力データを前記第2コントローラへ送信するステップと、
     前記第1コントローラからメッセージ通信で送信された出力データを前記第2コントローラへ送信するステップとを備える、通信方法。
    A communication method in a control system comprising a first controller having an interface for connecting to a first transmission path, and a second controller having an interface for connecting to a second transmission path,
    transmitting the output data transmitted by cyclic communication from the first controller to the second controller according to the transfer settings;
    A communication method comprising the step of transmitting output data transmitted by message communication from the first controller to the second controller.
PCT/JP2023/008839 2022-06-21 2023-03-08 Control system, relay device, and communication method WO2023248551A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2022099334A JP2024000591A (en) 2022-06-21 2022-06-21 Control system, relay device, and method for communication
JP2022-099334 2022-06-21

Publications (1)

Publication Number Publication Date
WO2023248551A1 true WO2023248551A1 (en) 2023-12-28

Family

ID=89379448

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2023/008839 WO2023248551A1 (en) 2022-06-21 2023-03-08 Control system, relay device, and communication method

Country Status (2)

Country Link
JP (1) JP2024000591A (en)
WO (1) WO2023248551A1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006253864A (en) * 2005-03-09 2006-09-21 Fujitsu Ltd Data storage type transfer method, system and device
JP2018064245A (en) * 2016-10-14 2018-04-19 オムロン株式会社 Communication device, control device, and communication method
JP2020136753A (en) * 2019-02-14 2020-08-31 株式会社日立製作所 Communication control device, communication control method, and communication system
JP2021144587A (en) * 2020-03-13 2021-09-24 オムロン株式会社 Robot control system and control method
CN113691385A (en) * 2020-05-19 2021-11-23 中兴通讯股份有限公司 Message processing and advertising method and device, network bridge node, source device and medium

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006253864A (en) * 2005-03-09 2006-09-21 Fujitsu Ltd Data storage type transfer method, system and device
JP2018064245A (en) * 2016-10-14 2018-04-19 オムロン株式会社 Communication device, control device, and communication method
JP2020136753A (en) * 2019-02-14 2020-08-31 株式会社日立製作所 Communication control device, communication control method, and communication system
JP2021144587A (en) * 2020-03-13 2021-09-24 オムロン株式会社 Robot control system and control method
CN113691385A (en) * 2020-05-19 2021-11-23 中兴通讯股份有限公司 Message processing and advertising method and device, network bridge node, source device and medium

Also Published As

Publication number Publication date
JP2024000591A (en) 2024-01-09

Similar Documents

Publication Publication Date Title
CN113485823A (en) Data transmission method, device, network equipment and storage medium
JP5049834B2 (en) Data receiving apparatus, data receiving method, and data processing program
EP3260987A1 (en) Data reading method, equipment and system
CN111464447B (en) Method and device for synchronizing forwarding tables of ultra-bandwidth multi-core Ethernet switching chips
CN114285695B (en) Communication method, device, apparatus, system and storage medium
JP5775149B2 (en) Station, target device, initiator device, communication system, and communication method
JP3551905B2 (en) Management station, network system, and communication method in network system
WO2023248551A1 (en) Control system, relay device, and communication method
CN110169017B (en) Control device and communication device
JP6098251B2 (en) Redundant system
JP2023126702A (en) Information processing device and data transfer method
CN111400213B (en) Method, device and system for transmitting data
JP2007066061A (en) Data transmitter, receiver, transmission system, reception system, method, and terminal apparatus
CN110830381B (en) Congestion control method and related equipment
CN107547593B (en) Method, device and distributed system for realizing log synchronization
JP4814882B2 (en) Communication system and communication apparatus
CN108090004B (en) Hardware resource sharing system and operation method of connection bridging platform
CN111083182B (en) Distributed Internet of things equipment management method and device
JP2009199281A (en) Data transmission device
EP1783612A1 (en) Storage subsystem and storage system
WO2024014048A1 (en) Control system, control device, and communication method
JP6900691B2 (en) Control and communication equipment
WO2024014047A1 (en) Control system, control device, and communication method
CN117493024B (en) Multi-process heterogeneous program migration method, storage medium and electronic equipment
WO2023248548A1 (en) Control system, relay device, and communication method

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: 23826740

Country of ref document: EP

Kind code of ref document: A1