CN113741539A - Unmanned aerial vehicle plant protection operation air route planning method - Google Patents

Unmanned aerial vehicle plant protection operation air route planning method Download PDF

Info

Publication number
CN113741539A
CN113741539A CN202111130220.2A CN202111130220A CN113741539A CN 113741539 A CN113741539 A CN 113741539A CN 202111130220 A CN202111130220 A CN 202111130220A CN 113741539 A CN113741539 A CN 113741539A
Authority
CN
China
Prior art keywords
simulated
vertex
array
obstacle
obstacle area
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.)
Granted
Application number
CN202111130220.2A
Other languages
Chinese (zh)
Other versions
CN113741539B (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 Tt Aviation Technology Co ltd
Original Assignee
Beijing Tt Aviation 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 Beijing Tt Aviation Technology Co ltd filed Critical Beijing Tt Aviation Technology Co ltd
Priority to CN202111130220.2A priority Critical patent/CN113741539B/en
Publication of CN113741539A publication Critical patent/CN113741539A/en
Application granted granted Critical
Publication of CN113741539B publication Critical patent/CN113741539B/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, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/10Simultaneous control of position or course in three dimensions
    • G05D1/101Simultaneous control of position or course in three dimensions specially adapted for aircraft

Landscapes

  • Engineering & Computer Science (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

The utility model relates to an unmanned aerial vehicle plant protection operation air route planning method, including collecting plot data and obstacle area data at first, adjusting the vertex group data sequence therein clockwise, regarding plot and obstacle area as the polygon described by the vertex data, accurately calculating the safety boundary through polygon contraction/expansion function, and cutting or fusing plot and obstacle area through cutting/fusing algorithm function, thereby carrying out accurate calculation to large area of complex terrain, planning the air route based on accurate safety boundary. Therefore, the air route planning of the agricultural operation plot can be efficiently and accurately realized, the problem of contradiction between the capability of the unmanned aerial vehicle flyer and the operation plot with large area and high complexity in the prior art is solved, and great convenience is brought to the operation of the agricultural unmanned aerial vehicle.

Description

Unmanned aerial vehicle plant protection operation air route planning method
Technical Field
The application relates to the technical field of unmanned aerial vehicle control, in particular to an unmanned aerial vehicle plant protection operation air route planning method.
Background
In recent years, with the gradual popularization of the application of unmanned aerial vehicle technology in the agricultural field, mechanical labor such as seeding and pesticide spraying can be operated by flying hands to control the unmanned aerial vehicle. However, with the increase of the area of the operation land, the increase of the complexity of the operation land, the increase of the obstacle area inside the land, the increase of the operation distance and the like, the agricultural unmanned aerial vehicle manually controlled by the flyer is difficult to rapidly and efficiently complete the operation task, and the air route often has the condition of omission or repetition, so that the whole operation land can not be well covered, and great technical difficulty is brought to the operation of the unmanned aerial vehicle.
Disclosure of Invention
The application provides an unmanned aerial vehicle plant protection operation air route planning method, which aims to solve the problem that in the prior art, an unmanned aerial vehicle cannot perform efficient operation on large areas, long distances and complex terrains in agricultural application.
The above object of the present application is achieved by the following technical solutions:
the embodiment of the application provides an unmanned aerial vehicle plant protection operation air route planning method, which comprises the following steps:
collecting land data and obstacle area data, and adjusting a land vertex array in the land data and an obstacle area vertex array in the obstacle area data to be in a clockwise sequence;
obtaining a simulated land parcel and a simulated obstacle area which are formed by polygon vertexes based on the land parcel vertex array and the obstacle area vertex array, and calculating safety boundaries of the simulated land parcel and the simulated obstacle area based on a preset polygon contraction/expansion function;
based on a preset segmentation/fusion algorithm function, carrying out segmentation or fusion processing on the simulated land parcel and the simulated obstacle area to obtain an optimized simulated land parcel boundary and an optimized simulated obstacle area boundary;
rotating the optimized simulated parcel boundaries and simulated obstacle area boundaries according to a preset route angle, and obtaining an expression of a planned route based on a preset route distance;
marking and sequencing all intersection points with the simulated plots and the simulated obstacle areas respectively;
and selecting the intersection point which is closest to the current position of the unmanned aerial vehicle from all the intersection points as an initial position, executing a preset waypoint detection cycle to obtain a target route which uses up all waypoints, and taking the target route as a planning result and outputting the planning result.
Further, the waypoint detection loop includes: taking the planned route as a starting target route;
detecting whether the target route runs out of all waypoints;
if so, taking the planned route as a planning result and outputting the planning result;
if not, detecting whether an unused waypoint exists on the same straight line; if the unused waypoints do not exist, planning to obtain a new route based on the recently unused waypoints; if an unused waypoint exists, planning to obtain a new route based on the position information;
judging whether the new route passes through an obstacle or not, and if the new route passes through the obstacle, avoiding the obstacle based on a preset algorithm to obtain a target route; if the new route does not pass through the barrier, the new route is used as a target route;
and re-detecting whether the target route runs out of all waypoints or not until the target route runs out of all waypoints, and stopping circulation.
Further, the calculating the safety boundary of the simulated parcel and the simulated obstacle area based on the preset polygon contraction/expansion function includes:
acquiring a first vertex in the simulated land parcel or the simulated obstacle area, and finding a second vertex and a third vertex which are adjacent to the first vertex;
taking a straight line where the first vertex and the second vertex are located as a first straight line;
taking a straight line where the first vertex and the third vertex are located as a second straight line;
determining a fourth vertex with preset distances to the first straight line and the second straight line;
taking the fourth vertex as a target vertex after the first vertex contracts or expands for a preset distance;
finding target vertexes corresponding to all vertexes in the simulated land parcel or the simulated obstacle area, connecting corresponding target fixed points according to the data sequence of the vertexes of the simulated land parcel or the simulated obstacle area to obtain a safety boundary after the simulated land parcel or the simulated obstacle area is expanded or contracted, and updating the simulated land parcel or the simulated obstacle area.
Further, based on actual requirements, changing a preset distance corresponding to each vertex in the simulated land parcel or the simulated obstacle area, and determining a target vertex corresponding to each vertex;
and determining a safety boundary of the simulated land parcel or the simulated obstacle area after expansion or contraction based on the target vertex, and updating the simulated land parcel or the simulated obstacle area.
Further, the segmenting or fusing the simulated parcel and the simulated obstacle area based on a preset segmentation/fusion algorithm function to obtain an optimized simulated parcel boundary and an optimized simulated obstacle area boundary, including:
when the simulated land parcel is divided by the simulated obstacle area, dividing the simulated land parcel to obtain a plurality of sub-simulated land parcels;
when the simulated land parcel is overlapped with the simulated obstacle area, the overlapped part of the simulated obstacle area in the simulated land parcel is divided to obtain the simulated land parcel without the overlapped area of the simulated obstacle area and the simulated obstacle area with the increased overlapped area;
and when the simulated obstacle area is overlapped with other simulated obstacle areas, fusing the overlapped simulated obstacle areas to obtain a large simulated obstacle area.
Further, the segmenting or fusing the simulated land parcel and the simulated obstacle area based on a preset segmentation/fusion algorithm function to obtain an optimized simulated land parcel boundary and an optimized simulated obstacle area boundary, including segmenting the simulated land parcel:
adjusting the land parcel vertex array to be in a clockwise order, and adjusting the barrier area vertex array to be in a counterclockwise order;
calculating the intersection point of the simulated land parcel and the simulated obstacle area to obtain an intersection point array;
and respectively adding the data in the intersection point array into the plot vertex array and the barrier area vertex array in sequence to obtain a target plot vertex array and a target barrier area vertex array, and performing a segmentation algorithm:
traversing the whole array from the first vertex in the vertex array of the target plot, recording the vertex to a new simulation plot when judging that the current point is the vertex in the simulation plot, and continuously judging the next point in the vertex array of the target plot;
traversing the whole array from a first intersection point in the array of the top points of the target obstacle area, recording the top point to a new simulation land block when judging that the current point is the top point in the simulation obstacle area, and continuously judging the next point in the array of the top points of the target obstacle area;
when the current point in the target block vertex array or the target obstacle area vertex array is judged to be the intersection point in the intersection point array, recording the intersection point to a new simulation block, jumping to the intersection point position in the target obstacle area vertex array or the target block vertex array, and continuing to perform point-taking judgment and recording according to the sequence in the target obstacle area vertex array or the target block vertex array until the last point in the target block vertex array is recorded;
and repeating the segmentation algorithm from the first vertex which is not taken in the target land parcel vertex array to obtain a plurality of new simulated land parcels, and updating the simulated land parcels.
Further, the method includes segmenting or fusing the simulated parcel and the simulated obstacle area based on a preset segmentation/fusion algorithm function to obtain an optimized simulated parcel boundary and an optimized simulated obstacle area boundary, and further includes fusing the simulated obstacle area:
adjusting the vertex array of the first barrier area to be in a clockwise order, and adjusting the vertex array of the second barrier area to be in a counterclockwise order;
calculating the intersection point of the first simulated obstacle area and the second simulated obstacle area to obtain an intersection point array;
and adding the data in the intersection point array into the first barrier area vertex array and the second barrier area vertex array respectively in sequence to obtain a first target barrier area vertex array and a second target barrier area vertex array, and performing a fusion algorithm:
traversing the whole array from the first vertex of the first target obstacle area vertex array, recording the vertex to a new simulation obstacle area when judging that the current point is the vertex in the first simulation obstacle area, and continuously judging the next point in the first target obstacle area vertex array;
traversing the whole array from the first intersection point of the second target obstacle area vertex array, recording the vertex to a new simulation obstacle area when judging that the current point is the vertex in the second simulation obstacle area, and continuously judging the next point in the second target obstacle area vertex array;
when the current point in the first target obstacle area vertex array or the second target obstacle area vertex array is judged to be the intersection point in the intersection point array, the intersection point is recorded into a new simulated obstacle area, the position of the intersection point in the second target obstacle area vertex array or the first target obstacle area vertex array is jumped to, point taking judgment and recording are continuously carried out according to the sequence in the second target obstacle area vertex array or the first target obstacle area vertex array until the last point in the first target obstacle area vertex array is recorded, a new simulated obstacle area is obtained, and the simulated obstacle area is updated.
Further, if the obstacle passes through the obstacle, avoiding the obstacle based on a preset algorithm to obtain a target route, including:
performing obstacle avoidance in an obstacle area on the route through recursion obstacle avoidance based on a preset algorithm;
and obtaining a target route based on the obstacle avoidance result.
The technical scheme provided by the embodiment of the application can have the following beneficial effects: firstly, collecting land parcel data and obstacle area data, adjusting the sequence of the vertex group data to be a clockwise sequence, regarding the land parcel and the obstacle area as polygons described by the vertex data, accurately calculating a safety boundary through a polygon contraction/expansion function, and segmenting or fusing the land parcel and the obstacle area through a segmentation/fusion algorithm function, thereby accurately calculating large-area complex terrains, obtaining an accurate safety boundary, and planning a course. Therefore, the air route planning of the agricultural operation plot can be efficiently and accurately realized, the contradiction problem between the capability of the unmanned aerial vehicle flyer and the operation plot with large area and high complexity in the prior art is solved, and great convenience is brought to the operation of the agricultural unmanned aerial vehicle.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the application.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present application and together with the description, serve to explain the principles of the application.
Fig. 1 is a schematic flow chart of a method for planning an unmanned aerial vehicle plant protection operation route according to an embodiment of the present application;
fig. 2 is a schematic structural diagram of a planning method for an unmanned aerial vehicle plant protection operation route according to another embodiment of the present application;
fig. 3 is a schematic diagram illustrating a principle of a polygon boundary contraction/expansion function in a planning method of an unmanned aerial vehicle plant protection working route according to an embodiment of the present application;
fig. 4 is a schematic partial schematic diagram of a polygon boundary contraction/expansion function in a planning method of an unmanned aerial vehicle plant protection working route according to an embodiment of the present application;
fig. 5 is a schematic diagram illustrating a principle of a segmentation/fusion algorithm function of a planning method for a plant protection operation route of an unmanned aerial vehicle according to an embodiment of the present application;
fig. 6 is a schematic diagram illustrating a principle of obstacle avoidance in a reentrant obstacle area of an unmanned aerial vehicle plant protection operation route planning method according to an embodiment of the present application;
fig. 7 is a schematic view of a local principle of obstacle avoidance in a reentrant obstacle area of an unmanned aerial vehicle plant protection operation route planning method provided in an embodiment of the present application.
Detailed Description
Reference will now be made in detail to the exemplary embodiments, examples of which are illustrated in the accompanying drawings. When the following description refers to the accompanying drawings, like numbers in different drawings represent the same or similar elements unless otherwise indicated. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present application. Rather, they are merely examples of apparatus and methods consistent with certain aspects of the present application, as detailed in the appended claims.
For unmanned aerial vehicle agricultural operations, the core of the problem, namely the operation plot, can be represented as a polygon and can be described by a set of vertexes, so that the possibility of realizing intelligent route planning by using an algorithm is brought. The user inputs the vertex coordinates of the plot, the vertex coordinates of the obstacle area and other necessary parameters (the route distance, the boundary distance, the planning angle and the like), and the algorithm can feed back the route planning result and prompt marks for whether the unmanned aerial vehicle sprays/sows according to the data and the parameters. Currently existing route planning algorithms are all based on similar steps, but all have defects of different degrees. Such as. Some planning algorithms cannot process land parcels containing reentrant angles or obstacle areas containing reentrant angles, but in practical application, both the parcels and the obstacle areas contain reentrant angles are very common situations. In addition, some planning algorithms have low operation speed, and for the planning of land parcels with hundreds of vertexes, the operation time is as long as several minutes, and even the operation is broken down. Meanwhile, some planning algorithms can only process barrier areas (triangles, quadrangles, pentagons and the like) of given types, and some planning algorithms cannot freely adjust safety boundaries of plots and barrier areas, which all bring about problems in actual use and cannot solve the contradiction between the capability of unmanned aerial vehicle flyers and operation plots with large area and high complexity in the prior art.
The application provides an unmanned aerial vehicle plant protection operation air route planning method to solve prior art, unmanned aerial vehicle in agricultural application, can't carry out the problem of high-efficient operation to complicated topography, concrete implementation scheme carries out the detailed description through following embodiment.
Examples
Referring to fig. 1, fig. 1 is a schematic flow chart of a planning method for an unmanned aerial vehicle plant protection operation route provided in an embodiment of the present application, and as shown in fig. 1, the method at least includes the following steps:
s101, collecting land data and obstacle area data, and adjusting a land vertex array in the land data and an obstacle area vertex array in the obstacle area data to be in a clockwise sequence.
Specifically, the method comprises the steps of collecting land data and obstacle area data, wherein the land data and the obstacle area data are vertex arrays including a land and an obstacle area vertex, detecting the sequence of describing the land and the vertex arrays of all obstacle areas after the land and obstacle area vertex arrays are obtained, and adjusting all the sequences to be clockwise for subsequent use.
S102, obtaining a simulated land parcel and a simulated obstacle area which are formed by polygon vertexes based on the land parcel vertex array and the obstacle area vertex array, and calculating the safety boundary of the simulated land parcel and the simulated obstacle area based on a preset polygon contraction/expansion function.
Specifically, the safety boundaries of the plot and all of the obstacle areas are calculated. And (4) regarding the land parcel and all the obstacle areas as polygons described by the vertex arrays, obtaining simulated land parcels and simulated obstacle areas, and entering a polygon contraction/expansion function. And (4) contracting the safety boundary of the land parcel, and expanding the safety boundary of the obstacle area. For convenience of subsequent description and understanding, the polygon data after the safety boundary is calculated is referred to as a simulated parcel and a simulated obstacle region, which are also directly referred to as a parcel and an obstacle region, respectively.
S103, based on a preset segmentation/fusion algorithm function, segmenting or fusing the simulated land parcel and the simulated obstacle area to obtain an optimized simulated land parcel boundary and an optimized simulated obstacle area boundary.
Specifically, the method for segmenting and fusing the simulated land parcel and the simulated obstacle area comprises the following steps: detecting whether barrier areas are mutually overlapped or not, and if so, fusing a plurality of overlapped polygons into one polygon by using a polygon fusion function; detecting whether a barrier area intersects with the boundary of the land parcel, namely whether the barrier area is partially in the land parcel and partially out of the land parcel, if so, recalculating the boundary of the land parcel and excluding the barrier area; and detecting whether an obstacle area is completely outside the land parcel, and if so, deleting the obstacle area to enable the obstacle area not to participate in subsequent calculation.
And S104, rotating the optimized simulated parcel boundary and the simulated obstacle area boundary according to a preset air route angle, and obtaining an expression of a planned air route based on a preset air route distance.
And S105, marking and sequencing all the intersection points with the simulated land parcel and the simulated obstacle area respectively.
Specifically, according to the planning angle, the boundary of the land parcel and the boundary of all the obstacle areas are rotated, so that all potential routes can be described by x ═ k. And then obtaining expressions of all planned routes and part of routes according to the route distance, obtaining all intersections with the simulated plots and the obstacle areas, marking and sequencing all the intersections according to the rule that the intersection generated by the plots is A and the intersection generated by the obstacle areas is B.
And S106, selecting the intersection point which is closest to the current position of the unmanned aerial vehicle from all the intersection points as an initial position, executing a preset waypoint detection cycle to obtain a target route which uses up all waypoints, and taking the target route as a planning result and outputting the planning result.
It should be noted that, in the unmanned aerial vehicle plant protection operation route planning method provided in the embodiment of the present application, the waypoint detection cycle includes: taking the planned route as a starting target route; detecting whether the target route runs out of all waypoints; if so, taking the planned route as a planning result and outputting the planning result; if not, detecting whether an unused waypoint exists on the same straight line; if the unused waypoints do not exist, planning to obtain a new route based on the recently unused waypoints; if an unused waypoint exists, planning to obtain a new route based on the position information; judging whether the new route passes through an obstacle or not, and if the new route passes through the obstacle, avoiding the obstacle based on a preset algorithm to obtain a target route; if the new route does not pass through the barrier, the new route is used as a target route; and re-detecting whether the target route runs out of all waypoints or not until the target route runs out of all waypoints, and stopping circulation.
The unmanned aerial vehicle plant protection operation air route planning method provided by the embodiment of the application comprises the steps of firstly collecting land parcel data and obstacle area data, adjusting the data sequence of the vertex group data in the land parcel data and the obstacle area data to be a clockwise sequence, regarding the land parcel and the obstacle area as polygons described by the vertex data, accurately calculating a safety boundary through a polygon contraction/expansion function, and dividing or fusing the land parcel and the obstacle area through a division/fusion algorithm function, so that accurate calculation is carried out on large-area complex terrains, an accurate safety boundary is obtained, and an air route is planned. Therefore, the air route planning of the agricultural operation plot can be efficiently and accurately realized, the contradiction problem between the capability of the unmanned aerial vehicle flyer and the operation plot with large area and high complexity in the prior art is solved, and great convenience is brought to the operation of the agricultural unmanned aerial vehicle.
Fig. 2 is a schematic structural diagram of a planning method for a plant protection operation route of an unmanned aerial vehicle according to another embodiment of the present application, which mainly includes two parts, first, a first part is data sorting, including data acquisition, data normalization processing, invalid data removal, data error condition judgment, and error information reporting. The second part is planning operation, and after the finished and operable data is obtained, the planning operation is carried out and the result is returned. In order to make the structure simple and clear, the data arrangement part in the former stage adopts step 20X numbering, and the planning operation part in the later stage adopts step 30X numbering as shown in fig. 2:
step 201, collecting plot data, obstacle area data and other parameters, and at this time, the user can input parameters to control the data collection process, and the input parameters include: the course distance, the unmanned plane position, the safe margin, the planning angle, the planning scheme and the like.
Step 202, judging whether the data format is qualified, namely, performing data security check, and judging whether the input data format and length are correct. If not, the system is unqualified, error information is reported, and the operation is quitted.
Step 203, after passing the data security check and determining that the format and length of the input data are qualified, detecting the order of the vertex arrays describing the land parcel and all the obstacle areas, and adjusting all the vertex arrays to be clockwise, namely adjusting the vertex order of the polygon.
And step 204, calculating safety boundaries of the land parcel and all the barrier areas based on the sequenced data. The method comprises the steps of regarding the land parcel and all the barrier areas as polygons described by vertex arrays, entering a polygon contraction/expansion function, for example, the safety boundary of the land parcel is contracted, and the safety boundary of the barrier areas is expanded.
And step 205, judging the error condition of the data obtained in the step 204. When the following conditions exist, the operation is ended and error information is reported when the error exists, namely the error is judged to be unqualified, and the method comprises the following steps:
1. inside the parcel or any obstacle area array there is a NaN value, a 0 value or any value that does not conform to the format.
2. The length of the land parcel or any barrier area array is less than 2.
3. And (4) contracting errors including intersection, segmentation and the like in the safety boundary of the land parcel.
4. Any barrier zone safety boundary extension errors include intersections, partitions, and the like.
5. Other violated constraints restricted to the coordination system (maximum number of input plots, maximum number of planned voyages, etc.)
And step 206, detecting whether the obstacle area is covered or overlapped based on the qualified data obtained in the step. If there is overlap, a plurality of barrier regions with overlap are fused into one by using a polygon fusion function.
Step 207, it is then detected whether there is an obstacle area intersecting the boundary of the parcel, i.e., whether there is an obstacle area partially inside the parcel and partially outside the parcel. If so, recalculating the boundary of the land parcel and excluding the obstacle area.
And step 208, detecting whether a barrier area is completely outside the plot, namely detecting whether the barrier area and the plot have no intersection, and if so, deleting the barrier area to ensure that the barrier area does not participate in subsequent calculation.
And step 209, finally, rotating the boundaries of the parcel and all the boundaries of the obstacle area (no-fly area) according to the planning angle, so that all potential routes can be described by x-k.
So far, the data arrangement process is completed, and based on the obtained data, the planning operation of the air route is completed in the following process, which specifically comprises the following steps:
step 301, obtaining expressions of all planned routes according to the route distance, obtaining all intersections with the plot and the obstacle area, marking and sequencing all the intersections according to the rule that the intersection generated by the plot is A and the intersection generated by the obstacle area is B, namely calculating all potential waypoints, marking and sequencing, recording the waypoint generated by the plot as A and recording the waypoint generated by the obstacle area (no-fly area) as B.
And step 302, selecting the closest intersection point as an initial position from all the intersection points according to the current position of the unmanned aerial vehicle, and determining a planning starting point.
Step 303, in all the intersection points, detecting whether unused waypoints exist, that is, detecting whether all the waypoints are used up. If not, all the waypoints are used up, outputting a planning result; if all the waypoints are not used up, the algorithm is exited; if so, the following process steps are continued.
And step 304, detecting whether unused waypoints exist on the same straight line or not by referring to the position of the current intersection point. If so, step 305 is entered. If not, searching the intersection point closest to the current waypoint in all the unused intersection points, and planning the route to obtain the target route.
Step 305, detecting whether the current waypoint is at a point A or a point B. If the point A is located, on the same straight line, planning a route from A to B; if the points B are on the same straight line, a route from B to A is planned.
And step 306, detecting whether the target route of the route has an intersection with any obstacle area. If so, performing obstacle avoidance planning by using a recursive method, and after the detection is completed, returning to the step 201 to perform detection and planning on other routes or the rest routes on one route.
In some specific embodiments, the polygon contraction/expansion function mentioned in the above embodiments of the present application includes: acquiring a first vertex in the simulated land parcel or the simulated obstacle area, and finding a second vertex and a third vertex which are adjacent to the first vertex; taking a straight line where the first vertex and the second vertex are located as a first straight line; taking a straight line where the first vertex and the third vertex are located as a second straight line; determining a fourth vertex with preset distances to the first straight line and the second straight line; taking the fourth vertex as a target vertex after the first vertex contracts or expands for a preset distance; finding target vertexes corresponding to all vertexes in the simulated land parcel or the simulated obstacle area, connecting corresponding target fixed points according to the data sequence of the vertexes of the simulated land parcel or the simulated obstacle area to obtain a safety boundary after the simulated land parcel or the simulated obstacle area is expanded or contracted, and updating the simulated land parcel or the simulated obstacle area.
Specifically, fig. 3 is a schematic diagram of a principle of a polygon boundary contraction/expansion function provided in an embodiment of the present application, and fig. 4 is a schematic diagram of a part of the polygon boundary contraction/expansion function provided in the embodiment of the present application, as shown in fig. 3 and fig. 4:
the more theoretical case is shown in the right part of fig. 3, i.e. part (b) of fig. 3, i.e. a new boundary array L after contraction/expansion is calculated in a polygon array M according to a fixed contraction/expansion distance value X, usually with X >0 for expansion and X <0 for contraction. This functional solution is based on the assumption that the user-entered array of polygon vertices can form a closed, non-intersecting polygon, i.e., for each polygon vertex, there are two adjacent vertices.
Taking the vertex M12 in fig. 3(b) as an example, a partial view of a detail is shown in fig. 4, its neighboring vertices are M11 and M13, respectively, and its contracted result should be L12, and the distances from the point L12 to the segment M12M11 and to the segment M12M13 are all preset distances of 1. At this time, if the extension L11L12 intersects M12M13, P1 is obtained; the extension L12L13 intersects M11M12 to give P2, then the segment M12P2 ═ M12P1, and M12L12 ═ M12P1+ M12P2 are readily available. By normalizing the vector M12P2 and the vector M12P1, and then normalizing the vector M12L12, the direction of the vector M12L12 can be obtained. The length of vector M12L12 can be determined by calculating the angle of ≦ M11M12M 13. The position of point L12 can thus be found.
In the following description, since the above operation is to traverse all the block M arrays including point M12, point M12 is referred to as point Mn, point L12 is referred to as point Ln, vector M12P2 is referred to as v1, M12P1 is referred to as v2, vector M12L11 is referred to as v, and angle M11M12M13 is referred to as θ. It should be noted that the order of the polygon vertices and the concave-convex nature of the polygon vertices may affect the calculation result, and two parameters for compensating the two influences need to be added in the operation.
The specific process of the function comprises the following steps:
in step 401, it is determined whether the order of the polygon vertex sets is clockwise or counterclockwise.
At step 402, it is determined whether each corner in the polygon is a reentrant corner or a convex corner.
In step 403, the operation starts from the first point of the polygon array M, and the process proceeds to step 405. And (4) after each operation is finished, performing the operation of the next point, and exiting the function if no point which is not calculated exists.
In step 405, v1 and v2 are obtained and normalized respectively. V is obtained and normalized to obtain v'.
Step 406, find θ, and calculate | v | according to the contraction/expansion distance l.
In step 407, Ln is equal to Mn + v, the result is retained in the array L, and the process returns to step 403 to calculate correspondence information for all points.
Further, the polygon contraction/expansion function further includes changing a preset distance corresponding to each vertex based on actual requirements, determining a safety boundary of the simulated land parcel or the simulated obstacle area after expansion or contraction, and updating the simulated land parcel or the simulated obstacle area.
Specifically, the left side of fig. 3, i.e. fig. 3(a), is a more common and more difficult situation in reality, i.e. the required safety margin distance, i.e. the preset distance, of each side is different in the user's requirement. At this time, an array X ═ l1, l2, · is used to describe the safety margin, the length is the same as the plot array M, and each X value corresponds to a point in the plot array M. For the vertex Mn, its adjacent edges are referred to as d1 and d2, respectively.
The specific process of the function comprises the following steps:
step 501, all different values in the boundary array X are obtained, new boundaries of all X values are calculated, and the new boundaries are stored in the array Lall according to the sequence from small to large of the X values. A safety margin array N of equal length to the parcel array M is created. Starting from the first vertex of the polygon array M until all points are traversed, the following steps are specifically traversed:
step 502, referring to the current point as Mn, determines whether two edges respectively formed by two adjacent vertices of the point have different boundary values. If so, go to step 503. If not, go to step 504.
Step 503, obtaining the vertex Nn corresponding to the value X in the group Lall, recording the safe boundary array N, and returning to step 502.
In step 504, two sets of vertices [ p11, p12] and [ p21, p22] corresponding to the l values of two adjacent edges d1 and d2 are obtained for several sets of Lall, respectively. As can be seen from simple geometry, the point Nn is the intersection of d1 and d2, and Nn is calculated and stored in the safe boundary array N. Returning to step 502.
In some specific embodiments, the segmentation/fusion algorithm function mentioned in the above embodiments of the present application includes: when the simulated land parcel is divided by the simulated obstacle area, dividing the simulated land parcel to obtain a plurality of sub-simulated land parcels; when the simulated land parcel is overlapped with the simulated obstacle area, the overlapped part of the simulated obstacle area in the simulated land parcel is divided to obtain the simulated land parcel without the overlapped area of the simulated obstacle area and the simulated obstacle area with the increased overlapped area; and when the simulated obstacle area is overlapped with other simulated obstacle areas, fusing the overlapped simulated obstacle areas to obtain a large simulated obstacle area.
Specifically, the segmentation/fusion algorithm function includes segmenting the parcel:
adjusting the land parcel vertex array to be in a clockwise order, and adjusting the barrier area vertex array to be in a counterclockwise order; calculating the intersection point of the simulated land parcel and the simulated obstacle area to obtain an intersection point array; and respectively adding the data in the intersection point array into the plot vertex array and the barrier area vertex array in sequence to obtain a target plot vertex array and a target barrier area vertex array, and performing a segmentation algorithm: traversing the whole array from the first vertex in the vertex array of the target plot, recording the vertex to a new simulation plot when judging that the current point is the vertex in the simulation plot, and continuously judging the next point in the vertex array of the target plot; traversing the whole array from a first intersection point in the array of the top points of the target obstacle area, recording the top point to a new simulation land block when judging that the current point is the top point in the simulation obstacle area, and continuously judging the next point in the array of the top points of the target obstacle area; when the current point in the target block vertex array or the target obstacle area vertex array is judged to be the intersection point in the intersection point array, recording the intersection point to a new simulation block, jumping to the intersection point position in the target obstacle area vertex array or the target block vertex array, and continuing to perform point-taking judgment and recording according to the sequence in the target obstacle area vertex array or the target block vertex array until the last point in the target block vertex array is recorded; and repeating the segmentation algorithm from the first vertex which is not taken in the target land parcel vertex array to obtain a plurality of new simulated land parcels, and updating the simulated land parcels.
The segmentation/fusion algorithm function further includes fusing the obstacle regions: adjusting the vertex array of the first barrier area to be in a clockwise order, and adjusting the vertex array of the second barrier area to be in a counterclockwise order; calculating the intersection point of the first simulated obstacle area and the second simulated obstacle area to obtain an intersection point array; and adding the data in the intersection point array into the first barrier area vertex array and the second barrier area vertex array respectively in sequence to obtain a first target barrier area vertex array and a second target barrier area vertex array, and performing a fusion algorithm:
traversing the whole array from the first vertex of the first target obstacle area vertex array, recording the vertex to a new simulation obstacle area when judging that the current point is the vertex in the first simulation obstacle area, and continuously judging the next point in the first target obstacle area vertex array; traversing the whole array from the first intersection point of the second target obstacle area vertex array, recording the vertex to a new simulation obstacle area when judging that the current point is the vertex in the second simulation obstacle area, and continuously judging the next point in the second target obstacle area vertex array; when the current point in the first target obstacle area vertex array or the second target obstacle area vertex array is judged to be the intersection point in the intersection point array, the intersection point is recorded into a new simulated obstacle area, the position of the intersection point in the second target obstacle area vertex array or the first target obstacle area vertex array is jumped to, point taking judgment and recording are continuously carried out according to the sequence in the second target obstacle area vertex array or the first target obstacle area vertex array until the last point in the first target obstacle area vertex array is recorded, a new simulated obstacle area is obtained, and the simulated obstacle area is updated.
The following will describe the segmentation/fusion algorithm function provided by the present application in detail with a specific implementation process, and fig. 5 is a schematic diagram of the segmentation/fusion algorithm function provided by the embodiment of the present application, as shown in fig. 5: the polygon of the middle area is a land parcel and is described by a vertex array P ═ P1, P2, P3, P4, P5, P6, P7 and P8; the right side of fig. 5 is barrier zone number one, described by the vertex array O ═ O1, O2, O3, O4; the left obstacle zone two, described by the vertex array R ═ R1, R2, R3, R4, there are the following:
1. dividing processing when the land parcel is divided by the obstacle region: the block array P and the barrier area array O are referred to. As shown in fig. 5, the plot is divided by the obstacle region into small plots Z1 ═ P1, P2, I1, I6, P5, P6, P7, P8], small plots Z2 ═ P4, I5, I4, and small plots Z3 ═ P3, I2, I3.
2. Segmentation processing when the parcel overlaps with an obstacle area: the block array P and the barrier area array R are referenced. As shown in fig. 2, after removing the portion covered by the obstacle region, the remaining land mass may be denoted as Z4 ═ P1, P2, P3, P4, P5, P6, I7, I8, P8.
3. Fusion processing when there is an overlap between the obstacle regions: suppose that the 3 polygons depicted in the figure by the arrays P, R, and O are 3 mutually overlapping barrier regions. If the processing is not carried out, the calculation resources are wasted, and the running time of the function is increased. Therefore, it is necessary to recalculate the vertices of the obstacle regions, and combine a plurality of overlapping obstacle regions into a new obstacle region, as described in the array Z5 ═ P1, P2, I1, O4, I2, P3, I3, O3, I4, P4, I5, O1, I6, P5, P6, I7, R3, R2, R1, R4, I8, and P8.
In the present application, these two cases can be solved by the same function with the addition of fine adjustment, and the steps are as follows:
step 601, adjusting the block array P to be clockwise, and adjusting all the barrier area arrays to be anticlockwise.
And step 602, calculating the intersection points of the plot and all obstacle areas participating in the operation, and describing by an array I ═ I1, I2, I3 and I4.. And respectively sorting all the intersection points I according to the sequence on the land array P and the sequence on the barrier area array, and respectively adding the land array P and the barrier area array in sequence.
Step 603, sequentially traversing the whole array from the first point of the block array P. If the current point is P point, the current point is marked as used, and is recorded into the small block array Z, and the next point in the block array P is continuously judged. If the current point is the I point, step 604 is entered.
Step 604, search the current point I in the array of the obstacle area, mark the current point as used, record it into the array Z of the small parcel, and continue to judge the next point in the array of the obstacle area. If the next point is the obstacle area point, the current point is marked as used, the current point is recorded into the small plot array Z, and the next point in the obstacle area array is continuously judged. If the next point is point I, step 605 is entered.
Step 605, search the current point I in the parcel array, mark the current point as used, record the current point into the small parcel array Z, and continue to judge the next point in the parcel array. If the next point is a plot point, the current point is marked as used, and is recorded into the small plot array Z, and the next point in the plot array is continuously judged. If the next point is point I, step 604 is entered.
Step 606, repeat step 604 and step 605 until all intersections are exhausted, or the plot points are exhausted. At this point, the function is exited.
The above is a brief idea of the polygon division function. Similar considerations can be used to solve the barrier fusion problem mentioned above. In step 601, in the barrier region fusion function, two barrier region arrays to be fused need to be adjusted to be clockwise and counterclockwise. The remaining steps are basically unchanged, but the functions can automatically change the segmentation effect into the fusion effect, and the specific principle can be understood by referring to the above-mentioned block segmentation process, which is not described herein again.
Further, the unmanned aerial vehicle plant protection operation route planning method provided by the embodiment of the application further comprises the steps of carrying out obstacle avoidance in an obstacle area on the route through a preset recursion obstacle avoidance function, and updating the route.
In the core planning step, obstacle avoidance for the obstacle area and the concave angle of the land is an inevitable problem. Fig. 6 is a schematic diagram of a principle of obstacle avoidance in a reentrant angle obstacle area of an unmanned aerial vehicle plant protection operation route planning method provided by an embodiment of the present application, a classic case requiring block reentrant angle obstacle avoidance is shown in a left part of fig. 6, that is, a part (a) of fig. 6, a vertex array D describes a boundary of a block, and two ends of two arrows in the diagram represent a start point and an end point of a route, respectively. After the unmanned aerial vehicle finishes the work of a part of plots, a long-distance air route is needed to move to another work area. In this case, the land with the concave angle may need to be avoided to avoid the situation similar to fig. 6. Similarly, the right part of fig. 6, i.e. fig. 6(b), shows a classical situation requiring multi-obstacle avoidance, where the two ends of the arrow in the figure represent the starting point and the ending point of a flight path, respectively. In an airline that does not pass through obstacles, the drone may pass through multiple obstacle zones.
The obstacle avoidance function in the application uses a recursion thought, and separates a complex multi-obstacle-area obstacle avoidance problem into simple single-obstacle-area obstacle avoidance problems. Fig. 7 separately shows the obstacle avoidance result given by the obstacle avoidance function under the case of one recursion, taking the obstacle area a in fig. 6(b) as an example. The path shown by the lower arrow is the original route before passing through the obstacle avoidance function, and the paths shown by the upper two arrows are the new route after being calculated by the obstacle avoidance function. The problem that the recursive function solves when being called once is very simple, that is, a closest intersection point from the current starting point is found from all known intersection points of the current route, fig. 7 is a schematic partial principle diagram of obstacle avoidance of a reentrant obstacle region of the unmanned aerial vehicle plant protection operation route planning method provided by the embodiment of the present application, and in the example of fig. 7, the closest intersection point is I1. Then, in the polygon that generated the intersection, two vertices adjacent to the intersection, i.e., vertex a1 and vertex a5 in fig. 7, are found. It can be seen that these two vertices create two obstacle avoidance paths, namely a clockwise path starting at a1 and a counterclockwise path starting at a 5. One of the intersections is then marked as a new end point, either clockwise or counterclockwise. In clockwise order, the algorithm will re-determine if the path "start-A1" crosses any obstacle or plot. If so, calling the obstacle avoidance function again to obtain an obstacle avoidance path of the starting point-A1, which is also the case of requiring recursive usage. If not, A1 is logged into the obstacle avoidance path list, and A1 is used as a new starting point. After confirming that the route of the 'starting point-A1' is correct, whether the route of the 'A1-ending point' passes through any obstacle area or land block is judged. If so, calling the obstacle avoidance function again to obtain an obstacle avoidance path of an A1-terminal point. And if not, exiting the function and outputting a complete obstacle avoidance path list.
Specifically, the algorithm includes:
and 701, knowing that the route intersects with the obstacle area/plot, solving all intersection points, and sequencing all the intersection points to obtain an intersection point closest to the starting point.
In step 702, an edge that generates the intersection is found, and two end points of the edge are found.
In step 703, the algorithm preferentially computes the path generated by the clockwise vertex.
Step 704, determine whether the path between the starting point and the clockwise vertex passes through the obstacle/parcel. If not, the clockwise vertex is recorded as an obstacle avoidance path. If so, the recursive function is recalled and the process returns to step 701 until a complete and unobstructed path between the start point and the clockwise vertex is obtained.
Step 705, determine if the path of the clockwise vertex and the end point passes through any obstacle/parcel. And if not, outputting an obstacle avoidance path. If so, the recursive function is recalled and the process returns to step 701 until a complete and unobstructed path between the start point and the clockwise vertex is obtained.
Step 706, calculate the total length of the clockwise obstacle avoidance path. And comparing each step with the path length in the following anticlockwise operation, if the obstacle avoidance path generated when the length of the anticlockwise operation is not finished is longer than the clockwise obstacle avoidance path, directly exiting the function, and outputting the clockwise obstacle avoidance path as a final obstacle avoidance path to exit the function.
Step 707, determine whether the path between the starting point and the counterclockwise vertex passes through any obstacle area/parcel. If not, the counter-clockwise vertex is recorded as an obstacle avoidance path. If so, the recursive function is recalled and the process returns to step 701 until a complete unobstructed path between the start point and the counterclockwise vertex is obtained.
At step 708, it is determined whether the counterclockwise vertex and end point path crosses any obstacle/parcel. And if not, outputting an obstacle avoidance path. If so, the recursive function is recalled and the process returns to step 701 until a complete unobstructed path between the start point and the counterclockwise vertex is obtained.
In step 709, the operation is performed, which shows that the length of the counterclockwise obstacle avoidance path is smaller than that of the clockwise obstacle avoidance path. And then, outputting the anticlockwise obstacle avoidance path as a final obstacle avoidance path, and exiting the function.
It should be noted that, the above steps show obstacle avoidance for the obstacle area. In practice, obstacle avoidance for a plot follows the same steps and logic. Only when calling a function, attention is paid to distinguish the intersection point generated by the land block from the intersection point generated by the obstacle area.
In addition, other common function functions are used when data processing and route planning are performed, the following contents are commonly found in various computer graphics textbooks and are slightly adjusted according to practical application conditions, and are not described more here:
Figure BDA0003280191300000191
compared with other plant protection unmanned aerial vehicle route planning algorithms in the prior art, the unmanned aerial vehicle plant protection operation route planning method provided by the application can reasonably plan the complex terrain especially common in provinces and cities in south China: the shapes of the plots are irregular, the shapes of the barrier areas are irregular, the number of the barrier areas is large, the positions of the barrier areas are random, and the barrier areas are overlapped and contained with each other; the coverage rate of the planned air route to the plot is high, and human errors generated by the fact that a flyer does not use a planning algorithm to fly manually are completely removed; the spraying/seeding mark can be automatically generated without manual adjustment by a user; obstacle areas can be avoided by a reasonable and efficient path; the planning speed is high; a high degree of freedom is left to the user, for example: the method supports self-defining of an independent safety boundary value, adjustment of the direction of a planned route, adjustment of the position of a planned starting point, automatic compensation of edge sweeping and the like.
It is understood that the same or similar parts in the above embodiments may be mutually referred to, and the same or similar parts in other embodiments may be referred to for the content which is not described in detail in some embodiments.
It should be noted that, in the description of the present application, the terms "first", "second", etc. are used for descriptive purposes only and are not to be construed as indicating or implying relative importance. Further, in the description of the present application, the meaning of "a plurality" means at least two unless otherwise specified.
Any process or method descriptions in flow charts or otherwise described herein may be understood as representing modules, segments, or portions of code which include one or more executable instructions for implementing specific logical functions or steps of the process, and the scope of the preferred embodiments of the present application includes other implementations in which functions may be executed out of order from that shown or discussed, including substantially concurrently or in reverse order, depending on the functionality involved, as would be understood by those reasonably skilled in the art of the present application.
It should be understood that portions of the present application may be implemented in hardware, software, firmware, or a combination thereof. In the above embodiments, the various steps or methods may be implemented in software or firmware stored in memory and executed by a suitable instruction execution system. For example, if implemented in hardware, as in another embodiment, any one or combination of the following techniques, which are known in the art, may be used: a discrete logic circuit having a logic gate circuit for implementing a logic function on a data signal, an application specific integrated circuit having an appropriate combinational logic gate circuit, a Programmable Gate Array (PGA), a Field Programmable Gate Array (FPGA), or the like.
It will be understood by those skilled in the art that all or part of the steps carried by the method for implementing the above embodiments may be implemented by hardware related to instructions of a program, which may be stored in a computer readable storage medium, and when the program is executed, the program includes one or a combination of the steps of the method embodiments.
In addition, functional units in the embodiments of the present application may be integrated into one processing module, or each unit may exist alone physically, or two or more units are integrated into one module. The integrated module can be realized in a hardware mode, and can also be realized in a software functional module mode. The integrated module, if implemented in the form of a software functional module and sold or used as a stand-alone product, may also be stored in a computer readable storage medium.
The storage medium mentioned above may be a read-only memory, a magnetic or optical disk, etc.
In the description herein, reference to the description of the term "one embodiment," "some embodiments," "an example," "a specific example," or "some examples," etc., means that a particular feature, structure, material, or characteristic described in connection with the embodiment or example is included in at least one embodiment or example of the application. In this specification, the schematic representations of the terms used above do not necessarily refer to the same embodiment or example. Furthermore, the particular features, structures, materials, or characteristics described may be combined in any suitable manner in any one or more embodiments or examples.
Although embodiments of the present application have been shown and described above, it is understood that the above embodiments are exemplary and should not be construed as limiting the present application, and that variations, modifications, substitutions and alterations may be made to the above embodiments by those of ordinary skill in the art within the scope of the present application.

Claims (8)

1. An unmanned aerial vehicle plant protection operation air route planning method is characterized by comprising the following steps:
collecting land data and obstacle area data, and adjusting a land vertex array in the land data and an obstacle area vertex array in the obstacle area data to be in a clockwise sequence;
obtaining a simulated land parcel and a simulated obstacle area which are formed by polygon vertexes based on the land parcel vertex array and the obstacle area vertex array, and calculating safety boundaries of the simulated land parcel and the simulated obstacle area based on a preset polygon contraction/expansion function;
based on a preset segmentation/fusion algorithm function, carrying out segmentation or fusion processing on the simulated land parcel and the simulated obstacle area to obtain an optimized simulated land parcel boundary and an optimized simulated obstacle area boundary;
rotating the optimized simulated parcel boundaries and simulated obstacle area boundaries according to a preset route angle, and obtaining an expression of a planned route based on a preset route distance;
marking and sequencing all intersection points with the simulated plots and the simulated obstacle areas respectively;
and selecting the intersection point which is closest to the current position of the unmanned aerial vehicle from all the intersection points as an initial position, executing a preset waypoint detection cycle to obtain a target route which uses up all waypoints, and taking the target route as a planning result and outputting the planning result.
2. The unmanned aerial vehicle plant protection work route planning method of claim 1, wherein the waypoint detection loop comprises: taking the planned route as a starting target route;
detecting whether the target route runs out of all waypoints;
if so, taking the planned route as a planning result and outputting the planning result;
if not, detecting whether an unused waypoint exists on the same straight line; if the unused waypoints do not exist, planning to obtain a new route based on the recently unused waypoints; if an unused waypoint exists, planning to obtain a new route based on the position information;
judging whether the new route passes through an obstacle or not, and if the new route passes through the obstacle, avoiding the obstacle based on a preset algorithm to obtain a target route; if the new route does not pass through the barrier, the new route is used as a target route;
and re-detecting whether the target route runs out of all waypoints or not until the target route runs out of all waypoints, and stopping circulation.
3. The unmanned aerial vehicle plant protection operation route planning method of claim 1, wherein the calculating the safety boundaries of the simulated parcel and the simulated obstacle area based on a preset polygon contraction/expansion function comprises:
acquiring a first vertex in the simulated land parcel or the simulated obstacle area, and finding a second vertex and a third vertex which are adjacent to the first vertex;
taking a straight line where the first vertex and the second vertex are located as a first straight line;
taking a straight line where the first vertex and the third vertex are located as a second straight line;
determining a fourth vertex with preset distances to the first straight line and the second straight line;
taking the fourth vertex as a target vertex after the first vertex contracts or expands for a preset distance;
finding target vertexes corresponding to all vertexes in the simulated land parcel or the simulated obstacle area, connecting corresponding target fixed points according to the data sequence of the vertexes of the simulated land parcel or the simulated obstacle area to obtain a safety boundary after the simulated land parcel or the simulated obstacle area is expanded or contracted, and updating the simulated land parcel or the simulated obstacle area.
4. The unmanned aerial vehicle plant protection operation route planning method according to claim 3, wherein based on actual demands, the preset distance corresponding to each vertex in the simulated plot or the simulated obstacle area is changed, and a target vertex corresponding to each vertex is determined;
and determining a safety boundary of the simulated land parcel or the simulated obstacle area after expansion or contraction based on the target vertex, and updating the simulated land parcel or the simulated obstacle area.
5. The unmanned aerial vehicle plant protection operation air line planning method according to claim 1, wherein the dividing or fusing processing is performed on the simulated land parcel and the simulated obstacle area based on a preset dividing/fusing algorithm function to obtain an optimized simulated land parcel boundary and an optimized simulated obstacle area boundary, and the method comprises the following steps:
when the simulated land parcel is divided by the simulated obstacle area, dividing the simulated land parcel to obtain a plurality of sub-simulated land parcels;
when the simulated land parcel is overlapped with the simulated obstacle area, the overlapped part of the simulated obstacle area in the simulated land parcel is divided to obtain the simulated land parcel without the overlapped area of the simulated obstacle area and the simulated obstacle area with the increased overlapped area;
and when the simulated obstacle area is overlapped with other simulated obstacle areas, fusing the overlapped simulated obstacle areas to obtain a large simulated obstacle area.
6. The unmanned aerial vehicle plant protection operation air line planning method of claim 5, wherein the dividing or fusing of the simulated parcel and the simulated obstacle region based on a preset dividing/fusing algorithm function to obtain the optimized simulated parcel boundary and the optimized simulated obstacle region boundary comprises dividing the simulated parcel:
adjusting the land parcel vertex array to be in a clockwise order, and adjusting the barrier area vertex array to be in a counterclockwise order;
calculating the intersection point of the simulated land parcel and the simulated obstacle area to obtain an intersection point array;
and respectively adding the data in the intersection point array into the plot vertex array and the barrier area vertex array in sequence to obtain a target plot vertex array and a target barrier area vertex array, and performing a segmentation algorithm:
traversing the whole array from the first vertex in the vertex array of the target plot, recording the vertex to a new simulation plot when judging that the current point is the vertex in the simulation plot, and continuously judging the next point in the vertex array of the target plot;
traversing the whole array from a first intersection point in the array of the top points of the target obstacle area, recording the top point to a new simulation land block when judging that the current point is the top point in the simulation obstacle area, and continuously judging the next point in the array of the top points of the target obstacle area;
when the current point in the target block vertex array or the target obstacle area vertex array is judged to be the intersection point in the intersection point array, recording the intersection point to a new simulation block, jumping to the intersection point position in the target obstacle area vertex array or the target block vertex array, and continuing to perform point-taking judgment and recording according to the sequence in the target obstacle area vertex array or the target block vertex array until the last point in the target block vertex array is recorded;
and repeating the segmentation algorithm from the first vertex which is not taken in the target land parcel vertex array to obtain a plurality of new simulated land parcels, and updating the simulated land parcels.
7. The unmanned aerial vehicle plant protection operation air line planning method of claim 6, wherein the simulated parcel and the simulated obstacle region are segmented or fused based on a preset segmentation/fusion algorithm function to obtain an optimized simulated parcel boundary and an optimized simulated obstacle region boundary, and further comprising fusing the simulated obstacle region:
adjusting the vertex array of the first barrier area to be in a clockwise order, and adjusting the vertex array of the second barrier area to be in a counterclockwise order;
calculating the intersection point of the first simulated obstacle area and the second simulated obstacle area to obtain an intersection point array;
and adding the data in the intersection point array into the first barrier area vertex array and the second barrier area vertex array respectively in sequence to obtain a first target barrier area vertex array and a second target barrier area vertex array, and performing a fusion algorithm:
traversing the whole array from the first vertex of the first target obstacle area vertex array, recording the vertex to a new simulation obstacle area when judging that the current point is the vertex in the first simulation obstacle area, and continuously judging the next point in the first target obstacle area vertex array;
traversing the whole array from the first intersection point of the second target obstacle area vertex array, recording the vertex to a new simulation obstacle area when judging that the current point is the vertex in the second simulation obstacle area, and continuously judging the next point in the second target obstacle area vertex array;
when the current point in the first target obstacle area vertex array or the second target obstacle area vertex array is judged to be the intersection point in the intersection point array, the intersection point is recorded into a new simulated obstacle area, the position of the intersection point in the second target obstacle area vertex array or the first target obstacle area vertex array is jumped to, point taking judgment and recording are continuously carried out according to the sequence in the second target obstacle area vertex array or the first target obstacle area vertex array until the last point in the first target obstacle area vertex array is recorded, a new simulated obstacle area is obtained, and the simulated obstacle area is updated.
8. The unmanned aerial vehicle plant protection operation route planning method according to claim 2, wherein if the obstacle passes through, obstacle avoidance is performed based on a preset algorithm to obtain a target route, and the method comprises the following steps:
performing obstacle avoidance in an obstacle area on the route through recursion obstacle avoidance based on a preset algorithm;
and obtaining a target route based on the obstacle avoidance result.
CN202111130220.2A 2021-09-26 2021-09-26 Unmanned aerial vehicle plant protection operation route planning method Active CN113741539B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111130220.2A CN113741539B (en) 2021-09-26 2021-09-26 Unmanned aerial vehicle plant protection operation route planning method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111130220.2A CN113741539B (en) 2021-09-26 2021-09-26 Unmanned aerial vehicle plant protection operation route planning method

Publications (2)

Publication Number Publication Date
CN113741539A true CN113741539A (en) 2021-12-03
CN113741539B CN113741539B (en) 2024-07-09

Family

ID=78741144

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111130220.2A Active CN113741539B (en) 2021-09-26 2021-09-26 Unmanned aerial vehicle plant protection operation route planning method

Country Status (1)

Country Link
CN (1) CN113741539B (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113657674A (en) * 2021-08-18 2021-11-16 杭州华橙软件技术有限公司 Task planning adjusting method and device, storage medium and electronic equipment
CN117726777A (en) * 2024-02-18 2024-03-19 天津云圣智能科技有限责任公司 Unmanned aerial vehicle route optimization method and device and computer storage medium

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120015550A (en) * 2010-08-12 2012-02-22 팅크웨어(주) Apparatus and method for searching around
CN104503464A (en) * 2014-12-30 2015-04-08 中南大学 Computer-based convex polygon field unmanned aerial vehicle spraying operation route planning method
CN109238298A (en) * 2018-09-26 2019-01-18 上海联适导航技术有限公司 A kind of unmanned paths planning method with avoidance
CN109934384A (en) * 2019-01-28 2019-06-25 沈阳无距科技有限公司 A kind of polygon plot dividing method, device, storage medium and electronic equipment
US20200023973A1 (en) * 2018-07-23 2020-01-23 Boe Technology Group Co., Ltd. UAV Operation Route Planning Method, UAV Pesticide Spreading Method and Device
CN112506225A (en) * 2020-12-15 2021-03-16 广州极飞科技有限公司 Unmanned aerial vehicle obstacle avoidance method and device, unmanned aerial vehicle and storage medium
CN117193381A (en) * 2023-11-07 2023-12-08 天津云圣智能科技有限责任公司 Unmanned aerial vehicle control method and device and computer storage medium

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120015550A (en) * 2010-08-12 2012-02-22 팅크웨어(주) Apparatus and method for searching around
CN104503464A (en) * 2014-12-30 2015-04-08 中南大学 Computer-based convex polygon field unmanned aerial vehicle spraying operation route planning method
US20200023973A1 (en) * 2018-07-23 2020-01-23 Boe Technology Group Co., Ltd. UAV Operation Route Planning Method, UAV Pesticide Spreading Method and Device
CN109238298A (en) * 2018-09-26 2019-01-18 上海联适导航技术有限公司 A kind of unmanned paths planning method with avoidance
CN109934384A (en) * 2019-01-28 2019-06-25 沈阳无距科技有限公司 A kind of polygon plot dividing method, device, storage medium and electronic equipment
CN112506225A (en) * 2020-12-15 2021-03-16 广州极飞科技有限公司 Unmanned aerial vehicle obstacle avoidance method and device, unmanned aerial vehicle and storage medium
CN117193381A (en) * 2023-11-07 2023-12-08 天津云圣智能科技有限责任公司 Unmanned aerial vehicle control method and device and computer storage medium

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
徐梁;高宏力;宋兴国;: "贝塞尔曲线融合ACO的移动机器人路径规划", 机械设计与制造, no. 01, 8 January 2020 (2020-01-08) *
黄玉清;梁靓;: "机器人导航系统中的路径规划算法", 微计算机信息, no. 20 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113657674A (en) * 2021-08-18 2021-11-16 杭州华橙软件技术有限公司 Task planning adjusting method and device, storage medium and electronic equipment
CN113657674B (en) * 2021-08-18 2024-05-31 杭州华橙软件技术有限公司 Task planning adjustment method and device, storage medium and electronic equipment
CN117726777A (en) * 2024-02-18 2024-03-19 天津云圣智能科技有限责任公司 Unmanned aerial vehicle route optimization method and device and computer storage medium
CN117726777B (en) * 2024-02-18 2024-05-07 天津云圣智能科技有限责任公司 Unmanned aerial vehicle route optimization method and device and computer storage medium

Also Published As

Publication number Publication date
CN113741539B (en) 2024-07-09

Similar Documents

Publication Publication Date Title
CN108871368B (en) Method and system for constructing transverse topological relation of high-precision map lane and memory
CN110220521B (en) High-precision map generation method and device
CN110823241B (en) Robot path planning method and system based on passable area skeleton extraction
CN106598055B (en) A kind of intelligent vehicle local paths planning method and its device, vehicle
CN113741539B (en) Unmanned aerial vehicle plant protection operation route planning method
CN107389079B (en) High-precision path planning method and system
EP3631364A1 (en) Method and apparatus for producing a lane-accurate road map
WO2023125512A1 (en) Navigation path planning method and apparatus, and storage medium
CN108917778A (en) Navigation hint method, navigation equipment and storage medium
CN110243373B (en) Path planning method, device and system for dynamic storage automatic guided vehicle
KR20200109275A (en) Vehicle track planning method, device, computer device and computer-readable storage medium
CN115164907B (en) Forest operation robot path planning method based on A-algorithm of dynamic weight
CN110634104B (en) Multi-map splicing method and device
CN112965481A (en) Orchard operation robot unmanned driving method based on point cloud map
CN111399543A (en) Same-region multi-collision-free air route planning method based on A-star algorithm
CN115435798A (en) Unmanned vehicle high-precision map road network generation system and method
CN114754777A (en) Geographic coordinate system-based full-path coverage planning method for unmanned mowing vehicle
CN112923940A (en) Path planning method, device, processing equipment, mobile equipment and storage medium
Jeon et al. An entry-exit path planner for an autonomous tractor in a paddy field
CN114323051A (en) Method and device for planning crossing driving track and electronic equipment
CN116958316B (en) Topology map generation method, device, computer equipment and storage medium
WO2023201954A1 (en) Roundabout path planning method and apparatus
Tang et al. A reference path guided rrt* method for the local path planning of UGVS
CN116244872A (en) Method for generating vectorized topology road network based on navigation path data
CN114407919B (en) Collision detection method and system based on automatic driving

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