WO2022113384A1 - 制御装置、通信制御方法、および制御プログラム - Google Patents

制御装置、通信制御方法、および制御プログラム Download PDF

Info

Publication number
WO2022113384A1
WO2022113384A1 PCT/JP2021/008914 JP2021008914W WO2022113384A1 WO 2022113384 A1 WO2022113384 A1 WO 2022113384A1 JP 2021008914 W JP2021008914 W JP 2021008914W WO 2022113384 A1 WO2022113384 A1 WO 2022113384A1
Authority
WO
WIPO (PCT)
Prior art keywords
communication
network
cable
port
redundant configuration
Prior art date
Application number
PCT/JP2021/008914
Other languages
English (en)
French (fr)
Inventor
健一 岩見
泰士 福田
Original Assignee
オムロン株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by オムロン株式会社 filed Critical オムロン株式会社
Publication of WO2022113384A1 publication Critical patent/WO2022113384A1/ja

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]
    • H04L12/42Loop networks
    • H04L12/437Ring fault isolation or reconfiguration

Definitions

  • the present invention relates to a control device that can be connected to a network, a communication control method in the control device, and a control program for realizing the control device.
  • the communication frame transmitted by the communication master circulates through all the communication slaves and then returns to the communication master.
  • a daisy chain connection is adopted as a topology for circulating communication frames.
  • the communication frame reciprocates on the same route, so if any failure occurs on the path, the communication frame cannot be transferred to a stage after the position where the failure occurred.
  • a topology that adds a route from the slave connected to the final stage of the daisy chain connection to the communication master has also been put into practical use.
  • Such a topology is referred to as a ring connection. That is, the daisy chain connection has a non-redundant configuration, while the ring connection has a redundant configuration.
  • Patent Document 1 discloses a master device capable of easily knowing an illegal route in a network including a ring topology.
  • An object of an aspect of the present invention is to provide a solution to a new problem that arises in a network including a plurality of redundant configurations.
  • a control device that operates as a communication master in a network including one or more communication slaves.
  • the communication frames transmitted from the communication master are sequentially transferred so as to go around the network and return to the communication master, and each of the plurality of communication slaves has an IN port and an OUT port.
  • the control device is a monitoring means for monitoring the communication status in the network, and when a disconnection of any cable included in the network is detected, the communication slave connected to the cable in which the disconnection is detected satisfies the release condition. Includes a means of determining whether or not.
  • the release condition includes that the cable connected to the IN port of the target communication slave is disconnected and the communication frame can be received at the OUT port.
  • the control device includes a management means for canceling the redundant configuration included in the network when the cancellation condition is satisfied.
  • disconnect refers to, for example, that the path of interest (cable, etc.) is physically disconnected and, by some means, no signal flows. Can include. As such, the term “disconnect” can include logically disconnecting a connection in addition to physically disconnecting it.
  • the redundant configuration included in the network is canceled.
  • the cable is further disconnected in the redundant configuration, a problem such as the communication frame being discarded may occur, but the occurrence of such a problem can be prevented.
  • the management means may give a command to close the OUT port to the communication slave to which the cable to be disconnected in order to cancel the target redundant configuration is connected to the OUT port. According to this configuration, since the redundant configuration can be logically canceled, it can be flexibly realized by using software without preparing additional equipment or the like.
  • Each of the redundant configurations included in the network is provided with a switch on the cable to be disconnected in order to cancel the redundant configuration.
  • the management means may give a command for each of the switches provided in the target redundant configuration to disconnect the cable. According to this configuration, the target cable can be physically cut, so that the redundant configuration can be canceled more reliably.
  • the determination means is that the cable in which the disconnection is detected is included in one of the redundant configurations, and the cable in which the disconnection is detected is not the cable to be disconnected in order to cancel the redundant configuration. May be determined to be satisfied. According to this configuration, it can be determined whether or not the release condition is satisfied based on the position of the cable in which the disconnection is detected.
  • the communication frame may be discarded.
  • the management means may reconfigure the disconnected redundant configuration when the cable in which disconnection is detected is reconnected. According to this configuration, the original redundant configuration can be maintained by recovering from the failure that occurred in the cable.
  • the control device may further include a notification means for notifying the state in which the redundant configuration included in the network is released. According to this configuration, for example, the user can easily know that the redundant configuration has been released, thereby taking necessary measures.
  • the control device further includes an execution means for executing the user program.
  • the user program can refer to the information indicating whether or not the redundant configuration included in the network has been released. According to this configuration, for example, the process executed by the user program can be switched based on whether or not the redundant configuration is canceled.
  • a communication control method executed by a control device that operates as a communication master in a network including one or a plurality of communication slaves.
  • the communication frames transmitted from the communication master are sequentially transferred so as to go around the network and return to the communication master.
  • Each of the plurality of communication slaves has an IN port and an OUT port.
  • the communication control method is a step of monitoring the communication status in the network, and when a disconnection of any of the cables included in the network is detected, the communication slave connected to the cable in which the disconnection is detected satisfies the cancellation condition. Includes a step to determine whether or not.
  • the release condition includes that the cable connected to the IN port of the target communication slave is disconnected and the communication frame can be received at the OUT port.
  • the communication control method includes a step of canceling the redundant configuration included in the network when the cancellation condition is satisfied.
  • a control program executed by a computer operating as a communication master in a network including one or more communication slaves.
  • the communication frames transmitted from the communication master are sequentially transferred so as to go around the network and return to the communication master.
  • Each of the plurality of communication slaves has an IN port and an OUT port.
  • the control program tells the computer a step to monitor the communication status in the network, and when a disconnection of any of the cables contained in the network is detected, the communication slave connected to the cable in which the disconnection is detected sets the release condition. Perform the steps to determine whether or not to meet.
  • the release condition includes that the cable connected to the IN port of the target communication slave is disconnected and the communication frame can be received at the OUT port.
  • the control program causes the computer to perform the step of removing the redundant configuration included in the network when the release condition is satisfied.
  • PLC is an example of a control device that operates as a communication master (hereinafter, also simply referred to as “master”) in a network including one or more communication slaves (hereinafter, also simply referred to as “slave”). (Programmable logic controller) is assumed. Further, as the network, a network according to EtherCAT is typically assumed. In a network according to EtherCAT, communication frames transmitted from a master control unit (PLC) are sequentially transferred so as to go around the network and return to the control unit.
  • master communication master
  • PLC master control unit
  • FIG. 1 is a diagram for explaining a connection in a communication control method according to the present embodiment.
  • FIG. 1A shows an example of a daisy chain connection (non-redundant configuration)
  • FIG. 1B shows an example of a ring connection (redundant configuration).
  • the daisy-chained control system 1A includes a PLC100, which is an example of a control device that operates as a master, a relay device 300, and one or more devices 200-1 to that that operate as slaves. Includes 200-5 (hereinafter, also collectively referred to as "device 200").
  • the PLC 100 has a port 151 for transmitting and receiving communication frames.
  • Each of the devices 200-1 to 200-5 has an IN port 251 (first port) and an OUT port 252 (second port) for transmitting and receiving communication frames.
  • the IN port 251 is a port to which a communication frame is input
  • the OUT port 252 is a port to which a communication frame is output.
  • the name of the IN port 251 and the OUT port 252 is not limited, and communication frames can be received and transmitted on any of the ports.
  • the relay device 300 has a first port 351 and a second port 352, a third port 353, a fourth port 354, a fifth port 355, and a sixth port 356 for transmitting and receiving communication frames.
  • the relay device 300 receives a communication frame at a certain port, the relay device 300 transmits the received frame from another port determined according to a predetermined rule.
  • the first port 351 ⁇ the second port 352 ⁇ the third port 353 ⁇ ... may be determined cyclically.
  • the PLC 100, the relay device 300, and the device 200 are connected in this order. More specifically, the communication frame transmitted from the port 151 of the PLC 100 is the cable 20, the first port 351 of the relay device 300, the second port 352 of the relay device 300, the cable 21, and the IN port 251 of the device 200-1. , OUT port 252 of device 200-1, cable 22, IN port 251 of device 200-2, OUT port 252 of device 200-2, cable 23, IN port 251 of device 200-3, OUT port of device 200-3. It is transferred in the order of 252, cable 24, IN port 251 of device 200-4, OUT port 252 of device 200-4, cable 25, IN port 251 of device 200-5, and then to port 151 of PLC100 via the same route. return.
  • the communication frame can transmit the cables 20 to 25 connected to the slave in both directions.
  • the IN port 251 and the OUT port 252 of the device 200 both transmit and receive the communication frame.
  • the communication frame cannot be transferred beyond the failed part. Therefore, it can be regarded as a "non-redundant configuration" having no redundancy for failures.
  • non-redundant configuration in the present specification means a topology in which a slave that cannot receive a communication frame may occur when the cable connecting the slaves is disconnected.
  • a daisy chain connection is known as an example of a “non-redundant configuration".
  • the daisy chain connection there is a device 200 (slave) to which no cable is connected to the OUT port 252.
  • the ring-connected control system 1B with reference to FIG. 1 (B) has an OUT port 252 of the device 200-5 and a third port 353 of the relay device 300 as compared to the daisy chain connection shown in FIG. 1 (A).
  • a cable 26 for connecting to and is added. With the addition of the cable 26, the communication frame arriving at the device 200-5 will be transmitted from the OUT port 252 of the device 200-5 instead of the IN port 251 of the device 200-5. Then, it returns to the port 151 of the PLC 100 via the cable 26 and the relay device 300.
  • the cable 26 is a cable forming a detour and constitutes at least a part of the redundant path. That is, by adding the cable 26, the communication frame transmitted from the second port 352 of the relay device 300 passes through the devices 200-1 to 200-5 and returns to the third port 353 of the relay device 300. A loop path is constructed. In such a ring connection, the communication frame transmits each of the cables 20 to 26 connected to the slave in one direction. As a result, the IN port 251 of the device 200 is in charge of receiving the communication frame, and the OUT port 252 of the device 200 is in charge of transmitting the communication frame.
  • the path that the communication frame goes around as described above is also called "redundant configuration".
  • the range including the relay device 300 and the devices 200-1 to 200-5 corresponds to the redundant configuration 10.
  • the "redundant configuration" in the present specification means a topology in which a cycle of communication frames can be continued even if a cable connecting slaves is disconnected.
  • a ring connection or the like is known as an example of a "redundant configuration”.
  • the cable is connected to the IN port 251 and the OUT port 252 of all the devices 200.
  • the remaining devices can be transmitted via the redundant path by folding back the communication frame at the failed portion. ..
  • FIG. 2 is a schematic diagram showing a control system 1 including a plurality of redundant configurations 10 shown in FIG. 1 (A).
  • the control system 1 includes three redundant configurations 10-1, 10-2, 10-3.
  • the ring connection is configured by the cables 21 to 26, in the redundant configuration 10-2, the ring connection is configured by the cables 31 to 36, and in the redundant configuration 10-3, the cables 41 to 46 are configured.
  • a ring connection is configured with.
  • FIG. 3 is a diagram for explaining the behavior of the communication frame when a failure occurs at one location in the control system 1 shown in FIG. With reference to FIG. 3, for example, it is assumed that a failure such as a disconnection occurs in the cable 23 connecting the OUT port 252 of the device 200-2 of the redundant configuration 10-1 and the IN port 251 of the device 200-3. ..
  • the device 200-2 since the communication frame cannot be transmitted from the OUT port 252 of the device 200-2, the device 200-2 transmits the communication frame from the IN port 251 instead of the OUT port 252.
  • the communication frame includes the cable 22, the OUT port 252 of the device 200-1, the IN port 251 of the device 200-1, the cable 21, the third port 353 of the relay device 300, the cable 26, and the OUT port of the device 200-5. 252, IN port 251 of device 200-5, cable 25, OUT port 252 of device 200-4, IN port 251 of device 200-4, cable 24, OUT port 252 of device 200-3, IN of device 200-3.
  • Port 251 (folded back), OUT port 252 of device 200-3, cable 24, IN port 251 of device 200-4, OUT port 252 of device 200-4, cable 25, IN port 251 of device 200-5, device 200 It is transferred in the order of -5 OUT port 252 and cable 26.
  • the communication frame passes through all the devices 200 included in the redundant configuration 10-1. That is, in the control system 1, communication is continued even if a failure occurs in any one of the locations.
  • FIG. 4 is a diagram for explaining the behavior of the communication frame when two failures occur in the control system 1 shown in FIG.
  • the cable 33 connecting the OUT port 252 of the device 200-2 of the redundant configuration 10-2 and the IN port 251 of the device 200-3 is also disconnected. Imagine a failure.
  • the device 200-2 since the communication frame cannot be transmitted from the OUT port 252 of the device 200-2 not only in the redundant configuration 10-1 but also in the redundant configuration 10-2, the device 200-2 replaces the OUT port 252 with an IN.
  • a communication frame is transmitted from port 251.
  • the communication frame includes the cable 32, the OUT port 252 of the device 200-1, the IN port 251 of the device 200-1, the cable 31, the third port 353 of the relay device 300, the cable 36, and the OUT port of the device 200-5. 252, IN port 251 of device 200-5, cable 35, OUT port 252 of device 200-4, IN port 251 of device 200-4, cable 34, OUT port 252 of device 200-3, IN of device 200-3. It is transferred in the order of port 251 but is discarded when the communication frame reaches IN port 251 of the device 200-3.
  • the communication frame is discarded. As a result, the communication frame does not return to the master and communication cannot be continued.
  • the inventors of the present application have discovered a new problem that communication frames cannot be transferred when a plurality of failures occur in a network having such a redundant configuration.
  • the Circulating bit is allocated to an area called EtherCAT Datagrams of the communication frame.
  • the initial value of the Circulating bit of the communication frame transmitted from the master is set to "0".
  • Circulation bit is "0", it means that the communication frame has not circulated, and if the Circulation bit is "1", it means that the communication frame has circulated only once.
  • each of the devices 200 receives a communication frame (at OUT port 252) when the IN port 251 is linked off (a state in which communication cannot be performed due to some failure), the value of the Circulating bit included in the received communication frame is set. Depending on the situation, one of the following processes is executed.
  • the control system provides a means for preventing the communication frame from being transferred when there is a possibility that the communication frame cannot be transferred as described above.
  • the configuration, processing, function, and the like for realizing such means will be described in detail.
  • FIG. 5 is a schematic diagram showing a hardware configuration example of the PLC100 of the control system 1 according to the present embodiment.
  • the PLC 100 includes, as main hardware components, a processor 102, a main memory 104, a storage 110, a field network controller 112, and a local bus controller 114. These hardware components are electrically connected via the internal bus 118.
  • the processor 102 corresponds to an arithmetic processing unit that executes control operations, and is composed of a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), and the like. Specifically, the processor 102 reads out the program stored in the storage 110, expands it in the main memory 104, and executes it to realize control operations according to the control target and various processes as described later. do. In the configuration example shown in FIG. 5, the processor 102 periodically executes the user program 1104.
  • a CPU Central Processing Unit
  • GPU Graphics Processing Unit
  • the main memory 104 is composed of a volatile storage device such as a DRAM (Dynamic Random Access Memory) or a SRAM (Static Random Access Memory).
  • the storage 110 is composed of, for example, a non-volatile storage device such as an SSD (Solid State Drive) or an HDD (Hard Disk Drive).
  • the storage 110 stores a system program 1102 for realizing basic functions, a user program 1104 created according to a control target, a system setting information 1106 for determining a process as described later, and the like.
  • the system program 1102 can be regarded as at least a part of the control program in order to realize the basic functions in the PLC 100.
  • the field network controller 112 corresponds to a communication unit and is connected to a network configured so that communication frames make a round. More specifically, the field network controller 112 has a port 151 and is in charge of transmission / reception processing of communication frames.
  • the field network controller 112 of the PLC 100 functions as a communication master (master).
  • the field network controller 112 may have a synchronization counter for periodically transmitting and receiving communication frames.
  • the local bus controller 114 is electrically connected to one or more functional units 116 via the internal bus 118.
  • the functional unit 116 includes a function of exchanging various signals with a controlled object.
  • the functional unit 116 has, for example, a DI (Digital Input) function that receives a digital signal from a controlled object, a DO (Digital Output) function that outputs a digital signal to the controlled object, and an AI (Analog) that receives an analog signal from the controlled object. It has one or more of the Input) function and the AO (Analog Output) function that outputs an analog signal to the controlled object.
  • the functional unit 116 may include a controller equipped with special functions such as PID (Proportional Integral Derivative) control and motion control.
  • FIG. 5 shows a configuration example in which the necessary functions are provided by the processor 102 executing a program, and some or all of these provided functions are provided by a dedicated hardware circuit (for example, ASIC). It may be implemented using (Application Specific Integrated Circuit) or FPGA (Field-Programmable Gate Array). Alternatively, the main part of the PLC 100 may be realized by using hardware that follows a general-purpose architecture (for example, an industrial personal computer based on a general-purpose personal computer). In this case, a virtualization technique may be used to execute a plurality of OSs (Operating Systems) having different uses in parallel, and to execute necessary applications on each OS.
  • OSs Operating Systems
  • a configuration in which functions such as a display device and a support device are integrated into the PLC 100 may be adopted.
  • FIG. 6 is a schematic diagram showing a hardware configuration example of the device 200 of the control system 1 according to the present embodiment.
  • the device 200 includes, as main hardware components, a control circuit 206, a field network controller 212, and a functional module 220.
  • the control circuit 206 is an arithmetic processing unit that proactively executes processing in the device 200.
  • the control circuit 206 typically includes a processor 202, a main memory 204, and a storage 210.
  • the processor 202 is composed of a CPU, a GPU, and the like.
  • the main memory 204 is composed of a volatile storage device such as DRAM or SRAM.
  • the storage 210 is composed of, for example, a non-volatile storage device such as an SSD.
  • a ROM (Read Only Memory) may be adopted as the storage 210.
  • the control circuit 206 may be mounted using a dedicated hardware circuit (for example, ASIC or FPGA).
  • the field network controller 212 has an IN port 251 and an OUT port 252, and is in charge of transmission / reception processing of communication frames.
  • the field network controller 212 of the device 200 functions as a communication slave (slave).
  • the field network controller 212 may have a synchronization counter for periodically transmitting and receiving communication frames.
  • the functional module 220 is in charge of processing for exchanging various signals with the controlled object.
  • FIG. 7 is a schematic diagram showing a hardware configuration example of the relay device 300 of the control system 1 according to the present embodiment.
  • the relay device 300 includes a control circuit 306 and a field network interface 312 as main hardware components.
  • the control circuit 306 is an arithmetic processing unit that independently executes the transfer processing of the communication frame in the relay device 300.
  • the control circuit 306 typically includes a processor 302, a main memory 304, and a storage 310.
  • the processor 302 is composed of a CPU, a GPU, and the like.
  • the main memory 304 is composed of a volatile storage device such as DRAM or SRAM.
  • the storage 310 is composed of, for example, a non-volatile storage device such as an SSD. A ROM may be adopted as the storage 310.
  • the control circuit 306 may be mounted using a dedicated hardware circuit (for example, ASIC or FPGA).
  • the field network interface 312 has a first port 351 and a second port 352 and a third port 353, a fourth port 354, a fifth port 355, and a sixth port 356, and is a receiving circuit and transmission (not shown) of a communication frame. Includes circuit.
  • the control system provides means for preventing the communication frame from being unable to be transferred when the communication frame may not be able to be transferred as described above.
  • the device 200 to which the IN port 251 is linked off receives the communication frame on the OUT port 252, the value of the Circulating bit is evaluated. That is, it is sufficient to avoid a situation in which there are a plurality of devices 200 to which the IN port 251 is linked off and the devices 200 can receive a communication frame on the OUT port 252. As a method of avoiding such a situation, it is conceivable to prevent the communication frame from transmitting the redundant path when the IN port 251 of any device 200 is linked off. That is, the IN port 251 of the device 200 may be linked off due to various factors, but if the redundant path is disconnected, the communication frame will not be received by the OUT port 252 of the device 200. As a result, even if a plurality of devices 200 whose IN port 251 is linked off occur, the communication frame does not reach the OUT port 252 of those devices 200, so that the communication frame is discarded during transmission. There is no.
  • the control system when the IN port 251 is linked off and the device 200 whose communication frame can reach the OUT port 252 is detected on the network, the redundancy included in the network is included.
  • the redundant path is disconnected for the redundant configuration 10 other than the redundant configuration 10 including the detected device 200 in the configuration 10.
  • the IN port 251 is linked off, and there is no longer a plurality of devices 200 that the communication frame can reach the OUT port 252, and it is possible to prevent the communication frame from being discarded during transmission.
  • the cancellation condition for canceling the redundant configuration 10 is that the cable connected to the IN port 251 of the target device 200 (slave) is disconnected and the communication frame can be received by the OUT port 252. include.
  • the cable in which the disconnection is detected is included in any of the redundant configurations 10, and the cable in which the disconnection is detected is the cable to be disconnected in order to cancel the redundant configuration 10 ( If it is not a redundant route), it can be determined that the cancellation condition is satisfied.
  • FIG. 8 is a diagram for explaining a method for preventing discarding of a communication frame in the control system 1 according to the present embodiment during transmission.
  • a failure such as a disconnection occurs in the cable 23 connecting the OUT port 252 of the device 200-2 of the redundant configuration 10-1 and the IN port 251 of the device 200-3. ..
  • the cable 23 is disconnected from the ring connection to the non-ring connection, the IN port 251 is linked off, and the communication frame can reach the OUT port 252. Will not occur further.
  • the cable 36 and the cable 46 which are redundant paths, are disconnected, so that the ring connection (redundant configuration 10) is changed to the daisy chain connection (non-redundant configuration). Therefore, for any of the devices 200, the communication frame does not reach the OUT port 252.
  • Implementation example 1 Logical cancellation>
  • the path through which the communication frame is transmitted can be logically disconnected or connected by a command from the master.
  • each of the devices 200 has an ESC (EtherCAT Slave Controller), and each of its own ports can be arbitrarily opened and closed according to a command from the master. By closing a port, it is possible to make it logically disconnected (link off) even if it is physically connected to another port via a cable.
  • the master PLC100 has system setting information 1106 (see FIG. 5).
  • the system setting information 1106 includes (1) a cable connecting all slaves and slaves constituting the network, (2) a redundant configuration 10 composed of slaves and cables, and (3) a cable serving as a redundant path in the redundant configuration 10. , Includes information such as.
  • the master PLC100 can grasp the slaves and the network topology included in the target network. Further, the PLC 100, which is a master, can acquire information such as a transfer route based on the information included in the communication frame that has circled the network and returned to the master.
  • FIG. 9 is a schematic diagram showing a main part of a functional configuration related to communication processing of the PLC 100 included in the control system 1 according to the present embodiment.
  • the PLC 100 includes a communication status monitoring module 150, a cancellation necessity determination module 152, a network management module 154, and a notification module 156 as a functional configuration related to the network.
  • the functional configuration shown in FIG. 9 is typically realized by the processor 102 of the PLC 100 executing the system program 1102 (FIG. 5).
  • the circuit configuration included in the field network controller 112 of the PLC 100 may realize all or part of the functional configuration shown in FIG.
  • the communication status monitoring module 150 monitors the communication status in the network. More specifically, the communication status monitoring module 150 determines the communication status of the device 200 included in the network (for example, whether or not there is a response) and the communication status of the cable connecting the devices 200 (connecting / disconnecting). Monitor. The communication status monitoring module 150 can detect that one of the cables has been disconnected or has been reconnected based on the change in the communication status.
  • the cancellation necessity determination module 152 determines the necessity of cancellation or reconfiguration of the redundant configuration 10 according to the detection result of the cable disconnection or reconnection by the communication status monitoring module 150. For example, when the disconnection of any of the cables included in the network is detected in the release necessity determination module 152, whether the device 200 (communication slave) connected to the cable in which the disconnection is detected satisfies the release condition. Judge whether or not.
  • the network management module 154 cancels the redundant configuration 10 included in the network. That is, the network management module 154 opens or closes the port to the device 200 connected to the target redundant route according to the determination result that the release condition by the release necessity determination module 152 is satisfied. Generate and send commands. More specifically, the network management module 154 provides the OUT port 252 to the device 200 (communication slave) to which the cable to be disconnected in order to cancel the target redundant configuration 10 is connected to the OUT port 252. Give a command to close. For example, in the example shown in FIG. 8, the PLC 100 transmits a command to open the OUT port 252 to the device 200-5 of the redundant configuration 10-2, and the device 200-5 of the redundant configuration 10-3. Is sent a command to open the OUT port 252. By these commands, the cable 36 and the cable 46, which are redundant paths, are logically disconnected.
  • the network management module 154 may reconnect the cable 36 and the cable 46, which are redundant paths, when the failure that has occurred in the cable 23 is recovered. That is, the network management module 154 may reconfigure all the redundant configurations that have been released when the cable in which the disconnection is detected is reconnected. In the example shown in FIG. 8, the network management module 154 sends a command to the device 200-5 of the redundant configuration 10-2 to close the OUT port 252, and the device 200- of the redundant configuration 10-3. A command to close the OUT port 252 is transmitted to 5.
  • the notification module 156 transmits information such as the communication status of the network, the change in the communication status, and the transmission of the redundant route disconnection command to the outside.
  • the notification module 156 may notify any output destination of the state in which the redundant configuration included in the network has been released by any method.
  • FIG. 10 is a flowchart relating to the communication control method in the implementation example 1 of the PLC100 included in the control system 1 according to the present embodiment.
  • Each step shown in FIG. 10 is typically realized by the processor 102 of the PLC 100 executing the system program 1102 (FIG. 5).
  • the circuit configuration included in the field network controller 112 of the PLC 100 may perform all or part of the steps shown in FIG.
  • the PLC 100 monitors the communication state in the network (step S100). Then, the PLC 100 determines whether or not the disconnection of any of the cables included in the network is detected (step S102).
  • step S104 determines whether or not the reconnection of any of the cables included in the network is detected. If the reconnection of any of the cables included in the network is not detected (NO in step S104), the process of step S100 or less is repeated.
  • the PLC 100 determines whether the device 200 (communication slave) connected to the cable in which the disconnection is detected satisfies the release condition. To judge.
  • the PLC 100 identifies the position of the cut cable (step S110) and determines whether or not the cut cable is a cable having any redundant configuration (step S112).
  • step S112 If the disconnected cable is not a redundant cable (NO in step S112), the PLC 100 notifies the disconnected cable and related device 200 information (step S114). Then, the processing of step S100 or less is repeated.
  • the PLC 100 determines whether or not the disconnected cable constitutes a redundant path (step S116).
  • step S116 If the disconnected cable constitutes a redundant path (YES in step S116), the PLC 100 has released the information on the disconnected cable and the related device 200, as well as the redundant configuration 10 including the disconnected cable. Is notified (step S118). Then, the processing of step S100 or less is repeated.
  • step S116 the PLC 100 sends a command for disconnecting the redundant path to the corresponding device 200 for a redundant configuration other than the redundant configuration including the disconnected cable. Transmit (step S120). That is, if NO in step S116, it means that the cancellation condition is satisfied, and the PLC 100 cancels the redundant configuration included in the network. Then, the PLC 100 notifies the information of the disconnected cable and the related device 200, and that all the redundant configurations are released (step S122). Then, the processing of step S100 or less is repeated.
  • the PLC100 locates the reconnected cable (step S130) and the reconnected cable is one of the redundant cables. It is determined whether or not there is (step S132).
  • step S132 If the reconnected cable is not a redundant cable (NO in step S132), the PLC 100 notifies the information of the reconnected cable and the related device 200 (step S134). Then, the processing of step S100 or less is repeated.
  • the PLC100 determines whether or not the reconnected cable is a cable constituting a redundant path (step S136).
  • step S136 If the reconnected cable constitutes a redundant path (YES in step S136), the PLC 100 recovers the redundant configuration including the reconnected cable and related device 200 information, as well as the reconnected cable. Notify that there is (step S138). Then, the processing of step S100 or less is repeated.
  • the PLC 100 corresponds to a command for reconnecting the redundant path for a redundant configuration other than the redundant configuration including the reconnected cable. It is transmitted to the device 200 (step S140). Then, the PLC 100 notifies the information of the reconnected cable and the related device 200, and that all the redundant configurations have been restored (step S142). Then, the processing of step S100 or less is repeated.
  • FIG. 11 is a schematic diagram showing implementation example 2 of the control system 1 according to the present embodiment.
  • the control system 1 includes a connection management device 500 and switches 510-1, 510-2, 510-3 (hereinafter, also collectively referred to as “switch 510”).
  • the switch 510-1 can physically disconnect and connect the cable 26, which is a redundant path of the redundant configuration 10-1.
  • the switch 510-2 can physically disconnect and connect the cable 36, which is a redundant path of the redundant configuration 10-2.
  • the switch 510-3 can physically disconnect and connect the cable 46, which is a redundant path of the redundant configuration 10-3.
  • the structure of the switch 510 may be any structure as long as it can block the electric signal flowing through the cable.
  • each of the redundant configurations 10-1, 10-2, and 10-3 included in the network has the cable 26, which should be cut in order to release the redundant configurations 10-1, 10-2, and 10-3.
  • Switches 510-1, 510-2, and 510-3 are provided on 36 and 46, respectively.
  • the network management module 154 (see FIG. 9) of the PLC 100 gives a command for each of the switches 510 provided in the target redundant configuration 10 to disconnect the cable.
  • the connection management device 500 causes the designated switch 510 to disconnect and connect the cable corresponding to the redundant path in response to the command from the PLC 100.
  • the network management module 154 may give a command for each of the switches 510 provided in all the disconnected redundant configurations 10 to reconnect the cable when the cable in which the disconnection is detected is reconnected. ..
  • FIG. 12 is a flowchart relating to the communication control method in the implementation example 2 of the PLC100 included in the control system 1 according to the present embodiment.
  • Each step shown in FIG. 12 is typically realized by the processor 102 of the PLC 100 executing the system program 1102 (FIG. 5).
  • the circuit configuration included in the field network controller 112 of the PLC 100 may perform all or part of the steps shown in FIG.
  • step S120 of the flowchart shown in FIG. 10 is changed to step S120A, and step S140 is changed to step S140A.
  • step S120A the PLC 100 transmits a command for disconnecting the redundant path to the connection management device 500 for the redundant configuration 10 other than the redundant configuration 10 including the disconnected cable (step S120A).
  • the connection management device 500 drives the corresponding switch 510 according to a command from the PLC 100 to disconnect the redundant path in which each switch 510 is arranged.
  • step S140A the PLC 100 transmits a command for reconnecting the redundant path to the connection management device 500 for the redundant configuration 10 other than the redundant configuration 10 including the reconnected cable (step S140A).
  • the connection management device 500 drives the corresponding switch 510 according to a command from the PLC 100 to reconnect the redundant path in which each switch 510 is arranged.
  • the redundant configuration 10 can be physically released and reconfigured.
  • FIG. 13 is a schematic diagram showing a hardware configuration example of the support device 400 of the control system 1 according to the present embodiment.
  • the support device 400 is realized, for example, by using hardware (for example, a general-purpose personal computer) that follows a general-purpose architecture.
  • the support device 400 provides an integrated development environment in which the control system 1 can be set for the PLC 100 and the device 200, and the user program 1104 executed by the PLC 100 can be created in an integrated manner. In the integrated development environment, debugging and simulation may be possible.
  • the support device 400 has, as main hardware components, a processor 402, a main memory 404, an input unit 406, a display unit 408, a storage 410, a communication controller 412, and an optical drive 416. , USB controller 424 and so on. These hardware components are electrically connected via the internal bus 228.
  • the processor 402 is composed of a CPU, a GPU, or the like, and realizes a function as a support device 400 by reading a program stored in the storage 410, expanding it to the main memory 404, and executing the program.
  • the main memory 404 is composed of a volatile storage device such as DRAM or SRAM.
  • the storage 410 is composed of, for example, a non-volatile storage device such as an HDD or SSD.
  • the storage 410 stores an OS 4102 for realizing basic functions, a development program 4104 for realizing an integrated development environment, and the like.
  • the development program 4104 is executed by the processor 402 to provide an integrated development environment.
  • the input unit 406 is composed of a keyboard, a mouse, and the like, and receives user operations.
  • the display unit 408 is composed of a display, various indicators, and the like, and outputs a processing result from the processor 402 and the like.
  • the communication controller 412 exchanges data with an arbitrary information processing device via an arbitrary upper network.
  • the optical drive 416 reads arbitrary data from a storage medium 418 (for example, an optical storage medium such as a DVD) that non-transiently stores a computer-readable program, and writes arbitrary data to the storage medium 418. Can be done.
  • a storage medium 418 for example, an optical storage medium such as a DVD
  • the USB controller 424 exchanges data with any information processing device via a USB connection.
  • the program stored in the storage medium 418 that temporarily stores the computer-readable program may be read and installed in the storage 410 or the like.
  • various programs executed by the support device 400 may be installed by downloading from a server device or the like on the network.
  • the function provided by the support device 400 according to the present embodiment may be realized by using a part of the module provided by the OS 4102.
  • the support device 400 may be removed from the PLC 100 while the control system 1 is in operation.
  • Information can be presented to the user in any display mode via the support device 400.
  • the user interface screen shown below may be realized by the processor 402 of the support device 400 executing a program such as the OS 4102 and the development program 4104.
  • FIG. 14 is a schematic diagram showing an example of a user interface screen provided by the support device 400 of the control system 1 according to the present embodiment.
  • the user interface screen 450 includes an object 452 showing the network configuration.
  • an object 454 indicating the occurrence of a failure is displayed in association with a location where some kind of failure has occurred.
  • the characters "Failure is occurring" are displayed together with the object 454.
  • the user can see at a glance the position where the failure has occurred in the network by referring to the user interface screen 450 as shown in FIG.
  • the redundant path is also disconnected for the other redundant configuration 10.
  • the user interface screen 450 also displays an object 456 indicating that all the redundant configurations 10 have been released.
  • the user interface screen 450 may also display the disconnected redundant route.
  • the disconnected redundant route is not an essential obstacle, the disconnected redundant route may not be displayed in order to prevent user confusion.
  • FIG. 15 is a schematic diagram showing another example of the user interface screen provided by the support device 400 of the control system 1 according to the present embodiment.
  • the user interface screen 460 includes a list display object 462 indicating the state of each port of the device 200 (slave) included in the network.
  • the list display object 462 includes identification information 464 for identifying each slave, an IN port display 466 indicating the IN port 251 of each slave, and an OUT port display 468 indicating the OUT port 252.
  • a status display 467 indicating the status of the slave IN port 251 is displayed in association with the IN port display 466.
  • a status display 469 indicating the status of the slave OUT port 252 is displayed in association with the OUT port display 468.
  • the OUT port 252 of the device 200-2 (slave 02) and the IN port 251 of the device 200-3 (slave 03) are “link off”. Is displayed.
  • the user can grasp at a glance the location of the failure in the network.
  • the display mode may be different from that of "connecting" which means a normal state.
  • FIG. 16 is a schematic diagram showing still another example of the user interface screen provided by the support device 400 of the control system 1 according to the present embodiment.
  • the user interface screen 470 includes an event log 472 relating to the network.
  • the event log 472 may be generated according to an event registered in advance in the PLC 100. In the example shown in FIG. 16, the event log 472 is generated at the timing when the failure as shown in FIG. 3 occurs, and another event log 472 is generated at the timing when the redundant configuration 10 is canceled.
  • any user interface screen can be used to provide necessary information to the user.
  • An HMI may be provided in the control system 1 and necessary information may be displayed on the HMI.
  • the information displayed on the HMI may have the same contents as the user interface screens shown in FIGS. 14 to 16 described above.
  • a user interface screen arbitrarily created according to the control target controlled by the control system 1 may be used. That is, it is possible to provide necessary information to the user by using an arbitrary user interface screen.
  • the HMI may be realized by using hardware that follows a general-purpose architecture (for example, an industrial personal computer based on a general-purpose personal computer).
  • the PLC 100 can acquire the network status, the acquired network status may be referred to by a user program.
  • FIG. 17 is a diagram showing an example of a user program 1104 executed by the PLC 100 of the control system 1 according to the present embodiment.
  • the user program 1104 has available a variable indicating whether or not the redundant configuration 10 is released.
  • the variable 160 used as the A contact is turned ON when the redundant configuration 10 is maintained, and the variable 162 used as the B contact is turned ON when the redundant configuration 10 is released.
  • information indicating whether or not the redundant configuration 10 included in the network is canceled can be referred to.
  • the processing block 164 defines the processing when the network is normal, and the processing block 166 defines the processing when some kind of failure occurs in the network. ..
  • the variable 160 is used as the execution condition of the processing block 164, and the variable 162 is used as the execution condition of the processing block 166.
  • FIG. 17 shows an example in which a variable indicating whether or not the redundant configuration 10 is released is used, but the present invention is not limited to this, and a state indicating whether or not the redundant configuration 10 is released is acquired as necessary.
  • a dedicated instruction may be prepared, or an event generated when the redundant configuration 10 is canceled may be prepared.
  • the user may be notified that it is necessary to cancel all the redundant configurations 10 included in the network.
  • any communication protocol that employs a mechanism that does not circulate between slaves forever can be applied in the same manner.
  • a control device (100) that operates as a communication master (100) in a network including one or a plurality of communication slaves (200), and a communication frame transmitted from the communication master goes around the network and the communication master.
  • Each of the plurality of communication slaves has an IN port (251) and an OUT port (252), and the control device is a control device.
  • a monitoring means (150) for monitoring the communication status in the network, and When a disconnection of any of the cables included in the network is detected, a determination means (152) for determining whether or not the communication slave connected to the cable in which the disconnection is detected satisfies the cancellation condition is provided.
  • the release condition includes that the cable connected to the IN port of the target communication slave is disconnected and the communication frame can be received at the OUT port.
  • a control device including a management means (154) for canceling a redundant configuration (10) included in the network when the cancellation condition is satisfied.
  • the determination means is when the cable in which the disconnection is detected is included in one of the redundant configurations, and the cable in which the disconnection is detected is not a cable to be disconnected in order to cancel the redundant configuration.
  • the control device according to any one of configurations 1 to 3, which determines that the release condition is satisfied.
  • Each of the plurality of communication slaves has an IN port (251) and an OUT port (252), and is sequentially transferred so as to return to the communication master.
  • the cancellation condition includes that the cable connected to the IN port of the target communication slave is disconnected and the communication frame can be received at the OUT port.
  • a communication control method comprising a step (S120) of canceling a redundant configuration included in the network when the cancellation condition is satisfied.
  • a control program (1102) executed by a computer (100) operating as a communication master (100) in a network including one or a plurality of communication slaves (200), and a communication frame transmitted from the communication master is described above. It is sequentially transferred so as to go around the network and return to the communication master, and each of the plurality of communication slaves has an IN port (251) and an OUT port (252), and the control program is sent to the computer.
  • the step (S100) of monitoring the communication status in the network and When the disconnection of any of the cables included in the network is detected, the step (S102 to S116) of determining whether or not the communication slave connected to the cable in which the disconnection is detected satisfies the cancellation condition is performed.
  • the cancellation condition includes that the cable connected to the IN port of the target communication slave is disconnected and the communication frame can be received at the OUT port.
  • the control system according to the present embodiment can provide a solution to a problem such as abandonment of a communication frame due to the occurrence of a failure at a plurality of locations, which occurs in a network including a plurality of redundant configurations.
  • 1,1A, 1B control system 10 redundant configuration, 20,21,22,23,24,25,26,31,32,33,34,35,36,41,42,43,44,45,46 cable , 100 PLC, 102,202,302,402 processor, 104,204,304,404 main memory, 110,210,310,410 storage, 112,212 field network controller, 114 local bus controller, 116 functional unit, 118, 228 internal bus, 150 communication status monitoring module, 151 port, 152 necessity judgment module, 154 network management module, 156 notification module, 160,162 variables, 164,166 processing blocks, 200 devices, 206,306 control circuit, 220 functions.
  • Module 251 IN port, 252 OUT port, 300 relay device, 312 field network interface, 351 1st port, 352 2nd port, 353 3rd port, 354 4th port, 355 5th port, 356 6th port, 400 Support device, 406 input unit, 408 display unit, 412 communication controller, 416 optical drive, 418 storage medium, 424 USB controller, 450, 460, 470 user interface screen, 452,454,456 object, 462 list display object, 464 identification Information, 466 IN port display, 467, 469 status display, 468 OUT port display, 472 event log, 500 connection management device, 510 switch, 1102 system program, 1104 user program, 1106 system setting information, 4102 OS, 4104 development program.

