CN114115284B - Unknown maze traversal method based on detection and following of nearest and unaccessed gaps to target - Google Patents

Unknown maze traversal method based on detection and following of nearest and unaccessed gaps to target Download PDF

Info

Publication number
CN114115284B
CN114115284B CN202111462554.XA CN202111462554A CN114115284B CN 114115284 B CN114115284 B CN 114115284B CN 202111462554 A CN202111462554 A CN 202111462554A CN 114115284 B CN114115284 B CN 114115284B
Authority
CN
China
Prior art keywords
gap
robot
gaps
depth
maze
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.)
Active
Application number
CN202111462554.XA
Other languages
Chinese (zh)
Other versions
CN114115284A (en
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.)
Beijing Institute of Technology BIT
Original Assignee
Beijing Institute of Technology BIT
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 Beijing Institute of Technology BIT filed Critical Beijing Institute of Technology BIT
Priority to CN202111462554.XA priority Critical patent/CN114115284B/en
Publication of CN114115284A publication Critical patent/CN114115284A/en
Application granted granted Critical
Publication of CN114115284B publication Critical patent/CN114115284B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0257Control of position or course in two dimensions specially adapted to land vehicles using a radar
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0214Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with safety or protection criteria, e.g. avoiding hazardous areas
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0221Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving a learning process
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0276Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle

Abstract

The invention discloses an unknown maze traversal method based on detecting and following a gap which is nearest to a target and is not accessed, which is characterized in that a free space around a robot is determined based on depth information and the size of the robot, which are scanned by a sensor in depth; scanning depth points in a free space to search for discontinuity, further obtaining a gap, and further obtaining an effective gap; establishing a topological map of the effective gaps in a kdtree form; searching gaps which can be searched by the robot currently in a topological map by combining the current position of the robot, arranging the distances between the middle points of the gaps and the maze end points from large to small, and finally selecting the gaps which are nearest to the maze end points and are not visited as sub-targets for searching and visiting at the next moment; the topological map of the gap is used for checking whether the robot has repeated access, so that the robot is helped to avoid being stuck in a dead end or in circulation; the method can enable the robot to reach any one target point in the maze.

Description

