CN116009552A - Path planning method, device, equipment and storage medium - Google Patents

Path planning method, device, equipment and storage medium Download PDF

Info

Publication number
CN116009552A
CN116009552A CN202310058562.0A CN202310058562A CN116009552A CN 116009552 A CN116009552 A CN 116009552A CN 202310058562 A CN202310058562 A CN 202310058562A CN 116009552 A CN116009552 A CN 116009552A
Authority
CN
China
Prior art keywords
grid
path
current
determining
grids
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310058562.0A
Other languages
Chinese (zh)
Inventor
吴华勃
杨晓东
黄彬
王鑫
卢嘉永
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangzhou Saite Intelligent Technology Co Ltd
Original Assignee
Guangzhou Saite Intelligent Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guangzhou Saite Intelligent Technology Co Ltd filed Critical Guangzhou Saite Intelligent Technology Co Ltd
Priority to CN202310058562.0A priority Critical patent/CN116009552A/en
Publication of CN116009552A publication Critical patent/CN116009552A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

The invention discloses a path planning method, a device, equipment and a storage medium, wherein the method comprises the following steps: determining a target operation grid area, acquiring a path set generated in real time in the path searching process of the target operation grid area, determining a current grid and a previous grid from the path set, determining optional adjacent grids of the current grid in the target operation grid area, determining direction coefficients of the optional adjacent grids one by one based on the current grid and the previous grid, determining a current motion constraint level, judging whether the optional adjacent grids are added into the path set according to the current motion constraint level and the direction coefficients of the optional adjacent grids, generating a planning path based on the path set, and generating the planning path which can meet the requirement of an outdoor robot using an ackerman chassis on the full coverage of the path to obtain a planning path with high coverage rate, thereby improving the working efficiency of the outdoor robot.

Description