Landscapes

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

Abstract

制御装置は、ネットワークにおける通信状態を監視する監視手段と、ネットワークに含まれるいずれかのケーブルの切断が検出されると、当該切断が検出されたケーブルに接続されている通信スレーブが解除条件を満たすか否かを判断する判断手段とを含む。解除条件は、対象の通信スレーブのINポートに接続されているケーブルが切断されており、かつ、OUTポートで通信フレームを受信し得ることを含む。制御装置は、解除条件が満たされると、ネットワークに含まれる冗長構成を解除する管理手段を含む。

Description

制御装置、通信制御方法、および制御プログラム
 本発明は、ネットワークに接続可能な制御装置、その制御装置における通信制御方法、およびその制御装置を実現するための制御プログラムに関する。
 例えば、EtherCAT(登録商標)に従うネットワークでは、通信マスタが送信した通信フレームは、すべての通信スレーブを巡回した上で、通信マスタに戻る。
 通信フレームを巡回させるためのトポロジーとして、一般的には、デイジーチェーン接続が採用されている。デイジーチェーン接続においては、通信フレームが同じ経路を往復するので、経路上に何らかの障害が発生すると、通信フレームを障害が発生した位置より後段に転送することができない。
 このようなデイジーチェーン接続に対して、デイジーチェーン接続の最終段に接続されたスレーブから通信マスタに戻る経路を追加したトポロジーも実用化されている。このようなトポロジーは、リング接続と称される。すなわち、デイジーチェーン接続は非冗長構成であるのに対して、リング接続は冗長構成となる。
 このようなリング接続に関して、特開2020-167554号公報(特許文献1)は、リングトポロジを含むネットワークにおける不正な経路を容易に知ることが可能なマスタ装置を開示する。
