WO2022190430A1 - Control system, setting method, and network controller - Google Patents

Control system, setting method, and network controller Download PDF

Info

Publication number
WO2022190430A1
WO2022190430A1 PCT/JP2021/034682 JP2021034682W WO2022190430A1 WO 2022190430 A1 WO2022190430 A1 WO 2022190430A1 JP 2021034682 W JP2021034682 W JP 2021034682W WO 2022190430 A1 WO2022190430 A1 WO 2022190430A1
Authority
WO
WIPO (PCT)
Prior art keywords
devices
schedule
control
network
control system
Prior art date
Application number
PCT/JP2021/034682
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 WO2022190430A1 publication Critical patent/WO2022190430A1/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/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/52Queue scheduling by attributing bandwidth to queues
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/10Architectures or entities

Definitions

  • This technology relates to a control system, a setting method, and a network controller including a network conforming to TSN (Time Sensitive Networking).
  • TSN Time Sensitive Networking
  • Ethernet registered trademark
  • IEEE Institute of Electrical and Electronic Engineers 802.1 TSN (hereinafter simply referred to as "TSN"
  • TSN IEEE 802.1 TSN
  • real-time communication can be realized more easily using general-purpose hardware such as Ethernet (registered trademark).
  • Patent Document 1 European Patent No. 03357218 discloses an industrial network using a network conforming to the TSN standard.
  • This technology provides a mechanism for improving control accuracy in control systems that include networks that comply with TSN.
  • a control system for controlling a controlled object includes a plurality of devices that repeatedly execute processing at a predetermined control cycle, a network conforming to TSN to which the plurality of devices are connected, and a plurality of devices so that the processing executed by the plurality of devices is synchronized among the plurality of devices.
  • control reference value can be shared among a plurality of devices, the timing of processing can be matched even when control over a plurality of devices is executed, so control accuracy is improved. be able to.
  • a traffic schedule is calculated according to the determined control reference value, it is possible to improve the bandwidth utilization efficiency in a TSN-compliant network.
  • the setting means may set the traffic schedule in the switches that make up the network. According to this configuration, the switch can also transfer frames according to the traffic schedule according to the determined control reference value.
  • the control system may further include acquisition means for acquiring propagation delay times between adjacent devices among the plurality of devices.
  • the calculating means may calculate the traffic schedule based on the propagation delay times. According to this configuration, the traffic schedule can be calculated more appropriately.
  • the control system may further include a user interface for accepting changes in settings when the traffic schedule calculated by the calculation means does not meet the requirements. According to this configuration, the user can change settings etc. via the user interface so that the traffic schedule can be properly calculated.
  • Changing the settings may include changing the transmission cycle of frames containing data necessary for managing the network. According to this configuration, it is possible to improve the possibility that the traffic schedule can be properly calculated by adjusting the frame for managing the network which is not directly related to data communication.
  • the setting change may include reducing the message communication band, out of the cyclic communication band and the message communication band allocated in the frame transferred through the network. According to this configuration, by adjusting the message communication bandwidth that is not directly related to cyclic communication, it is possible to increase the possibility of appropriately calculating the traffic schedule.
  • Changing settings may include changing the transmission cycle of data exchanged between multiple devices. According to this configuration, it is possible to increase the possibility of appropriately calculating the traffic schedule by appropriately changing the data transmission cycle according to the required control accuracy and the like.
  • the user interface may notify a proposal to replace the switches that make up the network. According to this configuration, it is possible to increase the possibility of appropriately calculating the traffic schedule by replacing the switch with a switch with higher performance.
  • a setting method for a control system including a plurality of devices that repeatedly execute processing at a predetermined control cycle, and a TSN-compliant network to which the plurality of devices are connected.
  • the configuration method includes determining a control reference time for a plurality of devices such that processing performed by the devices is synchronized among the plurality of devices, and calculating a schedule of traffic in the network according to the control reference time. and setting control reference times and traffic schedules to a plurality of devices.
  • a network connected to a control system including a plurality of devices that repeatedly execute processing at a predetermined control cycle and a network that follows TSN to which the plurality of devices are connected
  • a controller calculates a schedule of traffic in the network according to the determining means for determining control reference times for the plurality of devices and the control reference times such that processing performed by the plurality of devices is synchronized among the plurality of devices. Calculation means and setting means for setting control reference times and traffic schedules for a plurality of devices.
  • FIG. 1 is a schematic diagram showing an example of the overall configuration of a control system according to an embodiment
  • FIG. It is a figure which shows an example of the communication model which the control system which concerns on this Embodiment employ
  • 2 is a block diagram showing a hardware configuration example of a PLC that configures the control system according to the present embodiment
  • FIG. 2 is a block diagram showing an example hardware configuration of a remote IO device that configures the control system according to the present embodiment
  • FIG. 3 is a block diagram showing an example hardware configuration of a switch that constitutes the control system according to the present embodiment
  • FIG. 2 is a block diagram showing an example hardware configuration of a network controller that configures the control system according to the present embodiment
  • FIG. 2 is a block diagram showing an example hardware configuration of a support device that configures the control system according to the present embodiment
  • FIG. FIG. 3 is a schematic diagram showing a more detailed configuration of one port of a switch that configures the control system according to the present embodiment
  • FIG. 3 is a schematic diagram showing an example of data communication in the control system according to the embodiment
  • FIG. 5 is a diagram showing an example of a state in which control reference times do not match in the control system according to the present embodiment
  • FIG. 5 is a diagram showing an example of a state in which control reference times match in the control system according to the present embodiment
  • FIG. 12 is a diagram showing an example of a traffic scheduling result corresponding to the state shown in FIG. 11;
  • FIG. 4 is a schematic diagram showing an example of a method of calculating a control reference time and a Qbv schedule in the control system according to the present embodiment
  • FIG. 5 is a schematic diagram showing an example of changes in frames related to adjustment of the control reference time and Qbv schedule in the control system according to the present embodiment
  • FIG. 7 is a flow chart showing a processing procedure for sharing a control reference time in the control system according to the present embodiment
  • FIG. FIG. 5 is a schematic diagram showing an example of a user interface screen for proposing a change in the transmission cycle of the network management band in the control system according to the present embodiment
  • FIG. 4 is a schematic diagram showing an example of a user interface screen for proposing a change of message communication band in the control system according to the present embodiment
  • FIG. 5 is a schematic diagram showing an example of a user interface screen for suggesting replacement of a switch in the control system according to the present embodiment
  • FIG. 5 is a schematic diagram showing an example of a user interface screen for proposing a change in the transmission cycle of cyclic communication in the control system according to the present embodiment
  • FIG. 5 is a schematic diagram showing another example of a method of calculating a control reference time and a Qbv schedule in the control system according to the present embodiment
  • FIG. 4 is a schematic diagram showing another example of the overall configuration of the control system according to the embodiment
  • FIG. 22 is a diagram showing an example of a state in which control reference times match in the control system shown in FIG. 21
  • FIG. 9 is a schematic diagram showing still another example of a method of calculating the control reference time and the Qbv schedule in the control system according to the present embodiment;
  • FIG. 1 is a schematic diagram showing an example of the overall configuration of a control system 1 according to this embodiment.
  • a control system 1 for controlling a controlled object includes PLCs (Programmable Logic Controllers) 100-1 to 100-4 (also collectively referred to as "PLC 100"), remote IO devices 150 1, 150-2 (sometimes collectively referred to as “remote IO device 150"), switches 200-1, 200-2 (sometimes collectively referred to as "switch 200”), and network controller 300.
  • PLCs Programmable Logic Controllers
  • remote IO devices 150 1, 150-2 sometimes collectively referred to as "remote IO device 150”
  • switches 200-1, 200-2 sometimes collectively referred to as "switch 200”
  • network controller 300 including.
  • a support device 400 may be connected to the network controller 300 .
  • IO or "IO data” is a generic term for input data and output data used in control calculations for controlling a controlled object.
  • the PLC 100-1 is connected via the link 20 to the switch 200-1.
  • PLC 100-2 is connected via link 22 to switch 200-1.
  • a remote IO device 150-1 is connected to the switch 200-1 via the link 24.
  • FIG. A link 26 connects between the remote IO device 150-1 and the remote IO device 150-2.
  • the PLC 100-3 is connected to the switch 200-2 via the link 32.
  • PLC 100-4 is connected via link 34 to switch 200-2.
  • a remote IO device 150-3 is connected to the switch 200-2 via the link 36.
  • FIG. A link 38 connects between the remote IO device 150-3 and the remote IO device 150-4.
  • the switch 200-1 and the switch 200-2 are connected via the link 28. Furthermore, the network controller 300 is connected to the switch 200-1 via the link 40. FIG.
  • Each of the remote IO devices 150-1 to 150-4 has a field bus 42.
  • One or more field devices 50 are connected to the fieldbus 42 .
  • One or more field devices 50 include input devices that acquire field signals and output devices or actuators that perform some action on the field according to instructions from PLC 100 .
  • the control system 1 employs a network conforming to IEEE 802.1 TSN.
  • TSN simply refers to networks conforming to IEEE 802.1 TSN.
  • IEEE 802.1 TSN mainly defines the data link layer, and protocols such as TCP/IP or UDP/IP can be used for the network layer and transport layer.
  • the IEEE 802.1 TSN standard includes several sub-standards.
  • Time synchronization is realized according to IEEE 802.1 AS-2020, which is a lower standard of IEEE 802.1 TSN, and IEEE 1588, which is a precision time protocol (PTP).
  • IEEE 802.1 AS-2020 which is a lower standard of IEEE 802.1 TSN
  • IEEE 1588 which is a precision time protocol (PTP).
  • the term "device” includes any device connected to a network conforming to IEEE 802.1 TSN.
  • “devices” can include the PLC 100 and the remote IO device 150 .
  • traffic schedule means a definition for realizing scheduling according to IEEE 802.1 Qbv, and is also referred to as “Qbv schedule” below.
  • Qbv schedule The process of determining the "Qbv schedule” by calculation is also called “scheduling".
  • the network controller 300 is the entity that manages frame transfer in the TSN, and schedules traffic (streams) by calculating resource allocation and availability. Typically, the network controller 300 schedules traffic according to IEEE 802.1 Qcc, which is a substandard of IEEE 802.1 TSN.
  • FIG. 2 is a diagram showing an example of a communication model adopted by the control system 1 according to this embodiment.
  • FIG. 2 shows a communication model adopted by the control system 1 according to the OSI hierarchical model.
  • Ethernet registered trademark
  • IEEE 802.1 TSN Ethernet (registered trademark) extended according to IEEE 802.1 TSN is implemented as a data link layer on any physical layer.
  • IP protocol is implemented as the network layer and the TCP or UDP protocol as the transport layer.
  • OPC UA is adopted as the session layer, presentation layer, and application layer.
  • OPC UA consists of multiple layers such as an information model and a communication model.
  • the switch 200 does not need to implement OPC UA, and the OPC UA is mainly implemented in the PLC 100 and remote IO device 150. Therefore, at least some of the devices connected to the TSN are configured to perform data communication using a communication protocol conforming to OPC UA.
  • control system 1 includes two control groups.
  • Control group 2 includes PLCs 100-1, 100-2 and remote IO devices 150-1, 150-2.
  • Control group 4 includes PLCs 100-3, 100-4 and remote IO devices 150-3, 150-4. In each of control group 2 and control group 4, the control reference time is set to match between devices.
  • control reference time means the update timing of the IO data referred to by the periodically executed control calculation. More specifically, the “control reference time” includes the timing of acquiring the field signal and the timing of outputting the field signal.
  • the timing at which the field signal is acquired can be matched between a plurality of devices, and the timing at which the field signal is output to the control target can be set at a plurality of timings. devices.
  • This embodiment provides a mechanism for matching the control reference time between devices in the control group.
  • FIG. 3 is a block diagram showing a hardware configuration example of the PLC 100 configuring the control system 1 according to this embodiment.
  • PLC 100 includes processor 102 , main memory 104 , network interface 110 , storage 120 , internal bus interface 130 , fieldbus interface 132 and memory card interface 134 . Each component is electrically connected via bus 138 .
  • the processor 102 is composed of a CPU (Central Processing Unit), MPU (Micro-Processing Unit), GPU (Graphical Processing Unit), etc., reads various programs stored in the storage 120, expands them in the main memory 104, and executes them. By doing so, processing as a PLC is realized.
  • CPU Central Processing Unit
  • MPU Micro-Processing Unit
  • GPU Graphics Processing Unit
  • the network interface 110 is responsible for frame transfer via TSN. More specifically, network interface 110 includes transmission/reception control circuitry 112 , transmission circuitry 114 , and reception circuitry 116 .
  • the transmission/reception control circuit 112 controls the transmission circuit 114 and the reception circuit 116 according to the Qbv schedule given in advance from the network controller 300 .
  • the transmission circuit 114 transmits frames on the TSN according to instructions from the transmission/reception control circuit 112 .
  • Receive circuit 116 receives incoming frames via TSN.
  • the storage 120 typically stores a system program 122 for realizing the functions of the PLC and a user program 124 that defines control logic to be executed by the PLC.
  • the internal bus interface 130 exchanges data with the I/O unit 140 mounted on the PLC 100.
  • the fieldbus interface 132 exchanges data with field devices via the fieldbus.
  • the memory card interface 134 is configured such that a memory card 136 can be attached/detached, and data can be written to the memory card 136, and various data (user program, trace data, etc.) can be read from the memory card 136. ing.
  • FIG. 3 shows a configuration example in which necessary functions are provided by the processor 102 executing a program.
  • the main part of the PLC 100 may be realized using hardware conforming to a general-purpose architecture (for example, an industrial personal computer based on a general-purpose personal computer).
  • the processing performed and functions provided by PLC 100 may be implemented in processing circuitry including processors, ASICs, FPGAs, and the like.
  • FIG. 4 is a block diagram showing a hardware configuration example of the remote IO device 150 that configures the control system 1 according to this embodiment.
  • the remote IO device 150 like the switch 200, has a function of transferring frames according to a given Qbv schedule.
  • remote IO device 150 includes processor 152 , main memory 154 , network interface 160 , storage 170 , internal bus interface 180 and fieldbus interface 182 . Each component is electrically connected via bus 188 .
  • the processor 152 is composed of a CPU, MPU, GPU, etc., and reads various programs stored in the storage 170, develops them in the main memory 154, and executes them, thereby realizing processing as a remote IO device.
  • the network interface 160 is in charge of frame transfer via TSN. More specifically, network interface 160 has two ports and includes transmission/reception control circuit 162, transmission circuits 164-1 and 164-2, and reception circuits 166-1 and 166-2. Transmission/reception control circuit 162 controls transmission circuits 164-1, 164-2 and reception circuits 166-1, 164-2 according to a Qbv schedule given in advance by network controller 300.
  • the storage 170 typically stores a system program 172 for realizing functions as a remote IO device and an application program 174 for realizing control processing executed by the remote IO device.
  • the internal bus interface 180 exchanges data with the I/O unit 190 mounted on the PLC 100.
  • the fieldbus interface 182 exchanges data with field devices via the fieldbus 42 .
  • FIG. 4 shows a configuration example in which necessary functions are provided by the processor 152 executing a program. , FPGA, etc.).
  • the main part of the PLC 100 may be realized using hardware conforming to a general-purpose architecture (for example, an industrial personal computer based on a general-purpose personal computer).
  • the processing performed and functions provided by the remote IO device 150 may be implemented in processing circuitry including processors, ASICs, FPGAs, and the like.
  • FIG. 5 is a block diagram showing a hardware configuration example of the switch 200 that configures the control system 1 according to this embodiment.
  • switch 200 includes transmission/reception control circuit 212 and transmission circuits 214-1, 214-2, 214-3, and 214-4 (hereinafter also collectively referred to as "transmission circuit 214"). , and receiving circuits 216-1, 216-2, 216-3, and 216-4 (hereinafter also collectively referred to as “receiving circuits 216”).
  • a set of the transmission circuit 214 and the reception circuit 216 forms one port. Note that FIG. 5 illustrates the switch 200 having four ports, but the number of ports is not particularly limited.
  • the transmission/reception control circuit 212 controls the transmission circuit 114 and the reception circuit 116 according to the Qbv schedule given in advance from the network controller 300 . More specifically, the transmit/receive control circuit 212 includes a transfer engine 218 and a queue 220 .
  • the transmission/reception control circuit 212 may be implemented by a processor executing firmware, or may be implemented using a hardwired circuit such as an ASIC or FPGA. Also, not only the transmission/reception control circuit 212 but also the entirety including the transmission circuit 114 and the reception circuit 116 may be implemented in a single chip. As such, the processing performed and functions provided by switch 200 may be implemented in processing circuitry including processors, ASICs, FPGAs, and the like.
  • FIG. 6 is a block diagram showing a hardware configuration example of the network controller 300 that configures the control system 1 according to this embodiment.
  • network controller 300 includes processor 302 , main memory 304 , network interface 310 and storage 320 . Each component is electrically connected via bus 338 .
  • the processor 302 is composed of a CPU, MPU, GPU, etc., and reads various programs stored in the storage 320, develops them in the main memory 304, and executes them, thereby realizing processing as a control device.
  • the network interface 310 is responsible for frame transfer via TSN. More specifically, network interface 310 includes transmit/receive control circuitry 312 , transmit circuitry 314 , and receive circuitry 316 .
  • the storage 320 typically stores an OS 322 for implementing basic processing and a network setting program 324 for implementing processing as described later.
  • FIG. 6 shows a configuration example in which necessary functions are provided by the processor 302 executing a program.
  • the processing performed and the functions provided by the network controller 300 may be implemented by processing circuits including processors, ASICs, FPGAs, and the like.
  • FIG. 7 is a block diagram showing a hardware configuration example of the support device 400 that configures the control system 1 according to this embodiment.
  • support device 400 includes processor 402, main memory 404, optical drive 406, secondary storage device 408, USB controller 412, network interface 414, input unit 416, display unit 418 and storage 420 . These components are connected via bus 438 .
  • the processor 402 is composed of a CPU, MPU, GPU, etc., and reads various programs stored in the storage 420, develops them in the main memory 404, and executes them, thereby realizing processing as a support device.
  • the storage 420 typically stores an OS 422 for implementing basic processing and a network setting program 424 for implementing processing as described later.
  • the support device 400 has an optical drive 406, and from a recording medium 407 (for example, an optical recording medium such as a DVD (Digital Versatile Disc)) that stores a computer-readable program non-transitory, The stored program is read and installed in the storage 420 or the like.
  • a recording medium 407 for example, an optical recording medium such as a DVD (Digital Versatile Disc)
  • DVD Digital Versatile Disc
  • Various programs executed by the support device 400 may be installed via the computer-readable recording medium 407, or may be installed by downloading from a server device on the network. Also, the functions provided by the support device 400 according to this embodiment may be realized by using some of the modules provided by the OS 422 .
  • the USB controller 412 controls data exchange with the network controller 300 via a USB connection.
  • Network interface 414 controls the exchange of data with other devices over any network.
  • the input unit 416 is composed of a keyboard, mouse, etc., and receives user operations.
  • a display unit 418 includes a display, various indicators, a printer, and the like, and outputs processing results from the processor 402 and the like.
  • FIG. 7 shows a configuration example in which necessary functions are provided by the processor 402 executing a program.
  • the processing performed and the functions provided by the support device 400 may be implemented by processing circuits including processors, ASICs, FPGAs, and the like.
  • TSN Realization of traffic scheduling according to the TSN standard>
  • a stream ID is assigned (a stream is reserved) for each data path according to IEEE 802.1 Qcc, and traffic is scheduled according to IEEE 802.1 Qbv.
  • a queue and gate configuration as shown below is employed.
  • FIG. 8 is a schematic diagram showing a more detailed configuration of one port of switch 200 that configures control system 1 according to the present embodiment.
  • each port consists of a set of a transmitter circuit 214 and a receiver circuit 216 .
  • Transfer engine 218 and queue 220 are provided between transmit circuit 214 and receive circuit 216 .
  • the transfer engine 218 includes a distribution circuit 224 and a timing control circuit 226.
  • Queue 220 also includes a plurality of queues 220-1 to 220-M associated with each traffic class value.
  • Distribution circuit 224 stores the frame in one of queues 220-1 to 220-M according to the header information of the frame received via reception circuit 216, or distributes the frame to distribution circuit 224 of another port. transfer to Also, the sorting circuit 224 performs similar determination and processing for frames received from the sorting circuit 224 of another port.
  • the distribution circuit 224 When the distribution circuit 224 receives a frame to be sent from the transmission circuit 214 of its own port, it stores the frame in the queue 220 corresponding to the traffic class of the frame. By such processing in the distribution circuit 224, the queues 220-1 to 220-M sequentially store frames classified by traffic class. For example, if the traffic class is 8, then 8 queues 220 are provided.
  • Gates 222-1 to 222-M are provided on the output sides of the queues 220-1 to 220-M, respectively.
  • Each of gates 222 - 1 to 222 -M (hereinafter collectively referred to as “gates 222 ”) opens and closes according to instructions from timing control circuit 226 .
  • the gate 222 is opened, the frame stored in the associated queue 220 is sent from the transmission circuit 214 .
  • Timing control circuit 226 does not give open commands to a plurality of gates 222 at the same time. That is, the timing control circuit 226 sequentially opens and closes the gate 222 according to the Qbv schedule 228 . This allows you to control traffic.
  • the port of PLC 100 (network interface 110), the port of remote IO device 150 (network interface 160), and the port of network controller 300 (network interface 310) also have the same configuration as in FIG.
  • each of the PLC 100 and the switch 200 opens and closes the gate 222 of the queue 220 provided according to the traffic class (priority) according to IEEE 802.1 Qbv at pre-calculated timing. This makes it possible to guarantee the required arrival time (Deadline, Latency, etc.) for each frame.
  • FIG. 9 is a schematic diagram showing an example of data communication in the control system 1 according to this embodiment.
  • data necessary for control calculation of PLC 100-1 is periodically exchanged (data communication)
  • PLC 100-2 and remote IO device 150-1 It periodically exchanges data (data communication) with the device 150-2 necessary for the control calculation of the PLC 100-2.
  • control reference time is determined and traffic scheduling is performed.
  • FIG. 10 is a diagram showing an example of a state in which the control reference times in the control system 1 according to the present embodiment do not match.
  • PLC 100-1 repeatedly executes processing including IO communication processing 62 and program execution 64 in each control cycle.
  • Each of remote IO device 150-1 and remote IO device 150-2 repeatedly executes processing including IO communication processing 66 and control processing 68 in each control cycle. In this way, each of the PLC 100 and the remote IO device 150, which are devices connected to the TSN, repeatedly executes processing at a predetermined control cycle.
  • IO communication processing 62 and IO communication processing 66 processing related to data communication including periodic exchange of IO data is executed.
  • the control reference time of each device will exist during the IO communication process.
  • Gate open period 74 of switch 200-1, gate open period 76 of remote IO device 150-1, and gate open period of remote IO device 150-2 correspond to the timing of transmission and transfer of frame 67 and frame 69. 78 are set respectively.
  • control reference time 71 of the PLC 100-1, the control reference time 72 of the remote IO device 150-1, and the control reference time 73 of the remote IO device 150-2 do not match. Assume the case.
  • the control system 1 sets the control reference time for multiple devices so that the processes executed by the multiple devices (PLC 100 and remote IO device 150) are synchronized between the multiple devices. For example, the remote IO device 150-1 and the remote IO device are controlled so that the control reference time 72 of the remote IO device 150-1 and the control reference time 73 of the remote IO device 150-2 match the control reference time 71 of the PLC 100-1. The period start time of the control period of 150-2 is shifted (offset).
  • the start timing of the control cycle can be arbitrarily set or changed.
  • FIG. 11 is a diagram showing an example of a state in which the control reference times match in the control system 1 according to the present embodiment.
  • the cycle start times of the control cycles of remote IO device 150-1 and remote IO device 150-2 are adjusted so as to match control reference time 71 of PLC 100-1. More specifically, the control cycle of the remote IO device 150-1 is adjusted so that the cycle start time is earlier by the time difference between the control reference time 71 and the control reference time 72.
  • the control cycle of the remote IO device 150-2 is adjusted so that the cycle start time is delayed by the time difference between the control reference time 71 and the control reference time 73.
  • FIG. 11A the cycle start times of the control cycles of remote IO device 150-1 and remote IO device 150-2 are adjusted so as to match control reference time 71 of PLC 100-1. More specifically, the control cycle of the remote IO device 150-1 is adjusted so that the cycle start time is earlier by the time difference between the control reference time 71 and the control reference time 72.
  • the cycle start time of each control cycle can be adjusted so that the control reference times match.
  • the frame transmission timing also changes.
  • the timing at which the remote IO device 150-1 transmits the frame 67 advances according to the adjustment of the control cycle.
  • the timing at which the remote IO device 150-2 transmits the frame 69 is delayed according to the adjustment of the control period.
  • the gate open period 78 of the remote IO device 150-2 is changed to the gate open period 79.
  • the gate open period 76 of the remote IO device 150-2 is changed to the gate open period 77.
  • FIG. Furthermore, the gate open period 74 of the switch 200-1 is changed to the gate open period 75.
  • control system 1 adjusts so that the control reference times of the devices match, and also adjusts the traffic scheduling.
  • the control accuracy of the control system 1 can be optimized by adjusting based on both control reference times and traffic scheduling.
  • FIG. 12 is a diagram showing an example of traffic scheduling results corresponding to the state shown in FIG.
  • switch 200-1 is changed to gate open period 75A in which frame 67 and frame 69 can be transferred.
  • the gate open period 77A is changed so that the frame 67 and the frame 69 can be transferred.
  • the gate open period 79 set in the remote IO device 150-2 is maintained as it is.
  • the Qbv schedule (for example, the length and timing of the gate open period) is recalculated as the period start time of the control period of each device is adjusted so that the control reference times match.
  • the propagation delay time 70 between devices and the transmission time of data are referred to.
  • FIG. 13 is a schematic diagram showing an example of a method of calculating the control reference time and the Qbv schedule in the control system 1 according to the present embodiment.
  • network controller 300 corrects the time for synchronization with devices (PLC 100, remote IO device 150, switch 200, etc.) connected to TSN ((1) time correction ).
  • the time correction process may be performed by any time synchronization subject.
  • the network controller 300 acquires propagation delay times between each of the devices connected to the TSN and adjacent devices ((2) Acquisition of propagation delay times).
  • the network controller 300 calculates the control reference time and the Qbv schedule ((3) Control reference time calculation/Qbv schedule calculation). At this time, various factors to be described later may be referred to.
  • the network controller 300 transmits the control reference time setting and the Qbv schedule to the PLC 100 and the remote IO device 150 ((4-1) control reference time setting/Qbv schedule), and also transmits the Qbv schedule to the switch 200 (( 4-2) Qbv schedule).
  • the PLC 100 adjusts the timing at which the task scheduler periodically executes the control task according to the control reference time setting from the network controller 300 . At this time, the PLC 100 restarts the task scheduler ((5) task scheduler restart). PLC 100 also sets the Qbv schedule from network controller 300 to network interface 110 .
  • the remote IO device 150 adjusts the control cycle start timing according to the control reference time setting from the network controller 300 . Also, the remote IO device 150 sets the Qbv schedule from the network controller 300 to the network interface 160 .
  • the switch 200 sets the Qbv schedule from the network controller 300 in the timing control circuit 226.
  • control reference time and Qbv schedule in the control system 1 are calculated and optimized by the above processing procedure.
  • the Qbv schedule is also recalculated as the control reference time is adjusted.
  • the use efficiency of the band will be lowered and the usable band will be insufficient due to the timing of the frame transfer being shifted.
  • a slave type device (a device having functions as an end device and a switch) such as the remote IO device 150, frames to be transferred from other devices and frames to be transmitted from the own device are different. may compete.
  • 14A and 14B are schematic diagrams showing an example of a frame change related to adjustment of the control reference time and the Qbv schedule in the control system 1 according to the present embodiment.
  • the frame in the initial state includes a cyclic communication band 80, a message communication band 82, a network management band 84, and a setting band 86.
  • the cyclic communication band 80 is a band used for cyclic data exchange between the PLCs 100 or between the PLC 100 and the remote IO device 150 .
  • the message communication band 82 is a band used for exchanging data at arbitrary timing, and is also called an event communication band.
  • Message communication band 82 is used, for example, by any user program, event notification, TCP application, and the like.
  • the network management band 84 is a band used for exchanging data necessary for network management such as synchronization.
  • the network management band 84 is used, for example, for time correction, adjacent node detection, loop avoidance, and the like.
  • the setting band 86 is a band used for exchanging data necessary for arbitrary settings for devices connected to the network.
  • the setting band 86 is, for example, a band used for setting from the support device 400, initial setting, and the like.
  • the band included in one frame can be expanded by lengthening the control period.
  • more cyclic communication bands 80 can be assigned to one frame.
  • an empty band 88 can also be prepared.
  • Vacant band 88 may be used for exchanging arbitrary data such as images and videos.
  • a larger cyclic communication band 80 can be allocated.
  • control system 1 By adjusting the length of the control cycle and the allocation of the band in this way, the control system 1 as a whole can exhibit higher control accuracy.
  • FIG. 15 is a flowchart showing a processing procedure for sharing the control reference time in the control system 1 according to the present embodiment.
  • Each step shown in FIG. 15 is typically realized by executing the network setting program 324 by the processor 302 of the network controller 300, or by executing the network setting program 424 by the processor 402 of the support device 400. is realized by A case where the network controller 300 executes processing will be described below as a typical example.
  • the network controller 300 determines control reference times for a plurality of target devices among the devices that configure the control system 1 (step S2). That is, the network controller 300 determines the control reference times for the plurality of devices such that the processes executed by the plurality of devices are synchronized among the plurality of devices.
  • the network controller 300 acquires the propagation delay time between the devices of the control system 1 (step S4).
  • Network controller 300 acquires the propagation delay time between adjacent devices among the plurality of devices (PLC 100 and remote IO device 150) that configure control system 1 . Each device measures the propagation delay time.
  • the network controller 300 follows the control reference time set for the plurality of target devices and calculates the traffic schedule (Qbv schedule) in the TSN of the control system 1 based on the propagation delay time and the like (step S6 ).
  • the network controller 300 determines whether the Qbv schedule has been properly calculated (step S8). If the Qbv schedule can be calculated appropriately (YES in step S8), network controller 300 sets the control reference time setting and the Qbv schedule to each of PLC 100 and remote IO device 150 (step S40). That is, the network controller 300 sets a control reference time and a traffic schedule (Qbv schedule) to a plurality of devices (PLC 100 and remote IO device 150). Also, the network controller 300 sets the Qbv schedule to the switch 200 (step S42). That is, the network controller 300 sets a traffic schedule (Qbv schedule) to the switches 200 that configure the TSN.
  • the network controller 300 determines whether there is a free band based on the current settings (step S10). If there is a free band (YES in step S10), network controller 300 expands cyclic communication band 80 assigned to the frame (step S12). Then, the network controller 300 recalculates the Qbv schedule in the TSN of the control system 1 with the expanded cyclic communication band 80 assigned to the frame (step S36).
  • network controller 300 determines whether the bands currently assigned to network management band 84 and setting band 86 exceed the minimum necessary size. (step S14). If the bands assigned to the current network management band 84 and the setting band 86 exceed the minimum necessary size (YES in step S14), the network controller 300 sets the network management band assigned to the frame. 84 and/or setting band 86 are reduced to the minimum necessary, and cyclic communication band 80 is expanded (step S16). Then, the network controller 300 recalculates the Qbv schedule in the TSN of the control system 1 with a setting that expands the cyclic communication band 80 (step S36).
  • network controller 300 transmits a frame including network management band 84. It is determined whether or not the cycle can be lengthened (step S18). If the transmission cycle of frames including network management band 84 can be lengthened (YES in step S18), network controller 300 lengthens the transmission cycle of frames including network management band 84 and increases cyclic communication band 80. Enlarge (step S20). Then, the network controller 300 recalculates the Qbv schedule in the TSN of the control system 1 with a setting that expands the cyclic communication band 80 (step S36).
  • network controller 300 reduces message communication band 82 based on the maximum usage rate of message communication band 82. It is determined whether or not there is (step S22). If message communication band 82 can be reduced (YES in step S22), network controller 300 reduces message communication band 82 and expands cyclic communication band 80 (step S24). Then, the network controller 300 recalculates the Qbv schedule in the TSN of the control system 1 with a setting that expands the cyclic communication band 80 (step S36).
  • the network controller 300 determines whether the network switch can be replaced (step S26). If the switch in the network can be replaced (YES in step S26), network controller 300 executes bandwidth allocation according to the switch after replacement (step S28). The network controller 300 recalculates the Qbv schedule in the TSN of the control system 1 with the bandwidth allocation setting according to the switch after replacement (step S36).
  • the network controller 300 proposes to the user to change the transmission cycle of cyclic communication (step S30). Note that the control cycle may also be changed by changing the transmission cycle of cyclic communication.
  • step S32 network controller 300 recalculates the Qbv schedule in the TSN of control system 1 with the setting after changing the transmission cycle of cyclic communication. (step S36). Then, the processing from step S40 is executed.
  • the network controller 300 notifies the user of the failure of the Qbv schedule (step S34).
  • the bandwidth allocated to cyclic communication can be increased by lengthening the control cycle and/or reducing the bandwidth other than the cyclic communication bandwidth 80.
  • the network controller 300 and/or the support device 400 can implement optimal bandwidth allocation and scheduling according to control requests and the like through interaction with the user via the following user interfaces. That is, network controller 300 and/or support device 400 has a user interface for accepting changes in settings when the calculated Qbv schedule does not meet requirements.
  • FIG. 16 is a schematic diagram showing an example of a user interface screen that proposes changing the transmission cycle of the network management band 84 in the control system 1 according to this embodiment.
  • User interface screen 450 shown in FIG. 16 is typically provided to the user in response to the processing in step S18 of FIG. That is, the user interface screen 450 notifies the user of conditions such as synchronization control and detection accuracy, and waits for permission from the user to lengthen the transmission cycle of frames including the network management band 84 .
  • a user interface screen 450 displays information on time synchronization accuracy 451 with a time stamp function, control synchronization accuracy 452, and topology change detection accuracy 453.
  • FIG. 16 a user interface screen 450 displays information on time synchronization accuracy 451 with a time stamp function, control synchronization accuracy 452, and topology change detection accuracy 453.
  • the current accuracy 454 and the expected accuracy 455 when the transmission cycle of the network management band 84 is changed are displayed as the time synchronization accuracy 451 with the timestamp function.
  • control synchronization accuracy 452 As the control synchronization accuracy 452, the current accuracy 456 and the expected accuracy 457 when the transmission cycle of the network management band 84 is changed are displayed.
  • the current accuracy 458 and the expected accuracy 459 when the transmission cycle of the network management band 84 is changed are displayed as the topology change detection accuracy 453 .
  • changing the settings for recalculating the Qbv schedule may include changing the transmission period of frames containing data necessary for managing TSNs.
  • FIG. 17 is a schematic diagram showing an example of a user interface screen for proposing a change of the message communication band 82 in the control system 1 according to the present embodiment.
  • User interface screen 460 shown in FIG. 17 is typically provided to the user in response to the processing in step S22 of FIG. That is, the user interface screen 460 notifies the user of the usage status of the message communication band 82 and waits for permission from the user to reduce the message communication band 82 .
  • user interface screen 460 includes usage rate table 461 indicating current bandwidth usage rate, allocation setting table 462 indicating current bandwidth allocation settings, and allocation setting table 462 indicating changed bandwidth allocation settings. 463.
  • allocation setting table 463 A change in bandwidth allocation is proposed (allocation setting table 463) based on the current bandwidth usage rate (utilization rate table 461) and the current bandwidth allocation setting (allocation setting table 462).
  • the current usage rate of the message communication band 82 and the range that can be reduced are presented to the user, and with the user's approval, the Qbv schedule corresponding to the reduced message communication band 82 is recalculated.
  • the setting change for recalculating the Qbv schedule includes reducing the message communication band 82 out of the cyclic communication band 80 and the message communication band 82 allocated in the frame in which the TSN is transferred, good.
  • FIG. 18 is a schematic diagram showing an example of a user interface screen for suggesting switch replacement in the control system 1 according to the present embodiment.
  • User interface screen 470 shown in FIG. 18 is typically provided to the user in response to the processing in step S26 of FIG. That is, the user interface screen 470 displays the section of the network in which the frame transfer is critical, and also suggests to the user to replace the switch to eliminate the critical section.
  • user interface screen 470 includes network status display 471 indicating the current network status and network status display 472 indicating the expected network status after switch replacement.
  • a network status display 472 displays a message 473 indicating which switch is to be replaced.
  • Such switch replacement proposals are searched by a search engine on the web based on the descriptors of the switch being used, and if there is a switch with higher function than the switch being used, the switch with the higher function is searched. is determined as a candidate for replacement.
  • the user refers to the user interface screen 470 and appropriately replaces the switches that make up the network. In this way, the user interface provided by the network controller 300 and/or the support device 400 notifies a proposal for replacement of the switches 200 that make up the TSN.
  • FIG. 19 is a schematic diagram showing an example of a user interface screen that proposes changing the transmission cycle of cyclic communication in the control system 1 according to the present embodiment.
  • User interface screen 480 shown in FIG. 19 is typically provided to the user in response to the processing in step S30 of FIG. That is, user interface screen 480 proposes to the user to change the transmission cycle of cyclic communication.
  • a user interface screen 480 includes a frame setting display 481 showing the state of the currently set frame and a frame setting display 482 showing the state of the proposed new frame.
  • a frame setting display 481 shown in FIG. 19 indicates that three frames 483, 484, and 485 are cyclically communicated.
  • frame setting display 482 shows that two frames 486 and 487 are cyclically communicated.
  • the data DS3 and data DS4 contained in the frame 484 and the data DS5 contained in the frame 485 are set to be sequentially arranged in the frame 487 .
  • the communication cycle of data DS3, DS4 and DS5 is three times longer than the current frame setting.
  • notification or proposal to the user as described above may be sent as an event message by any device using Pub/Sub communication of OPC UA.
  • the control system 1 presents changes to the control cycle, band allocation, communication cycle, etc. to the user via the user interface screen when adjustment is difficult due to insufficient bandwidth or the like.
  • the Qbv schedule and the like are recalculated based on the changed settings when the user approves. That is, changing the settings for recalculating the Qbv schedule may include changing the transmission cycle of data exchanged between multiple devices.
  • FIG. 20 is a schematic diagram showing another example of the method of calculating the control reference time and the Qbv schedule in the control system 1 according to the present embodiment.
  • processing such as proposing to the user is added to the calculation method shown in FIG.
  • network controller 300 first corrects the time for synchronization with devices (PLC 100, remote IO device 150, switch 200, etc.) connected to the TSN ((1) time correction ). Note that the time correction process may be performed by any time synchronization subject.
  • the network controller 300 acquires propagation delay times between each of the devices connected to the TSN and adjacent devices ((2) Acquisition of propagation delay times).
  • the network controller 300 calculates the control reference time and the Qbv schedule ((3) Control reference time calculation/Qbv schedule calculation). In the result of this calculation, if a situation such as insufficient bandwidth occurs, the network controller 300 searches for improvement proposal contents such as those shown in FIGS. ). The network controller 300 notifies the user of the content of the improvement proposal as necessary ((5) Notify user).
  • the network controller 300 When permission (approval) is obtained from the user ((6) permission), the network controller 300 recalculates the Qbv schedule ((7) Qbv schedule recalculation).
  • the network controller 300 transmits the control reference time setting and the Qbv schedule to the PLC 100 and the remote IO device 150 ((8-1) control reference time setting/Qbv schedule), and also transmits the Qbv schedule to the switch 200 (( 8-2) Qbv schedule).
  • the PLC 100 adjusts the timing at which the task scheduler periodically executes the control task according to the control reference time setting from the network controller 300 . At this time, the PLC 100 restarts the task scheduler ((9) task scheduler restart). PLC 100 also sets the Qbv schedule from network controller 300 to network interface 110 .
  • control reference time and Qbv schedule in the control system 1 are calculated and optimized by the above processing procedure.
  • FIG. 21 is a schematic diagram showing another example of the overall configuration of the control system 1 according to this embodiment.
  • each of PLCs 100-1 and 100-2 has a field bus 42.
  • FIG. One or more field devices 50 are connected to the fieldbus 42 .
  • As the fieldbus 42 for example, a synchronized network such as EtherCAT (registered trademark) is adopted.
  • both communication processing of the field bus 42 and communication processing of TSN must be referred to.
  • FIG. 22 is a diagram showing an example of a state in which the control reference times in the control system 1 shown in FIG. 21 match. 22, each of PLC 100-1 and PLC 100-2 performs processing including IO communication processing 61 related to fieldbus 42, IO communication processing 63 related to TSN, and program execution 64 for each control cycle. Execute repeatedly.
  • the task schedulers of the PLC 100-1 and PLC 100-2 can adjust the timing of periodically executing the control task. , the control reference time can be matched.
  • the Qbv schedule will be shifted by adjusting the timing of the periodic execution of the control task by the task scheduler. Even in such a case, recalculation of the Qbv schedule and the like are executed by the same procedure as described above.
  • FIG. 23 is a schematic diagram showing still another example of the method of calculating the control reference time and the Qbv schedule in the control system 1 according to the present embodiment.
  • processing for reflecting communication processing in the fieldbus 42 is added to the calculation method shown in FIG.
  • processing related to the remote IO devices 150-1 and 150-2 is excluded.
  • network controller 300 corrects the time for synchronization with devices (PLC 100, switch 200, etc.) connected to TSN ((1) time correction). Note that the time correction process may be performed by any time synchronization subject.
  • the network controller 300 acquires propagation delay times between each of the devices connected to the TSN and adjacent devices ((2) Acquisition of propagation delay times).
  • each of the PLCs 100 acquires the propagation delay time of the fieldbus 42 ((3) acquisition of the propagation delay time of the fieldbus 42). Then, the network controller 300 acquires the information of the fieldbus 42 from each of the PLCs 100 ((4) fieldbus information acquisition).
  • the acquired information of the fieldbus 42 includes, for example, the propagation delay time of the fieldbus 42, the topology of the fieldbus 42, frame information flowing through the fieldbus 42, and the like.
  • the network controller 300 calculates the control reference time and the Qbv schedule ((5) Control reference time calculation/Qbv schedule calculation). After that, the network controller 300 transmits the control reference time setting and the Qbv schedule to the PLC 100 ((6-1) control reference time setting/Qbv schedule), and also transmits the Qbv schedule to the switch 200 ((6-2) Qbv schedule). schedule).
  • the PLC 100 adjusts the timing at which the task scheduler periodically executes the control task according to the control reference time setting from the network controller 300 . At this time, the PLC 100 restarts the task scheduler ((7) task scheduler restart). PLC 100 also sets the Qbv schedule from network controller 300 to network interface 110 .
  • the PLC 100 resets the synchronization timing of the fieldbus 42 according to the control reference time setting from the network controller 300 ((8) fieldbus synchronization timing resetting).
  • the process of resetting the synchronization timing of the fieldbus 42 includes, for example, the process of setting the EtherCAT interrupt timing and EtherCAT time synchronization.
  • control reference time and Qbv schedule in the control system 1 are calculated and optimized by the above processing procedure.
  • TSN Time Sensitive Networking
  • Configuration 4 4. The configuration according to any one of configurations 1 to 3, further comprising a user interface (450, 460, 470, 480) for accepting a setting change when the traffic schedule calculated by the calculating means does not meet the requirements. Control system as described.
  • TSN Time Sensitive Networking
  • determining means (S2) for determining a control reference time for the plurality of devices such that processes executed by the plurality of devices are synchronized among the plurality of devices
  • calculating means (S6) for calculating a schedule of traffic in said network according to said control reference time
  • setting means (S42, S44) for setting the control reference time and the traffic schedule to the plurality of devices.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Programmable Controllers (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Abstract

This control system for controlling a control target comprises: a plurality of devices that each repetitively execute a processing in a predetermined control period; a network to which the plurality of devices are connected and that complies with TSN; a determination means that determines a control reference time for the plurality of devices such that the processings executed by the plurality of devices are synchronized among the plurality of devices; a calculation means that calculates a schedule of traffic in the network according to the control reference time; and a setting means that sets both the control reference time and the schedule of traffic to the plurality of devices.

Description

制御システム、設定方法およびネットワークコントローラControl system, setting method and network controller
 本技術は、TSN(Time Sensitive Networking)に従うネットワークを含む制御システム、設定方法およびネットワークコントローラに関する。 This technology relates to a control system, a setting method, and a network controller including a network conforming to TSN (Time Sensitive Networking).
 一般的な情報系ネットワークに採用されている標準的なネットワーク(例えば、イーサネット(登録商標))を産業分野のネットワークでも利用できるように拡張する取り組みが進行しつつある。より具体的には、イーサネット(登録商標)をベースにして、ネットワークが決定性のある挙動をするように改良されたIEEE(Institute of Electrical and Electronic Engineers) 802.1 TSN(以下、単に「TSN」とも称す。)が知られている。TSNによれば、例えば、イーサネット(登録商標)などの汎用的なハードウェアを用いて、リアルタイム通信をより容易に実現できる。 Efforts are underway to extend standard networks (eg Ethernet (registered trademark)) used in general information networks so that they can also be used in industrial networks. More specifically, based on Ethernet (registered trademark), IEEE (Institute of Electrical and Electronic Engineers) 802.1 TSN (hereinafter simply referred to as "TSN") has been improved so that the network behaves deterministically. ) are known. According to TSN, for example, real-time communication can be realized more easily using general-purpose hardware such as Ethernet (registered trademark).
 例えば、特許文献1(欧州特許第03357218号明細書)は、TSN規格に従うネットワークを利用した産業用ネットワークなどを開示する。 For example, Patent Document 1 (European Patent No. 03357218) discloses an industrial network using a network conforming to the TSN standard.
