Server device, communication device, and control system
The server and communication device configuration addresses network instability by dynamically adjusting transmission parameters, ensuring stable and consistent control despite unpredictable bandwidth and delays, enabling reliable real-time communication.
Patent Information
- Application Number
- JP2022120927
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2022-07-28
- Publication Date
- 2026-03-05
- Estimated Expiration
- 2042-07-28
AI Technical Summary
Control systems using networks like the Internet face instability due to unpredictable communication bandwidth and delays, which can lead to failure in achieving real-time control, especially when firewalls or proxy servers are involved, making it difficult to use protocols suitable for real-time communication.
A server device and communication device configuration that includes a communication unit, determination unit, and control and calculation unit, which sequentially transmit and receive packets with multiple connection information, dynamically adjusting transmission frequency and intervals based on network conditions to ensure stable communication.
Enables stable network control by reducing communication delays and packet loss, allowing for consistent periodic control even in TCP-based protocols, and ensuring packets can pass through firewalls or proxy servers.
Smart Images

Figure 0007824843000001 
Figure 0007824843000002 
Figure 0007824843000003
Abstract
Description
[Technical Field]
[0001] FIELD Embodiments of the present invention relate to a server device, a communication device, and a control system. [Background technology]
[0002] Control systems are being considered that execute sequence control and process control, which are currently performed by devices such as programmable logic controllers (PLCs), on server devices via networks such as the Internet. Control systems in factories and industrial systems operate in real time at regular intervals. To control the system properly, it is required to transmit input and output data within a certain time frame, even if network delays occur. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Patent No. 5959452 Summary of the Invention [Problem to be solved by the invention]
[0004] However, because networks such as the Internet do not guarantee communication bandwidth or communication delays, performing control via a network may result in failure to achieve the desired control within a fixed period. Even if multiple server devices are used, sudden communication delays may occur, making it impossible to perform control at a fixed period. Furthermore, if a firewall or proxy server is installed on the edge network to ensure the security of the control system, it may be impossible to use communication protocols suitable for real-time communication, such as UDP (User Datagram Protocol).
[0005] In order to solve such problems, an object of this embodiment is to provide a server device, a communication device, and a control system that can perform control via a network more stably. [Means for solving the problem]
[0006] According to this embodiment, the server device includes a communication unit, a determination unit, and a control and calculation unit. The communication unit sequentially receives, via the network, a plurality of first packets each including the same first signal for each of a plurality of different pieces of connection information. The determination unit determines whether the first signal included in the first packet has been received. If the first signal has not been received based on the determination, the control and calculation unit generates a second signal corresponding to the first signal. [Effects of the Invention]
[0007] Control via the network can be performed more stably. [Brief explanation of the drawings]
[0008] [Figure 1] FIG. 1 is a diagram showing an example of the configuration of a control system according to a first embodiment. [Figure 2] 10 is a table showing an example of sending connection information used by a connection unit. [Figure 3] FIG. 10 is a diagram showing an example of the configuration of an input signal packet transmitted by a transmission management unit. [Figure 4] 10 is a table showing an example of a method for referencing connection information using a sending flag. [Figure 5] FIG. 10 is a diagram showing an example of the configuration of an output signal packet used by a transmission management unit. [Figure 6] Communication sequence diagram for initial connection. [Figure 7] FIG. 4 is a communication sequence diagram showing how an input signal is transmitted to the server device. [Figure 8] FIG. 4 is a communication sequence diagram illustrating a communication process in which an output signal is transmitted from a server device to a communication device. [Figure 9] FIG. 10 is a diagram showing an example of the configuration of a control system according to a second embodiment. [Figure 10]FIG. 10 is a diagram showing an example of a communication sequence for initial connection according to the second embodiment. [Figure 11] FIG. 4 is a communication sequence diagram illustrating an input signal transmitted from a communication device to a server device. [Figure 12] FIG. 4 is a communication sequence diagram illustrating a communication process in which an output signal is transmitted from a server device to a communication device. DETAILED DESCRIPTION OF THE INVENTION
[0009] Hereinafter, a server device, a communication device, and a control system according to an embodiment of the present invention will be described in detail with reference to the drawings. Note that the embodiment described below is an example of an embodiment of the present invention, and the present invention should not be interpreted as being limited to these embodiments. Furthermore, in the drawings referred to in this embodiment, identical parts or parts having similar functions are given the same or similar symbols, and repeated explanations thereof may be omitted. Furthermore, for convenience of explanation, the dimensional ratios of the drawings may differ from the actual ratios, and some components may be omitted from the drawings.
[0010] (First embodiment) (composition) Fig. 1 is a diagram showing an example of the configuration of a control system according to the first embodiment. As shown in Fig. 1, the control system 1 includes a server device 10 and a communication device 20. The server device 10 and the communication device 20 are connected via a network 40. That is, the server device 10 is a computer including, for example, a CPU (Central Processing Unit), memory, storage, etc., and controls devices such as actuators via the network 40 and the communication device 20.
[0011] The input device 41 receives an input signal, which is data obtained from a sensor or the like that generates status information for a device such as an actuator. The output device 42 is, for example, a device such as an actuator that is to be controlled by the server device 10. That is, the server device 10 generates an output signal for control in response to the input signal acquired via the communication device 20 and the network 40. The server device 10 then outputs the output signal to the output device 42 via the network 40 and the communication device 20. Note that the input signal according to this embodiment corresponds to a first signal, and the output signal corresponds to a second signal.
[0012] More specifically, the server device 10 includes a control and calculation unit 11, a connection unit 12, a receiving unit 13, a transmitting unit 14, and a communication unit 19. The receiving unit 13 includes a receiving connection information storage unit 15 that stores receiving connection information, and a redundant packet determination unit 16. The transmitting unit 14 includes a transmitting connection information storage unit 17 that stores transmitting connection information, and a transmission management unit 18. Furthermore, the server device 10 can configure the control and calculation unit 11, the connection unit 12, the receiving unit 13, the transmitting unit 14, and the communication unit 19 by, for example, executing a program stored in memory. The redundant packet determination unit 16 according to this embodiment corresponds to the determination unit. The transmission management unit 18 according to this embodiment corresponds to the first generation unit. The connecting unit 12 according to this embodiment may also be referred to as a connection acceptance unit.
[0013] The communication device 20 has, for example, a CPU (Central Processing Unit) and memory, and includes a connection unit 21, a receiving unit 23, a transmitting unit 22, a communication unit 28, a signal input unit 29, and a signal output unit 30. The transmitting unit 22 has a configuration equivalent to that of the transmitting unit 14 and includes a transmission connection information storage unit 24 that stores transmission connection information, and a transmission management unit 25. The receiving unit 23 also has a configuration equivalent to that of the receiving unit 13 and includes a reception connection information storage unit 26 that stores reception connection information, and a redundant packet determination unit 27. This communication device 20 can configure the connection unit 21, the receiving unit 23, the transmitting unit 22, the communication unit 28, the signal input unit 29, and the signal output unit 30 by, for example, executing a program stored in the memory. Note that, in this embodiment, the redundant packet determination unit 27 corresponds to the determination unit, and the transmission management unit 25 corresponds to the second generation unit. Moreover, the connection section 21 according to the present embodiment corresponds to the second connection section, and the communication section 28 corresponds to the second communication section.
[0014] First, a more specific configuration of the communication device 20 will be described. FIG. 2 is a table showing an example of transmission connection information used by the connection unit 21. As shown in FIG. 2, the transmission connection information is a unique number assigned to one device that performs transmission. IDs 0 to 4 correspond to individual transmission units or individual communication devices. For example, IDs 0 to 4 are assigned 10 to 14 as transmission connection information, respectively. That is, IDs 0 to 4 according to this embodiment can be made to correspond to, for example, independent transmission units (or transceiver units described later) or independent communication devices, respectively. As a result, although the communication device 20 according to this embodiment is a single device, it is possible to perform communication processing for the communication device 20 that is equivalent to communication processing for multiple communication devices or multiple transmission units (or transceiver units described later).
[0015] The connection unit 21 transmits connection requests for each of the IDs 0 to 4 to the connection unit 12 of the server device 10 via the network 40. The connection unit 12 of the server device 10, which has received the connection request via the network 40, transmits transmission connection information 10 to 14 corresponding to each of the IDs 0 to 4 as a connection response to the communication device 20 via the network 40. As a result, the transmission connection information 10 to 14 is assigned to each of the IDs 0 to 4. Therefore, as described above, in the control system 1 according to this embodiment, although the communication device 20 is a single device, the receiving side via the network 40 can communicate as if there were actually communication devices or transmission units corresponding to the number of IDs.
[0016] Furthermore, the connection unit 21 can notify the server device 10 in advance of information on, for example, a set of IDs 0 to 4. The connection unit 21 stores the transmission connection information 10 to 14 corresponding to the set of IDs 0 to 4 as transmission connection information or reception connection information in the transmission connection storage unit 24 of the transmitter 22 and the reception connection information storage unit 26 of the receiver 23. In this way, after communication is established, the transmission connection storage unit 24 stores the transmission connection information 10 to 14 corresponding to the set of IDs 0 to 4 as transmission connection information. Similarly, the reception connection information storage unit 26 stores the transmission connection information 10 to 14 corresponding to the set of IDs 0 to 4 as reception connection information after communication is established.
[0017] 3 is a diagram showing an example of the configuration of an input signal packet transmitted by the transmission management unit 25 of the communication device 20. The input signal packet is composed of a device ID, which is an identification number of the communication device, a transmission cycle indicating which cycle the transmission is in, a transmission count indicating how many times transmission has been performed within the same cycle, and input signal data. Note that the input signal packet according to this embodiment corresponds to the first packet.
[0018] When the transmission management unit 25 transmits the same transmission signal continuously at the same cycle, it stores the same value in the transmission cycle and increments the number of transmissions. When transmitting at the next cycle, the transmission management unit 25 increments the transmission cycle and resets the number of transmissions to its initial value. Note that if it is not necessary to determine how many times a transmitted packet has arrived, the number of transmissions can be omitted. Also, if there is only one communication device 20 for one server device 10, the device ID can also be omitted in some cases.
[0019] For example, the transmission management unit 25 may transmit the same transmission signal ten times in one cycle. In this case, if the number of connections is five, for example, the transmission management unit 25 uses the file descriptors, which are the transmission connection information, in the order of connection, such as 10 → 11 → 12 → 13 → 14 → 10 → 11... In this way, in the round robin method, the transmission connection information 10 to 14 is allocated to the device ID of each packet in order, and then the transmission connection information 10 to 14 is again allocated in order. For example, in the first transmission cycle, 1 is allocated to the transmission cycle of each packet. Then, 0 to 9 are allocated to the transmission count of each packet in order. In this way, the transmission management unit 25 repeatedly assigns the plurality of different connection information in order according to the order in which the packets are generated.
[0020] More specifically, the transmission management unit 25 can sequentially allocate information (transmission connection information, transmission period, number of transmissions) to the data headers of each packet for the same transmission signal, for example, as in (10, 0, 0), (11, 0, 1), (12, 0, 2), (13, 0, 3), (14, 0, 4), (10, 0, 5), (11, 0, 6), (12, 0, 7), (13, 0, 8), and (14, 0, 9). In this way, the transmission management unit 25 can sequentially allocate (transmission connection information, transmission period, number of transmissions) as if five communication devices having transmission connection information 10 to 14 were transmitting each packet. In other words, the same input signal is repeatedly transmitted from the communication device 20 via the communication unit 28, with the transmission connection information and number of transmissions changed. These packets are sent in order from the sender by the communication management unit 25, but the order in which they are received at the receiver may change depending on the environment of the network 40. Alternatively, a firewall or the like may prevent some packets from being received at the receiver.
[0021] The transmission management unit 25 also has a transmission time management function that manages the time intervals when packets having the same transmission signal are transmitted multiple times. The transmission management unit 25 dynamically changes the number of transmissions and the transmission intervals of packets having the same transmission signal, for example, based on a combination of the network load, packet loss rate, and communication time. The network load is the amount of communication per unit time. The transmission management unit 25 can determine the amount of communication per unit time, for example, according to the return time of an ACK. The transmission management unit 25 also determines the packet loss rate based on the number of packets having the same transmission signal that arrive within a specified time relative to the number of pieces of transmission connection information. The communication time is a time that is preset for the communication of one transmission signal.
[0022] As a result, when the network load is high, for example, the transmission management unit 25 can reduce the network load by dynamically reducing the number of transmissions or lengthening the standby time. Also, when the packet loss rate is high, the transmission management unit 25 increases the number of transmissions. This increases the probability that data will reach the server device even if packet loss occurs.
[0023] Furthermore, if the communication delay is large, the transmission management unit 25 shortens the waiting time. The transmission management unit 25 can obtain information about the communication delay, for example, according to the return time of an ACK. This can shorten the time required to repeat the number of transmissions. For example, the transmission connection information storage unit 24 can store in advance the number of transmissions and the waiting time corresponding to the network environment. In this way, the transmission management unit 25 can set the number of transmissions and the waiting time according to the network environment. In this case, the transmission management unit 25 may measure the communication status and dynamically change the number of transmissions and the waiting time for each IO period.
[0024] 4 is a table showing an example of a method for referencing connection information using a sending flag. In addition to the round-robin method described above, the transmission management unit 25 can also select and use an unused file descriptor, as shown in FIG.
[0025] As shown in FIG. 4, for example, if there are five connections and file descriptors 12 and 13 are in use, the transmission management unit 25 uses file descriptors 10, 11, and 14 for three consecutive transmissions. Because the in-transmission flag changes every cycle, the transmission management unit 25 performs a process of checking the in-transmission flag every cycle. The transmission management unit 25 can store information about in-use file descriptors as in-transmission flags (1) in the transmission connection storage unit 24. This allows the transmission management unit 25 to refer to information about in-use file descriptors stored in the transmission connection storage unit 24 and use unused file descriptors with in-transmission flags (0) every cycle. In this way, based on the in-transmission flags (1) of multiple packets having the same input signal, the transmission management unit 25 assigns connection information (corresponding to in-transmission flags (0)) that is not being used for the currently transmitted packet from among multiple different connection information to the next packet to be generated.
[0026] As described above, the receiving unit 23 includes the receiving connection information storage unit 26 and the redundant packet determination unit 27. The receiving unit 23 is capable of receiving a plurality of packets having the same output signal transmitted from the server device 10 via the communication unit 28.
[0027] The redundant packet determination unit 27 of the receiving unit 23 determines whether or not a transmission signal having the same output signal has been transmitted. For example, the redundant packet determination unit 27 references the reception connection information stored in the reception connection information storage unit 26 to determine whether or not the transmission cycles are the same among the information on the combinations of transmission connection information to be received. For example, for packets to which (10, 0, 0), (11, 0, 1), (12, 0, 2), (13, 0, 3), (14, 0, 4), (10, 0, 5), (11, 0, 6), (12, 0, 7), (13, 0, 8), or (14, 0, 9) is assigned as the information (transmission connection information, transmission cycle, number of transmissions), the redundant packet determination unit 27 first references the reception connection information stored in the reception connection information storage unit 26 to determine whether or not the transmission connection information is in the range of 10 to 14. Next, if the transmission connection information is in the range of 10 to 14, the redundant packet determination unit 27 determines whether the transmission period is the first received transmission period number 0. If the transmission period is the first received transmission period number 0, the redundant packet determination unit 27 outputs the received input signal to the signal output unit 30 and stores the transmission period number 0 in the reception connection information storage unit 26 as reception connection information.
[0028] On the other hand, the redundant packet determination unit 27 refers to the receiving connection information stored in the receiving connection information storage unit 26, and if transmission period number 0 has already been received, determines that it is a redundant input signal and performs processing to not output the output signal to the signal output unit 30.
[0029] The communication unit 28 of the communication device 20 communicates with the communication unit 19 on the server device 10 side via the network interface. Similarly, the communication unit 19 on the server device 10 side communicates with the communication unit 28 on the communication device 20 side via the network interface.
[0030] The signal input unit 29 receives the input signals output by the input device 41 in time series and outputs them to the transmission unit 22. The signal output unit 30 receives the output signals output by the reception unit 26 in time series and outputs them to the output device 42.
[0031] Here, a detailed description will be given of the configuration of the server device 10. The control and calculation unit 11 generates an output signal according to an input signal supplied from the receiving unit 13, and outputs the output signal to the transmitting unit .
[0032] As described above, the connection unit 12 of the server device 10 transmits to the communication device 20, as connection responses to the connection request from the connection unit 21 of the communication device 20, the transmission connection information 10 to 14 (see FIG. 2) corresponding to the IDs 0 to 4, respectively. The connection unit 12 can also determine the number of different pieces of connection information to be issued based on a combination of, for example, the transmission period, the number of transmissions, and the communication time.
[0033] In this embodiment, the connection unit 21 of the communication device 20 makes a connection request, and the connection unit 12 of the server device 10 accepts the connection request, but this is not limiting. For example, a configuration is also possible in which the connection unit 12 of the server device 10 makes a connection request, and the connection unit 21 of the communication device 20 accepts the connection request. Alternatively, when the communication device 20 transmits, the connection unit 21 of the communication device 20 may make a connection request, and when the server device 10 transmits, the connection unit 12 of the server device 10 may make a connection request.
[0034] The receiving unit 13 has the same configuration as the receiving unit 26. In other words, the receiving unit 13 can receive a plurality of packets having the same input signal transmitted from the communication device 20 side via the communication unit 19.
[0035] The redundant packet determination unit 16 of the receiving unit 13 determines whether a transmission signal having the same input signal has been transmitted. For example, the redundant packet determination unit 16 references the reception connection information stored in the reception connection information storage unit 15 to determine whether the transmission connection information combinations to be received have the same transmission period. For example, for packets to which (10, 0, 0), (11, 0, 1), (12, 0, 2), (13, 0, 3), (14, 0, 4), (10, 0, 5), (11, 0, 6), (12, 0, 7), (13, 0, 8), or (14, 0, 9) has been assigned as the information (transmission connection information, transmission period, number of transmissions), the redundant packet determination unit 16 first references the reception connection information stored in the reception connection information storage unit 15 to determine whether the transmission connection information is in the range of 10 to 14. Next, if the transmission connection information is in the range of 10 to 14, the redundant packet determination unit 16 determines whether the transmission cycle is the first received transmission cycle number 0. If the transmission cycle is the first received transmission cycle number 0, the redundant packet determination unit 16 outputs the received input signal to the control operation unit 11 and stores the transmission cycle number 0 in the reception connection information storage unit 15 as reception connection information.
[0036] On the other hand, the redundant packet determination unit 16 refers to the receiving connection information stored in the receiving connection information storage unit 15, and if transmission period number 0 has already been received, determines that the input signal is redundant and performs processing to not output the input signal to the control calculation unit 11.
[0037] 5 is a diagram showing an example of the configuration of an output signal packet used by the transmission management unit 18. As with the input signal packet, information (transmission connection information, transmission cycle, number of transmissions) is allocated in order to the data header of each packet for the same output signal. Note that the output signal packet according to this embodiment corresponds to the second packet.
[0038] The transmitting unit 14 has the same configuration as the transmitting unit 22. That is, when transmitting continuously at the same cycle, the transmission management unit 18 stores the same value in the transmission cycle and increments the number of transmissions. When transmitting at the next cycle, the transmission management unit 18 increments the transmission cycle and resets the number of transmissions to the initial value.
[0039] The transmission management unit 18 generates a packet having the configuration of the output signal packet shown in FIG. 5 for the output signal supplied from the control and calculation unit 11. For example, the information (transmission connection information, transmission period, number of transmissions) is allocated to the data headers of each packet for the same output signal in the following order: (10, 3, 0), (11, 3, 1), (12, 3, 2), (13, 3, 3), (14, 3, 4), (10, 3, 5), (11, 3, 6), (12, 3, 7), (13, 3, 8), (14, 3, 9). Note that in this embodiment, the transmission connection information used is information common to the server device 10 and the communication device 20, but this is not limiting. For example, the communication device 20 can request the server device 10 to newly allocate transmission connection information corresponding to each of IDs 0 to 4.
[0040] In this way, packets are allocated in the order of the data heads of packets having the same output signal (transmission connection information, transmission cycle, number of transmissions) as if they were being sent to five communication devices. As a result, the same output signal is repeatedly transmitted from the server device 10 side, with different transmission connection information and number of transmissions. Although such packets are transmitted in order from the transmitting side, the order in which they are received at the receiving side may be reversed depending on the environment of the network 40. Alternatively, packets may not be received at the receiving side due to a firewall or the like.
[0041] The transmission management unit 18 also has the same functionality as the transmission management unit 25. Specifically, the transmission management unit 18 has a transmission time management function that manages the time intervals between multiple transmissions of packets having the same output signal. Specifically, the transmission management unit 18 dynamically changes the number of transmissions and the transmission intervals of packets having the same output signal based on, for example, a combination of the network load, the packet loss rate, and the communication time. The network load is the amount of communication per unit time. The transmission management unit 18 determines the amount of communication per unit time based on, for example, the ACK return time. The transmission management unit 18 also determines the packet loss rate based on the number of packets having the same transmission signal that arrive within a predetermined time relative to the number of pieces of transmission connection information. The communication time is a predetermined time for communication of one transmission signal. For example, the transmission connection information storage unit 17 can pre-store the number of transmissions and standby times corresponding to the network environment. This allows the transmission management unit 18 to set the number of transmissions and standby times according to the network environment. In this case, the transmission management unit 18 may measure the communication status and dynamically change them every IO period.
[0042] The transmission management unit 18 repeatedly assigns the plurality of different connection information in order according to the order in which packets are generated, as shown in Fig. 2. Furthermore, as shown in Fig. 4, the transmission management unit 18 can assign connection information (corresponding to a sending flag (0)) that is not used for the packet currently being sent among the plurality of different connection information to the packet to be generated next, based on a sending flag (1) that is currently being sent among a plurality of packets having the same output signal.
[0043] The server device 10 may be a physical server, a virtualized server, or a cloud server. The protocol used by the connection units 12 and 21 to accept connections may be not only TCP (Transmission Control Protocol), but also TCP-based protocols such as HTTP (Hypertext Transfer Protocol), HTTPS (Hypertext Transfer Protocol Secure), and MQTT (Message Queueing Telemetry Transport), or UDP-based protocols such as QUIC and MQTT-SN (MQTT for Sensor Networks). The receiving unit 13 and the transmitting unit 14 may be assigned to different threads of an OS and run in parallel. Similarly, the receiving unit 23 and the transmitting unit 22 may be assigned to different threads of an OS and run in parallel. QUIC is a communication protocol used on IP networks such as the Internet, and aims to achieve both high speed and security.
[0044] The output device 42 may be an IO module that transmits an output signal to a device such as an actuator. Alternatively, it may be a module that transmits an input signal or an output signal to the IO module. The server device 10 may be, for example, a virtualized server or a cloud server. Furthermore, the transmission method in the network 40 may be a method via a network or a field bus, or a method via an ASIC or an FPGA. A configuration in which multiple communication devices 20 are connected to one server device 10 may also be used. The above is an explanation of the configuration of the control system 1 according to the first embodiment, and the operation will now be explained.
[0045] (action) 6 is a communication sequence diagram of an initial connection according to this embodiment. It shows an example of processing between the connection unit 21, the transmission unit 22, and the reception unit 22 of the communication device 20 and the connection unit 12, the reception unit 13, and the transmission unit 14 of the server device 10. This is a communication sequence in which the communication device 20 connects to the server device 10 as a TCP client, and the TCP ACK sequence is omitted from the description.
[0046] First, the connection unit 21 of the communication device 20 transmits a connection request to the connection unit 12 of the server device 10 (step S100). Upon receiving the connection request, the connection unit 12 of the server device 10 transmits a connection response including transmission connection information to the communication device 20 (step S102).
[0047] Next, connection unit 21 of communication device 20 performs connection completion processing (step S104) and notifies receiving unit 23 and transmitting unit 22 of the received transmission connection information (step S106). Subsequently, receiving connection information storage unit 26 and transmitting connection information storage unit 24 of receiving unit 23 store the transmission connection information, respectively (steps S108, S110).
[0048] Next, the connection unit 12 of the server device 10 notifies the receiving unit 13 and the transmitting unit 14 of the transmission connection information (step S112). Subsequently, the receiving connection information storage unit 15 and the transmitting connection information storage unit 17 of the receiving unit 13 store the transmission connection information, respectively (steps S108, S110).
[0049] To establish multiple connections, this connection process (steps S100 to S110) is repeated for the number of connections. As a result, the reception connection information storage unit 15 and transmission connection information storage unit 17 of the server device 10, and the reception connection information storage unit 26 and transmission connection information storage unit 24 of the communication device 20 store connection information for the number of connections. Here, the number of connections may be calculated from the transmission cycle of input signals and output signals, the number of times the same packet is transmitted consecutively, and the average communication time.
[0050] With TCP, data exceeding the window size cannot be transmitted continuously, and when receiving, the application can only receive the data in the order in which the packets arrived. Therefore, multiple connections are required to transmit the same packet continuously. For example, if the average communication allocation time per identical transmission signal between server device 10 and communication device 20 is about 1 second, transmitting three consecutive signals at 100 ms intervals and setting the number of connections to 30 or more (30 or more IDs) will ensure that there are no shortage of connections during continuous transmission. In other words, it is possible to transmit 90 identical transmission signals within 1 second, i.e., 3 x 100 ms x 30 = 900 ms.
[0051] 7 is a diagram showing an example of a communication sequence for transmitting an input signal from the communication device 20 to the server device 10. An example of processing by the transmitter 22 of the communication device 20, and the control and calculation unit 11 and receiver 13 of the server device 10 is shown.
[0052] The transmission management unit 25 of the transmitter 22 acquires an input signal from the input device 41 (step S200), references the transmission connection information in the transmission connection information storage unit 24 (step S202), generates a packet to be transmitted, and transmits the input signal packet (step S204).
[0053] Then, the transmission management unit 25 waits for a certain period of time as a waiting process (step S206). If packets are transmitted continuously without a waiting period, the amount of communication per unit time increases, and there is a possibility that the proxy server or firewall on the network 30 may regard it as a DoS attack and disconnect the connection. Therefore, the transmission management unit 25 waits for a certain period of time before transmitting the next input signal packet.
[0054] Next, the receiving unit 13 of the server device 10 receives the input signal packet (step S208). Subsequently, the redundant packet determining unit 16 of the receiving unit 13 references the receiving connection information stored in the receiving connection information storage unit 15 to determine whether the transmission signal has already been received (step S210). Since this is the first transmission process, the redundant packet determining unit 16 determines that the input signal has not already been received, and transfers the input signal to the control operation unit 11 (step S212). Then, the control operation unit 11 of the server device 10 generates an output signal corresponding to the input signal (step S214). In this way, the input signal passed to the control operation unit 11 is used as an input for the control operation.
[0055] The transmitter 22 and receiver 13 repeat this process n times for the same input signal during an IO cycle. In this case, the second and subsequent determination processes by the redundant packet determiner 16 are not the first transmission processes, so the redundant packet is determined to be a received redundant packet and the input signal is not transferred to the control calculation unit 11 (step S216). Since the same transmission cycle (see FIG. 3) is stored in input signal packets transmitted in the same IO cycle, the redundant packet determiner 16 can make a determination based on the combination of the device ID and transmission cycle included in the input signal packet, as described above. After repeating this process n times, the transmission manager 25 performs a standby process until the next IO cycle starts (step S218). Then, the transmitter 23 of the communication device 20 repeatedly performs n transmission processes from the acquisition of the input signal for each IO cycle.
[0056] FIG. 8 shows a communication sequence diagram for transmitting an output signal from the server device 10 to the communication device 20. The control and calculation unit 11 of the server device 10 performs control calculations in a control cycle. The transmission unit 14 obtains an output signal, which is the result of the control calculations, from the control and calculation unit 11. Here, the transmission unit 14 may obtain the output signal in synchronization with the control cycle, or may obtain the output signal asynchronously with or at a different cycle from the control cycle. The transmission unit 14 references connection information, generates an output signal packet, transmits the output signal packet to the reception unit 23 of the communication device 20, and waits for a certain period of time, in the same manner as when the communication device 20 transmits an input signal. The transmission process is repeated the number of times. The number of transmissions and the waiting time may be different when transmitting an input signal and when transmitting an output signal.
[0057] 8 is a diagram showing an example of a communication sequence for transmitting an output signal from the server device 10 to the communication device 20. An example of processing by the receiving unit 23 of the communication device 20, the control and calculation unit 11 of the server device 10, and the transmitting unit 14 is shown.
[0058] The control and calculation unit 11 of the server device 10 generates an output signal according to the input signal (step S214). The transmission management unit 18 of the transmitter 14 acquires the output signal from the control and calculation unit 11 (step S300), references the transmission connection information in the transmission connection information storage unit 17 (step S302), generates a packet to be transmitted, and transmits the output signal packet (step S304).
[0059] Then, the transmission management unit 18 waits for a certain period of time as a standby process (step S306). Next, the receiving unit 23 of the communication device 20 receives the output signal packet (step S308). Subsequently, the redundant packet determination unit 276 of the receiving unit 23 references the reception connection information stored in the reception connection information storage unit 26 to determine whether the output signal has already been received (step S310). Since this is the first output signal, the redundant packet determination unit 27 determines that the output signal has not already been received, and transfers the output signal to the output device 42 via the signal output unit 30 (step S312).
[0060] The transmitter 14 and receiver 23 repeat this process n times for the same output signal during the control period. In this case, the second and subsequent determination processes by the redundant packet determiner 27 are not the first transmission process, so the redundant packet is determined to be a received redundant packet and the output signal is not transferred to the output device 42 (step S314). Since the same transmission period (see FIG. 5) is stored in the output signal packets transmitted in the same control period, the redundant packet determiner 27 can make a determination based on the combination of the device ID and transmission period included in the output signal packet. After repeating this process n times, the transmission manager 18 performs a standby process until the start of the next control period (step S316). Then, the transmitter 14 of the server device 10 repeatedly performs n transmission processes from the acquisition of the output signal for each control period.
[0061] (effect) In the server device 10 and the communication device 20, the transmitting side continuously transmits packets having the same signal multiple times using multiple connection information. This allows the receiving side to perform reception processing equivalent to that performed when packets having the same signal are transmitted from multiple devices. Therefore, even if there is packet loss or communication delay in packets using connection information corresponding to one device ID, packets using connection information corresponding to another device ID can be received. This enables communication delay to be suppressed and constant periodic control to be performed even in TCP-based communication protocols. Furthermore, even when the transmitting side continuously transmits packets having the same signal multiple times using multiple connection information, the redundant packet determination units 16 and 27 on the receiving side perform processing to forward or not output packets having the same signal only once, thereby suppressing redundant processing in the receiving device.
[0062] Furthermore, the transmission management units 18 and 25 on the transmitting side provide a waiting time when transmitting packets having the same signal multiple times in succession, which reduces the communication load on the network 40 and enables the packets to pass through a firewall or a proxy server where a proxy server is installed.
[0063] Furthermore, the connection unit 12 of the server device 10 and the connection unit 21 of the communication device 20 determine the number of connections based on the transmission cycle, the number of transmissions, and the communication time, and perform connection processing for the number of connections in advance. This makes it possible to transmit continuously without a shortage of connections even if a sudden delay occurs.
[0064] Furthermore, the transmission management units 18 and 25 on the transmitting side dynamically change the number of transmissions and the waiting time in accordance with any of the information on the communication load, packet loss rate, and communication time of the network 40 in periodic communication. This makes it possible to change the number of transmissions and the waiting time in accordance with the network environment of the network 40, thereby improving the packet arrival rate.
[0065] In addition, the sending management units 18 and 25 assign connection information to each packet having the same signal in a round-robin manner. This eliminates the need to determine whether each packet having each piece of sending connection information is currently being sent. This allows the sending management units 18 and 25 to assign connection information to each packet having the same signal more quickly.
[0066] Furthermore, the sending management units 18 and 25 on the sending side set a sending flag for each piece of connection information after communication is established. This allows the sending management units 18 and 25 on the sending side to continuously send packets containing the same signal using connection information that is not currently being sent when adding connection information to the packets.
[0067] Furthermore, the transmission management unit 25 on the transmitting side stores a transmission cycle in an input signal packet, and the redundant packet determination unit 17 on the receiving side determines that a packet in which the same transmission cycle is stored is a redundant packet. This allows for high-speed redundant packet determination processing. Similarly, the transmission management unit 18 on the transmitting side stores a transmission cycle in an output signal packet, and the redundant packet determination unit 27 on the receiving side determines that a packet with the same transmission cycle is a redundant packet. This allows for high-speed redundant packet determination processing.
[0068] Furthermore, the transmission management unit 25 on the transmitting side stores connection information and a transmission cycle corresponding to a device ID in an input signal packet, and the connection unit 21 notifies the receiving side of the pair of connection information. The redundant packet determination unit 17 on the receiving side determines that a packet that has a pair of connection information and stores the same transmission cycle is a redundant packet. This allows for high-speed redundant packet determination processing even when there are multiple communication devices 20. Similarly, the transmission management unit 18 on the transmitting side stores a device ID and a transmission cycle in an output signal packet, and the redundant packet determination unit 27 on the receiving side determines that a packet that stores the same device ID and the same transmission cycle is a redundant packet. This allows for high-speed redundant packet determination processing even when there are multiple communication devices 20.
[0069] (Second embodiment) In the control system 1 according to the first embodiment, both the server device 10 and the communication device 20 have a single transmitting unit and a single receiving unit, whereas in the control system 2 according to the second embodiment, both the server device 10 and the communication device 20 have multiple transmitting and receiving units. The differences from the control system 1 according to the first embodiment will be described below.
[0070] (composition) 9 is a diagram showing an example of the configuration of a control system 2 according to the second embodiment. Note that the same elements as those in FIG. 1 are given the same reference numerals, and their explanation will be omitted.
[0071] The control system 2 includes a server device 50 and a communication device 60. The server device 50 and the communication device 60 are connected via a network 40. That is, the communication device 60 receives an input signal including data obtained from an input device 41 and transmits it to the server device 50 via the network 40. The server device 50 generates an output signal according to the received input signal and outputs it to an output device 42 via the network 40. The server device 50 is, for example, a multi-core server and includes a CPU (Central Processing Unit), memory, storage, etc.
[0072] The server device 50 includes a control and calculation unit 11, a communication unit 19, a connection unit 51, a plurality of transmission and reception units 52A-G, a redundant packet determination unit 54, and a communication time management unit 55. The plurality of transmission and reception units 52A-G also include connection information storage units 53A-G, respectively. The number of the plurality of transmission and reception units 52A-G can be set to any number. The server device 50 can configure the control and calculation unit 11, the communication unit 19, the connection unit 51, the plurality of transmission and reception units 52A-G, the redundant packet determination unit 54, and the communication time management unit 55 by executing a program stored in memory, for example. The redundant packet determination unit 54 according to this embodiment corresponds to the determination unit.
[0073] The communication device 60 includes, for example, a CPU (Central Processing Unit) and a memory, and further includes a communication unit 28, a signal input unit 29, a signal output unit 30, a connection unit 61, a plurality of transmission / reception units 62A-G, a redundant packet determination unit 64, and a transmission time management unit 65. The plurality of transmission / reception units 62A-G also include connection information storage units 63A-G, respectively. The number of the plurality of transmission / reception units 62A-G can be set to any number. The communication device 60 can be configured with the communication unit 28, the signal input unit 29, the signal output unit 30, the connection unit 61, the plurality of transmission / reception units 62A-G, the redundant packet determination unit 64, and the transmission time management unit 65 by executing a program stored in, for example. The redundant packet determination unit 64 according to this embodiment corresponds to the determination unit, and the transmission / reception units 62A-G correspond to individual transmission units.
[0074] First, a detailed description will be given of the configuration of server device 50. Connection unit 51 of server device 50 issues transmission connection information (see FIG. 5) corresponding to multiple IDs in response to a request from connection unit 61. Connection unit 51 allocates the transmission connection information corresponding to the multiple IDs to transmission / reception units 52A-G in turn. Then, each connection information storage unit 53A-G stores the transmission connection information allocated to it.
[0075] Each of the multiple transmitter / receivers 52A-G receives an input signal packet (see FIG. 3) having transmission connection information allocated thereto via the communication unit 19 and outputs it to the redundant packet determination unit 54. The redundant packet determination unit 54 determines whether a transmission signal having the same input signal has been transmitted. For example, the redundant packet determination unit 54 refers to the reliable connection information to determine whether the information of the combination of transmission connection information to be received has the same transmission period, and determines whether a transmission signal having the same output signal has been transmitted. When a transmission signal having the same input signal has been transmitted for the first time, the redundant packet determination unit 16 transfers the input signal to the control calculation unit 11. On the other hand, when a transmission signal having the same input signal has not been transmitted for the first time, the redundant packet determination unit 54 determines that the input signal is a redundant input signal and performs processing not to output the input signal to the control calculation unit 11.
[0076] Furthermore, each of the multiple transmitter / receivers 52A to 52G generates an output signal packet (see FIG. 5) including the transmission connection information allocated to that unit, the transmission period, the number of transmissions, and the output signal supplied from the transmission time management unit 55.
[0077] The transmission time management unit 55 supplies a transmission period, a transmission count, and an output signal to each of the multiple transmission / reception units 52A-G each time an output signal is supplied from the control calculation unit 11. That is, when the same output signal is continuously transmitted at the same period, the transmission time management unit 55 supplies the same value as the transmission period and increments the transmission count before supplying the signal. When transmitting at the next period, the transmission time management unit 55 increments the transmission period and resets the transmission count to its initial value. As a result, the output signal packets generated by each of the multiple transmission / reception units 52A-G for the same output signal have different transmission connection information and transmission counts but the same transmission period. The transmission time management unit 55 also has a transmission time management function that manages the time intervals between transmissions of the same packet multiple times. The number of multiple transmission / reception units 52A-G is equal to the number of connections. The multiple transmission / reception units 52A-G, the redundant packet determination unit 54, and the transmission time management unit 55 may be assigned to different threads of the OS and operated in parallel. The configuration of the transmission time management unit 55 and the transmission / reception units 52A to 52G according to this embodiment corresponds to a first generation unit, and the transmission / reception units 52A to 52G correspond to a plurality of generation units.
[0078] Next, the configuration of the communication device 60 will be described in detail. The connection unit 61 of the communication device 60 requests the connection unit 51 of the server device 50 to issue transmission connection information (see FIG. 5) corresponding to a plurality of IDs. The connection unit 61 allocates the issued transmission connection information corresponding to the plurality of IDs to the transmission / reception units 62A-G in turn. Then, each of the connection information storage units 63A-G stores the transmission connection information allocated to it.
[0079] Each of the multiple transmitter / receivers 62A-G receives an output signal packet (see FIG. 5) having transmission connection information allocated thereto via the communication unit 28 and outputs the packet to the redundant packet determination unit 64. The redundant packet determination unit 64 determines whether a transmission signal having the same output signal has been transmitted. For example, the redundant packet determination unit 64 references reliable connection information to determine whether the information in the combination of transmission connection information to be received has the same transmission period, and determines whether a transmission signal having the same output signal has been transmitted. When a transmission signal having the same output signal has been transmitted for the first time, the redundant packet determination unit 64 transfers the output signal to the output device 42 via the signal output unit 30. On the other hand, when a transmission signal having the same output signal has not been transmitted for the first time, the redundant packet determination unit 64 determines that the input signal is a redundant input signal and performs processing not to transfer the input signal to the output device 42. The number of the multiple transmitter / receivers 62A-G is configured to match the number of connections. The plurality of transmitting / receiving units 62A to 62G, the redundant packet determining unit 64, and the transmission time management unit 65 may be assigned to different threads of the OS and operated in parallel.
[0080] Furthermore, each of the multiple transmitter / receivers 62A to 62G generates an input signal packet (see FIG. 3) including the transmission connection information allocated to itself, the transmission period, the number of transmissions, and the input signal supplied from the transmission time management unit 65.
[0081] The transmission time management unit 65 supplies a transmission period, a number of transmissions, and an input signal to each of the multiple transmission / reception units 62A-G each time an input signal is supplied from the input device 41 via the signal input unit 29. That is, when continuously transmitting the same input signal at the same period, the transmission management unit 65 supplies the same value as the transmission period and increments the number of transmissions. When transmitting in the next period, the transmission management unit 65 increments the transmission period and resets the number of transmissions to the initial value. As a result, the input signal packets (see FIG. 3) generated by each of the multiple transmission / reception units 62A-G for the same input signal have different transmission connection information and different number of transmissions, but the same transmission period. The transmission time management unit 65 also has a transmission time management function that manages the time intervals when transmitting the same packet multiple times. Note that the configurations of the transmission time management unit 65 and the transmission / reception units 62A-G according to this embodiment correspond to a second generation unit, and the transmission / reception units 62A-G correspond to multiple generation units.
[0082] (action) 10 is a diagram showing an example of a communication sequence for initial connection according to the second embodiment. The diagram shows an example of processing between the connection unit 61 and transmission / reception units 62A-G of the communication device 60 and the connection unit 51 and transmission / reception units 52A-G of the server device 50. This is a communication sequence in which the communication device 60 connects to the server device 50 as a TCP client, and the TCP ACK sequence is omitted from the description.
[0083] First, the connection unit 61 of the communication device 60 transmits a connection request to the connection unit 51 of the server device 50 (step S400). Upon receiving the connection request, the connection unit 51 of the server device 50 transmits a connection response including transmission connection information to the communication device 60 (step S402).
[0084] Next, the connection unit 61 of the communication device 60 performs a connection completion process (step S404) and notifies the received transmission connection information to the transmission / reception unit 62A (step S406). Subsequently, the connection information storage unit 63A of the transmission / reception unit 62A stores the transmission connection information (step S408).
[0085] Next, the connection unit 51 of the server device 50 notifies the transmission connection information to the transmission / reception unit 52A (step S410). Subsequently, the connection information storage unit 53A of the transmission / reception unit 52A stores the transmission connection information (step S412).
[0086] To make multiple connections, this connection process (steps S400 to S412) is repeated the number of times equal to the number of connections. In this case, in the second connection process, the transmission connection information is stored in connection information storage unit 63B of transmitter / receiver 62B (step S414), and in connection information storage unit 53B of transmitter / receiver 52B (step S416). Similarly, in the third and subsequent connection processes, the transmission connection information is stored in different connection information storage units 63C to G and 53C to G in that order.
[0087] 11 is a diagram showing an example of a communication sequence for transmitting an input signal from the communication device 60 to the server device 50. The diagram shows an example of processing by the transmission time management unit 65 and the transmission / reception units 62A to 62G of the communication device 60, and the control calculation unit 11, the transmission / reception units 52A to 52G, and the redundant packet determination unit 54 of the server device 50.
[0088] The transmission time management unit 65 acquires an input signal from the input device 41 (step S500), and transfers the transmission cycle, the number of transmissions, and the input signal to the transmitter / receiver 62A (step S502). Then, the transmission management unit 25 waits for a certain period of time as a standby process (step S504).
[0089] Next, the transmitting / receiving unit 62A generates a transmission packet signal including its own transmission connection information, a transmission cycle, the number of transmissions, and an input signal, and transmits the signal to the server device 50 (step S506).
[0090] Next, the transceiver 52A among the transceivers 52A-G of the server device 50 receives a transmission packet signal including its own transmission connection information (step S508) and transfers it to the redundant packet determiner 54 (step S510). The redundant packet determiner 54 then determines whether the input signal is redundant (step S512). The redundant packet determiner 54 determines that the input signal is not redundant because it is the first time the input signal has been transmitted, and transfers the input signal to the control operation unit 11 (step S514). The control operation unit 11 generates an output signal according to the input signal (step S516).
[0091] The transmitting / receiving units 62A to 62G repeat such processing during the IO period under the control of the transmission time management unit 65. In this case, the second and subsequent determination processes of the redundant packet determination unit 54 are not the first transmission process, so the redundant packet is determined to be one that has already been received, and the input signal is not transferred to the control calculation unit 11 (step S518). After repeating such processing from A to G, the transmission time management unit 65 performs a standby process until the start of the next IO period (step S520). Then, the transmission time management unit 65 repeatedly performs the transmission process from acquisition of the input signal to A to G for each IO period.
[0092] 12 is a diagram showing an example of a communication sequence for transmitting an output signal from server device 50 to communication device 60. The diagram shows an example of processing between transmitting / receiving units 62A to 62G and redundant packet determining unit 64 of communication device 60, and between control calculation unit 11, transmitting / receiving units 52A to 52G, and transmission time management unit 55 of server device 50.
[0093] The control and calculation unit 11 of the server device 50 generates an output signal according to the input signal (step S516). The transmission time management unit 55 acquires the output signal from the control and calculation unit 11 (step S600) and transfers the transmission cycle, the number of transmissions, and the output signal to the transmitter / receiver 52A (step S602). Then, the transmission time management unit 55 waits for a certain period of time as a standby process (step S604).
[0094] Next, the transmitting / receiving unit 52A generates an output signal packet (see FIG. 5) including its own transmission connection information, transmission period, number of transmissions, and output signal, and transmits it to the communication device 60 (step S606).
[0095] Next, the transceiver 62A among the transceivers 62A-G of the communication device 60 receives the output signal packet including its own transmission connection information (step S608) and transfers it to the redundant packet determination unit 64 (step S610). The redundant packet determination unit 64 then determines whether the output signal is redundant (step S612). The redundant packet determination unit 64 determines that the output signal is not redundant because it is the first time the output signal has been transmitted, and transfers the output signal to the output device 42 via the signal output unit 30 (step S614).
[0096] The transmitting / receiving units 52A to 52G repeat this process during the control period under the control of the transmission time management unit 55. In this case, the second and subsequent determination processes by the redundant packet determination unit 64 are not the first transmission process, so the redundant packet is determined to be one that has already been received, and the output signal is not transferred to the output device 42 (step S616). After repeating this process from A to G, the transmission time management unit 55 performs a standby process until the start of the next control period (step S618). The transmission time management unit 55 then repeats the transmission process from obtaining the output signal to A to G for each control period.
[0097] (effect) In the control system 2 according to this embodiment, the transceivers 52A-G transmit input signals independently under the control of the transmission time management unit 55, and the transceivers 62A-G transmit output signals independently under the control of the transmission time management unit 65. This not only achieves the effects of the control system 1 according to this embodiment, but also makes it possible to efficiently use the CPU of a multi-core server by operating multiple transceivers 52A-G, 62A-G in parallel, and enables packets to be transmitted at accurate time intervals.
[0098] Although several embodiments have been described above, these embodiments are presented only as examples and are not intended to limit the scope of the invention. The novel devices, methods, and programs described in this specification can be embodied in various other forms. Furthermore, various omissions, substitutions, and modifications can be made to the forms of the devices, methods, and programs described in this specification without departing from the spirit of the invention. [Explanation of symbols]
[0099] 1: Control system, 2: Control system, 10: Server device, 11: Control and calculation unit, 12: Connection unit, 16: Redundant packet determination unit, 18: Transmission management unit, 19: Communication unit, 20: Communication device, 21: Connection unit, 25: Transmission management unit, 27: Redundant packet determination unit, 28: Communication unit, 50: Server device, 51: Connection unit, 52A to 52G: Transmitting and receiving units, 54: Redundant packet determination unit, 55: Transmission time management unit, 60: Communication device, 61: Connection unit, 62A to 62G: Transmitting and receiving units, 64: Redundant packet determination unit, 65: Transmission time management unit.
Claims
1. a communication unit that sequentially receives, via a network, a plurality of first packets each including the same first signal for each of a plurality of different pieces of connection information; a determination unit that determines whether the first signal included in the first packet has been received; a control and calculation unit that generates a second signal corresponding to the first signal when the first signal has not been received based on the determination; a first generator configured to generate a plurality of second packets each including one of the plurality of different pieces of connection information added to the second signal; the communication unit transmits the plurality of second packets via the network; The server device, wherein the first generation unit is capable of changing a transmission interval of the plurality of second packets.
2. a communication unit that sequentially receives, via a network, a plurality of first packets each including the same first signal for each of a plurality of different pieces of connection information; a determination unit that determines whether the first signal included in the first packet has been received; a control and calculation unit that generates a second signal corresponding to the first signal when the first signal has not been received based on the determination; a first generator configured to generate a plurality of second packets each including one of the plurality of different pieces of connection information added to the second signal; the communication unit transmits the plurality of second packets via the network; the first generator includes a plurality of generators that correspond to any one of the plurality of different pieces of connection information and generate a second packet by adding the corresponding connection information to the second signal; The plurality of generation units independently transmit the plurality of second packets to the network via the communication unit.
3. a communication unit that sequentially receives, via a network, a plurality of first packets each including the same first signal for each of a plurality of different pieces of connection information; a determination unit that determines whether the first signal included in the first packet has been received; a control and calculation unit that generates a second signal corresponding to the first signal when the first signal has not been received based on the determination; a first generator configured to generate a plurality of second packets each including one of the plurality of different pieces of connection information added to the second signal; the communication unit transmits the plurality of second packets via the network; The plurality of connection requests correspond to a plurality of individual transmitters or a plurality of individual communication devices.
4. a communication unit that sequentially receives, via a network, a plurality of first packets each including the same first signal for each of a plurality of different pieces of connection information; a determination unit that determines whether the first signal included in the first packet has been received; a control and calculation unit that generates a second signal corresponding to the first signal when the first signal has not been received based on the determination; a connection unit that provides any one of the plurality of different connection information via the network in response to a plurality of individual connection requests via the network, the determination unit determines whether the first signal has been received for the first packet having any of the plurality of different connection information; The connection unit determines the number of different pieces of connection information to be issued based on a combination of a transmission cycle, a number of transmissions, and a communication time.
5. a communication unit that sequentially receives, via a network, a plurality of first packets each including the same first signal for each of a plurality of different pieces of connection information; a determination unit that determines whether the first signal included in the first packet has been received; a control and calculation unit that generates a second signal corresponding to the first signal when the first signal has not been received based on the determination; a first generator configured to generate a plurality of second packets each including one of the plurality of different pieces of connection information added to the second signal; the communication unit transmits the plurality of second packets via the network; The server device, wherein the first generation unit dynamically changes the number of transmissions and the transmission interval of the plurality of second packets based on a combination of the network load, a packet loss rate, and a communication time.
6. a communication unit that sequentially receives, via a network, a plurality of first packets each including the same first signal for each of a plurality of different pieces of connection information; a determination unit that determines whether the first signal included in the first packet has been received; a control and calculation unit that generates a second signal corresponding to the first signal when the first signal has not been received based on the determination; a first generator configured to generate a plurality of second packets each including one of the plurality of different pieces of connection information added to the second signal; the communication unit transmits the plurality of second packets via the network; The first generation unit repeatedly assigns the plurality of different connection information in order according to an order in which the second packets are generated.
7. a communication unit that sequentially receives, via a network, a plurality of first packets each including the same first signal for each of a plurality of different pieces of connection information; a determination unit that determines whether the first signal included in the first packet has been received; a control and calculation unit that generates a second signal corresponding to the first signal when the first signal has not been received based on the determination; a first generator configured to generate a plurality of second packets each including one of the plurality of different pieces of connection information added to the second signal; the communication unit transmits the plurality of second packets via the network; The first generation unit assigns connection information that is not used for the second packet being transmitted among the plurality of different connection information to the second packet to be generated based on the flags of the second packets being transmitted.
8. a communication unit that sequentially receives, via a network, a plurality of first packets each including the same first signal for each of a plurality of different pieces of connection information; a determination unit that determines whether the first signal included in the first packet has been received; a control and calculation unit that generates a second signal corresponding to the first signal when the first signal has not been received based on the determination; a first generator configured to generate a plurality of second packets each including one of the plurality of different pieces of connection information added to the second signal; the communication unit transmits the plurality of second packets via the network; The first generation unit includes in the second packet at least one of connection information corresponding to the identification number of the communication device, a transmission cycle indicating which cycle the transmission is in, and a transmission count indicating how many times transmission has been performed within the same cycle.
9. A control system including a server device and a communication device, The server device a connection unit that provides one of a plurality of different connection information via a network in response to a plurality of individual connection requests via the network; a communication unit that sequentially receives, via the network, a plurality of first packets each including the same first signal for each of the plurality of different connection information; a determination unit that determines whether the first signal included in the plurality of first packets has been received; a control and calculation unit that generates a second signal corresponding to the first signal when the first signal has not been received based on the determination; and the determination unit determines whether the first signal has been received for the first packet having any of the plurality of different connection information; the connection unit determines the number of different pieces of connection information to be issued based on a combination of a transmission cycle, a number of transmissions, and a communication time; The communication device a second connection unit that sends the plurality of individual connection requests corresponding to the plurality of individual transmission units to the server device via the network; a second generation unit that generates the plurality of first packets by adding any one of the plurality of different pieces of connection information acquired via the network to the first signal; a second communication unit that sequentially transmits the plurality of first packets to the server device via the network; A control system having:
Citation Information
Patent Citations
printer
JP1984059452A
Data communication method employing multiple connections
JP2010056990A
Variation detection method of network parameter and host device
JP2012028919A
Data communication device, data communication method, and program thereof
JP2014143566A
Processor, communication device, communication system, communication method and computer program
JP2015210793A