特開2020-167554号公報
 本願発明者らは、複数の冗長構成を含むネットワークにおいて生じる新たな課題を発見した。本発明のある局面の目的は、複数の冗長構成を含むネットワークにおいて生じる新たな課題に対する解決手段を提供することである。
 本発明のある実施の形態に従えば、1または複数の通信スレーブを含むネットワークにおいて通信マスタとして動作する制御装置が提供される。通信マスタから送信された通信フレームは、ネットワークを一巡して通信マスタに戻るように順次転送され、複数の通信スレーブの各々は、INポートおよびOUTポートを有している。制御装置は、ネットワークにおける通信状態を監視する監視手段と、ネットワークに含まれるいずれかのケーブルの切断が検出されると、当該切断が検出されたケーブルに接続されている通信スレーブが解除条件を満たすか否かを判断する判断手段とを含む。解除条件は、対象の通信スレーブのINポートに接続されているケーブルが切断されており、かつ、OUTポートで通信フレームを受信し得ることを含む。制御装置は、解除条件が満たされると、ネットワークに含まれる冗長構成を解除する管理手段を含む。
 本明細書における「切断(disconnect)」との用語は、例えば、注目する経路(ケーブルなど)が物理的に不導通状態になることに加えて、何らかの手段によって信号が流れない状態になることを含み得る。そのため、「切断」との用語は、接続を物理的に遮断することに加えて、接続を論理的に遮断することを含み得る。
 この構成によれば、切断が検出されたケーブルに接続されている通信スレーブが解除条件を満たす場合には、ネットワークに含まれる冗長構成が解除される。解除条件が満たされている状態では、冗長構成においてさらにケーブルの切断などが発生すると、通信フレームが破棄されるなどの問題が生じ得るが、このような問題の発生を防止できる。
 管理手段は、対象の冗長構成を解除するために切断すべきケーブルがOUTポートに接続されている通信スレーブに対して、当該OUTポートをクローズするための指令を与えてもよい。この構成によれば、論理的に冗長構成を解除できるので、追加の設備などを用意することなく、ソフトウェアを用いて柔軟に実現できる。
 ネットワークに含まれる冗長構成の各々には、冗長構成を解除するために切断すべきケーブルにスイッチが設けられている。管理手段は、対象の冗長構成に設けられたスイッチの各々がケーブルを切断するための指令を与えてもよい。この構成によれば、物理的に対象のケーブルを切断できるので、冗長構成をより確実に解除できる。
 判断手段は、切断が検出されたケーブルがいずれかの冗長構成に含まれており、かつ、切断が検出されたケーブルが当該冗長構成を解除するために切断すべきケーブルではない場合に、解除条件が満たされると決定してもよい。この構成によれば、切断が検出されたケーブルの位置に基づいて、解除条件が満たされているか否かを判断できる。
 同一の通信フレームが、INポートに接続されているケーブルが切断された通信スレーブのOUTポートで複数回受信されると、当該通信フレームは破棄されてもよい。
 管理手段は、切断が検出されたケーブルが再接続されると、解除した冗長構成を再構成するようにしてもよい。この構成によれば、ケーブルに発生していた障害が復旧することで、元の冗長構成を維持できる。
 制御装置は、ネットワークに含まれる冗長構成が解除されている状態を通知する通知手段をさらに含んでいてもよい。この構成によれば、例えば、ユーザは、冗長構成が解除されていることを容易に知ることができ、これによって、必要な措置をとることができる。
 制御装置は、ユーザプログラムを実行する実行手段をさらに含む。ユーザプログラムは、ネットワークに含まれる冗長構成が解除されているか否かを示す情報を参照可能である。この構成によれば、例えば、冗長構成が解除されているか否かに基づいて、ユーザプログラムにより実行される処理を切り替えることができる。
 本発明の別の実施の形態に従えば、1または複数の通信スレーブを含むネットワークにおいて通信マスタとして動作する制御装置で実行される通信制御方法が提供される。通信マスタから送信された通信フレームは、ネットワークを一巡して通信マスタに戻るように順次転送される。複数の通信スレーブの各々は、INポートおよびOUTポートを有している。通信制御方法は、ネットワークにおける通信状態を監視するステップと、ネットワークに含まれるいずれかのケーブルの切断が検出されると、当該切断が検出されたケーブルに接続されている通信スレーブが解除条件を満たすか否かを判断するステップとを含む。解除条件は、対象の通信スレーブのINポートに接続されているケーブルが切断されており、かつ、OUTポートで通信フレームを受信し得ることを含む。通信制御方法は、解除条件が満たされると、ネットワークに含まれる冗長構成を解除するステップを含む。
 本発明のさらに別の実施の形態に従えば、1または複数の通信スレーブを含むネットワークにおいて通信マスタとして動作するコンピュータで実行される制御プログラムが提供される。通信マスタから送信された通信フレームは、ネットワークを一巡して通信マスタに戻るように順次転送される。複数の通信スレーブの各々は、INポートおよびOUTポートを有している。制御プログラムはコンピュータに、ネットワークにおける通信状態を監視するステップと、ネットワークに含まれるいずれかのケーブルの切断が検出されると、当該切断が検出されたケーブルに接続されている通信スレーブが解除条件を満たすか否かを判断するステップとを実行させる。解除条件は、対象の通信スレーブのINポートに接続されているケーブルが切断されており、かつ、OUTポートで通信フレームを受信し得ることを含む。制御プログラムはコンピュータに、解除条件が満たされると、ネットワークに含まれる冗長構成を解除するステップを実行させる。
 本発明のある実施の形態によれば、複数の冗長構成を含むネットワークにおいて生じる新たな課題に対する解決手段を提供できる。
本実施の形態に従う通信制御方法における接続について説明するための図である。 図1(A)に示す冗長構成を複数含む制御システムを示す模式図である。 図2に示す制御システムにおいて1箇所の障害が発生した場合の通信フレームの挙動を説明するための図である。 図2に示す制御システムにおいて2箇所の障害が発生した場合の通信フレームの挙動を説明するための図である。 本実施の形態に従う制御システムのPLCのハードウェア構成例を示す模式図である。 本実施の形態に従う制御システムのデバイスのハードウェア構成例を示す模式図である。 本実施の形態に従う制御システムの中継装置のハードウェア構成例を示す模式図である。 本実施の形態に従う制御システムにおける通信フレームの伝送途中での破棄を防止するための方法を説明するための図である。 本実施の形態に従う制御システムに含まれるPLCの通信処理に係る機能構成の要部を示す模式図である。 本実施の形態に従う制御システムに含まれるPLCの実装例1における通信制御方法に係るフローチャートである。 本実施の形態に従う制御システムの実装例2を示す模式図である。 本実施の形態に従う制御システムに含まれるPLCの実装例2における通信制御方法に係るフローチャートである。 本実施の形態に従う制御システムのサポート装置のハードウェア構成例を示す模式図である。 本実施の形態に従う制御システムのサポート装置が提供するユーザインターフェイス画面の一例を示す模式図である。 本実施の形態に従う制御システムのサポート装置が提供するユーザインターフェイス画面の別の一例を示す模式図である。 本実施の形態に従う制御システムのサポート装置が提供するユーザインターフェイス画面のさらに別の一例を示す模式図である。 本実施の形態に従う制御システムのPLCで実行されるユーザプログラムの一例を示す図である。
 本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰返さない。
 <A.適用例>
 まず、図1~図4を参照して、本発明が適用される場面の一例について説明する。以下の説明においては、1または複数の通信スレーブ(以下、単に「スレーブ」とも称す。)を含むネットワークにおいて通信マスタ(以下、単に「マスタ」とも称す。)として動作する制御装置の一例として、PLC(プログラマブルロジックコントローラ)を想定する。また、ネットワークとしては、典型的には、EtherCATに従うネットワークを想定する。EtherCATに従うネットワークにおいては、マスタである制御装置(PLC)から送信された通信フレームは、ネットワークを一巡して制御装置に戻るように順次転送される。
 図1は、本実施の形態に従う通信制御方法における接続について説明するための図である。図1(A)には、デイジーチェーン接続(非冗長構成)の一例を示し、図1(B)には、リング接続(冗長構成)の一例を示す。
 図1(A)を参照して、デイジーチェーン接続の制御システム1Aは、マスタとして動作する制御装置の一例であるPLC100と、中継装置300と、スレーブとして動作する1または複数のデバイス200-1~200-5(以下、「デバイス200」とも総称する。)とを含む。
 PLC100は、通信フレームの送受信を行うためのポート151を有している。デバイス200-1~200-5の各々は、通信フレームを送受信するためのINポート251(第1ポート)およびOUTポート252(第2ポート)を有している。基本的には、INポート251は、通信フレームが入力されるポートであり、OUTポート252は、通信フレームが出力されるポートである。但し、INポート251およびOUTポート252の名称に限らず、いずれのポートにおいても、通信フレームの受信および送信が可能である。
 中継装置300は、通信フレームを送受信するための第1ポート351、第2ポート352、第3ポート353、第4ポート354、第5ポート355、第6ポート356を有している。中継装置300は、あるポートで通信フレームを受けると、所定規則に従って決定される別のポートから、当該受信したフレームを送信する。所定規則として、第1ポート351→第2ポート352→第3ポート353→・・・といった循環的に決定されてもよい。
 図1(A)に示すデイジーチェーン接続では、PLC100、中継装置300、デバイス200の順に接続される。より具体的には、PLC100のポート151から送信された通信フレームは、ケーブル20、中継装置300の第1ポート351、中継装置300の第2ポート352、ケーブル21、デバイス200-1のINポート251、デバイス200-1のOUTポート252、ケーブル22、デバイス200-2のINポート251、デバイス200-2のOUTポート252、ケーブル23、デバイス200-3のINポート251、デバイス200-3のOUTポート252、ケーブル24、デバイス200-4のINポート251、デバイス200-4のOUTポート252、ケーブル25、デバイス200-5のINポート251の順に転送され、その後、同じ経路を経てPLC100のポート151に戻る。
 このように、デイジーチェーン接続においては、通信フレームは、スレーブに接続されたケーブル20~25を両方向に伝送し得る。このとき、デバイス200のINポート251およびOUTポート252は、通信フレームの送信および受信の両方を行う。
 そのため、いずれかのケーブルまたはいずれかのデバイスに何らかの障害が発生すると、障害が発生した部位より先には通信フレームを転送できない。そのため、障害に対する冗長性を有していない「非冗長構成」とみなすことができる。
 本明細書における「非冗長構成」は、スレーブ間を接続するケーブルが切断されると、通信フレームを受信できないスレーブが発生し得るトポロジーを意味する。「非冗長構成」の一例としては、デイジーチェーン接続などが知られている。デイジーチェーン接続においては、OUTポート252に何らのケーブルも接続されていないデバイス200(スレーブ)が存在することになる。
 図1(B)を参照してリング接続の制御システム1Bは、図1(A)に示すデイジーチェーン接続に比較して、デバイス200-5のOUTポート252と、中継装置300の第3ポート353とを接続するケーブル26が追加されている。ケーブル26が追加されることにより、デバイス200-5に到着した通信フレームは、デバイス200-5のINポート251ではなく、デバイス200-5のOUTポート252から送信されることになる。そして、ケーブル26および中継装置300を経て、PLC100のポート151に戻る。
 図1(B)に示すリング接続において、ケーブル26は、迂回路を形成するケーブルであり、冗長経路の少なくとも一部を構成する。すなわち、ケーブル26を追加することによって、中継装置300の第2ポート352から送信された通信フレームが、デバイス200-1~200-5を通過して、中継装置300の第3ポート353に戻るリング状のループ経路が構成される。このようなリング接続においては、通信フレームは、スレーブに接続されたケーブル20~26の各々を一方向に伝送する。その結果、デバイス200のINポート251は通信フレームの受信を担当し、デバイス200のOUTポート252は通信フレームの送信を担当する。
 上述したような通信フレームが一巡する経路を「冗長構成」とも称す。図1(B)に示すリング接続においては、中継装置300およびデバイス200-1~200-5を含む範囲が冗長構成10に相当する。
 本明細書における「冗長構成」は、スレーブ間を接続するケーブルが切断されても、通信フレームの一巡を継続できるトポロジーを意味する。「冗長構成」の一例としては、リング接続などが知られている。リング接続においては、すべてのデバイス200のINポート251およびOUTポート252にケーブルが接続されていることになる。
 冗長構成10においては、いずれかのケーブルまたはいずれかのデバイスに何らかの障害が発生しても、障害が発生した部位で通信フレームを折り返すことで、冗長経路を経て残りのデバイスを伝送することができる。
 図2は、図1(A)に示す冗長構成10を複数含む制御システム1を示す模式図である。図2を参照して、制御システム1は、3つの冗長構成10-1,10-2,10-3を含む。冗長構成10-1においては、ケーブル21~26でリング接続が構成され、冗長構成10-2においては、ケーブル31~36でリング接続が構成され、冗長構成10-3においては、ケーブル41~46でリング接続が構成されている。
 ここで、リング接続のいずれで障害が発生した場合の挙動について説明する。
 図3は、図2に示す制御システム1において1箇所の障害が発生した場合の通信フレームの挙動を説明するための図である。図3を参照して、例えば、冗長構成10-1のデバイス200-2のOUTポート252とデバイス200-3のINポート251とを接続するケーブル23に断線などの障害が発生した場合を想定する。
 この場合、デバイス200-2のOUTポート252から通信フレームを送信できないので、デバイス200-2は、OUTポート252に代えて、INポート251から通信フレームを送信する。その結果、通信フレームは、ケーブル22、デバイス200-1のOUTポート252、デバイス200-1のINポート251、ケーブル21、中継装置300の第3ポート353、ケーブル26、デバイス200-5のOUTポート252、デバイス200-5のINポート251、ケーブル25、デバイス200-4のOUTポート252、デバイス200-4のINポート251、ケーブル24、デバイス200-3のOUTポート252、デバイス200-3のINポート251(折り返し)、デバイス200-3のOUTポート252、ケーブル24、デバイス200-4のINポート251、デバイス200-4のOUTポート252、ケーブル25、デバイス200-5のINポート251、デバイス200-5のOUTポート252、ケーブル26の順に転送される。
 このような通信フレームの転送経路によって、冗長構成10-1に含まれるすべてのデバイス200を通信フレームが通過することになる。すなわち、制御システム1においては、いずれか1箇所に障害が発生しても、通信は継続される。
 次に、リング接続のいずれで複数の障害が発生した場合の挙動について説明する。
 図4は、図2に示す制御システム1において2箇所の障害が発生した場合の通信フレームの挙動を説明するための図である。図4を参照して、図3に示す障害に加えて、冗長構成10-2のデバイス200-2のOUTポート252とデバイス200-3のINポート251とを接続するケーブル33にも断線などの障害が発生した場合を想定する。
 この場合、冗長構成10-1だけではなく、冗長構成10-2においても、デバイス200-2のOUTポート252から通信フレームを送信できないので、デバイス200-2は、OUTポート252に代えて、INポート251から通信フレームを送信する。その結果、通信フレームは、ケーブル32、デバイス200-1のOUTポート252、デバイス200-1のINポート251、ケーブル31、中継装置300の第3ポート353、ケーブル36、デバイス200-5のOUTポート252、デバイス200-5のINポート251、ケーブル35、デバイス200-4のOUTポート252、デバイス200-4のINポート251、ケーブル34、デバイス200-3のOUTポート252、デバイス200-3のINポート251の順に転送されるが、通信フレームがデバイス200-3のINポート251に到達した時点で、破棄されてしまう。
 すなわち、同一の通信フレームが、INポート251に接続されているケーブルが切断されたデバイス200(通信スレーブ)のOUTポート252で複数回受信されると、当該通信フレームは破棄される。その結果、通信フレームはマスタに戻らず、通信を継続できない。
 本願発明者らは、このような冗長構成を有するネットワークにおいて、複数の障害が発生した場合に通信フレームを転送できなくなるという新たな課題を発見した。
 ここで、通信フレームが破棄されてしまう理由について説明する。EtherCATにおいては、ネットワークに何らかの障害が発生して、通信フレームがマスタに戻ることなく、スレーブ間を永遠に巡回(circulating)することを防止するために、「Circulating bit」と呼ばれる情報が通信フレームに付加される。
 Circulating bitは、通信フレームのEtherCAT Datagramsと呼ばれる領域に割り当てられる。マスタから送信される通信フレームのCirculating bitの初期値は「0」に設定される。
 Circulating bitが「0」であれば、通信フレームは巡回していないことを意味し、Circulating bitが「1」であれば、通信フレームは一度だけ巡回したことを意味する。
 デバイス200の各々は、INポート251がリンクオフ(何らかの障害によって通信できない状態)である場合に、通信フレームを(OUTポート252で)受信すると、当該受信した通信フレームに含まれるCirculating bitの値に応じて、以下のいずれかの処理を実行する。
 (1)Circulating bitが「0」であれば、受信した通信フレームのCirculating bitを「1」に更新した上で、通信フレームの転送を継続する。
 (2)Circulating bitが「1」であれば、受信した通信フレームを破棄する。
 Circulating bitに基づく処理について、上述の図3および図4を参照して説明する。
 図3に示すような1箇所の障害では、冗長構成10-1のデバイス200-3のOUTポート252で通信フレームを受信すると、通信フレームのCirculating bitが「0」から「1」に更新されて、通信フレームの転送が継続される。
 これに対して、図4に示すような2箇所の障害では、冗長構成10-1のデバイス200-3のOUTポート252で通信フレームを受信すると、通信フレームのCirculating bitが「0」から「1」に更新されて、通信フレームの転送が継続されるものの、冗長構成10-2のデバイス200-3のOUTポート252で通信フレームを受信すると、通信フレームのCirculating bitが既に「1」なので、それ以降の転送はされず、破棄されてしまう。
 本実施の形態に従う制御システムは、上述したような通信フレームの転送ができない状態に陥る可能性がある場合に、通信フレームの転送ができない状態に陥らないようにする手段を提供する。以下、このような手段を実現するための構成、処理、機能などについて詳述する。
 なお、図3に示すように1箇所の障害が発生している状態において、対応する冗長経路を切断すると、当該冗長構成10において別の障害が発生したときに、一部のデバイス200は通信ができなくなる。例えば、冗長構成10-1のデバイス200-3のOUTポート252とデバイス200-4のINポート251とを接続するケーブル24に断線などの障害がさらに発生すると、デバイス200-3は、INポート251およびOUTポート252の両方がリンクオフするので、通信フレームを受信できなくなる。このような潜在的な不具合を防止するために、ネットワークに発生した障害の情報を通知あるいは利用できるようにする。詳細については、後述する。
 また、すべてのデバイス200の通信が不能になってしまうことに比較して、一部のデバイス200のみ通信が不能になる状況であれば許容し得るとの判断もできる。
 <B.ハードウェア構成例>
 次に、本実施の形態に従う制御システム1を構成する各装置のハードウェア構成例について説明する。
 (b1:制御装置(PLC100))
 図5は、本実施の形態に従う制御システム1のPLC100のハードウェア構成例を示す模式図である。図5を参照して、PLC100は、主たるハードウェアコンポーネントとして、プロセッサ102と、メインメモリ104と、ストレージ110と、フィールドネットワークコントローラ112と、ローカルバスコントローラ114とを含む。これらのハードウェアコンポーネントは、内部バス118を介して電気的に接続される。
 プロセッサ102は、制御演算を実行する演算処理部に相当し、CPU(Central Processing Unit)やGPU(Graphics Processing Unit)などで構成される。具体的には、プロセッサ102は、ストレージ110に格納されたプログラムを読出して、メインメモリ104に展開して実行することで、制御対象に応じた制御演算、および、後述するような各種処理を実現する。図5に示す構成例においては、プロセッサ102は、ユーザプログラム1104を周期的に実行する。
 メインメモリ104は、DRAM(Dynamic Random Access Memory)やSRAM(Static Random Access Memory)などの揮発性記憶装置などで構成される。ストレージ110は、例えば、SSD(Solid State Drive)やHDD(Hard Disk Drive)などの不揮発性記憶装置などで構成される。
 ストレージ110には、基本的な機能を実現するためのシステムプログラム1102、制御対象に応じて作成されたユーザプログラム1104、および、後述するような処理を決定するためのシステム設定情報1106などが格納される。システムプログラム1102は、PLC100における基本的な機能を実現するため、制御プログラムの少なくとも一部とみなすことができる。
 フィールドネットワークコントローラ112は、通信部に相当し、通信フレームが一巡するように構成されたネットワークに接続される。より具体的には、フィールドネットワークコントローラ112は、ポート151を有しており、通信フレームの送受信処理を担当する。PLC100のフィールドネットワークコントローラ112は、通信マスタ(マスタ)として機能する。なお、フィールドネットワークコントローラ112は、通信フレームを周期的に送受信するための同期カウンタを有していてもよい。
 ローカルバスコントローラ114は、内部バス118を介して、1または複数の機能ユニット116と電気的に接続される。機能ユニット116は、制御対象との間で各種の信号をやり取りする機能などを含む。機能ユニット116は、例えば、制御対象からのデジタル信号を受取るDI(Digital Input)機能、制御対象に対してデジタル信号を出力するDO(Digital Output)機能、制御対象からのアナログ信号を受取るAI(Analog Input)機能、制御対象に対してアナログ信号を出力するAO(Analog Output)機能のうち1または複数の機能を有している。さらに、機能ユニット116としては、PID(Proportional Integral Derivative)制御やモーション制御といった特殊機能を実装したコントローラを含み得る。
 図5には、プロセッサ102がプログラムを実行することで必要な機能が提供される構成例を示したが、これらの提供される機能の一部または全部を、専用のハードウェア回路(例えば、ASIC(Application Specific Integrated Circuit)またはFPGA(Field-Programmable Gate Array)など)を用いて実装してもよい。あるいは、PLC100の主要部を、汎用的なアーキテクチャに従うハードウェア(例えば、汎用パソコンをベースとした産業用パソコン)を用いて実現してもよい。この場合には、仮想化技術を用いて、用途の異なる複数のOS(Operating System)を並列的に実行させるとともに、各OS上で必要なアプリケーションを実行させるようにしてもよい。
 さらに、PLC100に表示装置やサポート装置などの機能を統合した構成を採用してもよい。
 (b2:デバイス200)
 図6は、本実施の形態に従う制御システム1のデバイス200のハードウェア構成例を示す模式図である。図6を参照して、デバイス200は、主たるハードウェアコンポーネントとして、制御回路206と、フィールドネットワークコントローラ212と、機能モジュール220とを含む。
 制御回路206は、デバイス200における処理を主体的に実行する演算処理部である。制御回路206は、典型的には、プロセッサ202と、メインメモリ204と、ストレージ210とを含む。プロセッサ202は、CPUやGPUなどで構成される。メインメモリ204は、DRAMやSRAMなどの揮発性記憶装置などで構成される。ストレージ210は、例えば、SSDなどの不揮発性記憶装置などで構成される。なお、ストレージ210として、ROM(Read Only Memory)を採用してもよい。
 なお、制御回路206は、専用のハードウェア回路(例えば、ASICまたはFPGAなど)を用いて実装してもよい。
 フィールドネットワークコントローラ212は、INポート251およびOUTポート252を有しており、通信フレームの送受信処理を担当する。デバイス200のフィールドネットワークコントローラ212は、通信スレーブ(スレーブ)として機能する。なお、フィールドネットワークコントローラ212は、通信フレームを周期的に送受信するための同期カウンタを有していてもよい。
 機能モジュール220は、図5に示す機能ユニット116と同様に、制御対象との間で各種の信号をやり取りする処理などを担当する。
 (b3:中継装置300)
 図7は、本実施の形態に従う制御システム1の中継装置300のハードウェア構成例を示す模式図である。図7を参照して、中継装置300は、主たるハードウェアコンポーネントとして、制御回路306と、フィールドネットワークインターフェイス312とを含む。
 制御回路306は、中継装置300における通信フレームの転送処理を主体的に実行する演算処理部である。制御回路306は、典型的には、プロセッサ302と、メインメモリ304と、ストレージ310とを含む。プロセッサ302は、CPUやGPUなどで構成される。メインメモリ304は、DRAMやSRAMなどの揮発性記憶装置などで構成される。ストレージ310は、例えば、SSDなどの不揮発性記憶装置などで構成される。なお、ストレージ310として、ROMを採用してもよい。
 なお、制御回路306は、専用のハードウェア回路(例えば、ASICまたはFPGAなど)を用いて実装してもよい。
 フィールドネットワークインターフェイス312は、第1ポート351、第2ポート352および第3ポート353、第4ポート354、第5ポート355、第6ポート356を有しており、通信フレームの図示しない受信回路および送信回路を含む。
 <C.概要>
 本実施の形態に従う制御システムは、上述したような通信フレームの転送ができない状態に陥る可能性がある場合に、通信フレームの転送ができない状態に陥らないようにする手段を提供する。
 上述したように、INポート251がリンクオフしているデバイス200がOUTポート252で通信フレームを受信した場合に、Circulating bitの値が評価される。すなわち、INポート251がリンクオフしているデバイス200が複数存在し、それらのデバイス200がOUTポート252で通信フレームを受信し得るような状況を回避すればよい。このような状況を回避する方法として、いずれかのデバイス200のINポート251がリンクオフした場合には、通信フレームが冗長経路を伝送されないようにすることが考えられる。すなわち、様々な要因によってデバイス200のINポート251はリンクオフし得るが、冗長経路を切断すれば、デバイス200のOUTポート252で通信フレームを受信することはなくなる。その結果、仮に、INポート251がリンクオフしたデバイス200が複数発生したとしても、それらのデバイス200のOUTポート252に通信フレームが到達することはないので、通信フレームが伝送途中で破棄されることはない。
 したがって、本実施の形態に従う制御システムにおいては、INポート251がリンクオフしており、かつ、OUTポート252に通信フレームが到達し得るデバイス200がネットワーク上で検出されると、ネットワークに含まれる冗長構成10のうち検出されたデバイス200が含まれる冗長構成10以外の冗長構成10について、冗長経路を切断する。これによって、INポート251がリンクオフしており、かつ、OUTポート252に通信フレームが到達し得るデバイス200が複数存在することはなくなり、通信フレームの伝送途中での破棄を防止できる。
 冗長構成10を解除するための解除条件としては、対象のデバイス200(スレーブ)のINポート251に接続されているケーブルが切断されており、かつ、OUTポート252で通信フレームを受信し得ることを含む。より具体的な判断方法として、切断が検出されたケーブルがいずれかの冗長構成10に含まれており、かつ、切断が検出されたケーブルが当該冗長構成10を解除するために切断すべきケーブル(冗長経路)ではない場合に、解除条件が満たされると決定することができる。
 図8は、本実施の形態に従う制御システム1における通信フレームの伝送途中での破棄を防止するための方法を説明するための図である。図8を参照して、例えば、冗長構成10-1のデバイス200-2のOUTポート252とデバイス200-3のINポート251とを接続するケーブル23に断線などの障害が発生した場合を想定する。
 冗長構成10-1のデバイス200-3のINポート251がリンクオフしたことが検出されると((1)ケーブル切断検出)、冗長構成10-1以外の冗長構成10-2および冗長構成10-3の冗長経路(ケーブル36およびケーブル46)が切断される((2)冗長経路切断)。
 冗長構成10-1においては、ケーブル23が切断されて、リング接続から非リング接続になっており、INポート251がリンクオフしており、かつ、OUTポート252に通信フレームが到達し得るデバイス200がさらに発生することはない。
 また、冗長構成10-2および冗長構成10-3においては、冗長経路であるケーブル36およびケーブル46が切断されるので、リング接続(冗長構成10)からデイジーチェーン接続(非冗長構成)になっており、いずれのデバイス200についても、OUTポート252に通信フレームが到達することがない。
 このように、いずれかの冗長構成10においてリンクオフが発生すると、それ以外の冗長構成10の冗長経路を切断して、冗長構成10を解除することで、通信フレームの伝送途中での破棄を防止できる。
 以下、上述したような冗長構成10の解除を実現するための実装例について説明する。
 <D.実装例1:論理的な解除>
 実装例1として、冗長構成10の解除を論理的に行う構成について説明する。通信フレームが伝送される経路は、マスタからの指令によって、論理的に切断あるいは接続が可能になっている。より具体的には、デバイス200の各々は、ESC(EtherCAT Slave Controller)を有しており、マスタからの指令に従って、自身の各ポートを任意にオープンおよびクローズできる。ポートがクローズされることによって、ケーブルを介して他のポートと物理的に接続されていても、論理的に切断した状態(リンクオフ)にできる。
 マスタであるPLC100は、システム設定情報1106(図5参照)を有している。システム設定情報1106は、(1)ネットワークを構成するすべてのスレーブおよびスレーブ間を接続するケーブル、(2)スレーブおよびケーブルにより構成される冗長構成10、(3)冗長構成10における冗長経路となるケーブル、といった情報を含む。
 そのため、マスタであるPLC100は、対象のネットワークに含まれるスレーブおよびネットワークトポロジーを把握できる。また、マスタであるPLC100は、ネットワークを一巡してマスタまで戻った通信フレームに含まれる情報に基づいて、転送経路などの情報を取得できる。
 図9は、本実施の形態に従う制御システム1に含まれるPLC100の通信処理に係る機能構成の要部を示す模式図である。図9を参照して、PLC100は、ネットワークに関する機能構成として、通信状態監視モジュール150と、解除要否判断モジュール152と、ネットワーク管理モジュール154と、通知モジュール156とを含む。図9に示す機能構成は、典型的には、PLC100のプロセッサ102がシステムプログラム1102(図5)を実行することで、実現される。但し、PLC100のフィールドネットワークコントローラ112に含まれる回路構成が図9に示す機能構成の全部または一部を実現してもよい。
 通信状態監視モジュール150は、ネットワークにおける通信状態を監視する。より具体的には、通信状態監視モジュール150は、ネットワークに含まれるデバイス200の通信状態(例えば、応答の有無)、および、デバイス200間を接続するケーブルの通信状態(接続中/切断中)を監視する。通信状態監視モジュール150は、通信状態の変化に基づいて、いずれかのケーブルが切断された、あるいは、いずれかのケーブルが再接続されたことを検出できる。
 解除要否判断モジュール152は、通信状態監視モジュール150によるケーブルの切断あるいは再接続の検出結果に応じて、冗長構成10の解除あるいは再構成の要否を判断する。例えば、解除要否判断モジュール152は、ネットワークに含まれるいずれかのケーブルの切断が検出されると、当該切断が検出されたケーブルに接続されているデバイス200(通信スレーブ)が解除条件を満たすか否かを判断する。
 ネットワーク管理モジュール154は、解除条件が満たされると、ネットワークに含まれる冗長構成10を解除する。すなわち、ネットワーク管理モジュール154は、解除要否判断モジュール152による解除条件が満たされているとの判断結果に応じて、対象の冗長経路に接続されたデバイス200に対して、ポートのオープンあるいはクローズの指令を生成および送信する。より具体的には、ネットワーク管理モジュール154は、対象の冗長構成10を解除するために切断すべきケーブルがOUTポート252に接続されているデバイス200(通信スレーブ)に対して、そのOUTポート252をクローズするための指令を与える。例えば、図8に示す例では、PLC100は、冗長構成10-2のデバイス200-5に対して、OUTポート252をオープンする旨の指令を送信するとともに、冗長構成10-3のデバイス200-5に対して、OUTポート252をオープンする旨の指令を送信する。これらの指令によって、冗長経路であるケーブル36およびケーブル46が論理的に切断される。
 また、ネットワーク管理モジュール154は、ケーブル23に発生した障害が復旧すると、冗長経路であるケーブル36およびケーブル46を再接続してもよい。すなわち、ネットワーク管理モジュール154は、切断が検出されたケーブルが再接続されると、解除したすべての冗長構成を再構成するようにしてもよい。図8に示す例では、ネットワーク管理モジュール154は、冗長構成10-2のデバイス200-5に対して、OUTポート252をクローズする旨の指令を送信するとともに、冗長構成10-3のデバイス200-5に対して、OUTポート252をクローズする旨の指令を送信する。
 これらの指令によって、対応するケーブルの切断および再接続が可能となる。なお、冗長経路を構成するケーブルを複数切断する場合においては、それぞれのデバイス200に対してポートをオープンするための指令を送信することになるが、指令の送信順序などは任意でよい。また、指令の送信タイミングについても、可及的速やかであればよい。
 通知モジュール156は、ネットワークの通信状態、通信状態の変化、冗長経路の切断指令が送信されたことなどの情報を外部へ送信する。特に、通知モジュール156は、ネットワークに含まれる冗長構成が解除されている状態を任意の出力先に任意の方法で通知するようにしてもよい。
 図10は、本実施の形態に従う制御システム1に含まれるPLC100の実装例1における通信制御方法に係るフローチャートである。図10に示す各ステップは、典型的には、PLC100のプロセッサ102がシステムプログラム1102(図5)を実行することで、実現される。但し、PLC100のフィールドネットワークコントローラ112に含まれる回路構成が図10に示すステップの全部または一部を実行してもよい。
 図10を参照して、PLC100は、ネットワークにおける通信状態を監視する(ステップS100)。そして、PLC100は、ネットワークに含まれるいずれかのケーブルの切断が検出されたか否かを判断する(ステップS102)。
 ネットワークに含まれるいずれかのケーブルの切断も検出されなければ(ステップS102においてNO)、PLC100は、ネットワークに含まれるいずれかのケーブルの再接続が検出されたか否かを判断する(ステップS104)。ネットワークに含まれるいずれかのケーブルの再接続も検出されなければ(ステップS104においてNO)、ステップS100以下の処理が繰返される。
 ネットワークに含まれるいずれかのケーブルの切断が検出されると(ステップS102においてYES)、PLC100は、当該切断が検出されたケーブルに接続されているデバイス200(通信スレーブ)が解除条件を満たすか否かを判断する。
 より具体的には、PLC100は、切断したケーブルの位置を特定し(ステップS110)、切断したケーブルがいずれかの冗長構成のケーブルであるか否かを判断する(ステップS112)。
 切断したケーブルが冗長構成のケーブルでなければ(ステップS112においてNO)、PLC100は、切断したケーブルおよび関連するデバイス200の情報を通知する(ステップS114)。そして、ステップS100以下の処理が繰返される。
 切断したケーブルがいずれかの冗長構成のケーブルであれば(ステップS112においてYES)、PLC100は、切断したケーブルが冗長経路を構成するケーブルであるか否かを判断する(ステップS116)。
 切断したケーブルが冗長経路を構成するケーブルであれば(ステップS116においてYES)、PLC100は、切断したケーブルおよび関連するデバイス200の情報、ならびに、切断したケーブルを含む冗長構成10が解除されていることを通知する(ステップS118)。そして、ステップS100以下の処理が繰返される。
 切断したケーブルが冗長経路を構成するケーブルでなければ(ステップS116においてNO)、PLC100は、切断したケーブルを含む冗長構成以外の冗長構成について、冗長経路を切断するための指令を対応するデバイス200へ送信する(ステップS120)。すなわち、ステップS116においてNOの場合には、解除条件が満たされたことを意味し、PLC100は、ネットワークに含まれる冗長構成を解除する。そして、PLC100は、切断したケーブルおよび関連するデバイス200の情報、ならびに、すべての冗長構成が解除されていることを通知する(ステップS122)。そして、ステップS100以下の処理が繰返される。
 ネットワーク内でケーブルの再接続が発生していれば(ステップS104においてYES)、PLC100は、再接続したケーブルの位置を特定し(ステップS130)、再接続したケーブルがいずれかの冗長構成のケーブルであるか否かを判断する(ステップS132)。
 再接続したケーブルが冗長構成のケーブルでなければ(ステップS132においてNO)、PLC100は、再接続したケーブルおよび関連するデバイス200の情報を通知する(ステップS134)。そして、ステップS100以下の処理が繰返される。
 再接続したケーブルがいずれかの冗長構成のケーブルであれば(ステップS132においてYES)、PLC100は、再接続したケーブルが冗長経路を構成するケーブルであるか否かを判断する(ステップS136)。
 再接続したケーブルが冗長経路を構成するケーブルであれば(ステップS136においてYES)、PLC100は、再接続したケーブルおよび関連するデバイス200の情報、ならびに、再接続したケーブルを含む冗長構成が復旧されていることを通知する(ステップS138)。そして、ステップS100以下の処理が繰返される。
 再接続したケーブルが冗長経路を構成するケーブルでなければ(ステップS136においてNO)、PLC100は、再接続したケーブルを含む冗長構成以外の冗長構成について、冗長経路を再接続するための指令を対応するデバイス200へ送信する(ステップS140)。そして、PLC100は、再接続したケーブルおよび関連するデバイス200の情報、ならびに、すべての冗長構成が復旧されていることを通知する(ステップS142)。そして、ステップS100以下の処理が繰返される。
 以上のような機能構成および処理手順によって、冗長構成の論理的な解除および再構成を実現できる。
 <E.実装例2:物理的な解除>
 実装例2として、冗長構成の解除を物理的に行う構成について説明する。実装例2においては、冗長経路を物理的に切断可能なスイッチを設け、当該スイッチの状態を制御することで、冗長構成を解除あるいは再構成する。
 図11は、本実施の形態に従う制御システム1の実装例2を示す模式図である。図11を参照して、制御システム1は、接続管理装置500と、スイッチ510-1,510-2,510-3(以下、「スイッチ510」とも総称する。)とを含む。スイッチ510-1は、冗長構成10-1の冗長経路であるケーブル26を物理的に切断および接続できる。スイッチ510-2は、冗長構成10-2の冗長経路であるケーブル36を物理的に切断および接続できる。スイッチ510-3は、冗長構成10-3の冗長経路であるケーブル46を物理的に切断および接続できる。なお、スイッチ510の構造については、ケーブルに流れる電気信号を遮断できるものであれば、どのようなものであってもよい。
 このように、ネットワークに含まれる冗長構成10-1,10-2,10-3の各々には、冗長構成10-1,10-2,10-3を解除するために切断すべきケーブル26,36,46にスイッチ510-1,510-2,510-3がそれぞれ設けられている。
 PLC100のネットワーク管理モジュール154(図9参照)は、対象の冗長構成10に設けられたスイッチ510の各々がケーブルを切断するための指令を与える。接続管理装置500は、PLC100からの指令に応じて、指定されたスイッチ510に冗長経路に相当するケーブルの切断および接続を行わせる。
 また、ネットワーク管理モジュール154は、切断が検出されたケーブルが再接続されると、解除したすべての冗長構成10に設けられたスイッチ510の各々がケーブルを再接続するための指令を与えてもよい。
 図12は、本実施の形態に従う制御システム1に含まれるPLC100の実装例2における通信制御方法に係るフローチャートである。図12に示す各ステップは、典型的には、PLC100のプロセッサ102がシステムプログラム1102(図5)を実行することで、実現される。但し、PLC100のフィールドネットワークコントローラ112に含まれる回路構成が図10に示すステップの全部または一部を実行してもよい。
 図12に示すフローチャートは、図10に示すフローチャートのステップS120をステップS120Aに変更するとともに、ステップS140をステップS140Aに変更したものである。
 ステップS120Aにおいて、PLC100は、切断したケーブルを含む冗長構成10以外の冗長構成10について、冗長経路を切断するための指令を接続管理装置500へ送信する(ステップS120A)。接続管理装置500は、PLC100からの指令に従って、対応するスイッチ510を駆動して、各スイッチ510が配置されている冗長経路を切断する。
 ステップS140Aにおいて、PLC100は、再接続したケーブルを含む冗長構成10以外の冗長構成10について、冗長経路を再接続するための指令を接続管理装置500へ送信する(ステップS140A)。接続管理装置500は、PLC100からの指令に従って、対応するスイッチ510を駆動して、各スイッチ510が配置されている冗長経路を再接続する。
 その他のステップについては、図10に示すフローチャートの対応するステップと同様であるので、詳細な説明は繰返さない。
 以上のような機能構成および処理手順によって、冗長構成10の物理的な解除および再構成を実現できる。
 <F.情報の通知および利用>
 次に、PLC100の通知モジュール156(図9)による情報の通知、および、情報の利用の一例について説明する。
 上述したように、何らかの障害が発生して冗長構成10が解除された状態においては、さらなる障害の発生によって、一部のデバイス200の通信ができなくなる。そのため、発生した障害を早期に復旧できるように、ユーザへの通知などが有効である。このような通知は、PLC100に接続されるサポート装置やHMI(Human Machine Interface)を介して行うことができる。
 (f1:サポート装置)
 図13は、本実施の形態に従う制御システム1のサポート装置400のハードウェア構成例を示す模式図である。図13を参照して、サポート装置400は、一例として、汎用的なアーキテクチャに従うハードウェア(例えば、汎用パソコン)を用いて実現される。
 サポート装置400は、制御システム1のPLC100およびデバイス200に対する設定、ならびに、PLC100で実行されるユーザプログラム1104の作成が統合的に可能な統合開発環境を提供する。統合開発環境においては、デバッグやシミュレーションなどが可能であってもよい。
 図13を参照して、サポート装置400は、主たるハードウェアコンポーネントとして、プロセッサ402と、メインメモリ404と、入力部406と、表示部408と、ストレージ410と、通信コントローラ412と、光学ドライブ416と、USBコントローラ424とを含む。これらのハードウェアコンポーネントは、内部バス228を介して電気的に接続される。
 プロセッサ402は、CPUやGPUなどで構成され、ストレージ410に格納されたプログラムを読出して、メインメモリ404に展開して実行することで、サポート装置400としての機能を実現する。
 メインメモリ404は、DRAMやSRAMなどの揮発性記憶装置などで構成される。ストレージ410は、例えば、HDDやSSDなどの不揮発性記憶装置などで構成される。
 ストレージ410には、基本的な機能を実現するためのOS4102、および、統合開発環境を実現するための開発プログラム4104などが格納される。開発プログラム4104は、プロセッサ402により実行されることで、統合開発環境を提供する。
 入力部406は、キーボードやマウスなどで構成され、ユーザ操作を受け付ける。
 表示部408は、ディスプレイや各種インジケータなどで構成され、プロセッサ402からの処理結果などを出力する。
 通信コントローラ412は、任意の上位ネットワークを介して、任意の情報処理装置との間でデータをやり取りする。
 光学ドライブ416は、コンピュータ読取可能なプログラムを非一過的に格納する記憶媒体418(例えば、DVDなどの光学記憶媒体)から任意のデータを読み取り、および、任意のデータを記憶媒体418に書き込むことができる。
 USBコントローラ424は、USB接続を介して、任意の情報処理装置との間のデータをやり取りする。
 コンピュータ読取可能なプログラムを非一過的に格納する記憶媒体418から、その中に格納されたプログラムが読み取られてストレージ410などにインストールされてもよい。あるいは、サポート装置400で実行される各種プログラムは、ネットワーク上のサーバ装置などからダウンロードする形でインストールするようにしてもよい。また、本実施の形態に係るサポート装置400が提供する機能は、OS4102が提供するモジュールの一部を利用する形で実現される場合もある。
 なお、制御システム1の稼動中において、サポート装置400は、PLC100から取り外されていてもよい。
 サポート装置400を介して任意の表示態様でユーザへ情報を提示することができる。以下に示すユーザインターフェイス画面は、サポート装置400のプロセッサ402がOS4102および開発プログラム4104などのプログラムを実行することで実現されてもよい。
 図14は、本実施の形態に従う制御システム1のサポート装置400が提供するユーザインターフェイス画面の一例を示す模式図である。図14を参照して、ユーザインターフェイス画面450は、ネットワーク構成を示すオブジェクト452を含む。オブジェクト452上には、何らかの障害が発生している箇所に対応付けて、障害の発生を示すオブジェクト454が表示されている。図14に示す例では、オブジェクト454とともに、「障害発生中」の文字も表示されている。
 ユーザは、図14に示すようなユーザインターフェイス画面450を参照することで、ネットワーク内で障害が発生している位置を一見して把握できる。
 上述したように、冗長構成10を構成するケーブルであって、冗長経路ではないケーブルに障害が発生すると、他の冗長構成10についても冗長経路が切断される。このような状態になると、ユーザインターフェイス画面450には、すべての冗長構成10が解除されていることを示すオブジェクト456も表示される。
 なお、ユーザインターフェイス画面450において、切断されている冗長経路についても表示するようにしてもよい。一方で、切断されている冗長経路は本質的な障害ではないので、ユーザの混乱を防止するために、切断されている冗長経路については表示しないようにしてもよい。
 図15は、本実施の形態に従う制御システム1のサポート装置400が提供するユーザインターフェイス画面の別の一例を示す模式図である。図15を参照して、ユーザインターフェイス画面460は、ネットワークに含まれるデバイス200(スレーブ)の各ポートの状態を示す一覧表示オブジェクト462を含む。
 一覧表示オブジェクト462は、各スレーブを特定するための識別情報464と、各スレーブのINポート251を示すINポート表示466およびOUTポート252を示すOUTポート表示468とを含む。INポート表示466に対応付けて、スレーブのINポート251の状態を示す状態表示467が表示されている。同様に、OUTポート表示468に対応付けて、スレーブのOUTポート252の状態を示す状態表示469が表示されている。
 例えば、図3に示すような障害が発生している場合には、デバイス200-2(スレーブ02)のOUTポート252、および、デバイス200-3(スレーブ03)のINポート251が「リンクオフ」と表示される。ユーザは、このようなネットワークの状態表示を参照することで、ネットワーク内で障害が発生している位置を一見して把握できる。
 なお、障害の発生を意味する「リンクオフ」の表示については、正常の状態を意味する「接続中」とは表示態様を異ならせてもよい。
 図16は、本実施の形態に従う制御システム1のサポート装置400が提供するユーザインターフェイス画面のさらに別の一例を示す模式図である。図16を参照して、ユーザインターフェイス画面470は、ネットワークに関するイベントログ472を含む。
 イベントログ472は、PLC100に予め登録されたイベントに応じて生成されてもよい。図16に示す例では、図3に示すような障害が発生したタイミングでイベントログ472が生成され、さらに、冗長構成10が解除されたタイミングで別のイベントログ472が生成されている。
 上述の図14~図16に示されるユーザインターフェイス画面に限られず、任意のユーザインターフェイス画面を用いて、ユーザに対して必要な情報を提供することができる。
 (f2:HMI)
 制御システム1にHMIを設け、必要な情報をHMI上に表示してもよい。HMI上に表示される情報としては、上述の図14~図16に示されるユーザインターフェイス画面と同様の内容としてもよい。あるいは、制御システム1が制御する制御対象に応じて、任意に作成されるユーザインターフェイス画面を用いてもよい。すなわち、任意のユーザインターフェイス画面を用いて、ユーザに対して必要な情報を提供することができる。
 なお、HMIは、汎用的なアーキテクチャに従うハードウェア(例えば、汎用パソコンをベースとした産業用パソコン)を用いて実現してもよい。
 (f3:ユーザプログラム)
 PLC100は、ネットワークの状態を取得することができるので、取得したネットワークの状態をユーザプログラムで参照できるようにしてもよい。
 図17は、本実施の形態に従う制御システム1のPLC100で実行されるユーザプログラム1104の一例を示す図である。図17を参照して、ユーザプログラム1104は、冗長構成10が解除されているか否かを示す変数を利用可能になっている。A接点として用いられる変数160は、冗長構成10が維持されている状態でONになり、B接点として用いられる変数162は、冗長構成10が解除されている状態でONになる。このように、ユーザプログラム1104では、ネットワークに含まれる冗長構成10が解除されているか否かを示す情報を参照可能である。
 ユーザプログラム1104において、処理ブロック164には、ネットワークが正常であるときの処理が規定されており、処理ブロック166には、ネットワークに何らかの障害が発生しているときの処理が規定されているとする。ここで、変数160は、処理ブロック164の実行条件として用いられており、変数162は、処理ブロック166の実行条件として用いられている。
 このようなユーザプログラム1104を作成することで、ネットワークに何らの障害も発生していないときの処理と、ネットワークに何らかの障害が発生しているときの処理とを切り替えることができる。
 図17には、冗長構成10が解除されているか否かを示す変数を用いる例を示すが、これに限らず、冗長構成10が解除されているか否かを示す状態を必要に応じて取得する専用命令を用意してもよいし、冗長構成10が解除されることをトリガーとして発生するイベントを用意してもよい。
 (f4:冗長構成解除の必要性の通知)
 上述の説明においては、ネットワークに障害が発生し、当該発生した障害が所定の条件を満たす場合には、ネットワークに含まれるすべての冗長構成10を自動的に解除する実装例について説明したが、すべての冗長構成10の解除をユーザが行うようにしてもよい。あるいは、ユーザの承認を得た上で、すべての冗長構成10を解除するようにしてもよい。
 このような実装例を採用する場合には、ユーザに対して、ネットワークに含まれるすべての冗長構成10を解除する必要がある旨を通知するようにしてもよい。
 <G.その他の実施形態>
 上述の説明においては、主として、EtherCATに従うネットワークに適用した場合について説明したが、本実施の形態に従う通信制御方法の適用先は、EtherCATに従うネットワークに限定されるものではない。
 例えば、EtherCATと同様に、スレーブ間を永遠に巡回しないような仕組みを採用している通信プロトコルであれば、同様に適用可能である。
 <H.付記>
 上述したような本実施の形態は、以下のような技術思想を含む。
 [構成1]
 1または複数の通信スレーブ(200)を含むネットワークにおいて通信マスタ(100)として動作する制御装置(100)であって、前記通信マスタから送信された通信フレームは、前記ネットワークを一巡して前記通信マスタに戻るように順次転送され、前記複数の通信スレーブの各々は、INポート(251)およびOUTポート(252)を有しており、前記制御装置は、
 前記ネットワークにおける通信状態を監視する監視手段(150)と、
 前記ネットワークに含まれるいずれかのケーブルの切断が検出されると、当該切断が検出されたケーブルに接続されている通信スレーブが解除条件を満たすか否かを判断する判断手段(152)とを備え、前記解除条件は、対象の通信スレーブのINポートに接続されているケーブルが切断されており、かつ、OUTポートで通信フレームを受信し得ることを含み、
 前記解除条件が満たされると、前記ネットワークに含まれる冗長構成(10)を解除する管理手段(154)を備える、制御装置。
 [構成2]
 前記管理手段は、対象の冗長構成を解除するために切断すべきケーブルがOUTポートに接続されている通信スレーブに対して、当該OUTポートをクローズするための指令を与える、構成1に記載の制御装置。
 [構成3]
 前記ネットワークに含まれる冗長構成の各々には、冗長構成を解除するために切断すべきケーブルにスイッチ(510)が設けられており、
 前記管理手段は、対象の冗長構成に設けられたスイッチの各々がケーブルを切断するための指令を与える、構成1に記載の制御装置。
 [構成4]
 前記判断手段は、前記切断が検出されたケーブルがいずれかの冗長構成に含まれており、かつ、前記切断が検出されたケーブルが当該冗長構成を解除するために切断すべきケーブルではない場合に、前記解除条件が満たされると決定する、構成1~3のいずれか1項に記載の制御装置。
 [構成5]
 同一の通信フレームが、INポートに接続されているケーブルが切断された通信スレーブのOUTポートで複数回受信されると、当該通信フレームは破棄される、構成1~4のいずれか1項に記載の制御装置。
 [構成6]
 前記管理手段は、前記切断が検出されたケーブルが再接続されると、解除した冗長構成を再構成する、構成1~5のいずれか1項に記載の制御装置。
 [構成7]
 前記ネットワークに含まれる冗長構成が解除されている状態を通知する通知手段(156)をさらに備える、構成1~6のいずれか1項に記載の制御装置。
 [構成8]
 ユーザプログラム(1104)を実行する実行手段(102)をさらに備え、
 前記ユーザプログラムは、前記ネットワークに含まれる冗長構成が解除されているか否かを示す情報を参照可能である、構成1~7のいずれか1項に記載の制御装置。
 [構成9]
 1または複数の通信スレーブ(200)を含むネットワークにおいて通信マスタ(100)として動作する制御装置(100)で実行される通信制御方法であって、前記通信マスタから送信された通信フレームは、前記ネットワークを一巡して前記通信マスタに戻るように順次転送され、前記複数の通信スレーブの各々は、INポート(251)およびOUTポート(252)を有しており、前記通信制御方法は、
 前記ネットワークにおける通信状態を監視するステップ(S100)と、
 前記ネットワークに含まれるいずれかのケーブルの切断が検出されると、当該切断が検出されたケーブルに接続されている通信スレーブが解除条件を満たすか否かを判断するステップ(S102~S116)とを備え、前記解除条件は、対象の通信スレーブのINポートに接続されているケーブルが切断されており、かつ、OUTポートで通信フレームを受信し得ることを含み、
 前記解除条件が満たされると、前記ネットワークに含まれる冗長構成を解除するステップ(S120)を備える、通信制御方法。
 [構成10]
 1または複数の通信スレーブ(200)を含むネットワークにおいて通信マスタ(100)として動作するコンピュータ(100)で実行される制御プログラム(1102)であって、前記通信マスタから送信された通信フレームは、前記ネットワークを一巡して前記通信マスタに戻るように順次転送され、前記複数の通信スレーブの各々は、INポート(251)およびOUTポート(252)を有しており、前記制御プログラムは前記コンピュータに、
 前記ネットワークにおける通信状態を監視するステップ(S100)と、
 前記ネットワークに含まれるいずれかのケーブルの切断が検出されると、当該切断が検出されたケーブルに接続されている通信スレーブが解除条件を満たすか否かを判断するステップ(S102~S116)とを実行させ、前記解除条件は、対象の通信スレーブのINポートに接続されているケーブルが切断されており、かつ、OUTポートで通信フレームを受信し得ることを含み、
 前記解除条件が満たされると、前記ネットワークに含まれる冗長構成を解除するステップ(S120)を実行させる、制御プログラム。
 <I.利点>
 本実施の形態に係る制御システムは、複数の冗長構成を含むネットワークにおいて生じる、複数箇所の障害発生による通信フレームの破棄といった課題に対する解決手段を提供できる。
 今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、請求の範囲によって示され、請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
 1,1A,1B 制御システム、10 冗長構成、20,21,22,23,24,25,26,31,32,33,34,35,36,41,42,43,44,45,46 ケーブル、100 PLC、102,202,302,402 プロセッサ、104,204,304,404 メインメモリ、110,210,310,410 ストレージ、112,212 フィールドネットワークコントローラ、114 ローカルバスコントローラ、116 機能ユニット、118,228 内部バス、150 通信状態監視モジュール、151 ポート、152 要否判断モジュール、154 ネットワーク管理モジュール、156 通知モジュール、160,162 変数、164,166 処理ブロック、200 デバイス、206,306 制御回路、220 機能モジュール、251 INポート、252 OUTポート、300 中継装置、312 フィールドネットワークインターフェイス、351 第1ポート、352 第2ポート、353 第3ポート、354 第4ポート、355 第5ポート、356 第6ポート、400 サポート装置、406 入力部、408 表示部、412 通信コントローラ、416 光学ドライブ、418 記憶媒体、424 USBコントローラ、450,460,470 ユーザインターフェイス画面、452,454,456 オブジェクト、462 一覧表示オブジェクト、464 識別情報、466 INポート表示、467,469 状態表示、468 OUTポート表示、472 イベントログ、500 接続管理装置、510 スイッチ、1102 システムプログラム、1104 ユーザプログラム、1106 システム設定情報、4102 OS、4104 開発プログラム。

