KR-102962980-B1 - Data transmission system and data transmission method between server terminal and client terminal
Abstract
According to an embodiment of the present invention, a data transmission system for controlling a robot device comprises a server terminal that generates a command list including a plurality of command information for controlling a robot device, and a client terminal that synchronizes communication with the server terminal, requests a control command for the robot device from the server terminal when the communication is synchronized, receives command data including each unit command divided from the command list in response to the control command request, and drives the robot device based on each unit command, wherein the client terminal comprises a communication buffer that receives the command data and a microcontroller unit (MCU) that drives the robot device based on the command data.
Inventors
- 정완균
- 최원빈
- 송상수
- 전재홍
Assignees
- 제로웍스 주식회사
Dates
- Publication Date
- 20260511
- Application Date
- 20231110
Claims (14)
- In a data transmission system for controlling a robot device, A server terminal that transmits data to a client terminal in a first cycle, comprising a processor consisting of a memory capable of storing a command list capable of controlling a robot device, a dividing unit capable of dividing the command list into a plurality of unit commands of a predetermined size, and a matching unit that generates a plurality of sequence identifiers corresponding to the plurality of unit commands from the command list; and A client terminal that synchronizes communication with the server terminal, requests a control command for the robot device from the server terminal when the communication is synchronized, receives command data including each unit command divided from the command list in response to the control command request, and drives the robot device based on each unit command. The above client terminal is, A communication buffer for receiving the above command data; and It includes a small computational circuit (MCU, Micro Control Unit) that drives the robot device based on the above command data, and After attempting communication with the server terminal, if a control command for the device is requested from the server terminal, the data exchange period with the server terminal from any first point in time is modulated to a second period shorter than the first period, and The data exchange period with the server terminal from the second time point, when a signal is first received from the server terminal after the first time point, is modulated to the first period, and At the third time point, which is elapsed by the first period from the second time point, a test signal is transmitted to the server terminal, and At a fourth time point that has elapsed by the first period from the third time point, receiving a confirm signal for the test signal from the server terminal and synchronizing communication with the server terminal based on the fourth time point, Data transmission system.
- delete
- In paragraph 1, The above server terminal is, The above command list is divided into a plurality of unit commands of a predetermined size, and a plurality of sequence identifiers corresponding to the plurality of unit commands are generated from the command list and matched to the plurality of unit commands. The above command data is, A sequence identifier including one of the plurality of unit commands and one of the plurality of sequence identifiers matched to the one Data transmission system.
- In paragraph 1, The first command data included in the first data packet received by the communication buffer at the first time is, It includes a first unit command among the plurality of unit commands and a first sequence identifier among the plurality of sequence identifiers corresponding to the first unit command, The above MCU is, Driving the robot device by executing the above first unit command, Data transmission system.
- In paragraph 4, The second command data included in the second data packet first received by the communication buffer from the server terminal after the first time point is, It includes a second unit command among the plurality of unit commands and a second sequence identifier among the plurality of sequence identifiers corresponding to the second unit command, The above MCU is, Determining whether the second sequence identifier is a sequence identifier immediately following the first sequence identifier, Data transmission system.
- In paragraph 5, If the second sequence identifier is a sequence identifier immediately following the first sequence identifier, The above MCU is, Driving the robot device by executing the above second unit command, Data transmission system.
- In paragraph 5, If the second sequence identifier is not a sequence identifier immediately following the first sequence identifier, The above MCU is, Requesting the server terminal a control command including a unit command matched to a sequence identifier immediately following the first sequence identifier, Data transmission system.
- In a data transmission method in which a server terminal and a client terminal communicate to transmit data for controlling a robot device, A step in which a server terminal generates a command list including a plurality of command information for controlling a robot device; A step in which the client terminal synchronizes communication with the server terminal; The step of the client terminal requesting a control command for the robot device from the server terminal when the communication is synchronized; The above client terminal receives command data including each unit command divided from the command list in response to the control command request; and The above client terminal includes the step of driving the robot device based on each of the above unit commands, and The above client terminal is, A communication buffer for receiving the above command data; and It includes a small computational circuit (MCU, Micro Control Unit) that drives the robot device based on the above command data, The step of synchronizing communication with the above-mentioned server terminal is: A step of modulating the data exchange period with the server terminal from an arbitrary first point in time after attempting communication with the server terminal to a second period shorter than the first period during which the server terminal transmits data to the client terminal; A step of modulating the data exchange period with the server terminal from the second time point, when a signal is first received from the server terminal after the first time point, to the first period; A step of transmitting a test signal to the server terminal at a third time point that has elapsed by the first period from the second time point; and A step of receiving a confirmation signal for the test signal from the server terminal at a fourth time point, which is elapsed by the first period from the third time point; The above server terminal divides the command list into a plurality of unit commands of a predetermined size; and The method further includes the step of generating a plurality of sequence identifiers corresponding to the plurality of unit commands from the command list and matching them to the plurality of unit commands. The above command data is, A sequence identifier including one of the plurality of unit commands and one of the plurality of sequence identifiers matched to the one method.
- delete
- delete
- In paragraph 8, The first command data included in the first data packet received by the communication buffer at the first time is, It includes a first unit command among the plurality of unit commands and a first sequence identifier among the plurality of sequence identifiers corresponding to the first unit command, The above client terminal further includes the step of driving the robot device by executing the above first unit command, method.
- In Paragraph 11, The second command data included in the second data packet first received by the communication buffer from the server terminal after the first time point is, It includes a second unit command among the plurality of unit commands and a second sequence identifier among the plurality of sequence identifiers corresponding to the second unit command, The above client terminal further includes the step of determining whether the second sequence identifier is a sequence identifier immediately following the first sequence identifier. method.
- In Paragraph 12, If the second sequence identifier is a sequence identifier immediately following the first sequence identifier, The above client terminal further includes the step of driving the robot device by executing the above second unit command, method.
- In Paragraph 12, If the second sequence identifier is not a sequence identifier immediately following the first sequence identifier, The above client terminal further includes the step of requesting the server terminal a control command comprising a unit command matched to a sequence identifier immediately following the first sequence identifier. method.
Description
Data transmission system and data transmission method between server terminal and client terminal The present invention relates to a data transmission system and a data transmission method between a server terminal and a client terminal. A client terminal that operates a robot device, etc., can operate the robot device by receiving a control command to control the robot device from a server terminal. However, if the communication between the server terminal and the client terminal is asynchronous, it may be difficult to exchange data between them if they are not synchronized. In addition, commands transmitted from the server terminal to the client terminal are generally segmented according to the buffer size of the client terminal and sent to the client terminal; in this case, the client terminal can only execute the command and operate the robot device after receiving all the segmented commands, which may result in a delay until the entire data is downloaded. FIG. 1 is a block diagram schematically illustrating a data transmission system according to one embodiment of the present invention. FIG. 2 is an exemplary diagram illustrating the communication timing of a server terminal and a client terminal in a communication synchronization operation according to an embodiment of the present invention. FIG. 3 is a block diagram illustrating the detailed configuration of the server terminal and client terminal shown in FIG. 1. Figure 4 is a conceptual diagram to explain the size of the data divided by the server terminal being compared. FIG. 5 is a conceptual diagram illustrating the size of unit commands and sequence identifiers generated by a server terminal according to an embodiment of the present invention. FIG. 6 is a flowchart of a data transmission method according to one embodiment of the present invention. Figure 7 is a flowchart showing the detailed sequence of step S100 shown in Figure 6. The present invention may be implemented with various modifications without departing from the spirit, and may have one or more embodiments. Furthermore, the embodiments described in the "specific details for implementing the invention" and "drawings," etc., in the present invention are examples for specifically explaining the present invention and do not limit or restrict the scope of the rights of the present invention. Accordingly, anything that a person skilled in the art to which the present invention pertains can easily deduce from the “specific details for carrying out the invention” and “drawings,” etc., of the present invention may be interpreted as falling within the scope of the present invention. In addition, the size and shape of each component shown in the drawings may be exaggerated for the purpose of explaining the embodiments and do not limit the actual size and shape of the invention. Unless specifically defined otherwise in the specification of the present invention, terms used therein may have the same meaning as generally understood by those skilled in the art to which the present invention pertains. Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. FIG. 1 is a block diagram schematically illustrating a data transmission system according to one embodiment of the present invention. Referring to FIG. 1, the data transmission system (1) may include a server terminal (10) and a client terminal (20). The server terminal (10) and the client terminal (20) can exchange signals through a wired or wireless network. The server terminal (10) may be configured to communicate with the client terminal (20) so that the client terminal (20) can operate the robot device. The server terminal (10) may be a computing device. The server terminal (10) may exchange signals and/or data with the client terminal (20). The client terminal (20) may be a configuration corresponding to the user side in a Client/Server configuration. The client terminal (20) is installed on a robot device and can operate the robot device. The client terminal (20) may be a terminal that drives the robot device. A robot device equipped with a client terminal (20) can perform driving operations based on command data from a server terminal (10). For example, the robot device may be equipped with an extruder that moves within a predetermined range and extrudes a filler onto the surface of a target item, a motor for the extrusion operation of the extruder, etc. Additionally, the driving operation of the robot device may include an operation of moving the extruder along a predetermined path, an operation of extruding the filler onto the surface of a target item at a predetermined position on the predetermined path, etc. A command list may include a plurality of command information capable of controlling the robot device. The plurality of command information may include commands corresponding to a motor control value, a path of the extruder, coordinates on the target item to be extruded with t