Unknown maze traversal method based on detection and following of gaps which are nearest to target and are not visited
Technical Field
The invention belongs to the technical field of robot control, and particularly relates to an unknown maze traversal method based on detection and following of a gap which is nearest to a target and is not accessed
Background
A complex environment containing different road branches is called a maze. The objective of the maze problem solution is to find a path with the shortest path and the highest efficiency in the shortest time as possible, and reach the maze end point (target point) along the path. The maze solving system can be applied to a plurality of fields such as fire rescue, disaster relief robots, intelligent traffic control systems and the like. There are many different maze solutions available today, which can be roughly divided into two categories: based on the known maze model solution, the structure of the whole maze model is known at the beginning of the problem solution; based on sensor information solution, when the problem is solved, the maze structure is unknown, and the unknown maze is traversed by the sensor information.
There are many different maze solutions available today, which can be roughly divided into two categories: based on the known maze model solution, the structure of the whole maze model is known at the beginning of the problem solution; based on sensor information solution, when the problem is solved, the maze structure is unknown, and the unknown maze is traversed by the sensor information.
The scheme for solving based on the known maze model mainly comprises Flood fill and an improved algorithm thereof, and a related algorithm based on image processing and graph theory. Flood fill and its improved algorithm are only applicable to environments where the maze path boundaries are well defined. And because the algorithm is based on the graph theory, huge memory space and complex recursive operation are needed, and the time complexity and the operation amount of the algorithm rise exponentially along with the increase of the maze. And such algorithms do not have a mechanism to distinguish whether a region of the maze has been visited.
Besides the disadvantages of the graph theory, the algorithm is based on the image processing, so that a complete maze map is needed at first to solve, and the solving process is easily interfered by different illumination conditions of the maze site environment
Navigation schemes based on gap searching have also proven successful in mobile robot applications, but using only gap information is not sufficient to guide the robot successfully through an unknown maze. And the method is likely to cause the robot to generate oscillatory motion. Although there are many improvements in this type of method, most of them only depend on the distance between each gap and the end point when selecting the next gap for searching, which easily causes the robot to get into a dead end.
The image processing and graph theory-based correlation algorithm has the disadvantages of the graph theory, and is based on the image processing, so that a complete maze map is required at the beginning of solving, and the solving process is easily interfered by different illumination conditions of the maze site environment.
Algorithms based solely on gap traversal, such as Nearness-Diagram (ND) gap-based methods. Such methods are likely to cause the robot to generate oscillatory motions. Although there are many improvements in this type of method, most of them only depend on the distance between each gap and the end point when selecting the next gap for searching, which easily causes the robot to get into a dead end.
The technical scheme for solving the maze based on traversal mainly comprises the following steps: random Mouse, wall Follower, pledge algorithm, and Tremaux's algorithm. Random Mouse is a tedious and unintelligent traversal scheme, and when a robot in a maze searches for an end point target, the robot only moves along one direction until the robot reaches a branched intersection of the maze. When the robot reaches the bifurcation junction, one branch is randomly selected as the next direction. Wall follower can only be used to solve simple labyrinths, and if a complex maze is encountered, the solving process may be trapped in dead loops, and the whole algorithm degenerates into circles all along the Wall. The Pliedge algorithm is an improved algorithm of wall fellower, solves the problem that the former can be trapped in dead loop, but cannot solve the scheme of reaching certain points in a maze. The Tremaux algorithm is an efficient maze solution, but it requires drawing a line on the ground of the maze to identify the path.
However, most of the above conventional solutions not only require a lot of time for calculation but also easily cause the solving process to fall into a dead end.
Disclosure of Invention
Aiming at the defects in the prior art, the unknown maze traversal method based on the detection and the following of the gaps which are nearest to the target and are not visited is provided, fuzzy gaps detected around the robot can be eliminated, and the robot is prevented from being stuck in a dead moustache or a cycle.
The technical scheme adopted by the invention is as follows:
an unknown maze traversal method based on detecting and following a nearest and unvisited gap from a target, comprising the following steps:
s1, determining a free space around the robot based on depth information and the size of the robot, wherein the depth information and the size of the robot are scanned by a sensor in a depth mode;
s2, in the free space, detecting all depth points p in the free space i =(r ii ) Searching discontinuous depth points; r is i Representing the distance, θ, from the ith depth point of the depth scan i Is the included angle between the ith depth point and the horizontal coordinate;
s3, searching for gaps from the discontinuous depth points; the specific process of searching for the gap in S3:
s3.1, continuously scanning the depth points clockwise, and dividing theta in the discontinuous depth points i Large starting point p as gap s (g)=(r ss ) (ii) a Scanning all depth points p after the start point counter-clockwise k Judging p one by one k Whether valid or not, all valid p k Is placed in the set V (L) a ) In (1), V (L) is added a ) Selecting the point closest to the starting point as the gap end point p e (g) (ii) a Placing the found gap in a set Gc;
s3.2, adopting a method of scanning anticlockwise firstly and then scanning clockwise as in S3.1 to obtain a gap set and recording the gap set as Ga;
s3.3, finally the robot is in position p r All gaps detected at this point are denoted as G = Ga ═ Gc.
S4, obtaining effective gaps for all the searched gaps G;
s5, establishing a topological map of the effective gap in a kdtree form;
and S6, searching gaps which can be searched by the robot currently in the topological map by combining the current position of the robot, arranging the distances between the middle points of the gaps and the maze end points from large to small, and finally selecting the gap which is closest to the maze end point and is not visited as a sub-target for searching and visiting at the next moment.
S7, the depth scan information around the robot and the selected sub-target are used as inputs to DWA (dynamic window method), and a control command for the robot is generated. Thereby driving the robot to the selected sub-goal.
Further, the judgment basis of the discontinuous depth point in S2 is:
a: two successively measured depth points (p) i ,p i±1 ) The distance between the two exceeds the minimum width of the space which can be passed by the robot;
b:p i or p i±1 Is a point of no obstacle, i.e. p i Or p i±1 Depth value r of k =r max ;r max The maximum distance for depth scanning of the sensor;
when two successively measured depth points (p) i ,p i±1 ) When one of the two conditions is satisfied, it is assumed that there is a discontinuity between the two consecutively measured depth points.
Further, p is judged in S3 k The effective method is as follows: will be the point p k Connecting with the starting point, if the connecting line of the two points passes through the barrier or the closed area, then the point p k Is invalid; the opposite is valid.
Further, p is judged in S3 k The effective method comprises the following steps: from r k 、r s 、D k Enclosing into a triangle, and taking D k Corresponding angle
Figure BDA0003388822610000031
Figure BDA0003388822610000032
Is represented as follows:
Figure BDA0003388822610000033
if p is k It is effective to satisfy the following conditions:
Figure BDA0003388822610000034
wherein r is s Is the position p of the robot r And the starting point p s (g) Distance between r and k is p s (g) And p k Distance between, D k Is p r And p k A distance of between, V (L) a ) Is effectively p k Set of (2), L a Is scanning p counter-clockwise s (g) Set of all subsequent depth points; p is a radical of formula i+(k+1) Is the i + (k + 1) th depth point;
Figure BDA0003388822610000041
represents the occurrence of p in La s (g) Rear p k The angle corresponding to the previous series of points.
Further, the method for eliminating useless and ambiguous gaps by S4 comprises the following steps: discarding the gap directly facing the robot;
further, the method for eliminating useless and ambiguous gaps by S4 comprises the following steps: robot center p r And the starting point p of the gap s (g) The connecting line of (A) is a discontinuous reference line, and the included angle between the discontinuous reference line and a line segment formed by connecting two ends of the gap is called a front angle theta front When 0 is not more than theta front Theta is less than or equal to theta, or phi-theta is less than or equal to theta front If the value is less than or equal to pi, discarding the gap; theta is a set angle threshold;
further, the method for eliminating useless and ambiguous gaps by S4 comprises the following steps: if one gap is located at the end angle (theta) of the other gap se ) Within the range, discarding one of the gaps according to the following formula;
θ s (g j )≥θ s (g i )∧θ e (g j )≤θ e (g i )
wherein, theta s (g j )、θ e (g j ) Respectively, the start angle and end angle of the jth gap, theta s (g i )、θ e (g i ) Respectively the starting angle and the end angle of the ith gap.
Further, the sensor selects a laser radar, and the depth information of the surrounding environment of the robot is obtained by using the laser radar.
The invention has the beneficial effects that:
an unknown maze traversal method based on detecting and following gaps nearest to the target and not visited is proposed, which works to eliminate the fuzzy gaps detected around the robot, unlike the existing gap-based methods. These gaps are used to design a maze traversal algorithm, which ensures that the robot does not get stuck in a cul-de-sac or cycle based on constructing a topological graph of the traversable positions of the maze. To my knowledge, gap-based navigation is for the first time applied in a maze-like environment in both simulated and real-world environments. In contrast to Wall Follow, random Mouse and Pliedge, the algorithm does not get stuck in a loop due to revisit checks, unlike the algorithms of Wall Follow, random Mouse, pliedge and Tremaux, which can reach any target within the maze.
The algorithm is successfully tested in different simulation and experiment environments, and shows that the robot can safely pass through a simple and complex imperfect maze with U-shaped obstacles and dead angles and generate a track close to the optimal track. The experimental result shows that the path length is superior to Wall follow, and the performance of the path length is superior to that of the existing gap-based navigation method in the aspect of traversal of dead angles. In some environments, the result is better than or equal to RRT even if the robot has no a priori information of the environment. This work is extended to area coverage and the information gain of actively building maps in completely unknown environments is optimized as future work.
Drawings
FIG. 1 is a flow diagram of the present invention;
FIG. 2 is a schematic diagram of the present invention for obtaining a start point and an end point of a gap;
FIG. 3 is a schematic view of a detected gap;
fig. 4 is a diagram in which S and G represent a start point and an end point, respectively, and a topological map.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention more apparent, the present invention is described in further detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.
An unknown maze traversal method based on detecting and following a gap nearest to and not visited by a target as shown in fig. 1 comprises the following steps:
s1, determining a free space around the robot based on depth information and the size of the robot around the robot scanned by the sensor depth.
In this embodiment, the sensor uses a laser radar to obtain depth information of the surrounding environment (i.e. the unknown maze environment) of the robot, and the formed area is a free space.
In this embodiment, the radius of the circumscribed circle of the robot may be used as a criterion for determining whether the robot can pass through the gap.
S2, in the free space, depth scanning is carried out to detect all depth points in the free space, and discontinuous depth points are searched.
The specific process is as follows:
s2.1, firstly, scanning in free space to obtain a set D of all depth points s
Establishing a sensor coordinate system by taking the sensor as a center, continuously scanning the depth in the sensor coordinate system in a counterclockwise/clockwise direction to obtain a set of all depth points, and recording the set as D s ={p 1 ;…;p n At the ith depth point p in polar or Cartesian coordinate system i Can be respectively recorded as (r) ii ) And (x) i ,y ii ) Wherein r is i Representing the distance from the ith depth point obtained by the depth scanning, and the maximum distance of the sensor depth scanning is recorded as r max ,θ i Is the ith depth point p i The angle between the horizontal coordinate and the reference plane.
S2.2, judging two continuously measured depth points (p) in the set i ,p i±1 ) Whether the depth points are continuous or not is judged, and the basis for judging whether the two continuously measured depth points are discontinuous or not is as follows:
a two consecutively measured depth points (p) i ,p i±1 ) The distance between the two exceeds the minimum width of the space which can be passed by the robot;
b:p i or p i±1 Is a point of no obstacle, i.e. p i Or p i±1 Depth value r of k =r max
When two successively measured depth points (p) i ,p i±1 ) When one of the two conditions is satisfied, it is assumed that there is a discontinuity between the two consecutively measured depth points.
It should be noted here that the discontinuity in the first case has two boundary points, while the discontinuity in the second case has only one boundary point.
S3, searching for gaps from discontinuous depth points
S3.1, the gap is determined by first successively scanning clockwise in a first step to obtain a depth point p 1 To p n In clockwise scanning by θ s ≥θ e (ii) a Finding the starting point of the gap, starting point (r) ss ) A reference point pref (g), also called gap; second counter-clockwise scanning p n To p 1 Finding the end point (r) of the gap ee ). The process of finding the end point of the gap is described in detail below:
during the clockwise scanning, the point (p) obtained by every two consecutive scans is judged according to the angle i ,p i±1 ) If there is a starting point of the gap, the starting point is marked as p s (g)=(r ss )。
Counter clockwise sweep p s (g) The set of all depth points thereafter is L a ={p i+1 ;:::;p m And ensure that the angular range of the scan does not exceed pi:
L a ={p k ∈p i+(k+1) |r k ≠r max }
determine L one by one a Point (e.g. p) in k ) If valid, a decision point p k The effective method is as follows:
first one: will the point p k Is connected with the starting point, if the connection line of the two points passes through the obstacle or the closed area, the point p k It is invalid; the opposite is valid.
Second, by r k 、r s 、D k Enclosing into a triangle, and taking D k Corresponding angle
Figure BDA0003388822610000062
Figure BDA0003388822610000063
Is represented as follows:
Figure BDA0003388822610000064
wherein r is s Is the position p of the robot r And the starting point p s (g) Distance between r k Is p s (g) And p k Distance between, D k Is p r And p k The distance between them.
p k The following conditions must be met if effective:
Figure BDA0003388822610000065
wherein p is i+(k+1) Is the i + (k + 1) th depth point;
Figure BDA0003388822610000066
represents the occurrence of p in La s (g) Rear p k The angle corresponding to the previous series of points.
All valid p k Is placed in the set V (L) a ) In (1), then V (L) a ) Middle distance p s (g) The closest point is the gap end point p e (g)。
The above method is a method of scanning clockwise and then counterclockwise to obtain a starting point and an end point of a gap, and the method is repeated to obtain gaps between all discontinuous depth points, thereby forming a set Gc.
S3.2, the steps of scanning in a first reverse direction and then in a second forward direction are similar, and the obtained gap set is marked as Ga.
S3.3, all gaps eventually detected by the robot at position pr may be scored as G = Ga £ Gc.
The steps S3.1 and S3.2 are not in sequence, and the sequence of the steps is only for convenience of description, and may be S3.2 followed by S3.1.
The gap is detected clockwise and then anticlockwise in the upper graph, the range which can be detected by the sensor (laser radar) is detected, the solid line represents the starting point (end point) of the detection laser, and the solid small circle represents the reflection point (namely p) detected by the sensor 1 To p n ) The dotted line represents the reference line of the gap, i.e. p s (g) And p r The connecting line of (2).
Referring to FIG. 2, in the diagram a, the first discontinuity E, i.e. the gap start p, is detected clockwise s (g) And then, the only valid point is detected counterclockwise as G, and the corresponding angles of all points before G are larger than those of G, so that all points before G are considered as invalid points. Taking point F before G as an example, the angle formed by the EF line and the detected central axis in the figure
Figure BDA0003388822610000071
The angle is larger than the angle corresponding to the point G, and the EF connecting line is intuitively seen to pass through the barrier, so the point F is invalid. Similarly, point B in the graph B is also a discontinuous point, i.e. the starting point of the gap, all points (the right gray point) before B are valid points, and C is the closest to B in all valid points, so C is the end point of the gap BC, thereby finding the gap BC.
S4, further obtaining effective gaps by eliminating useless and ambiguous gaps for all the searched gaps G; there are three methods for eliminating useless and ambiguous gaps:
a, discarding the gap directly facing the robot;
b, discontinuous reference line (robot center p) r And the starting point p of the gap s (g) A line connecting both ends of the gap) and a line segment connecting both ends of the gap is called a rake angle theta front
θ front =||θ(p s (g))-θ(p e (g))||
When 0 is more than or equal to theta front Theta is less than or equal to theta, or phi-theta is less than or equal to theta front If the value is less than or equal to pi, discarding the gap; theta is a set angle threshold value, and the value range of theta is 0-5 degrees in practical application, namely theta means that theta is front Gaps near 0 or π are also discarded.
c, in the gap judging process, two gaps may be expressed at the same position as in FIG. 3 (b), gap AB and AE; if one gap results in another gap, only the first gap is considered and the other gap is discarded.
If one gap is located at the end angle (theta) of the other gap se ) Within range, one of the gaps is discarded according to the following equation. In fig. 3 (c), a depth scan around the robot is shown in the 3D Gazebo model, and its corresponding gap is extracted according to the above-mentioned gap extraction method.
θ s (g j )≥θ s (g i )∧θ e (g j )≤θ e (g i )
Wherein, theta s (g j )、θ e (g j ) Respectively, the start angle and end angle of the jth gap, theta s (g i )、θ e (g i ) Respectively, the starting angle and the end angle of the ith gap.
In fig. 3 (a), (B), the black circle at point a creates a reference for the discontinuity ps (g) for the first counterclockwise gap, while point B creates the terminating side p for the gap e (g) Similarly, point C represents the beginning side of the second counterclockwise gap, and point D represents the end of the discontinuity. Further, point D represents the start side of the discontinuous point DE in the clockwise direction, and point E represents the end side thereof. The beginning side of the second clockwise discontinuity EA at point E is represented by the back circle, while its ending side is represented by another black circle at point a.
Since the gaps EA and CD can be reached by DE and AB, respectively, one of the repeated gaps is discarded according to the equation in S4.3.
S5, establishing a topological map of the effective gap in a kdtree form; the establishment of the topological map is based on a Cartesian coordinate system, and after sub-targets are made into sparse map nodes in a kdtree form during map establishment, the shortest path can be easily extracted through the kttree traversed by the map. The method of storing the gaps allowing the robot to pass through by sparse graph nodes reduces the calculation complexity of the algorithm, and is of great significance to the mobile robot with low calculation power and a small battery in the maze.
In the present embodiment, taking fig. 4 (a) as an example, the gray area in fig. 4 (a) represents the depth scan around the robot, and the small black circle represents the reference of the gap. The robot will detect the gap (0) starting from position (S), in which case it is the only nearest neighbor that has not been visited so far since the tree has only one node and will therefore be chosen as a sub-goal, the robot will start following it until it is reached. Once the robot reaches this gap, it will be stored in the access node list. These gaps use g0, g1 is described in TABLE1 instead of 0,1. On the way to g0, the robot will detect gaps g1 and g2. Now the k-nearest neighbor may have 3 gaps G0, G1, G2, the robot will select G1 because G1 is very close to the final target G and has not been visited so far. When the robot reaches g1, now the only gap in the k nearest neighbor list { g0, g1, g2} that is not visited is g2, so the robot will start to follow g2 and detect a new gap g3 en route, when the robot reaches g2, now g3 is the only gap in the list { g0, g1, g2, g3} that is not visited, so the robot will move forward to follow g3, a similar explanation applies when the robot reaches 3, 4, 5, 6, 7 and 8. In FIG. 4 (a), the accessed, unaccessed, and selected sub-targets illustrated in the k-nearest neighbor TABLE at points X, Y, and Z are illustrated in TABLE 1.
TABLE I:Seraching unvisited gap in the robot’s k-nearest neighbors.
Figure BDA0003388822610000091
And S6, searching gaps which can be searched by the robot currently in the topological map by combining the current position of the robot, arranging the distances between the gaps (middle points) and the maze end points from large to small, and finally selecting the gap which is closest to the maze end point and is not visited as a sub-target for searching and visiting at the next moment.
Each gap (midpoint) is represented as:
Figure BDA0003388822610000092
wherein x is t i ,y t i Respectively the abscissa and ordinate, x, of the gap midpoint e i 、y e i Coordinate point of end point, x s i 、y s i A coordinate point which is a starting point.
S7, the depth scan information around the robot and the selected sub-target are used as inputs to DWA (dynamic window method), and a control command for the robot is generated. Thereby driving the robot to the selected sub-target.
The above embodiments are only used for illustrating the design idea and features of the present invention, and the purpose of the present invention is to enable those skilled in the art to understand the content of the present invention and implement the present invention accordingly, and the protection scope of the present invention is not limited to the above embodiments. Therefore, all equivalent changes and modifications made in accordance with the principles and concepts disclosed herein are intended to be included within the scope of the present invention.

