Narrow space trajectory generation method and device without prior SLAM (Simultaneous Localization and Mapping) map

By generating an initial local map, adjusting the safe distance and optimizing the trajectory, the problem of poor obstacle avoidance in narrow spaces under the unpriori SLAM map is solved, and a more efficient and safe obstacle avoidance effect is achieved.

CN119555053APending Publication Date: 2025-03-04HANGZHOU LANGJI INTELLIGENT TECH CO LTD

Patent Information

Application Number
CN202510128700.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-02-05
Publication Date
2025-03-04

AI Technical Summary

Technical Problem

Without a priori SLAM map, the robot's obstacle avoidance effect in a narrow space is poor, and the sensor data is easily disturbed, resulting in a decrease in the accuracy of path planning and obstacle avoidance.

Method used

By acquiring robot sensor data in a narrow space, generating an initial local map, adjusting the safe distance of obstacles, constructing a five-order polynomial equation, and optimizing the trajectory to generate the optimal trajectory.

Benefits of technology

It improves the accuracy and efficiency of obstacle avoidance of robots in narrow spaces, reduces energy consumption, and enhances the stability and safety of robots in dynamic environments.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119555053A_ABST
    Figure CN119555053A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of robot positioning, and discloses a narrow space trajectory generation method and device without a prior SLAM map, and the method comprises the steps: obtaining at least one kind of sensor data, and generating an initial local map; adjusting the safety distance between the robot and the obstacle based on the initial local map, and determining a target local map according to the safety distance; based on preset motion parameters of the robot, constructing a quintic polynomial equation, and determining a smooth track of the robot; and optimizing the smooth trajectory by adopting a multi-target cost equation, and determining a target trajectory. According to the method provided by the embodiment of the invention, the initial local map is generated based on the at least one kind of sensor data, the initial local map is adopted to identify the obstacle, and the mode of fusing the multi-sensor data can reduce interference and shielding in the narrow space, so that the obstacle avoidance accuracy and the obstacle avoidance effect of the robot in the narrow space are improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of robot positioning technology, and in particular to a method and device for generating a narrow space trajectory without a priori SLAM map. Background Art

[0002] In dynamic and narrow spatial environments, the autonomous navigation of robots faces challenges, especially in the absence of a priori Simultaneous Localization and Mapping (SLAM) maps, which requires the robot to rely on its own sensors to perceive the surrounding environment.

[0003] In the navigation method of the related art, there is a problem that the obstacle avoidance effect is poor due to the high degree of interference of the sensor, which increases the difficulty of the robot's obstacle avoidance. Therefore, how to improve the robot's obstacle avoidance effect in a narrow space without a priori SLAM map has become a problem that needs to be solved. Summary of the invention

[0004] In view of this, the present disclosure provides a method and device for generating a narrow space trajectory without a priori SLAM map, so as to solve the problem of how to improve the obstacle avoidance effect of a robot in a narrow space without a priori SLAM map.

[0005] On the one hand, the present disclosure provides a method for generating a narrow space trajectory without a priori SLAM map, the method comprising: obtaining at least one sensor data of a robot in a narrow space at a target time, fusing the at least one sensor data, and generating an initial local map of the robot at the target time; the initial local map at least includes obstacle information of obstacles; based on the distance from each position in the initial local map to the obstacle, adjusting the safety distance between the robot and the obstacle, and determining the target local map according to the safety distance; based on the preset motion parameters of the robot in the target local map, constructing a quintic polynomial equation, and determining the smooth trajectory of the robot according to the quintic polynomial equation; using a multi-objective cost equation to optimize the smooth trajectory, and using the optimized optimal trajectory as the target trajectory of the robot in the narrow space.

[0006] On the other hand, the present disclosure also provides a device for generating a trajectory in a narrow space without a priori SLAM map, the device comprising a first determination module, a second determination module, a trajectory generation module and a trajectory optimization module, wherein: the first determination module is used to obtain at least one sensor data of a robot in a narrow space at a target time, fuse the at least one sensor data, and generate an initial local map of the robot at the target time; the initial local map includes at least obstacle information of obstacles; the second determination module is used to adjust the safe distance between the robot and the obstacle based on the distance from each position to the obstacle in the initial local map, and determine the target local map according to the safe distance; the trajectory generation module is used to construct a quintic polynomial equation based on the preset motion parameters of the robot in the target local map, and determine the smooth trajectory of the robot according to the quintic polynomial equation; the trajectory optimization module is used to optimize the smooth trajectory using a multi-objective cost equation, and use the optimized optimal trajectory as the target trajectory of the robot in the narrow space.

[0007] On the other hand, the present disclosure further provides a computer-readable storage medium, on which computer instructions are stored, and the computer instructions are used to enable a computer to implement the above-mentioned method for generating narrow space trajectories without a priori SLAM maps.

[0008] On the other hand, the present disclosure further provides a computer program product, including computer instructions, which are used to enable a computer to execute the above-mentioned method for generating narrow space trajectories without a priori SLAM map.

[0009] Through the method and device for generating narrow space trajectories without a priori SLAM maps of the above-mentioned embodiments of the present disclosure, an initial local map is generated based on at least one sensor data, and obstacles are identified using the initial local map. This method of fusing multi-sensor data can reduce interference and occlusion in narrow spaces, thereby improving the accuracy of robot obstacle avoidance. The use of a fifth-order polynomial equation to generate a smooth trajectory can achieve smooth turns and continuous speed changes in the robot's navigation path, avoid jitter and instability problems caused by discontinuous trajectories, increase the efficiency of the robot's obstacle avoidance, and reduce the robot's energy consumption when avoiding obstacles.

[0010] In addition, based on the initial local map, the target local map is generated by calculating the distance from each position to the obstacle and adjusting it based on the safe distance. This process ensures a safe interval between the robot and obstacles, effectively reduces the risk of collision, and improves the stability and safety of the robot in narrow spaces. BRIEF DESCRIPTION OF THE DRAWINGS

[0011] In order to more clearly illustrate the specific embodiments of the present disclosure or the technical solutions in the related technologies, the drawings required for use in the specific embodiments or the related technical descriptions will be briefly introduced below. Obviously, the drawings described below are some embodiments of the present disclosure. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.

[0012] Figure 1 It is a flowchart of a method for generating a narrow space trajectory without a priori SLAM map provided by an embodiment of the present disclosure; Figure 2 It is a schematic diagram of a perception map of a method for generating narrow space trajectories without a priori SLAM map provided by an embodiment of the present disclosure; Figure 3 is a schematic diagram of a perception map of another method for generating narrow space trajectories without a priori SLAM map provided by an embodiment of the present disclosure; Figure 4 It is a schematic diagram of sampling trajectories of a method for generating narrow space trajectories without a priori SLAM maps provided by an embodiment of the present disclosure; Figure 5 It is a trajectory generation schematic diagram of a method for generating a narrow space trajectory without a priori SLAM map provided by an embodiment of the present disclosure; Figure 6 It is a structural schematic diagram of a narrow space trajectory generation device without a priori SLAM map provided by an embodiment of the present disclosure; Figure 7 It is a structural schematic diagram of another narrow space trajectory generation device without a priori SLAM map provided by an embodiment of the present disclosure. DETAILED DESCRIPTION

[0013] In dynamic and narrow spatial environments, the autonomous navigation of robots faces challenges, especially in the absence of a priori Simultaneous Localization and Mapping (SLAM) maps, which requires the robot to rely on its own sensors to perceive the surrounding environment.