欧州特許第03357218号明細書EP 03357218
 より高い制御精度を実現するためには、制御対象からの信号を取り込むタイミング、および、制御対象へ信号を出力するタイミングを、制御システム全体で一致させることが好ましい。しかしながら、先行技術ではこのような点は何ら考慮されていない。  In order to achieve higher control accuracy, it is preferable to match the timing of receiving the signal from the controlled object and the timing of outputting the signal to the controlled object in the entire control system. However, the prior art does not consider such a point at all.
 本技術は、TSNに従うネットワークを含む制御システムにおいて制御精度を向上させるための仕組みを提供する。 This technology provides a mechanism for improving control accuracy in control systems that include networks that comply with TSN.
 本技術のある実施の形態に従えば、制御対象を制御するための制御システムが提供される。制御システムは、予め定められた制御周期で処理を繰返し実行する複数のデバイスと、複数のデバイスが接続されたTSNに従うネットワークと、複数のデバイスが実行する処理が複数のデバイスの間で同期するように、複数のデバイスに対する制御基準時を決定する決定手段と、制御基準時に従って、ネットワークにおけるトラフィックのスケジュールを計算する計算手段と、制御基準時およびトラフィックのスケジュールを複数のデバイスに設定する設定手段とを含む。 According to an embodiment of the present technology, a control system for controlling a controlled object is provided. The control system includes a plurality of devices that repeatedly execute processing at a predetermined control cycle, a network conforming to TSN to which the plurality of devices are connected, and a plurality of devices so that the processing executed by the plurality of devices is synchronized among the plurality of devices. determining means for determining a control reference time for the plurality of devices; computing means for calculating a schedule of traffic in the network according to the control reference time; and setting means for setting the control reference time and the traffic schedule for the plurality of devices. including.
 この構成によれば、複数のデバイスの間で制御基準値を共通化できるので、複数のデバイスに亘る制御が実行される場合においても、処理のタイミングを一致させることができるので、制御精度を高めることができる。併せて、決定された制御基準値に応じたトラフィックのスケジュールが計算されるので、TSNに従うネットワークにおける帯域の利用効率を高めることができる。 According to this configuration, since the control reference value can be shared among a plurality of devices, the timing of processing can be matched even when control over a plurality of devices is executed, so control accuracy is improved. be able to. At the same time, since a traffic schedule is calculated according to the determined control reference value, it is possible to improve the bandwidth utilization efficiency in a TSN-compliant network.
 設定手段は、トラフィックのスケジュールをネットワークを構成するスイッチに設定するようにしてもよい。この構成によれば、スイッチについても、決定された制御基準値に応じたトラフィックのスケジュールに従って、フレームを転送できる。 The setting means may set the traffic schedule in the switches that make up the network. According to this configuration, the switch can also transfer frames according to the traffic schedule according to the determined control reference value.
 制御システムは、複数のデバイスのうち隣接するデバイス間の伝搬遅延時間を取得する取得手段をさらに含んでいてもよい。計算手段は、伝搬遅延時間に基づいて、トラフィックのスケジュールを計算するようにしてもよい。この構成によれば、トラフィックのスケジュールをより適切に計算できる。 The control system may further include acquisition means for acquiring propagation delay times between adjacent devices among the plurality of devices. The calculating means may calculate the traffic schedule based on the propagation delay times. According to this configuration, the traffic schedule can be calculated more appropriately.
 制御システムは、計算手段による計算されたトラフィックのスケジュールが要求を満たさない場合に、設定の変更を受け付けるためのユーザインターフェイスをさらに含んでいてもよい。この構成によれば、ユーザは、トラフィックのスケジュールを適切に計算できるように、ユーザインターフェイスを介して設定を変更等できる。 The control system may further include a user interface for accepting changes in settings when the traffic schedule calculated by the calculation means does not meet the requirements. According to this configuration, the user can change settings etc. via the user interface so that the traffic schedule can be properly calculated.
 設定の変更は、ネットワークを管理するために必要なデータを含むフレームの送信周期を変更することを含んでいてもよい。この構成によれば、データ通信とは直接的には関係のないネットワークを管理するためにフレームを調整することで、トラフィックのスケジュールを適切に計算できる可能性を高めることができる。 Changing the settings may include changing the transmission cycle of frames containing data necessary for managing the network. According to this configuration, it is possible to improve the possibility that the traffic schedule can be properly calculated by adjusting the frame for managing the network which is not directly related to data communication.
 設定の変更は、ネットワークを転送されるフレームにおいて割り当てられるサイクリック通信帯域およびメッセージ通信帯域のうち、メッセージ通信帯域を小さくすることを含んでいてもよい。この構成によれば、サイクリック通信とは直接的には関係のないメッセージ通信帯域を調整することで、トラフィックのスケジュールを適切に計算できる可能性を高めることができる。 The setting change may include reducing the message communication band, out of the cyclic communication band and the message communication band allocated in the frame transferred through the network. According to this configuration, by adjusting the message communication bandwidth that is not directly related to cyclic communication, it is possible to increase the possibility of appropriately calculating the traffic schedule.
 設定の変更は、複数のデバイス間でやり取りされるデータの送信周期を変更することを含んでいてもよい。この構成によれば、要求させる制御精度などに応じて、データの送信周期を適宜変更することで、トラフィックのスケジュールを適切に計算できる可能性を高めることができる。 Changing settings may include changing the transmission cycle of data exchanged between multiple devices. According to this configuration, it is possible to increase the possibility of appropriately calculating the traffic schedule by appropriately changing the data transmission cycle according to the required control accuracy and the like.
 ユーザインターフェイスは、ネットワークを構成するスイッチの交換の提案を通知するようにしてもよい。この構成によれば、より性能の高いスイッチに交換することで、トラフィックのスケジュールを適切に計算できる可能性を高めることができる。 The user interface may notify a proposal to replace the switches that make up the network. According to this configuration, it is possible to increase the possibility of appropriately calculating the traffic schedule by replacing the switch with a switch with higher performance.
 本技術の別の実施の形態に従えば、予め定められた制御周期で処理を繰返し実行する複数のデバイスと、複数のデバイスが接続されたTSNに従うネットワークとを含む制御システムに対する設定方法が提供される。設定方法は、複数のデバイスが実行する処理が複数のデバイスの間で同期するように、複数のデバイスに対する制御基準時を決定するステップと、制御基準時に従って、ネットワークにおけるトラフィックのスケジュールを計算するステップと、制御基準時およびトラフィックのスケジュールを複数のデバイスに設定するステップとを含む。 According to another embodiment of the present technology, there is provided a setting method for a control system including a plurality of devices that repeatedly execute processing at a predetermined control cycle, and a TSN-compliant network to which the plurality of devices are connected. be. The configuration method includes determining a control reference time for a plurality of devices such that processing performed by the devices is synchronized among the plurality of devices, and calculating a schedule of traffic in the network according to the control reference time. and setting control reference times and traffic schedules to a plurality of devices.
 本技術のさらに別の実施の形態に従えば、予め定められた制御周期で処理を繰返し実行する複数のデバイスと、複数のデバイスが接続されたTSNに従うネットワークとを含む制御システムに接続されるネットワークコントローラが提供される。ネットワークコントローラは、複数のデバイスが実行する処理が複数のデバイスの間で同期するように、複数のデバイスに対する制御基準時を決定する決定手段と、制御基準時に従って、ネットワークにおけるトラフィックのスケジュールを計算する計算手段と、制御基準時およびトラフィックのスケジュールを複数のデバイスに設定する設定手段とを含む。 According to yet another embodiment of the present technology, a network connected to a control system including a plurality of devices that repeatedly execute processing at a predetermined control cycle and a network that follows TSN to which the plurality of devices are connected A controller is provided. A network controller calculates a schedule of traffic in the network according to the determining means for determining control reference times for the plurality of devices and the control reference times such that processing performed by the plurality of devices is synchronized among the plurality of devices. Calculation means and setting means for setting control reference times and traffic schedules for a plurality of devices.
 本技術によれば、TSNに従うネットワークを含む制御システムにおいて制御精度を向上させるための仕組みを提供できる。 According to this technology, it is possible to provide a mechanism for improving control accuracy in a control system that includes a network that conforms to TSN.
