Autonomous navigation method and system for mobile robot without map, and storage medium

By combining robot kinematic modeling and local environment modeling, trajectory generation and screening and trajectory scoring, the problem of traditional navigation methods depend on global maps is solved, and efficient and safe navigation of robots in dynamic environments is achieved.

CN120088419AActive Publication Date: 2025-06-03UNIV OF SCI & TECH OF CHINA

Patent Information

Application Number
CN202510139318.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-02-08
Publication Date
2025-06-03
Estimated Expiration
2045-02-08

AI Technical Summary

Technical Problem

Traditional navigation methods have high dependence on global maps. Once the environment changes, the accuracy and availability of maps will be significantly reduced, resulting in reduced navigation efficiency and even failure of tasks.

Method used

By combining robot kinematic modeling, local environment modeling, trajectory generation and screening, and trajectory scoring, the robot can be efficiently and safely navigation in a dynamic environment. The specific steps include establishing a robot kinematics model, generating a candidate set of travelable trajectory, building a single-frame raster map, expanding the range of rasters occupied by obstacles, and selecting the best trajectory based on the angle difference score.

Benefits of technology

It realizes efficient and secure navigation of robots in dynamic environments without global map support, improves navigation security, adaptability and efficiency, and fills the shortcomings of existing methods in navigation in dynamic environments.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120088419A_ABST
    Figure CN120088419A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of robot navigation, and discloses a map-free mobile robot autonomous navigation method and system and a storage medium, and the method comprises the steps: building a robot kinematic model according to robot incomplete constraints, robot physical parameter constraints and robot state parameters; generating a candidate set of tracks on which the robot can travel based on the kinematic model and the motion constraint conditions; constructing a single-frame grid map, and recording grids occupied by tracks and grids occupied by obstacles; according to the size of the robot and the safety margin, the occupied range of the grids occupied by the obstacles is enlarged; and according to the angle difference, scoring and preferential selection are conducted on the tracks meeting the safety requirement, and the optimal track is selected to drive the robot to move. According to the method, rapid decision making and control can be realized in a scene with a relatively high real-time requirement, the response speed is high, and the safety, the adaptability and the navigation efficiency are relatively high.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of robot navigation, and particularly to an autonomous navigation method and system for a mobile robot without a map. Background Art

[0002] The autonomous navigation technology of mobile robots is an important research direction in the field of robotics, and is widely used in industrial automation, warehousing logistics, service robots, unmanned driving and other fields. Traditional navigation methods usually rely on a pre-constructed global map and use path planning algorithms to formulate driving routes for robots. However, this method has a high dependence on the environment. Once the environment changes, the accuracy and usability of the map will be significantly reduced, resulting in a decline in navigation efficiency or even mission failure.

[0003] To solve this problem, in recent years, mapless autonomous navigation technology has gradually become a research hotspot. This technology relies on sensors to continuously perceive the surrounding environment, dynamically constructs a local map, and combines path planning and motion control algorithms to achieve autonomous navigation of robots in unknown or complex environments. Devices such as lidar, ultrasonic sensors, and cameras play an important role in environmental perception. They can quickly obtain the positions of obstacles and surrounding space information, providing basic data support for navigation. In addition, the environmental modeling method based on grid maps has become one of the mainstream choices for local environmental modeling due to its simple and intuitive representation form and efficient computational characteristics.

[0004] However, in mapless navigation, robots need to cope with the dynamic changes and uncertainties of the environment. Therefore, safety and real-time performance have become key challenges in the development of technology. For example, robots need to quickly avoid obstacles while maintaining a stable motion trajectory. Summary of the Invention

[0005] To solve the above technical problems, the present invention provides an autonomous navigation method, system and storage medium for a mobile robot without a map. By innovatively combining robot kinematic modeling, local environmental modeling, trajectory generation and screening, and trajectory scoring, etc., it realizes efficient and safe navigation of robots in a dynamic environment, filling the deficiencies of the existing technology.

[0006] To solve the above technical problems, the present invention adopts the following technical solutions:

[0007] An autonomous navigation method for a mobile robot without a map, comprising:

[0008] Establish a kinematic model of the robot according to the non-holonomic constraints of the robot, the physical parameter constraints of the robot, and the state parameters of the robot;