[0014] In traditional navigation methods, path planning and obstacle avoidance are usually achieved by relying on pre-built static maps. However, in dynamic and unknown environments, static maps cannot reflect changes in the environment in real time, making it difficult for robots to adjust their paths in a timely manner according to actual conditions. This method that relies on prior maps is difficult to work in rapidly changing narrow spaces. Therefore, how to improve the robot's obstacle avoidance in narrow spaces without prior SLAM maps has become a problem that needs to be solved.

[0015] In the related technologies, the following problems often exist: 1. The relevant technology uses a single sensor to perceive the spatial environment, and the sensor data may be affected by noise, occlusion or the sensor's own limitations in a dynamic environment. For example, LiDAR may have measurement errors on obstacles or glass surfaces with low reflectivity, and cameras are easily affected by changes in lighting or occlusion. A single sensor is greatly affected by the environment, which affects the accuracy of path planning and obstacle avoidance.

[0016] 2. Related technologies rely on simple geometric algorithms or low-order polynomials to generate trajectories. These methods perform well in static and regular environments, but often have difficulty coping with dynamic and complex environments. For example, trajectories generated by low-order polynomials may have discontinuities and oscillations during sharp turns or obstacle avoidance, which affects the smoothness and safety of navigation and increases the energy consumption of the robot's obstacle avoidance process.

[0017] To solve the above problems, various embodiments of the present disclosure provide a method for generating a narrow space trajectory without a priori SLAM map, the method comprising: obtaining at least one sensor data of a robot in a narrow space at a target time, fusing at least one sensor data, and generating an initial local map of the robot at the target time; the initial local map at least includes obstacle information of obstacles; based on the distance from each position in the initial local map to the obstacle, adjusting the safe distance between the robot and the obstacle, and determining the target local map according to the safe distance; based on the preset motion parameters of the robot in the target local map, constructing a quintic polynomial equation, and determining the smooth trajectory of the robot according to the quintic polynomial equation; using a multi-objective cost equation to optimize the smooth trajectory, and using the optimized optimal trajectory as the target trajectory of the robot in the narrow space.

[0018] In order to make the purpose, technical solution and advantages of the embodiments of the present disclosure clearer, the technical solution in the embodiments of the present disclosure will be clearly and completely described below in conjunction with the drawings in the embodiments of the present disclosure. Obviously, the described embodiments are part of the embodiments of the present disclosure, rather than all the embodiments. Based on the embodiments in the present disclosure, all other embodiments obtained by those skilled in the art without creative work are within the scope of protection of the present disclosure.

[0019] Please refer to Figure 1 , Figure 1 : is a flow chart of a method for generating narrow space trajectories without a priori SLAM map provided by an embodiment of the present disclosure. The flow of the method may include the following steps: Step S101, obtaining at least one sensor data of a robot in a narrow space at a target time, fusing the at least one sensor data, and generating an initial local map of the robot at the target time.

[0020] In this embodiment, the initial local map at least includes obstacle information of the obstacle, wherein the obstacle information may include but is not limited to obstacle position coordinates, obstacle volume and shape.

[0021] A robot can refer to an intelligent device with autonomous perception, decision-making and execution capabilities, which can complete specific tasks based on information from the external environment.

[0022] The robot can be pre-set according to the actual application scenario or the experience of those skilled in the art, and can be an intelligent device in the existing technology or future technology, which is not limited in this disclosure. For example, the robot can be an intelligent wheelchair, a rescue robot, a home service robot, etc.

[0023] As an example, the robot's sensor may include at least one of the following: an ultrasonic sensor, a camera sensor, a lidar sensor, and a millimeter wave sensor. Correspondingly, the acquired sensor data may include at least one of the following: ultrasonic data, multimedia data, point cloud data, and millimeter reflection waves.

[0024] Acquiring at least one sensor data of the robot in the narrow space at a target time, fusing the at least one sensor data, and generating an initial local map of the robot at the target time may include: Acquire multiple sensor data of the robot in a narrow space at each moment, and generate the initial local map of the robot at each moment accordingly.

[0025] The initial local map may be a local perception map, that is, the surrounding environment information perceived by the robot in a short period of time. The initial local map may be updated in real time as the robot moves.

[0026] Here, multi-sensor data fusion improves the accuracy of environmental perception, allowing the robot to more reliably identify and avoid obstacles in narrow spaces. At the same time, it solves the problem of single sensor prone to errors in dynamic environments, providing effective perception support for the robot's real-time navigation in an environment without a priori maps.

[0027] Step S102, based on the distance from each position in the initial local map to the obstacle, adjust the safety distance between the robot and the obstacle, and determine the target local map according to the safety distance.

[0028] In this embodiment, the target local map may refer to a local perception map in which there is no collision between the robot and obstacles, which may be determined by updating after adjusting the trajectory multiple times in the initial local map.

[0029] Based on the distance from each position in the initial local map to the obstacle, it can include: determining a set of all points marked as obstacles in the initial local map, and for each map point in the initial local map, determining the Euclidean distance from each map point to the nearest obstacle.

[0030] Adjusting the safety distance between the robot and the obstacle and determining the target local map according to the safety distance may include: when it is determined that the robot has collided with the obstacle according to the distance from the position to the obstacle, adjusting the trajectory of the robot, updating the initial local map of the robot, and determining the distance from the robot's position to the obstacle again until the robot has no collision with all obstacles, and determining the initial local map at this time as the target local map.

[0031] Here, the target local map is determined according to the safety distance so that the robot's trajectory in the target local map does not collide with obstacles, thereby increasing the safety of the robot during navigation.

[0032] Step S103, constructing a quintic polynomial equation based on preset motion parameters of the robot in the target local map, and determining the smooth trajectory of the robot according to the quintic polynomial equation.

[0033] In this embodiment, the preset motion parameters may include but are not limited to: a trajectory starting point, a trajectory end point, and a speed.

[0034] A quintic polynomial equation can be a mathematical model used to describe a trajectory or motion path. The general form is a time-dependent t The fifth-degree polynomial of can be expressed as follows:

[0035] in, a, b, c, d, e, f are the coefficients of the quintic polynomial, which determine the shape of the trajectory curve. T is the total time of the robot's motion, t represents the time variable, Indicates the robot at time t The position at that time.

[0036] By solving the coefficients of the quintic polynomial, the position point, velocity, and acceleration of the robot along the trajectory in the smooth trajectory can be determined.

[0037] Step S104, using a multi-objective cost equation to optimize the smooth trajectory, and using the optimized optimal trajectory as the target trajectory of the robot in the narrow space.

[0038] In this embodiment, the multi-objective cost equation is a mathematical model that can be used to describe and optimize a system that needs to meet multiple objectives simultaneously in a complex environment. By constructing a cost function, the optimization problem of different objectives is converted into a unified mathematical expression, and the optimal solution is solved by an optimization algorithm.

[0039] As an example, the objectives in the multi-objective cost equation may include, but are not limited to: energy consumption cost, trajectory length cost, and driving time cost.

[0040] The smooth trajectory is optimized through the optimization algorithm to solve the optimal trajectory that meets multiple objectives at the same time, and the optimal trajectory is used as the target trajectory.

[0041] In the method and device for generating narrow space trajectories without a priori SLAM maps of the above-mentioned embodiments of the present disclosure, an initial local map is generated based on at least one sensor data, and obstacles are identified using the initial local map. This method of fusing multi-sensor data can reduce interference and occlusion in narrow spaces, thereby improving the accuracy of the robot's obstacle avoidance. The use of a quintic polynomial equation to generate a smooth trajectory can achieve smooth turns and continuous speed changes in the robot's navigation path, avoid jitter and instability problems caused by discontinuous trajectories, increase the efficiency of the robot's obstacle avoidance, and reduce the energy consumption of the robot when avoiding obstacles. Based on the initial local map, the target local map is generated by calculating the distance from each position to the obstacle and adjusting it based on the safe distance. This process ensures a safe interval between the robot and the obstacle, effectively reduces the risk of collision, and improves the stability and safety of the robot in narrow spaces.

[0042] In step S101 of the above embodiment, obtaining at least one sensor data of the robot in the narrow space at the target time, fusing the at least one sensor data, and generating an initial local map of the robot at the target time, including: Acquire at least one sensor data of the robot at a target time, and synchronize each sensor data of the at least one sensor data to the same time series; Based on the posture information of the robot at the target time, the coordinates of the sensor data are transformed to determine the initial local map of the robot at the target time.

[0043] In this embodiment, at least one sensor data of the robot at the target time can be represented in two data forms, namely, 2D sensor data and 3D sensor data.

[0044] As an example, 2D sensor data can be expressed as follows:

[0045] in, It can indicate the distance between the sensor and the object being measured. It can represent the angle between the sensor and the object being measured.

[0046] The 3D sensor data can be expressed as follows:

[0047] in, Represents three-dimensional coordinates.

[0048] Furthermore, the robot's odometer data is obtained based on the robot's visual motion capture, inertial sensor or other measurement unit, and the robot's position information is obtained based on the odometer. The sensor data is converted into Convert to a point in the perceptual map coordinate system :

[0049] in, It can represent the position information of the sensor relative to the robot chassis. It can represent the position and posture information of the robot.

[0050] According to the coordinate point of each object under test in the perception map coordinate system , creating the robot’s initial local map at the target time.

[0051] Furthermore, the following formula can be used to calculate the coordinates of the 2D sensor data relative to the robot ( , ):

[0052] Among them, through the posture transformation, the coordinate point ( , ) is converted to a point in the perceptual map coordinate system .

[0053] Determine the coordinates of the 3D sensor data relative to the robot , using the following formula, through the affine transformation matrix Compute points in the perception map coordinate system :

[0054] In the method and device for generating narrow space trajectories without a priori SLAM maps in the above-mentioned embodiments of the present disclosure, by synchronizing multiple sensor data to the same time series and performing posture conversion based on the robot posture information, the time delay and spatial inconsistency problems between different sensors are solved, and the robot's ability to locate and identify obstacles in narrow spaces is improved. By integrating multiple sensor data and utilizing the complementary advantages of each sensor, the overall perception of the environment is improved.

[0055] In a possible implementation of the above embodiment, the method further includes: By defining the upper and lower bounds of the initial local map, the boundary range of the initial local map is limited; wherein the boundary range is used to represent the effective perception range of the robot to obstacles; Rasterize the initial local map, converting the coordinates of the sensor data in the boundary range into a raster index; The grid value corresponding to the grid index of the sensor data is determined, and the obstacle information in the initial local map is updated based on the grid value.

[0056] In this embodiment, by defining the upper and lower bounds of the initial local map, limiting the boundary range of the initial local map may include: The upper and lower bounds of the initial local map are defined using the following formula:

[0057] in, and It can represent the lower and upper bounds of the x-axis direction. and It can represent the lower and upper bounds of the y-axis direction.

[0058] Here, by defining the boundary of the initial local map, the coordinate points beyond this boundary are invalid, thereby limiting the size of the initial local map, reducing the robot's perception calculation amount, and improving real-time performance.

[0059] Rasterizing the initial local map, converting the coordinates of the sensor data in the boundary range into a raster index, may include: The initial local map is stored in the form of a two-dimensional grid, and each coordinate point in the map is represented by a grid; The raster index of sensor data is expressed using the following formula:

[0060] in, Represents the horizontal coordinate of the grid index. Represents the vertical coordinate of the grid index.

[0061] Here, a grid can be a representation of dividing a two-dimensional space into equal-sized, regular rectangular or square units. In robot map modeling, a grid is a way to divide the environment into discrete units, each of which corresponds to a position in the map. A grid index can be a way to number or locate the grids, used to identify the specific position of each grid in the map.

[0062] Determining a grid value corresponding to a grid index of sensor data, and updating obstacle information in an initial local map based on the grid value may include: When the grid corresponding to the grid index is occupied by an obstacle, determining the grid value of the grid to be the first value; When the grid index corresponds to a passable area, determining the grid value of the grid to be the second value; When the grid corresponding to the grid index is an unknown area, determining the grid value of the grid is a third value; The obstacle information in the initial local map is updated based on the first value, the second value, or the third value.

[0063] As an example, if grid (i, j) is occupied by an obstacle, update map (i, j) to 100; if grid (i, j) is passable, update map (i, j) to 0; if grid (i, j) is an unknown area, update map (i, j) to 50.

[0064] In the method and device for generating narrow space trajectories without a priori SLAM maps of the above-mentioned embodiments of the present disclosure, the effective perception range of the robot is clarified by setting the upper and lower bounds of the initial local map. This operation ensures that the robot only focuses on the area it can actually perceive, thereby improving computing efficiency and avoiding unnecessary interference with perception data. The data is converted into raster indexes through rasterization processing. This process can accurately map the sensor data to the corresponding grids in the local map, ensuring the precise positioning and updating of obstacle information. By continuously updating and optimizing the initial local map, real-time navigation and obstacle avoidance of the robot can be supported. When the environment changes, the map will be updated at any time to ensure that the robot can always make decisions based on the latest perception data.

[0065] In step S102 of the above embodiment, based on the distance from each position in the initial local map to the obstacle, the safety distance between the robot and the obstacle is adjusted, and the target local map is determined according to the safety distance, which is implemented based on the following steps: Based on a preset expansion radius, the obstacles in the initial local map are expanded to increase the influence range of the obstacles in the initial local map; Determine the Euclidean distance from each grid point in the initial local map to the nearest expanded obstacle, and normalize the Euclidean distance; According to the normalized Euclidean distance, an obstacle cost map corresponding to the initial local map is constructed; Determine a safe distance between the robot and the obstacle, determine whether the robot collides with the obstacle based on the relationship between the safe distance and a preset collision detection threshold, and when it is determined that the robot collides with the obstacle, adjust the trajectory of the robot to increase the safe distance between the robot and the obstacle; When it is determined that there is no collision between the robot and the obstacle, the obstacle cost map is determined as the target local map.

[0066] In this embodiment, based on a preset expansion radius, the obstacle in the initial local map is expanded to increase the influence range of the obstacle in the initial local map, which may include: The expansion radius is set, a expansion kernel is generated based on the expansion radius, and the obstacle image is expanded based on the expansion kernel.

[0067] The number of grids occupied by the expansion radius in the rasterized initial local map is determined based on the radius of the safety zone around the obstacle and the resolution of the map, and the number of grids is used as the expansion radius.

[0068] As an example, the expansion radius can be determined using the following formula: :

[0069] here, It can represent the radius of the safe area around the obstacle. It can represent the map resolution (that is, the distance between each grid), It can represent the number of grids occupied by the expansion radius in the rasterized initial local map.

[0070] Generate a dilation kernel based on the dilation radius, which can include: Generate a size of The elliptical expansion kernel K .

[0071] Here, the expansion kernel may refer to a mathematical structure used to expand obstacles in the map, which is an elliptical area with the obstacle as the center and the expansion radius as the radius, and is used to expand the influence range of the obstacle and prevent the robot from entering these areas.

[0072] As an example, the expansion kernel is calculated using the following formula: K :

[0073] in, It can be a function in OpenCV that generates the structure element for morphological operations. It can be the shape parameter of the structural element and can be used to generate an elliptical structural element. It can represent the size of the generated structural element, that is, the expansion radius, which is used to control the expansion range of the structural element.

[0074] Based on the preset expansion radius, the obstacles in the initial local map are expanded, which may include: Based on the expansion kernel K , the following formula is used to expand the obstacle:

[0075] in, It can be a dilation operator, which is used to expand the bright area (that is, the obstacle area) in the image. May refer to an initial local map.

[0076] Here, according to the structural element K Gradually expand the obstacle area, and any obstacle that is in contact with the structural element during the expansion process K Overlapping areas will be set as obstacles, thereby increasing the impact range of the obstacles.

[0077] Furthermore, the expanded map data is expressed using the following formula:

[0078] in, A Map data representing the initial perceptual map before dilation, Represents the expanded map data, The operator symbol representing the expansion operation, Represents a structural element, and z represents a pixel in the initial perception map. It will expand at this point. Represents structural elements At the position of pixel point z, that is, the current position of the structural element. It can represent the result of the expansion operation, representing all pixels z that meet the conditions, that is, the structural element At the current position z and the initial perception map A The intersection of is not empty, that is, if the structural element At position z with the original map A If the obstacle area overlaps, the position z will be included in the expanded map middle.

[0079] Furthermore, the structural element It can be a 3*3 square matrix that can affect the 8 neighboring pixels around the current pixel.

[0080] Determine the Euclidean distance from each grid point in the initial local map to the nearest expanded obstacle, and normalize the Euclidean distance, which may include: The expanded map , calculate each pixel p Euclidean distance to the nearest obstacle D(p) ; The Euclidean distance of each pixel D(p) Normalize to the range of [0,255].

[0081] Specifically, the Euclidean distance is calculated using the following formula: D(p) :

[0082] in, is any pixel in the map. Belongs to the obstacle point set The point in .

[0083] Furthermore, the normalization process is expressed by the following formula:

[0084] in, It can represent the maximum distance from the pixel point to the obstacle in the map. It can represent the minimum distance from a pixel point in the map to an obstacle.

[0085] In a possible implementation, constructing an obstacle cost map corresponding to the initial local map according to the normalized Euclidean distance may include: The normalized image is inverted to construct the obstacle cost map corresponding to the initial local map.

[0086] The purpose of the inversion operation may be to make the pixel points closer to the obstacle have a higher cost and the pixel points farther from the obstacle have a lower cost.

[0087] Specifically, the negation operation can be expressed by the following formula:

[0088] in, Represents the cost value of point p in the final generated obstacle cost map. The higher the cost value, the less suitable it is for the robot to pass through.

[0089] Determining a safe distance between the robot and the obstacle, and determining whether the robot collides with the obstacle based on a relationship between the safe distance and a preset collision detection threshold, may include: Determine whether any pixel point in the obstacle cost map is within the boundary range and the Euclidean distance between the pixel point and the obstacle is less than the preset collision detection threshold, and determine whether the above pixel point collides with the obstacle.

[0090] Specifically, the collision detection can be expressed by the following formula:

[0091] in, can represent a point on the robot boundary, A point that can represent an obstacle, Can represent collision detection threshold.

[0092] here, Can represent a point on the outer edge of the robot or on the robot's outline.

[0093] Furthermore, the collision detection threshold may be determined by the map resolution.

[0094] As an example, the collision detection threshold may be expressed as follows:

[0095] in, Can be map resolution 0.75 times of.

[0096] In a possible implementation of the above embodiment, the method may further include: Bilinear interpolation is used to calculate the cost value of any pixel in the obstacle cost map.

[0097] Specifically, determine any point in the obstacle cost map p , use the following formula to calculate the point p Row and column coordinates in a grid map:

[0098] in, and Yes p The actual coordinates on the map, and This can be the coordinates of the lower left corner of the map.

[0099] Furthermore, the bilinear interpolation is expressed by the following formula: cost ( p ) = c 00( col 1 − col )( row 1 − row )+ c 10( col 1 − col )( row − row 0)+ c 01( col − col 0)( row 1 − row )+ c 11( col − col 0)( row − row 0) in, c 00, c 10. c 01 and c 11 can be a point p The cost value of the four adjacent grid points is, col 1. row 0. col 1. row 1 can be a point p The column coordinates and row coordinates of adjacent grid points can form a rectangular area.

[0100] First, according to the point p Calculate the horizontal interpolation value with the column coordinates of the left and right neighboring points, and then calculate the horizontal interpolation value according to the point p Calculate the vertical interpolation with the row coordinates of the left and right neighboring points.

[0101] Through bilinear interpolation, the cost value at any position can be calculated smoothly.

[0102] Furthermore, after the cost value at any position is determined, the cost value may be thresholded and scaled to ensure that the cost value is within a reasonable range.

[0103] As an example, the formula for threshold scaling can be as follows:

[0104] in, It can be said that the cost value is scaled so that the cost value is not too large or too small. Can indicate offset of cost value.

[0105] As an example, Figure 2 is a schematic diagram of a perception map of a method for generating narrow space trajectories without a priori SLAM map provided by an embodiment of the present disclosure, such as Figure 2As shown, the picture on the left is the target local map, which is determined by the initial local map on the right. The target local map contains the potential energy field of the obstacle. The darker the color, the greater the collision cost, and the lighter the color, the smaller the collision cost. Figure 2 The dark curve in the figure represents the trajectory of the robot.

[0106] For further information, please refer to Figure 3 , Figure 3 is a schematic diagram of a perception map of another method for generating narrow space trajectories without a priori SLAM map provided by an embodiment of the present disclosure, such as Figure 3 As shown in the figure, the left picture is the target local map from another perspective, and the right picture is the initial local map from another perspective. The higher the height of the obstacle in the target local map, the higher the cost value of the collision. Correspondingly, the darker the color, the higher the cost value of the collision.

[0107] In the method and device for generating narrow space trajectories without a priori SLAM maps in the above-mentioned embodiments of the present disclosure, the expansion processing and distance transformation technology effectively avoid the risk of collision of the robot during movement and make path planning safer. In a narrow space, the cost value of obstacles is dynamically adjusted to improve the flexibility of the robot's obstacle avoidance and the accuracy of path planning. This method provides effective protection for safe navigation in complex environments and ensures the safety and stability of the robot in real-time movement. By using bilinear interpolation to smoothly calculate the cost value of any point, the discontinuity caused by directly using the nearest grid value is avoided, making the trajectory planning more accurate and smooth.

[0108] In step S103 of the above embodiment, based on the preset motion parameters of the robot in the target local map, a quintic polynomial equation is constructed, and the smooth trajectory of the robot is determined according to the quintic polynomial equation, which is implemented based on the following steps: Obtain a reference trajectory of the robot in a narrow space, and construct a fifth-order polynomial equation of the sampling trajectory based on the reference trajectory and preset motion parameters; the sampling trajectory is determined based on the reference trajectory; The polynomial coefficients in the fifth-order polynomial equation of the sampling trajectory are calculated, and the smooth trajectory of the robot is determined according to the polynomial coefficients; wherein the smooth trajectory includes the position, velocity and acceleration of the points along the trajectory.

[0109] In this embodiment, a reference trajectory is determined based on the starting position and the end position of the robot movement, a sampling trajectory in the lateral offset direction is generated based on the reference trajectory, and a quintic polynomial equation of the sampling trajectory is constructed.

[0110] Here, the reference trajectory may refer to an ideal trajectory that the robot needs to follow in a short period of time for local navigation and control. For example, the reference trajectory may be a uniform linear motion from point A to point B. The sampled trajectory may be a plurality of candidate paths generated based on the reference trajectory, and the sampling may be performed based on lateral offset or curvature adjustment to select the optimal feasible path.