本実施の形態に係る制御システムの全体構成の一例を示す模式図である。1 is a schematic diagram showing an example of the overall configuration of a control system according to an embodiment; FIG. 本実施の形態に係る制御システムが採用する通信モデルの一例を示す図である。It is a figure which shows an example of the communication model which the control system which concerns on this Embodiment employ|adopts. 本実施の形態に係る制御システムを構成するPLCのハードウェア構成例を示すブロック図である。2 is a block diagram showing a hardware configuration example of a PLC that configures the control system according to the present embodiment; FIG. 本実施の形態に係る制御システムを構成するリモートIO装置のハードウェア構成例を示すブロック図である。2 is a block diagram showing an example hardware configuration of a remote IO device that configures the control system according to the present embodiment; FIG. 本実施の形態に係る制御システムを構成するスイッチのハードウェア構成例を示すブロック図である。3 is a block diagram showing an example hardware configuration of a switch that constitutes the control system according to the present embodiment; FIG. 本実施の形態に係る制御システムを構成するネットワークコントローラのハードウェア構成例を示すブロック図である。2 is a block diagram showing an example hardware configuration of a network controller that configures the control system according to the present embodiment; FIG. 本実施の形態に係る制御システムを構成するサポート装置のハードウェア構成例を示すブロック図である。FIG. 2 is a block diagram showing an example hardware configuration of a support device that configures the control system according to the present embodiment; FIG. 本実施の形態に係る制御システムを構成するスイッチの1つのポートに関するより詳細な構成を示す模式図である。FIG. 3 is a schematic diagram showing a more detailed configuration of one port of a switch that configures the control system according to the present embodiment; 本実施の形態に係る制御システムにおけるデータ通信の一例を示す模式図である。FIG. 3 is a schematic diagram showing an example of data communication in the control system according to the embodiment; 本実施の形態に係る制御システムにおける制御基準時が一致していない状態の一例を示す図である。FIG. 5 is a diagram showing an example of a state in which control reference times do not match in the control system according to the present embodiment; 本実施の形態に係る制御システムにおける制御基準時が一致している状態の一例を示す図である。FIG. 5 is a diagram showing an example of a state in which control reference times match in the control system according to the present embodiment; 図11に示す状態に対応するトラフィックのスケジューリング結果の一例を示す図である。FIG. 12 is a diagram showing an example of a traffic scheduling result corresponding to the state shown in FIG. 11; 本実施の形態に係る制御システムにおける制御基準時およびQbvスケジュールの計算方法の一例を示す模式図である。FIG. 4 is a schematic diagram showing an example of a method of calculating a control reference time and a Qbv schedule in the control system according to the present embodiment; 本実施の形態に係る制御システムにおける制御基準時およびQbvスケジュールの調整に係るフレームの変化例を示す模式図である。FIG. 5 is a schematic diagram showing an example of changes in frames related to adjustment of the control reference time and Qbv schedule in the control system according to the present embodiment; 本実施の形態に係る制御システムにおける制御基準時の共通化に係る処理手順を示すフローチャートである。FIG. 7 is a flow chart showing a processing procedure for sharing a control reference time in the control system according to the present embodiment; FIG. 本実施の形態に係る制御システムにおけるネットワーク管理帯域の送信周期の変更を提案するユーザインターフェイス画面の一例を示す模式図である。FIG. 5 is a schematic diagram showing an example of a user interface screen for proposing a change in the transmission cycle of the network management band in the control system according to the present embodiment; 本実施の形態に係る制御システムにおけるメッセージ通信帯域の変更を提案するユーザインターフェイス画面の一例を示す模式図である。FIG. 4 is a schematic diagram showing an example of a user interface screen for proposing a change of message communication band in the control system according to the present embodiment; 本実施の形態に係る制御システムにおけるスイッチの交換を提案するユーザインターフェイス画面の一例を示す模式図である。FIG. 5 is a schematic diagram showing an example of a user interface screen for suggesting replacement of a switch in the control system according to the present embodiment; 本実施の形態に係る制御システムにおけるサイクリック通信の送信周期の変更を提案するユーザインターフェイス画面の一例を示す模式図である。FIG. 5 is a schematic diagram showing an example of a user interface screen for proposing a change in the transmission cycle of cyclic communication in the control system according to the present embodiment; 本実施の形態に係る制御システムにおける制御基準時およびQbvスケジュールの計算方法の別の一例を示す模式図である。FIG. 5 is a schematic diagram showing another example of a method of calculating a control reference time and a Qbv schedule in the control system according to the present embodiment; 本実施の形態に係る制御システムの全体構成の別の一例を示す模式図である。FIG. 4 is a schematic diagram showing another example of the overall configuration of the control system according to the embodiment; 図21に示す制御システムにおける制御基準時が一致している状態の一例を示す図である。FIG. 22 is a diagram showing an example of a state in which control reference times match in the control system shown in FIG. 21; 本実施の形態に係る制御システムにおける制御基準時およびQbvスケジュールの計算方法のさらに別の一例を示す模式図である。FIG. 9 is a schematic diagram showing still another example of a method of calculating the control reference time and the Qbv schedule in the control system according to the present embodiment;
 本技術の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰返さない。 An embodiment of this technology will be described in detail with reference to the drawings. The same or corresponding parts in the drawings are denoted by the same reference numerals, and the description thereof will not be repeated.
 <A.適用例>
 まず、本実施の形態に係る制御システム1の全体構成の一例について説明する。
