Path planning method and device for mobile robot and mobile robot

By obtaining the path planning tasks and movable areas of heavy mobile robots in real time, determining unpassed pass points and calculating the cost of mobile losses, it solves the problem that conventional path planning algorithms are difficult to adapt to the path planning needs of heavy mobile robots, and realizes efficient and safe path planning.

CN119225382BActive Publication Date: 2025-03-18ZHONGKE YUNGU TECH
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411760302.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-12-03
Publication Date
2025-03-18
Estimated Expiration
2044-12-03

AI Technical Summary

Technical Problem

Conventional path planning algorithms in the prior art are difficult to adapt to the path planning needs of heavy mobile robots in special scenarios, affecting their mobility efficiency and safety.

Method used

By obtaining the path planning tasks and movable areas of the mobile robot, determining the unpassed pass point as the first pass point, and calculating the movement loss cost based on the steering needs and the number of steering times, and planning the path in real time to reduce steering phenomenon.

Benefits of technology

It effectively reduces the steering phenomenon of mobile robots, reduces the overall transportation time, avoids deadlock, and reduces the risk of collision between the vehicle body and the road, improves work efficiency and the safety of the warehousing and logistics system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119225382B_ABST
    Figure CN119225382B_ABST
Patent Text Reader

Abstract

The present application discloses a path planning method, device and mobile robot for a mobile robot, which relates to the technical field of path planning. The method includes: in the process of the mobile robot moving from the path planning starting point to the path planning end point, determining the waypoints adjacent to the current waypoint of the mobile robot that have not been passed as the first waypoints; for each first waypoint, determining the turning requirement of the mobile robot at the first waypoint; obtaining the first turning number of the mobile robot at the current waypoint in real time; determining the movement loss cost of the mobile robot passing the first waypoint when performing the path planning task according to the turning requirement and the first turning number, so as to determine the target waypoint from multiple first waypoints based on the movement loss cost, and make the mobile robot go to the target waypoint until it reaches the path planning end point. The above scheme can effectively reduce the turning phenomenon of the mobile robot and improve the working efficiency and safety of the mobile robot.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the technical field of path planning, and in particular to a path planning method and device for a mobile robot and a mobile robot. Background Art

[0002] In actual industrial production lines, there are many types of heavy mobile robots. These robots have the ability to carry heavier weights, but this also leads to a loss in flexibility. In the process of material transportation, heavy robots cannot rotate freely like small robots, but must enter the material area at a specific angle. Conventional path planning algorithms are difficult to adapt to the path planning requirements of such mobile robots in special scenarios, affecting the mobility and safety of mobile robots. Summary of the invention

[0003] The purpose of the embodiments of the present application is to provide a path planning method, device and mobile robot for a mobile robot, so as to solve the technical problem that the conventional path planning algorithm in the prior art affects the movement efficiency and safety of the mobile robot.

[0004] In order to achieve the above-mentioned object, the present application provides a path planning method for a mobile robot in a first aspect, the method comprising:

[0005] Obtain the path planning task and movable area of ​​the mobile robot, the path planning task includes the path planning starting point and the path planning end point;

[0006] When the mobile robot moves from a path planning starting point toward a path planning end point in a movable area, a waypoint adjacent to a current waypoint of the mobile robot and not passed by the mobile robot is determined as a first waypoint;

[0007] For each first waypoint, determining a turning requirement of the mobile robot when the mobile robot moves from the current waypoint toward the first waypoint, the turning requirement including turning required and turning not required;

[0008] Obtain the first turning number of the mobile robot from the starting point of the path planning to the current passing point in real time;

[0009] For each first waypoint, determining a movement loss cost of the mobile robot moving from a path planning starting point through the first waypoint to a path planning end point according to a turning requirement and a first turning number;

[0010] A target waypoint is determined from a plurality of first waypoints according to the movement loss cost of each first waypoint, so that the mobile robot moves from the current waypoint to the target waypoint until reaching the end point of the path planning.

[0011] In an embodiment of the present application, for each first waypoint, determining the movement loss cost of the mobile robot moving from the path planning starting point to the path planning end point through the first waypoint according to the turning requirement and the first number of turns includes: for each first waypoint, determining the first turning cost of the mobile robot moving from the current waypoint to the first waypoint according to the turning requirement; for each first waypoint, determining the second number of turns for the mobile robot to move from the path planning starting point to the first waypoint according to the turning requirement and the first number of turns; for each first waypoint, determining the second turning cost for the mobile robot to move from the path planning starting point to the first waypoint according to the second number of turns; for each first waypoint, determining the movement loss cost of the mobile robot moving from the path planning starting point to the path planning end point through the first waypoint according to the first turning cost and the second turning cost.

[0012] In an embodiment of the present application, for each first waypoint, determining the second turning cost of the mobile robot moving from the starting point of path planning to the first waypoint based on the second number of turns includes: obtaining the first angle of the mobile robot's body at each first waypoint, and the second angle of the object to be aligned included in the end point of the path planning; for each first waypoint, determining the target coefficient value corresponding to the first waypoint based on the first angle and the second angle; for each first waypoint, determining the second turning cost of the mobile robot moving from the starting point of path planning to the first waypoint based on the second number of turns and the target coefficient value.

[0013] In an embodiment of the present application, for each first waypoint, determining the target coefficient value corresponding to the first waypoint according to the first angle and the second angle includes calculating the target coefficient value according to the following formula (1):

[0014] (1)

[0015] in, Refers to the target coefficient value corresponding to each first waypoint, It refers to the first angle of the mobile robot's body at each first waypoint. Refers to the second angle of the object to be aligned.

[0016] In an embodiment of the present application, for each first waypoint, determining the second turning cost of the mobile robot moving from the path planning starting point to the first waypoint according to the second turning number and the target coefficient value includes calculating the second turning cost according to the following formula (2):