Claims (10)

  1.  1または複数の通信スレーブを含むネットワークにおいて通信マスタとして動作する制御装置であって、前記通信マスタから送信された通信フレームは、前記ネットワークを一巡して前記通信マスタに戻るように順次転送され、前記複数の通信スレーブの各々は、INポートおよびOUTポートを有しており、前記制御装置は、
     前記ネットワークにおける通信状態を監視する監視手段と、
     前記ネットワークに含まれるいずれかのケーブルの切断が検出されると、当該切断が検出されたケーブルに接続されている通信スレーブが解除条件を満たすか否かを判断する判断手段とを備え、前記解除条件は、対象の通信スレーブのINポートに接続されているケーブルが切断されており、かつ、OUTポートで通信フレームを受信し得ることを含み、
     前記解除条件が満たされると、前記ネットワークに含まれる冗長構成を解除する管理手段を備える、制御装置。
  2.  前記管理手段は、対象の冗長構成を解除するために切断すべきケーブルがOUTポートに接続されている通信スレーブに対して、当該OUTポートをクローズするための指令を与える、請求項1に記載の制御装置。
  3.  前記ネットワークに含まれる冗長構成の各々には、冗長構成を解除するために切断すべきケーブルにスイッチが設けられており、
     前記管理手段は、対象の冗長構成に設けられたスイッチの各々がケーブルを切断するための指令を与える、請求項1に記載の制御装置。
  4.  前記判断手段は、前記切断が検出されたケーブルがいずれかの冗長構成に含まれており、かつ、前記切断が検出されたケーブルが当該冗長構成を解除するために切断すべきケーブルではない場合に、前記解除条件が満たされると決定する、請求項1~3のいずれか1項に記載の制御装置。
  5.  同一の通信フレームが、INポートに接続されているケーブルが切断された通信スレーブのOUTポートで複数回受信されると、当該通信フレームは破棄される、請求項1~4のいずれか1項に記載の制御装置。
  6.  前記管理手段は、前記切断が検出されたケーブルが再接続されると、解除した冗長構成を再構成する、請求項1~5のいずれか1項に記載の制御装置。
  7.  前記ネットワークに含まれる冗長構成が解除されている状態を通知する通知手段をさらに備える、請求項1~6のいずれか1項に記載の制御装置。
  8.  ユーザプログラムを実行する実行手段をさらに備え、
     前記ユーザプログラムは、前記ネットワークに含まれる冗長構成が解除されているか否かを示す情報を参照可能である、請求項1~7のいずれか1項に記載の制御装置。
  9.  1または複数の通信スレーブを含むネットワークにおいて通信マスタとして動作する制御装置で実行される通信制御方法であって、前記通信マスタから送信された通信フレームは、前記ネットワークを一巡して前記通信マスタに戻るように順次転送され、前記複数の通信スレーブの各々は、INポートおよびOUTポートを有しており、前記通信制御方法は、
     前記ネットワークにおける通信状態を監視するステップと、
     前記ネットワークに含まれるいずれかのケーブルの切断が検出されると、当該切断が検出されたケーブルに接続されている通信スレーブが解除条件を満たすか否かを判断するステップとを備え、前記解除条件は、対象の通信スレーブのINポートに接続されているケーブルが切断されており、かつ、OUTポートで通信フレームを受信し得ることを含み、
     前記解除条件が満たされると、前記ネットワークに含まれる冗長構成を解除するステップとを備える、通信制御方法。
  10.  1または複数の通信スレーブを含むネットワークにおいて通信マスタとして動作するコンピュータで実行される制御プログラムであって、前記通信マスタから送信された通信フレームは、前記ネットワークを一巡して前記通信マスタに戻るように順次転送され、前記複数の通信スレーブの各々は、INポートおよびOUTポートを有しており、前記制御プログラムは前記コンピュータに、
     前記ネットワークにおける通信状態を監視するステップと、
     前記ネットワークに含まれるいずれかのケーブルの切断が検出されると、当該切断が検出されたケーブルに接続されている通信スレーブが解除条件を満たすか否かを判断するステップとを実行させ、前記解除条件は、対象の通信スレーブのINポートに接続されているケーブルが切断されており、かつ、OUTポートで通信フレームを受信し得ることを含み、
     前記解除条件が満たされると、前記ネットワークに含まれる冗長構成を解除するステップを実行させる、制御プログラム。
PCT/JP2021/008914 2020-11-24 2021-03-08 制御装置、通信制御方法、および制御プログラム WO2022113384A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2020-194428 2020-11-24
JP2020194428A JP2022083143A (ja) 2020-11-24 2020-11-24 制御装置、通信制御方法、および制御プログラム

Publications (1)

Publication Number Publication Date
WO2022113384A1 true WO2022113384A1 (ja) 2022-06-02

Family

ID=81754150

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/008914 WO2022113384A1 (ja) 2020-11-24 2021-03-08 制御装置、通信制御方法、および制御プログラム

Country Status (2)

Country Link
JP (1) JP2022083143A (ja)
WO (1) WO2022113384A1 (ja)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007306344A (ja) * 2006-05-12 2007-11-22 Fujitsu Ltd パケット伝送装置、パケット転送方法及びパケット伝送システム
US20140233372A1 (en) * 2011-11-04 2014-08-21 Freescale Semiconductor, Inc. Real-time distributed network module, real-time distributed network and method therefor
CN104767664A (zh) * 2014-01-07 2015-07-08 艾默生网络能源有限公司 一种环形通信网络增减从节点的方法、装置及系统
JP2016119616A (ja) * 2014-12-22 2016-06-30 富士電機株式会社 リング型ネットワークシステム、そのマスタノード
WO2019087849A1 (ja) * 2017-10-31 2019-05-09 村田機械株式会社 通信システム、被制御機器、及び、通信システムの制御方法
JP2020161998A (ja) * 2019-03-27 2020-10-01 オムロン株式会社 ネットワーク管理装置、管理方法、管理プログラムおよび記録媒体

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007306344A (ja) * 2006-05-12 2007-11-22 Fujitsu Ltd パケット伝送装置、パケット転送方法及びパケット伝送システム
US20140233372A1 (en) * 2011-11-04 2014-08-21 Freescale Semiconductor, Inc. Real-time distributed network module, real-time distributed network and method therefor
CN104767664A (zh) * 2014-01-07 2015-07-08 艾默生网络能源有限公司 一种环形通信网络增减从节点的方法、装置及系统
JP2016119616A (ja) * 2014-12-22 2016-06-30 富士電機株式会社 リング型ネットワークシステム、そのマスタノード
WO2019087849A1 (ja) * 2017-10-31 2019-05-09 村田機械株式会社 通信システム、被制御機器、及び、通信システムの制御方法
JP2020161998A (ja) * 2019-03-27 2020-10-01 オムロン株式会社 ネットワーク管理装置、管理方法、管理プログラムおよび記録媒体