<A. Application example>
First, an example of the overall configuration of the control system 1 according to this embodiment will be described.
 図1は、本実施の形態に係る制御システム1の全体構成の一例を示す模式図である。図1を参照して、制御対象を制御するための制御システム1は、PLC(Programmable Logic Controller)100-1~100-4(「PLC100」と総称することもある。)と、リモートIO装置150-1,150-2(「リモートIO装置150」と総称することもある。)と、スイッチ200-1,200-2(「スイッチ200」と総称することもある。)と、ネットワークコントローラ300とを含む。ネットワークコントローラ300には、サポート装置400が接続されていてもよい。 FIG. 1 is a schematic diagram showing an example of the overall configuration of a control system 1 according to this embodiment. Referring to FIG. 1, a control system 1 for controlling a controlled object includes PLCs (Programmable Logic Controllers) 100-1 to 100-4 (also collectively referred to as "PLC 100"), remote IO devices 150 1, 150-2 (sometimes collectively referred to as "remote IO device 150"), switches 200-1, 200-2 (sometimes collectively referred to as "switch 200"), and network controller 300. including. A support device 400 may be connected to the network controller 300 .
 なお、「IO」あるいは「IOデータ」は、制御対象を制御するための制御演算で用いられる入力データおよび出力データを総称する用語である。 "IO" or "IO data" is a generic term for input data and output data used in control calculations for controlling a controlled object.
 より具体的には、PLC100-1は、リンク20を介して、スイッチ200-1と接続されている。PLC100-2は、リンク22を介して、スイッチ200-1と接続されている。また、スイッチ200-1には、リンク24を介して、リモートIO装置150-1が接続されている。リモートIO装置150-1とリモートIO装置150-2との間は、リンク26を介して接続されている。 More specifically, the PLC 100-1 is connected via the link 20 to the switch 200-1. PLC 100-2 is connected via link 22 to switch 200-1. A remote IO device 150-1 is connected to the switch 200-1 via the link 24. FIG. A link 26 connects between the remote IO device 150-1 and the remote IO device 150-2.
 また、PLC100-3は、リンク32を介して、スイッチ200-2と接続されている。PLC100-4は、リンク34を介して、スイッチ200-2と接続されている。また、スイッチ200-2には、リンク36を介して、リモートIO装置150-3が接続されている。リモートIO装置150-3とリモートIO装置150-4との間は、リンク38を介して接続されている。 Also, the PLC 100-3 is connected to the switch 200-2 via the link 32. PLC 100-4 is connected via link 34 to switch 200-2. A remote IO device 150-3 is connected to the switch 200-2 via the link 36. FIG. A link 38 connects between the remote IO device 150-3 and the remote IO device 150-4.
 スイッチ200-1とスイッチ200-2との間は、リンク28を介して接続されている。さらに、スイッチ200-1には、リンク40を介して、ネットワークコントローラ300が接続されている。 The switch 200-1 and the switch 200-2 are connected via the link 28. Furthermore, the network controller 300 is connected to the switch 200-1 via the link 40. FIG.
 リモートIO装置150-1~150-4の各々は、フィールドバス42を有している。フィールドバス42には、1または複数のフィールドデバイス50が接続される。1または複数のフィールドデバイス50は、フィールド信号を取得する入力デバイス、および、PLC100からの指示に従ってフィールドに対して何らかのアクションを行う出力デバイスあるいはアクチュエータを含む。 Each of the remote IO devices 150-1 to 150-4 has a field bus 42. One or more field devices 50 are connected to the fieldbus 42 . One or more field devices 50 include input devices that acquire field signals and output devices or actuators that perform some action on the field according to instructions from PLC 100 .
 制御システム1は、IEEE 802.1 TSNに従うネットワークを採用している。以下の説明においては、特段の断りがない限り、単に「TSN」との用語は、IEEE 802.1 TSNに従うネットワークを総称する。なお、IEEE 802.1 TSNは、主として、データリンク層を規定するものであり、ネットワーク層およびトランスポート層については、例えば、TCP/IPあるいはUDP/IPなどのプロトコルを用いることができる。後述するように、IEEE 802.1 TSN規格は、いくつかの下位規格を含む。 The control system 1 employs a network conforming to IEEE 802.1 TSN. In the following description, unless otherwise specified, the term "TSN" simply refers to networks conforming to IEEE 802.1 TSN. Note that IEEE 802.1 TSN mainly defines the data link layer, and protocols such as TCP/IP or UDP/IP can be used for the network layer and transport layer. As will be described later, the IEEE 802.1 TSN standard includes several sub-standards.
 図1に示す制御システム1においては、少なくとも、PLC100と、リモートIO装置150と、スイッチ200との間では、後述するようなIEEE 802.1 TSNに従うフレーム転送が実現される。すなわち、PLC100、リモートIO装置150およびスイッチ200が接続されるネットワークがTSNに相当する。リンク20,22,24,26およびリンク32,34,36,38がTSNの少なくとも一部を構成する。さらに、リンク28もTSNを構成してもよい。 In the control system 1 shown in FIG. 1, at least between the PLC 100, the remote IO device 150, and the switch 200, frame transfer conforming to IEEE 802.1 TSN as described later is realized. That is, the network to which PLC 100, remote IO device 150 and switch 200 are connected corresponds to TSN. Links 20, 22, 24, 26 and links 32, 34, 36, 38 form at least part of the TSN. Additionally, link 28 may also constitute a TSN.
 制御システム1を構成するPLC100、リモートIO装置150、スイッチ200、およびネットワークコントローラ300は、図示しない時間同期主体によって、互いに時間同期している。なお、時間同期については、IEEE 802.1 TSNの下位規格であるIEEE 802.1 AS-2020や、高精度時間プロトコル(PTP:Precision Time Protocol)であるIEEE 1588などに従って実現される。 The PLC 100, the remote IO device 150, the switch 200, and the network controller 300 that configure the control system 1 are time-synchronized with each other by a time synchronization entity (not shown). Time synchronization is realized according to IEEE 802.1 AS-2020, which is a lower standard of IEEE 802.1 TSN, and IEEE 1588, which is a precision time protocol (PTP).
 本明細書において、「デバイス」との用語は、IEEE 802.1 TSNに従うネットワークに接続される任意のデバイスを包含する。図1に示す制御システム1において、「デバイス」は、PLC100およびリモートIO装置150を含み得る。 As used herein, the term "device" includes any device connected to a network conforming to IEEE 802.1 TSN. In the control system 1 shown in FIG. 1 , “devices” can include the PLC 100 and the remote IO device 150 .
 本明細書において、「トラフィックのスケジュール」は、IEEE 802.1 Qbvに従うスケジューリングを実現するための定義を意味し、以下では「Qbvスケジュール」とも称す。「Qbvスケジュール」を計算によって決定する処理を「スケジューリング」とも称す。 In this specification, "traffic schedule" means a definition for realizing scheduling according to IEEE 802.1 Qbv, and is also referred to as "Qbv schedule" below. The process of determining the "Qbv schedule" by calculation is also called "scheduling".
 ネットワークコントローラ300は、TSNにおけるフレーム転送を管理する主体であり、リソース割り当ておよび可用性を計算することで、トラフィック(ストリーム)をスケジューリングする。典型的には、ネットワークコントローラ300は、IEEE 802.1 TSNの下位規格であるIEEE 802.1 Qccの規定に従って、トラフィックがスケジューリングされる。 The network controller 300 is the entity that manages frame transfer in the TSN, and schedules traffic (streams) by calculating resource allocation and availability. Typically, the network controller 300 schedules traffic according to IEEE 802.1 Qcc, which is a substandard of IEEE 802.1 TSN.
 図2は、本実施の形態に係る制御システム1が採用する通信モデルの一例を示す図である。図2には、OSI階層モデルに従って、制御システム1が採用する通信モデルを示す。 FIG. 2 is a diagram showing an example of a communication model adopted by the control system 1 according to this embodiment. FIG. 2 shows a communication model adopted by the control system 1 according to the OSI hierarchical model.
 図2を参照して、制御システム1は、任意の物理層の上に、IEEE 802.1 TSNに従って拡張されたイーサネット(登録商標)がデータリンク層として実装される。さらに、ネットワーク層としてIPプロトコル、および、トランスポート層としてTCPプロトコルあるいはUDPプロトコルが実装される。さらに、セッション層、プレゼンテーション層、アプリケーション層として、OPC UAが採用される。OPC UAは、情報モデルおよび通信モデルなどの複数階層から構成される。 Referring to FIG. 2, in the control system 1, Ethernet (registered trademark) extended according to IEEE 802.1 TSN is implemented as a data link layer on any physical layer. Furthermore, the IP protocol is implemented as the network layer and the TCP or UDP protocol as the transport layer. Furthermore, OPC UA is adopted as the session layer, presentation layer, and application layer. OPC UA consists of multiple layers such as an information model and a communication model.
 なお、スイッチ200には、OPC UAを実装する必要はなく、OPC UAは、主として、PLC100およびリモートIO装置150に実装される。そのため、TSNに接続されるデバイスの少なくとも一部は、OPC UAに従う通信プロトコルでデータ通信を行うように構成される。 Note that the switch 200 does not need to implement OPC UA, and the OPC UA is mainly implemented in the PLC 100 and remote IO device 150. Therefore, at least some of the devices connected to the TSN are configured to perform data communication using a communication protocol conforming to OPC UA.
 再度図1を参照して、本実施の形態に係る制御システム1においては、2つの制御グループを含む。制御グループ2は、PLC100-1,100-2およびリモートIO装置150-1,150-2を含む。制御グループ4は、PLC100-3,100-4およびリモートIO装置150-3,150-4を含む。制御グループ2および制御グループ4の各々においては、制御基準時がデバイス間で一致するように設定されている。  Referring to FIG. 1 again, the control system 1 according to the present embodiment includes two control groups. Control group 2 includes PLCs 100-1, 100-2 and remote IO devices 150-1, 150-2. Control group 4 includes PLCs 100-3, 100-4 and remote IO devices 150-3, 150-4. In each of control group 2 and control group 4, the control reference time is set to match between devices.
 ここで、「制御基準時」は、周期的に実行される制御演算が参照するIOデータの更新タイミングを意味する。より具体的には、「制御基準時」は、フィールド信号を取得するタイミングおよびフィールド信号を出力するタイミングを含む。PLC100およびリモートIO装置150の間で制御基準時を一致することで、フィールド信号が取得されるタイミングを複数のデバイス間で一致させることができるとともに、フィールド信号が制御対象に出力されるタイミングを複数のデバイス間で一致させることができる。このような制御基準時を同一にすることで、制御精度を高めることができる。 Here, the "control reference time" means the update timing of the IO data referred to by the periodically executed control calculation. More specifically, the “control reference time” includes the timing of acquiring the field signal and the timing of outputting the field signal. By matching the control reference time between the PLC 100 and the remote IO device 150, the timing at which the field signal is acquired can be matched between a plurality of devices, and the timing at which the field signal is output to the control target can be set at a plurality of timings. devices. By making the control reference times the same, the control accuracy can be improved.
 本実施の形態においては、制御グループにおいて制御基準時をデバイス間で一致させるための仕組みを提供する。 This embodiment provides a mechanism for matching the control reference time between devices in the control group.
 <B.ハードウェア構成例>
 次に、制御システム1に含まれる各装置のハードウェア構成の一例について説明する。
<B. Hardware configuration example>
Next, an example of the hardware configuration of each device included in the control system 1 will be described.
 (b1:PLC100)
 図3は、本実施の形態に係る制御システム1を構成するPLC100のハードウェア構成例を示すブロック図である。図3を参照して、PLC100は、プロセッサ102と、主メモリ104と、ネットワークインターフェイス110と、ストレージ120と、内部バスインターフェイス130と、フィールドバスインターフェイス132と、メモリカードインターフェイス134とを含む。各コンポーネントは、バス138を介して電気的に接続されている。
(b1: PLC100)
FIG. 3 is a block diagram showing a hardware configuration example of the PLC 100 configuring the control system 1 according to this embodiment. Referring to FIG. 3, PLC 100 includes processor 102 , main memory 104 , network interface 110 , storage 120 , internal bus interface 130 , fieldbus interface 132 and memory card interface 134 . Each component is electrically connected via bus 138 .
 プロセッサ102は、CPU(Central Processing Unit)、MPU(Micro-Processing Unit)、GPU(Graphical Processing Unit)などで構成され、ストレージ120に格納された各種プログラムを読み出して、主メモリ104に展開して実行することで、PLCとしての処理を実現する。 The processor 102 is composed of a CPU (Central Processing Unit), MPU (Micro-Processing Unit), GPU (Graphical Processing Unit), etc., reads various programs stored in the storage 120, expands them in the main memory 104, and executes them. By doing so, processing as a PLC is realized.
 ネットワークインターフェイス110は、TSNを介したフレーム転送を担当する。より具体的には、ネットワークインターフェイス110は、送受信制御回路112と、送信回路114と、受信回路116とを含む。送受信制御回路112は、ネットワークコントローラ300から予め与えられたQbvスケジュールに従って、送信回路114および受信回路116を制御する。送信回路114は、送受信制御回路112からの指示に従って、TSN上にフレームを送出する。受信回路116は、TSNを介して入来したフレームを受信する。 The network interface 110 is responsible for frame transfer via TSN. More specifically, network interface 110 includes transmission/reception control circuitry 112 , transmission circuitry 114 , and reception circuitry 116 . The transmission/reception control circuit 112 controls the transmission circuit 114 and the reception circuit 116 according to the Qbv schedule given in advance from the network controller 300 . The transmission circuit 114 transmits frames on the TSN according to instructions from the transmission/reception control circuit 112 . Receive circuit 116 receives incoming frames via TSN.
 ストレージ120には、典型的には、PLCとしての機能を実現するためのシステムプログラム122と、PLCが実行する制御ロジックを規定したユーザプログラム124とが格納される。 The storage 120 typically stores a system program 122 for realizing the functions of the PLC and a user program 124 that defines control logic to be executed by the PLC.
 内部バスインターフェイス130は、PLC100に搭載されるI/Oユニット140との間でデータをやり取りする。 The internal bus interface 130 exchanges data with the I/O unit 140 mounted on the PLC 100.
 フィールドバスインターフェイス132は、フィールドバスを介したフィールドデバイスとの間でデータをやり取りする。 The fieldbus interface 132 exchanges data with field devices via the fieldbus.
 メモリカードインターフェイス134は、メモリカード136を着脱可能に構成されており、メモリカード136に対してデータを書込み、メモリカード136から各種データ(ユーザプログラムやトレースデータなど)を読出すことが可能になっている。 The memory card interface 134 is configured such that a memory card 136 can be attached/detached, and data can be written to the memory card 136, and various data (user program, trace data, etc.) can be read from the memory card 136. ing.
 図3には、プロセッサ102がプログラムを実行することで必要な機能が提供される構成例を示したが、これらの提供される機能の一部または全部を、専用のハードワイヤード回路(例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field-Programmable Gate Array)など)を用いて実装してもよい。あるいは、PLC100の主要部を、汎用的なアーキテクチャに従うハードウェア(例えば、汎用パソコンをベースとした産業用パソコン)を用いて実現してもよい。このように、PLC100で実行される処理および提供する機能は、プロセッサ、ASIC、FPGAなどを含む処理回路(processing circuitry)で実現してもよい。 FIG. 3 shows a configuration example in which necessary functions are provided by the processor 102 executing a program. (Application Specific Integrated Circuit) or FPGA (Field-Programmable Gate Array), etc.). Alternatively, the main part of the PLC 100 may be realized using hardware conforming to a general-purpose architecture (for example, an industrial personal computer based on a general-purpose personal computer). As such, the processing performed and functions provided by PLC 100 may be implemented in processing circuitry including processors, ASICs, FPGAs, and the like.
 (b2:リモートIO装置150)
 図4は、本実施の形態に係る制御システム1を構成するリモートIO装置150のハードウェア構成例を示すブロック図である。リモートIO装置150は、スイッチ200と同様に、予め与えられたQbvスケジュールに従って、フレームを転送する機能を有している。
(b2: remote IO device 150)
FIG. 4 is a block diagram showing a hardware configuration example of the remote IO device 150 that configures the control system 1 according to this embodiment. The remote IO device 150, like the switch 200, has a function of transferring frames according to a given Qbv schedule.
 図4を参照して、リモートIO装置150は、プロセッサ152と、主メモリ154と、ネットワークインターフェイス160と、ストレージ170と、内部バスインターフェイス180と、フィールドバスインターフェイス182とを含む。各コンポーネントは、バス188を介して電気的に接続されている。 4, remote IO device 150 includes processor 152 , main memory 154 , network interface 160 , storage 170 , internal bus interface 180 and fieldbus interface 182 . Each component is electrically connected via bus 188 .
 プロセッサ152は、CPU、MPU、GPUなどで構成され、ストレージ170に格納された各種プログラムを読み出して、主メモリ154に展開して実行することで、リモートIO装置としての処理を実現する。 The processor 152 is composed of a CPU, MPU, GPU, etc., and reads various programs stored in the storage 170, develops them in the main memory 154, and executes them, thereby realizing processing as a remote IO device.
 ネットワークインターフェイス160は、TSNを介したフレーム転送を担当する。より具体的には、ネットワークインターフェイス160は、2つのポートを有しており、送受信制御回路162と、送信回路164-1,164-2と、受信回路166-1,166-2とを含む。送受信制御回路162は、ネットワークコントローラ300から予め与えられたQbvスケジュールに従って、送信回路164-1,164-2および受信回路166-1,164-2を制御する。すなわち、リモートIO装置150は、スイッチ200に相当する機能を有している。 The network interface 160 is in charge of frame transfer via TSN. More specifically, network interface 160 has two ports and includes transmission/reception control circuit 162, transmission circuits 164-1 and 164-2, and reception circuits 166-1 and 166-2. Transmission/reception control circuit 162 controls transmission circuits 164-1, 164-2 and reception circuits 166-1, 164-2 according to a Qbv schedule given in advance by network controller 300. FIG. That is, the remote IO device 150 has functions corresponding to the switch 200 .
 ストレージ170には、典型的には、リモートIO装置としての機能を実現するためのシステムプログラム172と、リモートIO装置が実行する制御処理を実現するためのアプリケーションプログラム174とが格納される。 The storage 170 typically stores a system program 172 for realizing functions as a remote IO device and an application program 174 for realizing control processing executed by the remote IO device.
 内部バスインターフェイス180は、PLC100に搭載されるI/Oユニット190との間でデータをやり取りする。 The internal bus interface 180 exchanges data with the I/O unit 190 mounted on the PLC 100.
 フィールドバスインターフェイス182は、フィールドバス42を介したフィールドデバイスとの間でデータをやり取りする。 The fieldbus interface 182 exchanges data with field devices via the fieldbus 42 .
 図4には、プロセッサ152がプログラムを実行することで必要な機能が提供される構成例を示したが、これらの提供される機能の一部または全部を、専用のハードワイヤード回路(例えば、ASICやFPGAなど)を用いて実装してもよい。あるいは、PLC100の主要部を、汎用的なアーキテクチャに従うハードウェア(例えば、汎用パソコンをベースとした産業用パソコン)を用いて実現してもよい。このように、リモートIO装置150で実行される処理および提供する機能は、プロセッサ、ASIC、FPGAなどを含む処理回路で実現してもよい。 FIG. 4 shows a configuration example in which necessary functions are provided by the processor 152 executing a program. , FPGA, etc.). Alternatively, the main part of the PLC 100 may be realized using hardware conforming to a general-purpose architecture (for example, an industrial personal computer based on a general-purpose personal computer). As such, the processing performed and functions provided by the remote IO device 150 may be implemented in processing circuitry including processors, ASICs, FPGAs, and the like.
 (b3:スイッチ200)
 図5は、本実施の形態に係る制御システム1を構成するスイッチ200のハードウェア構成例を示すブロック図である。図5を参照して、スイッチ200は、送受信制御回路212と、送信回路214-1,214-2,214-3,214-4(以下、「送信回路214」と総称することもある。)と、受信回路216-1,216-2,216-3,216-4(以下、「受信回路216」と総称することもある。)とを含む。送信回路214と受信回路216との組で1つのポートを形成する。なお、図5には、4つのポートを有するスイッチ200を例示するが、ポート数については、特に制限はない。
(b3: switch 200)
FIG. 5 is a block diagram showing a hardware configuration example of the switch 200 that configures the control system 1 according to this embodiment. 5, switch 200 includes transmission/reception control circuit 212 and transmission circuits 214-1, 214-2, 214-3, and 214-4 (hereinafter also collectively referred to as "transmission circuit 214"). , and receiving circuits 216-1, 216-2, 216-3, and 216-4 (hereinafter also collectively referred to as “receiving circuits 216”). A set of the transmission circuit 214 and the reception circuit 216 forms one port. Note that FIG. 5 illustrates the switch 200 having four ports, but the number of ports is not particularly limited.
 送受信制御回路212は、ネットワークコントローラ300から予め与えられたQbvスケジュールに従って、送信回路114および受信回路116を制御する。より具体的には、送受信制御回路212は、転送エンジン218と、キュー220とを含む。 The transmission/reception control circuit 212 controls the transmission circuit 114 and the reception circuit 116 according to the Qbv schedule given in advance from the network controller 300 . More specifically, the transmit/receive control circuit 212 includes a transfer engine 218 and a queue 220 .
 送受信制御回路212は、プロセッサがファームウェアを実行することで実現してもよいし、ASICやFPGAなどのハードワイヤード回路を用いて実現してもよい。また、送受信制御回路212だけではなく、送信回路114および受信回路116を含む全体を単一のチップで実現してもよい。このように、スイッチ200で実行される処理および提供する機能は、プロセッサ、ASIC、FPGAなどを含む処理回路で実現してもよい。 The transmission/reception control circuit 212 may be implemented by a processor executing firmware, or may be implemented using a hardwired circuit such as an ASIC or FPGA. Also, not only the transmission/reception control circuit 212 but also the entirety including the transmission circuit 114 and the reception circuit 116 may be implemented in a single chip. As such, the processing performed and functions provided by switch 200 may be implemented in processing circuitry including processors, ASICs, FPGAs, and the like.
 (b4:ネットワークコントローラ300)
 図6は、本実施の形態に係る制御システム1を構成するネットワークコントローラ300のハードウェア構成例を示すブロック図である。図6を参照して、ネットワークコントローラ300は、プロセッサ302と、主メモリ304と、ネットワークインターフェイス310と、ストレージ320とを含む。各コンポーネントは、バス338を介して電気的に接続されている。
