Dynamic obstacle avoidance motion planning method for inspection robot
By combining deep learning and reinforcement learning, the robot can understand the interaction relationships of dynamic obstacles and optimize obstacle avoidance strategies, solving the obstacle avoidance problem of substation inspection robots in dynamic environments and achieving safe and efficient autonomous navigation.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- STATE GRID SHANDONG ELECTRIC POWER CO
- Filing Date
- 2025-12-30
- Publication Date
- 2026-05-12
AI Technical Summary
Existing substation inspection robots struggle to achieve safe, efficient, and socially compliant autonomous obstacle avoidance navigation when facing dynamic environments and complex obstacles. Traditional methods are also inadequate for handling the complex interactions between dynamic obstacles.
This paper employs deep learning for understanding interaction relationships, reinforcement learning for decision-making, and collision speed elimination mechanisms. It acquires environmental states through multiple sensors, extracts obstacle interaction features using a convolutional social pooling network, optimizes the robot's motion strategy by combining the Actor-Critic reinforcement learning framework, and introduces a speed obstacle method to eliminate collision risks.
It enables robots to safely and efficiently avoid obstacles autonomously in dynamic environments, understand the collective interaction intentions of dynamic obstacles, and adaptively adjust their behavior strategies, thereby improving the reliability and robustness of obstacle avoidance.
Smart Images

Figure CN122018540A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to a dynamic obstacle avoidance motion planning method for inspection robots, belonging to the field of robot autonomous navigation and motion planning technology. Background Technology
[0002] The stable operation of core power grid equipment is crucial for ensuring power supply and national economic development. With the rapid growth of electricity consumption across society, the load pressure on power grid equipment continues to increase, creating an urgent need for regular and efficient inspections. Intelligent substation inspection robots are gradually replacing traditional manual inspections.
[0003] However, existing substation inspection robots still have shortcomings in terms of path planning accuracy, dynamic environment adaptability, and autonomous obstacle avoidance capabilities. Especially when the on-site environment changes or static and dynamic obstacles (such as personnel) exist during the inspection process, the robot struggles to quickly and safely adjust its inspection route. Traditional obstacle avoidance methods (such as artificial potential field methods and fuzzy control algorithms) are typically based on simple physical models or rules, making it difficult to accurately predict and respond to the complex interactions between dynamic obstacles. This can easily lead to problems such as the robot getting stuck in local optima, developing excessively long planned paths, or getting too close to obstacles.
[0004] In recent years, reinforcement learning has been introduced into the field of mobile robot navigation. However, existing methods mostly focus on modeling the one-sided impact of obstacles on the robot, neglecting the complex social interactions between dynamic obstacles and between the robot and groups of obstacles. This results in room for improvement in navigation safety, efficiency, and compliance with social norms in dense, dynamic environments. Therefore, there is an urgent need for a motion planning method for inspection robots that can deeply understand environmental interactions and make efficient and safe obstacle avoidance decisions in real time. Summary of the Invention
[0005] To address the aforementioned issues, this invention proposes a dynamic obstacle avoidance motion planning method for inspection robots. This method deeply integrates deep learning-based interaction relationship understanding, reinforcement learning decision-making, and classic collision speed exclusion mechanisms. It enables robots to achieve safe, efficient, and socially compliant autonomous obstacle avoidance navigation in complex environments containing both static and dynamic obstacles.
[0006] The technical solution adopted by this invention to solve its technical problem is as follows: This invention provides a dynamic obstacle avoidance motion planning method for an inspection robot, comprising the following steps: Step S1: Acquire the state of the inspection robot itself, the state of static obstacles, and the state of dynamic obstacles in the inspection environment through multiple sensors to construct a joint observation state; Step S2: Based on the convolutional social pooling network, extract the interaction relationship features between static and dynamic obstacles, and the interaction relationship features between the robot and obstacles. The convolutional social pooling network includes an encoding module, a convolutional social pooling module, and a feature fusion module. The encoding module divides the area around the robot into an M×N regular grid, maps the state vector of each obstacle into a feature vector through a multilayer perceptron with shared parameters, and fills the feature vector into the corresponding grid according to the grid position of the obstacle to generate a social feature map. Step S3: Construct the Actor-Critic reinforcement learning framework. Using the interaction relationship features extracted in step S2 as input, output the robot motion policy through the policy network and evaluate the state value through the value network. The policy network adopts a discrete action space design, and the action space includes multiple predefined combinations of linear velocity and angular velocity. Step S4: Integrate the speed obstacle method to determine whether the relative speed between the robot and the dynamic obstacle is within the absolute collision zone, eliminate collision risk speeds, and thereby optimize the robot's motion strategy. Step S5: Based on the optimized robot motion strategy, output the robot's linear velocity and angular velocity commands to achieve autonomous obstacle avoidance in dynamic environments.
[0007] As one possible implementation of this embodiment, step S1 includes the following steps: Step S11: Obtain raw data of the inspection environment through lidar, inertial measurement unit and vision sensor; Step S12: Preprocess the raw data, including timestamp alignment, coordinate system unification, and noise filtering. Step S13: Establish a local coordinate system with the robot's orientation as the x-axis based on the robot's current position; Step S14: Convert the robot's own state and the obstacle's state to the local coordinate system. Step S15: Construct a joint observation state vector that includes robot state, obstacle state, and time information.
[0008] As one possible implementation of this embodiment, the robot's own state includes: the robot's current position coordinates, target position coordinates, current linear velocity, current angular velocity, robot body radius, and attitude angle.
[0009] As one possible implementation of this embodiment, the obstacle state includes: obstacle type identifier, obstacle center coordinates, obstacle velocity vector, obstacle radius, and the relative distance and angle between the obstacle and the robot.
[0010] As one possible implementation of this embodiment, step S2 includes the following steps: Step S21: Design a convolutional social pooling network architecture, which includes an encoding module, a convolutional social pooling module, and a feature fusion module. Step S22: The variable number of obstacle states are converted into fixed-dimensional social feature representations through the encoding module; Step S23: Extract spatial interaction relationship features between obstacles using the convolutional social pooling module; Step S24: The obstacle interaction features are fused with the robot's own state features through the feature fusion module; Step S25: Output a comprehensive navigation feature vector containing multi-level interaction relationships.
[0011] As one possible implementation of this embodiment, step S3 includes the following steps: Step S31: Construct an Actor-Critic reinforcement learning framework that includes a policy network and a value network; Step S32: Input the extracted comprehensive navigation features into the policy network and output the robot's action probability distribution; Step S33: Input the integrated navigation features into the value network and output the value assessment of the current state; Step S34: The policy network and value network are jointly trained using the near-end policy optimization algorithm; Step S35: Collect training data by interacting with the environment and continuously optimize network parameters.
[0012] As one possible implementation of this embodiment, step S4 includes the following steps: Step S41: Calculate the relative velocity vector between the robot and each dynamic obstacle; Step S42: Construct an absolute collision zone based on the velocity barrier method, and determine whether the current relative velocity is within the collision zone; Step S43: Exclude speed options that are within the absolute collision zone to ensure that the robot's selected motion will not cause a collision; Step S44: Introduce a relative velocity evaluation term into the trajectory evaluation function to encourage the selection of velocities that are far away from dynamic obstacles; Step S45: Dynamically adjust the weights of the evaluation function based on environmental risks, optimize the robot's motion strategy, and achieve a balance between safety and efficiency.
[0013] As one possible implementation of this embodiment, the trajectory evaluation function in step S44 is: , in For the heading angle evaluation function, The obstacle distance evaluation function is... For the velocity evaluation function, For relative velocity evaluation functions, It is the weight value of the heading angle evaluation function. The weight values of the obstacle evaluation function, These are the weight values for the velocity evaluation function. The weights of the relative velocity evaluation function are... This indicates that normalization is required for each item.
[0014] As one possible implementation of this embodiment, step S5 includes the following steps: Step S51: Select the optimal action from the optimized action probability distribution and obtain the corresponding linear velocity and angular velocity commands; Step S52: Calculate the robot's predicted pose at the next moment based on the differential kinematics model; Step S53: Send control commands to the underlying motion controller to drive the robot to perform corresponding movements; Step S54: Repeat steps S1-S4 in each control cycle to achieve continuous dynamic obstacle avoidance. Step S55: Monitor the execution results and activate the security protection mechanism if any abnormal situation occurs.
[0015] As one possible implementation of this embodiment, the differential kinematic model is expressed as follows:
[0016] in, For the robot's position coordinates, For the robot's attitude angle, Linear velocity, Angular velocity, To control the cycle.
[0017] One of the above technical solutions has the following advantages or beneficial effects: 1. By using convolutional social pooling networks, robots can understand the collective interaction intentions that may exist between dynamic obstacles (such as pedestrians), thereby making more socially compliant predictions and avoidances, rather than simply geometric collision avoidance.
[0018] 2. By combining reinforcement learning, the robot learns the optimal obstacle avoidance strategy autonomously through continuous interaction with the environment, enabling it to handle highly dynamic and unstructured complex scenarios and plan paths that balance efficiency and safety.
[0019] 3. It innovatively integrates the speed obstacle method, introducing a deterministic safety filter at the decision-making level, which can actively eliminate speed selections that will inevitably lead to a collision, greatly improving the reliability and robustness of obstacle avoidance.
[0020] 4. The adaptive mechanism enables the robot to dynamically adjust its behavior strategy according to environmental risks, demonstrating good practicality and environmental adaptability in specific application scenarios such as substations. Attached Figure Description
[0021] Figure 1 This is a flowchart illustrating a dynamic obstacle avoidance motion planning method for an inspection robot according to an exemplary embodiment; Figure 2 This is a schematic diagram illustrating the construction of a joint observation state and coordinate system transformation according to an exemplary embodiment; Figure 3 This is a schematic diagram illustrating the structure of a convolutional social pooling network according to an exemplary embodiment; Figure 4 This is a schematic diagram illustrating a speed obstacle method according to an exemplary embodiment; Figure 5 This is a schematic diagram illustrating an absolute collision region according to an exemplary embodiment; Figure 6 This is a schematic diagram of a kinematic model of a differential wheel robot according to an exemplary embodiment. Detailed Implementation
[0022] To more clearly illustrate the technical features of the present invention, the present invention will be described in detail below through specific embodiments and in conjunction with the accompanying drawings.
[0023] like Figure 1 As shown in the figure, an embodiment of the present invention provides a dynamic obstacle avoidance motion planning method for an inspection robot, which includes the following steps: Step S1: Acquire the state of the inspection robot itself, the state of static obstacles, and the state of dynamic obstacles in the inspection environment through multiple sensors to construct a joint observation state.
[0024] Specifically, step S1 includes the following steps: Step S11: Obtain raw data of the inspection environment through lidar, inertial measurement unit and vision sensor; Step S12: Preprocess the raw data, including timestamp alignment, coordinate system unification, and noise filtering. Step S13: Establish a local coordinate system with the robot's orientation as the x-axis based on the robot's current position; Step S14: Convert the robot's own state and the obstacle's state to the local coordinate system. The coordinate system conversion is as follows: For the robot's state, convert the position and velocity in the global coordinate system to the representation in the local coordinate system; For the obstacle's state, calculate the position and velocity of the obstacle relative to the robot based on the robot's current position and orientation. Step S15: Construct a joint observation state vector that includes robot state, obstacle state, and time information.
[0025] Step S1 further includes a sensor fusion step: fusing the point cloud data acquired by the lidar with the image features acquired by the visual sensor to improve the accuracy of obstacle detection and state estimation.
[0026] The social navigation task can be represented as a Markov Decision Process (MDP) within a reinforcement learning framework. An MDP consists of a 5-tuple. To define, where is State space, It is the action space. It is the state transition probability of the environment. It is a reward function. ∈[0,1] is the discount factor. The following describes the specific details of each part: state space For each agent (including robots and static-dynamic obstacles) i, its position and velocity can be represented by two-dimensional vectors. as well as Description. The observed state of each static-dynamic obstacle i can be represented as: This includes its position, velocity, and size (radius). Let... =[ 1,..., ]express A set of observed states of static and dynamic obstacles. The robot's own state can be represented as s = , representing the robot's current position coordinates, target position coordinates, current linear velocity, current angular velocity, robot body radius, and attitude angle, respectively.
[0027] like Figure 2 As shown, a robot coordinate system is established with the current robot position as the center and the robot's orientation as the x-axis. Then, the states of the robot and the static-dynamic obstacles are transformed into the robot coordinate system:
[0028] in, and These represent the robot state after coordinate transformation and the static-dynamic obstacle state, respectively. This indicates the coordinates of the endpoint in the robot's coordinate system. and Let represent the robot's linear velocity and angular velocity, respectively. At each time t, the joint observation state of the system is... It consists of the robot's state and the set of static-dynamic obstacle observation states: .
[0029] Step S2: Based on the convolutional social pooling network, extract the interaction relationship features between static and dynamic obstacles, and the interaction relationship features between the robot and obstacles.
[0030] Specifically, step S2 includes the following steps: Step S21: Design a convolutional social pooling network architecture, which includes an encoding module, a convolutional social pooling module, and a feature fusion module. Step S22: The variable number of obstacle states are converted into fixed-dimensional social feature representations through the encoding module; Step S23: Extract spatial interaction relationship features between obstacles using the convolutional social pooling module; Step S24: The obstacle interaction features are fused with the robot's own state features through the feature fusion module; Step S25: Output a comprehensive navigation feature vector containing multi-level interaction relationships.
[0031] The encoding module divides the area around the robot into M×N regular grids. The state vector of each obstacle is mapped into a feature vector using a multilayer perceptron with shared parameters. Based on the obstacle's grid location, the feature vectors are filled into the corresponding grids to generate a social feature map. The grid division is based on the sensor's detection range and resolution, and the grid size is 1.2-1.5 times the robot's diameter.
[0032] The convolutional social pooling module includes: At least two convolutional layers are used to extract local interaction patterns; At least one pooling layer is used to aggregate global interaction information; The nonlinear activation function layer introduces nonlinear expressive power.
[0033] The feature fusion module uses a splicing method to connect social semantic features with robot motion features to form comprehensive navigation features.
[0034] The convolutional social pooling network employs a pre-training method that combines supervised learning and reinforcement learning during training, using the interaction data of already trained models to initialize the network parameters.
[0035] The integrated navigation feature vector also includes temporal information, which is captured by introducing recurrent neural network units to capture the temporal dependence of historical interaction states.
[0036] like Figure 3 As shown, the convolutional social pooling network consists of an encoding module, a convolutional social pooling module, and a decision module. The encoding module has two functions: first, it converts the variable number of static-dynamic obstacles into fixed-length social vectors by dividing the network into grids for subsequent neural network processing; second, it extracts the motion features of both static-dynamic obstacles and the robot. The convolutional social pooling module extracts the interaction features between static-dynamic obstacles and between static-dynamic obstacles and the robot. The decision module outputs the robot's policy (action probability distribution) and state value based on the extracted interaction features, used for the robot's motion planning and state evaluation, respectively.
[0037] (1) Encoding module: The number of static and dynamic obstacles around a robot can vary significantly across different scenarios, while the input size of most neural networks is fixed. This poses a significant challenge to deep learning-based planning methods. To handle varying numbers of static and dynamic obstacles and simultaneously consider the states of all obstacles within the sensor range, an encoding module was designed. Based on the simulated sensor range, the area in front of the robot is divided into a 9x5 grid, with each grid measuring 1 meter in length and width, approximately equal to the diameter of a single static or dynamic obstacle. To capture the motion and positional features of these obstacles, the state vector of each obstacle is input into a Multilayer Perceptron (MLP) with a Leaky ReLU (Rectified Linear Unit) activation function, yielding a feature vector for each obstacle. The parameters of this MLP are shared among each static-dynamic obstacle. Then, based on the position of the static-dynamic obstacle within its grid, the obtained vector is filled into the corresponding grid cell to obtain the social vector. At the same time, the robot's state will be recorded. The input is fed into an MLP with a Leaky ReLU activation function to obtain the robot's motion features. By defining social vectors, it is possible to map a variable number of static-dynamic obstacle states into a fixed-length vector, while binding the state vectors of static-dynamic obstacles to their positions.
[0038] (2) Convolutional social pooling module: To capture the interaction features between static and dynamic obstacles, this paper proposes extending the convolutional social pooling module to the social navigation domain. The constructed social vector z is input into two convolutional neural networks (CNNs) and a max-pooling layer to obtain the social semantic features of static and dynamic obstacles. Finally, in order to simultaneously capture the interaction relationships between static and dynamic obstacles and robots, as well as the interaction relationships among multiple pedestrians, the social semantic features of static and dynamic obstacles are incorporated. and the motion characteristics of robots m r Connecting them together yields the final navigation features. .
[0039] (3) Decision-making module: Due to sensor limitations, perceptual uncertainties, and the occlusion problem caused by static and dynamic obstacles in real-world situations, robots struggle to perfectly acquire the state of surrounding static and dynamic obstacles. More importantly, the expected target position and preferred velocity of static and dynamic obstacles are unobservable.
[0040] Step S3: Construct the Actor-Critic reinforcement learning framework, using the interaction relationship features extracted in step S2 as input, outputting the robot's motion policy through the policy network, and evaluating the state value through the value network.
[0041] Specifically, step S3 includes the following steps: Step S31: Construct an Actor-Critic reinforcement learning framework that includes a policy network and a value network; Step S32: Input the extracted comprehensive navigation features into the policy network and output the robot's action probability distribution; Step S33: Input the integrated navigation features into the value network and output the value assessment of the current state; Step S34: The policy network and value network are jointly trained using the near-end policy optimization algorithm; Step S35: Collect training data by interacting with the environment and continuously optimize network parameters.
[0042] The strategy network adopts a discrete action space design, which includes 11 predefined combinations of linear and angular velocities, covering basic motion patterns such as forward, backward, left turn, and right turn.
[0043] The value network outputs a state value function, which is used to evaluate the long-term expected return that can be obtained by following the current strategy in the current state.
[0044] The objective function of the near-end policy optimization algorithm includes policy loss and value loss. Policy loss ensures training stability by limiting the difference between new and old policies, while value loss improves evaluation accuracy by minimizing value estimation error.
[0045] The reward function for reinforcement learning is designed as follows: A positive reward is given upon successfully reaching the target location; A negative reward is given when colliding with an obstacle or intruding into the private space of an obstacle; In other cases, appropriate rewards should be given based on the proximity to the target and the safe distance from obstacles.
[0046] The process of jointly training the policy network and the value network using the proximal policy optimization algorithm includes two stages: Phase 1: Use a pre-trained convolutional social pooling network to extract features, fix the parameters of the feature extraction network, and train only the policy network and the value network; Phase 2: Jointly optimize all parameters of the feature extraction network and the decision network.
[0047] Step S3 also includes introducing a course learning strategy, starting training from simple scenarios and gradually increasing the environmental complexity and the number of obstacles to improve the algorithm's generalization ability in complex scenarios.
[0048] This invention employs the Proximal Policy Optimization (PPO) algorithm. PPO is a reinforcement learning algorithm based on the Actor-Critic framework. It consists of two main components: a policy network (used to generate actions) and a policy network. The core of PPO (Procedure for Optimization) is to balance policy exploration with stability by limiting the difference between new and old policies (through KL divergence), thereby improving the stability and effectiveness of training. Furthermore, PPO adapts to changing environments by setting multiple stages, ultimately achieving policy optimization and obtaining the optimal solution.
[0049] To capture these unobservable static-dynamic obstacle states during action decision-making, the comprehensive navigation features extracted by the convolutional social pooling module are used. The data is input into a gated recurrent unit (GRU), which stores historical static and dynamic obstacle state information in its hidden state. In the process, its temporal dependencies are captured and used as a reference for action decisions in subsequent time steps. The updated GRU hidden state is then used to... The inputs are fed into two independent MLPs with tanh nonlinear activation functions: a) Policy Network (Actor): Outputs a probability distribution in the discrete action space A. The motion space A contains 11 predefined pairs of (linear velocity v, angular velocity ω), covering basic movements such as forward, backward, and turning; b) Value Network (Critic): Outputs a scalar Assess the current status The long-term expected return.
[0050] The network parameters θ are trained using the Proximity Policy Optimization (PPO) algorithm. The reward function R is designed as follows: a +1 reward is given for successfully reaching the target; a negative reward is given for being too close to an obstacle or colliding with it; otherwise, the reward is 0 or a small reward positively correlated with the distance. The training objective is to maximize the cumulative discount reward.
[0051] Step S4: Integrate the speed obstacle method to determine whether the relative speed between the robot and the dynamic obstacle is within the absolute collision zone, eliminate collision risk speeds, and thus optimize the robot's motion strategy.
[0052] Specifically, step S4 includes the following steps: Step S41: Calculate the relative velocity vector between the robot and each dynamic obstacle; Step S42: Construct an absolute collision zone based on the velocity barrier method, and determine whether the current relative velocity is within the collision zone; Step S43: Exclude speed options that are within the absolute collision zone to ensure that the robot's selected motion will not cause a collision; Step S44: Introduce a relative velocity evaluation term into the trajectory evaluation function to encourage the selection of velocities that are far away from dynamic obstacles; Step S45: Dynamically adjust the weights of the evaluation function based on environmental risks, optimize the robot's motion strategy, and achieve a balance between safety and efficiency.
[0053] The absolute collision region is defined as: A circular area centered on the dynamic obstacle, with the sum of the radii of the robot and the obstacle plus a safety margin as its radius; If a ray along the direction of relative velocity originates from the robot's current position and intersects with the absolute collision region, then the relative velocity is determined to be within the collision region.
[0054] The formula for calculating the relative velocity evaluation item is as follows: Relative speed evaluation value = || Robot speed - Obstacle speed || Where ∥·∥ represents the Euclidean norm, and a higher evaluation value indicates a greater speed of the robot relative to the obstacle.
[0055] The dynamic adjustment of the evaluation function weights is based on the following factors: Distance to nearest obstacle: The closer the distance, the higher the safety weight and the lower the speed weight; Obstacle density: The denser the obstacle, the higher the safety weight; Robot's current speed: The higher the speed, the higher the safety weight.
[0056] Step S4 also includes adaptive threshold setting: The safe distance threshold is related to the robot's maximum speed and acceleration, and the calculation formula is as follows: Safe distance threshold = Adjustment coefficient × (Maximum speed / Maximum acceleration) When the nearest obstacle is less than the safe distance threshold, a conservative obstacle avoidance strategy is activated.
[0057] Step S4 also includes a multi-obstacle cooperative obstacle avoidance strategy: When facing multiple dynamic obstacles at the same time, calculate the collision risk of each obstacle and select the movement direction with the lowest overall risk; Considering the mutual influence between obstacles, predict the overall movement trend of the obstacle group.
[0058] In the velocity obstacle method, the robot is treated as a point mass, and its collision radius is added to the obstacle. Figure 4 This is a schematic diagram of the speed obstacle course method. Figure 4 Point A represents the robot, and point B represents the obstacle. Their respective velocity vectors are... , If robot A and obstacle B continue to move at their current speeds, they will collide after a period of time. It is the position vector of robot A. The position vector representing the dynamic obstacle B is used. The relative velocity between robot A and obstacle B can be obtained using... This indicates that relative velocity can transform the dynamic obstacle avoidance problem of a robot into an obstacle avoidance problem between the robot and static obstacles. Consider it as the velocity vector of robot A: , From mobile robot A along The emitted rays can be defined as: , In the formula, This represents the change in the relative position between the mobile robot A and the dynamic obstacle B, assuming other motion states remain unchanged. Indicates time.
[0059] Starting from the geometric center of mobile robot A, and using obstacle B (with an expanded radius) as a reference, two tangent lines are emitted; the area between these two tangent lines is the collision zone. The collision zone is determined by judging the ray... With expansion circle Whether the rays intersect or not determines whether the ray is within the collision region, and thus whether A and B are likely to collide after a certain period of time. The condition for a collision between the two can be expressed as: , The set of relative velocities where future collisions are possible is called the relative collision zone, while velocities outside the relative collision zone form the safe zone. By adjusting the velocity vector, a mobile robot can keep its relative velocity away from the collision zone, thus successfully avoiding a collision. In short, as long as the mobile robot's relative velocity is outside the collision zone, it can be considered that the mobile robot will not collide with other dynamic obstacles at its current velocity. Relative Collision Zone It can be defined by the following mathematical description: , Defined within relative velocity space, the problem becomes more complex if the mobile robot encounters multiple dynamic obstacles during its movement. Therefore, an absolute collision region is introduced. This allows for a more intuitive approach when solving obstacle avoidance problems involving multiple dynamic obstacles. The absolute collision zone is along the relative collision zone. The translational data within this region defines the area that the mobile robot needs to avoid during its movement, i.e., the danger zone. The mathematical formula for the absolute collision zone is: , In the formula, ⊕ refers to the Minkowski vector sum operation, and the absolute collision region is shown in Figure 5.
[0060] In trajectory evaluation function In addition to the usual orientation towards the target ( ), away from obstacles ( ) and speed ( In addition to the evaluation items, a relative speed evaluation item is introduced. The larger the value, the greater the robot's speed relative to the obstacle, meaning it moves away faster. Simultaneously, the distance to the nearest obstacle is determined in real-time by sensors. Dynamically adjust the weight of speed evaluation items :when Less than the safety threshold hour, Take the smaller value to emphasize safety; when When it is large, Take the larger value to encourage efficient movement.
[0061] The trajectory evaluation function is: , in For the heading angle evaluation function, The obstacle distance evaluation function is... For the velocity evaluation function, For relative velocity evaluation functions, It is the weight value of the heading angle evaluation function. The weight values of the obstacle evaluation function, These are the weight values for the velocity evaluation function. The weights of the relative velocity evaluation function are... This indicates that normalization is required for each item to prevent any one evaluation function factor from having an excessively large weight, which could affect the balance of all factors. The relative speed evaluation function... ,in For robot speed, Let be the velocity of the obstacle, and ∥·∥ denote the Euclidean norm.
[0062] From the candidate actions that eliminate the risk of collision, select the one that... The biggest action is the final decision.
[0063] Step S5: Based on the optimized robot motion strategy, output the robot's linear velocity and angular velocity commands to achieve autonomous obstacle avoidance in dynamic environments.
[0064] Specifically, step S5 includes the following steps: Step S51: Select the optimal action from the optimized action probability distribution and obtain the corresponding linear velocity and angular velocity commands; Step S52: Calculate the robot's predicted pose at the next moment based on the differential kinematics model; Step S53: Send control commands to the underlying motion controller to drive the robot to perform corresponding movements; Step S54: Repeat steps S1-S4 in each control cycle to achieve continuous dynamic obstacle avoidance. Step S55: Monitor the execution results and activate the security protection mechanism if any abnormal situation occurs.
[0065] The differential kinematic model is expressed as follows:
[0066] in, For the robot's position coordinates, For the robot's attitude angle, Linear velocity, Angular velocity, To control the cycle.
[0067] The underlying motion controller uses a PID control algorithm to calculate the motor drive signal based on the target speed command and actual speed feedback, thereby achieving precise speed tracking.
[0068] The control cycle is set taking into account the sensor data update frequency, algorithm calculation time, and system response delay, with a typical value of 0.1-0.2 seconds.
[0069] Step S5 further includes motion smoothing processing: Use cubic spline interpolation to smooth the planned path and reduce sharp turns in the path; Speed planning and acceleration limiting ensure the smoothness and comfort of robot movement.
[0070] The security protection mechanism includes: Emergency stop: When an unavoidable collision risk is detected, the robot's movement is stopped immediately; Slowing down to avoid obstacles: Automatically reduces running speed when too close to an obstacle; Human intervention: Allows operators to remotely control the robot in abnormal situations.
[0071] Step S5 also includes performance evaluation and feedback: Record the results of each obstacle avoidance operation, including the obstacle avoidance success rate, path length, and execution time. The algorithm parameters are adaptively adjusted based on the evaluation results to continuously optimize obstacle avoidance performance.
[0072] Applications in substation inspection scenarios also include: It integrates with the substation monitoring system to receive inspection tasks and real-time environmental information; Upload the inspection results and abnormal detection information to the central monitoring platform; It supports switching between multiple inspection modes, including automatic inspection, remote inspection, and fixed-point inspection.
[0073] The optimal motion (v*, ω*) finally selected in step S4 is sent as a control command to the robot's underlying motion controller. Based on the differential kinematics model, the robot executes the corresponding linear or rotational motion in the next control cycle according to (v*, ω*), thereby achieving one-step autonomous obstacle avoidance. This process is repeated every control cycle (e.g., 0.1 seconds), enabling the robot to respond to dynamically changing environments in real time and smoothly and safely complete inspection and obstacle avoidance tasks.
[0074] The following key technologies are mainly involved in the dynamic obstacle avoidance motion planning of the inspection robot in this invention.
[0075] 1. Design using dynamic window path planning method.
[0076] (1) Robot kinematic model: The substation inspection robot uses a differential kinematics model, such as... Figure 6 As shown, the robot with the differential kinematics model can rotate in place and avoid obstacles more flexibly, while its angular velocity and linear velocity can be controlled approximately independently.
[0077] In environmental coordinates xoy Down, t At any given moment, the robot's coordinates are... This indicates that the angular velocity is The attitude angle is The linear velocity is The movement path of a differential robot within adjacent time intervals can be approximated as a straight line. At any given time, the robot's parameters can be expressed as: .
[0078] (2) Velocity vector space sampling: There are multiple reachable velocities at each time point in DWA. , These velocities are available as options, and they decompose into the robot's velocity space. The robot's pose and trajectory within a cycle are each individually (…). , Correspondingly, considering realistic physical limitations and robot dynamic constraints, the velocity sampling space is limited by the following three conditions. The achievable velocity of the robot sampling ( , ), , It will be limited by the extreme values of linear velocity and angular velocity. It is a constraint on the velocity sampling space, and its expression is shown in the following equation: , in, These are the minimum and maximum linear velocities and minimum and maximum angular velocities set manually. Furthermore, the robot's linear and angular velocities are also constrained by the performance of its motors. The selection of the motor directly affects the maximum acceleration the robot can achieve; therefore, motor constraints must be added to the robot's linear and angular velocities. It represents the achievable velocity space of the robot: , in, This represents the linear velocity of the robot at the current moment. This represents the magnitude of the robot's angular velocity at the current moment. and Corresponding to the robot's maximum acceleration and maximum angular acceleration, This refers to the sampling time interval. Besides the two constraints mentioned above, the robot's velocity space is also constrained by the environmental space. A safe distance between the robot and obstacles needs to be set. The robot's velocity space can be represented as... The corresponding constraint expression is: , in, ( , ) indicates in ( , The robot predicts the distance between its trajectory and the nearest obstacle. After sampling, the robot calculates the distance between all obstacles within the sampling time. , The corresponding robot trajectory and ( , ), and filter out trajectories that will collide with obstacles.
[0079] Combining the three velocity space constraints mentioned above, the robot's final velocity space... can be , , Find: .
[0080] (3) Trajectory evaluation function: In the robot In, each ( , All trajectories can be viewed as predictions of a motion trajectory. An evaluation function is used to calculate all trajectories, and the optimal trajectory—the one with the highest evaluation function value—is selected. This will drive the robot to move along the trajectory corresponding to the optimal trajectory. , The evaluation function expression is as follows: , in For the heading angle evaluation function, The obstacle distance evaluation function is... For the velocity evaluation function, It is the weight value of the heading angle evaluation function. The weight values of the obstacle evaluation function, These are the weight values for the velocity evaluation function. This indicates that each item needs to be normalized to avoid the weight of a certain evaluation function factor being too large, which would affect the balance of various factors.
[0081] Normalization is the process of normalizing each element. The corresponding evaluation factor divided by the robot's operating cycle, all The sum of evaluation factors is expressed by the following formula: , , , in For all sampling trajectories within the running cycle, This is the trajectory currently awaiting evaluation.
[0082] 2. Adaptive dynamic window path planning method design.
[0083] Robots typically choose to move at a relatively high speed to improve inspection efficiency. In dynamic window path planning algorithms... The parameters can control the velocity component; if A larger value shortens the actual running time and reduces the number of steps, but this increased speed also reduces the robot's safety. If the value is set smaller, the actual running time of the robot will be longer and the number of steps will increase, but the robot's safety will be improved accordingly.
[0084] To more comprehensively balance the robot's safety and speed, a dynamic parameter adjustment method based on obstacle quantity information is adopted to adjust the robot's speed weight parameters. Adjustments are made. The overall idea of this method is to adaptively set the distance and density between the robot and surrounding obstacles based on the sensor information acquired by the robot, so that the robot can achieve a higher speed in the safe zone and reduce its speed in the danger zone to improve safety.
[0085] (1) Detecting safe distance from obstacles: Let m be the number of obstacles detected by the sensor. When m is greater than a threshold, it indicates that the robot has entered a dense obstacle zone. By detecting the distance and angle between the robot and the obstacles, the distance between different obstacles is calculated. : , in , Corresponding to the , The distance between the obstacle and the robot; , Corresponding robot and the first , The angle value of the obstacle's orientation. Only when... The robot can only pass through two obstacles if the value is greater than twice the expansion distance between them.
[0086] (2) Calculate the adaptive threshold: To ensure the safe operation of the robot, the shortest distance between the obstacle and the robot is used. As the input to the adaptive dynamic function, when Greater than the threshold At that time, the robot's velocity weight is the weight of the maximum velocity evaluation function. The formula is determined by the robot's own state parameters: , in This indicates the robot's maximum operating speed. It's robot acceleration. To adjust the parameters.
[0087] (3) Constructing an adaptive weight function: With maximum speed Proportional to acceleration This is inversely proportional, which can be understood as the stronger the robot's braking ability, the smaller the threshold; the faster the robot's speed, the larger its threshold, thus ensuring the robot's operational safety.
[0088] The weight expression for the dynamic velocity evaluation function is as follows: , in, These are the dynamic velocity weighting parameters of the design. This represents the minimum speed weight, which is generally taken as the speed weight when the robot passes through a narrow passage in the safest way; This represents the maximum speed weight, which is generally taken as the maximum speed weight when the robot safely passes through dense obstacles. , It involves adjusting parameters. When Less than or equal to At that time, velocity weighting parameter and It is positively correlated.
[0089] (4) Adjusted evaluation function: The adjusted trajectory evaluation function is: .
[0090] 3. Speed obstacle method.
[0091] Speed obstacle avoidance is a common method for multi-agent path planning and obstacle avoidance, especially suitable for mobile systems with mutual influence. It is widely used in robotics, autonomous vehicles, and other fields to effectively prevent collisions and conflicts. Applying speed obstacle avoidance helps plan safer and more rational paths and resolve potential conflict problems.
[0092] In the velocity obstacle method, the robot is treated as a point mass, and its collision radius is added to the obstacle. Figure 4 This is a schematic diagram of the speed obstacle course method. Figure 4 Point A represents the robot, and point B represents the obstacle. Their respective velocity vectors are... , If robot A and obstacle B continue to move at their current speeds, they will collide after a period of time. It is the position vector of robot A. The position vector representing the dynamic obstacle B is used. The relative velocity between robot A and obstacle B can be obtained using... This indicates that relative velocity can transform the dynamic obstacle avoidance problem of a robot into an obstacle avoidance problem between the robot and static obstacles. Consider it as the velocity vector of robot A: , From mobile robot A along The emitted rays can be defined as: , In the formula, This represents the change in the relative position between the mobile robot A and the dynamic obstacle B, assuming other motion states remain unchanged. Indicates time.
[0093] Starting from the geometric center of mobile robot A, and using obstacle B (with an expanded radius) as a reference, two tangent lines are emitted; the area between these two tangent lines is the collision zone. The collision zone is determined by judging the ray... With expansion circle Whether the rays intersect or not determines whether the ray is within the collision region, and thus whether A and B are likely to collide after a certain period of time. The condition for a collision between the two can be expressed as: , The set of relative velocities where future collisions are possible is called the relative collision zone, while velocities outside the relative collision zone form the safe zone. By adjusting the velocity vector, a mobile robot can keep its relative velocity away from the collision zone, thus successfully avoiding a collision. In short, as long as the mobile robot's relative velocity is outside the collision zone, it can be considered that the mobile robot will not collide with other dynamic obstacles at its current velocity. Relative Collision Zone It can be defined by the following mathematical description: , Defined within relative velocity space, the problem becomes more complex if the mobile robot encounters multiple dynamic obstacles during its movement. Therefore, an absolute collision region is introduced. This allows for a more intuitive approach when solving obstacle avoidance problems involving multiple dynamic obstacles. The absolute collision zone is along the relative collision zone. The translational data within this region defines the area that the mobile robot needs to avoid during its movement, i.e., the danger zone. The mathematical description of the absolute collision zone can be expressed as: , In the formula, ⊕ refers to the Minkowski vector sum operation, and the absolute collision region is as follows: Figure 5 As shown.
[0094] 4. Adaptive local path planning algorithm based on velocity obstacle method.
[0095] Dynamic window path planning algorithms perform well in avoiding static obstacles, but their effectiveness is poor against dynamic obstacles. When robots encounter dynamic obstacles, they are prone to problems such as getting too close, significantly increasing planning time, and deviating from the obstacle's direction. To address this issue, it was decided to integrate the velocity obstacle method with an improved dynamic window path planning algorithm. After obtaining the robot's velocity and angular velocity sampling points, the fusion algorithm first determines whether the relative velocity between the robot and the obstacle is within the absolute collision zone. Only if it is not within the collision zone will the sampling points be used for forward simulation to obtain the path trajectory. This effectively eliminates some velocities that are likely to cause collisions. Simultaneously, a relative velocity evaluation function is introduced into the evaluation function. , The evaluation function is updated to represent the robot's velocity relative to the obstacle: , In the formula, The relative velocity evaluation function is used as the weight coefficient. Introducing the relative velocity evaluation function can enable the selection of the fastest path away from dynamic obstacles in the sampling trajectory of safe obstacle avoidance, so as to get away from dynamic obstacles as quickly as possible.
[0096] By integrating the improved dynamic window path planning algorithm with the velocity obstacle method, the robot can better avoid collisions in complex and dynamic environments while ensuring dynamic constraints and utilizing the real-time adjustment capability of the velocity obstacle method.
[0097] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention and not to limit it. Although the present invention has been described in detail with reference to the above embodiments, those skilled in the art should understand that modifications or equivalent substitutions can still be made to the specific implementation of the present invention. Any modifications or equivalent substitutions that do not depart from the spirit and scope of the present invention should be covered within the protection scope of the claims of the present invention.
Claims
1. A dynamic obstacle avoidance motion planning method for an inspection robot, characterized in that, Includes the following steps: Step S1: Acquire the state of the inspection robot itself, the state of static obstacles, and the state of dynamic obstacles in the inspection environment through multiple sensors to construct a joint observation state; Step S2: Based on the convolutional social pooling network, extract the interaction relationship features between static and dynamic obstacles, and the interaction relationship features between the robot and obstacles; Step S3: Construct the Actor-Critic reinforcement learning framework, using the interaction relationship features extracted in step S2 as input, outputting the robot's motion policy through the policy network, and evaluating the state value through the value network. Step S4: Integrate the speed obstacle method to determine whether the relative speed between the robot and the dynamic obstacle is within the absolute collision zone, eliminate collision risk speeds, and thereby optimize the robot's motion strategy. Step S5: Based on the optimized robot motion strategy, output the robot's linear velocity and angular velocity commands to achieve autonomous obstacle avoidance in dynamic environments.
2. The dynamic obstacle avoidance motion planning method for inspection robots according to claim 1, characterized in that, Step S1 includes the following steps: Step S11: Obtain raw data of the inspection environment through lidar, inertial measurement unit and vision sensor; Step S12: Preprocess the raw data, including timestamp alignment, coordinate system unification, and noise filtering. Step S13: Establish a local coordinate system with the robot's orientation as the x-axis based on the robot's current position; Step S14: Convert the robot's own state and the obstacle's state to the local coordinate system. Step S15: Construct a joint observation state vector that includes robot state, obstacle state, and time information.
3. The dynamic obstacle avoidance motion planning method for inspection robots according to claim 2, characterized in that, The robot's own state includes: the robot's current position coordinates, target position coordinates, current linear velocity, current angular velocity, robot body radius, and attitude angle.
4. The dynamic obstacle avoidance motion planning method for inspection robots according to claim 2, characterized in that, The obstacle status includes: obstacle type identifier, obstacle center coordinates, obstacle velocity vector, obstacle radius, and the relative distance and angle between the obstacle and the robot.
5. The dynamic obstacle avoidance motion planning method for inspection robots according to claim 1, characterized in that, Step S2 includes the following steps: Step S21: Design a convolutional social pooling network architecture, which includes an encoding module, a convolutional social pooling module, and a feature fusion module. Step S22: The variable number of obstacle states are converted into fixed-dimensional social feature representations through the encoding module; Step S23: Extract spatial interaction relationship features between obstacles using the convolutional social pooling module; Step S24: The obstacle interaction features are fused with the robot's own state features through the feature fusion module; Step S25: Output a comprehensive navigation feature vector containing multi-level interaction relationships.
6. The dynamic obstacle avoidance motion planning method for inspection robots according to claim 5, characterized in that, Step S3 includes the following steps: Step S31: Construct an Actor-Critic reinforcement learning framework that includes a policy network and a value network; Step S32: Input the extracted comprehensive navigation features into the policy network and output the robot's action probability distribution; Step S33: Input the integrated navigation features into the value network and output the value assessment of the current state; Step S34: The policy network and value network are jointly trained using the near-end policy optimization algorithm; Step S35: Collect training data by interacting with the environment and continuously optimize network parameters.
7. The dynamic obstacle avoidance motion planning method for inspection robots according to claim 1, characterized in that, Step S4 includes the following steps: Step S41: Calculate the relative velocity vector between the robot and each dynamic obstacle; Step S42: Construct an absolute collision zone based on the velocity barrier method, and determine whether the current relative velocity is within the collision zone; Step S43: Exclude speed options that are within the absolute collision zone to ensure that the robot's selected motion will not cause a collision; Step S44: Introduce a relative velocity evaluation term into the trajectory evaluation function to encourage the selection of velocities that are far away from dynamic obstacles; Step S45: Dynamically adjust the weights of the evaluation function based on environmental risks, optimize the robot's motion strategy, and achieve a balance between safety and efficiency.
8. The dynamic obstacle avoidance motion planning method for inspection robots according to claim 7, characterized in that, The trajectory evaluation function in step S44 is: , in For the heading angle evaluation function, The obstacle distance evaluation function is... For the velocity evaluation function, For relative velocity evaluation functions, It is the weight value of the heading angle evaluation function. The weight values of the obstacle evaluation function, These are the weight values for the velocity evaluation function. The weights of the relative velocity evaluation function are... This indicates that normalization is required for each item.
9. The dynamic obstacle avoidance motion planning method for an inspection robot according to any one of claims 1-8, characterized in that, Step S5 includes the following steps: Step S51: Select the optimal action from the optimized action probability distribution and obtain the corresponding linear velocity and angular velocity commands; Step S52: Calculate the robot's predicted pose at the next moment based on the differential kinematics model; Step S53: Send control commands to the underlying motion controller to drive the robot to perform corresponding movements; Step S54: Repeat steps S1-S4 in each control cycle to achieve continuous dynamic obstacle avoidance. Step S55: Monitor the execution results and activate the security protection mechanism if any abnormal situation occurs.
10. The dynamic obstacle avoidance motion planning method for inspection robots according to claim 9, characterized in that, The differential kinematic model is expressed as follows: , in, For the robot's position coordinates, For the robot's attitude angle, Linear velocity, Angular velocity, To control the cycle.