[0017] (2)

[0018] in, It refers to the second turning cost of the mobile robot moving from the starting point of the path planning to each first waypoint. Refers to the target coefficient value corresponding to each first waypoint, refers to the proportional coefficient in the steering penalty function, is the bias coefficient, k is the second turn number, is the set of positive integers.

[0019] In an embodiment of the present application, for each first waypoint, determining the movement loss cost of the mobile robot moving from the path planning starting point through the first waypoint to the path planning end point based on the first turning cost and the second turning cost includes: obtaining the first coordinate of each first waypoint and the end point coordinate of the path planning end point; for each first waypoint, determining the distance that the mobile robot moves from the first waypoint to the path planning end point based on the first coordinate and the end point coordinate; for each first waypoint, determining the movement loss cost of the mobile robot moving from the path planning starting point through the first waypoint to the path planning end point based on the distance, the first turning cost and the second turning cost.

[0020] In an embodiment of the present application, for each first waypoint, determining the turning requirement of the mobile robot when moving from the current waypoint toward the first waypoint includes: determining a waypoint that the mobile robot has passed among the waypoints adjacent to the current waypoint of the mobile robot as a second waypoint; obtaining the first coordinate of each first waypoint, the second coordinate of the second waypoint, and the current coordinate of the current waypoint; for each first waypoint, determining whether the first waypoint, the second waypoint, and the current waypoint are on the same straight line based on the first coordinate, the second coordinate, and the current coordinate; for each first waypoint, if the first waypoint, the second waypoint, and the current waypoint are on the same straight line, determining that the turning requirement of the mobile robot when moving from the current waypoint toward the first waypoint is no turning required; for each first waypoint, if the first waypoint, the second waypoint, and the current waypoint are not on the same straight line, determining that the turning requirement of the mobile robot when moving from the current waypoint toward the first waypoint is required turning.

[0021] In an embodiment of the present application, for each first waypoint, determining the turning requirement of the mobile robot when moving from the current waypoint toward the first waypoint includes: obtaining a third angle of the mobile robot's body at the current waypoint, and determining the first angle of the mobile robot's body at each first waypoint; for each first waypoint, when the first angle and the third angle are the same, determining that the turning requirement of the mobile robot when moving from the current waypoint toward the first waypoint is no turning required; for each first waypoint, when the first angle and the third angle are different, determining that the turning requirement of the mobile robot when moving from the current waypoint toward the first waypoint is required turning.

[0022] A second aspect of the present application provides a path planning device for a mobile robot, comprising:

[0023] a memory configured to store instructions;

[0024] A processor is configured to call the instructions from the memory and implement the path planning method for a mobile robot when executing the instructions.

[0025] A third aspect of the present application provides a mobile robot, characterized in that it includes the above-mentioned path planning device for the mobile robot.

[0026] A fourth aspect of the present application provides a machine-readable storage medium having instructions stored thereon, the instructions being used to enable a machine to execute the above-mentioned path planning method for a mobile robot.

[0027] Through the above technical scheme, the path planning task and movable area of ​​the mobile robot are obtained, and the path planning task includes the path planning starting point and the path planning end point; when the mobile robot moves from the path planning starting point to the path planning end point, the waypoints adjacent to the current viapoint of the mobile robot that the mobile robot has not passed through are determined as the first waypoints; for each first waypoint, the turning requirement of the mobile robot when moving from the current viapoint to the first waypoint is determined, and the turning requirement includes the need for turning and the need for not turning; the first turning number of the mobile robot moving from the path planning starting point to the current viapoint is obtained in real time; for each first waypoint, the movement loss cost of the mobile robot moving from the path planning starting point to the path planning end point through the first waypoint is determined according to the turning requirement and the first turning number; according to the movement loss cost of each first waypoint, the target waypoint is determined from multiple first waypoints, so that the mobile robot moves from the current viapoint to the target waypoint until it reaches the path planning end point. The above solution takes into account the mobile robot's turning needs and the low cost of movement loss caused by the number of turns, plans the path of the mobile robot in real time, and completes the path navigation by inputting the starting point of the path planning task. It can effectively reduce the turning phenomenon of the mobile robot, reduce the overall transportation time, avoid deadlock, and reduce the risk of collision between the vehicle body and the road. This not only improves the working efficiency of the mobile robot, but also enhances the safety of the warehousing and logistics system.

[0028] Other features and advantages of the embodiments of the present application will be described in detail in the subsequent specific implementation section. BRIEF DESCRIPTION OF THE DRAWINGS

[0029] The accompanying drawings are used to provide a further understanding of the embodiments of the present application and constitute a part of the specification. Together with the following specific implementations, they are used to explain the embodiments of the present application, but do not constitute a limitation on the embodiments of the present application. In the accompanying drawings:

[0030] Figure 1 A schematic diagram of a process flow of a path planning method for a mobile robot according to an embodiment of the present application is schematically shown;

[0031] Figure 2 The structure block diagram of a path planning device for a mobile robot according to an embodiment of the present application is schematically shown;

[0032] Figure 3 The schematic diagram shows a structure of a computer device according to an embodiment of the present application. DETAILED DESCRIPTION

[0033] In order to make the purpose, technical scheme and advantages of the embodiments of the present application clearer, the technical scheme in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. It should be understood that the specific implementation methods described herein are only used to illustrate and explain the embodiments of the present application, and are not used to limit the embodiments of the present application. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without making creative work are within the scope of protection of this application.