(b4: network controller 300)
FIG. 6 is a block diagram showing a hardware configuration example of the network controller 300 that configures the control system 1 according to this embodiment. Referring to FIG. 6, network controller 300 includes processor 302 , main memory 304 , network interface 310 and storage 320 . Each component is electrically connected via bus 338 .
 プロセッサ302は、CPU、MPU、GPUなどで構成され、ストレージ320に格納された各種プログラムを読み出して、主メモリ304に展開して実行することで、制御装置としての処理を実現する。 The processor 302 is composed of a CPU, MPU, GPU, etc., and reads various programs stored in the storage 320, develops them in the main memory 304, and executes them, thereby realizing processing as a control device.
 ネットワークインターフェイス310は、TSNを介したフレーム転送を担当する。より具体的には、ネットワークインターフェイス310は、送受信制御回路312と、送信回路314と、受信回路316とを含む。 The network interface 310 is responsible for frame transfer via TSN. More specifically, network interface 310 includes transmit/receive control circuitry 312 , transmit circuitry 314 , and receive circuitry 316 .
 ストレージ320には、典型的には、基本的な処理を実現するためのOS322と、後述するような処理を実現するためのネットワーク設定プログラム324とが格納される。 The storage 320 typically stores an OS 322 for implementing basic processing and a network setting program 324 for implementing processing as described later.
 図6には、プロセッサ302がプログラムを実行することで必要な機能が提供される構成例を示したが、これらの提供される機能の一部または全部を、専用のハードワイヤード回路(例えば、ASICやFPGAを用いて実装してもよい。このように、ネットワークコントローラ300で実行される処理および提供する機能は、プロセッサ、ASIC、FPGAなどを含む処理回路で実現してもよい。 FIG. 6 shows a configuration example in which necessary functions are provided by the processor 302 executing a program. In this way, the processing performed and the functions provided by the network controller 300 may be implemented by processing circuits including processors, ASICs, FPGAs, and the like.
 (b5:サポート装置400)
 図7は、本実施の形態に係る制御システム1を構成するサポート装置400のハードウェア構成例を示すブロック図である。図7を参照して、サポート装置400は、プロセッサ402と、主メモリ404と、光学ドライブ406と、二次記憶装置408と、USBコントローラ412と、ネットワークインターフェイス414と、入力部416と、表示部418と、ストレージ420とを含む。これらのコンポーネントはバス438を介して接続される。
(b5: support device 400)
FIG. 7 is a block diagram showing a hardware configuration example of the support device 400 that configures the control system 1 according to this embodiment. 7, support device 400 includes processor 402, main memory 404, optical drive 406, secondary storage device 408, USB controller 412, network interface 414, input unit 416, display unit 418 and storage 420 . These components are connected via bus 438 .
 プロセッサ402は、CPU、MPU、GPUなどで構成され、ストレージ420に格納された各種プログラムを読み出して、主メモリ404に展開して実行することで、サポート装置としての処理を実現する。 The processor 402 is composed of a CPU, MPU, GPU, etc., and reads various programs stored in the storage 420, develops them in the main memory 404, and executes them, thereby realizing processing as a support device.
 ストレージ420には、典型的には、基本的な処理を実現するためのOS422と、後述するような処理を実現するためのネットワーク設定プログラム424とが格納される。 The storage 420 typically stores an OS 422 for implementing basic processing and a network setting program 424 for implementing processing as described later.
 サポート装置400は、光学ドライブ406を有しており、コンピュータ読取可能なプログラムを非一過的に格納する記録媒体407(例えば、DVD(Digital Versatile Disc)などの光学記録媒体)から、その中に格納されたプログラムが読取られてストレージ420などにインストールされる。 The support device 400 has an optical drive 406, and from a recording medium 407 (for example, an optical recording medium such as a DVD (Digital Versatile Disc)) that stores a computer-readable program non-transitory, The stored program is read and installed in the storage 420 or the like.
 サポート装置400で実行される各種プログラムは、コンピュータ読取可能な記録媒体407を介してインストールされてもよいが、ネットワーク上のサーバ装置などからダウンロードする形でインストールするようにしてもよい。また、本実施の形態に係るサポート装置400が提供する機能は、OS422が提供するモジュールの一部を利用する形で実現される場合もある。 Various programs executed by the support device 400 may be installed via the computer-readable recording medium 407, or may be installed by downloading from a server device on the network. Also, the functions provided by the support device 400 according to this embodiment may be realized by using some of the modules provided by the OS 422 .
 USBコントローラ412は、USB接続を介してネットワークコントローラ300との間のデータの遣り取りを制御する。ネットワークインターフェイス414は、任意のネットワークを介した他の装置との間のデータの遣り取りを制御する。 The USB controller 412 controls data exchange with the network controller 300 via a USB connection. Network interface 414 controls the exchange of data with other devices over any network.
 入力部416は、キーボードやマウスなどで構成され、ユーザ操作を受け付ける。表示部418は、ディスプレイ、各種インジケータ、プリンタなどで構成され、プロセッサ402からの処理結果などを出力する。 The input unit 416 is composed of a keyboard, mouse, etc., and receives user operations. A display unit 418 includes a display, various indicators, a printer, and the like, and outputs processing results from the processor 402 and the like.
 図7には、プロセッサ402がプログラムを実行することで必要な機能が提供される構成例を示したが、これらの提供される機能の一部または全部を、専用のハードワイヤード回路(例えば、ASICやFPGAを用いて実装してもよい。このように、サポート装置400で実行される処理および提供する機能は、プロセッサ、ASIC、FPGAなどを含む処理回路で実現してもよい。 FIG. 7 shows a configuration example in which necessary functions are provided by the processor 402 executing a program. In this way, the processing performed and the functions provided by the support device 400 may be implemented by processing circuits including processors, ASICs, FPGAs, and the like.
 <C.TSN規格に従うトラフィックのスケジューリングの実現>
 TSNにおいては、IEEE 802.1 Qccに従って、データパス毎にストリームIDが割り当てられ(ストリームが予約され)、IEEE 802.1 Qbvに従って、トラフィックがスケジューリングされる。Qbvスケジュールに従ってトラフィックを制御するために、以下に示すようなキューおよびゲートの構成が採用される。
<C. Realization of traffic scheduling according to the TSN standard>
In TSN, a stream ID is assigned (a stream is reserved) for each data path according to IEEE 802.1 Qcc, and traffic is scheduled according to IEEE 802.1 Qbv. In order to control traffic according to the Qbv schedule, a queue and gate configuration as shown below is employed.
 図8は、本実施の形態に係る制御システム1を構成するスイッチ200の1つのポートに関するより詳細な構成を示す模式図である。図8を参照して、各ポートは、送信回路214と受信回路216との組からなる。送信回路214と受信回路216との間には、転送エンジン218およびキュー220が設けられる。 FIG. 8 is a schematic diagram showing a more detailed configuration of one port of switch 200 that configures control system 1 according to the present embodiment. With reference to FIG. 8, each port consists of a set of a transmitter circuit 214 and a receiver circuit 216 . Transfer engine 218 and queue 220 are provided between transmit circuit 214 and receive circuit 216 .
 より具体的には、転送エンジン218は、振分回路224と、タイミング制御回路226とを含む。また、キュー220は、トラフィッククラスの各値に対応付けられた複数のキュー220-1~220-Mを含む。 More specifically, the transfer engine 218 includes a distribution circuit 224 and a timing control circuit 226. Queue 220 also includes a plurality of queues 220-1 to 220-M associated with each traffic class value.
 振分回路224は、受信回路216を介して受信したフレームのヘッダ情報などに従って、当該フレームをキュー220-1~220-Mのうちいずれかに格納し、あるいは、別のポートの振分回路224へ転送する。また、振分回路224は、別のポートの振分回路224から受信したフレームについても同様の判断および処理を行う。 Distribution circuit 224 stores the frame in one of queues 220-1 to 220-M according to the header information of the frame received via reception circuit 216, or distributes the frame to distribution circuit 224 of another port. transfer to Also, the sorting circuit 224 performs similar determination and processing for frames received from the sorting circuit 224 of another port.
 振分回路224は、自ポートの送信回路214から送出すべきフレームを受信すると、当該フレームを当該フレームのトラフィッククラスに対応するキュー220へ格納する。このような振分回路224での処理によって、キュー220-1~220-Mには、トラフィッククラス別に分類されたフレームが順次格納されることになる。例えば、トラフィッククラスが8である場合には、8個のキュー220が設けられる。 When the distribution circuit 224 receives a frame to be sent from the transmission circuit 214 of its own port, it stores the frame in the queue 220 corresponding to the traffic class of the frame. By such processing in the distribution circuit 224, the queues 220-1 to 220-M sequentially store frames classified by traffic class. For example, if the traffic class is 8, then 8 queues 220 are provided.
 キュー220-1~220-Mの出力側には、ゲート222-1~222-Mがそれぞれ設けられている。ゲート222-1~222-M(以下、「ゲート222」と総称することもある。)の各々は、タイミング制御回路226からの指令に従って開閉する。ゲート222が開くと、対応付けられているキュー220に格納されているフレームが送信回路214から送出される。タイミング制御回路226から複数のゲート222に対して同時に開指令が与えられることはない。すなわち、タイミング制御回路226は、Qbvスケジュール228に従って、ゲート222を順次開閉する。これによって、トラフィックを制御できる。 Gates 222-1 to 222-M are provided on the output sides of the queues 220-1 to 220-M, respectively. Each of gates 222 - 1 to 222 -M (hereinafter collectively referred to as “gates 222 ”) opens and closes according to instructions from timing control circuit 226 . When the gate 222 is opened, the frame stored in the associated queue 220 is sent from the transmission circuit 214 . Timing control circuit 226 does not give open commands to a plurality of gates 222 at the same time. That is, the timing control circuit 226 sequentially opens and closes the gate 222 according to the Qbv schedule 228 . This allows you to control traffic.
 なお、PLC100のポート(ネットワークインターフェイス110)、リモートIO装置150のポート(ネットワークインターフェイス160)、および、ネットワークコントローラ300のポート(ネットワークインターフェイス310)についても、図8と同様の構成を有している。 The port of PLC 100 (network interface 110), the port of remote IO device 150 (network interface 160), and the port of network controller 300 (network interface 310) also have the same configuration as in FIG.
 このように、PLC100およびスイッチ200の各々は、IEEE 802.1 Qbvに従って、トラフィッククラス(優先度)に応じて設けられたキュー220のゲート222を予め計算されたタイミングで開閉する。これによって、各フレームについて要求される到達時間(Deadline,Latencyなど)を保証できる。 In this way, each of the PLC 100 and the switch 200 opens and closes the gate 222 of the queue 220 provided according to the traffic class (priority) according to IEEE 802.1 Qbv at pre-calculated timing. This makes it possible to guarantee the required arrival time (Deadline, Latency, etc.) for each frame.
 <D.制御基準時の共通化に係る処理>
 次に、本実施の形態に係る制御システム1が提供する制御基準時の共通化に係る処理について説明する。
<D. Processing Related to Commonization of Control Reference Time>
Next, a description will be given of processing related to common control reference times provided by the control system 1 according to the present embodiment.
 (d1:制御基準時およびトラフィックのスケジューリング)
 図9は、本実施の形態に係る制御システム1におけるデータ通信の一例を示す模式図である。図9を参照して、PLC100-1とリモートIO装置150-1との間で、PLC100-1の制御演算に必要なデータを周期的にやり取り(データ通信)するとともに、PLC100-2とリモートIO装置150-2との間で、PLC100-2の制御演算に必要なデータを周期的にやり取り(データ通信)する。
(d1: control reference time and traffic scheduling)
FIG. 9 is a schematic diagram showing an example of data communication in the control system 1 according to this embodiment. Referring to FIG. 9, between PLC 100-1 and remote IO device 150-1, data necessary for control calculation of PLC 100-1 is periodically exchanged (data communication), and PLC 100-2 and remote IO device 150-1 It periodically exchanges data (data communication) with the device 150-2 necessary for the control calculation of the PLC 100-2.
 このとき、PLC100-1,100-2およびリモートIO装置150-1,150-2の制御基準時を一致させるために、各区間の伝搬遅延時間やデータの送信時間などに基づいて、制御基準時を決定するとともに、トラフィックのスケジューリングが行われる。 At this time, in order to match the control reference times of the PLCs 100-1 and 100-2 and the remote IO devices 150-1 and 150-2, the control reference time is determined and traffic scheduling is performed.
 図10は、本実施の形態に係る制御システム1における制御基準時が一致していない状態の一例を示す図である。図10(A)を参照して、PLC100-1は、IO通信処理62と、プログラム実行64とを含む処理を制御周期毎に繰返し実行する。リモートIO装置150-1およびリモートIO装置150-2の各々は、IO通信処理66と、制御処理68とを含む処理を制御周期毎に繰返し実行する。このように、TSNに接続されたデバイスであるPLC100およびリモートIO装置150の各々は、予め定められた制御周期で処理を繰返し実行する。 FIG. 10 is a diagram showing an example of a state in which the control reference times in the control system 1 according to the present embodiment do not match. Referring to FIG. 10A, PLC 100-1 repeatedly executes processing including IO communication processing 62 and program execution 64 in each control cycle. Each of remote IO device 150-1 and remote IO device 150-2 repeatedly executes processing including IO communication processing 66 and control processing 68 in each control cycle. In this way, each of the PLC 100 and the remote IO device 150, which are devices connected to the TSN, repeatedly executes processing at a predetermined control cycle.
 IO通信処理62およびIO通信処理66において、周期的なIOデータのやり取りを含むデータ通信に係る処理が実行される。各デバイスの制御基準時は、IO通信処理中に存在することになる。 In IO communication processing 62 and IO communication processing 66, processing related to data communication including periodic exchange of IO data is executed. The control reference time of each device will exist during the IO communication process.
 図10(A)に示すIO通信処理66の実行タイミングに対応して、リモートIO装置150-1から送信されるフレーム67と、リモートIO装置150-2から送信されるフレーム69とは、図10(B)に示すようなタイミングで送信および転送される。 A frame 67 transmitted from the remote IO device 150-1 and a frame 69 transmitted from the remote IO device 150-2 corresponding to the execution timing of the IO communication process 66 shown in FIG. It is transmitted and transferred at the timing shown in (B).
 フレーム67およびフレーム69の送信および転送のタイミングに対応して、スイッチ200-1のゲート開期間74、リモートIO装置150-1のゲート開期間76、および、リモートIO装置150-2のゲート開期間78がそれぞれ設定される。 Gate open period 74 of switch 200-1, gate open period 76 of remote IO device 150-1, and gate open period of remote IO device 150-2 correspond to the timing of transmission and transfer of frame 67 and frame 69. 78 are set respectively.
 図10(A)に示すように、PLC100-1の制御基準時71と、リモートIO装置150-1の制御基準時72と、リモートIO装置150-2の制御基準時73とが一致していない場合を想定する。 As shown in FIG. 10A, the control reference time 71 of the PLC 100-1, the control reference time 72 of the remote IO device 150-1, and the control reference time 73 of the remote IO device 150-2 do not match. Assume the case.
 制御システム1は、複数のデバイス(PLC100およびリモートIO装置150)が実行する処理が複数のデバイスの間で同期するように、複数のデバイスに対して制御基準時を設定する。例えば、リモートIO装置150-1の制御基準時72およびリモートIO装置150-2の制御基準時73がPLC100-1の制御基準時71と一致するように、リモートIO装置150-1およびリモートIO装置150-2の制御周期の周期開始時をずらす(オフセットする)ことになる。 The control system 1 sets the control reference time for multiple devices so that the processes executed by the multiple devices (PLC 100 and remote IO device 150) are synchronized between the multiple devices. For example, the remote IO device 150-1 and the remote IO device are controlled so that the control reference time 72 of the remote IO device 150-1 and the control reference time 73 of the remote IO device 150-2 match the control reference time 71 of the PLC 100-1. The period start time of the control period of 150-2 is shifted (offset).
 なお、制御システム1を構成する各デバイスは、互いに時間同期しているので、制御周期の開始タイミングを任意に設定あるいは変更できる。 It should be noted that since the devices that make up the control system 1 are time-synchronized with each other, the start timing of the control cycle can be arbitrarily set or changed.
 図11は、本実施の形態に係る制御システム1における制御基準時が一致している状態の一例を示す図である。図11(A)を参照して、PLC100-1の制御基準時71と一致するように、リモートIO装置150-1およびリモートIO装置150-2の制御周期の周期開始時を調整する。より具体的には、リモートIO装置150-1の制御周期については、制御基準時71と制御基準時72との時間差分だけ周期開始時が早くなるように調整される。一方、リモートIO装置150-2の制御周期については、制御基準時71と制御基準時73との時間差分だけ周期開始時が遅くなるように調整される。 FIG. 11 is a diagram showing an example of a state in which the control reference times match in the control system 1 according to the present embodiment. Referring to FIG. 11A, the cycle start times of the control cycles of remote IO device 150-1 and remote IO device 150-2 are adjusted so as to match control reference time 71 of PLC 100-1. More specifically, the control cycle of the remote IO device 150-1 is adjusted so that the cycle start time is earlier by the time difference between the control reference time 71 and the control reference time 72. FIG. On the other hand, the control cycle of the remote IO device 150-2 is adjusted so that the cycle start time is delayed by the time difference between the control reference time 71 and the control reference time 73. FIG.
 このように、PLC100およびリモートIO装置150との間で、制御基準時を一致させるようにそれぞれの制御周期の周期開始時を調整することができる。制御周期の周期開始時を調整することで、フレームの送信タイミングも変化する。 Thus, between the PLC 100 and the remote IO device 150, the cycle start time of each control cycle can be adjusted so that the control reference times match. By adjusting the cycle start time of the control cycle, the frame transmission timing also changes.
 図11(B)を参照して、リモートIO装置150-1がフレーム67を送信するタイミングは、制御周期の調整に応じて早くなる。一方、リモートIO装置150-2がフレーム69を送信するタイミングは、制御周期の調整に応じて遅くなる。 With reference to FIG. 11(B), the timing at which the remote IO device 150-1 transmits the frame 67 advances according to the adjustment of the control cycle. On the other hand, the timing at which the remote IO device 150-2 transmits the frame 69 is delayed according to the adjustment of the control period.
 その結果、リモートIO装置150-2のゲート開期間78は、ゲート開期間79に変更される。また、リモートIO装置150-2のゲート開期間76は、ゲート開期間77に変更される。さらに、スイッチ200-1のゲート開期間74はゲート開期間75に変更される。 As a result, the gate open period 78 of the remote IO device 150-2 is changed to the gate open period 79. Also, the gate open period 76 of the remote IO device 150-2 is changed to the gate open period 77. FIG. Furthermore, the gate open period 74 of the switch 200-1 is changed to the gate open period 75. FIG.
 このようなゲート開期間の変更に伴って、リモートIO装置150-1においては、ゲート開期間77にはフレーム67のみが転送され、フレーム69については、ゲート開期間77に含まれないことになる。同様に、スイッチ200-1においては、ゲート開期間75にはフレーム67のみが転送され、フレーム69については、ゲート開期間75に含まれないことになる。 With such a change in the gate open period, in the remote IO device 150-1, only the frame 67 is transferred during the gate open period 77, and the frame 69 is not included in the gate open period 77. . Similarly, in switch 200 - 1 , only frame 67 is transferred during gate open period 75 , and frame 69 is not included in gate open period 75 .
 制御基準時が一致するように各デバイスの制御周期の周期開始時を調整すると、予定されたフレーム転送を実現できない。そこで、本実施の形態に係る制御システム1は、デバイス間で制御基準時を一致させるように調整するとともに、トラフィックのスケジューリングについても調整する。制御基準時およびトラフィックのスケジューリングの両方に基づいて調整することで、制御システム1の制御精度を最適化できる。 If the cycle start time of each device's control cycle is adjusted so that the control reference time matches, the scheduled frame transfer cannot be realized. Therefore, the control system 1 according to the present embodiment adjusts so that the control reference times of the devices match, and also adjusts the traffic scheduling. The control accuracy of the control system 1 can be optimized by adjusting based on both control reference times and traffic scheduling.
 図12は、図11に示す状態に対応するトラフィックのスケジューリング結果の一例を示す図である。図12に示すスケジューリング結果において、スイッチ200-1には、フレーム67およびフレーム69を転送可能なゲート開期間75Aに変更される。リモートIO装置150-1には、フレーム67およびフレーム69を転送可能なゲート開期間77Aに変更される。なお、リモートIO装置150-2に設定されたゲート開期間79はそのまま維持される。 FIG. 12 is a diagram showing an example of traffic scheduling results corresponding to the state shown in FIG. In the scheduling result shown in FIG. 12, switch 200-1 is changed to gate open period 75A in which frame 67 and frame 69 can be transferred. In the remote IO device 150-1, the gate open period 77A is changed so that the frame 67 and the frame 69 can be transferred. Note that the gate open period 79 set in the remote IO device 150-2 is maintained as it is.
 制御基準時が一致するように各デバイスの制御周期の周期開始時を調整したことに伴って、Qbvスケジュール(例えば、ゲート開期間の長さおよびタイミング)が再計算される。このとき、デバイス間の伝搬遅延時間70およびデータの送信時間が参照される。 The Qbv schedule (for example, the length and timing of the gate open period) is recalculated as the period start time of the control period of each device is adjusted so that the control reference times match. At this time, the propagation delay time 70 between devices and the transmission time of data are referred to.
 (d2:全体処理手順)
 図13は、本実施の形態に係る制御システム1における制御基準時およびQbvスケジュールの計算方法の一例を示す模式図である。図13を参照して、まず、ネットワークコントローラ300は、TSNに接続されたデバイス(PLC100、リモートIO装置150、スイッチ200など)との間で同期するために時刻を補正する((1)時刻補正)。なお、時刻補正の処理については、任意の時間同期主体が行ってもよい。
(d2: overall processing procedure)
FIG. 13 is a schematic diagram showing an example of a method of calculating the control reference time and the Qbv schedule in the control system 1 according to the present embodiment. Referring to FIG. 13, first, network controller 300 corrects the time for synchronization with devices (PLC 100, remote IO device 150, switch 200, etc.) connected to TSN ((1) time correction ). Note that the time correction process may be performed by any time synchronization subject.
 続いて、ネットワークコントローラ300は、TSNに接続されたデバイスの各々と隣接するデバイスとの間の伝搬遅延時間を取得する((2)伝搬遅延時間取得)。 Subsequently, the network controller 300 acquires propagation delay times between each of the devices connected to the TSN and adjacent devices ((2) Acquisition of propagation delay times).
 そして、ネットワークコントローラ300は、制御基準時を計算するとともに、Qbvスケジュールを計算する((3)制御基準時計算・Qbvスケジュール計算)。このとき、後述するような各種ファクタが参照されてもよい。 Then, the network controller 300 calculates the control reference time and the Qbv schedule ((3) Control reference time calculation/Qbv schedule calculation). At this time, various factors to be described later may be referred to.
 その後、ネットワークコントローラ300は、制御基準時設定およびQbvスケジュールをPLC100およびリモートIO装置150へ送信する((4-1)制御基準時設定・Qbvスケジュール)とともに、Qbvスケジュールをスイッチ200へ送信する((4-2)Qbvスケジュール)。 After that, the network controller 300 transmits the control reference time setting and the Qbv schedule to the PLC 100 and the remote IO device 150 ((4-1) control reference time setting/Qbv schedule), and also transmits the Qbv schedule to the switch 200 (( 4-2) Qbv schedule).
 PLC100は、ネットワークコントローラ300からの制御基準時設定に従って、タスクスケジューラが制御タスクを周期実行するタイミングを調整する。このとき、PLC100は、タスクスケジューラを再起動する((5)タスクスケジューラ再起動)。また、PLC100は、ネットワークコントローラ300からのQbvスケジュールをネットワークインターフェイス110に設定する。 The PLC 100 adjusts the timing at which the task scheduler periodically executes the control task according to the control reference time setting from the network controller 300 . At this time, the PLC 100 restarts the task scheduler ((5) task scheduler restart). PLC 100 also sets the Qbv schedule from network controller 300 to network interface 110 .
 リモートIO装置150は、ネットワークコントローラ300からの制御基準時設定に従って、制御周期の開始タイミングを調整する。また、リモートIO装置150は、ネットワークコントローラ300からのQbvスケジュールをネットワークインターフェイス160に設定する。 The remote IO device 150 adjusts the control cycle start timing according to the control reference time setting from the network controller 300 . Also, the remote IO device 150 sets the Qbv schedule from the network controller 300 to the network interface 160 .
 スイッチ200は、ネットワークコントローラ300からのQbvスケジュールをタイミング制御回路226に設定する。 The switch 200 sets the Qbv schedule from the network controller 300 in the timing control circuit 226.
 以上のような処理手順によって、制御システム1における制御基準時およびQbvスケジュールが計算および最適化される。 The control reference time and Qbv schedule in the control system 1 are calculated and optimized by the above processing procedure.
 (d3:制御基準時の共通化において考慮されるファクタ)
 上述したように、制御基準時を調整することに伴って、Qbvスケジュールも再計算される。但し、フレーム転送のタイミングがずれることによって、帯域の使用効率が低下し、利用できる帯域が不足する可能性がある。
(d3: factor considered in sharing control reference time)
As described above, the Qbv schedule is also recalculated as the control reference time is adjusted. However, there is a possibility that the use efficiency of the band will be lowered and the usable band will be insufficient due to the timing of the frame transfer being shifted.
 また、リモートIO装置150のようなスレーブ型(エンドデバイスとしての機能およびスイッチとしての機能を有しているデバイス)においては、他のデバイスから転送すべきフレームと自デバイスから送信すべきフレームとが競合する可能性がある。 Also, in a slave type device (a device having functions as an end device and a switch) such as the remote IO device 150, frames to be transferred from other devices and frames to be transmitted from the own device are different. may compete.
 そのため、制御基準時の調整に合わせてQbvスケジュールを計算する場合には、以下のようなファクタを参照しつつ、ユーザが制御システム1の設計情報を変更することも可能になっている。 Therefore, when calculating the Qbv schedule in accordance with the adjustment of the control reference time, it is also possible for the user to change the design information of the control system 1 while referring to the following factors.
 典型的に参照されるファクタは、制御周期の長さ、および、帯域の割り当てを含む。
 図14は、本実施の形態に係る制御システム1における制御基準時およびQbvスケジュールの調整に係るフレームの変化例を示す模式図である。
Factors typically referenced include control cycle length and bandwidth allocation.
14A and 14B are schematic diagrams showing an example of a frame change related to adjustment of the control reference time and the Qbv schedule in the control system 1 according to the present embodiment.
 図14(A)を参照して、初期状態のフレームは、サイクリック通信帯域80と、メッセージ通信帯域82と、ネットワーク管理帯域84と、設定用帯域86とを含む。 Referring to FIG. 14(A), the frame in the initial state includes a cyclic communication band 80, a message communication band 82, a network management band 84, and a setting band 86.
 サイクリック通信帯域80は、PLC100間あるいはPLC100とリモートIO装置150間で周期的なデータのやり取りに使用される帯域である。 The cyclic communication band 80 is a band used for cyclic data exchange between the PLCs 100 or between the PLC 100 and the remote IO device 150 .
 メッセージ通信帯域82は、任意のタイミングでのデータのやり取りに使用される帯域であり、イベント通信帯域とも称される。メッセージ通信帯域82は、例えば、任意のユーザプログラム、イベント通知、TCPアプリケーションなどで使用される。 The message communication band 82 is a band used for exchanging data at arbitrary timing, and is also called an event communication band. Message communication band 82 is used, for example, by any user program, event notification, TCP application, and the like.
 ネットワーク管理帯域84は、同期などのネットワークを管理するために必要なデータのやり取りに使用される帯域である。ネットワーク管理帯域84は、例えば、時刻補正、隣接ノード検知、ループ回避などで使用される。 The network management band 84 is a band used for exchanging data necessary for network management such as synchronization. The network management band 84 is used, for example, for time correction, adjacent node detection, loop avoidance, and the like.
 設定用帯域86は、ネットワークに接続されるデバイスに対する任意の設定に必要なデータのやり取りに使用される帯域である。設定用帯域86は、例えば、サポート装置400からの設定、初期設定などに使用される帯域である。 The setting band 86 is a band used for exchanging data necessary for arbitrary settings for devices connected to the network. The setting band 86 is, for example, a band used for setting from the support device 400, initial setting, and the like.
 例えば、図14(B)に示すように、制御周期を長くすることで、1つのフレームに含まれる帯域を拡大できる。その結果、例えば、1つのフレームに対してより多くのサイクリック通信帯域80を割り当てることができる。この結果、空帯域88を用意することもできる。空帯域88は、画像や動画などの任意のデータのやり取りに使用されてもよい。 For example, as shown in FIG. 14(B), the band included in one frame can be expanded by lengthening the control period. As a result, for example, more cyclic communication bands 80 can be assigned to one frame. As a result, an empty band 88 can also be prepared. Vacant band 88 may be used for exchanging arbitrary data such as images and videos.
 あるいは、図14(C)に示すように、ネットワーク管理帯域84および/または設定用帯域86を小さくすることで、より多くのサイクリック通信帯域80を割り当てることができる。 Alternatively, as shown in FIG. 14(C), by reducing the network management band 84 and/or the setting band 86, a larger cyclic communication band 80 can be allocated.
 このように、制御周期の長さ、および、帯域の割り当てを調整することで、制御システム1全体としてより高い制御精度を発揮できるようにする。 By adjusting the length of the control cycle and the allocation of the band in this way, the control system 1 as a whole can exhibit higher control accuracy.
 (d4:制御基準時の共通化に係る処理手順)
 次に、本実施の形態に係る制御システム1における制御基準時の共通化に係る処理手順の一例について説明する。
(d4: Processing procedure related to sharing of control reference time)
Next, an example of a processing procedure for sharing the control reference time in the control system 1 according to the present embodiment will be described.
 図15は、本実施の形態に係る制御システム1における制御基準時の共通化に係る処理手順を示すフローチャートである。図15に示す各ステップは、典型的には、ネットワークコントローラ300のプロセッサ302がネットワーク設定プログラム324を実行することで実現される、あるいは、サポート装置400のプロセッサ402がネットワーク設定プログラム424を実行することで実現される。以下では、典型例として、ネットワークコントローラ300が処理を実行する場合について説明する。 FIG. 15 is a flowchart showing a processing procedure for sharing the control reference time in the control system 1 according to the present embodiment. Each step shown in FIG. 15 is typically realized by executing the network setting program 324 by the processor 302 of the network controller 300, or by executing the network setting program 424 by the processor 402 of the support device 400. is realized by A case where the network controller 300 executes processing will be described below as a typical example.
 ネットワークコントローラ300は、制御システム1を構成するデバイスのうち、対象の複数のデバイスに対する制御基準時を決定する(ステップS2)。すなわち、ネットワークコントローラ300は、複数のデバイスが実行する処理が当該複数のデバイスの間で同期するように、当該複数のデバイスに対する制御基準時を決定する。 The network controller 300 determines control reference times for a plurality of target devices among the devices that configure the control system 1 (step S2). That is, the network controller 300 determines the control reference times for the plurality of devices such that the processes executed by the plurality of devices are synchronized among the plurality of devices.
 また、ネットワークコントローラ300は、制御システム1のデバイス間の伝搬遅延時間を取得する(ステップS4)。ネットワークコントローラ300は、制御システム1を構成する複数のデバイス(PLC100およびリモートIO装置150)のうち隣接するデバイス間の伝搬遅延時間を取得する。なお、伝搬遅延時間は、各デバイスが計測する。 Also, the network controller 300 acquires the propagation delay time between the devices of the control system 1 (step S4). Network controller 300 acquires the propagation delay time between adjacent devices among the plurality of devices (PLC 100 and remote IO device 150) that configure control system 1 . Each device measures the propagation delay time.
 そして、ネットワークコントローラ300は、対象の複数のデバイスに対して設定する制御基準時に従うとともに、伝搬遅延時間などに基づいて、制御システム1のTSNにおけるトラフィックのスケジュール(Qbvスケジュール)を計算する(ステップS6)。 Then, the network controller 300 follows the control reference time set for the plurality of target devices and calculates the traffic schedule (Qbv schedule) in the TSN of the control system 1 based on the propagation delay time and the like (step S6 ).
 ネットワークコントローラ300は、Qbvスケジュールが適切に計算できたか否かを判断する(ステップS8)。Qbvスケジュールが適切に計算できれば(ステップS8においてYES)、ネットワークコントローラ300は、制御基準時設定およびQbvスケジュールをPLC100およびリモートIO装置150の各々に設定する(ステップS40)。すなわち、ネットワークコントローラ300は、制御基準時およびトラフィックのスケジュール(Qbvスケジュール)を複数のデバイス(PLC100およびリモートIO装置150)に設定する。また、ネットワークコントローラ300は、Qbvスケジュールをスイッチ200に設定する(ステップS42)。すなわち、ネットワークコントローラ300は、トラフィックのスケジュール(Qbvスケジュール)をTSNを構成するスイッチ200に設定する。 The network controller 300 determines whether the Qbv schedule has been properly calculated (step S8). If the Qbv schedule can be calculated appropriately (YES in step S8), network controller 300 sets the control reference time setting and the Qbv schedule to each of PLC 100 and remote IO device 150 (step S40). That is, the network controller 300 sets a control reference time and a traffic schedule (Qbv schedule) to a plurality of devices (PLC 100 and remote IO device 150). Also, the network controller 300 sets the Qbv schedule to the switch 200 (step S42). That is, the network controller 300 sets a traffic schedule (Qbv schedule) to the switches 200 that configure the TSN.
 Qbvスケジュールが適切に計算できなければ(ステップS8においてNO)、ネットワークコントローラ300は、現在の設定に基づいて帯域に空きがあるか否かを判断する(ステップS10)。帯域に空きがあれば(ステップS10においてYES)には、ネットワークコントローラ300は、フレームに割り当てられているサイクリック通信帯域80を拡大する(ステップS12)。そして、ネットワークコントローラ300は、フレームに割り当てられているサイクリック通信帯域80を拡大した設定で、制御システム1のTSNにおけるQbvスケジュールを再計算する(ステップS36)。 If the Qbv schedule cannot be calculated properly (NO in step S8), the network controller 300 determines whether there is a free band based on the current settings (step S10). If there is a free band (YES in step S10), network controller 300 expands cyclic communication band 80 assigned to the frame (step S12). Then, the network controller 300 recalculates the Qbv schedule in the TSN of the control system 1 with the expanded cyclic communication band 80 assigned to the frame (step S36).
 帯域に空きがなければ(ステップS10においてNO)には、ネットワークコントローラ300は、現在のネットワーク管理帯域84および設定用帯域86に割り当てられている帯域が必要最小限の大きさを超えているか否かを判断する(ステップS14)。現在のネットワーク管理帯域84および設定用帯域86に割り当てられている帯域が必要最小限の大きさを超えていれば(ステップS14においてYES)、ネットワークコントローラ300は、フレームに割り当てられているネットワーク管理帯域84および/または設定用帯域86を必要最小限に小さくするとともに、サイクリック通信帯域80を拡大する(ステップS16)。そして、ネットワークコントローラ300は、サイクリック通信帯域80を拡大した設定で、制御システム1のTSNにおけるQbvスケジュールを再計算する(ステップS36)。 If there is no free band (NO in step S10), network controller 300 determines whether the bands currently assigned to network management band 84 and setting band 86 exceed the minimum necessary size. (step S14). If the bands assigned to the current network management band 84 and the setting band 86 exceed the minimum necessary size (YES in step S14), the network controller 300 sets the network management band assigned to the frame. 84 and/or setting band 86 are reduced to the minimum necessary, and cyclic communication band 80 is expanded (step S16). Then, the network controller 300 recalculates the Qbv schedule in the TSN of the control system 1 with a setting that expands the cyclic communication band 80 (step S36).
 現在のネットワーク管理帯域84および設定用帯域86に割り当てられている帯域が必要最小限の大きさを超えていなければ(ステップS14においてNO)、ネットワークコントローラ300は、ネットワーク管理帯域84を含むフレームの送信周期を長くできる状態であるか否かを判断する(ステップS18)。ネットワーク管理帯域84を含むフレームの送信周期を長くできる状態であれば(ステップS18においてYES)、ネットワークコントローラ300は、ネットワーク管理帯域84を含むフレームの送信周期を長くするとともに、サイクリック通信帯域80を拡大する(ステップS20)。そして、ネットワークコントローラ300は、サイクリック通信帯域80を拡大した設定で、制御システム1のTSNにおけるQbvスケジュールを再計算する(ステップS36)。 If the bands assigned to the current network management band 84 and setting band 86 do not exceed the minimum required size (NO in step S14), network controller 300 transmits a frame including network management band 84. It is determined whether or not the cycle can be lengthened (step S18). If the transmission cycle of frames including network management band 84 can be lengthened (YES in step S18), network controller 300 lengthens the transmission cycle of frames including network management band 84 and increases cyclic communication band 80. Enlarge (step S20). Then, the network controller 300 recalculates the Qbv schedule in the TSN of the control system 1 with a setting that expands the cyclic communication band 80 (step S36).
 ネットワーク管理帯域84を含むフレームの送信周期を長くできる状態でなければ(ステップS18においてNO)、ネットワークコントローラ300は、メッセージ通信帯域82の最大利用率に基づいて、メッセージ通信帯域82を縮小できる状態であるか否かを判断する(ステップS22)。メッセージ通信帯域82を縮小できる状態であれば(ステップS22においてYES)、ネットワークコントローラ300は、メッセージ通信帯域82を縮小するとともに、サイクリック通信帯域80を拡大する(ステップS24)。そして、ネットワークコントローラ300は、サイクリック通信帯域80を拡大した設定で、制御システム1のTSNにおけるQbvスケジュールを再計算する(ステップS36)。 If the transmission cycle of frames including network management band 84 cannot be lengthened (NO in step S18), network controller 300 reduces message communication band 82 based on the maximum usage rate of message communication band 82. It is determined whether or not there is (step S22). If message communication band 82 can be reduced (YES in step S22), network controller 300 reduces message communication band 82 and expands cyclic communication band 80 (step S24). Then, the network controller 300 recalculates the Qbv schedule in the TSN of the control system 1 with a setting that expands the cyclic communication band 80 (step S36).
 メッセージ通信帯域82を縮小できる状態でなければ(ステップS22においてNO)、ネットワークコントローラ300は、ネットワークのスイッチを交換できるか否かを判断する(ステップS26)。ネットワークのスイッチを交換できれば(ステップS26においてYES)、ネットワークコントローラ300は、交換後のスイッチに応じた帯域割り当てを実行する(ステップS28)。ネットワークコントローラ300は、交換後のスイッチに応じた帯域割り当ての設定で、制御システム1のTSNにおけるQbvスケジュールを再計算する(ステップS36)。 If the message communication band 82 cannot be reduced (NO in step S22), the network controller 300 determines whether the network switch can be replaced (step S26). If the switch in the network can be replaced (YES in step S26), network controller 300 executes bandwidth allocation according to the switch after replacement (step S28). The network controller 300 recalculates the Qbv schedule in the TSN of the control system 1 with the bandwidth allocation setting according to the switch after replacement (step S36).
 ネットワークのデバイスを交換できなければ(ステップS26においてNO)、ネットワークコントローラ300は、サイクリック通信の送信周期の変更をユーザに提案する(ステップS30)。なお、サイクリック通信の送信周期を変更することで、制御周期も変更するようにしてもよい。 If the network device cannot be replaced (NO in step S26), the network controller 300 proposes to the user to change the transmission cycle of cyclic communication (step S30). Note that the control cycle may also be changed by changing the transmission cycle of cyclic communication.
 ネットワークコントローラ300は、サイクリック通信の送信周期の変更をユーザが許可すれば(ステップS32においてYES)、サイクリック通信の送信周期を変更後の設定で、制御システム1のTSNにおけるQbvスケジュールを再計算する(ステップS36)。そして、ステップS40以下の処理が実行される。 If the user permits the change of the transmission cycle of cyclic communication (YES in step S32), network controller 300 recalculates the Qbv schedule in the TSN of control system 1 with the setting after changing the transmission cycle of cyclic communication. (step S36). Then, the processing from step S40 is executed.
 一方、サイクリック通信の送信周期の変更をユーザが許可しなければ(ステップS32においてNO)、ネットワークコントローラ300は、Qbvスケジュールの失敗をユーザへ通知する(ステップS34)。 On the other hand, if the user does not permit the change of the cyclic communication transmission cycle (NO in step S32), the network controller 300 notifies the user of the failure of the Qbv schedule (step S34).
 以上のような処理によって、制御基準時をデバイス間で一致させる際の設定を実現できる。 Through the above processing, it is possible to implement settings for matching the control reference times between devices.
 (d5:ユーザインターフェイス例)
 次に、本実施の形態に係る制御システム1における制御基準時の共通化に係るユーザインターフェイスの一例について説明する。
(d5: User interface example)
Next, an example of a user interface related to sharing the control reference time in the control system 1 according to the present embodiment will be described.
 上述したように、制御周期を長くする、および/または、サイクリック通信帯域80以外の帯域を縮小することで、サイクリック通信に割り当てる帯域を増大できる。ネットワークコントローラ300および/またはサポート装置400は、以下のようなユーザインターフェイスを介して、ユーザとの対話によって、制御要求などに応じた最適な帯域割り当ておよびスケジューリングなどを実現できる。すなわち、ネットワークコントローラ300および/またはサポート装置400は、計算されたQbvスケジュールが要求を満たさない場合に、設定の変更を受け付けるためのユーザインターフェイスを有している。 As described above, the bandwidth allocated to cyclic communication can be increased by lengthening the control cycle and/or reducing the bandwidth other than the cyclic communication bandwidth 80. The network controller 300 and/or the support device 400 can implement optimal bandwidth allocation and scheduling according to control requests and the like through interaction with the user via the following user interfaces. That is, network controller 300 and/or support device 400 has a user interface for accepting changes in settings when the calculated Qbv schedule does not meet requirements.
 図16は、本実施の形態に係る制御システム1におけるネットワーク管理帯域84の送信周期の変更を提案するユーザインターフェイス画面の一例を示す模式図である。図16に示すユーザインターフェイス画面450は、典型的には、図15のステップS18における処理に対応してユーザへ提供される。すなわち、ユーザインターフェイス画面450は、同期制御および検知精度などの状況をユーザへ通知するとともに、ネットワーク管理帯域84を含むフレームの送信周期を長くすることのユーザからの許可を待つ。 FIG. 16 is a schematic diagram showing an example of a user interface screen that proposes changing the transmission cycle of the network management band 84 in the control system 1 according to this embodiment. User interface screen 450 shown in FIG. 16 is typically provided to the user in response to the processing in step S18 of FIG. That is, the user interface screen 450 notifies the user of conditions such as synchronization control and detection accuracy, and waits for permission from the user to lengthen the transmission cycle of frames including the network management band 84 .
 図16を参照して、ユーザインターフェイス画面450は、タイムスタンプ機能をもつ時刻の同期精度451と、制御の同期精度452と、トポロジ変化の検知精度453との情報を表示する。 Referring to FIG. 16, a user interface screen 450 displays information on time synchronization accuracy 451 with a time stamp function, control synchronization accuracy 452, and topology change detection accuracy 453. FIG.
 タイムスタンプ機能をもつ時刻の同期精度451として、現在の精度454と、ネットワーク管理帯域84の送信周期を変更したときに想定される精度455とが表示されている。 The current accuracy 454 and the expected accuracy 455 when the transmission cycle of the network management band 84 is changed are displayed as the time synchronization accuracy 451 with the timestamp function.
 制御の同期精度452として、現在の精度456と、ネットワーク管理帯域84の送信周期を変更したときに想定される精度457とが表示されている。 As the control synchronization accuracy 452, the current accuracy 456 and the expected accuracy 457 when the transmission cycle of the network management band 84 is changed are displayed.
 トポロジ変化の検知精度453として、現在の精度458と、ネットワーク管理帯域84の送信周期を変更したときに想定される精度459とが表示されている。 The current accuracy 458 and the expected accuracy 459 when the transmission cycle of the network management band 84 is changed are displayed as the topology change detection accuracy 453 .
 ユーザが「了承」ボタンを押下することで、ネットワーク管理帯域84の送信周期が変更された上で、Qbvスケジュールが再計算される。 When the user presses the "Accept" button, the transmission cycle of the network management band 84 is changed and the Qbv schedule is recalculated.
 このように、ネットワーク管理帯域84に割り当てられる帯域を変更することで生じ得る影響の内容をユーザへ提示するとともに、ユーザが了承することで、変更後の帯域割り当てに対応するQbvスケジュールが再計算される。すなわち、Qbvスケジュールを再計算するための設定の変更は、TSNを管理するために必要なデータを含むフレームの送信周期を変更することを含んでいてもよい。 In this way, the user is presented with the details of the possible effects of changing the band allocated to the network management band 84, and upon the user's approval, the Qbv schedule corresponding to the changed band allocation is recalculated. be. That is, changing the settings for recalculating the Qbv schedule may include changing the transmission period of frames containing data necessary for managing TSNs.
 図17は、本実施の形態に係る制御システム1におけるメッセージ通信帯域82の帯域の変更を提案するユーザインターフェイス画面の一例を示す模式図である。図17に示すユーザインターフェイス画面460は、典型的には、図15のステップS22における処理に対応してユーザへ提供される。すなわち、ユーザインターフェイス画面460は、メッセージ通信帯域82の使用状況をユーザへ通知するとともに、メッセージ通信帯域82の縮小についてのユーザからの許可を待つ。 FIG. 17 is a schematic diagram showing an example of a user interface screen for proposing a change of the message communication band 82 in the control system 1 according to the present embodiment. User interface screen 460 shown in FIG. 17 is typically provided to the user in response to the processing in step S22 of FIG. That is, the user interface screen 460 notifies the user of the usage status of the message communication band 82 and waits for permission from the user to reduce the message communication band 82 .
 図17を参照して、ユーザインターフェイス画面460は、現在の帯域使用率を示す使用率表461と、現在の帯域割り当て設定を示す割り当て設定表462と、変更後の帯域割り当て設定を示す割り当て設定表463とを含む。 Referring to FIG. 17, user interface screen 460 includes usage rate table 461 indicating current bandwidth usage rate, allocation setting table 462 indicating current bandwidth allocation settings, and allocation setting table 462 indicating changed bandwidth allocation settings. 463.
 現在の帯域使用率(使用率表461)と現在の帯域割り当て設定(割り当て設定表462)とに基づいて、帯域割り当ての変更が提案される(割り当て設定表463)。 A change in bandwidth allocation is proposed (allocation setting table 463) based on the current bandwidth usage rate (utilization rate table 461) and the current bandwidth allocation setting (allocation setting table 462).
 ユーザが「了承」ボタンを押下することで、メッセージ通信帯域82が縮小された上で、Qbvスケジュールが再計算される。 When the user presses the "Accept" button, the message communication band 82 is reduced and the Qbv schedule is recalculated.
 このように、現在のメッセージ通信帯域82の使用率および縮小可能な範囲をユーザへ提示するとともに、ユーザが了承することで、縮小後のメッセージ通信帯域82に対応するQbvスケジュールが再計算される。すなわち、Qbvスケジュールを再計算するための設定の変更は、TSNを転送されるフレームにおいて割り当てられるサイクリック通信帯域80およびメッセージ通信帯域82のうち、メッセージ通信帯域82を小さくすることを含んでいてもよい。 In this way, the current usage rate of the message communication band 82 and the range that can be reduced are presented to the user, and with the user's approval, the Qbv schedule corresponding to the reduced message communication band 82 is recalculated. In other words, even if the setting change for recalculating the Qbv schedule includes reducing the message communication band 82 out of the cyclic communication band 80 and the message communication band 82 allocated in the frame in which the TSN is transferred, good.
 図18は、本実施の形態に係る制御システム1におけるスイッチの交換を提案するユーザインターフェイス画面の一例を示す模式図である。図18に示すユーザインターフェイス画面470は、典型的には、図15のステップS26における処理に対応してユーザへ提供される。すなわち、ユーザインターフェイス画面470は、フレーム転送がクリティカルになっているネットワークの区間を表示するとともに、クリティカルになっている区間を解消するためのスイッチの交換をユーザに提案する。 FIG. 18 is a schematic diagram showing an example of a user interface screen for suggesting switch replacement in the control system 1 according to the present embodiment. User interface screen 470 shown in FIG. 18 is typically provided to the user in response to the processing in step S26 of FIG. That is, the user interface screen 470 displays the section of the network in which the frame transfer is critical, and also suggests to the user to replace the switch to eliminate the critical section.
 図18を参照して、ユーザインターフェイス画面470は、現在のネットワークの状態を示すネットワーク状態表示471と、スイッチ交換後に予想されるネットワークの状態を示すネットワーク状態表示472とを含む。ネットワーク状態表示472においては、いずれのスイッチを交換するのかを示すメッセージ473が表示されている。 Referring to FIG. 18, user interface screen 470 includes network status display 471 indicating the current network status and network status display 472 indicating the expected network status after switch replacement. A network status display 472 displays a message 473 indicating which switch is to be replaced.
 このようなスイッチの交換の提案は、使用されているスイッチのディスクリプタなどに基づいてウェブ上の検索エンジンで検索し、当該使用されているスイッチより高い機能を有するスイッチが存在すれば、当該高い機能を有するスイッチを交換の候補として決定する。 Such switch replacement proposals are searched by a search engine on the web based on the descriptors of the switch being used, and if there is a switch with higher function than the switch being used, the switch with the higher function is searched. is determined as a candidate for replacement.
 ユーザは、ユーザインターフェイス画面470を参照して、ネットワークを構成するスイッチを適宜交換する。このように、ネットワークコントローラ300および/またはサポート装置400が提供するユーザインターフェイスは、TSNを構成するスイッチ200の交換の提案を通知する。 The user refers to the user interface screen 470 and appropriately replaces the switches that make up the network. In this way, the user interface provided by the network controller 300 and/or the support device 400 notifies a proposal for replacement of the switches 200 that make up the TSN.
 図19は、本実施の形態に係る制御システム1におけるサイクリック通信の送信周期の変更を提案するユーザインターフェイス画面の一例を示す模式図である。図19に示すユーザインターフェイス画面480は、典型的には、図15のステップS30における処理に対応してユーザへ提供される。すなわち、ユーザインターフェイス画面480は、サイクリック通信の送信周期の変更をユーザに提案する。 FIG. 19 is a schematic diagram showing an example of a user interface screen that proposes changing the transmission cycle of cyclic communication in the control system 1 according to the present embodiment. User interface screen 480 shown in FIG. 19 is typically provided to the user in response to the processing in step S30 of FIG. That is, user interface screen 480 proposes to the user to change the transmission cycle of cyclic communication.
 図19を参照して、ユーザインターフェイス画面480は、現在設定されているフレームの状態を示すフレーム設定表示481と、提案された新たなフレームの状態を示すフレーム設定表示482とを含む。 Referring to FIG. 19, a user interface screen 480 includes a frame setting display 481 showing the state of the currently set frame and a frame setting display 482 showing the state of the proposed new frame.
 図19に示すフレーム設定表示481においては、3つのフレーム483,484,485がサイクリック通信されることが示されている。これに対して、フレーム設定表示482においては、2つのフレーム486,487がサイクリック通信されることが示されている。特に、フレーム484に含まれているデータDS3およびデータDS4、ならびに、フレーム485に含まれているデータDS5については、フレーム487に順次配置されるように設定されている。この結果、データDS3,DS4,DS5の通信周期は、現在のフレーム設定に比較して3倍に長くなっている。 A frame setting display 481 shown in FIG. 19 indicates that three frames 483, 484, and 485 are cyclically communicated. In contrast, frame setting display 482 shows that two frames 486 and 487 are cyclically communicated. In particular, the data DS3 and data DS4 contained in the frame 484 and the data DS5 contained in the frame 485 are set to be sequentially arranged in the frame 487 . As a result, the communication cycle of data DS3, DS4 and DS5 is three times longer than the current frame setting.
 このように、サイクリック通信されるフレーム毎のデータ割り当ての変更案をユーザへ提示するとともに、ユーザが了承することで、新たなデータ割り当てに従ってQbvスケジュールが再計算される。 In this way, the proposed modification of the data allocation for each frame of cyclic communication is presented to the user, and upon acceptance by the user, the Qbv schedule is recalculated according to the new data allocation.
 なお、上述したようなユーザへの通知あるいは提案については、任意のデバイスがOPC UAのPub/Sub通信を利用して、イベントメッセージとして送信するようにしてもよい。 It should be noted that the notification or proposal to the user as described above may be sent as an event message by any device using Pub/Sub communication of OPC UA.
 上述したように、本実施の形態に係る制御システム1は、帯域不足などで調整が難しい場合には、制御周期、帯域割り当て、通信周期などの変更をユーザインターフェイス画面を介してユーザへ提示するとともに、ユーザが了承することで、変更後の設定に基づいて、Qbvスケジュールなどを再計算する。すなわち、Qbvスケジュールを再計算するための設定の変更は、複数のデバイス間でやり取りされるデータの送信周期を変更することを含んでいてもよい。 As described above, the control system 1 according to the present embodiment presents changes to the control cycle, band allocation, communication cycle, etc. to the user via the user interface screen when adjustment is difficult due to insufficient bandwidth or the like. , the Qbv schedule and the like are recalculated based on the changed settings when the user approves. That is, changing the settings for recalculating the Qbv schedule may include changing the transmission cycle of data exchanged between multiple devices.
 (d6:全体処理手順の変形例)
 図20は、本実施の形態に係る制御システム1における制御基準時およびQbvスケジュールの計算方法の別の一例を示す模式図である。図20には、図13に示す計算方法に対して、ユーザへの提案などの処理が追加されている。
(d6: Modified example of overall processing procedure)
FIG. 20 is a schematic diagram showing another example of the method of calculating the control reference time and the Qbv schedule in the control system 1 according to the present embodiment. In FIG. 20, processing such as proposing to the user is added to the calculation method shown in FIG.
 図20を参照して、まず、ネットワークコントローラ300は、TSNに接続されたデバイス(PLC100、リモートIO装置150、スイッチ200など)との間で同期するために時刻を補正する((1)時刻補正)。なお、時刻補正の処理については、任意の時間同期主体が行ってもよい。 Referring to FIG. 20, network controller 300 first corrects the time for synchronization with devices (PLC 100, remote IO device 150, switch 200, etc.) connected to the TSN ((1) time correction ). Note that the time correction process may be performed by any time synchronization subject.
 続いて、ネットワークコントローラ300は、TSNに接続されたデバイスの各々と隣接するデバイスとの間の伝搬遅延時間を取得する((2)伝搬遅延時間取得)。 Subsequently, the network controller 300 acquires propagation delay times between each of the devices connected to the TSN and adjacent devices ((2) Acquisition of propagation delay times).
 そして、ネットワークコントローラ300は、制御基準時を計算するとともに、Qbvスケジュールを計算する((3)制御基準時計算・Qbvスケジュール計算)。この計算結果において、帯域が不足しているなどの事態が生じると、ネットワークコントローラ300は、上述の図16~図19に例示するような改善提案内容を探索する((4)改善提案内容の探索)。ネットワークコントローラ300は、必要に応じて、改善提案内容をユーザへ通知する((5)ユーザへ通知)。 Then, the network controller 300 calculates the control reference time and the Qbv schedule ((3) Control reference time calculation/Qbv schedule calculation). In the result of this calculation, if a situation such as insufficient bandwidth occurs, the network controller 300 searches for improvement proposal contents such as those shown in FIGS. ). The network controller 300 notifies the user of the content of the improvement proposal as necessary ((5) Notify user).
 ユーザから許可(了承)が得られると((6)許可)、ネットワークコントローラ300は、Qbvスケジュールを再計算する((7)Qbvスケジュール再計算)。 When permission (approval) is obtained from the user ((6) permission), the network controller 300 recalculates the Qbv schedule ((7) Qbv schedule recalculation).
 その後、ネットワークコントローラ300は、制御基準時設定およびQbvスケジュールをPLC100およびリモートIO装置150へ送信する((8-1)制御基準時設定・Qbvスケジュール)とともに、Qbvスケジュールをスイッチ200へ送信する((8-2)Qbvスケジュール)。 After that, the network controller 300 transmits the control reference time setting and the Qbv schedule to the PLC 100 and the remote IO device 150 ((8-1) control reference time setting/Qbv schedule), and also transmits the Qbv schedule to the switch 200 (( 8-2) Qbv schedule).
 PLC100は、ネットワークコントローラ300からの制御基準時設定に従って、タスクスケジューラが制御タスクを周期実行するタイミングを調整する。このとき、PLC100は、タスクスケジューラを再起動する((9)タスクスケジューラ再起動)。また、PLC100は、ネットワークコントローラ300からのQbvスケジュールをネットワークインターフェイス110に設定する。 The PLC 100 adjusts the timing at which the task scheduler periodically executes the control task according to the control reference time setting from the network controller 300 . At this time, the PLC 100 restarts the task scheduler ((9) task scheduler restart). PLC 100 also sets the Qbv schedule from network controller 300 to network interface 110 .
 以上のような処理手順によって、制御システム1における制御基準時およびQbvスケジュールが計算および最適化される。 The control reference time and Qbv schedule in the control system 1 are calculated and optimized by the above processing procedure.
 <E.応用例>
 変形例として、PLC100にフィールドバス42を介して1または複数のフィールドデバイス50が接続されている構成例への適用について説明する。
<E. Application example>
As a modified example, application to a configuration example in which one or a plurality of field devices 50 are connected to the PLC 100 via the fieldbus 42 will be described.
 図21は、本実施の形態に係る制御システム1の全体構成の別の一例を示す模式図である。図21を参照して、PLC100-1,100-2の各々は、フィールドバス42を有している。フィールドバス42には、1または複数のフィールドデバイス50が接続される。フィールドバス42としては、例えば、EtherCAT(登録商標)などの同期されたネットワークが採用される。 FIG. 21 is a schematic diagram showing another example of the overall configuration of the control system 1 according to this embodiment. Referring to FIG. 21, each of PLCs 100-1 and 100-2 has a field bus 42. FIG. One or more field devices 50 are connected to the fieldbus 42 . As the fieldbus 42, for example, a synchronized network such as EtherCAT (registered trademark) is adopted.
 図21に示す制御システム1において制御基準時を一致させるためには、フィールドバス42の通信処理およびTSNの通信処理の両方を参照しなければならない。 In order to match the control reference time in the control system 1 shown in FIG. 21, both communication processing of the field bus 42 and communication processing of TSN must be referred to.
 図22は、図21に示す制御システム1における制御基準時が一致している状態の一例を示す図である。図22を参照して、PLC100-1およびPLC100-2の各々は、フィールドバス42に係るIO通信処理61と、TSNに係るIO通信処理63と、プログラム実行64とを含む処理を制御周期毎に繰返し実行する。 FIG. 22 is a diagram showing an example of a state in which the control reference times in the control system 1 shown in FIG. 21 match. 22, each of PLC 100-1 and PLC 100-2 performs processing including IO communication processing 61 related to fieldbus 42, IO communication processing 63 related to TSN, and program execution 64 for each control cycle. Execute repeatedly.
 例えば、フィールドバス42に係るIO通信処理61における時間同期を維持するロジックがデバイス間で共通であれば、PLC100-1およびPLC100-2のタスクスケジューラが制御タスクを周期実行するタイミングを調整することで、制御基準時を一致させることができる。但し、タスクスケジューラが制御タスクを周期実行するタイミングが調整されることで、Qbvスケジュールがずれる可能性がある。このような場合においても、上述と同様の処理手順によって、Qbvスケジュールの再計算などが実行される。 For example, if the logic for maintaining time synchronization in the IO communication processing 61 related to the field bus 42 is common between devices, the task schedulers of the PLC 100-1 and PLC 100-2 can adjust the timing of periodically executing the control task. , the control reference time can be matched. However, there is a possibility that the Qbv schedule will be shifted by adjusting the timing of the periodic execution of the control task by the task scheduler. Even in such a case, recalculation of the Qbv schedule and the like are executed by the same procedure as described above.
 図23は、本実施の形態に係る制御システム1における制御基準時およびQbvスケジュールの計算方法のさらに別の一例を示す模式図である。図23には、図13に示す計算方法に対して、フィールドバス42での通信処理を反映するための処理が追加されている。但し、リモートIO装置150-1,150-2に関する処理は除かれる。 FIG. 23 is a schematic diagram showing still another example of the method of calculating the control reference time and the Qbv schedule in the control system 1 according to the present embodiment. In FIG. 23, processing for reflecting communication processing in the fieldbus 42 is added to the calculation method shown in FIG. However, processing related to the remote IO devices 150-1 and 150-2 is excluded.
 図23を参照して、まず、ネットワークコントローラ300は、TSNに接続されたデバイス(PLC100およびスイッチ200など)との間で同期するために時刻を補正する((1)時刻補正)。なお、時刻補正の処理については、任意の時間同期主体が行ってもよい。 Referring to FIG. 23, first, network controller 300 corrects the time for synchronization with devices (PLC 100, switch 200, etc.) connected to TSN ((1) time correction). Note that the time correction process may be performed by any time synchronization subject.
 続いて、ネットワークコントローラ300は、TSNに接続されたデバイスの各々と隣接するデバイスとの間の伝搬遅延時間を取得する((2)伝搬遅延時間取得)。 Subsequently, the network controller 300 acquires propagation delay times between each of the devices connected to the TSN and adjacent devices ((2) Acquisition of propagation delay times).
 また、PLC100の各々は、フィールドバス42の伝搬遅延時間を取得する((3)フィールドバス42の伝搬遅延時間取得)。そして、ネットワークコントローラ300は、PLC100の各々からフィールドバス42の情報を取得する((4)フィールドバス情報取得)。取得されるフィールドバス42の情報は、例えば、フィールドバス42の伝搬遅延時間、フィールドバス42のトポロジ、フィールドバス42を流れるフレーム情報などを含む。 Also, each of the PLCs 100 acquires the propagation delay time of the fieldbus 42 ((3) acquisition of the propagation delay time of the fieldbus 42). Then, the network controller 300 acquires the information of the fieldbus 42 from each of the PLCs 100 ((4) fieldbus information acquisition). The acquired information of the fieldbus 42 includes, for example, the propagation delay time of the fieldbus 42, the topology of the fieldbus 42, frame information flowing through the fieldbus 42, and the like.
 そして、ネットワークコントローラ300は、制御基準時を計算するとともに、Qbvスケジュールを計算する((5)制御基準時計算・Qbvスケジュール計算)。その後、ネットワークコントローラ300は、制御基準時設定およびQbvスケジュールをPLC100へ送信する((6-1)制御基準時設定・Qbvスケジュール)とともに、Qbvスケジュールをスイッチ200へ送信する((6-2)Qbvスケジュール)。 Then, the network controller 300 calculates the control reference time and the Qbv schedule ((5) Control reference time calculation/Qbv schedule calculation). After that, the network controller 300 transmits the control reference time setting and the Qbv schedule to the PLC 100 ((6-1) control reference time setting/Qbv schedule), and also transmits the Qbv schedule to the switch 200 ((6-2) Qbv schedule). schedule).
 PLC100は、ネットワークコントローラ300からの制御基準時設定に従って、タスクスケジューラが制御タスクを周期実行するタイミングを調整する。このとき、PLC100は、タスクスケジューラを再起動する((7)タスクスケジューラ再起動)。また、PLC100は、ネットワークコントローラ300からのQbvスケジュールをネットワークインターフェイス110に設定する。 The PLC 100 adjusts the timing at which the task scheduler periodically executes the control task according to the control reference time setting from the network controller 300 . At this time, the PLC 100 restarts the task scheduler ((7) task scheduler restart). PLC 100 also sets the Qbv schedule from network controller 300 to network interface 110 .
 さらに、PLC100は、ネットワークコントローラ300からの制御基準時設定に従って、フィールドバス42の同期タイミングを再設定する((8)フィールドバス同期タイミング再設定)。フィールドバス42の同期タイミングを再設定する処理は、例えば、EtherCATの割り込みタイミングの設定およびEtherCATの時刻同期などの処理を含む。 Furthermore, the PLC 100 resets the synchronization timing of the fieldbus 42 according to the control reference time setting from the network controller 300 ((8) fieldbus synchronization timing resetting). The process of resetting the synchronization timing of the fieldbus 42 includes, for example, the process of setting the EtherCAT interrupt timing and EtherCAT time synchronization.
 以上のような処理手順によって、制御システム1における制御基準時およびQbvスケジュールが計算および最適化される。 The control reference time and Qbv schedule in the control system 1 are calculated and optimized by the above processing procedure.
 <F.付記>
 上述したような本実施の形態は、以下のような技術思想を含む。