Claims (8)

1. An unknown maze traversal method based on detecting and following a nearest and unvisited gap from a target, characterized by comprising the following steps:
s1, determining a free space around the robot based on depth information and the size of the robot, wherein the depth information and the size of the robot are scanned by a sensor in a depth mode;
s2, detecting all depth points p in the free space i =(r ii ) Searching discontinuous depth points; r is i RepresentDepth scanning to obtain the distance theta of the ith depth point i Is the included angle between the ith depth point and the horizontal coordinate;
s3, searching for gaps from the discontinuous depth points; the specific process of searching for the gap in S3:
s3.1, continuously scanning the depth points clockwise, and dividing theta in the discontinuous depth points i Large starting point p as gap s (g)=(r ss ) (ii) a Scanning all depth points p after the start point counter-clockwise k Judging p one by one k Whether valid or not, all valid p k Is placed in the set V (L) a ) In (1), V (L) is added a ) The point closest to the starting point is selected as the gap end point p e (g) (ii) a Placing the found gap in a set Gc;
s3.2, adopting a method of firstly scanning anticlockwise and then scanning clockwise as in S3.1 to obtain a gap set and recording the gap set as Ga;
s3.3, finally the robot is in position p r All gaps detected at this point are denoted as G = Ga ═ Gc;
s4, obtaining effective gaps for all the searched gaps G;
s5, establishing a topological map of the effective gap in a kdtree form;
s6, searching gaps which can be searched by the robot currently in a topological map by combining the current position of the robot, arranging the distances between the middle points of the gaps and the maze end points from large to small, and finally selecting the gap which is closest to the maze end point and is not visited as a sub-target for searching and visiting at the next moment;
s7, the depth scanning information around the robot and the selected sub-targets are used as input of a dynamic window method together to generate a control command of the robot; thereby driving the robot to the selected sub-target.
2. The unknown maze traversal method based on the detection and following of the nearest and unvisited gap from the target as claimed in claim 1, wherein the judgment basis of the discontinuous depth points in S2 is:
a: two measured in successionDepth point (p) i ,p i±1 ) The distance between the two exceeds the minimum width of the space which can be passed by the robot;
b:p i or p i±1 Is a point of no obstacle, i.e. p i Or p i±1 Depth value r = r max ;r max The maximum distance for depth scanning of the sensor;
when two successively measured depth points (p) i ,p i±1 ) When one of the two conditions is satisfied, it is assumed that there is a discontinuity between the two consecutively measured depth points.
3. The unknown maze traversal method based on detecting and following the nearest and unvisited gap from the target as claimed in claim 1, wherein p is judged in S3 k The effective method is as follows: will be the point p k Connecting with the starting point, if the connecting line of the two points passes through the barrier or the closed area, then the point p k Is invalid; the opposite is valid.
4. The unknown maze traversal method based on detecting and following the nearest and unvisited gap from the target as claimed in claim 1, wherein p is judged in S3 k The effective method is as follows: from r k 、r s 、D k Enclosing into a triangle, and taking D k Corresponding angle
Figure FDA0003388822600000021
Figure FDA0003388822600000022
Is represented as follows:
Figure FDA0003388822600000023
if p is k It is effective to satisfy the following conditions:
Figure FDA0003388822600000024
wherein r is s Is the position p of the robot r And the starting point p s (g) Distance between r and k is p s (g) And p k Distance between, D k Is p r And p k A distance of between, V (L) a ) Is valid for p k Set of (2), L a Is scanning p counterclockwise s (g) Set of all depth points thereafter; p is a radical of i+(k+1) Is the i + (k + 1) th depth point;
Figure FDA0003388822600000025
represents the occurrence of La in p s (g) Rear p k The angle corresponding to the previous series of points.
5. The unknown maze traversal method based on detecting and following gaps nearest to the target and not visited in claim 1, wherein the method for eliminating useless and ambiguous gaps by S4 is as follows: discarding the gap directly facing the robot.
6. The unknown maze traversal method based on detecting and following gaps nearest to the target and not visited in claim 1, wherein the method for eliminating useless and ambiguous gaps by S4 is as follows: robot center p r And the starting point p of the gap s (g) The connecting line of (A) is a discontinuous reference line, and the included angle between the discontinuous reference line and the line segment formed by connecting two ends of the gap is called a front angle theta front When 0 is not more than theta front Theta is less than or equal to theta, or phi-theta is less than or equal to theta front If the value is less than or equal to pi, discarding the gap; theta is the set angle threshold.
7. The unknown maze traversal method based on detecting and following gaps nearest to the target and not visited in claim 1, wherein the method for eliminating useless and ambiguous gaps by S4 is as follows: if one gap is located at the end angle (theta) of the other gap se ) Within the range, discarding one of the gaps according to the following formula;
θ s (g j )≥θ s (g i )∧θ e (g j )≤θ e (g i )
wherein, theta s (g j )、θ e (g j ) Respectively, the start angle and end angle of the jth gap, theta s (g i )、θ e (g i ) Respectively the starting angle and the end angle of the ith gap.
8. An unknown maze traversal method based on the detection and following of the nearest and unvisited gap from the target as claimed in any one of claims 1-7, characterized in that the sensor selects laser radar, and the depth information of the robot surrounding environment is obtained by using the laser radar.
CN202111462554.XA 2021-12-02 2021-12-02 Unknown maze traversal method based on detection and following of nearest and unaccessed gaps to target Active CN114115284B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111462554.XA CN114115284B (en) 2021-12-02 2021-12-02 Unknown maze traversal method based on detection and following of nearest and unaccessed gaps to target

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111462554.XA CN114115284B (en) 2021-12-02 2021-12-02 Unknown maze traversal method based on detection and following of nearest and unaccessed gaps to target

