Robot based on DDS communication and multi-robot obstacle avoidance method

By using a DDS-based robot system and leveraging a data distribution service protocol and an artificial potential field algorithm, global and local obstacle avoidance paths are generated. This solves the problems of communication latency and low computational efficiency in multi-robot systems, and achieves efficient obstacle avoidance in real-time and dynamic environments.

CN120949777APending Publication Date: 2025-11-14福建汉特云智能科技有限公司

Patent Information

Application Number
CN202511121610.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-08-12
Publication Date
2025-11-14

AI Technical Summary

Technical Problem

Existing multi-robot systems suffer from high communication latency, easy loss of communication, low computational efficiency, and high complexity of traditional obstacle avoidance algorithms, making it difficult to meet the requirements of real-time performance and adaptability to dynamic environments.

Method used

A robot system based on DDS communication is adopted. The system acquires state and environmental information through the perception module, builds a communication network using the data distribution service protocol, and generates global and local obstacle avoidance paths by combining the conflict manager and local planner of the decision module, thereby realizing distributed obstacle avoidance control.

Benefits of technology

It reduces communication latency, improves the real-time performance and computational efficiency of obstacle avoidance strategies, and enhances the system's adaptability and security in dynamic environments.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120949777A_ABST
    Figure CN120949777A_ABST
Patent Text Reader

Abstract

The invention relates to a DDS communication-based robot and a multi-robot obstacle avoidance method, and the robot comprises a sensing module which is used for obtaining self state information and surrounding environment information; the communication module and the communication network are used for sharing state information and surrounding environment information among multiple robots; the decision module comprises a local planner and a conflict manager, the conflict manager is used for generating a global obstacle avoidance path according to an obstacle avoidance strategy when a conflict risk exists, and the local planner is used for generating a local obstacle avoidance path based on an artificial potential field algorithm in the walking process according to the global obstacle avoidance planning path; and the control module is used for controlling the robot according to the path generated by the decision module. The characteristics of a communication network constructed by using a data distribution service protocol are utilized, the communication transmission delay among the robots is reduced, the real-time performance of an obstacle avoidance strategy is ensured, and meanwhile, distributed cooperative obstacle avoidance among the multiple robots is realized, so that the defect of centralized control is avoided.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of robotics technology, specifically to a robot based on DDS communication and a multi-robot obstacle avoidance method. Background Technology

[0002] With the increasing prevalence of robotics applications, multi-robot collaborative operations are becoming more common. Obstacle avoidance is a crucial technology for ensuring the safe and efficient operation of multi-robot collaborative systems. Traditional multi-robot obstacle avoidance solutions suffer from several problems: First, the commonly used ROS communication mechanism suffers from high message latency and easy message loss in large-scale robot scenarios, making it difficult to meet the real-time requirements of obstacle avoidance decisions. Second, traditional multi-robot control architectures often employ centralized control methods, using a central server to handle the computational load, resulting in low computational efficiency and the risk of single points of failure. Third, traditional multi-robot obstacle avoidance algorithms, such as the traditional artificial potential field method, are prone to getting trapped in local optima, while time-window-based conflict detection algorithms have high computational complexity and are difficult to adapt to the dynamically changing operating environment of multiple robots. Summary of the Invention

[0003] In view of the above problems, this application provides a robot and multi-robot obstacle avoidance method based on DDS communication, which solves the problems of high communication message latency, easy loss and real-time performance of existing robots based on ROS communication mechanism, as well as the problems of low computing efficiency due to centralized load on central server.

[0004] To achieve the above objectives, the inventors provide a robot based on DDS communication, comprising:

[0005] The sensing module is used to acquire its own state information and surrounding environment information;

[0006] A communication module, which is based on a data distribution service protocol to build a communication network, which is used for sharing status information and surrounding environment information among multiple robots;

[0007] The decision module includes a local planner and a conflict manager. The conflict manager is used to determine whether there is a risk of conflict with other robots. When there is a risk of conflict, a global obstacle avoidance path is generated according to the obstacle avoidance strategy. The local planner is used to generate a local obstacle avoidance path based on the artificial potential field algorithm during the process of walking according to the global obstacle avoidance planning path.

[0008] The control module is used to control the robot's drive unit and steering mechanism according to the path generated by the decision module.

[0009] In some embodiments, the communication module is further configured to dynamically adjust the communication bandwidth based on the robot's task priority and distance.

[0010] In some embodiments, the communication module configures the DDS's Quality of Service (QoS) policy, sets the maximum time interval (Deadline) for publishing new data to 50ms, and controls the data transmission reliability level to RELIABLE mode.

[0011] In some embodiments, the conflict manager is specifically used to determine whether there is a risk of conflict with other robots by spatial conflict judgment, path intersection judgment and speed conflict judgment. If any one of the spatial conflict judgment, path intersection judgment and speed conflict judgment indicates that there is a risk of conflict with other robots, it means that the current robot has a risk of conflict.

[0012] The spatial conflict determination specifically includes calculating whether the Euclidean distance between the two robots at the same moment is less than the safe distance. If it is less, it indicates that there is a risk of conflict.

[0013] The path intersection judgment specifically includes predicting the movement trajectories of two robots within a time period, judging whether there is an intersection, and if so, indicating a risk of conflict.

[0014] The speed conflict determination specifically includes determining whether the two robots are moving towards each other. If so, it is determined whether the distance between the two robots is less than the moving distance. If it is less, it indicates that there is a risk of conflict.

[0015] In some embodiments, the artificial potential field algorithm specifically includes:

[0016] Calculate the attractive force of the target point on the robot to obtain the gravitational potential energy;

[0017] Calculate the repulsive effect of obstacles on the robot to obtain the repulsive potential energy;

[0018] The semantic potential energy is calculated based on the robot's task priority, collision risk, and distance from other robots;

[0019] The total potential energy is calculated using gravitational potential energy, repulsive potential energy, and semantic potential energy.

[0020] In some embodiments, the conflict manager is specifically used to calculate the priority of a robot, and when a risk conflict exists, to calculate the priority difference P between the robot and the robot with the conflict. diff ; Priority difference P diff Compare with the threshold ε; when P diff If P > ε, then maintain the original path; diffIf |P| < -ε, then the original path is adjusted. This adjustment includes speed adjustment based on the speed adjustment formula, direction adjustment based on the influence of semantic potential energy, and time window adjustment of the conflict zone based on the maximum time other robots take to enter the conflict zone. diff If |≤ε, then the robot that caused the conflict will negotiate based on the distance to the target. The robot closer to the target will maintain its original path, while the robot closer to the target will adjust its original path.

[0021] Another technical solution is also provided: a multi-robot obstacle avoidance method based on DDS communication, which includes the following steps:

[0022] The robot acquires its own state information and information about its surrounding environment;

[0023] A communication network based on a data distribution service protocol enables multiple robots to share status information and surrounding environment information.

[0024] Based on data acquired by itself and data sent by other robots, the robot determines whether there is a risk of conflict with other robots.

[0025] When there is a risk of conflict, a global obstacle avoidance path is generated based on the obstacle avoidance strategy.

[0026] During the process of the robot walking according to the global obstacle avoidance path, a local obstacle avoidance path is generated based on the artificial potential field algorithm;

[0027] The robot controls the drive unit and steering mechanism based on obstacle avoidance paths.

[0028] In some embodiments, determining whether there is a risk of conflict with other robots specifically includes the following steps:

[0029] The risk of conflict with other robots is determined by spatial conflict judgment, path intersection judgment, and speed conflict judgment.

[0030] If any of the spatial conflict judgment, path intersection judgment, or speed conflict judgment has a conflict risk with other robots, it means that the current robot has a conflict risk.

[0031] The spatial conflict determination specifically includes calculating whether the Euclidean distance between the two robots at the same moment is less than the safe distance. If it is less, it indicates that there is a risk of conflict.

[0032] The path intersection judgment specifically includes predicting the movement trajectories of two robots within a time period, judging whether there is an intersection, and if so, indicating a risk of conflict.

[0033] The speed conflict determination specifically includes determining whether the two robots are moving towards each other. If so, it is determined whether the distance between the two robots is less than the moving distance. If it is less, it indicates that there is a risk of conflict.

[0034] In some embodiments, the artificial potential energy algorithm specifically includes the following steps:

[0035] Calculate the attractive force of the target point on the robot to obtain the gravitational potential energy;

[0036] Calculate the repulsive effect of obstacles on the robot to obtain the repulsive potential energy;

[0037] The semantic potential energy is calculated based on the robot's task priority, collision risk, and distance from other robots;

[0038] The total potential energy is calculated using gravitational potential energy, repulsive potential energy, and semantic potential energy.

[0039] In some embodiments, the obstacle avoidance specifically includes the following steps;

[0040] Calculate the robot's priority;

[0041] When a risk conflict exists, calculate the priority difference P between the robot and the robot with the conflict. diff ;

[0042] Priority difference P diff Compare with the threshold ε;

[0043] When P diff If the value is greater than ε, then the original path will be maintained.

[0044] When P diff If the value is less than or equal to ε, then the original path is adjusted. The adjustment of the original path includes adjusting the speed according to the speed adjustment formula, adjusting the direction according to the influence of semantic potential energy, and adjusting the time window of the conflict zone according to the maximum time of other robots entering the conflict zone.

[0045] When |P diff If |≤ε, then the robot that caused the conflict will negotiate based on the distance to the target. The robot closer to the target will maintain its original path, while the robot closer to the target will adjust its original path.

[0046] Unlike existing technologies, the above solution involves a robot acquiring its own state information and surrounding environment information through a perception module. This information is then shared among multiple robots via a communication network built on a data distribution service protocol. The conflict manager in the decision-making module assesses conflict risk based on its own acquired data and data shared with other robots. If a conflict risk exists, a global obstacle avoidance path is generated according to the obstacle avoidance strategy. Meanwhile, a local planner generates a local obstacle avoidance path based on an artificial potential field algorithm as the robot moves along the global path. The control module then controls the robot's drive unit and steering mechanism according to the obstacle avoidance path generated by the decision-making module, achieving collaborative obstacle avoidance among multiple robots. Utilizing the characteristics of the communication network built on the data distribution service protocol reduces communication latency between robots, ensuring the real-time performance of the obstacle avoidance strategy. Furthermore, the distributed collaborative obstacle avoidance among multiple robots avoids the drawbacks of centralized control and improves computational efficiency.

[0047] The above description of the invention is merely an overview of the technical solution of this application. In order to enable those skilled in the art to better understand the technical solution of this application and to implement it based on the description and drawings, and to make the above-mentioned objectives and other objectives, features and advantages of this application easier to understand, the following description is provided in conjunction with the specific embodiments and drawings of this application. Attached Figure Description

[0048] The accompanying drawings are only used to illustrate the principles, implementation methods, applications, features, and effects of specific embodiments of this application and other related content, and should not be considered as limitations on this application.

[0049] In the accompanying drawings of the instruction manual:

[0050] Figure 1 A schematic diagram of a robot based on DDS communication as described in a specific embodiment;

[0051] Figure 2 A schematic diagram of the decision module described in a specific implementation method;

[0052] Figure 3 This is a flowchart illustrating a multi-robot obstacle avoidance method based on DDS communication as described in a specific implementation.

[0053] Figure 4 This is a flowchart illustrating one specific implementation of the artificial potential field algorithm.

[0054] Figure 5 A flowchart illustrating the obstacle avoidance strategy described in a specific implementation;

[0055] Figure 6This is another flowchart illustrating the multi-robot obstacle avoidance method based on DDS communication as described in a specific implementation.

[0056] The reference numerals used in the above figures are explained as follows:

[0057] 110. Sensing module,

[0058] 120. Communication module

[0059] 130. Decision-making module

[0060] 131. Local planner

[0061] 132. Conflict Manager

[0062] 140. Control module. Detailed Implementation

[0063] To illustrate the possible application scenarios, technical principles, implementable specific solutions, and achievable objectives and effects of this application in detail, the following description, in conjunction with the listed specific embodiments and accompanying drawings, provides a detailed explanation. The embodiments described herein are merely illustrative of the technical solutions of this application and are therefore intended to limit the scope of protection of this application.

[0064] In this document, the term "embodiment" means that a specific feature, structure, or characteristic described in connection with an embodiment may be included in at least one embodiment of this application. The term "embodiment" appearing in various places throughout the specification does not necessarily refer to the same embodiment, nor does it specifically limit its independence or connection with other embodiments. In principle, in this application, as long as there are no technical contradictions or conflicts, the technical features mentioned in each embodiment can be combined in any way to form corresponding implementable technical solutions.

[0065] Unless otherwise defined, the technical terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application pertains; the use of related terms herein is merely for the purpose of describing particular embodiments and is not intended to limit this application.

[0066] In the description of this application, the term "and / or" is used to describe the logical relationship between objects, indicating that three relationships can exist. For example, A and / or B means: A exists, B exists, and A and B exist simultaneously. Additionally, the character " / " in this document generally indicates that the preceding and following objects have an "or" logical relationship.

[0067] In this application, terms such as “first” and “second” are used only to distinguish one entity or operation from another, and do not necessarily require or imply any actual quantity, hierarchy or order relationship between these entities or operations.

[0068] Unless otherwise specified, the use of terms such as “comprising,” “including,” “having,” or other similar expressions in this application is intended to cover non-exclusive inclusion, which does not exclude the presence of additional elements in a process, method, or product that includes the stated elements, such that a process, method, or product that includes a list of elements may include not only those defined elements but also other elements not expressly listed, or elements inherent to such a process, method, or product.

[0069] Similar to the understanding in the Examination Guidelines, in this application, expressions such as "greater than," "less than," and "exceeding" are understood to exclude the stated number; expressions such as "above," "below," and "within" are understood to include the stated number. Furthermore, in the description of the embodiments in this application, "multiple" means two or more (including two), and similar expressions related to "multiple" are also understood in this way, such as "multiple groups" and "multiple times," unless otherwise explicitly specified.

[0070] In the description of the embodiments of this application, the space-related expressions used, such as "center," "longitudinal," "lateral," "length," "width," "thickness," "upper," "lower," "front," "rear," "left," "right," "vertical," "horizontal," "vertical," "top," "bottom," "inner," "outer," "clockwise," "counterclockwise," "axial," "radial," and "circumferential," indicate the orientation or positional relationship based on the orientation or positional relationship shown in the specific embodiments or drawings. They are only for the purpose of describing the specific embodiments of this application or for the reader's understanding, and do not indicate or imply that the device or component referred to must have a specific position, a specific orientation, or be constructed or operated in a specific orientation. Therefore, they should not be construed as limitations on the embodiments of this application.

[0071] Unless otherwise expressly specified or limited, the terms "installation," "connection," "linking," "fixing," and "setting," as used in the description of the embodiments of this application, should be interpreted broadly. For example, "connection" can be a fixed connection, a detachable connection, or an integral setting; it can be a mechanical connection, an electrical connection, or a communication connection; it can be a direct connection or an indirect connection through an intermediate medium; it can be the internal connection of two components or the interaction between two components. For those skilled in the art to which this application pertains, the specific meaning of the above terms in the embodiments of this application can be understood according to the specific circumstances.

[0072] Please see Figure 1-2 This embodiment provides a robot based on DDS communication, including:

[0073] The sensing module 110 is used to acquire its own state information and surrounding environment information. The sensing module 110 acquires surrounding environment information through sensors such as lidar and camera, including the location, size, type and movement trajectory of obstacles. It also acquires the robot's position, attitude and speed state information by combining IMU and odometry.

[0074] Communication module 120 is a communication network built based on a data distribution service protocol. This communication network is used for sharing status information and surrounding environment information among multiple robots. The communication network built using the DDS (Data Distribution Service) protocol employs a publish-subscribe model to achieve real-time data exchange between robots. The following defines several key topics and their functions:

[0075] / robot_state: Used to transmit the robot's own state information (robot identification code, position, current speed, task priority);

[0076] / obstacle_map: Used to publish obstacle information in the environment (time, obstacle location, size, etc.);

[0077] / path_plan: Used to publish the robot's planned path (robot ID, path node coordinates, corresponding time);

[0078] The above topics ensure information sharing among multiple robots (including information such as location, obstacles, and planned routes).

[0079] Each robot is equipped with an independent decision module 130. The decision module 130 includes a local planner 131 and a conflict manager 132. The conflict manager 132 is used to determine whether there is a risk of conflict with other robots. When there is a risk of conflict, a global obstacle avoidance path is generated according to the obstacle avoidance strategy. The local planner 131 is used to generate a local obstacle avoidance path based on the artificial potential field algorithm during the walking process according to the global obstacle avoidance planning path.

[0080] The control module 140 is used to control the robot's drive unit and steering mechanism according to the path generated by the decision module 130.

[0081] The robot acquires its own state information and surrounding environment information through the perception module 110. It then shares this information with other robots via a communication network built on a data distribution service protocol. The conflict manager 132 in the decision module 130 assesses conflict risk based on its own acquired data and data shared with other robots. If a conflict risk exists, a global planning path is generated according to the obstacle avoidance strategy. Meanwhile, the local planner 131 generates a local obstacle avoidance path based on an artificial potential field algorithm while the robot follows the global obstacle avoidance path. The control module 140 controls the robot's drive unit and steering mechanism according to the obstacle avoidance path generated by the decision module 130, achieving collaborative obstacle avoidance among multiple robots. Utilizing the characteristics of the communication network built on the data distribution service protocol reduces communication transmission latency between robots, ensuring the real-time performance of the obstacle avoidance strategy. Furthermore, the distributed collaborative obstacle avoidance among multiple robots avoids the drawbacks of centralized control and improves computational efficiency.

[0082] In some embodiments, the conflict manager generates a global walking path normally when there is no risk of conflict with other robots, while the local planner generates a local obstacle avoidance path based on an artificial potential field algorithm during the robot's movement.

[0083] In some embodiments, the communication module 120 is further configured to dynamically adjust the communication bandwidth according to the robot's task priority and distance.

[0084] Based on the priority and distance of the robot's task, bandwidth is dynamically allocated to achieve the optimal balance between communication efficiency and obstacle avoidance performance; the key formula is as follows:

[0085]

[0086] Among them, B i For the bandwidth allocated to robot i, B total For the total bandwidth, P i and P j Let d be the priority of robot i and robot j. ij Let α be the distance between robot i and robot j, α be an adjustment parameter, and λ be a distance attenuation factor. α takes values ​​of 0.1-0.5, and λ takes values ​​of 5-10.

[0087] The purpose of this algorithm is to dynamically adjust the communication bandwidth based on the priority and distance of the robot's task, so as to achieve the minimum optimal balance between communication efficiency and obstacle avoidance performance.

[0088] In some embodiments, the communication module 120 configures the DDS Quality of Service (QoS) policy, sets the maximum time interval (Deadline) for publishing new data to 50ms, and controls the reliability level of data transmission to RELIABLE mode.

[0089] Configure the DDS Quality of Service (QoS) policy with a Deadline of 50ms and Reliability set to RELIABLE to ensure reliable and timely data transmission. Specifically, the Deadline QoS policy defines the maximum time interval at which data writers must publish new data and the maximum time interval at which data readers expect to receive new data. Setting the Deadline to 50ms ensures that writers publish new data at least once every 50ms, and readers expect to receive new data at least once every 50ms. If either party violates this agreement, a corresponding listener callback will be triggered to ensure data timeliness and prevent data staleness. The Reliability QoS policy controls the reliability level of data transmission. RELIABLE mode ensures that all data eventually reaches the subscribers and uses acknowledgment and retransmission mechanisms to guarantee data transmission.

[0090] In some embodiments, the conflict manager is specifically used to determine whether there is a risk of conflict with other robots by spatial conflict judgment, path intersection judgment and speed conflict judgment. If any one of the spatial conflict judgment, path intersection judgment and speed conflict judgment indicates that there is a risk of conflict with other robots, it means that the current robot has a risk of conflict.

[0091] The spatial conflict determination specifically includes calculating whether the Euclidean distance between the two robots at the same moment is less than the safe distance. If it is less, it indicates that there is a risk of conflict.

[0092] The path intersection judgment specifically includes predicting the movement trajectories of two robots within a time period, judging whether there is an intersection, and if so, indicating a risk of conflict.

[0093] The speed conflict determination specifically includes determining whether the two robots are moving towards each other. If so, it is determined whether the distance between the two robots is less than the moving distance. If it is less, it indicates that there is a risk of conflict.

[0094] The core algorithm formula for Conflict Manager 132 is as follows:

[0095] A spatiotemporal conflict detection algorithm indicates a potential conflict if it satisfies one of the following formulas:

[0096] a. Spatial conflict detection, the formula is as follows:

[0097] ||p i (t)-p j (t)||≤r i +r j +s

[0098] p i (t) and pj (t) represents the positions of robot i and robot j at time t, respectively, r i and r j represents the safe radius of robot i and robot j, and this value is determined by the size of the robot; s is the extra safety distance, which is usually between 0.1 and 0.3 m, to reserve sufficient safety buffer; calculate whether the Euclidean distance between the two points at the same time is less than the safety distance, and if so, there is a risk of conflict;

[0099] b. Path intersection detection, the formula is as follows:

[0100] exist Let p i (t) and p j (t) Trajectories intersect

[0101] t represents the time interval At some point in time, This is the time interval, ranging from 0.5 to 1 second. The value is set based on the actual speed of motion and the system's response requirements; p i (t) and p j (t) represents the predicted positions of robot i and robot j at time t, respectively, calculated by combining the current pose and velocity using the robot kinematics model.

[0102] The purpose of this formula is to predict the movement trajectories of two robots within a time period and determine whether there will be an intersection. If there is an intersection, there is a risk of conflict if the conditions are met.

[0103] c. The main formula for speed conflict judgment is as follows:

[0104] Satisfying the formula v i ×v j If < 0, it means that the robots are moving towards each other and satisfying the condition.

[0105] p i (t) and p j (t) represents the predicted positions of robot i and robot j at time t, respectively. This expression shows that at time t... The two robots may clash within a short period of time;

[0106] The above formulas comprehensively and accurately detect potential conflicts between multiple robots from multiple perspectives, including static position, future trajectory, direction of motion, and speed. This provides a reliable basis for conflict resolution in obstacle avoidance decisions and ensures the safety and efficiency of multi-robot systems in collaborative operations.

[0107] In some embodiments, the artificial potential field algorithm specifically includes:

[0108] Calculate the attractive force of the target point on the robot to obtain the gravitational potential energy;

[0109] Calculate the repulsive effect of obstacles on the robot to obtain the repulsive potential energy;

[0110] The semantic potential energy is calculated based on the robot's task priority, collision risk, and distance from other robots;

[0111] The total potential energy is calculated using gravitational potential energy, repulsive potential energy, and semantic potential energy.

[0112] The traditional artificial potential field method is improved by introducing semantic information, and the formula is as follows:

[0113] U total =U a +U r +U s ;

[0114] Among them U total For the total potential energy, U a For gravitational potential energy, U r Repulsive potential energy, U s semantic potential

[0115] a. Gravitational potential energy U a Describe the attractive effect of the target point on the robot, as follows:

[0116]

[0117] In the basis, k is the gravitational coefficient, ρ(x,x) g (x) represents the distance from the robot's current position x to the target point x. g Euclidean distance;

[0118] b. Repulsive potential energy U r This demonstrates the repulsive effect of obstacles on the robot, as shown in the following formula:

[0119]

[0120] Where k is the repulsive force coefficient, with a value ranging from 5 to 10, which adjusts the magnitude of the repulsive potential energy. The larger the coefficient, the stronger the repulsive force on the machine.

[0121] ρ(x.obs) is the distance between the robot's current position and the obstacle obs, and ρ0 is the threshold of the repulsive force range, which is usually set to 0.5-1m. When the distance between the robot and the obstacle is less than or equal to this threshold, the repulsive potential energy is calculated according to the formula; otherwise, the repulsive potential energy is 0.

[0122] c. Semantic potential U sTaking into account robot task priority, collision risk, and distance from other robots, the formula is as follows:

[0123]

[0124] Where neighbors represent a set of robots, ω i Representing adjacent robots, d(x,r) i ) represents the distance between the robot and its neighboring robots; δ is the decay system, with a value of 2-5, used to control the decay rate of semantic potential energy with distance. The larger the value, the slower the semantic potential energy decays with increasing distance; P(t) is the predicted probability of a collision occurring at time t.

[0125] The purpose of this algorithm is to acquire potential field information, coordinate the adjustment of motion direction, perform local obstacle avoidance control, and avoid multi-machine collisions.

[0126] In some embodiments, the conflict manager 132 is specifically used to calculate the priority of a robot, and when a risk conflict exists, calculate the priority difference P between the robot and the robot with the conflict. diff ; Priority difference P diff Compare with the threshold ε; when P diff If P > ε, then maintain the original path; diff If |P| < -ε, then the original path is adjusted. This adjustment includes speed adjustment based on the speed adjustment formula, direction adjustment based on the influence of semantic potential energy, and time window adjustment of the conflict zone based on the maximum time other robots take to enter the conflict zone. diff If |≤ε, then the robot that caused the conflict will negotiate based on the distance to the target. The robot closer to the target will maintain its original path, while the robot closer to the target will adjust its original path.

[0127] The conflict manager 132 adjusts the robot's obstacle avoidance path through a distributed conflict resolution algorithm. Specifically, the distributed conflict resolution algorithm is as follows:

[0128] a. The main formula for calculating the robot's priority is as follows:

[0129] P=w1×T+w2×E+w3×C+w4×S;

[0130] Where T is the task urgency (value 0-1), defined as 1 / (remaining time + 1); E is the energy status (value 0-1), defined as remaining power / total power; C is the load factor (value 0-1), defined as the number of completed tasks / (total number of tasks + 1); S is the safety risk (value 0-1), based on the number of historical collisions; w represents the weight, and w1, w2, w3, and w4 are set to 0.3, 0.2, 0.2, and 0.3 respectively based on actual testing experience;

[0131] b. When two robots are in conflict, calculate the priority difference. The main formula is as follows:

[0132] P diff =P i -P j

[0133] P diff Let P be the priority difference between robot i and robot j. i With P j Let P be the priority of robot i and robot j. diff If P > ε (ε is the threshold for priority difference, with a value of 0.1), then robot i has a higher priority, maintains its original path, and sends an avoidance request to robot j; if P diff If <-ε, then robot j has higher priority, and robot i will avoid it; if |P diff If |≤ε, then the robot that is closer to the target will maintain its original path after negotiation based on the distance between the two robots and the target.

[0134] c. When adjusting low-priority robots, the following strategy is adopted:

[0135] 1) Speed ​​adjustment, the formula is as follows:

[0136] v new =v old ×exp(-α×d min / r safe );

[0137] Where, d min To predict the minimum distance, r safe The safety radius is given by α, a coefficient with a value of 0.5.

[0138] 2) Orientation adjustment: Based on the improved potential energy algorithm above, the robot moves in a direction less affected by semantic thermal energy;

[0139] 3) Time window adjustment, the main formulas are as follows:

[0140]

[0141] This indicates the earliest time that robot i entered the conflict zone. Δt represents the maximum time taken for all robots except robot i to leave the conflict zone. safe The safety time interval is set between 0.5 and 1.5 seconds. This formula ensures that robot i enters the conflict zone only after all other robots have safely left the conflict zone and passed the safety interval, thus avoiding collisions in the time dimension.

[0142] The above embodiments provide a robot based on DDS communication, which achieves low-latency, high-reliability communication and efficient obstacle avoidance decision-making between robots through deep fusion of DDS and obstacle avoidance algorithms. Its objectives are as follows:

[0143] (1). Utilize the communication characteristics of DDS to reduce the information transmission delay between robots and ensure the real-time nature of obstacle avoidance decisions;

[0144] (2) An improved obstacle avoidance algorithm is proposed to overcome the limitations of traditional algorithms and improve the success rate of obstacle avoidance;

[0145] (3) To achieve distributed collaborative obstacle avoidance among multiple robots and avoid the drawbacks of centralized control;

[0146] (4) Combine semantic information to optimize obstacle avoidance strategy and improve the system’s adaptability in complex scenarios.

[0147] This scheme has the following advantages:

[0148] Advantage 1: Enhanced communication performance. Based on the DDS communication protocol, combined with optimized QoS strategy and dynamic bandwidth allocation, communication latency is reduced by approximately 60%, and message loss rate is reduced to below 1%.

[0149] Advantage 2: Improved obstacle avoidance efficiency. The improved artificial potential field method and spatiotemporal conflict algorithm, combined with an efficient conflict resolution strategy, improve the obstacle avoidance rate when using multiple machines.

[0150] Advantage 3: Enhanced system scalability, adopting a distributed architecture, with each machine making independent decisions, balanced computing load, and supporting scale expansion from as few as two to as many as hundreds of robots;

[0151] Advantage 4: Strong environmental adaptability. By introducing semantic information to optimize obstacle avoidance strategies, the robot can adjust its obstacle avoidance behavior according to various factors such as task priority and battery status, demonstrating greater flexibility and intelligence in dynamic working environments such as airports.

[0152] Please see Figure 3 In another embodiment, a multi-robot obstacle avoidance method based on DDS communication is provided, wherein the robot is the DDS communication-based robot described in the above embodiment. The multi-robot obstacle avoidance method includes the following steps:

[0153] Step S310: The robot acquires its own state information and surrounding environment information;

[0154] Step S320: The robots share status information and surrounding environment information among multiple robots based on the communication network built by the data distribution service protocol;

[0155] Step S330: The robot determines whether there is a risk of conflict with other robots based on the data it has acquired and the data sent by other robots;

[0156] When there is a risk of conflict, proceed to step S340: Generate a global obstacle avoidance path based on the obstacle avoidance strategy;

[0157] Step S350: During the process of the robot walking according to the global obstacle avoidance path, a local obstacle avoidance path is generated based on the artificial potential field algorithm;

[0158] Step S360: The robot controls the drive unit and steering mechanism based on the generated obstacle avoidance path.

[0159] The robot acquires its own state information and surrounding environment information through a perception module. A communication network built on a data distribution service protocol enables multiple robots to share this information. The conflict manager in the decision module then assesses conflict risk based on its own acquired data and data shared with other robots. If a conflict risk exists, a global obstacle avoidance path is generated according to the obstacle avoidance strategy. Meanwhile, the local planner generates a local obstacle avoidance path based on an artificial potential field algorithm as the robot follows the global path. The control module controls the robot's drive unit and steering mechanism according to the obstacle avoidance path generated by the decision module, achieving collaborative obstacle avoidance among multiple robots. Utilizing the characteristics of the communication network built on the data distribution service protocol reduces communication latency between robots, ensuring the real-time performance of the obstacle avoidance strategy. Furthermore, distributed collaborative obstacle avoidance among multiple robots avoids the drawbacks of centralized control and improves computational efficiency.

[0160] In some embodiments, determining whether there is a risk of conflict with other robots specifically includes the following steps:

[0161] The risk of conflict with other robots is determined by spatial conflict judgment, path intersection judgment, and speed conflict judgment.

[0162] If any of the spatial conflict judgment, path intersection judgment, or speed conflict judgment has a conflict risk with other robots, it means that the current robot has a conflict risk.

[0163] The spatial conflict determination specifically includes calculating whether the Euclidean distance between the two robots at the same moment is less than the safe distance. If it is less, it indicates that there is a risk of conflict.

[0164] The path intersection judgment specifically includes predicting the movement trajectories of two robots within a time period, judging whether there is an intersection, and if so, indicating a risk of conflict.

[0165] The speed conflict determination specifically includes determining whether the two robots are moving towards each other. If so, it is determined whether the distance between the two robots is less than the moving distance. If it is less, it indicates that there is a risk of conflict.

[0166] The core algorithm formula for the conflict manager is as follows:

[0167] A spatiotemporal conflict detection algorithm indicates a potential conflict if it satisfies one of the following formulas:

[0168] a. Spatial conflict detection, the formula is as follows:

[0169] ||p i (t)-p j (t)||≤r i +r j +s

[0170] p i (t) and p j (t) represents the positions of robot i and robot j at time t, respectively, r i and r j represents the safe radius of robot i and robot j, and this value is determined by the size of the robot; s is the extra safety distance, which is usually between 0.1 and 0.3 m, to reserve sufficient safety buffer; calculate whether the Euclidean distance between the two points at the same time is less than the safety distance, and if so, there is a risk of conflict;

[0171] b. Path intersection detection, the formula is as follows:

[0172] exist Let p i (t) and p j (t) Trajectories intersect

[0173] t represents the time interval At some point in time, This is the time interval, ranging from 0.5 to 1 second. The value is set based on the actual speed of motion and the system's response requirements; p i (t) and p j (t) represents the predicted positions of robot i and robot j at time t, respectively, calculated by combining the current pose and velocity using the robot kinematics model.

[0174] The purpose of this formula is to predict the movement trajectories of two robots within a time period and determine whether there will be an intersection. If there is an intersection, there is a risk of conflict if the conditions are met.

[0175] c. The main formula for speed conflict judgment is as follows:

[0176] Satisfying the formula v i ×v jIf the value is less than 0, it indicates that the robots are moving towards each other and satisfy the condition that...

[0177] p i (t) and p j (t) represents the predicted positions of robot i and robot j at time t, respectively. This expression shows that at time t... The two robots may clash within a short period of time;

[0178] The above formulas comprehensively and accurately detect potential conflicts between multiple robots from multiple perspectives, including static position, future trajectory, direction of motion, and speed. This provides a reliable basis for conflict resolution in obstacle avoidance decisions and ensures the safety and efficiency of multi-robot systems in collaborative operations.

[0179] Please see Figure 4 In some embodiments, the artificial potential energy algorithm specifically includes the following steps:

[0180] Step S410: Calculate the attraction of the target point to the robot to obtain the gravitational potential energy;

[0181] Step S420: Calculate the repulsive effect of the obstacle on the robot to obtain the repulsive potential energy;

[0182] Step S430: Calculate the semantic potential energy based on the robot's task priority, collision risk, and distance from other robots;

[0183] Step S440: Calculate the total potential energy using gravitational potential energy, repulsive potential energy, and semantic potential energy.

[0184] The traditional artificial potential field method is improved by introducing semantic information, and the formula is as follows:

[0185] U total =U a +U r +U s ;

[0186] Among them U total For the total potential energy, U a For gravitational potential energy, U r Repulsive potential energy, U s semantic potential

[0187] a. Gravitational potential energy U a Describe the attractive effect of the target point on the robot, as follows:

[0188]

[0189] In the basis, k is the gravitational coefficient, ρ(x,x) g(x) represents the distance from the robot's current position x to the target point x. g Euclidean distance;

[0190] b. Repulsive potential energy U r This demonstrates the repulsive effect of obstacles on the robot, as shown in the following formula:

[0191]

[0192] Where k is the repulsive force coefficient, with a value ranging from 5 to 10, which adjusts the magnitude of the repulsive potential energy. The larger the coefficient, the stronger the repulsive force on the machine.

[0193] ρ(x.obs) is the distance between the robot's current position and the obstacle obs, and ρ0 is the threshold of the repulsive force range, which is usually set to 0.5-1m. When the distance between the robot and the obstacle is less than or equal to this threshold, the repulsive potential energy is calculated according to the formula; otherwise, the repulsive potential energy is 0.

[0194] c. Semantic potential U s Taking into account robot task priority, collision risk, and distance from other robots, the formula is as follows:

[0195]

[0196] Where neighbors represent a set of robots, ω i Representing adjacent robots, d(x,r) i ) represents the distance between the robot and its neighboring robots; δ is the decay system, with a value of 2-5, used to control the decay rate of semantic potential energy with distance. The larger the value, the slower the semantic potential energy decays with increasing distance; P(t) is the predicted probability of a collision occurring at time t.

[0197] The purpose of this algorithm is to acquire potential field information, coordinate the adjustment of motion direction, perform local obstacle avoidance control, and avoid multi-machine collisions.

[0198] Please see Figure 5 In some embodiments, the obstacle avoidance strategy specifically includes the following steps;

[0199] Step S510: Calculate the robot's priority;

[0200] Step S520: When a risk conflict exists, calculate the priority difference P between the robot and the robot with the conflict. diff ;

[0201] Step S530: Set the priority difference P diff Compare with the threshold ε;

[0202] When P diff If ε > 0, then execute step S540: maintain the original path;

[0203] When P diff If <-ε, then execute step S550: adjust the original path. The adjustment of the original path includes adjusting the speed according to the speed adjustment formula, adjusting the direction according to the influence of semantic potential energy, and adjusting the time window of the conflict zone according to the maximum time of other robots entering the conflict zone.

[0204] When |P diff If |≤ε, then proceed to step S560: negotiate with the robot that caused the conflict based on the target distance. The robot closer to the target maintains its original path, while the robot closer to the target adjusts its original path.

[0205] The conflict manager adjusts the robot's obstacle avoidance path using a distributed conflict resolution algorithm. Specifically, the distributed conflict resolution algorithm is as follows:

[0206] a. The main formula for calculating the robot's priority is as follows:

[0207] P=w1×T+w2×E+w3×C+w4×S;

[0208] Where T is the task urgency (value 0-1), defined as 1 / (remaining time + 1); E is the energy status (value 0-1), defined as remaining power / total power; C is the load factor (value 0-1), defined as the number of completed tasks / (total number of tasks + 1); S is the safety risk (value 0-1), based on the number of historical collisions; w represents the weight, and w1, w2, w3, and w4 are set to 0.3, 0.2, 0.2, and 0.3 respectively based on actual testing experience;

[0209] b. When two robots are in conflict, calculate the priority difference. The main formula is as follows:

[0210] P diff =P i -P j

[0211] P diff Let P be the priority difference between robot i and robot j. i With P j Let P be the priority of robot i and robot j. diff If P > ε (ε is the threshold for priority difference, with a value of 0.1), then robot i has a higher priority, maintains its original path, and sends an avoidance request to robot j; if P diff If <-ε, then robot j has higher priority, and robot i will avoid it; if |P diff If |≤ε, then the robot that is closer to the target will maintain its original path after negotiation based on the distance between the two robots and the target.

[0212] c. When adjusting low-priority robots, the following strategy is adopted:

[0213] 1) Speed ​​adjustment, the formula is as follows:

[0214] v new =v old ×exp(-α×d min / r safe );

[0215] Where, d min To predict the minimum distance, r safe The safety radius is given by α, a coefficient with a value of 0.5.

[0216] 2) Orientation adjustment: Based on the improved potential energy algorithm above, the robot moves in a direction less affected by semantic thermal energy;

[0217] 3) Time window adjustment, the main formulas are as follows:

[0218]

[0219] This indicates the earliest time that robot i entered the conflict zone. Δt represents the maximum time taken for all robots except robot i to leave the conflict zone. safe The safety time interval is set between 0.5 and 1.5 seconds. This formula ensures that robot i enters the conflict zone only after all other robots have safely left the conflict zone and passed the safety interval, thus avoiding collisions in the time dimension.

[0220] In another embodiment, such as Figure 6 As shown, a multi-robot obstacle avoidance method based on DDS communication is presented, including the following steps:

[0221] The robot acquires its own information through the perception module, including information on its location, path, obstacles, and speed.

[0222] Robot data is transmitted and received via a DDS-based communication module;

[0223] The robot performs time conflict detection to determine whether a conflict exists.

[0224] When a conflict occurs, the robot enters the obstacle avoidance decision process, adjusting speed, direction, and time window to obtain a global obstacle avoidance path. Then, during the obstacle avoidance process based on the global obstacle avoidance path, the robot generates a local obstacle avoidance path based on the improved artificial potential field calculation.

[0225] If there is no conflict, a local obstacle avoidance path is generated based on the improved artificial potential field;

[0226] The robot controls its movement according to the obstacle avoidance path.

[0227] This method has the following advantages:

[0228] Advantage 1: Enhanced communication performance. Based on the DDS communication protocol, combined with optimized QoS strategy and dynamic bandwidth allocation, communication latency is reduced by approximately 60%, and message loss rate is reduced to below 1%.

[0229] Advantage 2: Improved obstacle avoidance efficiency. The improved artificial potential field method and spatiotemporal conflict algorithm, combined with an efficient conflict resolution strategy, improve the obstacle avoidance rate when using multiple machines.

[0230] Advantage 3: Enhanced system scalability, adopting a distributed architecture, with each machine making independent decisions, balanced computing load, and supporting scale expansion from as few as two to as many as hundreds of robots;

[0231] Advantage 4: Strong environmental adaptability. By introducing semantic information to optimize obstacle avoidance strategies, the robot can adjust its obstacle avoidance behavior according to various factors such as task priority and battery status, demonstrating greater flexibility and intelligence in dynamic working environments such as airports.

[0232] Finally, it should be noted that although the above embodiments have been described in the text and drawings of this application, this should not limit the scope of patent protection of this application. Any technical solutions that are based on the essential concept of this application and utilize the content described in the text and drawings of this application, resulting in equivalent structural or procedural substitutions or modifications, as well as the direct or indirect application of the technical solutions of the above embodiments to other related technical fields, are all included within the scope of patent protection of this application.

Claims

1. A robot based on DDS communication, characterized in that, include: The sensing module is used to acquire its own state information and surrounding environment information; A communication module, which is based on a data distribution service protocol to build a communication network, which is used for sharing status information and surrounding environment information among multiple robots; The decision module includes a local planner and a conflict manager. The conflict manager is used to determine whether there is a risk of conflict with other robots. When there is a risk of conflict, a global obstacle avoidance path is generated according to the obstacle avoidance strategy. The local planner is used to generate a local obstacle avoidance path based on the artificial potential field algorithm during the process of walking according to the global obstacle avoidance planning path. The control module is used to control the robot's drive unit and steering mechanism according to the path generated by the decision module.

2. The robot based on DDS communication according to claim 1, characterized in that, The communication module is also used to dynamically adjust the communication bandwidth according to the robot's task priority and distance.

3. The robot based on DDS communication according to claim 1, characterized in that, The communication module configures the DDS quality of service policy, sets the maximum time interval for publishing new data to Deadline to 50ms, and controls the data transmission reliability level to RELIABLE mode.

4. The robot based on DDS communication according to claim 1, characterized in that, The conflict manager is specifically used to determine whether there is a risk of conflict with other robots through spatial conflict judgment, path intersection judgment, and speed conflict judgment. If any of the spatial conflict judgment, path intersection judgment, and speed conflict judgment indicates that there is a risk of conflict with other robots, it means that the current robot is at risk of conflict. The spatial conflict determination specifically includes calculating whether the Euclidean distance between the two robots at the same moment is less than the safe distance. If it is less, it indicates that there is a risk of conflict. The path intersection judgment specifically includes predicting the movement trajectories of two robots within a time period, judging whether there is an intersection, and if so, indicating a risk of conflict. The speed conflict determination specifically includes determining whether the two robots are moving towards each other. If so, it is determined whether the distance between the two robots is less than the moving distance. If it is less, it indicates that there is a risk of conflict.

5. The robot based on DDS communication according to claim 1, characterized in that, The artificial potential field algorithm specifically includes: Calculate the attractive force of the target point on the robot to obtain the gravitational potential energy; Calculate the repulsive effect of obstacles on the robot to obtain the repulsive potential energy; The semantic potential energy is calculated based on the robot's task priority, collision risk, and distance from other robots; The total potential energy is calculated using gravitational potential energy, repulsive potential energy, and semantic potential energy.

6. The robot based on DDS communication according to claim 5, characterized in that, The conflict manager is specifically used to calculate the robot's priority. When a risk conflict exists, it calculates the priority difference P between the robot and the robot with the conflict. diff ; Priority difference P diff Compare with the threshold ε; when P diff If P > ε, then maintain the original path; diff If |P| <-ε, then the original path is adjusted. This adjustment includes speed adjustment based on the speed adjustment formula, direction adjustment based on the influence of semantic potential energy, and time window adjustment of the conflict zone based on the maximum time other robots take to enter the conflict zone. diff If |≤ε, then the robot that caused the conflict will negotiate based on the distance to the target. The robot closer to the target will maintain its original path, while the robot closer to the target will adjust its original path.

7. A multi-robot obstacle avoidance method based on DDS communication, characterized in that, Includes the following steps: The robot acquires its own state information and information about its surrounding environment; A communication network based on a data distribution service protocol enables multiple robots to share status information and surrounding environment information. Based on data acquired by itself and data sent by other robots, the robot determines whether there is a risk of conflict with other robots. When there is a risk of conflict, a global obstacle avoidance path is generated based on the obstacle avoidance strategy. During the process of the robot walking according to the global obstacle avoidance path, a local obstacle avoidance path is generated based on the artificial potential field algorithm; The robot controls the drive unit and steering mechanism based on the adjusted obstacle avoidance path.

8. The multi-robot obstacle avoidance method based on DDS communication according to claim 7, characterized in that, The determination of whether there is a risk of conflict with other robots specifically includes the following steps: The risk of conflict with other robots is determined by spatial conflict judgment, path intersection judgment, and speed conflict judgment. If any of the spatial conflict judgment, path intersection judgment, or speed conflict judgment has a conflict risk with other robots, it means that the current robot has a conflict risk. The spatial conflict determination specifically includes calculating whether the Euclidean distance between the two robots at the same moment is less than the safe distance. If it is less, it indicates that there is a risk of conflict. The path intersection judgment specifically includes predicting the movement trajectories of two robots within a time period, judging whether there is an intersection, and if so, indicating a risk of conflict. The speed conflict determination specifically includes determining whether the two robots are moving towards each other. If so, it is determined whether the distance between the two robots is less than the moving distance. If it is less, it indicates that there is a risk of conflict.

9. The multi-robot obstacle avoidance method based on DDS communication according to claim 7, characterized in that, The artificial potential field algorithm specifically includes the following steps: Calculate the attractive force of the target point on the robot to obtain the gravitational potential energy; Calculate the repulsive effect of obstacles on the robot to obtain the repulsive potential energy; The semantic potential energy is calculated based on the robot's task priority, collision risk, and distance from other robots; The total potential energy is calculated using gravitational potential energy, repulsive potential energy, and semantic potential energy.

10. The multi-robot obstacle avoidance method based on DDS communication according to claim 9, characterized in that, The obstacle avoidance strategy specifically includes the following steps; Calculate the robot's priority; When a risk conflict exists, calculate the priority difference P between the robot and the robot with the conflict. diff ; Priority difference P diff Compare with the threshold ε; When P diff If the value is greater than ε, then the original path will be maintained. When P diff If the value is less than or equal to ε, then the original path is adjusted. The adjustment of the original path includes adjusting the speed according to the speed adjustment formula, adjusting the direction according to the influence of semantic potential energy, and adjusting the time window of the conflict zone according to the maximum time of other robots entering the conflict zone. When |P diff If |≤ε, then the robot that caused the conflict will negotiate based on the distance to the target. The robot closer to the target will maintain its original path, while the robot closer to the target will adjust its original path.

Citation Information

Patent Citations

  • Multi-robot cooperative path planning method and system based on artificial potential field

    CN111708370A

  • ROS2-based traffic control and scheduling method of distributed AGV system

    CN119252033A

  • Distributed multi-mobile robot path planning and obstacle avoidance method based on ACO-DWA

    CN119642846A

Cited By

  • Group robot path planning method and device, electronic equipment and storage medium

    CN121207189A

  • Multi-robot collaborative navigation method and system and medium

    CN122041905A