<F. Note>
The present embodiment as described above includes the following technical ideas.
 [構成1]
 制御対象を制御するための制御システム(1)であって、
 予め定められた制御周期で処理を繰返し実行する複数のデバイス(100,150)と、
 前記複数のデバイスが接続されたTSN(Time Sensitive Networking)に従うネットワーク(20,22,24,26,28,32,34,36,38)と、
 前記複数のデバイスが実行する処理が前記複数のデバイスの間で同期するように、前記複数のデバイスに対する制御基準時を決定する決定手段(S2)と、
 前記制御基準時に従って、前記ネットワークにおけるトラフィックのスケジュールを計算する計算手段(S6)と、
 前記制御基準時および前記トラフィックのスケジュールを前記複数のデバイスに設定する設定手段(S42,S44)とを備える、制御システム。
[Configuration 1]
A control system (1) for controlling a controlled object,
a plurality of devices (100, 150) that repeatedly execute processing at a predetermined control cycle;
a network (20, 22, 24, 26, 28, 32, 34, 36, 38) according to TSN (Time Sensitive Networking) to which the plurality of devices are connected;
determining means (S2) for determining a control reference time for the plurality of devices such that processes executed by the plurality of devices are synchronized among the plurality of devices;
calculating means (S6) for calculating a schedule of traffic in said network according to said control reference time;
A control system comprising setting means (S42, S44) for setting the control reference time and the traffic schedule to the plurality of devices.
 [構成2]
 前記設定手段は、前記トラフィックのスケジュールを前記ネットワークを構成するスイッチ(200)に設定する(S44)、構成1に記載の制御システム。
[Configuration 2]
The control system according to configuration 1, wherein the setting means sets the schedule of the traffic in the switches (200) constituting the network (S44).
 [構成3]
 前記複数のデバイスのうち隣接するデバイス間の伝搬遅延時間を取得する取得手段をさ(S4)らに備え、
 前記計算手段は、前記伝搬遅延時間に基づいて、前記トラフィックのスケジュールを計算する、構成1または2に記載の制御システム。
[Configuration 3]
(S4) further comprising acquisition means for acquiring a propagation delay time between adjacent devices among the plurality of devices,
3. The control system according to configuration 1 or 2, wherein said calculating means calculates a schedule of said traffic based on said propagation delay time.
 [構成4]
 前記計算手段による計算されたトラフィックのスケジュールが要求を満たさない場合に、設定の変更を受け付けるためのユーザインターフェイス(450,460,470,480)をさらに備える、構成1~3のいずれか1項に記載の制御システム。
[Configuration 4]
4. The configuration according to any one of configurations 1 to 3, further comprising a user interface (450, 460, 470, 480) for accepting a setting change when the traffic schedule calculated by the calculating means does not meet the requirements. Control system as described.
 [構成5]
 前記設定の変更は、前記ネットワークを管理するために必要なデータを含むフレームの送信周期を変更することを含む、構成4に記載の制御システム。
[Configuration 5]
5. The control system according to configuration 4, wherein changing the settings includes changing a transmission cycle of frames containing data necessary for managing the network.
 [構成6]
 前記設定の変更は、前記ネットワークを転送されるフレームにおいて割り当てられるサイクリック通信帯域およびメッセージ通信帯域のうち、前記メッセージ通信帯域を小さくすることを含む、構成4または5に記載の制御システム。
[Configuration 6]
6. The control system according to configuration 4 or 5, wherein the change of setting includes reducing the message communication band among the cyclic communication band and the message communication band allocated in the frame transferred through the network.
 [構成7]
 前記設定の変更は、前記複数のデバイス間でやり取りされるデータの送信周期を変更することを含む、構成4~6のいずれか1項に記載の制御システム。
[Configuration 7]
7. The control system according to any one of configurations 4 to 6, wherein changing the setting includes changing a transmission cycle of data exchanged between the plurality of devices.
 [構成8]
 前記ユーザインターフェイスは、前記ネットワークを構成するスイッチ(200)の交換の提案を通知する、構成4~7のいずれか1項に記載の制御システム。
[Configuration 8]
8. The control system according to any one of the configurations 4-7, wherein the user interface notifies a proposal for replacement of a switch (200) constituting the network.
 [構成9]
 予め定められた制御周期で処理を繰返し実行する複数のデバイス(100,150)と、前記複数のデバイスが接続されたTSN(Time Sensitive Networking)に従うネットワーク(20,22,24,26,28,32,34,36,38)とを含む制御システム(1)に対する設定方法であって、
 前記複数のデバイスが実行する処理が前記複数のデバイスの間で同期するように、前記複数のデバイスに対する制御基準時を決定するステップ(S2)と、
 前記制御基準時に従って、前記ネットワークにおけるトラフィックのスケジュールを計算するステップ(S6)と、
 前記制御基準時および前記トラフィックのスケジュールを前記複数のデバイスに設定するステップ(S42,S44)とを備える、設定方法。
[Configuration 9]
A plurality of devices (100, 150) that repeatedly execute processing at a predetermined control cycle, and a network (20, 22, 24, 26, 28, 32) according to TSN (Time Sensitive Networking) to which the plurality of devices are connected , 34, 36, 38), comprising:
determining a control reference time for the plurality of devices so that the processes executed by the plurality of devices are synchronized among the plurality of devices (S2);
calculating (S6) a schedule of traffic in the network according to the control reference time;
and setting the control reference time and the traffic schedule to the plurality of devices (S42, S44).
 [構成10]
 予め定められた制御周期で処理を繰返し実行する複数のデバイス(100,150)と、前記複数のデバイスが接続されたTSN(Time Sensitive Networking)に従うネットワーク(20,22,24,26,28,32,34,36,38)とを含む制御システム(1)に接続されるネットワークコントローラ(300)であって、
 前記複数のデバイスが実行する処理が前記複数のデバイスの間で同期するように、前記複数のデバイスに対する制御基準時を決定する決定手段(S2)と、
 前記制御基準時に従って、前記ネットワークにおけるトラフィックのスケジュールを計算する計算手段(S6)と、
 前記制御基準時および前記トラフィックのスケジュールを前記複数のデバイスに設定する設定手段(S42,S44)とを備える、ネットワークコントローラ。
[Configuration 10]
A plurality of devices (100, 150) that repeatedly execute processing at a predetermined control cycle, and a network (20, 22, 24, 26, 28, 32) according to TSN (Time Sensitive Networking) to which the plurality of devices are connected , 34, 36, 38), comprising:
determining means (S2) for determining a control reference time for the plurality of devices such that processes executed by the plurality of devices are synchronized among the plurality of devices;
calculating means (S6) for calculating a schedule of traffic in said network according to said control reference time;
and setting means (S42, S44) for setting the control reference time and the traffic schedule to the plurality of devices.
 今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、請求の範囲によって示され、請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。 The embodiments disclosed this time should be considered illustrative in all respects and not restrictive. The scope of the present invention is indicated by the scope of the claims rather than the above description, and is intended to include all modifications within the scope and meaning equivalent to the scope of the claims.
 1 制御システム、20,22,24,26,28,32,34,36,38,40 リンク、42 フィールドバス、50 フィールドデバイス、61,62,63,66 IO通信処理、64 プログラム実行、67,69,483,484,485,486,487 フレーム、68 制御処理、70 伝搬遅延時間、71,72,73 制御基準時、74,75,75A,76,77,77A,78,79 ゲート開期間、80 サイクリック通信帯域、82 メッセージ通信帯域、84 ネットワーク管理帯域、86 設定用帯域、88 空帯域、100 PLC、102,152,302,402 プロセッサ、104,154,304,404 主メモリ、110,160,310,414 ネットワークインターフェイス、112,162,212,312 送受信制御回路、114,164,214,314 送信回路、116,166,216,316 受信回路、120,170,320,420 ストレージ、122,172 システムプログラム、124 ユーザプログラム、130,180 内部バスインターフェイス、132,182 フィールドバスインターフェイス、134 メモリカードインターフェイス、136 メモリカード、138,188,338,438 バス、140,190 I/Oユニット、150 リモートIO装置、174 アプリケーションプログラム、200 スイッチ、218 転送エンジン、220 キュー、222 ゲート、224 振分回路、226 タイミング制御回路、228 スケジュール、300 ネットワークコントローラ、322,422 OS、324,424 ネットワーク設定プログラム、400 サポート装置、406 光学ドライブ、407 記録媒体、408 二次記憶装置、412 USBコントローラ、416 入力部、418 表示部、450,460,470,480 ユーザインターフェイス画面、451,452 同期精度、453 検知精度、454,455,456,457,458,459 精度、461 使用率表、462,463 割り当て設定表、471,472 ネットワーク状態表示、473 メッセージ、481,482 フレーム設定表示。 1 control system, 20, 22, 24, 26, 28, 32, 34, 36, 38, 40 link, 42 field bus, 50 field device, 61, 62, 63, 66 IO communication processing, 64 program execution, 67, 69, 483, 484, 485, 486, 487 frame, 68 control processing, 70 propagation delay time, 71, 72, 73 control reference time, 74, 75, 75A, 76, 77, 77A, 78, 79 gate open period, 80 cyclic communication band, 82 message communication band, 84 network management band, 86 setting band, 88 empty band, 100 PLC, 102, 152, 302, 402 processor, 104, 154, 304, 404 main memory, 110, 160 , 310, 414 network interface, 112, 162, 212, 312 transmission/reception control circuit, 114, 164, 214, 314 transmission circuit, 116, 166, 216, 316 reception circuit, 120, 170, 320, 420 storage, 122, 172 System program, 124 User program, 130, 180 Internal bus interface, 132, 182 Field bus interface, 134 Memory card interface, 136 Memory card, 138, 188, 338, 438 Bus, 140, 190 I/O unit, 150 Remote IO Device, 174 Application program, 200 Switch, 218 Transfer engine, 220 Queue, 222 Gate, 224 Distribution circuit, 226 Timing control circuit, 228 Schedule, 300 Network controller, 322, 422 OS, 324, 424 Network setting program, 400 Support Device, 406 optical drive, 407 recording medium, 408 secondary storage device, 412 USB controller, 416 input section, 418 display section, 450, 460, 470, 480 user interface screen, 451, 452 synchronization accuracy, 453 detection accuracy, 454 , 455, 456, 457, 458, 459 accuracy, 461 usage rate table, 462, 463 allocation setting table, 471, 472 network status display, 473 message, 481, 482 frame setting display.

Claims (10)

  1.  制御対象を制御するための制御システムであって、
     予め定められた制御周期で処理を繰返し実行する複数のデバイスと、
     前記複数のデバイスが接続されたTSN(Time Sensitive Networking)に従うネットワークと、
     前記複数のデバイスが実行する処理が前記複数のデバイスの間で同期するように、前記複数のデバイスに対する制御基準時を決定する決定手段と、
     前記制御基準時に従って、前記ネットワークにおけるトラフィックのスケジュールを計算する計算手段と、
     前記制御基準時および前記トラフィックのスケジュールを前記複数のデバイスに設定する設定手段とを備える、制御システム。
    A control system for controlling a controlled object,
    a plurality of devices that repeatedly execute processing at a predetermined control cycle;
    a network according to TSN (Time Sensitive Networking) to which the plurality of devices are connected;
    determining means for determining a control reference time for the plurality of devices such that processes performed by the plurality of devices are synchronized among the plurality of devices;
    computing means for computing a schedule of traffic in the network according to the control reference time;
    and setting means for setting the control reference time and the traffic schedule to the plurality of devices.
  2.  前記設定手段は、前記トラフィックのスケジュールを前記ネットワークを構成するスイッチに設定する、請求項1に記載の制御システム。 The control system according to claim 1, wherein said setting means sets the schedule of said traffic in switches constituting said network.
  3.  前記複数のデバイスのうち隣接するデバイス間の伝搬遅延時間を取得する取得手段をさらに備え、
     前記計算手段は、前記伝搬遅延時間に基づいて、前記トラフィックのスケジュールを計算する、請求項1または2に記載の制御システム。
    Further comprising acquisition means for acquiring a propagation delay time between adjacent devices among the plurality of devices,
    3. A control system according to claim 1 or 2, wherein said calculating means calculates a schedule of said traffic based on said propagation delay times.
  4.  前記計算手段による計算されたトラフィックのスケジュールが要求を満たさない場合に、設定の変更を受け付けるためのユーザインターフェイスをさらに備える、請求項1~3のいずれか1項に記載の制御システム。 The control system according to any one of claims 1 to 3, further comprising a user interface for accepting a setting change when the traffic schedule calculated by said calculating means does not meet the requirements.
  5.  前記設定の変更は、前記ネットワークを管理するために必要なデータを含むフレームの送信周期を変更することを含む、請求項4に記載の制御システム。 The control system according to claim 4, wherein changing the setting includes changing a transmission cycle of frames containing data necessary for managing the network.
  6.  前記設定の変更は、前記ネットワークを転送されるフレームにおいて割り当てられるサイクリック通信帯域およびメッセージ通信帯域のうち、前記メッセージ通信帯域を小さくすることを含む、請求項4または5に記載の制御システム。 6. The control system according to claim 4 or 5, wherein said change of setting includes reducing said message communication band among a cyclic communication band and a message communication band allocated in a frame transferred through said network.
  7.  前記設定の変更は、前記複数のデバイス間でやり取りされるデータの送信周期を変更することを含む、請求項4~6のいずれか1項に記載の制御システム。 The control system according to any one of claims 4 to 6, wherein changing the setting includes changing a transmission cycle of data exchanged between the plurality of devices.
  8.  前記ユーザインターフェイスは、前記ネットワークを構成するスイッチの交換の提案を通知する、請求項4~7のいずれか1項に記載の制御システム。 The control system according to any one of claims 4 to 7, wherein said user interface notifies a proposal for replacement of switches constituting said network.
  9.  予め定められた制御周期で処理を繰返し実行する複数のデバイスと、前記複数のデバイスが接続されたTSN(Time Sensitive Networking)に従うネットワークとを含む制御システムに対する設定方法であって、
     前記複数のデバイスが実行する処理が前記複数のデバイスの間で同期するように、前記複数のデバイスに対する制御基準時を決定するステップと、
     前記制御基準時に従って、前記ネットワークにおけるトラフィックのスケジュールを計算するステップと、
     前記制御基準時および前記トラフィックのスケジュールを前記複数のデバイスに設定するステップとを備える、設定方法。
    A setting method for a control system including a plurality of devices that repeatedly execute processing at a predetermined control cycle and a network that follows TSN (Time Sensitive Networking) to which the plurality of devices are connected,
    determining a control reference time for the plurality of devices such that processes performed by the plurality of devices are synchronized among the plurality of devices;
    calculating a schedule of traffic in the network according to the control reference time;
    and setting the control reference time and the traffic schedule to the plurality of devices.
  10.  予め定められた制御周期で処理を繰返し実行する複数のデバイスと、前記複数のデバイスが接続されたTSN(Time Sensitive Networking)に従うネットワークとを含む制御システムに接続されるネットワークコントローラであって、
     前記複数のデバイスが実行する処理が前記複数のデバイスの間で同期するように、前記複数のデバイスに対する制御基準時を決定する決定手段と、
     前記制御基準時に従って、前記ネットワークにおけるトラフィックのスケジュールを計算する計算手段と、
     前記制御基準時および前記トラフィックのスケジュールを前記複数のデバイスに設定する設定手段とを備える、ネットワークコントローラ。
    A network controller connected to a control system including a plurality of devices that repeatedly execute processing at a predetermined control cycle and a network that follows TSN (Time Sensitive Networking) to which the plurality of devices are connected,
    determining means for determining a control reference time for the plurality of devices such that processes performed by the plurality of devices are synchronized among the plurality of devices;
    computing means for computing a schedule of traffic in the network according to the control reference time;
    setting means for setting the control reference time and the traffic schedule to the plurality of devices.
PCT/JP2021/034682 2021-03-08 2021-09-22 Control system, setting method, and network controller WO2022190430A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2021036467A JP2022136722A (en) 2021-03-08 2021-03-08 Control system, setting method and network controller
JP2021-036467 2021-03-08

Publications (1)

Publication Number Publication Date
WO2022190430A1 true WO2022190430A1 (en) 2022-09-15

Family

ID=83227775

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/034682 WO2022190430A1 (en) 2021-03-08 2021-09-22 Control system, setting method, and network controller

Country Status (2)

Country Link
JP (1) JP2022136722A (en)
WO (1) WO2022190430A1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005210496A (en) * 2004-01-23 2005-08-04 Nec Corp System and server for network information management and network information management method
JP2009277052A (en) * 2008-05-15 2009-11-26 Toyota Infotechnology Center Co Ltd Distributed device control system
WO2020104946A1 (en) * 2018-11-19 2020-05-28 Telefonaktiebolaget Lm Ericsson (Publ) Output pacing in a cellular communications system serving as a time-sensitive networking (tsn) node

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005210496A (en) * 2004-01-23 2005-08-04 Nec Corp System and server for network information management and network information management method
JP2009277052A (en) * 2008-05-15 2009-11-26 Toyota Infotechnology Center Co Ltd Distributed device control system
WO2020104946A1 (en) * 2018-11-19 2020-05-28 Telefonaktiebolaget Lm Ericsson (Publ) Output pacing in a cellular communications system serving as a time-sensitive networking (tsn) node

Also Published As

Publication number Publication date
JP2022136722A (en) 2022-09-21

Similar Documents

Publication Publication Date Title
US7675919B2 (en) End system scheduling for switched networks
EP2817902B1 (en) Method and network node for processing a precision time protocol
US10489223B2 (en) Methods and apparatus for scheduling time sensitive operations among independent processors
US20200336435A1 (en) Packet Sending Method, Device, and System
US10764201B2 (en) System and method for scheduling communications
US20220029724A1 (en) A tsn enabled controller
US20120120966A1 (en) Method and Apparatus for Allocating and Prioritizing Data Transmission
WO2015196685A1 (en) Clock synchronization method and apparatus
EP3174237B1 (en) Time synchronization method and apparatus for network devices and time synchronization server
CN112929117B (en) Compatible definable deterministic communication Ethernet
US20220321493A1 (en) Method for transmitting data packet and apparatus for implementing the same
Garbugli et al. End-to-end qos management in self-configuring tsn networks
US10531382B2 (en) Offloading MAC/link layer functions
JP4811260B2 (en) Programmable controller and its support device
WO2022190430A1 (en) Control system, setting method, and network controller
CN116233257A (en) Non-clock synchronous flow scheduling method and system
US11652757B2 (en) System and method for enabling TSN-stream configuration
WO2022185586A1 (en) Communication method, communication system, and network controller
KR20230173697A (en) Method, computer program, and apparatus implemented in a packet switched network for scheduling transmission of Ethernet frames
US11075858B2 (en) A664 synch network design
WO2017145292A1 (en) Time-synchronous slave apparatus and communication control method
WO2022185587A1 (en) Communication method, communication system, and switch
US6438633B1 (en) System for providing deterministic performance from a non-deterministic device
WO2022190431A1 (en) Control system, and data transmitting method
Weiss et al. Time signals converging within cyber-physical systems

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21930278

Country of ref document: EP

Kind code of ref document: A1