Synchronous control method, system, device and medium for a multi-module robot
Through the coordinated work of the general control unit, communication unit, monitoring unit, clock unit, positioning unit and planning unit, the problems of clock synchronization, positioning accuracy and path planning in the multi-module robot system are solved, and the precise positioning and synchronization control of each module of the robot is realized, improving the accuracy and safety of task execution.
Patent Information
- Application Number
- CN202311048204.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-08-21
- Publication Date
- 2025-07-18
- Estimated Expiration
- 2043-08-21
AI Technical Summary
There are problems such as clock synchronization, positioning accuracy, network communication, environment perception and path planning in multi-module robot systems, which affect the stability, real-timeness and accuracy of collaborative control.
The general control unit, communication unit, monitoring unit, clock unit, positioning unit and planning unit are adopted to realize the precise positioning and synchronous control of each module of a multi-module robot through instruction synchronization, indoor positioning, map construction and path planning methods.
It improves the accuracy and security of task execution of multi-module robots in complex environments, ensures high synchronization and close coordination between modules, reduces deployment complexity and data transmission overhead, and enhances overall performance and work efficiency.
Smart Images

Figure CN116810801B_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the technical field of multi-module robots, and particularly relates to a synchronous control method, system, device and medium for a multi-module robot. Background Art
[0002] In modern industrial and service fields, multi-module robot systems are increasingly widely used. They can cooperate in production lines, perform tasks in dangerous environments, provide assistance in the medical field, etc.
[0003] However, the cooperative control of multi-module robots faces some challenges, including clock synchronization, positioning accuracy, task cooperation and other issues.
[0004] In the prior art CN108942931B, a method for real-time synchronous movement of multi-robots is provided. Each robot is arranged according to the size of DID. One robot with a DID value is designated as the main reference object in real time, and the data information of the synchronous action is broadcast. Other robots take the designated robot as the main reference object, and obtain the action data information of the designated robot in real time to perform synchronous actions. If the action of a robot is inconsistent with that of the designated robot, the coordination method is automatically executed. If the currently designated robot fails, it automatically exits the DID value, and another robot with a DID value is reselected as the main reference object, and the above steps are cyclically executed. However, if the action of a robot is inconsistent with that of the designated robot, the coordination method will be automatically executed, and the action data information of the designated robot will be re-obtained and the synchronous action will be re-performed. However, the details of the coordination method are not clearly described, which may lead to inaccurate action coordination processing between different robots, affecting the overall synchronization performance, and may affect the stability, real-time performance and accuracy of the method in complex environments.
[0005] Taking into comprehensive consideration of some existing problems in the prior art, such as: 1. Clock synchronization problem. In a multi-module robot system, there may be slight differences in the clocks of different modules, which may lead to asynchronous execution of instructions between modules and affect the overall performance. Solving the clock synchronization problem is the key to realizing the cooperative control of multi-module robots; 2. Positioning accuracy problem. The module robot system requires accurate positioning information to determine the position relationship and motion state of each module. In a complex environment, factors such as sensor errors and environmental changes may lead to a decrease in positioning accuracy; 3. Network communication problem. Module robots need to achieve cooperative control through wireless communication. A stable communication network is crucial for instruction transmission, information exchange and status update; 4. Environment perception and path planning problem. In various tasks, robots need to perceive the surrounding environment and plan appropriate paths to complete tasks. Obstacles and unknown areas in the environment may affect the effect of path planning. Summary of the Invention
[0006] The object of the present invention is to overcome the deficiencies existing in the prior art and solve the technical problems related to network communication, clock synchronization, positioning method, environmental perception and path planning in the prior art.
[0007] To achieve the above object, the present invention adopts the following technical solutions:
[0008] A multi-module robot synchronization control system, the synchronization control system includes: a master control unit, a communication unit, a monitoring unit, a clock unit, a positioning unit, a planning unit and a user interface;
[0009] The master control unit is used to receive clock information, synchronize and send instructions, and construct an environmental map according to the positioning information and environmental information;
[0010] The communication unit is used for network connection between each module and each unit;
[0011] The monitoring unit is used to receive the self-check information of each module of the multi-module robot and send the self-check result to the master control unit;
[0012] The clock unit is used to obtain the clock information of the network server, receive the hardware clock information, and send the clock information to the master control unit;
[0013] The positioning unit is used to obtain the positioning information of each module;
[0014] The planning unit is used to receive the map information and positioning information constructed by the master control unit, and use the planning method to plan the action paths of each module of the multi-module robot;
[0015] The user interface is used to display the positioning, operating status and environmental map of each module of the multi-module robot.
[0016] The present invention also provides a synchronization control method for a multi-module robot, including the following steps:
[0017] S1: The master control unit is powered on, and each module of the multi-module robot performs self-check, obtains the wireless communication protocol, and obtains the hardware clock information;
[0018] S2: The communication unit establishes a network connection between each module and each unit of the multi-module robot;
[0019] S3: The monitoring unit receives the self-check information from each module of the multi-module robot and sends the self-check result to the master control unit;
[0020] S4: The clock unit receives the hardware clock information from each module of the multi-module robot, and receives the clock information of the network time server, and sends the hardware clock information of each module and the clock information of the network time server to the master control unit;
[0021] S5: The master control unit receives the hardware clock information of each module and the clock information of the network time server, and adjusts the instruction issuing time of each module of the robot under different clock information through an instruction synchronization method, so as to synchronously issue instructions, and each module of the robot starts tasks synchronously. This is an important step in implementing the multi-module robot synchronous control system;
[0022] S6: The positioning unit determines the positioning information of each module of the multi-module robot through an indoor positioning method. Each module sends the positioning information to the master control unit. The master control unit sends instructions to each module of the multi-module robot, uses a laser sensor to scan the surrounding environment information of each module, and each module sends the environment information to the monitoring unit;
[0023] S7: The monitoring unit sends the surrounding environment information of each module of the multi-module robot to the master control unit. The master control unit obtains the environmental map around the multi-module robot through a map construction method;
[0024] S8: The master control unit sends the environmental map and the positioning information of each module of the multi-module robot to the planning unit. The planning unit performs path planning through a planning method to obtain planning information and sends the planning information to the master control unit;
[0025] S9: The master control unit sends the planning information of each module to each module of the multi-module robot through an instruction synchronization method, and each module starts to act according to the planning information. The positioning unit feeds back the positioning information of each module to the master control unit in real time.
[0026] Preferably, the steps of the instruction synchronization method include:
[0027] S5.1: The master control unit receives the hardware clock information from each module and the clock information of the network time server;
[0028] S5.2: For each module, calculate the time difference between its hardware clock and the network time server clock, denoted as Δt. For example, for module A, where, is the hardware clock of module A, and T it is the network time server clock;
[0029] S5.3: Calculate the average value of the time differences of all modules, that is, Δt avg =(Δt A +Δt B +...+Δt N ) / N, where Δt avg is the average value of the time differences, and N represents the number of modules;
[0030] S5.4: For each module, calculate the instruction issuing time T DT= T now + Δt avg , which ensures that the instruction issuing times received by all modules are within an approximate time window, achieving synchronization. Among them, T DT is the instruction issuing time, and T now is the current time.
[0031] Preferably, the steps of the indoor positioning method include:
[0032] Set one of the modules as the module to be located, with its coordinates being (x, y), and the coordinates of the surrounding modules being (x i , y i ), where i = 1, 2, 3;
[0033] After that, perform distance estimation, record the received laser power of the receiving module, and there is a difference between the two. During the propagation of the laser, it can be considered that the difference is the propagation loss. Select the following laser loss model:
[0034]
[0035] Among them, d is the distance between the receiving module and the transmitting module, d0 represents the reference distance, and select it as 1m, P d is the laser power obtained by the receiving module, P d0 is the laser power at the reference distance, ε σ is Gaussian white noise, whose mean value is zero, and n is the proportionality factor of the transmission length and the loss, and its normal value is between 2 and 5. If the distance between the laser transmitting module and the laser receiving module is to be obtained, the resulting formula is as follows:
[0036]
[0037] After that, adopt the trilateration method. Set the robot modules receiving the laser as A, B, C, and P as the robot module emitting the laser, with its coordinates being (x, y). The distances from P to A, B, and C are d A , d B , d C . Taking A, B, and C as the centers and the distance as the radius, draw circles, and an intersection point can be obtained. This point is the position of P. Establish the following system of equations:
[0038]
[0039] After that, solve the system of equations to obtain the coordinates of P as:
[0040]
[0041] Preferably, a map construction method is provided, and the steps include:
[0042] S7.1: Preprocess the collected data, perform noise removal, filtering, and smoothing operations to improve data quality. If there are few valid data points after filtering, fill in the missing data points through interpolation;
[0043] S7.2: Map the processed data points onto a grid map. Assume the resolution of the grid map is Δx, Δy, where Δx and Δy represent the width and height of the grid;
[0044] S7.3: For the data point (x, y), convert its coordinates to grid coordinates (i, j). The conversion formula is i = where the function f is the floor function;
[0045] S7.4: For the data points mapped onto the grid map, if they represent obstacles, mark the corresponding grids as obstacles and update them on the grid map;
[0046] S7.5: Finally, represent the grid map using a two-dimensional array or matrix. Each element represents the state of a grid. For example, use 0 to represent no obstacle and 1 to represent an obstacle. This facilitates the digitization of the grid map and enables the planning module to solve and plan the map conveniently.
[0047] Preferably, the steps of the planning method include:
[0048] S8.1: The unit uses the rasterized map for environmental modeling. The map is divided into multiple grids, and a map matrix G is constructed;
[0049] In the map, each area has corresponding position coordinates in the form of (x, y). Starting from the left and top of the map matrix, each grid is assigned a number, which is 1, 2, 3,..., 25. Thus, the relationship between the number and the coordinates is expressed as follows:
[0050]
[0051] where m is the modulo function, c is the integer function, N represents the number of numbers in each row of the map matrix, and N i is the i-th number.
[0052] S8.2: Draw task points for each module of the multi-module robot. Set the current coordinates of each module as the starting point and set the maximum number of iterations N to limit the maximum number of iterations of the current method;
[0053] S8.3: Each robot module will move forward according to certain rules. In the initial stage, the robot moves forward to adjacent coordinate points with the same probability. To reduce the number of turns and the number of steps to reach the task point, an optimization factor is adopted in the embodiments of the present application. The formula is: where y i -yE represents the vertical distance from the current coordinate point i to the task point, d iE represents the distance from the current coordinate point to the task point. With this optimization factor, the robot module moves towards the coordinate point where it is easier to reach the task point until all robot modules reach the task point;
[0054] S8.4: The robot module reaches the task point once and uses the current coordinate point as the starting point. The comprehensive index is used as the quality index for evaluating the current path. The comprehensive index combines the number of steps and the number of turns for the robot module to reach the task point. The formula is: K = α·S + β·T, where S represents the number of steps, T represents the number of turns, and α, β represent weights used to balance the influence of the number of steps and the number of turns. When the comprehensive index is less than a certain critical value, the optimization factor will be updated, and it will return to step S8.3, increment the iteration count by one. If the maximum iteration count is not reached, continue to plan the next path;
[0055] S8.5: When the maximum iteration count is reached, the best planned path for the robot module is found, and the planning information is sent to the master control unit.
[0056] The present invention also provides an electronic device, including one or more processors and a storage device for storing one or more programs. When the one or more programs are executed by the one or more processors, the electronic device implements the above multi-module robot synchronization control method.
[0057] The present invention also provides a computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor of a computer, the computer implements the above multi-module robot synchronization control method.
[0058] In summary, due to the adoption of the above technical solutions, the beneficial effects of the present invention are:
[0059] 1. The map construction method and path planning method enable the robot to accurately perceive its own position and the surrounding environment, so that it can more intelligently select paths and avoid obstacles when performing tasks. At the same time, it provides more information support for path planning and task execution, improving the accuracy and safety of task execution.
[0060] 2. The indoor positioning method of the positioning unit has a long effective distance, is less affected by the indoor layout and lighting, is not easily interfered by external signal noise, and has strong stability.
[0061] 3. The proprietary network protocol does not contain redundant information or functions, reducing the complexity of deployment and the overhead of data transmission, and ensuring that the protocol structure, data format, and functions match the characteristics and uses of the multi-module robot.
[0062] 4. The clock synchronization and instruction synchronization methods achieve a high degree of synchronization among the modules of the multi-module robot, ensuring that the robot can cooperate closely when performing tasks, avoiding errors and delays caused by clock asynchronization, and thus effectively improving the overall performance and working efficiency of the robot. BRIEF DESCRIPTION OF THE DRAWINGS
[0063] In order to more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the following will briefly introduce the drawings required for the description of the embodiments or the prior art. Obviously, the drawings in the following description are only some embodiments of the present invention. For those of ordinary skill in the art, without creative efforts, other drawings can be obtained based on these drawings.
[0064] Figure 1 Shows a block diagram of the synchronization control system of the multi-module robot of the present invention;
[0065] Figure 2 Shows a flowchart of the synchronization control method of the multi-module robot of the present invention;
[0066] Figure 3 Shows a flowchart of the instruction synchronization method of the multi-module robot of the present invention;
[0067] Figure 4 Shows a flowchart of the map construction method of the multi-module robot of the present invention; DETAILED DESCRIPTION OF THE EMBODIMENTS
[0068] The following will clearly and completely describe the technical solutions in the embodiments of the present invention with reference to the drawings in the embodiments of the present invention. Obviously, the described embodiments are only some embodiments of the present invention, rather than all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those of ordinary skill in the art without creative efforts belong to the scope of protection of the present invention.
[0069] Embodiment 1
[0070] Refer to Figure 1 As shown, this embodiment provides a synchronization control system for a multi-module robot. The synchronization control system includes: a master control unit, a communication unit, a monitoring unit, a clock unit, a positioning unit, a planning unit, and a user interface.
[0071] The master control unit is used to receive clock information, synchronize and send instructions, and construct an environmental map according to the positioning information and environmental information. The positioning information includes the positioning of each module of the multi-module robot, and the environmental information includes the results of laser sensor scans of each module.
[0072] The communication unit is used for network connection among the modules and units.
[0073] The monitoring unit is used to receive the self-check information of each module of the multi-module robot and send the self-check result to the master control unit. The self-check information includes the running status of the current module, and the self-check result includes normal running and running error.
[0074] The clock unit is used to obtain the network server clock information, receive the hardware clock information, and send the clock information to the master control unit.
[0075] The positioning unit is used to obtain the positioning information of each module.
[0076] The planning unit is used to receive the map information and positioning information constructed by the master control unit and use the planning method to plan the action paths of each module of the multi-module robot. The map information includes the map rasterized by the master control unit.
[0077] The user interface is used to display the positioning, running status and environment map of each module of the multi-module robot.
[0078] The beneficial effects of this embodiment are as follows: receiving clock information, synchronizing and sending instructions, constructing an environment map according to the positioning information and environment information, forming a network connection between each module and each unit, receiving the self-check information of each module of the multi-module robot, obtaining the network server clock information, receiving the hardware clock information, using the planning method to plan the action paths of each module of the multi-module robot, and being able to display the positioning, running status and environment map of each module of the multi-module robot through the user interface.
[0079] Embodiment 2
[0080] Refer to Figure 2 As shown, the multi-module robot synchronization control method provided in this embodiment is as follows:
[0081] S1: The master control unit is powered on, and each module of the multi-module robot performs self-check, obtains the wireless communication protocol, and obtains the hardware clock information.
[0082] Among them, the wireless communication protocol refers to the communication protocol used when each module and each unit of the multi-module robot communicate through the communication unit.
[0083] S2: The communication unit establishes a network connection between each module and each unit of the multi-module robot;
[0084] S3: The monitoring unit receives the self-check information from each module of the multi-module robot and sends the self-check result to the master control unit.
[0085] Among them, the self-check of the multi-module robot is carried out in real time, and the self-check result is fed back to the master control unit.
[0086] S4: The clock unit receives the hardware clock information from each module of the multi-module robot and the clock information from the network time server, and sends the hardware clock information of each module and the clock information of the network time server to the master control unit;
[0087] S5: The master control unit receives the hardware clock information of each module and the clock information of the network time server, and adjusts the instruction sending time of each module of the robot under different clock information through the instruction synchronization method, so as to synchronously issue instructions, and each module of the robot starts the task synchronously. This is an important step in implementing the synchronous control system of the multi-module robot.
[0088] S6: The positioning unit determines the positioning information of each module of the multi-module robot through the indoor positioning method. Each module sends the positioning information to the master control unit. The master control unit sends instructions to each module of the multi-module robot to scan the surrounding environment information of each module using a laser sensor, and each module sends the environment information to the monitoring unit.
[0089] S7: The monitoring unit sends the surrounding environment information of each module of the multi-module robot to the master control unit. The master control unit obtains the environmental map around the multi-module robot through the map construction method.
[0090] S8: The master control unit sends the environmental map and the positioning information of each module of the multi-module robot to the planning unit. The planning unit performs path planning through the planning method, obtains the planning information, and sends the planning information to the master control unit.
[0091] S9: The master control unit sends the planning information of each module to each module of the multi-module robot through the instruction synchronization method, and each module starts to act according to the planning information. The positioning unit feeds back the positioning information of each module to the master control unit in real time.
[0092] For the multi-module robot synchronous control method provided in this embodiment, the beneficial effects are as follows. The clock synchronization and instruction synchronization methods achieve a high degree of synchronization between each module of the multi-module robot, ensuring that the robot can closely cooperate when performing tasks, avoiding errors and delays caused by clock asynchronization, and thus effectively improving the overall performance and working efficiency of the robot. The indoor positioning method of the positioning unit combined with the map construction method and the path planning method enables the embodiments of the present invention to achieve precise positioning and path planning of each module of the robot, enabling the robot to accurately perceive its own position and the surrounding environment, and thus being able to more intelligently select paths and avoid obstacles when performing tasks, improving the accuracy and safety of task execution.
[0093] Embodiment 3
[0094] Based on Embodiment 2, this embodiment provides a proprietary communication protocol. Existing general communication protocols may contain redundant information or functions. To reduce the complexity of deployment and the overhead of data transmission, and to ensure that the protocol structure, data format, and functions match the characteristics and uses of the multi-module robot, this embodiment of the application discloses a proprietary communication protocol. The format of each segment of this proprietary communication protocol includes a protocol header and protocol content, where the protocol header has a fixed length and the protocol content has a variable length. The protocol header includes an information type and a content length. The information type includes instruction information and clock information. The content length is defined as follows: if the information type is instruction information, the content length is the actual instruction length; if the information type is clock information, the content length is fixed at 10 characters. The protocol content has different formats according to the information type. If the information type is instruction information, the protocol content is an instruction string; if the information type is clock information, the protocol content is a timestamp string. As a possible implementation, an example of this proprietary communication protocol is shown as follows:
[0095] Protocol header Protocol content 0x01 0x00 0x0B MOVE FORWARD 10
[0096] Among them, the information type is 0x01 (instruction information), the content length is 0x00 0x0B (11 bytes), and the protocol content is MOVE FORWARD 10 (move instruction, move forward 10 units).
[0097] Protocol header Protocol content 0x02 0x00 0x0A 1628589310
[0098] Among them, the information type is 0x02 (clock information), the content length is 0x00 0x0A (10 bytes), and the protocol content is 1628589310 (timestamp information, representing the current clock);
[0099] Refer to Figure 3 As shown, based on Embodiment 2, this embodiment provides an instruction synchronization method,
[0100] S5.1: The master control unit receives the hardware clock information from each module and the clock information from the network time server.
[0101] S5.2: For each module, calculate the time difference between its hardware clock and the clock of the network time server, denoted as Δt. For example, for module A, Among them, is the hardware clock of module A, and T it is the clock of the network time server.
[0102] S5.3: Calculate the average value of the time differences of all modules, that is, Δt avg =(Δt A +Δt B +...+ΔtN ) / N, where Δt avg is the average value of the time difference, and N represents the number of modules.
[0103] S5.4: For each module, calculate the instruction issuance time T DT = T now + Δt avg , which ensures that the instruction issuance times received by all modules are within an approximate time window, achieving synchronization. Here, T DT is the instruction issuance time, and T now is the current time.
[0104] As an example:
[0105]
[0106] T it = 1597233603
[0107] Δt A = -3s
[0108]
[0109] T it = 1597233603
[0110] Δt B = -2s
[0111] At this time,
[0112] Δt avg = -2.5s
[0113] T now = 1597233605
[0114] Then,
[0115]
[0116]
[0117] Thus, the master control unit can adjust the instruction issuance times for different modules.
[0118] Based on Embodiment 2, this embodiment provides an indoor positioning method. Since laser has strong stability, is not easily affected by external visible light and electromagnetic environment, and saves hardware costs, the laser sensors available in each module of the multi-module robot can be fully utilized. When there are at least four robot modules, the four robot modules can locate each other. The method steps are as follows:
[0119] Let one of the modules be the module to be located, with its coordinates being (x, y), and the coordinates of the surrounding modules being (x i , y i ), where i = 1, 2, 3.
[0120] After that, distance estimation is carried out. Since the laser emission power of each module of the robot is fixed, the received laser power of the receiving module is recorded. There is a difference between the two. During the propagation of the laser, it can be considered that the difference is the propagation loss. The laser loss model selected in the embodiment of the present application is as follows:
[0121]
[0122] Among them, d is the distance between the receiving module and the sending module, d0 represents the reference distance, and it is selected to be 1m. P d is the laser power obtained by the receiving module, P d0 is the laser power at the reference distance, ε σ is Gaussian white noise with a mean of zero, and n is the proportionality factor of the transmission length to the loss, and its normal value is between 2 and 5. If the distance between the laser sending module and the laser receiving module is to be obtained, the obtained formula is as follows:
[0123]
[0124] After that, the trilateration method is adopted. Let the robot modules that receive the laser be A, B, and C, and P be the robot module that emits the laser, with its coordinates being (x, y). The distances from P to A, B, and C are d A , d B , d C . Taking A, B, and C as the centers and the distances as the radii, circles are drawn, and an intersection point can be obtained. This point is the position of P. The following system of equations is established:
[0125]
[0126] After that, the system of equations is solved, and the coordinates of P are obtained as:
[0127]
[0128] Finally, the coordinates of one module can be obtained. Similarly, when the other modules emit lasers, their own coordinates can be obtained.
[0129] Referring to Figure 4 as shown, on the basis of Embodiment 2, this embodiment also provides a map construction method. For the map construction method, the master control unit obtains a series of data points according to the environmental information sent by the monitoring unit. The steps are as follows:
[0130] S7.1: Preprocess the collected data, removing noise, filtering, and smoothing operations to improve data quality. If there is less valid data after filtering, fill in the missing data points through interpolation.
[0131] S7.2: Map the processed data points onto a grid map. Assume the resolution of the grid map is Δx, Δy, where Δx and Δy represent the width and height of the grid.
[0132] S7.3: For the data point (x, y), convert its coordinates to grid coordinates (i, j). The conversion formula is where the function f is the floor function.
[0133] S7.4: For the data points mapped onto the grid map, if they represent obstacles, mark the corresponding grids as obstacles and update them on the grid map.
[0134] S7.5: Finally, represent the grid map using a two-dimensional array or matrix. Each element represents the state of a grid. For example, use 0 to represent no obstacle and 1 to represent an obstacle. This facilitates the digitization of the grid map and makes it convenient for the planning module to solve and plan the map.
[0135] Based on Embodiment 2, this embodiment also provides a planning method, and the steps are as follows:
[0136] S8.1: The unit uses the grid-based map for environmental modeling. The map is divided into multiple grids, and a map matrix G is constructed. For example:
[0137]
[0138] In the map, each area has corresponding position coordinates in the form of (x, y). Starting from the left and top of the map matrix, each grid is labeled with a number, 1, 2, 3,..., 25. Thus, the relationship between the number and the coordinates is expressed as follows:
[0139]
[0140] where m is the remainder function, c is the integer function, N represents the number of numbers in each row of the map matrix, and N i is the i-th number.
[0141] S8.2: Draw task points for each module of the multi-module robot. Set the current coordinates of each module as the starting point, and set the maximum number of iterations N to limit the maximum number of iterations of the current method.
[0142] S8.3: Each robot module will move forward according to certain rules. In the initial stage, the robot moves forward to adjacent coordinate points with the same probability. To reduce the number of turns and the number of steps to reach the task point, an optimization factor is adopted in the embodiments of the present application. The formula is: where y i -y E represents the vertical coordinate distance from the current coordinate point i to the task point, and d iE represents the distance from the current coordinate point to the task point. With this optimization factor, the robot module moves forward to the coordinate that is easier to reach the task point until all robot modules reach the task point.
[0143] S8.4: When a robot module reaches the task point once and uses the current coordinate point as the starting point, a comprehensive index is adopted as the quality index for evaluating the current path in the embodiments of the present application. The comprehensive index combines the number of steps for the robot module to reach the task point and the number of turns. The formula is: K = α·S + β·T, where S represents the number of steps, T represents the number of turns, and α and β represent weights used to balance the influence of the number of steps and the number of turns. When the comprehensive index is less than a certain critical value, the optimization factor will be updated. In the embodiments of the present application, the critical value is 10. The weight α is set to 1 and β is set to 2. Assuming that the number of steps for the robot module to reach the task point is 12 and the number of turns is 4, then the comprehensive index K = α·S + β·T = 20, which is greater than the critical value. Therefore, the optimization factor is updated, and it returns to step S8.3, and the iteration count is incremented by one. If the maximum iteration count is not reached, the next path will continue to be planned.
[0144] S8.5: When the maximum iteration count is reached, the best planned path for the robot module is found, and the planning information is sent to the master control unit.
[0145] In this embodiment, by creating a proprietary communication protocol, the beneficial effects are that the protocol does not contain redundant information or functions, reducing the complexity of deployment and the overhead of data transmission, and ensuring that the protocol structure, data format, and functions match the characteristics and uses of the multi-module robot.
[0146] In this embodiment, by using an instruction synchronization method, the beneficial effects are that high synchronization among the modules of the multi-module robot is achieved. The improvement in synchronization performance ensures that the robots can cooperate closely when performing tasks, avoiding errors and delays caused by clock asynchronization, thereby effectively improving the overall performance and working efficiency of the robots.
[0147] In this embodiment, by improving the indoor positioning method and not adopting the existing infrared positioning technology and Bluetooth positioning technology, the beneficial effects are that the effective distance is long, it is less affected by the indoor layout and lighting, is not easily interfered by external signal noise, and has strong stability.
[0148] In this embodiment, by providing a map construction method, the beneficial effects are that the robot can better understand the surrounding environment, make more intelligent decisions, and at the same time provide more information support for path planning and task execution.
[0149] In this embodiment, by providing a planning method, the beneficial effects are that it realizes the precise positioning and path planning of each module of the robot, enables the robot to accurately perceive its own position and the surrounding environment, so that it can more intelligently select paths and avoid obstacles when executing tasks, and improves the accuracy and safety of task execution.
[0150] Embodiment 4
[0151] This embodiment provides an electronic device, including one or more processors and a storage device for storing one or more programs. When the one or more programs are executed by the one or more processors, the electronic device realizes the synchronous control method of a multi-module robot.
[0152] This embodiment also provides a computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor of the computer, the computer executes the synchronous control method of a multi-module robot.
[0153] As mentioned above, only the preferred specific embodiments of the present invention are provided, but the protection scope of the present invention is not limited thereto. Any person skilled in the art within the technical scope disclosed by the present invention, according to the technical solution and inventive concept of the present invention, makes equivalent substitutions or changes, and should be covered by the protection scope of the present invention.
[0154] The preferred embodiments of the present invention disclosed above are only used to help illustrate the present invention. The preferred embodiments do not describe all the details in detail, nor limit the present invention to only the specific embodiments. Obviously, many modifications and changes can be made according to the content of this specification. This specification selects and specifically describes these embodiments to better explain the principle and practical application of the present invention, so that those skilled in the art can well understand and utilize the present invention. The present invention is only limited by the claims and their full scope and equivalents.
Claims
1. A synchronization control system for a multi-module robot, characterized in that including: a master control unit, a communication unit, a monitoring unit, a clock unit, a positioning unit, a planning unit and a user interface; The master control unit is used to receive clock information, synchronize and send instructions, and construct an environmental map according to the positioning information and environmental information; The communication unit is used for network connection between various modules and units; The monitoring unit is used to receive the self-check information of each module of the multi-module robot and send the self-check result to the master control unit; The clock unit is used to obtain the clock information of the network server, receive the hardware clock information, and send the clock information to the master control unit; The positioning unit is used to obtain the positioning information of each module; The planning unit is used to receive the map information and positioning information constructed by the master control unit, and use a planning method to plan the action paths of each module of the multi-module robot; The user interface is used to display the positioning, operating status and environmental map of each module of the multi-module robot; The master control unit receives the hardware clock information of each module and the clock information of the network time server, and adjusts the instruction issuing time of each module of the robot under different clock information through an instruction synchronization method, so as to issue instructions synchronously, and each module of the robot starts tasks synchronously; The steps of the instruction synchronization method include: S5.1: The master control unit receives the hardware clock information of each module and the clock information of the network time server; S5.2: For each module, calculate the time difference between its hardware clock and the network time server clock, denoted as Δt; for module A, where, is the hardware clock of module A, and T it is the network time server clock; S5.3: Calculate the average value of the time differences of all modules, i.e., Δt avg =(Δt A +Δt B +…+Δt N ) / N, where Δt avg is the average value of the time differences, and N represents the number of modules; S5.4: For each module, calculate the instruction issuance time T DT = T now + Δt avg , which ensures that the instruction issuance times received by all modules are within an approximate time window, achieving synchronization; where T DT is the instruction issuance time, and T now is the current time.
2. A synchronous control method for a multi-module robot, characterized in that, including the following steps: S1: The master control unit is powered on, each module of the multi-module robot performs self-check, obtains the wireless communication protocol, and obtains the hardware clock information; S2: The communication unit establishes a network connection between each module and each unit of the multi-module robot; S3: The monitoring unit receives the self-check information of each module of the multi-module robot and sends the self-check result to the master control unit; S4: The clock unit receives the hardware clock information of each module of the multi-module robot, and receives the clock information of the network time server, and sends the hardware clock information of each module and the clock information of the network time server to the master control unit; S5: The master control unit receives the hardware clock information of each module and the clock information of the network time server, and adjusts the instruction issuing time of each module of the robot under different clock information through an instruction synchronization method, so as to issue instructions synchronously, and each module of the robot starts tasks synchronously; S6: The positioning unit determines the positioning information of each module of the multi-module robot through an indoor positioning method, each module sends the positioning information to the master control unit, the master control unit sends instructions to each module of the multi-module robot, uses a laser sensor to scan the environmental information around each module, and each module sends the environmental information to the monitoring unit; S7: The monitoring unit sends the environmental information around each module of the multi-module robot to the master control unit, and the master control unit obtains the environmental map around the multi-module robot through a map construction method; S8: The master control unit sends the environmental map and the positioning information of each module of the multi-module robot to the planning unit, the planning unit performs path planning through a planning method to obtain planning information, and sends the planning information to the master control unit; S9: The master control unit sends the planning information of each module to each module of the multi-module robot through an instruction synchronization method, and each module starts to act according to the planning information; the positioning unit feeds back the positioning information of each module to the master control unit in real time.
3. The synchronous control method of a multi-module robot according to claim 2, characterized in that, The steps of the indoor positioning method in step S6 include: One of the modules is the module to be located, with coordinates (x, y), and the coordinates of the surrounding modules are (x i , y i ), where i = 1, 2, 3; After that, distance estimation is performed, and the received laser power of the receiving module is recorded. There is a difference between the two. During the propagation of the laser, it can be considered that the difference is the propagation loss. The following laser loss model is selected: Among them, d is the distance between the receiving module and the transmitting module, d0 represents the reference distance, and it is selected as 1m, P d is the laser power obtained by the receiving module, P d0 is the laser power at the reference distance, ε σ is Gaussian white noise with a mean of zero, n is the proportionality factor of the transmission length and loss, and its normal value is between 2 and 5. If the distance between the laser transmitting module and the laser receiving module is obtained, the resulting formula is as follows: After that, the trilateral positioning method is adopted. Let the robot modules that receive laser be A, B, and C, and P be the robot module that emits laser, with its coordinates being (x, y). The distances from P to A, B, and C are d A , d B , d C , taking A, B, and C as the centers of circles and the distance as the radius, draw circles, and an intersection point can be obtained. This point is the position of P. The following system of equations is established: After that, the system of equations is solved to obtain the coordinates of P as:
4. The synchronous control method of a multi-module robot according to claim 2, characterized in that, The steps of the map construction method in step S7 include: S7.1: Preprocess the collected data, remove noise, filter, and smooth operations to improve data quality. If there are few effective data points after filtering, fill in the missing data points by interpolation. S7.2: Map the processed data points onto a grid map. Assume that the resolution of the grid map is Δx, Δy, where Δx and Δy represent the width and height of the grid. S7.3: For the data point (x, y), convert its coordinates to grid coordinates (i, j), and the conversion formula is where the function f is the floor function; S7.4: For the data points mapped onto the grid map, if they represent obstacles, mark the corresponding grids as obstacles and update them on the grid map. S7.5: Finally, represent the grid map using a two-dimensional array or matrix, and each element represents the state of a grid.
5. The synchronous control method of a multi-module robot according to claim 2, characterized in that, The steps of the planning method in step S8 include: S8.1: The unit uses the rasterized map for environmental modeling. The map is divided into multiple grids, and a map matrix G is constructed. In the map, each area has corresponding position coordinates in the form of (x, y). Starting from the left and top of the map matrix, each grid is assigned a number, which is 1, 2, 3,..., i. Thus, the relationship between the number and the coordinates is expressed as follows: Among them, m is the remainder function, c is the integer function, N represents the number of row numbers in the map matrix, and N i is the i-th number; S8.2: Draw task points for each module of the multi-module robot, set the current coordinates of each module as the starting point, and set the maximum number of iterations N to limit the maximum number of iterations of the current method. S8.3: Each robot module will move forward according to certain rules. In the initial stage, the robot moves forward to adjacent coordinate points with the same probability. To reduce the number of turns and the number of steps to reach the task point, the calculation formula for the optimization factor is as follows: where y i -y E represents the vertical coordinate distance from the current coordinate point i to the task point, and d iE represents the distance from the current coordinate point to the task point. From this, the optimization factor is obtained, enabling the robot module to move forward to the coordinate point that is easier to reach the task point until all robot modules reach the task point; S8.4: When a robot module reaches a task point and uses the current coordinate point as the starting point, a comprehensive index is used as the quality index for evaluating the current path. The comprehensive index combines the number of steps and the number of turns for the robot module to reach the task point. The formula is: K = α·S + β·T, where S represents the number of steps, T represents the number of turns, and α, β represent weights used to balance the influence of the number of steps and the number of turns; when the comprehensive index is less than a certain critical value, the optimization factor is updated, and the process returns to step S8.3, and the number of iterations is incremented by one. If the maximum number of iterations has not been reached, continue to plan the next path. S8.5: When the maximum number of iterations is reached, the best planned path for the robot module is found, and the planning information is sent to the master control unit.
6. An electronic device, characterized in that, It includes one or more processors and a storage device for storing one or more programs. When the one or more programs are executed by the one or more processors, the electronic device implements a multi-module robot synchronization control method as described in any one of claims 2 to 5.
7. A computer-readable storage medium, characterized in that, It stores a computer program. When the computer program is executed by the processor of the computer, the computer executes a multi-module robot synchronization control method as described in any one of claims 2 to 5.
Citation Information
Patent Citations
A method for real-time synchronized motion of multiple robots
CN108942931B
Robot chassis control system and method based on time hard synchronization
CN111791232A
Distributed formation robot general software layered architecture
CN116300910A