Publications (2)

Publication Number Publication Date
CN114115284A CN114115284A (en) 2022-03-01
CN114115284B true CN114115284B (en) 2022-12-06

Family

ID=80366200

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111462554.XA Active CN114115284B (en) 2021-12-02 2021-12-02 Unknown maze traversal method based on detection and following of nearest and unaccessed gaps to target

Country Status (1)

Country Link
CN (1) CN114115284B (en)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103247040A (en) * 2013-05-13 2013-08-14 北京工业大学 Layered topological structure based map splicing method for multi-robot system
CN105474166A (en) * 2013-03-15 2016-04-06 先进元素科技公司 Methods and systems for purposeful computing
CN106873603A (en) * 2017-04-17 2017-06-20 成都信息工程大学 Computer mouse intelligence vehicle control and control method based on Zynq platforms
CN108255173A (en) * 2017-12-20 2018-07-06 北京理工大学 Robot follows barrier-avoiding method and device
RU2670826C1 (en) * 2017-08-24 2018-10-25 Федеральное государственное бюджетное образовательное учреждение высшего образования " Юго-Западный государственный университет" (ЮЗГУ) Method and mobile robot device for passing closed contours and labyrinths
CN109523548A (en) * 2018-12-21 2019-03-26 哈尔滨工业大学 A kind of narrow gap weld seam Feature Points Extraction based on threshold limit value
CN113091749A (en) * 2021-04-12 2021-07-09 上海大学 Walking navigation and repositioning method of humanoid robot in complex unknown maze environment

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105474166A (en) * 2013-03-15 2016-04-06 先进元素科技公司 Methods and systems for purposeful computing
CN103247040A (en) * 2013-05-13 2013-08-14 北京工业大学 Layered topological structure based map splicing method for multi-robot system
CN106873603A (en) * 2017-04-17 2017-06-20 成都信息工程大学 Computer mouse intelligence vehicle control and control method based on Zynq platforms
RU2670826C1 (en) * 2017-08-24 2018-10-25 Федеральное государственное бюджетное образовательное учреждение высшего образования " Юго-Западный государственный университет" (ЮЗГУ) Method and mobile robot device for passing closed contours and labyrinths
CN108255173A (en) * 2017-12-20 2018-07-06 北京理工大学 Robot follows barrier-avoiding method and device
CN109523548A (en) * 2018-12-21 2019-03-26 哈尔滨工业大学 A kind of narrow gap weld seam Feature Points Extraction based on threshold limit value
CN113091749A (en) * 2021-04-12 2021-07-09 上海大学 Walking navigation and repositioning method of humanoid robot in complex unknown maze environment

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
非完整轮式移动机器人轨迹跟踪控制研究;徐俊艳;《中国科学技术大学学报》;20040630;第34卷(第3期);第376-381页 *

Also Published As

Publication number Publication date
CN114115284A (en) 2022-03-01

Similar Documents

Publication Publication Date Title
Stentz The focussed d^* algorithm for real-time replanning
CN113467456B (en) Path planning method for specific target search under unknown environment
CN111610786B (en) Mobile robot path planning method based on improved RRT algorithm
CN109579854B (en) Unmanned vehicle obstacle avoidance method based on fast expansion random tree
Zohaib et al. Control strategies for mobile robot with obstacle avoidance
CN112683275B (en) Path planning method for grid map
Krinkin et al. Evaluation of modern laser based indoor slam algorithms
CN109459031A (en) A kind of unmanned plane RRT method for optimizing route based on greedy algorithm
CN113359718B (en) Method and equipment for fusing global path planning and local path planning of mobile robot
CN115079705A (en) Routing planning method for inspection robot based on improved A star fusion DWA optimization algorithm
CN113467476B (en) Collision-free detection rapid random tree global path planning method considering corner constraint
Sun et al. Frontier detection and reachability analysis for efficient 2D graph-SLAM based active exploration
Tay et al. An efficient formulation of the Bayesian occupation filter for target tracking in dynamic environments
Lee et al. Cost based planning with RRT in outdoor environments
CN114115284B (en) Unknown maze traversal method based on detection and following of nearest and unaccessed gaps to target
Yan et al. Obstacle avoidance for unmanned undersea vehicle in unknown unstructured environment
Song et al. G2P-SLAM: Generalized RGB-D SLAM framework for mobile robots in low-dynamic environments
CN116878527A (en) Hybrid path planning method and device based on improved adaptive window algorithm
Zhang et al. An improved dynamic step size RRT algorithm in complex environments
CN115407784A (en) Unmanned vehicle route planning method based on air-ground information complementation
CN112393739B (en) Improved rapid search random tree path planning method in large-area environment
CN114353814A (en) Improved JPS path optimization method based on Angle-Propagation Theta algorithm
Xu et al. Hybrid Frontier Detection Strategy for Autonomous Exploration in Multi-obstacles Environment
Zhang et al. Research on AGV map building and positioning based on SLAM technology
Wang et al. Reference path correction for autonomous ground vehicles driving over rough terrain

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
GR01 Patent grant
GR01 Patent grant