[0034] In addition, if there are descriptions involving "first", "second", etc. in the embodiments of the present application, the descriptions of "first", "second", etc. are only used for descriptive purposes and cannot be understood as indicating or suggesting their relative importance or implicitly indicating the number of technical features indicated. Therefore, the features defined as "first" and "second" may explicitly or implicitly include at least one of the features. In addition, the technical solutions between the various embodiments can be combined with each other, but they must be based on the ability of ordinary technicians in the field to implement them. When the combination of technical solutions is contradictory or cannot be implemented, it should be deemed that such combination of technical solutions does not exist and is not within the scope of protection required by this application.

[0035] Figure 1 The following schematically shows a flow chart of a path planning method for a mobile robot according to an embodiment of the present application. Figure 1 As shown, an embodiment of the present application provides a path planning method for a mobile robot, which may include the following steps.

[0036] S102, obtaining a path planning task and a movable area of ​​the mobile robot, wherein the path planning task includes a path planning starting point and a path planning end point.

[0037] It can be understood that a mobile robot is a machine device that performs work automatically. It can accept human commands, run pre-programmed programs, or act according to principles formulated by artificial intelligence technology. Its task is to assist or replace human work, such as manufacturing, construction, or dangerous work. In the field of mobile robots, path planning is the core technology for realizing autonomous navigation of robots. Different types of mobile robots may use different path planning algorithms, and the central control system needs to design path planning strategies based on the characteristics of the robot. The movable area refers to the area where the mobile robot is allowed to move. The path planning task refers to the task of planning the path of the mobile robot from the starting point of the path planning to the end point of the path planning in the movable area. Specifically, the mobile robot can refer to an automated guided vehicle (AGV). In industrial handling scenarios, AGV vehicles usually move on a fixed path. The movable area of ​​the AGV vehicle can be simplified to a two-dimensional grid map or a topological map. The simplified map can include multiple fixed roads, intersections between roads and the starting points of the roads. These intersections and starting points can be used as waypoints of the mobile robot to define the moving path of the AGV vehicle.

[0038] S104, when the mobile robot moves from the path planning starting point to the path planning end point in the movable area, a waypoint adjacent to the current waypoint of the mobile robot that the mobile robot has not passed through is determined as a first waypoint.

[0039] It is understandable that waypoints include intersections between roads and roads in the movable area and starting points of roads. The current waypoint refers to the waypoint where the mobile robot is located at the current time. The first waypoint refers to a waypoint that the mobile robot has not passed through among the waypoints adjacent to the current waypoint when executing the current path planning task. It is understandable that when the mobile robot moves to the current waypoint, the waypoint that the mobile robot can move to next must be a point adjacent to the current waypoint. However, for the mobile robot that is executing the path planning task, the waypoint for the next move should be a waypoint that has not been passed among the waypoints adjacent to the current waypoint, rather than a waypoint that has been passed. It should be noted that in the process of the mobile robot moving from the path planning starting point to the path planning end point, if the current waypoint is already the path planning end point, there is no need to plan the next waypoint.

[0040] Specifically, in a specific embodiment, when executing the path planning task of the mobile robot, the OpenList and CloseList methods can be used. The OpenList stores the waypoints that have not been passed in the map, and the CloseList stores the waypoints that have been passed in the map. After the mobile robot passes a certain waypoint, the waypoint is deleted from the OpenList and added to the CloseList.

[0041] S106, for each first waypoint, determining a turning requirement of the mobile robot when the mobile robot moves from the current waypoint toward the first waypoint, where the turning requirement includes turning required and turning not required.

[0042] It can be understood that there may be multiple first waypoints. The mobile robot moves from the previous waypoint to the current waypoint and then to the first waypoint. The three points may not be in a straight line. In terms of the weight of the mobile robot's load, movement efficiency, safety, etc., for example, a heavy-loaded AGV vehicle (for example, a load of 3 tons, 6 tons or 10 tons) lacks flexibility and may be at risk of colliding with the road during turning. It cannot rotate freely like a small robot and can only rotate at a fixed point. Therefore, the mobile robot should minimize turning. Then, which first waypoint the mobile robot chooses as the next moving point requires determining the turning requirements of the mobile robot when it moves from the current waypoint to the first waypoint.

[0043] S108, obtaining in real time the first turning number of the mobile robot moving from the path planning starting point to the current passing point.

[0044] It can be understood that the first number of turns refers to the cumulative number of turns of the mobile robot from the starting point of path planning to the current transit point. Specifically, in the A star algorithm in traditional scenarios, the mobile robot can move from 8 directions, which makes the planned path have 90° and 45° turns. However, in industrial handling scenarios, mobile robots can only move on fixed paths. Therefore, in order to simplify the problem, it can be defined that the mobile robot has only 4 moving directions, namely up, down, left and right. Secondly, it is also necessary to define the placement direction of the shelf. Since the shelf is a rectangular shape, it can be considered that the left and right or up and down are the same angles, while the left and right and up and down are different angles. If the mobile robot makes a 90° or 180° turn, it can be considered that the mobile robot has made a turn.

[0045] S110, for each first waypoint, determine the movement loss cost of the mobile robot moving from the path planning starting point to the path planning end point through the first waypoint according to the turning requirement and the first turning number.

[0046] It can be understood that the movement loss cost refers to the estimated cost of the mobile robot moving from the path planning starting point through the first waypoint to the path planning end point. Specifically, for each first waypoint, the movement loss cost takes into account the turning requirement when the mobile robot passes the first waypoint and the loss caused by the first number of turns, and the movement loss cost can be calculated by a preset function. For example, it can be a heuristic function.

[0047] S112, determining a target waypoint from multiple first waypoints according to the movement loss cost of each first waypoint, so that the mobile robot moves from the current waypoint to the target waypoint until it reaches the end point of the path planning.