Also Published As

Publication number Publication date
JP2022083143A (ja) 2022-06-03

Similar Documents

Publication Publication Date Title
JP4776374B2 (ja) 二重化監視制御システム、及び同システムの冗長化切替え方法
JP4782823B2 (ja) ユーザ端末、マスタ・ユニット、通信システムおよびその稼動方法
CN108377255B (zh) 信息处理装置、信息处理方法和记录介质
JP6897494B2 (ja) 制御システム、制御システムの通信制御方法、および中継装置
JP6747525B2 (ja) セーフティシステムおよびセーフティコントローラ
JP6852421B2 (ja) 情報処理装置、情報処理プログラムおよび情報処理方法
EP3073380B1 (en) Redundant pc system
CN102487347B (zh) 航天智能总线接口系统和使用该接口系统的航天智能网络系统
WO2022113384A1 (ja) 制御装置、通信制御方法、および制御プログラム
JP7028078B2 (ja) Plc二重化システムの切替方式、plc二重化システムの切替方法
JP3402733B2 (ja) 伝送装置の制御システム
JP2008181240A (ja) 冗長化分散制御システム
JP2007334668A (ja) メモリダンプ方法、クラスタシステム、それを構成するノードおよびプログラム
JP2008197907A (ja) 監視ネットワークシステムおよびデータバックアップ方法
WO2023276350A1 (ja) 通信装置、通信制御方法、および通信制御プログラム
JP2012208706A (ja) 冗長コントローラ
WO2022113383A1 (ja) 制御装置、通信制御方法、および制御プログラム
JP2014110620A (ja) ネットワーク運用システム
US7818613B2 (en) Arrangement and method for connecting a processing node in a distribution system
WO2023248548A1 (ja) 制御システム、中継装置および通信方法
JP7326239B2 (ja) コントローラ、および、コントローラシステム
WO2023248547A1 (ja) 制御システム、中継装置および通信方法
JP2023161769A (ja) 二重化通信インターフェースモジュールの切替方法
KR20000021045A (ko) 컴퓨터 제어의 이중화 방법 및 그 시스템
JP2022144841A (ja) 新旧監視制御切替システム、新旧監視制御切替システムの切替方法

Legal Events

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

Ref document number: 21897364

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

Country of ref document: EP

Kind code of ref document: A1