[0009] Generate a candidate set of trajectories that the robot can travel based on the kinematic model and motion constraint conditions;

[0010] Construct a single-frame grid map, divide the local environment into grids, map the trajectory to the grid map, and record the grids occupied by the trajectory; use a laser sensor to update the local environment information in real time, and if there are obstacles in the grid, mark it as the grid occupied by the obstacle;

[0011] Expand the occupied range of the grids occupied by the obstacles according to the robot size and safety margin; select the trajectory that meets the safety requirements from the trajectory candidate set, that is: the set of grids occupied by the trajectory has no intersection with the set of grids occupied by the obstacles;

[0012] Score and select the trajectories that meet the safety requirements according to the angle difference, and select the optimal trajectory to drive the robot to move.

[0013] In one embodiment, the robot is regarded as a rigid body structure, and the non-holonomic constraints of the robot include: the robot can only move along its own driving direction and cannot achieve lateral slip; the physical parameter constraints of the robot include the maximum linear velocity and the maximum steering angular velocity of the robot; the state parameters of the robot include the coordinates of the center of mass of the robot chassis, the heading angle, the linear velocity, and the steering angular velocity.

[0014] In one embodiment, the generation of the candidate set of the trajectories that the robot can travel based on the kinematic model and the motion constraint conditions specifically includes:

[0015] Based on the kinematic model and the motion constraint conditions, calculate multiple trajectories with different speeds and steering angular velocities; each trajectory includes three trajectory units;

[0016] Trajectory unit generation process: Select the linear velocity of the robot, define the maximum steering angle angle of the robot, and set the steering angle sampling accuracy per_angle = angle / angle_scale, so as to generate angle_scale * 2 + 1 sets of the first segment of trajectory units, where angle_scale is the variable number of the robot's steering angle;

[0017] Repeat the trajectory unit generation process for the second and third trajectory units, where the end position and end angle of the previous trajectory unit are used as the start position and start angle of the next trajectory unit, and finally obtain the candidate set of the trajectories.

[0018] In one embodiment, the construction of the single-frame grid map, dividing the local environment into grids, mapping the trajectory to the grid map, and recording the grids occupied by the trajectory specifically includes:

[0019] The laser sensor collects the distance data of the objects around the robot, which is processed and mapped into the robot coordinate system to generate a local environment centered on the current position of the robot; the local environment of the robot is divided into grids to form a single-frame grid map; each trajectory in the trajectory candidate set is mapped onto the single-frame grid map; the grid numbers of the grids where the trajectory points fall and the grids within the range of the robot chassis radius around the trajectory points are recorded to obtain the set of grids occupied by the trajectory.

[0020] In one embodiment, the local environment of the robot is a square area centered on the midpoint of the front end of the robot chassis with a side length of a set value.

[0021] In one embodiment, the local environment information is updated in real time using the laser sensor. If there is an obstacle in the grid, it is marked as the grid occupied by the obstacle, which specifically includes:

[0022] According to the measurement results of the laser sensor, the state of each grid is judged. If there is an obstacle in the grid, it is marked as the grid occupied by the obstacle; if there is no obstacle in the grid and it is passable for the robot, it is marked as a free grid.

[0023] In one embodiment, the occupied range of the grid occupied by the obstacle is expanded according to the robot size and safety margin, which specifically includes:

[0024] An expansion value is set according to the robot size and safety margin. The expansion is based on the Euclidean distance, that is, with each grid occupied by the obstacle as the center and the expansion value as the radius, it expands outward, and all free grids falling within the expanded range are re-marked as the grids occupied by the obstacle.

[0025] In one embodiment, the trajectories that meet the safety requirements are scored and optimized according to the angle difference, and the optimal trajectory is selected to drive the robot to move, which specifically includes:

[0026] In the coordinate system of the robot, the included angle between the direction of the target point and the moving direction of the robot is defined as goalDir, the included angle between the direction of the end point of the trajectory and the moving direction of the robot is defined as MPDir, and the score of the current trajectory is score:

[0027]

[0028] Among them, the angle difference angDiff = |goalDir - MPDir|. The smaller the angle difference, the closer the direction of the end point of the current trajectory is to the target point;

[0029] Traverse each trajectory that meets the safety requirements, and take the trajectory with the highest score as the optimal trajectory.