[0048] It is understood that the mobile robot reaches the path planning end point through different first waypoints, and its movement loss cost is different. Therefore, based on the comparison of the size of the movement loss cost, multiple first waypoints that meet the requirements can be screened out as target waypoints, so that the mobile robot moves from the current waypoint to the target waypoint until it reaches the path planning end point. It is understood that the target waypoint can be the first waypoint that minimizes the movement loss cost.

[0049] Through the above technical solution, the path of the mobile robot is planned in real time, taking into account the turning needs of the mobile robot and the low movement loss caused by the number of turns. The path navigation can be completed by inputting the starting point of the path planning task. It can effectively reduce the turning phenomenon of the mobile robot, reduce the overall transportation time, avoid deadlock, and reduce the risk of collision between the vehicle body and the road. This not only improves the working efficiency of the mobile robot, but also enhances the safety of the warehousing and logistics system.

[0050] With respect to S106, in an embodiment of the present application, for each first waypoint, determining the turning requirement of the mobile robot when moving from the current waypoint toward the first waypoint includes: determining the waypoint that the mobile robot has passed among the waypoints adjacent to the current waypoint of the mobile robot as the second waypoint; obtaining the first coordinate of each first waypoint, the second coordinate of the second waypoint, and the current coordinate of the current waypoint; for each first waypoint, determining whether the first waypoint, the second waypoint, and the current waypoint are on the same straight line based on the first coordinate, the second coordinate, and the current coordinate; for each first waypoint, when the first waypoint, the second waypoint, and the current waypoint are on the same straight line, determining that the turning requirement of the mobile robot when moving from the current waypoint toward the first waypoint is no turning required; for each first waypoint, when the first waypoint, the second waypoint, and the current waypoint are not on the same straight line, determining that the turning requirement of the mobile robot when moving from the current waypoint toward the first waypoint is required turning.

[0051] In one embodiment, no need to turn (going straight) can be determined according to the following formula (3):

[0052] (3)

[0053] in, It refers to Waypoints, , are the horizontal and vertical coordinates of the first waypoint adjacent to the nth waypoint, , They respectively refer to the horizontal coordinate and vertical coordinate of the previous waypoint adjacent to the nth waypoint.

[0054] If the above formula (3) is satisfied, it can be considered that the first waypoint, the second waypoint and the current waypoint are on the same straight line, and the turning requirement of the mobile robot when the mobile robot moves from the current waypoint to the first waypoint is no turning required. Otherwise, it is considered that the first waypoint, the second waypoint and the current waypoint are not on the same straight line, and the turning requirement of the mobile robot when the mobile robot moves from the current waypoint to the first waypoint is required to turn.

[0055] With respect to S106, in an embodiment of the present application, for each first waypoint, determining the turning requirement of the mobile robot when moving from the current waypoint toward the first waypoint includes: obtaining a third angle of the mobile robot's body at the current waypoint, and determining the first angle of the mobile robot's body at each first waypoint; for each first waypoint, when the first angle and the third angle are the same, determining that the turning requirement of the mobile robot when moving from the current waypoint toward the first waypoint is no turning required; for each first waypoint, when the first angle and the third angle are different, determining that the turning requirement of the mobile robot when moving from the current waypoint toward the first waypoint is turning required.

[0056] It can be understood that the third angle refers to the angle of the vehicle body when the mobile robot is at the current passing point. The first angle refers to the angle of the vehicle body required when the mobile robot is at the first passing point. It can be understood that the reference directions of the first angle and the second angle are the same, and the first angle and the third angle are relative. In addition, when the first passing point is the end point of the path planning, the mobile robot needs to adjust the angle of the vehicle body to an angle that matches the shelf to unload the goods, so the mobile robot is required to adjust to the corresponding second angle at the end point of the path planning. Alternatively, when the road changes from horizontal to vertical or from vertical to horizontal, and the road changes from wide to narrow, the mobile robot also needs to adjust the angle of the vehicle body. Then, in order to clarify the turning requirement of the mobile robot when the mobile robot moves from the current passing point to each first passing point, the third angle of the vehicle body of the mobile robot at the current passing point can be obtained, and the first angle of the vehicle body of the mobile robot at each first passing point can be determined. When the first angle is the same as the third angle, it is determined that the turning requirement of the mobile robot when the mobile robot moves from the current passing point to the first passing point is that no turning is required. When the first angle is different from the third angle, it is determined that the turning requirement of the mobile robot when the mobile robot moves from the current via point toward the first via point is that turning is required.

[0057] With respect to S110, in an embodiment of the present application, for each first waypoint, determining the movement loss cost of the mobile robot moving from the path planning starting point to the path planning end point through the first waypoint according to the turning requirement and the first number of turns includes: for each first waypoint, determining the first turning cost of the mobile robot moving from the current waypoint to the first waypoint according to the turning requirement; for each first waypoint, determining the second number of turns for the mobile robot to move from the path planning starting point to the first waypoint according to the turning requirement and the first number of turns; for each first waypoint, determining the second turning cost for the mobile robot to move from the path planning starting point to the first waypoint according to the second number of turns; for each first waypoint, determining the movement loss cost of the mobile robot moving from the path planning starting point to the path planning end point through the first waypoint according to the first turning cost and the second turning cost.

[0058] It can be understood that the first turning cost refers to the loss cost determined by the mobile robot based on the turning demand. The second turning cost refers to the loss cost determined for the accumulated number of turns of the mobile robot. For each first waypoint, when passing through the first waypoint, there is a turning demand, and it can be considered that the number of turns corresponding to the first waypoint has increased once. Then, based on the turning demand and the first number of turns, the second number of turns corresponding to the first waypoint can be obtained, and then the second turning cost of the mobile robot moving from the starting point of the path planning to the first waypoint is determined according to the second number of turns. It can be understood that the first turning cost and the second turning cost are both part of the movement loss cost. Therefore, for each first waypoint, the movement loss cost of the mobile robot moving from the starting point of the path planning through the first waypoint to the end point of the path planning is determined according to the first turning cost and the second turning cost.

