Communication control system, communication control method, and program
The communication control system addresses the challenge of managing diverse protocols by prioritizing and timing packet transmission across multiple devices, ensuring efficient communication in industrial networks.
Patent Information
- Application Number
- JP2024010518
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-01-26
- Publication Date
- 2025-08-07
AI Technical Summary
Conventional communication systems struggle to manage multiple devices using different protocols on the same network, particularly in industrial automation, and fail to prioritize communication effectively when different protocols coexist.
A communication control system that includes a packet transmission/reception unit, protocol type determination, protocol operation control, device operation control, priority determination, and transmission timing determination units to manage and prioritize communication across devices using diverse protocols.
Enables effective communication control according to priority in networks with coexisting protocols, allowing seamless integration and management of multiple devices without protocol constraints.
Smart Images

Figure 2025115836000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to a communication control system, a communication control method, and a program. [Background technology]
[0002] Conventionally, there is a communication system in which communication is performed between a device and a control device using a predetermined protocol. FIG. 18 is a diagram showing an example of the configuration of a conventional communication system. The conventional communication system 10 shown in FIG. 18 is an industrial automation communication system that performs communication using a predetermined protocol. The communication system 10 includes a device 11, a switch 12, a control device 13, and a support device 14.
[0003] The equipment 11 is, for example, an industrial equipment (device) such as a sensor or a motor. The equipment 11 is connected to a switch 12. The switch 12 is a device that switches the path of data transmitted between the equipment 11 and a control device 13. The control device 13 is a device that controls the operation of the equipment 11. The assistance device 14 is, for example, an information processing device such as a personal computer or a human machine interface (HMI). The assistance device 14 is a terminal device operated by a user. The assistance device 14 is connected to the control device 13.
[0004] When the protocol used in the communication system 10 is PROFINET (see Non-Patent Document 1), the GSD file 15 (General Station Description File) is a setting file that defines the communication specifications of the device 11. The GSD file 15 is prepared in advance, for example, by the manufacturer of the device 11. Setting values used for communication or control of the device 11 are determined according to the communication specifications or control specifications of the device 11. A user manually operates an engineering tool running on the support device 14 to load setting information, including setting values such as a control period, into the control device 13. The engineering tool is an application that loads a setting file including setting information into the control device. This enables communication between the device 11 and the control device 13.
[0005] PROFINET (registered trademark) communications include periodic data communications (real-time communications) and aperiodic data communications. Two types of protocols for periodic data communications have been standardized: PROFINET RT (Real-Time) (registered trademark) and PROFINET IRT (Isochronous Real-Time) (registered trademark). PROFINET IRT (registered trademark) is a protocol that requires higher latency performance. PROFINET NRT (Non Real-Time) (registered trademark) has also been standardized as a protocol for aperiodic data communications. In PROFINET (registered trademark) communications, for example, high-priority IRT packets are first transmitted by PROFINET IRT (registered trademark) using a fixed-length bandwidth, and then low-priority packets are transmitted by PROFINET RT (registered trademark) and PROFINET NRT (registered trademark) using the remaining slots. [Prior art documents] [Non-patent literature]
[0006] [Non-Patent Document 1] “PROFINET System Description - Technology and Application”, Version June 2011, Order number 4.132, Japan PROFIBUS Association, September 2011 [Non-patent document 2] “PROFINET Design Guidelines”, Version 1.14, Japan PROFIBUS Association, December 2014 [Non-patent document 3] “Why is hardware support required for using clock-synchronized real-time communication (IRT) in PROFINET?”, SiePortal, FAQ Entry ID: 19543871 ,Entry date: 10 / 06 / 2005, Siemens AG. Siemens AG Summary of the Invention [Problem to be solved by the invention]
[0007] Recently, in communication systems such as industrial automation, the functions of industrial devices are increasingly being implemented as software. With this software implementation, it is expected that in the future, multiple devices using different protocols will be connected to the same control device. In this case, different protocols, such as PROFINET (registered trademark), EtherCAT (registered trademark), and EtherNet / IP (registered trademark), will coexist on the same network. However, conventional communication systems do not anticipate the coexistence of different protocols on the same network. Therefore, conventional communication systems have a problem in that it is difficult to connect multiple devices using different protocols to the same control device. Furthermore, when different protocols are coexisting, conventional communication systems have a problem in that it is difficult to perform communication control that takes priority into account, as described above.
[0008] In view of the above circumstances, an object of the present invention is to provide a communication control system, a communication control method, and a program that are capable of controlling communication according to priority in a network in which different types of protocols coexist. [Means for solving the problem]
[0009] One aspect of the present invention is a communication control system that controls multiple devices that use different protocols via a network, and includes a packet transmission / reception unit that transmits and receives packets to and from the devices, a protocol type determination unit that determines the protocol used by the source device based on a received packet, a protocol operation control unit that is provided for each protocol and that acquires information included in the received packet, identifies the source device based on the received packet, and generates a transmission packet including a control signal that controls the device in accordance with the protocol used by the source device, a device operation control unit that generates the control signal based on the information included in the received packet, a priority determination unit that determines the priority for transmitting the transmission packet based on the protocol, and a transmission timing determination unit that determines the transmission timing of the transmission packet based on the priority.
[0010] Another aspect of the present invention is a communication control method executed by a communication control system that controls, via a network, a plurality of devices that use different protocols, the communication control method comprising: a packet sending and receiving step of sending and receiving packets to and from the devices; a protocol type determination step of determining the protocol used by the source device based on the received packet; a protocol operation control step, provided for each protocol, of acquiring information included in the received packet, identifying the source device based on the received packet, and generating a transmission packet including a control signal for controlling the device in accordance with the protocol used by the source device; a device operation control step of generating the control signal based on the information included in the received packet; a priority determination step of determining the priority in transmitting the transmission packet based on the protocol; and a transmission timing determination step of determining the transmission timing of the transmission packet based on the priority.
[0011] Another aspect of the present invention is a program for causing a computer to function as the above-described communication control system. [Effects of the Invention]
[0012] According to the present invention, it is possible to perform communication control according to priority in a network in which different types of protocols coexist. [Brief explanation of the drawings]
[0013] [Figure 1] 1 is a diagram illustrating an example of a configuration of a communication system 1a according to a first embodiment of the present invention. [Figure 2] 4 is a flowchart showing the operation of the control device 3 in the first embodiment of the present invention. [Figure 3] FIG. 4 is a diagram showing an example of packet transmission timing by the control device 3 in the first embodiment of the present invention. [Figure 4] FIG. 4 is a diagram showing an example of packet transmission timing by the control device 3 in the first embodiment of the present invention. [Figure 5] FIG. 10 is a diagram showing a configuration of a communication system 1b according to a first modified example of the first embodiment of the present invention. [Figure 6] FIG. 10 is a diagram showing a configuration of a communication system 1c according to a second modified example of the first embodiment of the present invention. [Figure 7] FIG. 10 is a diagram showing a configuration of a communication system 1d according to a third modified example of the first embodiment of the present invention. [Figure 8] FIG. 10 is a diagram showing a configuration of a communication system 1e according to a fourth modified example of the first embodiment of the present invention. [Figure 9] FIG. 10 is a diagram illustrating an example of the configuration of a communication system 1f according to a second embodiment of the present invention. [Figure 10] 10 is a flowchart showing the operation of a control device 3f in the second embodiment of the present invention. [Figure 11] FIG. 10 is a diagram illustrating an example of the configuration of a communication system 1g according to a third embodiment of the present invention. [Figure 12] 10 is a flowchart showing the operations of the support device 6 and the control device 7 in the third embodiment of the present invention. [Figure 13]FIG. 10 is a diagram showing a configuration of a communication system 1h according to a first modified example of the third embodiment of the present invention. [Figure 14] FIG. 10 is a diagram showing a configuration of a communication system 1i according to a second modified example of the third embodiment of the present invention. [Figure 15] FIG. 10 is a diagram illustrating an example of the configuration of a communication system 1j according to a fourth embodiment of the present invention. [Figure 16] 10 is a flowchart showing the operations of a support device 6j and a control device 7 in a fourth embodiment of the present invention. [Figure 17] FIG. 2 is a diagram illustrating an example of a hardware configuration of a control device and an assistance device according to each embodiment of the present invention. [Figure 18] FIG. 1 is a diagram illustrating an example of the configuration of a conventional communication system. DETAILED DESCRIPTION OF THE INVENTION
[0014] First Embodiment A first embodiment of the present invention will be described in detail below with reference to the drawings.
[0015] [Communication system configuration] FIG. 1 is a diagram showing an example of the configuration of a communication system 1a according to a first embodiment of the present invention. As shown in FIG. 1, the communication system 1a includes a plurality of devices 2 and a control device 3. The communication system 1a is a system in which the devices 2 and the control device 3 communicate with each other using a predetermined protocol. The predetermined protocol is, for example, industrial protocols such as PROFINET (registered trademark), EtherCAT (registered trademark), and EtherNet / IP (registered trademark). In the communication system 1a, a plurality of devices 2 using different protocols can be connected to the same control device 3. The control device 3 is an example of a communication control system according to the present invention.
[0016] The device 2 is, for example, an industrial device such as a sensor, a motor, an inverter, or a robot. For example, the device 2 receives a packet or a frame (hereinafter collectively referred to as a "packet") transmitted from the control device 3, and operates according to a control signal contained in the received packet. The control signal includes, for example, a value of a control amount in controlling the device 2. The device 2 also operates according to the acquired control amount, and performs measurement using, for example, a sensor. The device 2 transmits a packet including the measured sensor value and identification information for identifying the device itself to the control device 3.
[0017] The control device 3 is a device that controls the operation of the devices 2. The control device 3 acquires packets output from each of the multiple devices 2 connected to the control device 3, each packet including a sensor value and identification information identifying the device 2. The control device 3 determines the protocol used by each of the multiple devices 2 based on the acquired packets. The control device 3 reads out a driver for each of the identified protocols. The driver for each protocol is pre-stored in the control device 3, for example. Note that the driver for each protocol may be pre-stored in an external device (not shown), such as a database server, connected to the network to which the control device 3 is connected, and the control device 3 may acquire the driver for each protocol from the external device. The control device 3 transfers identification information of the corresponding device 2 to each of the read drivers. This enables communication between the control device 3 and each of the multiple devices 2.
[0018] The control device 3 controls the operation of the device 2 by transmitting a packet including a control signal to the device 2. As described above, the control signal includes, for example, the value of a control amount in controlling the device 2. Furthermore, the control device 3 may determine a new control amount based on the acquired sensor value, and again transmit a packet including a new control signal including the determined value of the control amount to the device 2. In this way, the control device 3 continuously controls the device 2.
[0019] [Device configuration] The following describes in detail the configuration of the device 2. As shown in FIG.
[0020] The storage unit 20 stores sensor values measured by sensors and identification information for identifying the device 2 (its own device). The storage unit 20 also stores various data and programs used by the device 2. The storage unit 20 is configured to include, for example, semiconductor memories such as RAM (Random Access Memory), EEPROM (Electrically Erasable Programmable Read-Only Memory) and ROM (Read-Only Memory), flash memories such as SSD (Solid State Drive), magnetic disks such as HDD (Hard Disk Drive), optical disks, or other storage media (not shown), or any combination of these storage media (not shown).
[0021] The packet transmitter / receiver 21 executes communication between the device 2 (its own device) and the control device 3. The packet transmitter / receiver 21 acquires the sensor value and identification information for identifying the device 2 from the storage unit 20. The packet transmitter / receiver 21 transmits a packet including the acquired measurement value and the identification information for identifying the device 2 to the control device 3 using a predetermined protocol.
[0022] The storage unit 20 may store setting information of the device 2. The setting information is, for example, information used by the control device 3 for communication and control of the device 2. In this case, the packet transmitting / receiving unit 21 transmits to the control device 3 a packet that also includes the setting information.
[0023] The packet transmitter / receiver 21 also receives a packet containing a control signal transmitted from the control device 3. The device 2 operates in accordance with the control signal contained in the acquired packet. For example, the device 2 operates in accordance with the control amount indicated by the acquired control signal, and measures a sensor value using a sensor. The device 2 stores the measured sensor value in the storage unit 20.
[0024] [Control device configuration] Next, a detailed description will be given of the configuration of the control device 3. As shown in Fig. 1, the control device 3 includes a storage unit 30, a packet transmitting / receiving unit 31, a protocol type determination unit 32, a plurality of protocol operation control units 33, a plurality of device operation control units 34, a priority determination unit 35, and a transmission timing determination unit 36.
[0025] The storage unit 30 stores a driver for each protocol in advance. Alternatively, the storage unit 30 stores a driver for each protocol downloaded from an external device (not shown), such as a database server, connected to the network to which the control device 3 is connected. The storage unit 30 also stores various data and programs used by the control device 3. For example, the storage unit 30 may include semiconductor memories such as RAM, EEPROM, and ROM, flash memories such as SSDs, storage media (not shown) such as magnetic disks like HDDs and optical disks, or any combination of these storage media (not shown).
[0026] The packet transmitter / receiver 31 executes communication between the control device 3 and the device 2. The packet transmitter / receiver 31 receives a packet transmitted from the device 2, which includes a sensor value and identification information for identifying the device 2. The packet transmitter / receiver 31 may also receive a packet transmitted from the device 2, which includes setting information of the device 2. The packet transmitter / receiver 31 outputs the received packet to the protocol type discriminator 32.
[0027] Furthermore, the packet transmitter / receiver 31 acquires a packet including a control signal output from the transmission timing determination unit 36. Upon acquiring the packet including the control signal, the packet transmitter / receiver 31 immediately transmits the packet to the transmission destination device 2. At this time, the packet transmitter / receiver 31 transmits the packet according to the protocol used by the transmission destination device 2.
[0028] The protocol type determination unit 32 acquires the packet output from the packet transmission / reception unit 31. Based on the acquired packet, the protocol type determination unit 32 determines the protocol used by the device 2 that transmitted the packet.
[0029] For example, the protocol type determination unit 32 determines the protocol used by the device 2 based on the EtherType or port number of the acquired packet. For example, in the case of a uniquely implemented protocol such as PROFINET IRT (registered trademark), PROFINET RT (registered trademark), or EtherCAT (registered trademark), the protocol type determination unit 32 determines the protocol used by the device 2 based on the EtherType. Furthermore, in the case of a mechanism of TCP (Transmission Control Protocol) or UDP (User Datagram Protocol) such as PROFINET NRT (registered trademark) or EtherNet / IPT (registered trademark), the protocol type determination unit 32 determines the protocol used by the device 2 based on the port number.
[0030] The protocol type determination unit 32 outputs the acquired packet to the protocol operation control unit 33 corresponding to the determined protocol.
[0031] A protocol operation control unit 33 is provided for each protocol used. The protocol operation control unit 33 acquires the packet output from the protocol type determination unit 32. The protocol operation control unit 33 acquires the sensor value and identification information for identifying the device 2 from the acquired packet. The protocol operation control unit 33 identifies the device 2 based on the acquired identification information.
[0032] The protocol operation control unit 33 outputs the sensor value, the identification information for identifying the device 2, and the information indicating the protocol to the device operation control unit 34 corresponding to the identified device 2.
[0033] Furthermore, the protocol operation control unit 33 acquires the control signal and identification information for identifying the device 2, which are output from the device operation control unit 34. The protocol operation control unit 33 generates a packet storing the control signal in accordance with the protocol used by the device 2. The protocol operation control unit 33 outputs the packet including the control signal to the priority determination unit 35.
[0034] An appliance operation control unit 34 is provided for each appliance 2 connected to the control device 3. The appliance operation control unit 34 acquires the sensor value, identification information for identifying the appliance 2, and information indicating the protocol, which are output from the protocol operation control unit 33.
[0035] The appliance operation control unit 34 calculates a control value. For example, the appliance operation control unit 34 calculates the control value based on the acquired sensor value. The appliance operation control unit 34 outputs a control signal including the control value and identification information that identifies the appliance 2 to the protocol operation control unit 33. At this time, the appliance operation control unit 34 outputs the control signal to the protocol operation control unit 33 that corresponds to the protocol indicated by the acquired information.
[0036] The priority determination unit 35 acquires each packet output from each protocol operation control unit 33. The priority determination unit 35 determines the priority of the protocol corresponding to each acquired packet. The priority determination unit 35 rearranges the packets in descending order of the determined protocol priority.
[0037] For example, the priority determination unit 35 determines the priority of each protocol based on the delay requirement as follows: For example, PROFINET IRT (registered trademark) and EtherCAT (registered trademark) have delay requirements of 1 ms or less, and are therefore determined to be protocols with relatively high priority. PROFINET RT (registered trademark) has a delay requirement of 10 ms or less, and is therefore determined to be a protocol with relatively medium priority. On the other hand, PROFINET NRT (registered trademark) and EtherNet / IP (registered trademark) have delay requirements lower than the delay requirements of the above protocols, and are therefore determined to be protocols with relatively low priority.
[0038] The priority determination unit 35 outputs the packets rearranged according to the protocol priority to the transmission timing determination unit 36.
[0039] The transmission timing determination unit 36 receives the packets sorted according to the protocol priority output from the priority discrimination unit 35. The transmission timing determination unit 36 determines the transmission timing of each packet according to the sorting order of the packets. An example of a method for determining the transmission timing will be described later.
[0040] The transmission timing determination unit 36 outputs each packet to the packet transmitting / receiving unit 31 in order at the timing determined for each packet.
[0041] [Control device operation] An example of the operation of the control device 3 will be described below. Fig. 2 is a flowchart showing the operation of the control device 3 in the first embodiment of the present invention. The operation of the control device 3 shown in Fig. 2 starts when the control device 3 receives a packet transmitted from the device 2.
[0042] First, the packet transmitter / receiver 31 receives a packet transmitted from the device 2 (step S001). The packet includes a sensor value and identification information for identifying the device 2. The packet transmitter / receiver 31 outputs the received packet to the protocol type discriminator 32.
[0043] Next, the protocol type determination unit 32 determines the protocol used by the device 2 that transmitted the packet based on the packet acquired from the packet transmitting / receiving unit 31 (step S002). The protocol type determination unit 32 outputs the acquired packet to the protocol operation control unit 33 corresponding to the determined protocol.
[0044] Next, the protocol operation control unit 33 acquires the sensor value and identification information for identifying the device 2 from the packet acquired from the protocol type determination unit 32. The protocol operation control unit 33 identifies the device 2 based on the acquired identification information (step S003). The protocol operation control unit 33 outputs the sensor value, the identification information for identifying the device 2, and information indicating the protocol used by the device 2 to the device operation control unit 34 corresponding to the identified device 2.
[0045] Next, the appliance operation control unit 34 calculates a control value based on the sensor value acquired from the protocol operation control unit 33 (step S004). The appliance operation control unit 34 outputs a control signal including the control value and identification information for identifying the appliance 2 to the protocol operation control unit 33 corresponding to the protocol used by the appliance 2.
[0046] Next, the protocol operation control unit 33 generates a packet storing the control signal output from the device operation control unit 34 in accordance with the protocol used by the device 2 (step S005). The protocol operation control unit 33 outputs the packet including the control signal to the priority determination unit 35.
[0047] Next, the priority determination unit 35 acquires each packet output from each protocol operation control unit 33 and determines the priority of the protocol corresponding to each acquired packet (step S006). The priority determination unit 35 rearranges the packets in descending order of the determined protocol priority (step S007). The priority determination unit 35 outputs each of the packets rearranged according to the protocol priority to the transmission timing determination unit 36.
[0048] Next, the transmission timing determination unit 36 acquires the packets sorted according to the protocol priority output from the priority discrimination unit 35. The transmission timing determination unit 36 determines the transmission timing of each packet according to the sorting order of the packets (step S008). The transmission timing determination unit 36 outputs each packet to the packet transmitting / receiving unit 31 in order at the timing determined for each packet.
[0049] Next, upon receiving the packet including the control signal output from the transmission timing determination unit 36, the packet transmission / reception unit 31 immediately transmits the packet to the target device 2 (step S009). At this time, the packet transmission / reception unit 31 transmits the packet according to the protocol used by the device 2.
[0050] This completes the operation of the control device 3 shown in the flowchart of FIG.
[0051] [How to determine the transmission timing] The algorithm for determining the packet transmission timing will be described below with reference to two examples. Figures 3 and 4 are diagrams showing examples of packet transmission timing by the control device 3 in the first embodiment of the present invention.
[0052] 3 and 4, "Protocol A," "Protocol B," and "Protocol C" respectively represent packets sent to device 2 communicating using protocol A, packets sent to device 2 communicating using protocol B, and packets sent to device 2 communicating using protocol C. "Other Data" represents packets sent to device 2 communicating using other protocols. Other Data is, for example, packets containing video data. Here, the order of priority of each protocol is assumed to be protocol A, protocol B, protocol C, and other protocols, in descending order of priority.
[0053] (Fixed length algorithm) Fig. 3 shows an algorithm for determining packet transmission timing when communication is performed with the slot length assigned in advance for each protocol always being a fixed length. As shown in Fig. 3, for example, the control device 3 time-divides one control cycle into four transmission intervals (slots). The control device 3 then assigns the time-divided transmission intervals as the transmission interval for each packet in order of the protocol with the highest priority. That is, as shown in Fig. 3, the control device 3 assigns the transmission intervals in order as follows: a transmission interval for packets of protocol A, a transmission interval for packets of protocol B, a transmission interval for packets of protocol C, and a transmission interval for packets of Other Data.
[0054] Here, even if, for example, as in (a) of Figure 3, a packet of protocol A is shorter than the slot length and the latter half of the transmission interval is empty, in this algorithm the control device 3 does not take over the transmission of a packet of another protocol, but leaves the interval empty. Also, even if, for example, as in (b) of Figure 3, there is no packet of protocol B and the entire transmission interval is empty, in this algorithm the control device 3 does not take over the transmission of a packet of another protocol, but leaves the interval empty.
[0055] (Dynamic bandwidth allocation algorithm) Fig. 4 shows an algorithm for determining the timing of packet transmission using dynamic bandwidth allocation. As in Fig. 3, for example, the control device 3 time-divides one control cycle into four transmission intervals (slots). The control device 3 then allocates the time-divided transmission intervals as the transmission intervals for each packet in descending order of priority to the protocol.
[0056] Here, for example, as in FIG. 4(a), if a protocol A packet is shorter than the slot length and the latter half of the transmission interval is free, in this algorithm the control device 3 utilizes the free transmission interval to transmit an Other Data packet (FIG. 4(c)). Also, for example, as in FIG. 4(b), if a protocol B packet does not exist and the entire transmission interval is free, in this algorithm the control device 3 utilizes the free transmission interval to transmit an Other Data packet (FIG. 4(d)). In other words, in this algorithm, when a free interval occurs in the transmission interval, the control device 3 dynamically allocates bandwidth and makes effective use of the free transmission interval.
[0057] In addition, when multiple protocols with different control period lengths are mixed, the control device 3 may determine the greatest common divisor of the lengths of these multiple control periods as the length of one cycle of the control period. For example, when protocol A with a control period length of 2 [ms] and protocol B with a control period length of 4 [ms] are mixed, the control device 3 may determine the greatest common divisor, 2 [ms], as the length of one cycle of the control period.
[0058] As described above, the control device 3 in the first embodiment of the present invention controls, via a network, a plurality of devices 2 that use different protocols. The control device 3 includes a packet transmitter / receiver 31 that transmits and receives packets to and from the devices 2, a protocol type discriminator 32 that discriminates the protocol used by the source device 2 based on the received packet, a protocol operation controller 33 that is provided for each protocol and that acquires a sensor value included in the received packet, identifies the source device 2 based on the received packet, and generates a packet including a control signal for controlling the device 2 in accordance with the protocol used by the source device 2, a device operation controller 34 that generates a control signal based on the sensor value included in the received packet, a priority discriminator 35 that discriminates the priority of packet transmission based on the protocol, and a transmission timing determiner 36 that determines the timing of packet transmission based on the priority.
[0059] With this configuration, the control device 3 in the first embodiment of the present invention can mix multiple industrial devices 2 using different protocols on the same network. This makes it possible to select devices 2 without being bound by protocols. Furthermore, with this configuration, the control device 3 in the first embodiment of the present invention can perform communication control according to priority in a network where different types of protocols coexist.
[0060] A modification of the first embodiment will be described below.
[0061] (First Modification) 5 is a diagram showing the configuration of a communication system 1b according to a first modified example of the first embodiment of the present invention. The communication system 1b includes a device 2, a control device 3, and a switch 4. The communication system 1b may include a plurality of devices 2 under the control of the switch 4. The communication system 1b may further include a switch 4.
[0062] (Second Modification) 6 is a diagram showing the configuration of a communication system 1c according to a second modification of the first embodiment of the present invention. The communication system 1c includes a device 2, a control device 3, a switch 4-1, and a switch 4-2. The communication system 1c may include a plurality of devices 2 under the control of the switch 4-2. The communication system 1c may further include a switch 4.
[0063] (Third Modification) 7 is a diagram showing the configuration of a communication system 1d in a third modified example of the first embodiment of the present invention. The communication system 1d includes a device 2, a control device 3, a switch 4, and a communication line 5. The communication line 5 may be, for example, an electrical line such as EtherNet (registered trademark) or an optical line such as a PON (Passive Optical Network). The control device 3 communicates with the device 2 via the communication line 5 and the switch 4. The control device 3 is provided at a first location. The device 2 and the switch 4 are provided at a second location. The communication system 1d may further include the switch 4.
[0064] (Fourth Modification) 8 is a diagram showing the configuration of a communication system 1e according to a fourth modified example of the first embodiment of the present invention. The communication system 1e includes N devices 2 (N is an integer equal to or greater than 3), a control device 3, N+1 switches 4, and a communication line 5. The control device 3 communicates with a device 2-n (n is an integer from 1 to N) via a switch 4-1, the communication line 5, and a switch 4-(n+1).
[0065] The control device 3 is provided at a first location. The device 2-1 and the switch 4-2 are provided at a second location. The device 2-N and the switch 4-(N+1) are provided at an Nth location. The communication system 1e may further include a switch 4.
[0066] <Second embodiment> The second embodiment of the present invention will be described in detail below with reference to the drawings.
[0067] In a communication system 1f in a second embodiment described below, a common VLAN (Virtual Local Area Network) is set for each protocol, and the network is virtually divided. In this respect, the communication system 1f differs in configuration from the communication system 1a in the first embodiment described above. The following description will focus on the differences from the first embodiment.
[0068] Fig. 9 is a diagram showing an example of the configuration of a communication system 1f in a second embodiment of the present invention. As shown in Fig. 9, the communication system 1f includes a plurality of devices 2 and a control device 3f. The control device 3f is an example of a communication control system of the present invention. The configuration of the device 2 in the second embodiment is the same as the configuration of the device 2 in the first embodiment described above, and therefore a description thereof will be omitted.
[0069] [Control device configuration] The configuration of the control device 3f will be described in detail below. As shown in Fig. 9, the control device 3f includes a storage unit 30, a packet transmitting / receiving unit 31, a protocol type determination unit 32, a plurality of protocol operation control units 33, a plurality of device operation control units 34, a priority determination unit 35, a transmission timing determination unit 36, and a VLAN setting unit 37. That is, the configuration of the control device 3f differs from the configuration of the control device 3 in the first embodiment described above in that the VLAN setting unit 37 is added.
[0070] The priority determination unit 35 acquires each packet output from each protocol operation control unit 33. The priority determination unit 35 determines the priority of the protocol corresponding to each acquired packet. The priority determination unit 35 rearranges the packets in descending order of the determined protocol priority. The priority determination unit 35 outputs the packets rearranged according to the protocol priority to the VLAN setting unit 37.
[0071] The VLAN setting unit 37 acquires the packets sorted according to the protocol priority output from the priority determination unit 35. The VLAN setting unit 37 sets a common VLAN for each protocol, and virtually divides the network. Note that the VLAN setting unit 37 may set the same VLAN for the protocol used by another device 2 that is a peripheral device of the device 2 that uses the protocol for which the VLAN has been set. The VLAN setting unit 37 outputs the packets sorted according to the protocol priority to the transmission timing determination unit 36.
[0072] The transmission timing determination unit 36 receives the packets sorted according to the protocol priority output from the VLAN setting unit 37. The transmission timing determination unit 36 determines the transmission timing of each packet according to the sorting order of the packets. The transmission timing determination unit 36 outputs each packet to the packet transmitting / receiving unit 31 at the timing determined for each packet.
[0073] [Control device operation] An example of the operation of the control device 3f will be described below. Fig. 10 is a flowchart showing the operation of the control device 3f in the second embodiment of the present invention. The operation of the control device 3f shown in Fig. 10 starts when the control device 3f receives a packet transmitted from the device 2.
[0074] The operations of steps S101 to S106 of the control device 3f shown in FIG. 10 are similar to the operations of steps S001 to S006 of the control device 3 in the first embodiment shown in FIG. 2, and therefore will not be described.
[0075] The priority determination unit 35 rearranges the packets in descending order of the determined protocol priority (step S107). The priority determination unit 35 outputs the packets rearranged according to the protocol priority to the VLAN setting unit 37.
[0076] Next, the VLAN setting unit 37 acquires the packets sorted according to the protocol priority output from the priority determination unit 35. The VLAN setting unit 37 sets a common VLAN for each protocol, and virtually divides the network (step S108). The VLAN setting unit 37 outputs the packets sorted according to the protocol priority to the transmission timing determination unit 36.
[0077] Next, the transmission timing determination unit 36 acquires the packets output from the VLAN setting unit 37 and rearranged according to the protocol priority, and determines the transmission timing of each packet according to the packet rearrangement order (step S109). The transmission timing determination unit 36 outputs each packet to the packet transmitting / receiving unit 31 at the timing determined for each packet.
[0078] Next, upon receiving the packet including the control signal output from the transmission timing determination unit 36, the packet transmitting / receiving unit 31 immediately transmits the packet to the target device 2 (step S110). At this time, the packet transmitting / receiving unit 31 transmits the packet according to the protocol used by the device 2.
[0079] This completes the operation of the control device 3f shown in the flowchart of FIG.
[0080] As described above, the control device 3f in the second embodiment of the present invention controls, via a network, a plurality of devices 2 that use different protocols. The control device 3f includes a packet transmitter / receiver 31 that transmits and receives packets to and from the devices 2, a protocol type discriminator 32 that discriminates the protocol used by the source device 2 based on the received packet, a protocol operation controller 33 that is provided for each protocol and that acquires a sensor value included in the received packet, identifies the source device 2 based on the received packet, and generates a packet including a control signal for controlling the device 2 in accordance with the protocol used by the source device 2, a device operation controller 34 that generates a control signal based on the sensor value included in the received packet, a priority discriminator 35 that discriminates the priority of packet transmission based on the protocol, and a transmission timing determiner 36 that determines the timing of packet transmission based on the priority.
[0081] With this configuration, the control device 3f in the second embodiment of the present invention can mix multiple industrial devices 2 using different protocols on the same network. This makes it possible to select devices 2 without being bound by protocols. Furthermore, with this configuration, the control device 3f in the second embodiment of the present invention can perform communication control according to priority in a network where different types of protocols coexist.
[0082] Furthermore, the control device 3f in the second embodiment of the present invention includes a VLAN setting unit 37 that virtually divides the network by setting a common VLAN for each protocol. With this configuration, the control device 3f in the second embodiment of the present invention can logically divide the network into segments, thereby enabling more flexible and efficient network management work.
[0083] Like the communication system 1a in the first embodiment described above, the communication system 1f in the second embodiment can also be configured to use the algorithm for determining the packet transmission timing described with reference to Figures 3 and 4.
[0084] Like the communication system 1a in the first embodiment described above, the communication system 1f in the second embodiment can also be configured as in the first to fourth modified examples described with reference to Figures 5 to 8.
[0085] <Third embodiment> Hereinafter, the third embodiment of the present invention will be described in detail with reference to the drawings.
[0086] A communication system 1g in the third embodiment described below includes a support device. In this respect, the communication system 1g has a different configuration from the communication system 1a in the first embodiment and the communication system 1f in the second embodiment described above. The following description will focus on the differences from the first embodiment.
[0087] [Communication system configuration] Fig. 11 is a diagram showing an example of the configuration of a communication system 1g in the third embodiment of the present invention. As shown in Fig. 11, the communication system 1g includes a plurality of devices 2, a switch 4, an assistance device 6, and a control device 7. The communication system 1g is a system in which the devices 2, the assistance device 6, and the control device 7 communicate with each other using a predetermined protocol. The devices 2, the assistance device 6, and the control device 7 are connected via the switch 4. The assistance device 6 and the control device 7 are an example of a communication control system of the present invention.
[0088] The predetermined protocol is, for example, industrial protocols such as PROFINET (registered trademark), EtherCAT (registered trademark), and EtherNet / IP (registered trademark). In the communication system 1g, it is possible to connect multiple devices 2 using different protocols to the same support device 6.
[0089] The device 2 is, for example, an industrial device such as a sensor, a motor, an inverter, or a robot. For example, the device 2 receives a packet transmitted from the control device 3 and operates according to a control signal contained in the received packet. The control signal includes, for example, a value of a control amount in controlling the device 2. The device 2 also operates according to the acquired control amount, and performs measurement using, for example, a sensor. The device 2 transmits a packet including the measured sensor value and identification information for identifying the device itself to the support device 6.
[0090] The support device 6 (first control device) and the control device 7 (second control device) are devices that control the operation of the devices 2. The support device 6 acquires packets output from each of the multiple devices 2 connected to the support device 6, each packet including a sensor value and identification information that identifies the device 2. The support device 6 determines the protocol used by each of the multiple devices 2 based on the acquired packets. The support device 6 transmits the packets and information indicating the determined protocol to the control device 7.
[0091] The control device 7 calculates the control amount based on the sensor value and protocol included in the acquired packet. The control device 7 generates a control signal including the calculated control amount value. The control device 7 transmits the packet including the generated control signal to the support device 6. The support device 6 controls the operation of the device 2 by transmitting the packet including the control signal to the device 2. As described above, the control signal includes, for example, the value of the control amount in controlling the device 2. As a result, the support device 6 and the control device 7 continuously control the device 2.
[0092] [Device configuration] The following describes in detail the configuration of the device 2. As shown in FIG.
[0093] The storage unit 20 stores sensor values measured by the sensors and identification information for identifying the device 2 (its own device). The storage unit 20 also stores various data and programs used by the device 2. The storage unit 20 is configured to include, for example, a storage medium (not shown) such as a semiconductor memory such as RAM, EEPROM, and ROM, a flash memory such as SSD, a magnetic disk such as HDD, or an optical disk, or any combination (not shown) of these storage media.
[0094] The packet transmitting / receiving unit 21 executes communication between the device 2 (its own device) and the support device 6. The packet transmitting / receiving unit 21 acquires the sensor value and identification information for identifying the device 2 from the storage unit 20. The packet transmitting / receiving unit 21 transmits a packet including the acquired measurement value and the identification information for identifying the device 2 to the support device 6 using a predetermined protocol.
[0095] The packet transmitter / receiver 21 also receives a packet containing a control signal transmitted from the support device 6. The device 2 operates in accordance with the control signal contained in the acquired packet. For example, the device 2 operates in accordance with the control amount indicated by the acquired control signal, and measures a sensor value using a sensor. The device 2 stores the measured sensor value in the storage unit 20.
[0096] [Configuration of support device] Next, a detailed description will be given of the configuration of the support device 6. As shown in Fig. 11, the support device 6 includes a storage unit 60, a packet transmitting / receiving unit 61, a protocol type determination unit 62, a priority determination unit 65, and a transmission timing determination unit 66.
[0097] The storage unit 60 stores a driver for each protocol in advance. Alternatively, the storage unit 60 stores a driver for each protocol downloaded from an external device (not shown), such as a database server, connected to the network to which the support device 6 is connected. The storage unit 60 also stores various data and programs used by the support device 6. For example, the storage unit 60 may include semiconductor memories such as RAM, EEPROM, and ROM, flash memories such as SSDs, magnetic disks such as HDDs, storage media such as optical disks (not shown), or any combination of these storage media (not shown).
[0098] The packet transmitting / receiving unit 61 executes communication between the support device 6 (its own device) and the device 2, and communication between the support device 6 (its own device) and the control device 7. The packet transmitting / receiving unit 61 receives packets transmitted from the device 2, which include sensor values and identification information for identifying the device 2. The packet transmitting / receiving unit 61 outputs the received packets to the protocol type determining unit 62.
[0099] The packet transmitting / receiving unit 61 also transmits the packet and information indicating the protocol identified by the protocol type identifying unit 62 to the control device 7. The packet transmitting / receiving unit 61 then receives a packet including a control signal transmitted from the control device 7. The packet transmitting / receiving unit 61 outputs the received packet including the control signal to the priority identifying unit 65.
[0100] Furthermore, the packet transmitting / receiving unit 61 acquires a packet including a control signal output from the transmission timing determining unit 66. Upon acquiring the packet including the control signal, the packet transmitting / receiving unit 61 immediately transmits the packet to the transmission destination device 2. At this time, the packet transmitting / receiving unit 61 transmits the packet according to the protocol used by the transmission destination device 2.
[0101] The protocol type determination unit 62 acquires the packet output from the packet transmission / reception unit 61. Based on the acquired packet, the protocol type determination unit 62 determines the protocol used by the device 2 that transmitted the packet.
[0102] For example, the protocol type determination unit 62 determines the protocol used by the device 2 based on the EtherType or port number of the acquired packet. For example, in the case of a uniquely implemented protocol such as PROFINET IRT (registered trademark), PROFINET RT (registered trademark), or EtherCAT (registered trademark), the protocol type determination unit 62 determines the protocol used by the device 2 based on the EtherType. Furthermore, in the case of using a mechanism of TCP (Transmission Control Protocol) or UDP (User Datagram Protocol), such as PROFINET NRT (registered trademark) or EtherNet / IPT (registered trademark), the protocol type determination unit 62 determines the protocol used by the device 2 based on the port number.
[0103] The protocol type determination unit 62 transmits the acquired packet to the control device 7 via the packet transmission / reception unit 61.
[0104] The priority determination unit 65 acquires packets output from the control device 7 via the packet transmission / reception unit 61. The priority determination unit 65 determines the priority of each protocol corresponding to the acquired packets. The priority determination unit 65 rearranges the packets in descending order of the determined protocol priority.
[0105] For example, the priority determination unit 65 determines the priority of each protocol based on the delay requirement as follows: For example, PROFINET IRT (registered trademark) and EtherCAT (registered trademark) have a delay requirement of 1 ms or less, and are therefore determined to be protocols with relatively high priority. PROFINET RT (registered trademark) has a delay requirement of 10 ms or less, and is therefore determined to be a protocol with relatively medium priority. On the other hand, PROFINET NRT (registered trademark) and EtherNet / IP (registered trademark) have delay requirements lower than those of the above protocols, and are therefore determined to be protocols with relatively low priority.
[0106] The priority determination unit 65 outputs the packets rearranged according to the protocol priority to the transmission timing determination unit 66, respectively.
[0107] The transmission timing determination unit 66 acquires the packets sorted according to the protocol priority output from the priority determination unit 65. The transmission timing determination unit 66 determines the transmission timing of each packet according to the sort order of the packets.
[0108] The transmission timing determination unit 66 outputs each packet to the packet transmitting / receiving unit 61 in sequence at the timing determined for each packet.
[0109] [Control device configuration] Next, a detailed description will be given of the configuration of the control device 7. As shown in Fig. 11, the control device 7 includes a plurality of protocol operation control units 73 and a plurality of device operation control units 74.
[0110] A protocol operation control unit 73 is provided for each protocol used. The protocol operation control unit 73 acquires packets output from the support device 6. The protocol operation control unit 73 acquires, from the acquired packets, the sensor value and identification information for identifying the device 2. The protocol operation control unit 73 identifies the device 2 based on the acquired identification information.
[0111] The protocol operation control unit 73 outputs the sensor value, the identification information for identifying the device 2, and the information indicating the protocol to the device operation control unit 74 corresponding to the identified device 2.
[0112] Furthermore, the protocol operation control unit 73 acquires the control signal and identification information for identifying the device 2, which are output from the device operation control unit 74. The protocol operation control unit 73 generates a packet storing the control signal in accordance with the protocol used by the device 2. The protocol operation control unit 73 outputs the packet including the control signal to the support device 6.
[0113] The device operation control unit 74 is provided for each device 2 connected to the support device 6. The device operation control unit 74 acquires the sensor value, identification information for identifying the device 2, and information indicating the protocol, which are output from the protocol operation control unit 73.
[0114] The appliance operation control unit 74 calculates a control value. For example, the appliance operation control unit 74 calculates the control value based on the acquired sensor value. The appliance operation control unit 74 outputs a control signal including the control value and identification information that identifies the appliance 2 to the protocol operation control unit 73. At this time, the appliance operation control unit 74 outputs to the protocol operation control unit 73 that corresponds to the protocol indicated by the acquired information.
[0115] [Control device operation] An example of the operation of the support device 6 (first control device) and the control device 7 (second control device) will be described below. Fig. 12 is a flowchart showing the operation of the support device 6 and the control device 7 in the third embodiment of the present invention. The operation of the support device 6 and the control device 7 shown in Fig. 12 starts when the support device 6 receives a packet transmitted from the device 2.
[0116] First, the packet transmitting / receiving unit 61 of the support device 6 receives a packet transmitted from the device 2 (step S201). The packet includes a sensor value and identification information for identifying the device 2. The packet transmitting / receiving unit 61 outputs the received packet to the protocol type determining unit 62.
[0117] Next, the protocol type determination unit 62 determines the protocol used by the device 2 that sent the packet based on the packet acquired from the packet transmission / reception unit 31 (step S202). The protocol type determination unit 62 transmits the acquired packet and information indicating the determined protocol to the control device 7 via the packet transmission / reception unit 61. At this time, the protocol type determination unit 62 transmits the information to the protocol operation control unit 33 of the control device 7 that corresponds to the determined protocol.
[0118] Next, the protocol operation control unit 73 of the control device 7 acquires the sensor value and identification information for identifying the device 2 from the packet acquired from the support device 6. The protocol operation control unit 73 identifies the device 2 based on the acquired identification information (step S203). The protocol operation control unit 73 outputs the sensor value, the identification information for identifying the device 2, and information indicating the protocol used by the device 2 to the device operation control unit 74 corresponding to the identified device 2.
[0119] Next, the appliance operation control unit 74 calculates a control value based on the sensor value acquired from the protocol operation control unit 73 (step S204). The appliance operation control unit 74 outputs a control signal including the control value and identification information for identifying the appliance 2 to the protocol operation control unit 73 corresponding to the protocol used by the appliance 2.
[0120] Next, the protocol operation control unit 73 generates a packet storing the control signal output from the device operation control unit 74 in accordance with the protocol used by the device 2 (step S205). The protocol operation control unit 73 outputs the packet including the control signal to the support device 6.
[0121] Next, the priority determination unit 65 of the support device 6 acquires each packet transmitted from each protocol operation control unit 73 of the control device 7 via the packet transmission / reception unit 61, and determines the priority of the protocol corresponding to each acquired packet (step S206). The priority determination unit 65 rearranges the packets in descending order of the determined protocol priority (step S207). The priority determination unit 65 outputs each of the packets rearranged according to the protocol priority to the transmission timing determination unit 66.
[0122] Next, the transmission timing determination unit 66 acquires the packets sorted according to the protocol priority output from the priority discrimination unit 75. The transmission timing determination unit 66 determines the transmission timing of each packet according to the sorting order of the packets (step S208). The transmission timing determination unit 66 outputs each packet to the packet transmitting / receiving unit 61 in order at the timing determined for each packet.
[0123] Next, upon receiving the packet including the control signal output from the transmission timing determination unit 66, the packet transmission / reception unit 61 immediately transmits the packet to the target device 2 (step S209). At this time, the packet transmission / reception unit 61 transmits the packet according to the protocol used by the device 2.
[0124] This completes the operations of the support device 6 and the control device 7 shown in the flowchart of FIG.
[0125] As described above, the support device 6 and control device 7 in the third embodiment of the present invention control multiple devices 2 using different protocols via a network. The support device 6 includes a packet transceiver 61 that transmits and receives packets to and from the devices 2, a protocol type discriminator 62 that determines the protocol used by the source device 2 based on the received packets, a priority discriminator 65 that determines the priority of packet transmission based on the protocol, and a transmission timing determiner 66 that determines the timing of packet transmission based on the priority. The control device 7 also includes a protocol operation controller 73 that is provided for each protocol and acquires sensor values included in the received packets, identifies the source device 2 based on the received packets, and generates packets including control signals for controlling the device 2 in accordance with the protocol used by the source device 2, and a device operation controller 74 that generates control signals based on the sensor values included in the received packets.
[0126] With such a configuration, the support device 6 and the control device 7 in the third embodiment of the present invention can mix multiple industrial devices 2 using different protocols on the same network. This makes it possible to select devices 2 without being bound by protocols. Furthermore, with such a configuration, the support device 6 and the control device 7 in the third embodiment of the present invention can perform communication control according to priority in a network where different types of protocols coexist.
[0127] Like the communication system 1a in the first embodiment described above, the communication system 1g in the third embodiment can also be configured to use the algorithm for determining the packet transmission timing described with reference to Figures 3 and 4.
[0128] Next, a modification of the third embodiment will be described.
[0129] (First Modification) 13 is a diagram showing the configuration of a communication system 1h in a first modified example of the third embodiment of the present invention. The communication system 1h includes a device 2, a switch 4b, control devices 7-1 and 7-2, a switch 4a, a support device 6, and a communication line 5. The control devices 7-1 and 7-2 communicate with the device 2 via the switch 4a, the communication line 5, and the switch 4a. The support device 6 communicates with the device 2 via the switch 4a, the communication line 5, and the switch 4a. The control devices 7-1 and 7-2, the support device 6, and the switch 4a are provided at a first location. The device 2 and the switch 4b are provided at a second location. The communication system 1i may further include a switch 4.
[0130] (Second Modification) 14 is a diagram showing the configuration of a communication system 1i in a second modified example of the third embodiment of the present invention. The communication system 1i includes N devices 2, N switches 4b, control devices 7-1 and 7-2, a switch 4a, a support device 6, and a communication line 5. The control devices 7-1 and 7-2 communicate with the device 2-n via the switch 4a, the communication line 5, and the switch 4b-(n+1). The support device 6 communicates with the device 2-n via the switch 4a, the communication line 5, and the switch 4b-(n+1).
[0131] The control devices 7-1 and 7-2, the support device 6, and the switch 4a are provided at a first location. The device 2-1 and the switch 4b-2 are provided at a second location. The device 2-N and the switch 4b-(N+1) are provided at an Nth location. The communication system 1i may further include a switch 4.
[0132] <Fourth embodiment> The fourth embodiment of the present invention will be described in detail below with reference to the drawings.
[0133] In a communication system 1j according to a fourth embodiment described below, a common VLAN is set for each protocol, and the network is virtually divided. In this respect, the configuration of the communication system 1j differs from that of the communication system 1g according to the third embodiment described above. The following description will focus on the differences from the third embodiment.
[0134] Fig. 15 is a diagram showing an example of the configuration of a communication system 1j in a fourth embodiment of the present invention. As shown in Fig. 15, the communication system 1j includes a plurality of devices 2, a support device 6j, and a control device 7. The support device 6j and the control device 7 are an example of a communication control system of the present invention. The configurations of the devices 2 and the control device 7 in the fourth embodiment are similar to the configurations of the devices 2 and the control device 7 in the third embodiment described above, and therefore a description thereof will be omitted.
[0135] [Configuration of support device] The configuration of the support device 6j will be described in detail below. As shown in Fig. 15, the support device 6j includes a storage unit 60, a packet transmitting / receiving unit 61, a protocol type determination unit 62, a priority determination unit 65, a transmission timing determination unit 66, and a VLAN setting unit 67. That is, the configuration of the support device 6j differs from the configuration of the support device 6 in the third embodiment described above in that the VLAN setting unit 67 is added.
[0136] The priority determination unit 65 acquires each packet output from each protocol operation control unit 73 of the control device 7. The priority determination unit 65 determines the priority of the protocol corresponding to each acquired packet. The priority determination unit 65 rearranges the packets in descending order of the determined protocol priority. The priority determination unit 65 outputs the packets rearranged according to the protocol priority to the VLAN setting unit 67.
[0137] The VLAN setting unit 67 acquires the packets sorted according to the protocol priority output from the priority determination unit 65. The VLAN setting unit 67 sets a common VLAN for each protocol and virtually divides the network. Note that the VLAN setting unit 67 may set the same VLAN for the protocol used by another device 2 that is a peripheral device of the device 2 that uses the protocol for which the VLAN has been set. The VLAN setting unit 67 outputs the packets sorted according to the protocol priority to the transmission timing determination unit 66.
[0138] The transmission timing determination unit 66 receives the packets that have been rearranged according to the protocol priority and are output from the VLAN setting unit 67. The transmission timing determination unit 66 determines the transmission timing of each packet according to the order of the packets. The transmission timing determination unit 66 outputs each packet to the packet transmitting / receiving unit 61 at the timing determined for each packet.
[0139] [Operation of support devices and control devices] An example of the operation of the support device 6j and the control device 7 will be described below. Fig. 16 is a flowchart showing the operation of the support device 6j and the control device 7 in the fourth embodiment of the present invention. The operation of the support device 6j and the control device 7 shown in Fig. 16 starts when the support device 6j receives a packet transmitted from the device 2.
[0140] The operations of steps S301 to S306 of the support device 6j and the control device 7 shown in Figure 16 are similar to the operations of steps S201 to S206 of the support device 6j and the control device 7 in the third embodiment shown in Figure 12 above, so the explanation will be omitted.
[0141] The priority determination unit 65 rearranges the packets in descending order of the determined protocol priority (step S307). The priority determination unit 65 outputs the packets rearranged according to the protocol priority to the VLAN setting unit 67.
[0142] Next, the VLAN setting unit 67 acquires the packets rearranged according to the protocol priority output from the priority determination unit 65. The VLAN setting unit 67 sets a common VLAN for each protocol and virtually divides the network (step S308). The VLAN setting unit 67 outputs the packets rearranged according to the protocol priority to the transmission timing determination unit 66.
[0143] Next, the transmission timing determination unit 66 acquires the packets output from the VLAN setting unit 67, rearranged according to the protocol priority, and determines the transmission timing of each packet according to the packet arrangement (step S309). The transmission timing determination unit 66 outputs each packet to the packet transmitting / receiving unit 61 at the timing determined for each packet.
[0144] Next, upon receiving the packet including the control signal output from the transmission timing determination unit 66, the packet transmission / reception unit 61 immediately transmits the packet to the target device 2 (step S310). At this time, the packet transmission / reception unit 61 transmits the packet according to the protocol used by the device 2.
[0145] This completes the operations of the support device 6j and the control device 7 shown in the flowchart of FIG.
[0146] As described above, the support device 6j and control device 7 in the fourth embodiment of the present invention control multiple devices 2 using different protocols via a network. The support device 6j includes a packet transceiver 61 that transmits and receives packets to and from the devices 2, a protocol type discriminator 62 that determines the protocol used by the source device 2 based on the received packets, a priority discriminator 65 that determines the priority of packet transmission based on the protocol, and a transmission timing determiner 66 that determines the timing of packet transmission based on the priority. The control device 7 also includes a protocol operation controller 73 that is provided for each protocol and acquires sensor values included in the received packets, identifies the source device 2 based on the received packets, and generates packets including control signals for controlling the device 2 in accordance with the protocol used by the source device 2, and a device operation controller 74 that generates control signals based on the sensor values included in the received packets.
[0147] With such a configuration, the support device 6j and the control device 7 in the fourth embodiment of the present invention can mix multiple industrial devices 2 using different protocols on the same network. This makes it possible to select devices 2 without being bound by protocols. Furthermore, with such a configuration, the support device 6j and the control device 7 in the fourth embodiment of the present invention can perform communication control according to priority in a network where different types of protocols coexist.
[0148] Furthermore, the support device 6j in the fourth embodiment of the present invention includes a VLAN setting unit 67 that virtually divides the network by setting a common VLAN for each protocol. With this configuration, the support device 6j in the fourth embodiment of the present invention can logically divide the network into segments, thereby enabling more flexible and efficient network management work.
[0149] Like the communication system 1g in the third embodiment described above, the communication system 1j in the fourth embodiment can also be configured to use the algorithm for determining the packet transmission timing described with reference to Figures 3 and 4.
[0150] Like the communication system 1a in the first embodiment described above, the communication system 1j in the fourth embodiment can also be configured as in the first and second modified examples described with reference to Figures 13 and 14.
[0151] (Example of hardware configuration) Next, an example of the hardware configuration of the control device and the support device in the above-described embodiments will be described. FIG. 17 is a diagram showing an example of the hardware configuration of the control device and the support device in each embodiment of the present invention. Some or all of the functional units of the control device and the support device are realized as software by a processor 100, such as a CPU (Central Processing Unit), executing a program stored in a storage device 200 and a memory 300 having a non-volatile recording medium (non-transitory recording medium). The program may be recorded on a computer-readable recording medium. Examples of computer-readable recording media include portable media such as a flexible disk, a magneto-optical disk, a ROM (Read Only Memory), a CD-ROM (Compact Disc Read Only Memory), and a non-transitory recording medium such as a storage device built into a computer system, such as a hard disk.
[0152] Some or all of the functional units of the control device and the support device in the above-described embodiments may be realized using hardware including electronic circuits (electronic circuits or circuitry) using, for example, an LSI (Large Scale Integrated circuit), an ASIC (Application Specific Integrated Circuit), a PLD (Programmable Logic Device), or an FPGA (Field Programmable Gate Array).
[0153] The control device and support device of the present invention can also be realized by a computer and a program, and the program can be recorded on a storage medium or provided via a network.
[0154] According to the above-described embodiment, the communication control system controls multiple devices that use different protocols via a network. The communication control system includes a packet transceiver, a protocol type discriminator, a protocol operation controller, a device operation controller, a priority discriminator, and a transmission timing determiner. For example, the communication control system is the control device 3, the control device 3f, the support device 6, and the control device 7, or the support device 6j and the control device 7, the device is the device 2, the packet transceiver is the packet transceiver 31 and the packet transceiver 61, the protocol type discriminator is the protocol type discriminator 32 and the protocol type discriminator 62, the protocol operation controller is the protocol operation controller 33 and the protocol operation controller 73, the device operation controller is the device operation controller 34 and the device operation controller 74, the priority discriminator is the priority discriminator 35 and the priority discriminator 65, and the transmission timing determiner is the transmission timing determiner 36 and the transmission timing determiner 66.
[0155] The packet transmitting / receiving unit transmits and receives packets to and from devices. The protocol type determining unit determines the protocol used by the sending device based on the received packet. The protocol operation control unit is provided for each protocol, acquires information contained in the received packet, identifies the sending device based on the received packet, and generates a transmission packet including a control signal for controlling the device in accordance with the protocol used by the sending device. For example, the information contained in the received packet is a sensor value in the embodiment. The device operation control unit generates a control signal based on the information contained in the received packet. The priority determining unit determines the priority for transmitting the transmission packet based on the protocol. The transmission timing determination unit determines the transmission timing of the transmission packet based on the priority.
[0156] The communication control system may further include a virtual local area network setting unit. For example, the virtual local area network setting unit is the VLAN setting unit 37 and the VLAN setting unit 67 in the embodiments. The virtual local area network setting unit virtually divides the network by setting a common virtual local area network (VLAN) for each protocol.
[0157] In the above-mentioned communication control system, the virtual local area communication network setting unit may be a second device that is a peripheral device of a first device that uses a protocol that sets up the virtual local area communication network, and the same virtual local area communication network as the protocol used by the first device may be set for the protocol used by the second device.
[0158] In the above-described communication control system, the transmission timing determination unit may time-divide one cycle of the control period into multiple transmission intervals, and assign the time-divided transmission intervals as transmission intervals for transmission packets in descending order of priority of the protocol.
[0159] In addition, in the above-mentioned communication control system, the transmission timing determination unit may allocate an empty section that is left empty because the length of a packet of a higher priority protocol is shorter than the transmission section as the transmission section for at least a portion of a packet of a lower priority protocol.
[0160] In addition, in the above-mentioned communication control system, when multiple protocols with different control period lengths are mixed, the transmission timing determination unit may set the greatest common divisor of the lengths of the multiple control periods as the length of one cycle of the control period.
[0161] Some or all of the functional configurations of the control device and assistance device in each of the above-described embodiments may be implemented by a computer. In this case, a program for implementing the functions may be recorded on a computer-readable recording medium, and the program may be loaded into a computer system and executed. Note that the term "computer system" as used herein includes hardware such as an OS and peripheral devices. Furthermore, the term "computer-readable recording medium" refers to portable media such as flexible disks, optical magnetic disks, ROMs, and CD-ROMs, as well as storage devices such as hard disks built into a computer system. Furthermore, the term "computer-readable recording medium" may also include devices that dynamically store programs for a short period of time, such as communication lines used when transmitting programs via networks such as the Internet or telephone lines, or devices that store programs for a fixed period of time, such as volatile memory within a computer system serving as a server or client. The program may be designed to implement some of the functions described above, or may be capable of implementing the functions in combination with a program already stored in the computer system, or may be implemented using a programmable logic device such as an FPGA (Field Programmable Gate Array).
[0162] Although an embodiment of the present invention has been described above in detail with reference to the drawings, the specific configuration is not limited to this embodiment, and includes designs within the scope of the gist of the present invention. [Industrial Applicability]
[0163] The present invention is applicable to industrial communication systems that utilize SDN (Software Defined Network) technology and include a communication control system that controls devices such as sensors. [Explanation of symbols]
[0164] 1a to 1j... communication system, 2... equipment, 3, 3f... control device, 4... switch, 5... communication line, 6, 6j... support device, 7... control device, 10... communication system, 11... equipment, 12... switch, 13... control device, 14... support device, 15... GSD file, 20... storage unit, 21... packet transmitting / receiving unit, 30... storage unit, 31... packet transmitting / receiving unit, 32... protocol type discrimination unit, 33... protocol operation control unit, 34... equipment operation control unit, 35... priority discrimination unit, 36... transmission timing determination unit, 37... VLAN setting unit, 60... storage unit, 61... packet transmitting / receiving unit, 62... protocol type discrimination unit, 65... priority discrimination unit, 66... transmission timing determination unit, 67... VLAN setting unit, 73... protocol operation control unit, 74... equipment operation control unit, 75... priority discrimination unit, 100... processor, 200... storage device, 300... memory
Claims
1. A communication control system that controls a plurality of devices that use different protocols via a network, a packet transmitting / receiving unit for transmitting and receiving packets to and from the device; a protocol type determination unit that determines the protocol used by the device that is the sender based on the received packet; a protocol operation control unit provided for each of the protocols, which acquires information included in the received packet, identifies the device that is a sender based on the received packet, and generates a transmission packet including a control signal for controlling the device in accordance with a protocol used by the device that is a sender; an appliance operation control unit that generates the control signal based on information included in the received packet; a priority determination unit that determines a priority in transmission of the transmission packet based on the protocol; a transmission timing determination unit that determines a transmission timing of the transmission packet based on the priority; A communication control system comprising:
2. a virtual local area network setting unit that virtually divides the network by setting a common virtual local area network for each of the protocols; The communication control system according to claim 1 , further comprising:
3. The virtual local area communication network setting unit is a second device that is a peripheral device of a first device that uses the protocol that sets the virtual local area communication network, and for the protocol used by the second device, sets the same virtual local area communication network as the protocol used by the first device. The communication control system according to claim 2 .
4. The transmission timing determination unit time-divides one cycle of a control period into a plurality of transmission intervals, and allocates the time-divided transmission intervals as the transmission intervals of the transmission packets in descending order of the priority of the protocol. The communication control system according to claim 1 .
5. The transmission timing determination unit allocates a vacant section due to the length of the packet of the protocol having the higher priority being shorter than the transmission section as the transmission section for at least a part of the packet of the protocol having the lower priority. The communication control system according to claim 4.
6. When a plurality of protocols having different lengths of the control period are mixed, the transmission timing determination unit determines the greatest common divisor of the lengths of the plurality of control periods as the length of one cycle of the control period.
6. The communication control system according to claim 4 or 5.
7. A communication control method executed by a communication control system that controls a plurality of devices that use different protocols via a network, comprising: a packet transmitting / receiving step of transmitting / receiving packets to / from the device; a protocol type determination step of determining the protocol used by the device that is the sender based on the received packet; a protocol operation control step, provided for each of the protocols, for acquiring information included in the received packet, identifying the device as a sender based on the received packet, and generating a transmission packet including a control signal for controlling the device in accordance with a protocol used by the device as a sender; an appliance operation control step of generating the control signal based on information included in the received packet; a priority determination step of determining a priority in transmission of the transmission packet based on the protocol; a transmission timing determination step of determining a transmission timing of the transmission packet based on the priority; A communication control method comprising:
8. A program for causing a computer to function as the communication control system according to claim 1.