[0030] An autonomous navigation system for a mobile robot without a map, comprising:

[0031] A model establishment module, which establishes a kinematic model of the robot according to the non-holonomic constraints of the robot, the physical parameter constraints of the robot, and the state parameters of the robot;

[0032] A trajectory generation module, which generates a candidate set of trajectories that the robot can travel based on the kinematic model and the motion constraint conditions;

[0033] A grid annotation module, which constructs a single-frame grid map, divides the local environment into grids, maps the trajectory to the grid map, and records the grids occupied by the trajectory; uses a laser sensor to update the local environment information in real time, and if there are obstacles in the grid, it is marked as the grid occupied by the obstacle;

[0034] A grid dilation module, which expands the occupancy range of the grids occupied by the obstacles according to the robot size and safety margin; selects the trajectories that meet the safety requirements from the trajectory candidate set, that is: the set of grids occupied by the trajectory and the set of grids occupied by the obstacles have no intersection;

[0035] A scoring module, which scores and selects the best among the trajectories that meet the safety requirements according to the angle difference, and selects the optimal trajectory to drive the robot to move.

[0036] The system of the present invention corresponds to the method, and the preferred embodiments applicable to the method are also applicable to the system.

[0037] A computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, the steps of the method in any one of the embodiments are implemented.

[0038] Compared with the prior art, the beneficial technical effects of the present invention are:

[0039] The present invention can be widely applied to fields such as warehousing logistics, unmanned delivery, and security patrol, and can realize the autonomous navigation of the robot in a dynamic environment without the support of a global map.

[0040] The present invention can define obstacle avoidance rules according to different conditions, making the design and implementation of the strategy more intuitive and understandable; the present invention can achieve fast decision-making and control in scenarios with high real-time requirements, and has a fast response speed; the present invention has higher safety, adaptability, and navigation efficiency, fills the gap in the navigation of existing methods in a dynamic environment, and provides technical support for the popularization of mobile robots in practical applications. Description of the Drawings

[0041] Figure 1 It is a schematic flowchart of the navigation method in the embodiment of the present invention;

[0042] Figure 2Schematic diagram of the trajectory that the robot generated in the embodiment of the present invention can travel;

[0043] Figure 3 Occupancy map of the trajectory points of the grid map in the embodiment of the present invention;

[0044] Figure 4 Schematic diagram of the first trajectory unit output in the embodiment of the present invention. Detailed implementation manners

[0045] A preferred implementation manner of the present invention will be described in detail below with reference to the accompanying drawings.

[0046] As Figure 1 shown, an autonomous navigation method for a mobile robot without a map in the present invention specifically includes the following steps:

[0047] Step S1: Establish a kinematic model of the robot according to the non - holonomic constraints of the robot, the physical parameter constraints of the robot, and the state parameters of the robot.

[0048] Step S2: Generate a candidate set of the trajectories that the robot can travel based on the kinematic model and the motion constraint conditions.

[0049] Step S3: Construct a single - frame grid map, divide the local environment into grids, map the trajectory to the grid map, and record the grids occupied by the trajectory; use a laser sensor to update the local environment information in real time. If there are obstacles in the grid, mark it as the grid occupied by the obstacles.

[0050] Step S4: Expand the occupancy range of the grids occupied by the obstacles according to the robot size and safety margin; select the trajectories that meet the safety requirements from the trajectory candidate set, that is: the set of grids occupied by the trajectory and the set of grids occupied by the obstacles have no intersection.

[0051] Step S5: Score and select the trajectories that meet the safety requirements according to the angle difference, and select the optimal trajectory to drive the robot to move.

[0052] By comprehensively applying technologies such as robot kinematic modeling, local environment modeling, trajectory generation and screening, and trajectory scoring, the present invention designs an efficient, real - time, and safe autonomous navigation scheme, which is applicable to mobile robots in dynamic and complex environments, and solves the problems of the dependence of traditional navigation methods on the global map and the low navigation efficiency and insufficient safety in dynamic environments.

[0053] In one embodiment, the robot is regarded as a rigid body structure. The nonholonomic constraints of the robot may include: the robot can only move along its own driving direction and cannot achieve lateral slip; the physical parameter constraints of the robot may include the maximum linear velocity and the maximum steering angular velocity of the robot; the state parameters of the robot may include the coordinates of the centroid of the robot chassis, the heading angle, the linear velocity, and the steering angular velocity.

[0054] According to the physical model of the robot chassis, the present invention establishes a suitable kinematic model of the robot. It can be assumed that the mobile robot is a rigid body structure, and its motion satisfies the nonholonomic constraint conditions, that is, the robot can only move along its own driving direction and cannot achieve lateral slip. The state of the robot includes the position and the direction angle. The kinematic model is established by describing the change relationship of the coordinates of the centroid of the robot chassis and the dynamic change of the heading angle. The motion state of the mobile robot is jointly determined by the linear velocity and the steering angular velocity, where the linear velocity is used to describe the forward or backward movement of the robot along the driving direction, and the steering angular velocity is used to describe the steering change of the robot. In addition, the motion of the robot needs to satisfy the constraints of physical parameters, including the limitations of the maximum linear velocity and the maximum steering angular velocity. Through such modeling, the motion behavior of the robot can be accurately described, and theoretical support can be provided for functions such as path planning and trajectory tracking.

[0055] In one embodiment, generating a candidate set of trajectories that the robot can travel in step S2 specifically includes:

[0056] Based on the kinematic model and the motion constraint conditions, calculate multiple trajectories with different speeds and steering angular velocities; each trajectory includes three trajectory units;

[0057] Trajectory unit generation process: Select the linear velocity of the robot, define the maximum steering angle angle of the mobile robot, and set the steering angle sampling precision per_angle = angle / angle_scale, so as to generate angle_scale * 2 + 1 sets of the first segment of trajectory units, where angle_scale is the variable number of the steering angle of the robot;

[0058] Repeat the trajectory unit generation process for the second and third segments of trajectory units. Among them, the end position and end angle of the previous segment of trajectory unit are used as the start position and start angle of the next segment of trajectory unit, and finally a candidate set of trajectories is obtained.

[0059] Based on the kinematic model of the robot, a series of trajectories that meet the motion constraint conditions are generated through sampling, providing a decision-making basis for path planning and real-time control. The sampling process takes into account the dynamic characteristics of the robot, the turning radius, as well as the maximum speed and maximum acceleration limits to ensure the feasibility of the generated trajectories. First, according to the kinematic model and dynamic constraint conditions of the robot, multiple trajectories with different speeds and steering angular velocities are calculated. This process generates three trajectory units through offline sampling. The length constraint of each trajectory is default set to 1 meter and can be modified according to different robot chassis models. Similarly, the sampling accuracy of each trajectory can also be set. For example, for a differential drive robot, the sampling steering angular velocity range of a single trajectory unit is set to plus or minus Π / 3 (unit: rad / s), and the accuracy is 1 / 6 of the total sampling angle range (i.e., angle_scale = 6). Then each trajectory unit will have 13 different sampling directions, denoted as 13 groups, and each group has a corresponding group ID. Each trajectory has three trajectory units, that is, 169 (13×13) trajectories are generated for each group, and a total of 2,197 (13×13×13) trajectories are generated, and the corresponding trajectory numbers pathID are named. The points on the trajectory are sampled every 0.1 s, and the sampled trajectory points are saved to a data file for subsequent navigation use. For an Ackermann chassis robot, the sampling steering angular velocity range of a single trajectory unit is set to plus or minus Π / 6 (unit: rad / s), and the accuracy is set the same as that of the differential drive robot.

[0060] The specific method of using C++ to simulate offline trajectory generation is as follows: Define the maximum steering angle of the mobile robot as angle, and the steering angle sampling accuracy per_angle = angle / 6. Therefore, angle_scale = 6, and 13 (angle_scale×2 + 1) groups of trajectory units can be generated. Taking the first group of trajectory units as an example, at this time, the linear velocity of the robot is selected as vehicleV, and the steering angular velocity ranges from -angle to angle (in the previous text, angle is the maximum steering angle. Here, dividing the maximum steering angle by the unit time, the obtained numerical value of the maximum steering angular velocity is also angle). The length dis of each trajectory unit is 1 meter. Define a variable path_list1 of two-dimensional vector type to store the sampling points of the first group of trajectory units, and define vector type variables endPoint_list1 and endYaw_list1 to store the end position and end angle of the first group of trajectory units respectively.

[0061] angle_scale is the variable number of the robot's steering angle. The robot has angle_scale different angles when turning left and also angle_scale different angles when turning right. There are a total of angle_scale×2 + 1 selectable steering angles, thus generating the corresponding angle_scale×2 + 1 groups of trajectory units.

[0062] Table 1, Generation code of the first - stage trajectory unit:

[0063]

[0064] The generation code of the first - stage trajectory unit is shown in Table 1. In Table 1, the first 4 lines of code respectively define variables for storing the origin, the positions of path points on the first - stage trajectory unit, the end - point position of the first - stage trajectory unit, and the robot's orientation at the end - point of the first - stage trajectory unit. The one_shift_cal() function in the 5th line generates a trajectory according to parameters such as angle mentioned above according to the rules in Table 2 and writes it into the corresponding variables..

[0065] After that, the one_shift_cal() function is used to generate corresponding trajectories for each turning angular velocity. Then, the trajectory is uniformly sampled dis / vehicleV times from 0 to the length dis of the trajectory unit, and the data is stored in the vector path_list1[i]. At the same time, the end - point position and the end - point angle are stored. The code of the one_shift_cal() function is shown in Table 2.

[0066] Table 2, Code of the one_shift_cal() function:

[0067]

[0068] The code in Table 2 first has a layer of loop. According to the origin, it traverses each turning angular velocity to generate a corresponding trajectory. The 3rd line records the current turning angular velocity i_angle traversed by the layer of loop. The 4th line takes the origin position as the starting point of the trajectory to be generated. The variable in the 5th line records the starting orientation of the robot, and the variable in the 6th line records the trajectory to be generated currently. Then, the 7th to 13th lines enter a nested loop to loop - generate path points on the current trajectory. Finally, the 14th to 16th lines fill the corresponding content into the corresponding variables.

[0069] The output first - stage trajectory unit is as Figure 4 shown.

[0070] Subsequently, the second - stage and third - stage trajectory units are also generated by loop iteration using the one_shift_cal() function. The end - point position and the end - point angle of the previous - stage trajectory unit are the starting position and the starting angle of the next - stage trajectory unit. Finally, the trajectory that the robot can travel as shown in Figure 2 is obtained.

[0071] In one embodiment, in step S3, a single - frame grid map is constructed, the local environment is divided into grids, the trajectory is mapped to the grid map, and the grids occupied by the trajectory are recorded, specifically including:

[0072] The laser sensor collects the distance data of the objects around the robot. After being processed, the data is mapped into the robot coordinate system to generate a local environment centered on the current position of the robot. The local environment of the robot is divided into grids to form a single-frame grid map. Each trajectory in the trajectory candidate set is mapped onto the single-frame grid map. The grid numbers of the grids where the trajectory points fall and the grids within the range of the robot chassis radius around the trajectory points are recorded to obtain the set of grids occupied by the trajectory.

[0073] Using the laser sensor to construct a single-frame grid map is an important step in the mapless autonomous navigation of mobile robots. The aim is to model the environment around the robot using the observation data of a single frame of the laser sensor and provide real-time environmental information support for path planning and motion decision-making. In this step, the local environment is divided into regular grid cells through the expression method of the grid map. For the convenience of subsequent navigation planning, the sampled trajectories need to be mapped onto a single-frame grid map based on the robot coordinate system. The expression method of the grid map is to divide the local environment into regular grids. Considering a square map with a side length of 1.5 m centered on the midpoint of the front end of the robot chassis, the accuracy of each grid is 5 cm. Taking the lower right corner of this square map as grid No. 1, the grids are numbered sequentially from bottom to top and from right to left. The grid numbers of the grids where each trajectory point falls and the grids within the range of the robot chassis radius around the trajectory points are recorded, so as to record the position of each trajectory mapped onto the grid map, which is the grid occupied by this trajectory, and save it to a data file. The mapping result is as Figure 3 shown.

[0074] In one embodiment, the local environment of the robot is a square area centered on the midpoint of the front end of the robot chassis with a side length of a set value.