[0059] Specifically, in one embodiment, for each first waypoint, when the mobile robot needs to turn when passing the first waypoint, the turning cost constant C needs to be added to the first turning cost of moving from the current waypoint to the first waypoint during path planning, otherwise the turning cost constant C does not need to be added. It can be calculated according to the following formula (4):

[0060] (4)

[0061] Where n refers to the nth first waypoint, It refers to the loss cost of moving from the starting point of the path planning to the current passing point. It refers to the loss cost of moving from the current waypoint to the first waypoint, and C refers to the turning cost constant. and It can be calculated by Manhattan distance or Euclidean distance.

[0062] In an embodiment of the present application, for each first waypoint, determining the second turning cost of the mobile robot moving from the starting point of path planning to the first waypoint based on the second number of turns includes: obtaining the first angle of the mobile robot's body at each first waypoint, and the second angle of the object to be aligned included in the end point of the path planning; for each first waypoint, determining the target coefficient value corresponding to the first waypoint based on the first angle and the second angle; for each first waypoint, determining the second turning cost of the mobile robot moving from the starting point of path planning to the first waypoint based on the second number of turns and the target coefficient value.

[0063] It can be understood that the object to be aligned may refer to a shelf for storing goods. The second angle refers to the angle of the interface between the object to be aligned and the mobile robot. When transporting the goods to the object to be aligned, the body of the mobile robot should match the second angle of the object to be aligned. Usually, the path planning task is to control the mobile robot to perform the task of transporting goods, and the path planning end point is usually set at the location of the object to be aligned. The path planning end point may include the object to be aligned. In order to ensure that the mobile robot can align with the shelf at an angle matching the shelf when lifting and lowering materials, the direction of the shelf and the direction of the body can be defined to correspond. Since the shelf and the body of the mobile robot are only different in left and right and front and back, the angle of the east-west direction can be set to 0 degrees and the angle of the north-south direction can be set to 90 degrees. Therefore, different preset coefficient values ​​are set to characterize the different relationships between the first angle corresponding to each first waypoint and the second angle of the object to be aligned. After obtaining the first angle of the body of the mobile robot at each first waypoint and the second angle of the object to be aligned included in the path planning end point, the corresponding preset coefficient value is determined according to the first angle and the second angle as the target coefficient value corresponding to different first waypoints. Furthermore, when the map of the movable area is initially configured, the entire map is scanned to maintain the waypoints on the map into a hash table data structure. When a waypoint appears to connect multiple roads of different widths, the angle information of the current waypoint and its adjacent waypoints in four directions is recorded. Since the rotation of the mobile robot does not necessarily occur at the turning point, the mobile robot also needs to rotate when the path width or path direction changes. Therefore, it is necessary to constrain the rotation at non-turning points to minimize the rotation of the vehicle body. For example, it can be considered that the second turning cost is in a square relationship with the second number of turns. Then, for each first waypoint, the second turning cost of the mobile robot moving from the starting point of path planning to the first waypoint can be determined based on the second number of turns and the target coefficient value.

[0064] In an embodiment of the present application, for each first waypoint, determining the target coefficient value corresponding to the first waypoint according to the first angle and the second angle includes calculating the target coefficient value according to the following formula (1):

[0065] (1)

[0066] in, Refers to the target coefficient value corresponding to each first waypoint, It refers to the first angle of the mobile robot's body at each first waypoint. Refers to the second angle of the object to be aligned.

[0067] In an embodiment of the present application, for each first waypoint, determining the second turning cost of the mobile robot moving from the path planning starting point to the first waypoint according to the second turning number and the target coefficient value includes calculating the second turning cost according to the following formula (2):

[0068] (2)

[0069] in, It refers to the second turning cost of the mobile robot moving from the starting point of the path planning to each first waypoint. Refers to the target coefficient value corresponding to each first waypoint, refers to the proportional coefficient in the steering penalty function, is the bias coefficient, k is the second turn number, is the set of positive integers.

[0070] It can be understood that the second turning cost is in a square relationship with the second turning number, and the target coefficient value is set to consider the first angle of the mobile robot's body at each first waypoint, and whether the second angle of the object to be aligned included in the end point of path planning matches. By using the second turning cost as one of the bases for path planning, the rotation at non-turning points can be constrained to minimize the rotation of the body.

[0071] In an embodiment of the present application, for each first waypoint, determining the movement loss cost of the mobile robot moving from the path planning starting point through the first waypoint to the path planning end point based on the first turning cost and the second turning cost includes: obtaining the first coordinate of each first waypoint and the end point coordinate of the path planning end point; for each first waypoint, determining the distance that the mobile robot moves from the first waypoint to the path planning end point based on the first coordinate and the end point coordinate; for each first waypoint, determining the movement loss cost of the mobile robot moving from the path planning starting point through the first waypoint to the path planning end point based on the distance, the first turning cost and the second turning cost.

[0072] It can be understood that the distance refers to the distance from each first waypoint to the end point of the path planning. Due to the uncertainty of the path caused by unknown obstacles, in the A Star algorithm, the distance between nodes is evaluated by using the heuristic function. The distance can refer to the Manhattan distance or the Euclidean distance. It can be understood that the distance is also part of the movement loss cost. Then, for each first waypoint, the distance, the first turning cost and the second turning cost can be combined to determine the movement loss cost of the mobile robot from the path planning starting point to the path planning end point through the first waypoint. In this way, in the process of the mobile robot performing the path planning task, by calculating the movement loss cost corresponding to each passable first waypoint, the overall path should be minimized in the entire path planning, the turning can be reduced as much as possible during the path planning process, and the energy consumption can be minimized during the transportation process. The vehicle loss caused by the collision between the vehicle body and the road can be reduced, and the number of turns of the vehicle during the driving process can be reduced, which effectively improves the transportation efficiency of the vehicle.

[0073] Specifically, in one embodiment, the movement loss cost can be defined by a loss function (5), and the loss function is shown in the following formula (5):

[0074] (5)

[0075] in, It refers to the movement loss cost of the mobile robot moving from the starting point of the path planning to the end point of the path planning through the first waypoint n. It refers to the first turning cost of the mobile robot moving from the current waypoint to the first waypoint n. It refers to the distance that the mobile robot moves from the first waypoint n to the end point of the path planning. It refers to the second turning cost of the mobile robot moving from the starting point of path planning to the first waypoint n.

[0076] Specifically, the distance the mobile robot moves from the first waypoint n to the path planning end point is It can be calculated according to formula (6) or (7):

[0077] (6)

[0078] (7)

[0079] in, , are the horizontal and vertical coordinates of the first waypoint n, respectively. , They respectively refer to the horizontal coordinates of the end point g of the path planning.

[0080] Specifically, the second turning cost of the mobile robot moving from the starting point of the path planning to the first waypoint n is It can be calculated according to the following formula (2):

[0081] (2)

[0082] in, It refers to the second turning cost of the mobile robot moving from the starting point of the path planning to each first waypoint. Refers to the target coefficient value corresponding to each first waypoint, refers to the proportional coefficient in the steering penalty function, is the bias coefficient, k is the second turn number, is the set of positive integers.

[0083] Specifically, the first turn cost It can be calculated according to the following formula (4):

[0084] (4)

[0085] Where n refers to the nth first waypoint, It refers to the loss cost of moving from the starting point of the path planning to the current passing point. It refers to the loss cost of moving from the current waypoint to the first waypoint, and C refers to the turning cost constant. and It can be calculated by Manhattan distance or Euclidean distance. In the case where the mobile robot needs to turn when passing the first waypoint, the turning cost constant C needs to be added to the first turning cost of moving from the current waypoint to the first waypoint during path planning, otherwise the turning cost constant C does not need to be added.

[0086] Through the above technical solution, by encapsulating the internal implementation of the improved algorithm, the user can directly call the improved Astar method without worrying about the actual angle of material placement, and complete the path navigation by entering the vehicle starting point and the order starting point. The overall path should be minimized in the entire path planning, and turns should be reduced as much as possible during the path planning process, and energy consumption should be minimized during transportation. In special heavy-duty transportation scenarios, considering the impact of factors such as rotation angle, vehicle body size, and road width, the vehicle loss caused by the collision between the vehicle body and the road can be reduced, and the number of turns of the vehicle during driving can be reduced, effectively improving the transportation efficiency of the vehicle. It can effectively reduce the overall transportation time of AGV, avoid deadlock, and reduce the risk of collision between the vehicle body and the road. This not only improves the work efficiency of AGV, but also enhances the safety of warehousing and logistics systems.

[0087] Figure 1FIG. 1 is a flow chart of a path planning method for a mobile robot in one embodiment. It should be understood that although Figure 1 The steps in the flowchart are shown in sequence as indicated by the arrows, but these steps are not necessarily executed in the order indicated by the arrows. Unless otherwise specified in this document, there is no strict order restriction for the execution of these steps, and these steps can be executed in other orders. Moreover, Figure 1 At least part of the steps may include multiple sub-steps or multiple stages. These sub-steps or stages are not necessarily executed at the same time, but can be executed at different times. The execution order of these sub-steps or stages is not necessarily sequential, but can be executed in turn or alternately with other steps or at least part of the sub-steps or stages of other steps.

[0088] Figure 2 The following schematically shows a structural block diagram of a path planning device for a mobile robot according to an embodiment of the present application. Figure 2 As shown, an embodiment of the present application provides a path planning device for a mobile robot, which may include:

[0089] a memory configured to store instructions; and

[0090] The processor is configured to call instructions from the memory and implement the above-mentioned path planning method for a mobile robot when executing the instructions.

[0091] Specifically, in the embodiment of the present application, the processor may be configured to:

[0092] Obtain the path planning task and movable area of ​​the mobile robot, the path planning task includes the path planning starting point and the path planning end point;

[0093] In the process of the mobile robot moving from the path planning starting point to the path planning end point, a waypoint adjacent to the current waypoint of the mobile robot and not passed by the mobile robot is determined as a first waypoint;

[0094] For each first waypoint, determining a turning requirement of the mobile robot when the mobile robot moves from the current waypoint toward the first waypoint, the turning requirement including turning required and turning not required;

[0095] Obtain the first turning number of the mobile robot from the starting point of the path planning to the current passing point in real time;

[0096] For each first waypoint, determining a movement loss cost of the mobile robot moving from a path planning starting point through the first waypoint to a path planning end point according to a turning requirement and a first turning number;

[0097] A target waypoint is determined from a plurality of first waypoints according to the movement loss cost of each first waypoint, so that the mobile robot moves from the current waypoint to the target waypoint until reaching the end point of the path planning.

[0098] In the embodiment of the present application, the processor may also be configured to:

[0099] For each first waypoint, a first turning cost for the mobile robot to move from the current waypoint to the first waypoint is determined according to the turning requirement; for each first waypoint, a second turning number for the mobile robot to move from the starting point of path planning to the first waypoint is determined according to the turning requirement and the first turning number; for each first waypoint, a second turning cost for the mobile robot to move from the starting point of path planning to the first waypoint is determined according to the second turning number; for each first waypoint, a movement loss cost for the mobile robot to move from the starting point of path planning to the first waypoint through the first waypoint is determined according to the first turning cost and the second turning cost.

[0100] In the embodiment of the present application, the processor may also be configured to:

[0101] Obtain a first angle of the mobile robot's body at each first waypoint and a second angle of the object to be aligned included in the path planning endpoint; for each first waypoint, determine a target coefficient value corresponding to the first waypoint according to the first angle and the second angle; for each first waypoint, determine a second turning cost for the mobile robot to move from the path planning starting point to the first waypoint according to the second number of turns and the target coefficient value.

[0102] In the embodiment of the present application, the processor may also be configured to:

[0103] The target coefficient value is calculated according to the following formula (1):

[0104] (1)

[0105] in, Refers to the target coefficient value corresponding to each first waypoint, It refers to the first angle of the mobile robot's body at each first waypoint. Refers to the second angle of the object to be aligned.

[0106] In the embodiment of the present application, the processor may also be configured to:

[0107] The second turn cost is calculated according to the following formula (2):

[0108] (2)

[0109] in, It refers to the second turning cost of the mobile robot moving from the starting point of the path planning to each first waypoint. Refers to the target coefficient value corresponding to each first waypoint, refers to the proportional coefficient in the steering penalty function, is the bias coefficient, k is the second turn number, is the set of positive integers.

[0110] In the embodiment of the present application, the processor may also be configured to:

[0111] Obtain the first coordinates of each first waypoint and the endpoint coordinates of the path planning endpoint; for each first waypoint, determine the distance that the mobile robot moves from the first waypoint to the path planning endpoint based on the first coordinates and the endpoint coordinates; for each first waypoint, determine the movement loss cost of the mobile robot moving from the path planning starting point through the first waypoint to the path planning endpoint based on the distance, the first turning cost and the second turning cost.

[0112] In the embodiment of the present application, the processor may also be configured to:

[0113] Determine a waypoint that the mobile robot has passed among the waypoints adjacent to the current waypoint of the mobile robot as a second waypoint; obtain the first coordinate of each first waypoint, the second coordinate of the second waypoint and the current coordinate of the current waypoint; for each first waypoint, determine whether the first waypoint, the second waypoint and the current waypoint are on the same straight line according to the first coordinate, the second coordinate and the current coordinate; for each first waypoint, if the first waypoint, the second waypoint and the current waypoint are on the same straight line, determine that the turning requirement of the mobile robot when moving from the current waypoint toward the first waypoint is no turning required; for each first waypoint, if the first waypoint, the second waypoint and the current waypoint are not on the same straight line, determine that the turning requirement of the mobile robot when moving from the current waypoint toward the first waypoint is turning required.

[0114] In the embodiment of the present application, the processor may also be configured to:

[0115] Obtain a third angle of the mobile robot's body at the current viapoint, and determine a first angle of the mobile robot's body at each first viapoint; for each first viapoint, when the first angle and the third angle are the same, determine that the turning requirement of the mobile robot when moving from the current viapoint toward the first viapoint is no turning required; for each first viapoint, when the first angle and the third angle are different, determine that the turning requirement of the mobile robot when moving from the current viapoint toward the first viapoint is turning required.

[0116] An embodiment of the present application also provides a mobile robot, which can be used for the path planning device of the mobile robot.

[0117] An embodiment of the present application also provides a machine-readable storage medium, on which instructions are stored, and the instructions are used to enable a machine to execute the above-mentioned path planning method for a mobile robot.

[0118] In one embodiment, a computer device is provided. The computer device may be a server, and its internal structure diagram may be as follows: Figure 3 As shown. The computer device includes a processor A01, a network interface A02, a memory (not shown in the figure) and a database (not shown in the figure) connected through a system bus. Among them, the processor A01 of the computer device is used to provide computing and control capabilities. The memory of the computer device includes an internal memory A03 and a non-volatile storage medium A04. The non-volatile storage medium A04 stores an operating system B01, a computer program B02 and a database (not shown in the figure). The internal memory A03 provides an environment for the operation of the operating system B01 and the computer program B02 in the non-volatile storage medium A04. The database of the computer device is used to store data for a path planning method for a mobile robot. The network interface A02 of the computer device is used to communicate with an external terminal through a network connection. When the computer program B02 is executed by the processor A01, a path planning device for a mobile robot is implemented.

[0119] Those skilled in the art will understand that Figure 3 The structure shown in the figure is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than those shown in the figure, or combine certain components, or have a different arrangement of components.

[0120] Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, systems or computer program products. Therefore, the present application may take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, the present application may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program codes.

[0121] The present application is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the embodiments of the present application. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of the processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.

[0122] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.

[0123] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.

[0124] In a typical configuration, a computing device includes one or more processors (CPU), input / output interfaces, network interfaces, and memory.

[0125] The memory may include non-permanent memory in a computer-readable medium, random access memory (RAM) and / or non-volatile memory in the form of read-only memory (ROM) or flash RAM. The memory is an example of a computer-readable medium.

[0126] Computer readable media include permanent and non-permanent, removable and non-removable media that can be implemented by any method or technology to store information. Information can be computer readable instructions, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disk read-only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, magnetic cassettes, magnetic tape disk storage or other magnetic storage devices or any other non-transmission media that can be used to store information that can be accessed by a computing device. As defined herein, computer readable media does not include temporary computer readable media (transitory media), such as modulated data signals and carrier waves.

[0127] It should also be noted that the terms "include", "comprises" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, commodity or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, commodity or device. In the absence of more restrictions, the elements defined by the sentence "comprises a ..." do not exclude the existence of other identical elements in the process, method, commodity or device including the elements.

[0128] The above are only embodiments of the present application and are not intended to limit the present application. For those skilled in the art, the present application may have various changes and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application should be included within the scope of the claims of the present application.

Claims

1. A path planning method for a mobile robot, characterized in that: The method comprises: Acquire a path planning task and a movable area of ​​the mobile robot, wherein the path planning task includes a path planning starting point and a path planning end point; During the process of the mobile robot moving from the path planning starting point toward the path planning end point in the movable area, determining a waypoint that the mobile robot has not passed through among the waypoints adjacent to the current waypoint of the mobile robot as a first waypoint; For each first waypoint, determining a turning requirement of the mobile robot when the mobile robot moves from the current waypoint toward the first waypoint, the turning requirement including a need for turning and a need for not turning; Acquire in real time the first turning number of the mobile robot moving from the path planning starting point to the current passing point; For each first waypoint, determining a first turning cost for the mobile robot to move from the current waypoint to the first waypoint according to the turning requirement; For each first waypoint, determining a second number of turns for the mobile robot to move from a path planning starting point to the first waypoint according to the turning requirement and the first number of turns; Acquire a first angle of the body of the mobile robot at each first waypoint, and a second angle of the object to be aligned included in the end point of the path planning; For each first waypoint, determining a target coefficient value corresponding to the first waypoint according to the first angle and the second angle; For each first waypoint, determining a second turning cost for the mobile robot to move from the path planning starting point to the first waypoint according to the second turning number and the target coefficient value; For each first waypoint, determining a movement loss cost of the mobile robot moving from the path planning starting point to the path planning end point through the first waypoint according to the first turning cost and the second turning cost; A target waypoint is determined from multiple first waypoints according to the movement loss cost of each first waypoint, so that the mobile robot moves from the current waypoint to the target waypoint until it reaches the end point of the path planning.

2. The path planning method for a mobile robot according to claim 1, characterized in that: The step of determining, for each first waypoint, a target coefficient value corresponding to the first waypoint according to the first angle and the second angle includes calculating the target coefficient value according to the following formula (1): (1) in, Refers to the target coefficient value corresponding to each first waypoint, refers to the first angle of the body of the mobile robot at each first waypoint, It refers to the second angle of the object to be aligned.

3. The path planning method for a mobile robot according to claim 1, characterized in that: For each first waypoint, determining the second turning cost of the mobile robot moving from the path planning starting point to the first waypoint according to the second turning number and the target coefficient value includes: The second turning cost is calculated according to the following formula (2): (2) in, It refers to the second turning cost of the mobile robot moving from the starting point of the path planning to each first waypoint, Refers to the target coefficient value corresponding to each first waypoint, refers to the proportional coefficient in the steering penalty function, is the bias coefficient, k is the second steering number, is the set of positive integers.

4. The path planning method for a mobile robot according to claim 1, characterized in that: The determining, for each first waypoint, according to the first turning cost and the second turning cost, of the movement loss cost of the mobile robot moving from the path planning starting point through the first waypoint to the path planning end point comprises: Obtaining the first coordinates of each first waypoint and the endpoint coordinates of the path planning endpoint; For each first waypoint, determining a distance that the mobile robot moves from the first waypoint to the path planning endpoint according to the first coordinates and the endpoint coordinates; For each first waypoint, the movement loss cost of the mobile robot moving from the path planning starting point to the path planning end point through the first waypoint is determined according to the distance, the first turning cost and the second turning cost.

5. The path planning method for a mobile robot according to claim 1, characterized in that: The determining, for each first waypoint, a turning requirement of the mobile robot when the mobile robot moves from the current waypoint toward the first waypoint comprises: Determine a waypoint that the mobile robot has passed among the waypoints adjacent to the current waypoint of the mobile robot as a second waypoint; Obtaining the first coordinates of each first waypoint, the second coordinates of the second waypoint, and the current coordinates of the current waypoint; For each first waypoint, determine whether the first waypoint, the second waypoint, and the current waypoint are on the same straight line according to the first coordinate, the second coordinate, and the current coordinate; For each first waypoint, when the first waypoint, the second waypoint and the current waypoint are on the same straight line, determining that a turning requirement of the mobile robot when the mobile robot moves from the current waypoint toward the first waypoint is no turning required; For each first waypoint, when the first waypoint, the second waypoint and the current waypoint are not on the same straight line, it is determined that the turning requirement of the mobile robot when the mobile robot moves from the current waypoint toward the first waypoint is that a turn is required.

6. The path planning method for a mobile robot according to claim 1, characterized in that: The determining, for each first waypoint, a turning requirement of the mobile robot when the mobile robot moves from the current waypoint toward the first waypoint comprises: Acquire a third angle of the body of the mobile robot at the current waypoint, and determine a first angle of the body of the mobile robot at each first waypoint; For each first waypoint, when the first angle is the same as the third angle, determining that the turning requirement of the mobile robot when the mobile robot moves from the current waypoint toward the first waypoint is no turning required; For each first waypoint, when the first angle is different from the third angle, it is determined that the turning requirement of the mobile robot when the mobile robot moves from the current waypoint toward the first waypoint is that a turn is required.

7. A path planning device for a mobile robot, characterized in that: include: a memory configured to store instructions; A processor is configured to call the instructions from the memory and implement the path planning method for a mobile robot according to any one of claims 1 to 6 when executing the instructions.

8. A mobile robot, characterized in that: Comprising a path planning device for a mobile robot according to claim 7.

9. A machine-readable storage medium, characterized in that: The machine-readable storage medium stores instructions for causing a machine to execute a path planning method for a mobile robot according to any one of claims 1 to 6.

Citation Information

Patent Citations

  • Method for planning motion path of bridge crane

    CN111422741A

  • Path planning method and device

    CN111830957A