[0111] As an example, the reference trajectory can be expressed as follows: :

[0112] in, a Indicates the reference speed of the robot.

[0113] As an example, see Figure 4 , Figure 4 is a schematic diagram of sampling trajectories of a method for generating narrow space trajectories without a priori SLAM maps provided by an embodiment of the present disclosure, such as Figure 4 As shown, the straight line with a lighter color along the x-axis can represent the reference trajectory, and the curve with a darker color running through the x-axis represents the sampling trajectory.

[0114] In the figure p start can be the starting point of the generated sampling trajectory, p end is the end point of the generated sampling trajectory. Θ start It can be the yaw angle between the starting point of the generated trajectory and the starting point of the reference trajectory, θ end It can be the yaw angle between the end point of the generated trajectory and the end point of the reference trajectory. θ init It can be the angle between the robot base coordinate system and the yaw angle of the generated trajectory. p start is the lateral distance between the robot and the reference trajectory, which is a known term and its value is C . θinit is the yaw angle between the robot and the generated trajectory, which is a known term and its value is C Assume that α start and α end is 0.

[0115] In a possible implementation of the above embodiment, the constructed quintic polynomial equation of the sampling trajectory may be as follows:

[0116] Furthermore, the speed of the sampling trajectory can be expressed as:

[0117] The acceleration of the sampling trajectory can be expressed as:

[0118] In a possible implementation, the method may further include: setting boundary conditions for the quintic polynomial, and the boundary conditions may include: the initial position of the trajectory is p start , the acceleration of the trajectory at the starting point is 0, and the acceleration of the trajectory at the end point is 0.

[0119] Here, the initial position of the trajectory is p start Indicates that the starting point of the robot movement is fixed at p start ; The acceleration of the trajectory at the starting point is 0, which means that the robot will not suddenly change speed when it starts moving, ensuring smooth movement; The acceleration of the trajectory at the starting point is 0, which means that the robot will not suddenly decelerate when it stops or reaches the target point, and the trajectory ends smoothly.

[0120] As an example, the boundary conditions could be as follows:

[0121] Based on the reference trajectory and preset motion parameters, the quintic polynomial equation for constructing the sampling trajectory can be shown as follows:

[0122] in, is the starting point, is the starting speed, d, e, f It is a high-order polynomial coefficient that is responsible for controlling the shape of the trajectory and satisfying the constraints of the end point.

[0123] Furthermore, using the matrix equation Ax = b Convert the constraints of the endpoints into equations and solve for the coefficients x to satisfy the constraints.

[0124] Among them, the matrix A It can be a matrix generated by the total motion time T of the trajectory, the vector b It can be a boundary condition, which is used to express the displacement and velocity constraints at the end point of the trajectory.

[0125] Here, the matrix can be expressed as follows A And vector b : ,

[0126] Among them, the matrix A The first row corresponds to the position constraint of the trajectory, the second row corresponds to the velocity constraint of the trajectory, and the third row corresponds to the acceleration constraint of the trajectory, which is used to characterize the trajectory in time. T The dynamic constraint relationship below.

[0127] vector b The first row shows the trajectory at time T The total displacement that needs to be covered below is subtracted from the part caused by the initial velocity. The second line shows the velocity difference between the end point and the starting point, and the third line shows that the acceleration at the end point is zero.

[0128] Furthermore, for the matrix A Solving the Inverse Matrix A -1 , to solve for the coefficient vector by matrix multiplication x .

[0129] Here, the inverse matrix can be expressed as follows A -1 :

[0130] Furthermore, we determine d, e, f ,as follows:

[0131]

[0132]

[0133] in, d The formula represents the cubic coefficient of the trajectory, which can be calculated by the displacement and velocity difference; e The formula represents the coefficient of the fourth term of the trajectory, which can further constrain the end condition ;f The formula represents the fifth-order coefficient of the trajectory.

[0134] Here, by calculating the high-order coefficients of the trajectory, the trajectory is T The dynamic boundary conditions are met.

[0135] In the method and device for generating narrow space trajectories without a priori SLAM maps of the above embodiments of the present disclosure, the generated trajectory curve has high smoothness by using quintic polynomial path planning, ensuring that the robot can flexibly cope with the complex terrain of narrow spaces in a dynamic environment. Compared with the traditional simple linear trajectory planning, this method can provide smooth speed and steering control, effectively avoid the vibration and energy loss caused by sudden stops and turns, and improve the stability of the path and the navigation efficiency of the robot.

[0136] In step S104 of the above embodiment, the smooth trajectory is optimized using a multi-objective cost equation, and the optimized optimal trajectory is used as the target trajectory of the robot in a narrow space, which is implemented based on the following steps: The cost equation is constructed based on the weighted sum of trajectory energy and trajectory length. The preset optimization algorithm is used to determine the smooth trajectory corresponding to the cost equation when the cost value is minimized as the optimal trajectory, and the smooth trajectory is used as the target trajectory of the robot in a narrow space.

[0137] In this embodiment, the total energy formula of the trajectory energy can be shown as follows:

[0138] in, It can refer to the smoothness energy of the trajectory itself, It can refer to the energy cost of the angle deviation of the trajectory starting point, It can refer to the energy cost of the angular deviation at the end point of the trajectory.

[0139] Here, the total energy is decomposed into the cost of the smoothness of the trajectory shape and the conditions of the boundary points (starting point and end point) in order to comprehensively optimize the trajectory.

[0140] Furthermore, the energy formula of the trajectory energy can be shown as follows:

[0141] in, It can represent the trajectory smoothness cost, with the trajectory in time t The acceleration on The square of acceleration is used as the measurement standard. The greater the acceleration, the greater the change in the trajectory curve and the worse the smoothness. It can represent the acceleration at the starting point of the trajectory α start Contribution to energy, where I Represents the moment of inertia. Represents the energy cost of the angular acceleration at the end point.

[0142] Here, the formula comprehensively considers the smoothness of the trajectory (the first term) and the impact of changes in the start and end angles on the dynamic performance (the second and third terms), and is used to generate a trajectory that is both smooth and meets dynamic constraints.

[0143] Furthermore, the energy formula after the expansion of the quintic polynomial can be shown as follows:

[0144] in, The smoothness cost can be expressed by calculating the acceleration contribution over the entire time range through square integration. The greater the energy, the worse the trajectory smoothness. It can represent the starting angle constraint cost, that is, the starting angle Offset Initial Angle The cost of the moment of inertia I and time T related. It can be used to constrain the end point angle and control the final direction of the trajectory.

[0145] Here, the purpose of the energy formula after the quintic polynomial expansion is to combine the smoothness and start-end point dynamic constraints to optimize the actual feasibility and execution effect of the generated trajectory in the global planning.

[0146] The general expansion formula of the energy formula after the quintic polynomial expansion can be shown as follows:

[0147] Among them, the integrand expression It can be the expansion result of the square of the second-order derivative of the quintic polynomial trajectory, where each term can be expressed as d, e, f Contribution to trajectory smoothness. It can express the angle constraint energy between the start point and the end point.

[0148] Furthermore, the general expansion formula is integrated and solved, and the results are as follows:

[0149] in, Representation and d The associated smoothness cost is proportional to time , express d and e The interaction effect is proportional to time , express d and f The interaction effect is proportional to time , express e The impact is proportional to time , express e and f The interaction effect is proportional to time , express f The impact is proportional to time . Consistent with the general expansion formula, it is used to reflect the constraint cost of the trajectory at the boundary angle and time T Inversely proportional, the longer the time, the smaller the cost.

[0150] In a possible implementation, the rate of change of the energy in the energy formula relative to the starting point angular velocity, the ending point angular velocity, and the ending point position may be calculated to optimize the trajectory parameters.

[0151] Specifically, the rate of change of energy to the angular velocity of the starting point can be shown as follows:

[0152] in, represents the rate of change of energy to the angular velocity of the starting point, , , Represent the coefficients of the quintic polynomial d, e, f Dependence on the angular velocity of the starting point.

[0153] Here, by guiding the optimization algorithm to adjust , to reduce the total energy of the trajectory.

[0154] Similarly, the rate of change of energy versus terminal angular velocity can be expressed as:

[0155] in, It represents the rate of change of energy with respect to the angular velocity of the terminal point.

[0156] Similarly, the rate of change of energy versus terminal position can be expressed as:

[0157] in, It represents the rate of change of energy with respect to the end point position.

[0158] In summary, by calculating these energy gradients, we can provide optimization directions for adjusting the starting angular velocity, the ending angular velocity, and the ending position.

[0159] Further decomposing the formula, the rate of change of energy to the angular velocity of the starting point can be expressed as follows:

[0160] in, represents the effect of trajectory speed on the energy of the starting point; Indicates the effect of trajectory acceleration on the energy of the starting point; It represents the influence of the rate of change of trajectory curvature on the energy of the starting point; represents the contribution of the starting boundary condition to the energy, represents the deviation from the initial condition, and the goal is to minimize this deviation.

[0161] Similarly, the rate of change of energy with respect to the terminal angular velocity can be expressed as follows:

[0162] Among them, each item represents: the influence of trajectory velocity on the endpoint energy, the influence of trajectory acceleration on the endpoint energy, the influence of trajectory curvature change rate on the endpoint energy, and the contribution of endpoint boundary conditions to the energy.

[0163] Similarly, the rate of change of energy with respect to the terminal position can be expressed as follows:

[0164] Among them, each item represents: the influence of trajectory velocity on the end point position, the influence of trajectory acceleration on the end point position, and the influence of trajectory curvature change rate on the end point position.

[0165] In summary, the energy formula for the gradient of each parameter can be expressed as follows:

[0166] in, The energy formula for the initial angular velocity is The partial derivative of The energy formula for the terminal angular velocity is The partial derivative of The energy formula for the end point position The partial derivative of .

[0167] Here, the formula can calculate the sensitivity of the energy formula to changes in different parameters, and thus be used to guide how to update the parameters to reduce energy consumption.

[0168] In a possible implementation of the above embodiment, the trajectory length may be expressed by the following formula:

[0169] In formula 1, represents the function of the vertical position changing with time, represents the function of the horizontal position changing with time, represents the vertical velocity, Indicates the horizontal speed. Indicates the instantaneous speed of an object at a certain moment. Integration means that in the time interval [0, T], the speed at each moment is accumulated to obtain the length of the entire motion trajectory. L .

[0170] In formula 2, v represents a constant speed in the horizontal direction, represents the function of the vertical position changing with time, and the total rate is , integration means adding up the velocity at each moment to get the length of the entire trajectory.

[0171] Here, Formula 1 can be a general form for calculating trajectory length, which can be applied to any two-dimensional curve trajectory, while Formula 2 can be targeted at a specific motion model and can be used in trajectory planning and motion control.

[0172] Furthermore, since it is complicated to solve the gradient of the trajectory length by algebraic method, the five-point differential method can be used to solve the gradient. As an example, it can be shown as the following formula:

[0173] in, represents the center point of the derivative, , , , represents the sampling points around the center point, Represents the interval between sampling points. The weight coefficient (-1, 8, -8, 1) indicates the contribution of each point to the derivative, approximating the function exist First derivative of a point .

[0174] Furthermore, the trajectory length is solved by the five-point differential method L The gradient formula can be shown as follows:

[0175] in, Indicates the length of the track L For the rate of change of the angular velocity at the starting point, Indicates the length of the track L For the rate of change of the terminal angular velocity, Indicates the length of the track L The rate of change of the endpoint depth.

[0176] Here, by calculating these partial derivatives, these parameters can be adjusted during the optimization process to minimize or maximize the trajectory length.

[0177] The cost equation is constructed based on the weighted sum of trajectory energy and trajectory length, which may include: the objective function is expressed by the following formula:

[0178] The objective function aims to determine a set of parameters , so that the sum of energy consumption and trajectory length is minimized.

[0179] Furthermore, the determined cost equation can be shown as follows:

[0180] in, and is a weight coefficient that can be used to control the importance of energy cost and length cost in the total cost. It can represent the energy consumption cost of the trajectory, Represents the length cost of the trajectory.

[0181] Furthermore, the specific calculation formula of the cost equation can be shown as follows:

[0182] in, The contribution of the square of the trajectory's acceleration to the total energy is calculated, The length of the trajectory was calculated.

[0183] Here, the optimization algorithm L-BFGS (Limited Memory Broyden-Fletcher-Goldfarb-Shanno) can be used to solve and determine the optimal trajectory after optimization.

[0184] In the method and device for generating narrow space trajectories without a priori SLAM maps of the above-mentioned embodiments of the present disclosure, by performing multi-objective optimization on the cost equation, a safer, smoother and lower-energy trajectory can be generated, and combined with real-time perception and path adjustment of dynamic obstacles, the robot can be ensured to respond quickly in a complex environment. By using an effective optimization algorithm, the trajectory optimization problem can be solved efficiently and the speed of robot path adjustment can be improved. During the optimization process, the cost equation can be adapted to different needs and constraints by adjusting the weight coefficients. For specific tasks, it may be necessary to give different emphasis to energy or path length. By adjusting these weights, the optimization algorithm can be flexibly adjusted according to the actual situation to ensure that the final trajectory adapts to changing environmental conditions.

[0185] In a possible implementation of the above embodiment, the method further includes: In the process of optimizing the smooth trajectory, when it is determined that there is an obstacle in the optimal trajectory, a reverse gradient is added to the cost equation, and the optimal trajectory is adjusted based on the reverse gradient to make the optimal trajectory away from the obstacle.

[0186] In this embodiment, when it is determined that there is an obstacle in the optimal trajectory, the obstacle cost is introduced into the cost equation, and the cost equation with the obstacle cost is subjected to reverse gradient adjustment.

[0187] Among them, by adjusting the reverse gradient, the trajectory can be moved away from the obstacle. If the trajectory approaches an obstacle, the reverse gradient can force the trajectory to change direction and increase the distance from the obstacle.

[0188] During the optimization process, collision detection is required at each step to ensure that the updated trajectory is still safe and maintains a safe distance from obstacles. When the cost equation converges and the trajectory satisfies all constraints, the final trajectory is the optimal trajectory, which meets the requirements of smoothness and length while avoiding obstacles.

[0189] In the method and device for generating a narrow space trajectory without a priori SLAM map in the above-mentioned embodiment of the present disclosure, by performing reverse gradient adjustment on the trajectory, the robot can be prevented from colliding during movement, thereby improving the safety of the robot's movement.

[0190] In a specific embodiment, please refer to Figure 5 , Figure 5 Schematic diagram of trajectory generation of a method for generating narrow space trajectories without a priori SLAM map provided by an embodiment of the present disclosure: wherein: The robot's sensors may include: ultrasound, lidar, camera, millimeter wave, time difference (Time offlight, TOF). The data fusion of various sensors generates a receptive field (i.e. sensor data). The robot's odometer sensor generates an odometer. The receptive field and odometer generate a perception map (i.e., the initial local map). A series of processing is performed on the perception map to determine the obstacle potential field in the perception map (i.e., the target local map). The optimal trajectory is determined by generating a quintic polynomial trajectory and optimizing it.

[0191] In one embodiment, a narrow space trajectory generation device 60 without a priori SLAM map is provided, and the narrow space trajectory generation device 60 without a priori SLAM map corresponds one-to-one to the narrow space trajectory generation method without a priori SLAM map in the above embodiment. Figure 6 As shown, the narrow space trajectory generation device 60 without a priori SLAM map includes a first determination module 601, a second determination module 602, a trajectory generation module 603 and a trajectory optimization module 604, wherein each functional module is described in detail as follows: A first determination module 601 is used to obtain at least one sensor data of the robot in the narrow space at a target time, perform fusion processing on the at least one sensor data, and generate an initial local map of the robot at the target time; the initial local map at least includes obstacle information of obstacles; A second determination module 602 is used to adjust the safety distance between the robot and the obstacle based on the distance from each position in the initial local map to the obstacle, and determine the target local map according to the safety distance; A trajectory generation module 603, configured to construct a fifth-order polynomial equation based on preset motion parameters of the robot in the target local map, and determine a smooth trajectory of the robot according to the fifth-order polynomial equation; The trajectory optimization module 604 is used to optimize the smooth trajectory using a multi-objective cost equation, and use the optimized optimal trajectory as the target trajectory of the robot in the narrow space.

[0192] In one embodiment, the first determination module 601 is used to obtain at least one sensor data of the robot at a target time, and synchronize each sensor data of the at least one sensor data to the same time series; Based on the posture information of the robot at the target time, the coordinates of the sensor data are transformed into a posture, and an initial local map of the robot at the target time is determined.

[0193] In one embodiment, the narrow space trajectory generation device 60 without a priori SLAM map further includes a map initialization module 605, wherein: A map initialization module 605 is used to limit the boundary range of the initial local map by defining the upper and lower boundaries of the initial local map; wherein the boundary range is used to represent the effective perception range of the robot to obstacles; rasterizing the initial local map, converting the coordinates of the sensor data in the boundary range into a raster index; Determine a grid value corresponding to a grid index of the sensor data, and update obstacle information in the initial local map based on the grid value.

[0194] In one embodiment, the second determining module 602 is configured to perform expansion processing on the obstacle in the initial local map based on a preset expansion radius to increase the influence range of the obstacle in the initial local map; Determine the Euclidean distance from each grid point in the initial local map to the nearest expanded obstacle, and normalize the Euclidean distance; Constructing an obstacle cost map corresponding to the initial local map according to the normalized Euclidean distance; Determine a safe distance between the robot and the obstacle, determine whether the robot collides with the obstacle according to a relationship between the safe distance and a preset collision detection threshold, and when it is determined that the robot collides with the obstacle, adjust the trajectory of the robot to increase the safe distance between the robot and the obstacle; When it is determined that there is no collision between the robot and the obstacle, the obstacle cost map is determined as the target local map.

[0195] In one embodiment, the trajectory generation module 603 is used to obtain a reference trajectory of the robot in a narrow space, and construct a quintic polynomial equation of a sampling trajectory based on the reference trajectory and preset motion parameters; the sampling trajectory is determined based on the reference trajectory; The polynomial coefficients in the fifth-order polynomial equation of the sampling trajectory are calculated, and the smooth trajectory of the robot is determined according to the polynomial coefficients; wherein the smooth trajectory includes the position, velocity and acceleration of points along the trajectory.

[0196] In one embodiment, the trajectory optimization module 604 is used to construct a cost equation based on the weighted sum of trajectory energy and trajectory length, and use a preset optimization algorithm to determine that the smooth trajectory corresponding to the cost equation when the cost value is minimized is the optimal trajectory, and use the smooth trajectory as the target trajectory of the robot in the narrow space.

[0197] In one embodiment, the narrow space trajectory generation device 60 without a priori SLAM map further includes an adjustment module 606, wherein: The adjustment module 606 is used to add a reverse gradient to the cost equation when it is determined that there is an obstacle in the optimal trajectory during the optimization process of the smooth trajectory, and adjust the optimal trajectory based on the reverse gradient to make the optimal trajectory away from the obstacle.

[0198] It should be noted that: the narrow space trajectory generation device without a priori SLAM map provided in the above embodiment only uses the division of the above program modules as an example to illustrate when implementing the corresponding narrow space trajectory generation method without a priori SLAM map. In actual applications, the above processing can be assigned to different program modules as needed, that is, the internal structure of the above system can be divided into different program modules to complete all or part of the above-described processing. In addition, the system provided in the above embodiment and the corresponding Figure 1 The embodiments of the method shown belong to the same concept, and the specific implementation process is detailed in the method embodiments, which will not be repeated here.

[0199] The present disclosure also provides a computer device having the above Figure 6 The device shown here is used to generate trajectories in narrow spaces without a priori SLAM maps.

[0200] See also Figure 7 , Figure 7 is a schematic diagram of the structure of another narrow space trajectory generation device without a priori SLAM map provided by an embodiment of the present disclosure, such as Figure 7 As shown, the computer device includes: one or more processors 10, a memory 20, and interfaces for connecting various components, including high-speed interfaces and low-speed interfaces. Various components are connected to each other using different buses for communication, and can be installed on a common mainboard or installed in other ways as needed. The processor can process the instructions executed in the computer device, including instructions stored in or on the memory to display the graphical information of the GUI on an external input / output device (such as, a display device coupled to the interface). In some optional embodiments, if necessary, multiple processors and / or multiple buses can be used together with multiple memories and multiple memories. Similarly, multiple computer devices can be connected, and each device provides some necessary operations (for example, as a server array, a group of blade servers, or a multi-processor system). Figure 7 A processor 10 is taken as an example.

[0201] The processor 10 may be a central processing unit, a network processor or a combination thereof. The processor 10 may further include a hardware chip. The hardware chip may be a dedicated integrated circuit, a programmable logic device or a combination thereof. The programmable logic device may be a complex programmable logic device, a field programmable gate array, a general purpose array logic or any combination thereof.

[0202] The memory 20 stores instructions executable by at least one processor 10, so that at least one processor 10 executes the method shown in the above embodiment.

[0203] The memory 20 may include a program storage area and a data storage area, wherein the program storage area may store an operating system, an application required for at least one function; the data storage area may store data created according to the use of the computer device, etc. In addition, the memory 20 may include a high-speed random access memory, and may also include a non-transient memory, such as at least one disk storage device, a flash memory device, or other non-transient solid-state storage device. In some optional embodiments, the memory 20 may optionally include a memory remotely arranged relative to the processor 10, and these remote memories may be connected to the computer device via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.

[0204] The memory 20 may include a volatile memory, such as a random access memory; the memory may also include a non-volatile memory, such as a flash memory, a hard disk or a solid state drive; the memory 20 may also include a combination of the above types of memory.

[0205] The computer device also includes an input device 30 and an output device 40. The processor 10, the memory 20, the input device 30 and the output device 40 may be connected via a bus or other means. Figure 7 The example of connecting through bus is taken in the following.

[0206] The input device 30 can receive input digital or character information, and generate key signal input related to the user settings and function control of the computer device, such as a touch screen, a keypad, a mouse, a track pad, a touch pad, an indicator bar, one or more mouse buttons, a trackball, a joystick, etc. The output device 40 may include a display device, an auxiliary lighting device (e.g., an LED) and a tactile feedback device (e.g., a vibration motor), etc. The above-mentioned display device includes but is not limited to a liquid crystal display, a light emitting diode, a display and a plasma display. In some optional embodiments, the display device can be a touch screen.

[0207] The computer device also includes a communication interface, which is used for the computer device to communicate with other devices or a communication network.

[0208] The embodiments of the present disclosure also provide a computer-readable storage medium. The above-mentioned method according to the embodiments of the present disclosure can be implemented in hardware, firmware, or can be implemented as a computer code that can be recorded in a storage medium, or can be implemented as a computer code that is originally stored in a remote storage medium or a non-temporary machine-readable storage medium and will be stored in a local storage medium and downloaded through a network, so that the method described herein can be stored in such software processing on a storage medium using a general-purpose computer, a dedicated processor, or programmable or dedicated hardware. Among them, the storage medium can be a magnetic disk, an optical disk, a read-only storage memory, a random access memory, a flash memory, a hard disk or a solid-state drive, etc.; further, the storage medium can also include a combination of the above-mentioned types of memory. It can be understood that a computer, a processor, a microprocessor controller, or programmable hardware includes a storage component that can store or receive software or computer code. When the software or computer code is accessed and executed by a computer, a processor, or hardware, the method shown in the above embodiment is implemented.

[0209] A part of the present disclosure may be applied as a computer program product, such as a computer program instruction, which, when executed by a computer, can call or provide the method and / or technical solution according to the present disclosure through the operation of the computer. Those skilled in the art should understand that the existence of computer program instructions in computer-readable media includes, but is not limited to, source files, executable files, installation package files, etc., and accordingly, the way in which computer program instructions are executed by a computer includes, but is not limited to: the computer directly executes the instruction, or the computer compiles the instruction and then executes the corresponding compiled program, or the computer reads and executes the instruction, or the computer reads and installs the instruction and then executes the corresponding installed program. Here, the computer-readable medium can be any available computer-readable storage medium or communication medium accessible to the computer.

[0210] Although the embodiments of the present disclosure have been described in conjunction with the accompanying drawings, those skilled in the art may make various modifications and variations without departing from the spirit and scope of the present disclosure, and such modifications and variations are all within the scope defined by the appended claims.

Claims

1. A method for generating narrow space trajectories without a priori SLAM maps, characterized in that: The method comprises: Acquire at least one sensor data of the robot in the narrow space at a target time, perform fusion processing on the at least one sensor data, and generate an initial local map of the robot at the target time; the initial local map at least includes obstacle information of obstacles; Based on the distance from each position in the initial local map to the obstacle, adjusting the safety distance between the robot and the obstacle, and determining the target local map according to the safety distance; Based on preset motion parameters of the robot in the target local map, construct a fifth-order polynomial equation, and determine a smooth trajectory of the robot according to the fifth-order polynomial equation; The smooth trajectory is optimized using a multi-objective cost equation, and the optimized optimal trajectory is used as the target trajectory of the robot in the narrow space.

2. The method according to claim 1, characterized in that The step of acquiring at least one sensor data of the robot in the narrow space at the target time, fusing the at least one sensor data, and generating an initial local map of the robot at the target time includes: Acquire at least one sensor data of the robot at a target time, and synchronize each sensor data of the at least one sensor data to the same time series; Based on the posture information of the robot at the target time, the coordinates of the sensor data are transformed into a posture, and an initial local map of the robot at the target time is determined.

3. The method according to claim 2, characterized in that The method further comprises: By defining the upper and lower bounds of the initial local map, the boundary range of the initial local map is limited; wherein the boundary range is used to characterize the effective perception range of the robot to obstacles; rasterizing the initial local map, converting the coordinates of the sensor data in the boundary range into a raster index; Determine a grid value corresponding to a grid index of the sensor data, and update obstacle information in the initial local map based on the grid value.

4. The method according to claim 3, characterized in that Based on the distance from each position in the initial local map to the obstacle, the safety distance between the robot and the obstacle is adjusted, and the target local map is determined according to the safety distance, which is achieved based on the following steps: Based on a preset expansion radius, an obstacle in the initial local map is expanded to increase an influence range of the obstacle in the initial local map; Determine the Euclidean distance from each grid point in the initial local map to the nearest expanded obstacle, and normalize the Euclidean distance; Constructing an obstacle cost map corresponding to the initial local map according to the normalized Euclidean distance; Determine a safe distance between the robot and the obstacle, determine whether the robot collides with the obstacle according to a relationship between the safe distance and a preset collision detection threshold, and when it is determined that the robot collides with the obstacle, adjust the trajectory of the robot to increase the safe distance between the robot and the obstacle; When it is determined that there is no collision between the robot and the obstacle, the obstacle cost map is determined as the target local map.

5. The method according to claim 4, characterized in that Based on the preset motion parameters of the robot in the target local map, a quintic polynomial equation is constructed, and the smooth trajectory of the robot is determined according to the quintic polynomial equation, which is implemented based on the following steps: Acquire a reference trajectory of the robot in a narrow space, and construct a quintic polynomial equation of a sampling trajectory based on the reference trajectory and preset motion parameters; the sampling trajectory is determined based on the reference trajectory; The polynomial coefficients in the fifth-order polynomial equation of the sampling trajectory are calculated, and the smooth trajectory of the robot is determined according to the polynomial coefficients; wherein the smooth trajectory includes the position, velocity and acceleration of points along the trajectory.

6. The method according to claim 5, characterized in that The smooth trajectory is optimized using a multi-objective cost equation, and the optimized optimal trajectory is used as the target trajectory of the robot in the narrow space, which is achieved based on the following steps: A cost equation is constructed based on the weighted sum of trajectory energy and trajectory length, and a preset optimization algorithm is used to determine that the smooth trajectory corresponding to the cost equation when the cost value is minimized is the optimal trajectory, and the smooth trajectory is used as the target trajectory of the robot in the narrow space.

7. The method according to claim 6, characterized in that The method further comprises: In the optimization process of the smooth trajectory, when it is determined that an obstacle exists in the optimal trajectory, a reverse gradient is added to the cost equation, and the optimal trajectory is adjusted based on the reverse gradient to make the optimal trajectory stay away from the obstacle.

8. A narrow space trajectory generation device without a priori SLAM map, characterized in that: The device includes a first determination module, a second determination module, a trajectory generation module and a trajectory optimization module, wherein: The first determination module is used to obtain at least one sensor data of the robot in the narrow space at a target time, perform fusion processing on the at least one sensor data, and generate an initial local map of the robot at the target time; the initial local map at least includes obstacle information of obstacles; The second determination module is used to adjust the safety distance between the robot and the obstacle based on the distance from each position in the initial local map to the obstacle, and determine the target local map according to the safety distance; The trajectory generation module is used to construct a quintic polynomial equation based on preset motion parameters of the robot in the target local map, and determine the smooth trajectory of the robot according to the quintic polynomial equation; The trajectory optimization module is used to optimize the smooth trajectory using a multi-objective cost equation, and use the optimized optimal trajectory as the target trajectory of the robot in the narrow space.

9. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer instructions, and the computer instructions are used to enable a computer to execute the method for generating narrow space trajectories without a priori SLAM maps according to any one of claims 1 to 7.

10. A computer program product, characterized in that The method comprises computer instructions, wherein the computer instructions are used to enable a computer to execute the method for generating narrow space trajectories without a priori SLAM maps according to any one of claims 1 to 7.

Citation Information

Patent Citations

  • Method for planning operation point sequence and path of industrial robot based on swarm intelligence algorithm

    CN105005301A

  • Robot path planning method, device, electronic equipment and storage medium

    CN110632921A

  • Local path optimization method and system based on sparse banded structure

    CN113296514A

  • Robot local obstacle map construction method and device

    CN117011353A

  • Mobile robot local path planning method based on parameter adaptive dynamic window method

    CN117991786A

Cited By

  • Intelligent logistics management system and method based on artificial intelligence and big data

    CN121810179A