[0075] In one embodiment, in step S3, when using the laser sensor to update the local environment information in real time, if there is an obstacle in the grid, it is marked as the grid occupied by the obstacle, which specifically includes:

[0076] Judging the state of each grid according to the measurement result of the laser sensor. If there is an obstacle in the grid, it is marked as the grid occupied by the obstacle; if there is no obstacle in the grid and it is passable for the robot, it is marked as a free grid.

[0077] In the form of grid map expression, the local environment is divided into regular grids, and the status of each grid is labeled according to the measurement results of the lidar. The center of the single-frame grid map is always the midpoint of the front end of the robot chassis, which is updated as the robot moves and the laser data changes. First, the laser sensor collects the distance data around the robot. After being processed, these data are mapped into the robot coordinate system to generate the local environment information centered on the current position of the robot. Subsequently, the status of each grid is judged according to the measurement results: if there is an obstacle in the grid, it is labeled as an obstacle-occupied grid; if there is no obstacle in the grid and it is passable for the robot, it is labeled as a free grid; the remaining unknown areas remain undefined.

[0078] In one embodiment, expanding the occupied range of the obstacle-occupied grid according to the robot size and safety margin in step S4 specifically includes:

[0079] Set the expansion value according to the robot size and safety margin. The expansion is based on the Euclidean distance, that is, with each occupied grid as the center, expand outward with the expansion value as the radius, and all free grids falling within the expanded range are re-labeled as obstacle-occupied grids.

[0080] Expanding the obstacle-occupied grid is an important step to improve the navigation safety of the mobile robot. The aim is to avoid the collision risk that may be caused by the robot getting too close to the obstacle by expanding the occupied range of the obstacle in the grid map. Specifically, after the single-frame grid map is constructed, the obstacle-occupied grid is expanded according to the size of the robot body and the safety margin. The expansion operation is achieved by labeling a certain range around the obstacle-occupied grid as a new occupied state, and this range is determined according to the size, dynamic characteristics and sensor accuracy of the robot itself. The expansion operation is based on the Euclidean distance, that is, with each obstacle-occupied grid as the center, expand a certain grid radius outward, and all free grids falling within this range are re-labeled as the state occupied by the obstacle.

[0081] In one embodiment, feasible trajectory screening is a key step in the mapless autonomous navigation of the mobile robot. The aim is to select a trajectory that not only meets the kinematic constraints but also satisfies the safety requirements from the generated trajectory candidate set to provide the optimal decision for actual execution. In this step, first, the motion element information generated offline is read. In order to reduce the reading cost, these motion element information are stored in the corresponding txt file in the form of points and read before the node is started. After being read, they are stored in the memory in the form of a container. Then, the grids occupied by the trajectory are cross-checked with the grids occupied by the obstacles to judge whether each trajectory collides with the expanded obstacle-occupied grid. Any trajectory intersecting with the obstacle will be immediately excluded to ensure the safety of the path planning.

[0082] In one embodiment, in step S5, according to the angle difference, the trajectories that meet the safety requirements are scored and optimized, and the optimal trajectory is selected to drive the robot to move, specifically including:

[0083] In the coordinate system of the robot, define the included angle between the target point direction and the robot moving direction as goalDir, the included angle between the trajectory end point direction and the robot moving direction as MPDir, and the score of the current trajectory as score:

[0084]

[0085] Among them, the angle difference angDiff = |goalDir - MPDir|. The smaller the angle difference, the closer the end point of the current trajectory is to the target point direction;

[0086] Traverse each trajectory that meets the safety requirements, and take the trajectory with the highest score as the optimal trajectory.

[0087] The target point is the final position that the robot navigation needs to reach, which is given by the user before the navigation starts.

[0088] Trajectory scoring is an important step in optimizing feasible trajectories, which is used to evaluate the quality of each trajectory and provide a basis for the final trajectory selection. The present invention uses a square root function to normalize the angle difference to ensure that the score of the trajectory is within the range of [0, 1]. Determine the linear velocity of the robot, and according to the trajectory group to which the optimal trajectory belongs, determine the steering angular velocity, and publish it in the form of a ros message to drive the robot to move. In addition, the method in the present invention does not use positioning information when evaluating the quality of trajectories, but odometer information is still required for positioning in the autonomous navigation of the robot. When the system is specifically deployed, odometer methods such as VINS-fusion can be used for the positioning of the mobile robot.

[0089] The present invention also discloses a mobile robot autonomous navigation system without a map, including:

[0090] A model establishment module, which establishes a kinematic model of the robot according to the non-holonomic constraints of the robot, the physical parameter constraints of the robot, and the state parameters of the robot;

[0091] A trajectory generation module, which generates a candidate set of trajectories that the robot can travel based on the kinematic model and the motion constraint conditions;

[0092] A grid annotation module, which constructs a single-frame grid map, divides the local environment into grids, maps the trajectories to the grid map, and records the grids occupied by the trajectories; uses a laser sensor to update the local environment information in real time, and if there are obstacles in the grid, it is marked as an obstacle-occupied grid;

[0093] The grid expansion module expands the occupied range of the grid occupied by the obstacle according to the robot size and safety margin; selects a trajectory that meets the safety requirements from the trajectory candidate set, that is: the set of grids occupied by the trajectory has no intersection with the set of grids occupied by the obstacle;

[0094] The scoring module scores and selects the best from the trajectories that meet the safety requirements according to the angle difference, and selects the optimal trajectory to drive the robot to move.

[0095] The system in the present invention corresponds to the method, and the specific technical solutions applicable to the method are equally applicable to the system.

[0096] In an exemplary embodiment, a computer-readable storage medium including instructions is also provided, such as a memory including instructions, and the above instructions can be executed by a processor to complete the above method. The storage medium may be a computer-readable storage medium. For example, the computer-readable storage medium may be a ROM, a random access memory (RAM), a CD-ROM, a magnetic tape, a floppy disk, and an optical data storage device, etc.

[0097] For those skilled in the art, it is obvious that the present invention is not limited to the details of the above exemplary embodiments, and without departing from the spirit or basic characteristics of the present invention, the present invention can be implemented in other specific forms. Therefore, from any point of view, the embodiments should be regarded as exemplary and non-limiting. The scope of the present invention is defined by the appended claims rather than the above description. Therefore, it is intended to include all changes within the meaning and scope of the equivalent elements of the claims in the present invention, and any reference signs in the claims should not be regarded as limiting the claimed rights.

[0098] In addition, it should be understood that although this specification is described according to embodiments, not every embodiment only contains an independent technical solution. This narrative way of the specification is only for clarity. Those skilled in the art should regard the specification as a whole, and the technical solutions in each embodiment can also be appropriately combined to form other embodiments that can be understood by those skilled in the art.

Claims

1. A method for autonomous navigation of a mobile robot without a map, characterized in that: include: Establish the robot kinematics model according to the robot's nonholonomic constraints, robot's physical parameter constraints, and robot's state parameters; Generate a candidate set of trajectories that the robot can travel based on the kinematic model and motion constraints; Construct a single-frame grid map, divide the local environment into grids, map the trajectory to the grid map, and record the grids occupied by the trajectory; use the laser sensor to update the local environment information in real time, and if there are obstacles in the grid, mark it as the grid occupied by the obstacle; The grid occupied by the obstacle is expanded according to the robot size and safety margin; a trajectory that meets the safety requirements is selected from the trajectory candidate set, that is, the grid set occupied by the trajectory has no intersection with the grid set occupied by the obstacle; The trajectories that meet the safety requirements are scored and selected based on the angle difference, and the optimal trajectory is selected to drive the robot to move.

2. The method for autonomous navigation of a mobile robot without a map according to claim 1, characterized in that: The robot is regarded as a rigid body structure, and the non-holonomic constraints of the robot include: the robot can only move along its own driving direction and cannot achieve lateral sliding; the physical parameter constraints of the robot include the maximum linear velocity and maximum steering angular velocity of the robot; the state parameters of the robot include the coordinates of the center of mass of the robot chassis, heading angle, linear velocity and steering angular velocity.

3. The method for autonomous navigation of a mobile robot without a map according to claim 1, characterized in that: The candidate set of trajectories that the robot can travel is generated based on the kinematic model and motion constraints, specifically including: Based on the kinematic model and motion constraints, multiple trajectories with different speeds and steering angular velocities are calculated; each trajectory includes three trajectory units; The process of generating trajectory units: select the linear speed of the robot, define the maximum steering angle angle of the robot, and set the steering angle sampling accuracy per_angle = angle / angle_scale, thereby generating angle_scale*2+1 groups of the first segment trajectory units, where angle_scale is the variable number of the robot's steering angle; The trajectory unit generation process is repeated for the second and third trajectory units, wherein the end position and end angle of the previous trajectory unit are used as the starting position and starting angle of the next trajectory unit, and finally the candidate set of the trajectory is obtained.

4. The method for autonomous navigation of a mobile robot without a map according to claim 1, characterized in that: The single-frame grid map is constructed to divide the local environment into grids, map the trajectory to the grid map, and record the grids occupied by the trajectory, specifically including: The laser sensor collects distance data of objects around the robot, maps it to the robot coordinate system after processing, and generates a local environment centered on the current position of the robot; the local environment of the robot is divided into grids to form a single-frame grid map; each trajectory in the trajectory candidate set is mapped to the single-frame grid map; the grid number of the trajectory point and the grid number within the radius of the robot chassis around the trajectory point are recorded to obtain the grid set occupied by the trajectory.

5. The method for autonomous navigation of a mobile robot without a map according to claim 4, characterized in that: The local environment of the robot is a square area with the midpoint of the front end of the robot chassis as the center and a side length as a set value.

6. The method for autonomous navigation of a mobile robot without a map according to claim 1, characterized in that: The method of using a laser sensor to update the local environment information in real time, if there is an obstacle in the grid, marks it as the grid occupied by the obstacle, specifically includes: The status of each grid is determined based on the measurement results of the laser sensor. If there is an obstacle in the grid, it is marked as a grid occupied by the obstacle; if there is no obstacle in the grid and the robot can pass through it, it is marked as a free grid.

7. The method for autonomous navigation of a mobile robot without a map according to claim 1, characterized in that: The step of expanding the range of the grid occupied by the obstacle according to the size of the robot and the safety margin specifically includes: The expansion value is set according to the robot size and safety margin. The expansion is based on the Euclidean distance, that is, the grid occupied by each obstacle is taken as the center and the expansion value is used as the radius to expand outward. All free grids falling within the expansion range are re-marked as grids occupied by obstacles.

8. The method for autonomous navigation of a mobile robot without a map according to claim 1, characterized in that: The trajectories that meet the safety requirements are scored and selected according to the angle difference, and the optimal trajectory is selected to drive the robot to move, specifically including: In the robot's coordinate system, the angle between the target point and the robot's moving direction is defined as goalDir, the angle between the trajectory end point and the robot's moving direction is defined as MPDir, and the score of the current trajectory is: Among them, the angle difference angDiff = |goalDir-MPDir|, the smaller the angle difference, the closer the end point of the current trajectory is to the direction of the target point; Traverse each trajectory that meets the safety requirements and take the trajectory with the highest score as the optimal trajectory.

9. A mobile robot autonomous navigation system without a map, characterized in that: include: The model building module builds the robot kinematics model based on the robot's nonholonomic constraints, robot's physical parameter constraints, and robot's state parameters; The trajectory generation module generates a candidate set of trajectories that the robot can travel based on the kinematic model and motion constraints; The grid annotation module constructs a single-frame grid map, divides the local environment into grids, maps the trajectory to the grid map, and records the grids occupied by the trajectory; uses laser sensors to update local environment information in real time, and if there are obstacles in the grid, it is marked as the grid occupied by the obstacle; The grid expansion module expands the grid occupied by obstacles according to the robot size and safety margin; selects trajectories that meet safety requirements from the trajectory candidate set, that is, the grid set occupied by the trajectory has no intersection with the grid set occupied by obstacles; The scoring module scores and selects the trajectories that meet the safety requirements according to the angle differences, and selects the optimal trajectory to drive the robot to move.

10. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 8 are implemented.

Citation Information

Patent Citations

  • Real-time trajectory planning method considering appearance of unmanned rotorcraft in complex environment

    CN115097857A

  • Robot navigation planning method and device in non-flat ground environment and robot

    CN115752474A

  • Unmanned surface vessel energy consumption minimum trajectory planning method

    CN116466701A

Cited By

  • Exploration operation method and system in graph-free mode and robot

    CN120949787A