Path planning method, device, equipment and storage medium
Technical Field
The invention belongs to the technical field of intelligent control, and particularly relates to a path planning method, a device, equipment and a storage medium.
Background
With the continuous improvement of the automation technology, it becomes important to plan a reasonable path for a movable device under the automation technology, and the full coverage path planning algorithm is one branch of the path planning algorithm, which requires that the planned path cover all positions of a given area, and the better path can further save resources and improve efficiency. Currently, there are various robots that involve full coverage path problems, such as indoor cleaning robots, whose motion trajectories need to be spread over a given area to achieve full functionality.
The current common full-coverage path planning mode is classified into a Chinese character 'hui', a Chinese character 'zhi', a tree form and the like according to the generated path shape. However, the paths planned by the common full-coverage path planning mode at present have a large number of right-angle turns and turn around in situ, and the indoor robots use differential chassis to support in situ rotation, so the full-coverage path planning mode is sufficient for realizing the functions of the indoor robots.
For outdoor robots, considering motion stability, most of the outdoor robots adopt an ackerman chassis, such as an automobile chassis, and a certain turning radius is needed when turning around or turning, so that the outdoor robots cannot accurately track paths generated in the current mainstream full-coverage path planning mode.
Disclosure of Invention
The invention provides a path planning method, a device, equipment and a storage medium, which are used for solving the problem that an outdoor robot is difficult to meet the requirement of covering all positions of a given area when a path planned by the current full-coverage path planning mode is difficult to realize.
According to a first aspect of the present invention, there is provided a path planning method, the method comprising:
determining a target operation grid area;
acquiring a path set generated in real time in the process of carrying out path searching in the target operation grid area, and determining a current grid and a previous grid from the path set;
determining optional adjacent grids of a current grid in the target operation grid area, and determining direction coefficients of the optional adjacent grids one by one based on the current grid and the previous grid;
determining a current motion constraint level, and judging whether to add the optional adjacent grids into the path set according to the current motion constraint level and the direction coefficients of the optional adjacent grids;
a planned path is generated based on the set of paths.
According to a second aspect of the present invention, there is provided a path planning apparatus, the apparatus comprising:
A target job grid area determination module for determining a target job grid area;
the path set acquisition module is used for acquiring a path set generated in real time in the path searching process of the target operation grid area;
a first grid determining module, configured to determine a current grid and a previous grid from the path set;
a second grid determination module for determining an optional neighboring grid of the current grid in the target job grid area;
the direction coefficient determining module is used for determining the direction coefficient of each optional adjacent grid one by one based on the current grid and the previous grid;
the current motion constraint level determining module is used for determining the current motion constraint level;
the judging module is used for judging whether the optional adjacent grids are added into the path set according to the current motion constraint level and the direction coefficients of the optional adjacent grids;
and the planning path generation module is used for generating planning paths based on the path set.
According to a third aspect of the present invention, there is provided an electronic device comprising:
at least one processor; and
a memory communicatively coupled to the at least one processor; wherein, the liquid crystal display device comprises a liquid crystal display device,
The memory stores a computer program executable by the at least one processor to enable the at least one processor to perform a path planning method according to any one of the embodiments of the present invention.
According to a fourth aspect of the present invention, there is provided a computer readable storage medium storing computer instructions for causing a processor to perform a path planning method according to any one of the embodiments of the present invention.
The technical scheme of the embodiment of the invention provides a path planning method, which can firstly determine a target operation grid area, acquire a path set generated in real time in the path searching process of the target operation grid area, determine a current grid and a previous grid from the path set, determine optional adjacent grids of the current grid in the target operation grid area, determine the direction coefficients of the optional adjacent grids one by one based on the current grid and the previous grid so as to determine the motion trend direction of the optional adjacent grids for use, then combine with the kinematic constraint to determine the current motion constraint level, judge whether to add the optional adjacent grids into the path set according to the current motion constraint level and the direction coefficients of the optional adjacent grids, generate a planned path based on the path set, and the generated planned path can meet the requirement of an outdoor robot using an Ackerman chassis on full path coverage, so that the planned path with high coverage rate is obtained, and the working efficiency of the outdoor robot is improved.
It should be understood that the description in this section is not intended to identify key or critical features of the embodiments of the invention or to delineate the scope of the invention. Other features of the present invention will become apparent from the description that follows.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings required for the description of the embodiments will be briefly described below, and it is apparent that the drawings in the following description are only some embodiments of the present invention, and other drawings may be obtained according to these drawings without inventive effort for a person skilled in the art.
Fig. 1 is a flowchart of a path planning method according to a first embodiment of the present invention;
FIG. 2 is a schematic diagram of a target work grid area potential field according to a first embodiment of the present invention;
FIG. 3 is a schematic view of an adjoining grid provided in accordance with a first embodiment of the invention;
FIG. 4 is a schematic diagram of a planned path provided in accordance with an embodiment of the present invention;
fig. 5 is a flowchart of a path planning method according to a second embodiment of the present invention;
fig. 6 is a schematic diagram of a full coverage planned path according to a second embodiment of the present invention;
Fig. 7 is a flowchart of a path planning method according to a third embodiment of the present invention;
FIG. 8 is a schematic diagram of a trimmed planned path according to a third embodiment of the invention;
fig. 9 is a schematic structural diagram of a path planning apparatus according to a fourth embodiment of the present invention;
fig. 10 is a schematic structural diagram of an electronic device implementing a path planning method according to an embodiment of the present invention.
Detailed Description
In order that those skilled in the art will better understand the present invention, a technical solution in the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings in which it is apparent that the described embodiments are only some embodiments of the present invention, not all embodiments. All other embodiments, which can be made by those skilled in the art based on the embodiments of the present invention without making any inventive effort, shall fall within the scope of the present invention.
It should be noted that the terms "first," "second," and the like in the description and the claims of the present invention and the above figures are used for distinguishing between similar objects and not necessarily for describing a particular sequential or chronological order. It is to be understood that the data so used may be interchanged where appropriate such that the embodiments of the invention described herein may be implemented in sequences other than those illustrated or otherwise described herein. Furthermore, the terms "comprises," "comprising," and "having," and any variations thereof, are intended to cover a non-exclusive inclusion, such that a process, method, system, article, or apparatus that comprises a list of steps or elements is not necessarily limited to those steps or elements expressly listed but may include other steps or elements not expressly listed or inherent to such process, method, article, or apparatus.
Example 1
Fig. 1 is a flowchart of a path planning method according to a first embodiment of the present invention.
Because the chassis used by the indoor robot is different from that used by the outdoor robot at present, and the path planning of the outdoor robot is used in the same way as that of the indoor robot at present, the path planning of the outdoor robot is inaccurate, the tracking accuracy of the outdoor robot is poor, and the realization of functions such as cleaning effect is influenced.
In the embodiment of the invention, the path which can be suitable for the ackerman chassis can be generated by adding the kinematic constraint in the path search, so that the working efficiency of cleaning the outdoor robot is further improved.
The method may be performed by a path planning apparatus, which may be implemented in hardware and/or software.
As shown in fig. 1, the present embodiment may include the following steps:
s110, determining a target operation grid area.
In this embodiment, the target job grid area may be generated by rasterizing a closed area. The enclosed area may be a preset working area for the outdoor robot, for example, a certain area is a working area of the sweeping robot.
In one embodiment, step S110 includes the steps of:
s110-1, determining a target working area.
In this embodiment, when determining the target work grid area, the target work area may be determined first, where the target work area may be selectively defined by the user based on a map area inside the outdoor robot.
S110-2, rasterizing the target working area to determine an obstacle grid set and a non-obstacle grid set.
In particular, since the environment map stored in the outdoor robot is generally composed of complex geometric figures, most of search algorithms cannot be directly applied in path planning, and the scale of the map directly affects the efficiency of path planning, it is necessary to process a target working area in the environment map. The process and expression form used for rasterizing can represent the environment as a square grid with a certain resolution, and the specific rasterizing process is not described in detail herein. In one implementation, the target work area is rasterized at a resolution, e.g., 1 x 1m per grid, with the grid side length approximately equal to the width of the robot.
During the rasterization processing, whether the position occupied by the obstacle exists in the area or not can be determined according to a map which is built in advance or according to data provided by a sensor, and the grids are divided into a free state and an occupied state and are mutually independent. Wherein the grid occupying the state may be attributed to a set of obstacle grids and the grid in the free state may be attributed to a set of non-obstacle grids.
S110-3, determining a closed grid area surrounded by obstacle grids in the obstacle grid set.
S110-4, taking the closed grid area and grids therein as target operation grid areas.
In practical applications, since the outdoor robot only moves in the target working area, the target working area where the outdoor robot is located may be a scene space where a room or the like is enclosed by a fence or a rail, a dividing line or the like so that the area is a closed area, and the outdoor robot does not step on the boundary of the area, the boundary is an obstacle, and the closed grid area and the grids therein may be defined as the target working grid area by surrounding the obstacle grids in the obstacle grid set.
S120, acquiring a path set generated in real time in the path searching process of the target operation grid area, and determining a current grid and a previous grid from the path set.
In this embodiment, the current position of the outdoor robot may be regarded as a start point of the path search, and the user may select the start point before starting the path search and move the outdoor robot to the selected start point to start the path search at the current position of the outdoor robot.
When the path searching is performed, a traversing mode can be adopted for each grid in the target operation grid area, so that a path set is generated in real time. When the path set is generated, the grid to which the outdoor robot moves in real time is added to the path set, and then in the path set generated in real time, the grid at which the current position is located is the current grid, and the previous grid is the grid at which the indoor robot moves to the position before the current grid is located in the path.
In one embodiment, each grid in the path set carries path-related information, the path-related information comprising: path node number, potential field value, joining time information to join the path set; in step S120, determining the current grid from the path set includes the following steps:
determining a grid with the largest path node number in the path set;
if the grid with the largest path node number is one, the grid with the largest path node number is taken as the current grid;
if the number of the grid with the largest path node number exceeds one, selecting the grid with the smallest potential field value from the grids with the largest path node number as the current grid;
if the number of the path node is the smallest, selecting the grid with the earliest time information from the grids with the largest potential field value as the current grid;
After the current grid is determined, a previous grid is determined from previous grid information to which the current grid is bound.
In this embodiment, after the outdoor robot starts working, one grid that each walks through is added to the path set, and the path association information is carried. The current grid may be determined from the set of paths using a greedy algorithm that, when each walks to one grid, preserves the grid information of the previous grid, such as the coordinates of the previous grid, etc.
When determining the current grid from the previous grid, the path node number corresponding to the current grid can be generated on the basis of the path node number of the previous grid, so that the grid with the largest path node number can be determined in the path set, and if only one grid with the largest path node number exists, the grid with the largest path node number is the current grid.
In the implementation, the outdoor robot moving in real time may be located on the boundary lines of multiple grids, at this time, when generating the path node number corresponding to the current grid on the basis of the path node number of the previous grid, there may be a case that multiple grids may correspond to the same path node number, and the search direction of the path planning may be guided by combining with the artificial potential field method to determine the current grid. The artificial potential field method is a virtual force method for robot motion planning, and the basic idea is to embody the influence of objects and obstacles on the robot motion into an artificial potential field. The potential energy at the target is low, and the potential energy at the obstacle is high. This potential difference creates an attractive force of the object to the robot and a repulsive force of the obstacle to the robot, the resultant force of which controls the robot to move toward the target point along the negative gradient direction of the potential field.
Specifically, a potential field value corresponding to each grid may be obtained by adding a potential field to the target operation grid region, as shown in a potential field diagram of the target operation grid region in fig. 2, where the numerical values in each grid in fig. 2 are the corresponding potential field values. In the artificial potential field method, potential energy at a target is low, potential energy at an obstacle is high, and a grid with the minimum potential field value can be selected from grids with the largest path node numbers as a current grid.
If there is more than one grid with the minimum potential field value in the grids with the largest path node numbers, the grid with the earliest time information can be selected from the grids to be added as the current grid, and although the outdoor robot can be positioned on a plurality of grids at the same time, the time of stepping in different grids has slight early and late difference, the grids with the minimum potential field value can be summarized, and the grid touched first can be used as the current grid.
After determining the current grid, a previous grid may be determined from previous grid information to which the current grid is bound.
S130, determining optional adjacent grids of the current grid in the target operation grid area, and determining the direction coefficients of the optional adjacent grids one by one based on the current grid and the previous grid.
In this embodiment, each grid has adjacent grids in a positional relationship, and referring to an adjacent grid schematic diagram of fig. 3, a grid containing a plurality of arrows in fig. 3 may be regarded as a current grid, and in general, eight grids adjacent to the current grid may be referred to as optional adjacent grids of the current grid. Where some grids may not have eight optional adjoining grids, such as grids at the boundary of the target job grid area, the adjoining grids may be outside of the target job grid area.
Thus, in determining the optional neighboring grid of the current grid, eight neighboring grids may be determined first, and then, among the eight grids, the grid located in the target job grid area may be determined as the optional neighboring grid.
After determining each optional neighboring grid, specifically, the direction coefficient of each optional neighboring grid may be determined one by one based on the grid coordinates corresponding to the current grid and the previous grid, so as to determine whether the optional neighboring grids conform to the kinematic constraint.
In one embodiment, determining the direction coefficients of the optional adjacent grids one by one in step S130 based on the current grid and the previous grid includes the following steps:
If the previous grid exists, calculating a coordinate dot product in the advancing direction according to the coordinates of the previous grid, the current grid and the optional adjacent grids to serve as a direction coefficient;
if the previous grid does not exist, the orientation angle of the current grid is obtained, and the coordinate dot product of the advancing direction is calculated as a direction coefficient according to the orientation angle, the coordinates of the current grid and optional adjacent grids.
Specifically, if the current grid is not the starting point of the outdoor robot's start operation, there is a previous grid for the current grid. The coordinates of the current grid may be noted as (Xc, yc), the coordinates of the optional neighboring grid as (Xn, yn), the coordinates of the previous grid as (Xp, yp), and the direction coefficient as dot. The formula for calculating the direction coefficient dot is: dot= (Xn-Xc), (Xc-Xp) + (Yn-Yc), (Yc-Yp).
If the current grid is the starting point of the outdoor robot start operation, there is no previous grid for the starting point, and the orientation angle of the current grid, that is, the azimuth angle of the starting point, may be acquired. The azimuth angle is also called horizon and longitude (Azimuth (angle) abbreviated Az), and is one of methods for measuring the angle difference between objects on a plane, and is a horizontal angle between a clockwise direction and a target direction from a north-pointing direction line of a certain point.
The coordinates of the current grid may be noted as (Xc, yc), the coordinates of the optional neighboring grid as (Xn, yn), the orientation angle as Dir, and the direction coefficient as dot. The formula for calculating the direction coefficient dot is: dot= (Xn-Xc) ×cos (dir) + (Yn-Yc) ×sin (dir).
In one embodiment, determining an optional contiguous grid of the current grid in the target job grid area in step S130 includes the steps of:
determining adjacent grids of the current grid in the target operation grid area, and acquiring the state of each adjacent grid;
if the adjacent grid is judged to be an obstacle grid or a grid added with a path set according to the state of the adjacent grid, judging that the adjacent grid is not an optional adjacent grid;
if the adjacent grid is determined to be a non-obstacle grid and the path set is not added according to the state of the adjacent grid, the adjacent grid is determined to be an optional adjacent grid.
In this embodiment, when determining the optional neighboring grid of the current grid in the target job grid area, the neighboring grid of the current grid may be determined in the target job grid area first, that is, for eight grids around the current grid, only in the target job grid area may be used as the neighboring grid of the current grid.
After determining the adjacent grids of the current grid, the state of each adjacent grid can be obtained, and the state of each adjacent grid can indicate whether the adjacent grid is the grid where the obstacle is located, wherein the grid corresponding to the position where the boundary of the target operation grid area is located is the obstacle grid, and in addition, other obstacles in the target operation grid area, such as the grid corresponding to the position where the flowerpot is located, and the like, also belong to the obstacle grid. In the case of the obstacle grid, the outdoor robot does not need to walk in when operating, and otherwise, accidents such as collision occur, and therefore, when the adjacent grid is the obstacle grid, it is determined that the adjacent grid is not the optional adjacent grid.
In addition, if the adjacent grid is a grid to which the path set has been added, which means that the adjacent grid has been covered by the outdoor robot, it may be determined that the adjacent grid is not an optional adjacent grid without being covered again.
Then, when the adjoining grid is neither an obstacle grid nor added to the path set, the grid may be determined to be an optional adjoining grid.
And S140, determining the current motion constraint level, and judging whether the optional adjacent grids are added into the path set according to the current motion constraint level and the direction coefficients of the optional adjacent grids.
In this embodiment, since the motion of the outdoor robot cannot be regarded as a particle, when the motion constraint is not met, for example, the generation of the trajectory is a broken line, and such a path is given to the outdoor robot to be executed, the outdoor robot is difficult to complete. Therefore, when judging whether the optional adjacent grid meets the condition that the path set can be added, the method can be completed by judging whether the optional adjacent grid meets the kinematic constraint, so that each planned step can be well completed by the outdoor robot.
The motion constraint levels may be classified into a plurality of levels, different levels may indicate different degrees of constraint, and the direction coefficients of each adjacency-able grid may be combined to determine whether to add an alternative adjacency grid to the path set. By way of example, the direction of the movement trend can be determined through the direction coefficient, and by combining the movement trend and the movement constraint level, whether the size of the corner of the outdoor robot is in accordance with that of the corner of the outdoor robot when the outdoor robot moves can be determined, so that the situation that full coverage cannot be completed due to overlarge corner is avoided.
In one embodiment, the motion constraint levels include strict, relaxed, no levels;
In step S140, according to the current motion constraint level and the direction coefficient of each optional adjacent grid, it is determined whether to add an optional adjacent grid to the path set, including the following steps:
if the motion constraint level is no level, adding all optional adjacent grids into the path set;
if the motion constraint level is a loose level, adding an optional adjacent grid with a direction coefficient less than or equal to 0 to the path set;
if the motion constraint level is a strict level, adding an optional adjacent grid with a direction coefficient less than 0 to the path set.
In this embodiment, the motion constraint levels may be classified into strict, relaxed and no levels according to different degrees of constraint. The more strict the degree of constraint, the less the degree of motion constraint may be considered to be the need to change the angle of the corresponding corner when the outdoor robot moves from the current grid to the optional adjacent grid in the joining path set.
If the motion constraint level is no level, meaning that there is no restriction on the magnitude of the corners in the moving path of the outdoor robot, whether the trajectory is sufficiently smooth, etc., then all optional adjacency grids are added to the path set.
If the motion constraint level is a relaxed level, an optional adjacency grid with a direction coefficient less than or equal to 0 is added to the path set, i.e. only an optional adjacency grid differing by no more than 90 degrees from the forward direction can be added to the path set.
If the motion constraint level is a strict level, an optional adjacency grid with a direction coefficient less than 0 is added to the path set, i.e. only an optional adjacency grid differing from the advancing direction by less than 90 degrees can be added to the path set.
In one embodiment, the method further comprises the steps of:
the path node number of the grid added to the path set based on the current grid is set to be self-increased by 1.
In this embodiment, a corresponding path node number may be generated for a grid added to the path set based on the current grid, and when the path node number is generated, the path node number added to the path set based on the current grid may be determined by directly performing self-increasing 1 on the basis of the path node number of the current grid.
S150, generating a planning path based on the path set.
In one embodiment, each grid in the path set has its corresponding path node number, and the path node numbers may be sequentially arranged to generate a planned path, where when generating the planned path, the grids for the same path node number may be randomly selected one to generate the planned path, since there may be multiple grids for the same path node number in the path set.
In another embodiment, for each grid in the path set, a greedy algorithm may be used, each time a grid with the largest path node number is selected from the path set, when there are multiple grids with the same path node number, a grid with the smallest potential field value is selected, when there are multiple grids with the same path node number, the selected grid is selected to be added to the path, marking may be performed, for example, a close state, then, all optional adjacent grids may be searched with a strict level of a motion constraint level, the adjacent grids with the marked state being close or obstacle grids are discarded, and the rest of the grids are added to the path set, and the steps are repeated until the path set is empty, where the obtained result may refer to a planned path schematic diagram of fig. 4.
The embodiment provides a path planning method, which can firstly determine a target operation grid area, acquire a path set generated in real time in the path searching process of the target operation grid area, determine a current grid and a previous grid from the path set, determine optional adjacent grids of the current grid in the target operation grid area, determine the direction coefficient of each optional adjacent grid one by one based on the current grid and the previous grid, determine the direction of a motion trend used by each optional adjacent grid, then combine with kinematic constraint, determine a current motion constraint level, judge whether to add the optional adjacent grid into the path set according to the current motion constraint level and the direction coefficient of each optional adjacent grid, generate a planned path based on the path set, and the generated planned path can meet the requirement of an outdoor robot using an ackermann chassis on full path coverage, and obtain a planned path with high coverage rate, thereby improving the working efficiency of the outdoor robot.
Example two
Fig. 5 is a flowchart of a path planning method according to a second embodiment of the present invention.
The contents of this embodiment are explained further on the basis of the first embodiment.
As shown in fig. 5, the present embodiment may include the steps of:
s510, determining a target job grid area.
S520, acquiring a path set generated in real time in the path searching process of the target operation grid area, and determining a current grid and a previous grid from the path set.
S530, determining optional adjacent grids of the current grid in the target operation grid area, and determining the direction coefficients of the optional adjacent grids one by one based on the current grid and the previous grid.
S540, determining the current motion constraint level, and judging whether to add the optional adjacent grids into the path set according to the current motion constraint level and the direction coefficients of the optional adjacent grids.
S550, generating a planning path based on the path set.
In the present embodiment, step S510 and step S550 are specifically explained with reference to step S110 and step S150 of the first embodiment.
S560, determining a path node grid and a non-path node grid in the path set according to the planned path.
In this embodiment, not all grids in the path set are already in the planned path, e.g. when the planned path is generated by sorting by path node number, part of the grids with the same path node number may not yet fall in the planned path. Referring to fig. 4, it can be seen that, after the motion constraint, in the planned path in fig. 4, the corners between the grids are small, and there are no portions where the outdoor robot cannot perform, such as right angles. When generating a planned path based on a path set, there are cases where a part of the grid is not covered after generating the planned path. Specifically, if the outdoor robot is a sweeping robot, the sweeping robot does not move to reach the uncovered grids, and the uncovered grids cannot be cleaned, so that the sweeping robot cannot well complete the work of the outdoor robot.
Therefore, the path node grids and the non-path node grids can be determined according to grids in the generated planning path, wherein the path node grids fall on the planning path, and the non-path node grids do not fall on the planning path, so that the non-path node grids can be processed later, and the non-path node grids can be added into the planning path, so that the fully-covered path planning can be completed better.
S570, clustering the non-path node grids according to the set grid distance to generate one or more grid clusters.
In this embodiment, the non-path node grids may be clustered at a set grid distance, and for example, the set grid distance may be 1, that is, clustering is performed for optional adjacent grids, to generate one or more grid clusters.
S580, determining the number of grids of each grid cluster, marking grids in the grid clusters with the number smaller than or equal to the set number threshold as path node grids, and determining the grid clusters with the number larger than the set number threshold as the grid clusters to be searched.
And S590, taking the last path node grid of the planned path as the current grid, and carrying out path search in the target operation grid area.
In this embodiment, the grids in the grid clusters with the number of grids smaller than or equal to the set number threshold are marked as path node grids, and the grid clusters with the number of grids larger than the set number threshold in the grid clusters are determined as the to-be-searched grid clusters, that is, the area of the area formed by the non-path node grids is larger, and path searching is continued, so that full coverage is realized.
In order to realize the full coverage of the planned path, the last path node grid of the planned path can be used as the current grid, and a new round of non-repeated path search is performed in the target operation grid area, so that the indoor robot moves from the current grid to the area where the grid cluster to be searched is located.
In one embodiment, the path search in the target job grid area in S590 includes the steps of:
performing path searching under a strict level;
if the path to any grid cluster to be searched cannot be searched under the strict level, the motion constraint level is reduced to the loose level and the search is restarted;
if the path to any grid cluster to be searched is not searched under the loose level, the motion constraint level is reduced to no level and the search is restarted until the path to any grid cluster to be searched is searched.
In this embodiment, the path to any grid cluster to be searched may be searched starting from the last path node grid of the planned path as the current grid, so as to complete coverage of the area corresponding to the grid cluster to be searched.
Because the area corresponding to the grid cluster to be searched may be smaller, the path may not be searched in a searching manner with kinematic constraint, in order to make the searched path meet the kinematic constraint to the greatest extent, path searching may be performed under a strict level, and if the path to any grid cluster to be searched is not searched under the strict level, the motion constraint level may be reduced to a loose level and searching may be restarted. If no paths to any of the grid clusters to be searched are searched at the loose level or the lower level, the motion constraint level may be reduced to no level and the search restarted until a path to any of the grid clusters to be searched is searched.
By way of example, when relaxing the level of motion constraint, it is understood that the requirement for the turning angle is relaxed, and when no path to any one grid cluster to be searched is found when defined by the turning angle being an acute angle, it is relaxed to allow a right angle turn to search.
And S5010, when a path to any grid cluster to be searched is searched, taking the grid cluster to be searched as a target grid cluster for next planning.
In this embodiment, under a certain motion constraint level, the principle of performing path searching may be to pick the grid with the largest path node number from the path set each time, select the grid with the small potential field value if the path node numbers are the same, and select the grid added to the path set first if the potential field values are the same until a certain grid belonging to the grid cluster to be searched is searched, where the grid corresponds to the target grid cluster planned next time in the grid cluster to be searched.
S5011, when the next path planning is performed, path searching is performed in the target grid cluster, after the path searching is completed in the target grid cluster, the last path node grid of the searched path is used as the current grid, paths which go to other grid clusters to be searched are continuously searched, the searched grid cluster to be searched is used as the next planned target grid cluster, and the like until all the grid clusters to be searched complete the path searching, and an updated planning path is obtained.
In this embodiment, after the path searching is completed in the target grid cluster, each grid in the target grid cluster may be covered, so that, in order to make other grid clusters to be searched possible to be covered, the last path node grid of the path searched in the target grid cluster may be used as the current grid, the path to be searched for other grid clusters to be searched may be continuously searched in the same manner, the searched grid cluster to be searched is used as the target grid cluster planned next time, and so on, so that all the grids in the grid clusters to be searched may be the grids on the planned path to complete the coverage.
Referring to a full coverage plan path schematic of fig. 6, it can be seen from a comparison of fig. 6 and fig. 4 that the number of grids covered by the path in fig. 6 is significantly increased, and there may be a case where the rotation angle is large because the search may be performed in a loose level or no level. Referring to fig. 6, fig. 6 presents a partially apparent polyline, i.e., there is a corner in the planned path that is at a right angle.
In order to meet the requirement of an outdoor robot using an ackerman chassis on full path coverage, the path planning method disclosed by the embodiment can cluster non-path node grids according to a set grid distance to generate one or more grid clusters, determine the grid number of each grid cluster, determine the grid clusters with the grid number larger than a set number threshold as a grid cluster to be searched, and can take the last path node grid of a planned path as a current grid, perform path searching in a target operation grid area, when the path to any one grid cluster to be searched is searched, take the grid cluster to be searched as a target grid cluster of the next planning, perform path searching in the target grid cluster when the path is planned next, take the last path node grid of the searched path as the current grid after the path searching in the target grid cluster is completed, continue searching paths to other grid clusters to be searched, take the searched grid clusters to be searched as the target grid cluster of the next planning, and the like until all the grid clusters to be searched are completed with the path searching, so that the path searching is updated, the path is obtained, the path is planned by the outdoor robot is improved, the path planning method is improved, and the outdoor machine is ensured, and the outdoor machine is capable of planning the path is improved.
Example III
Fig. 7 is a flowchart of a path planning method according to a third embodiment of the present invention.
The contents of this embodiment are explained further on the basis of the first embodiment and the second embodiment.
As shown in fig. 7, the present embodiment may include the steps of:
s710, determining a target job grid area.
S720, acquiring a path set generated in real time in the path searching process of the target operation grid area, and determining the current grid and the previous grid from the path set.
S730, determining optional adjacent grids of the current grid in the target job grid area, and determining direction coefficients of the optional adjacent grids one by one based on the current grid and the previous grid.
S740, determining the current motion constraint level, and judging whether to add the optional adjacent grids into the path set according to the current motion constraint level and the direction coefficients of the optional adjacent grids.
S750, generating a planning path based on the path set.
In the present embodiment, step S710 and step S750 can be specifically explained with reference to step S110 and step S150 of the first embodiment.
S760, determining a path node grid and a non-path node grid in the path set according to the planned path.
And S770, clustering the non-path node grids according to the set grid distance to generate one or more grid clusters.
S780, determining the number of grids of each grid cluster, marking grids in the grid clusters with the number smaller than or equal to the set number threshold as path node grids, and determining the grid clusters with the number larger than the set number threshold as to-be-searched grid clusters.
S790, taking the last path node grid of the planned path as the current grid, and carrying out path search in the target operation grid area.
S7010, when a path to any one grid cluster to be searched is searched, the grid cluster to be searched is used as a target grid cluster for next planning.
S7011, when the next path planning is performed, path searching is performed in the target grid cluster, after the path searching is completed in the target grid cluster, the last path node grid of the searched path is used as the current grid, paths which go to other grid clusters to be searched are continuously searched, the searched grid cluster to be searched is used as the next planned target grid cluster, and the like until all the grid clusters to be searched complete the path searching, and an updated planning path is obtained.
In the present embodiment, step S760 and step S7011 can be specifically explained with reference to step S560 and step S5011 of the second embodiment.
S7012, starting to traverse from the second path node grid of the updated planned path, and determining the first rotation angle according to the path node grid currently traversed, the previous path node grid and the next path node grid.
In this embodiment, since the paths of the target grid cluster are searched and the motion constraint level that may be used when searching in the target grid cluster is relatively loose, the searched paths may have road sections with right angle turns, and the trimming operation may be performed on the paths to obtain smooth paths.
Specifically, the path node grids of the planned path can be updated to start traversing, and according to the path node grids currently traversed, a first rotation angle corresponding to the path node grids currently traversed is calculated according to the path node grids currently traversed and the path node grids next traversed, wherein the first rotation angle is a corner along the advancing direction.
S7013, if the first rotation angle is smaller than 90 degrees, it is determined that the current path node grid does not need to be trimmed, and the next path node grid is continuously traversed.
In this embodiment, for the first rotation angle smaller than 90 degrees, the outdoor robot can well complete the movement, and pruning may not be required, so when the first rotation angle is smaller than 90 degrees, the next path node grid may be continuously traversed.
S7014, if the first rotation angle is greater than or equal to 90 degrees, it is determined that the current path node grid needs to be trimmed, and a corresponding trimming operation is performed.
In the present embodiment, for the first rotation angle of 90 degrees or more, the outdoor robot has difficulty in completing the movement well, and then it is necessary to perform trimming so that the first rotation angle is less than 90 degrees.
In one embodiment, the trimming operation includes:
deleting the current path node grid in the updated planning path, and acquiring a front path node grid of the front path node grid;
calculating a second rotation angle according to the front path node grid, the front path node grid and the next path node grid of the front path node grid;
if the second rotation angle is smaller than 90 degrees, continuing to traverse the next path node grid;
if the second rotation angle is greater than or equal to 90 degrees, starting from the previous path node grid in the updated planning path, and taking n continuous path node grids as path segments to be trimmed;
Starting path searching from the previous path node grid;
and if a new path containing n path node grids is searched, replacing the path segments to be trimmed with the new path.
In this embodiment, in a specific pruning operation, the current path node grid may be deleted first, and the previous path node grid, the previous path node grid and the next path node grid of the previous path node grid may be obtained, and the second rotation angle may be calculated, and if the second rotation angle is smaller than 90 degrees, it is indicated that the pruning is successful, and the next path node grid may be traversed continuously.
If the pruning fails, n continuous path node grids are taken from the previous path node grid in the updated planning path as the path segments to be pruned, and the path searching is performed from the previous path node grid. Illustratively, starting from the previous path node grid, n continuous path node grids are taken, where n is initially 0, if the path search fails, n may be added with 1,0< = n < = 5, and if a new path including n path node grids is searched, the new path may be replaced with the path segment to be trimmed.
When the method is implemented, if a path is not searched within the range of n, the path segment to be trimmed is maintained, and the next path node grid is traversed continuously.
In one embodiment, the method further comprises:
if two adjacent path nodes with intervals exceeding a set interval threshold exist in the trimmed planning path, linear interpolation processing is carried out in the two adjacent path nodes.
In this embodiment, if the planned path after trimming is a broken line segment, there are two adjacent path nodes with an interval exceeding the set interval threshold, and linear interpolation processing may be performed in the two adjacent path nodes.
Referring to a schematic diagram of a trimmed planned path in fig. 8, even if a corner greater than or equal to 90 degrees is trimmed, as can be seen from fig. 8, a part of a broken line section still exists in the line i, and an error still exists if the broken line section directly tracks an outdoor robot.
Linear interpolation processing can be performed in the two adjacent path nodes to encrypt the path points, an optimization objective equation is established for the path points after interpolation and kinematic constraint is added, the path can be smoothed by using a gradient optimization method, a smooth path shown as a line II in fig. 8 is finally obtained, and the smooth path can be provided for tracking of an outdoor robot to perform covering work such as cleaning work and the like.
In this embodiment, a path planning method is provided, by starting to traverse from a second path node grid of an updated planned path, determining a first rotation angle according to a currently traversed path node grid, a previous path node grid and a next path node grid, when the first rotation angle is smaller than 90 degrees, determining that the current path node grid does not need to be trimmed, and continuing to traverse the next path node grid, if the first rotation angle is greater than or equal to 90 degrees and is not suitable for the outdoor robot to finish moving, determining that the current path node grid needs to be trimmed, and executing corresponding trimming operation to obtain a planned path with high coverage rate and high smoothness, and further improving the working efficiency of the outdoor robot.
Example IV
Fig. 9 is a schematic structural diagram of a path planning apparatus according to a fourth embodiment of the present invention, as shown in fig. 9, where the apparatus includes:
a target job grid area determination module 910 for determining a target job grid area;
a path set acquisition module 920, configured to acquire a path set generated in real time during a path searching process in the target job grid area;
a first grid determining module 930, configured to determine a current grid and a previous grid from the path set;
A second grid determination module 940 for determining an optional neighboring grid of the current grid in the target job grid area;
a direction coefficient determining module 950, configured to determine, based on the current grid and the previous grid, a direction coefficient of each optional adjacent grid one by one;
a current motion constraint level determination module 960 for determining a current motion constraint level;
a determining module 970, configured to determine whether to add the optional neighboring grids to the path set according to the current motion constraint level and the direction coefficient of each optional neighboring grid;
a planned path generation module 980 for generating a planned path based on the set of paths.
In one embodiment, the target job grid area determination module 910 includes the following sub-modules:
the target operation area determining submodule is used for determining a target operation area;
the rasterization processing submodule is used for carrying out rasterization processing on the target operation area so as to determine an obstacle grid set and a non-obstacle grid set;
a closed grid region determination submodule for determining a closed grid region surrounded by obstacle grids in the obstacle grid set;
And the target operation grid area determination submodule is used for taking the closed grid area and grids in the closed grid area as target operation grid areas.
In one embodiment, each grid in the path set carries path association information, the path association information comprising: path node number, potential field value, and joining time information for joining the path set;
the first grid determining module 930 includes the following sub-modules:
a path node number maximum grid determining submodule, configured to determine a grid with a path node number maximum in the path set;
the first current grid determining submodule is used for taking the grid with the largest path node number as the current grid when the grid with the largest path node number is one;
the second current grid determining submodule is used for selecting a grid with the minimum potential field value from grids with the maximum path node number as the current grid when the number of the grids with the maximum path node number exceeds one;
a third current grid determining submodule, configured to select, when more than one grid with the minimum potential field value in the grids with the largest path node numbers, a grid with the earliest time information added therein as a current grid;
And the binding sub-module is used for determining a previous grid from previous grid information bound with the current grid after determining the current grid.
In one embodiment, the direction coefficient determining module 950 includes the following sub-modules:
a first direction coefficient sub-module, configured to calculate, when the previous grid exists, a coordinate dot product of a forward direction as the direction coefficient according to coordinates of the previous grid, the current grid, and the optional neighboring grid;
and the second direction coefficient submodule is used for acquiring the orientation angle of the current grid when the previous grid does not exist, and calculating the coordinate dot product of the advancing direction according to the orientation angle, the coordinates of the current grid and the optional adjacent grid to serve as the direction coefficient.
In one embodiment, the second grid determining module 940 is specifically configured to:
determining adjacent grids of the current grid in the target operation grid area, and acquiring the state of each adjacent grid;
if the adjacent grid is judged to be an obstacle grid or a grid added with a path set according to the state of the adjacent grid, judging that the adjacent grid is not an optional adjacent grid;
And if the adjacent grid is judged to be a non-obstacle grid according to the state of the adjacent grid and the path set is not added, judging that the adjacent grid is an optional adjacent grid.
In one embodiment, the motion constraint levels include strict, relaxed, no levels; the judging module 970 is specifically configured to:
if the motion constraint level is no level, adding all optional adjacent grids into the path set;
if the motion constraint level is a loose level, adding an optional adjacent grid with a direction coefficient less than or equal to 0 to the path set;
and if the motion constraint level is a strict level, adding an optional adjacent grid with the direction coefficient smaller than 0 to the path set.
In one embodiment, the apparatus further comprises the following modules:
and the self-increasing module is used for setting the path node number of the grid added to the path set based on the current grid as the path node number of the current grid to be self-increased by 1.
In one embodiment, the apparatus further comprises the following modules:
a third grid determining module, configured to determine a path node grid and a non-path node grid in the path set according to the planned path, where the path node grid falls on the planned path, and the non-path node grid does not fall on the planned path;
The clustering module is used for clustering the non-path node grids according to the set grid distance to generate one or more grid clusters;
the grid number determining module is used for determining the grid number of each grid cluster, marking grids in the grid clusters with the grid number smaller than or equal to a set number threshold as path node grids, and determining the grid clusters with the grid number larger than the set number threshold as grid clusters to be searched;
the path searching module is used for taking the last path node grid of the planned path as a current grid and carrying out path searching in the target operation grid area;
the target grid cluster determining module is used for taking the grid cluster to be searched as a target grid cluster planned next time when a path to any grid cluster to be searched is searched;
and the updating planning path determining module is used for carrying out path searching in the target grid cluster when the next path planning is carried out, taking the last path node grid of the searched path as the current grid after the path searching is completed in the target grid cluster, continuously searching paths going to other grid clusters to be searched, taking the searched grid cluster to be searched as the target grid cluster for the next planning, and the like until all the grid clusters to be searched complete the path searching, and obtaining the updated planning path.
In one embodiment, the path search module includes the following sub-modules:
the first path searching sub-module is used for searching paths under the strict level;
a second path searching sub-module, configured to reduce the motion constraint level to a loose level and restart searching when a path to any grid cluster to be searched cannot be searched under a strict level;
and the third path searching sub-module is used for reducing the motion constraint level to be no level and restarting searching until the path to any grid cluster to be searched is searched when the path to any grid cluster to be searched is not searched under the loose level.
In one embodiment, the apparatus is further for:
traversing from a second path node grid of the updated planning path, and determining a first rotation angle according to the path node grid traversed currently, the previous path node grid and the next path node grid, wherein the first rotation angle is a corner along the advancing direction;
if the first rotation angle is smaller than 90 degrees, judging that the current path node grid does not need to be trimmed, and continuing to traverse the next path node grid;
if the first rotation angle is greater than or equal to 90 degrees, judging that the current path node grid needs to be trimmed, and executing corresponding trimming operation.
In one embodiment, the trimming operation comprises:
deleting a current path node grid in the updated planning path, and acquiring a previous path node grid of the previous path node grid;
calculating a second rotation angle according to a front path node grid of the front path node grid, the front path node grid and the next path node grid;
if the second rotation angle is smaller than 90 degrees, continuing to traverse the next path node grid;
if the second rotation angle is greater than or equal to 90 degrees, starting from the previous path node grids in the updated planning path, taking n continuous path node grids as path segments to be trimmed;
starting path searching from the previous path node grid;
and if a new path containing n path node grids is searched, replacing the path segments to be trimmed with the new path.
In one embodiment, the apparatus further comprises the following modules:
and the linear interpolation processing module is used for performing linear interpolation processing on two adjacent path nodes when the two adjacent path nodes with the intervals exceeding the set interval threshold value exist in the trimmed planning path.
The path planning device provided by the embodiment of the invention can realize the path planning method provided by the first to third embodiments of the invention, and has the corresponding functional modules and beneficial effects of the execution method.
Example five
Fig. 10 shows a schematic diagram of the structure of an electronic device 10 that may be used to implement an embodiment of the invention. Electronic devices are intended to represent various forms of digital computers, such as laptops, desktops, workstations, personal digital assistants, servers, blade servers, mainframes, and other appropriate computers. Electronic equipment may also represent various forms of mobile devices, such as personal digital processing, cellular telephones, smartphones, wearable devices (e.g., helmets, glasses, watches, etc.), and other similar computing devices. The components shown herein, their connections and relationships, and their functions, are meant to be exemplary only, and are not meant to limit implementations of the inventions described and/or claimed herein.
As shown in fig. 10, the electronic device 10 includes at least one processor 11, and a memory, such as a Read Only Memory (ROM) 12, a Random Access Memory (RAM) 13, etc., communicatively connected to the at least one processor 11, in which the memory stores a computer program executable by the at least one processor, and the processor 11 may perform various appropriate actions and processes according to the computer program stored in the Read Only Memory (ROM) 12 or the computer program loaded from the storage unit 18 into the Random Access Memory (RAM) 13. In the RAM13, various programs and data required for the operation of the electronic device 10 may also be stored. The processor 11, the ROM12 and the RAM13 are connected to each other via a bus 14. An input/output (I/O) interface 15 is also connected to bus 14.
Various components in the electronic device 10 are connected to the I/O interface 15, including: an input unit 16 such as a keyboard, a mouse, etc.; an output unit 17 such as various types of displays, speakers, and the like; a storage unit 18 such as a magnetic disk, an optical disk, or the like; and a communication unit 19 such as a network card, modem, wireless communication transceiver, etc. The communication unit 19 allows the electronic device 10 to exchange information/data with other devices via a computer network, such as the internet, and/or various telecommunication networks.
The processor 11 may be a variety of general and/or special purpose processing components having processing and computing capabilities. Some examples of processor 11 include, but are not limited to, a Central Processing Unit (CPU), a Graphics Processing Unit (GPU), various specialized Artificial Intelligence (AI) computing chips, various processors running machine learning model algorithms, digital Signal Processors (DSPs), and any suitable processor, controller, microcontroller, etc. The processor 11 performs the various methods and processes described above, such as a path planning method.
In some embodiments, a path planning method may be implemented as a computer program tangibly embodied on a computer-readable storage medium, such as storage unit 18. In some embodiments, part or all of the computer program may be loaded and/or installed onto the electronic device 10 via the ROM12 and/or the communication unit 19. One or more steps of a path planning method described above may be performed when the computer program is loaded into RAM13 and executed by processor 11. Alternatively, in other embodiments, the processor 11 may be configured to perform a path planning method in any other suitable way (e.g., by means of firmware).
Various implementations of the systems and techniques described here above may be implemented in digital electronic circuitry, integrated circuit systems, field Programmable Gate Arrays (FPGAs), application Specific Integrated Circuits (ASICs), application Specific Standard Products (ASSPs), systems On Chip (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and/or combinations thereof. These various embodiments may include: implemented in one or more computer programs, the one or more computer programs may be executed and/or interpreted on a programmable system including at least one programmable processor, which may be a special purpose or general-purpose programmable processor, that may receive data and instructions from, and transmit data and instructions to, a storage system, at least one input device, and at least one output device.
A computer program for carrying out methods of the present invention may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus, such that the computer programs, when executed by the processor, cause the functions/acts specified in the flowchart and/or block diagram block or blocks to be implemented. The computer program may execute entirely on the machine, partly on the machine, as a stand-alone software package, partly on the machine and partly on a remote machine or entirely on the remote machine or server.
In the context of the present invention, a computer-readable storage medium may be a tangible medium that can contain, or store a computer program for use by or in connection with an instruction execution system, apparatus, or device. The computer readable storage medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. Alternatively, the computer readable storage medium may be a machine readable signal medium. More specific examples of a machine-readable storage medium would include an electrical connection based on one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
To provide for interaction with a user, the systems and techniques described here can be implemented on an electronic device having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to a user; and a keyboard and a pointing device (e.g., a mouse or a trackball) through which a user can provide input to the electronic device. Other kinds of devices may also be used to provide for interaction with a user; for example, feedback provided to the user may be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form, including acoustic input, speech input, or tactile input.
The systems and techniques described here can be implemented in a computing system that includes a background component (e.g., as a data server), or that includes a middleware component (e.g., an application server), or that includes a front-end component (e.g., a user computer having a graphical user interface or a web browser through which a user can interact with an implementation of the systems and techniques described here), or any combination of such background, middleware, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: local Area Networks (LANs), wide Area Networks (WANs), blockchain networks, and the internet.
The computing system may include clients and servers. The client and server are typically remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other. The server can be a cloud server, also called a cloud computing server or a cloud host, and is a host product in a cloud computing service system, so that the defects of high management difficulty and weak service expansibility in the traditional physical hosts and VPS service are overcome.
It should be appreciated that various forms of the flows shown above may be used to reorder, add, or delete steps. For example, the steps described in the present invention may be performed in parallel, sequentially, or in a different order, so long as the desired results of the technical solution of the present invention are achieved, and the present invention is not limited herein.
The above embodiments do not limit the scope of the present invention. It will be apparent to those skilled in the art that various modifications, combinations, sub-combinations and alternatives are possible, depending on design requirements and other factors. Any modifications, equivalent substitutions and improvements made within the spirit and principles of the present invention should be included in the scope of the present invention.

Claims (15)

1. A method of path planning, the method comprising:
determining a target operation grid area;
acquiring a path set generated in real time in the process of carrying out path searching in the target operation grid area, and determining a current grid and a previous grid from the path set;
determining optional adjacent grids of a current grid in the target operation grid area, and determining direction coefficients of the optional adjacent grids one by one based on the current grid and the previous grid;
Determining a current motion constraint level, and judging whether to add the optional adjacent grids into the path set according to the current motion constraint level and the direction coefficients of the optional adjacent grids;
a planned path is generated based on the set of paths.
2. The method of claim 1, wherein the determining a target job grid area comprises:
determining a target operation area;
rasterizing the target operation area to determine an obstacle grid set and a non-obstacle grid set;
determining a closed grid area surrounded by barrier grids in the barrier grid set;
and taking the closed grid area and grids in the closed grid area as target operation grid areas.
3. The method according to claim 1 or 2, wherein each grid in the set of paths carries path-related information comprising: path node number, potential field value, and joining time information for joining the path set;
the determining a current grid from the path set includes:
determining a grid with the largest path node number in the path set;
if the grid with the largest path node number is one, the grid with the largest path node number is used as the current grid;
If the number of the grid with the largest path node number exceeds one, selecting the grid with the smallest potential field value from the grids with the largest path node number as the current grid;
if the number of the path node is the smallest, selecting the grid with the earliest time information from the grids with the largest potential field value as the current grid;
after the current grid is determined, a previous grid is determined from previous grid information to which the current grid is bound.
4. A method according to claim 3, wherein said determining the direction coefficients of each optional neighboring grid one by one based on the current grid, the previous grid, comprises:
if the previous grid exists, calculating a coordinate dot product of the advancing direction according to the coordinates of the previous grid, the current grid and the optional adjacent grid as the direction coefficient;
and if the previous grid does not exist, acquiring an orientation angle of the current grid, and calculating a coordinate dot product of the advancing direction as the direction coefficient according to the orientation angle, the coordinates of the current grid and the optional adjacent grid.
5. The method of claim 1, wherein the determining an optional adjacency grid for a current grid in the target job grid area comprises:
Determining adjacent grids of the current grid in the target operation grid area, and acquiring the state of each adjacent grid;
if the adjacent grid is judged to be an obstacle grid or a grid added with a path set according to the state of the adjacent grid, judging that the adjacent grid is not an optional adjacent grid;
and if the adjacent grid is judged to be a non-obstacle grid according to the state of the adjacent grid and the path set is not added, judging that the adjacent grid is an optional adjacent grid.
6. The method of claim 1 or 2 or 5, wherein the level of motion constraint comprises a strict level, a relaxed level, a no level;
the step of judging whether to add the optional adjacent grids to the path set according to the current motion constraint level and the direction coefficient of each optional adjacent grid comprises the following steps:
if the motion constraint level is no level, adding all optional adjacent grids into the path set;
if the motion constraint level is a loose level, adding an optional adjacent grid with a direction coefficient less than or equal to 0 to the path set;
and if the motion constraint level is a strict level, adding an optional adjacent grid with the direction coefficient smaller than 0 to the path set.
7. The method according to claim 1 or 2 or 5, further comprising:
setting the path node number of the grid added to the path set based on the current grid as the path node number of the current grid is increased by 1.
8. The method according to claim 1, wherein the method further comprises:
determining a path node grid and a non-path node grid in the path set according to the planned path, wherein the path node grid falls on the planned path, and the non-path node grid does not fall on the planned path;
clustering the non-path node grids according to the set grid distance to generate one or more grid clusters;
determining the number of grids of each grid cluster, marking grids in the grid clusters with the number smaller than or equal to a set number threshold as path node grids, and determining the grid clusters with the number larger than the set number threshold as to-be-searched grid clusters;
taking the last path node grid of the planned path as a current grid, and carrying out path searching in the target operation grid area;
when a path to any grid cluster to be searched is searched, the grid cluster to be searched is used as a target grid cluster for next planning;
And when the next path planning is carried out, carrying out path searching in the target grid cluster, taking the last path node grid of the searched path as the current grid after the path searching is completed in the target grid cluster, continuously searching paths going to other grid clusters to be searched, taking the searched grid cluster to be searched as the target grid cluster for the next planning, and the like until all the grid clusters to be searched are completed with the path searching, and obtaining the updated planning path.
9. The method of claim 8, wherein the performing a path search in the target job grid area comprises:
performing path searching under a strict level;
if the path to any grid cluster to be searched cannot be searched under the strict level, the motion constraint level is reduced to the loose level and the search is restarted;
if the path to any grid cluster to be searched is not searched under the loose level, the motion constraint level is reduced to no level and the search is restarted until the path to any grid cluster to be searched is searched.
10. The method according to claim 8 or 9, wherein after obtaining the updated planned path, the method further comprises:
Traversing from a second path node grid of the updated planning path, and determining a first rotation angle according to the path node grid traversed currently, the previous path node grid and the next path node grid, wherein the first rotation angle is a corner along the advancing direction;
if the first rotation angle is smaller than 90 degrees, judging that the current path node grid does not need to be trimmed, and continuing to traverse the next path node grid;
if the first rotation angle is greater than or equal to 90 degrees, judging that the current path node grid needs to be trimmed, and executing corresponding trimming operation.
11. The method of claim 10, wherein the trimming operation comprises:
deleting a current path node grid in the updated planning path, and acquiring a previous path node grid of the previous path node grid;
calculating a second rotation angle according to a front path node grid of the front path node grid, the front path node grid and the next path node grid;
if the second rotation angle is smaller than 90 degrees, continuing to traverse the next path node grid;
if the second rotation angle is greater than or equal to 90 degrees, starting from the previous path node grids in the updated planning path, taking n continuous path node grids as path segments to be trimmed;
Starting path searching from the previous path node grid;
and if a new path containing n path node grids is searched, replacing the path segments to be trimmed with the new path.
12. The method according to claim 10, wherein the method further comprises:
if two adjacent path nodes with intervals exceeding a set interval threshold exist in the trimmed planning path, linear interpolation processing is carried out in the two adjacent path nodes.
13. A path planning apparatus, the apparatus comprising:
a target job grid area determination module for determining a target job grid area;
the path set acquisition module is used for acquiring a path set generated in real time in the path searching process of the target operation grid area;
a first grid determining module, configured to determine a current grid and a previous grid from the path set;
a second grid determination module for determining an optional neighboring grid of the current grid in the target job grid area;
the direction coefficient determining module is used for determining the direction coefficient of each optional adjacent grid one by one based on the current grid and the previous grid;
The current motion constraint level determining module is used for determining the current motion constraint level;
the judging module is used for judging whether the optional adjacent grids are added into the path set according to the current motion constraint level and the direction coefficients of the optional adjacent grids;
and the planning path generation module is used for generating planning paths based on the path set.
14. An electronic device, the electronic device comprising:
at least one processor; and a memory communicatively coupled to the at least one processor; wherein the memory stores a computer program executable by the at least one processor to enable the at least one processor to perform a path planning method as claimed in claims 1-12.
15. A computer readable storage medium, characterized in that the computer readable storage medium stores computer instructions for causing a processor to implement a path planning method as claimed in claims 1-12 when executed.
CN202310058562.0A 2023-01-17 2023-01-17 Path planning method, device, equipment and storage medium Pending CN116009552A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310058562.0A CN116009552A (en) 2023-01-17 2023-01-17 Path planning method, device, equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310058562.0A CN116009552A (en) 2023-01-17 2023-01-17 Path planning method, device, equipment and storage medium

Publications (1)

Publication Number Publication Date
CN116009552A true CN116009552A (en) 2023-04-25

Family

ID=86031770

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310058562.0A Pending CN116009552A (en) 2023-01-17 2023-01-17 Path planning method, device, equipment and storage medium

Country Status (1)

Country Link
CN (1) CN116009552A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116562598A (en) * 2023-07-07 2023-08-08 成都花娃网络科技有限公司 Distribution scheduling method, device and storage medium

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116562598A (en) * 2023-07-07 2023-08-08 成都花娃网络科技有限公司 Distribution scheduling method, device and storage medium
CN116562598B (en) * 2023-07-07 2023-09-19 成都花娃网络科技有限公司 Distribution scheduling method, device and storage medium

Similar Documents

Publication Publication Date Title
CN108444482B (en) Unmanned aerial vehicle autonomous road finding and obstacle avoiding method and system
WO2020134082A1 (en) Path planning method and apparatus, and mobile device
JP6828044B2 (en) Route deviation recognition method, terminal, and storage medium
US11877716B2 (en) Determining region attribute
Wu et al. Automated extraction of ground surface along urban roads from mobile laser scanning point clouds
CN108805327B (en) Method and system for robot path planning and environment reconstruction based on virtual reality
CN108763287A (en) On a large scale can traffic areas driving map construction method and its unmanned application process
CN109163722B (en) Humanoid robot path planning method and device
CN111152266B (en) Control method and system of cleaning robot
CN111080786B (en) BIM-based indoor map model construction method and device
US10192004B2 (en) Estimation of three-dimensional models of roofs from spatial two-dimensional graphs
CN106204719B (en) Magnanimity model real-time scheduling method in three-dimensional scenic based on two-dimensional neighbourhood retrieval
CN109374005B (en) Ship internal path planning method based on ship VR model
CN116009552A (en) Path planning method, device, equipment and storage medium
CN112237403B (en) Covering path generation method for cleaning device and cleaning device
US20160019248A1 (en) Methods for processing within-distance queries
WO2015066714A1 (en) Estimation of three-dimensional models of roofs from spatial two-dimensional graphs
CN116036604A (en) Data processing method, device, computer and readable storage medium
CN115826586B (en) Path planning method and system integrating global algorithm and local algorithm
CN108986212B (en) Three-dimensional virtual terrain LOD model generation method based on crack elimination
CN112686476A (en) Path generation method, system, equipment and storage medium applied to map
CN115096313B (en) Data processing method and device for regional obstacle avoidance
CN111912411A (en) Robot navigation positioning method, system and storage medium
CN117058358B (en) Scene boundary detection method and mobile platform
CN117311384A (en) Unmanned aerial vehicle flight path generation method and device, electronic equipment and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination