A full coverage path planning method, device and equipment of an automated agricultural machine
Patent Information
- Application Number
- CN202310957836.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-08-01
- Publication Date
- 2026-09-25
- Estimated Expiration
- 2043-08-01
AI Technical Summary
其中,传统的轨迹规划无法适用于自动化农业机械
本发明实施例能够为自动化农业机械规划出完全覆盖其工作区域的路径。为农业机械的自动化提供了基础,具有很好的实际意义。
Smart Images

Figure CN116880497B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of path planning technology for automated agricultural machinery, and more specifically, to a method, apparatus, and equipment for full-coverage path planning of automated agricultural machinery. Background Technology
[0002] Autonomous driving technology is a synthesis of multiple cutting-edge disciplines, and in recent years it has made continuous breakthroughs in many aspects and has been applied to various industries. Especially in the passenger vehicle sector, autonomous driving technology has achieved rapid development and received increasingly widespread attention, and has achieved a certain degree of maturity and implementation.
[0003] In the field of automated agricultural machinery, autonomous driving technology is still in its early stages of development. Tracked rotary tillers are representative products of small agricultural machinery, mostly used for small-scale farmland cultivation and operations in special agricultural scenarios. However, the implementation of automated agricultural machinery technology faces challenges such as the complexity of farmland scenarios and the high cost of agricultural machinery automation.
[0004] The field of automated operations mainly consists of stages such as scene localization, trajectory planning, trajectory tracking, and operation execution. Among these, traditional trajectory planning is not applicable to automated agricultural machinery.
[0005] In view of this, the applicant hereby submits this application after studying the existing technology. Summary of the Invention
[0006] The present invention provides a method, apparatus and equipment for full-coverage path planning of automated agricultural machinery to improve at least one of the above-mentioned technical problems.
[0007] First aspect This invention provides a method for full-coverage path planning of automated agricultural machinery, comprising: S1. Obtain the global optimization cost objective function. This global optimization cost objective function includes the cost function for generating Headlands boundaries, the cost function for selecting the parallel wire bundle division angle, and the cost function for path length.
[0008] S2. Obtain the model of the automated agricultural machinery and the map data of its working area.
[0009] S3. Based on the map data, the boundary is processed into convex sub-regions. Based on the processed convex sub-regions, the Headlands boundary is generated according to the cost function for generating Headlands boundary.
[0010] S4. Based on the Headlands boundary, perform parallel line bundle division on the region enclosed by the boundary using the cost function selected by the model of automated agricultural machinery and the parallel line bundle division angle, or perform parallel line bundle division according to the user-defined parallel line angle to obtain the set of parallel lines in the convex sub-region.
[0011] S5. Based on the set of parallel lines, perform full-coverage path planning to obtain the traversal order of the parallel line bundle set. The traversal order includes the entry point and exit point of each parallel line.
[0012] S6. Based on the set of parallel lines, traversal order, and model of automated agricultural machinery, and using the cost function based on path length, the planned path is obtained by connecting the parallel lines using a Dubins curve with continuous curvature.
[0013] The second aspect This invention provides a full-coverage path planning device for automated agricultural machinery, comprising: The objective function acquisition module is used to obtain the global optimization cost objective function. This global optimization cost objective function includes the cost function for generating Headlands boundaries, the cost function for selecting the parallel line bundle division angle, and the cost function for path length.
[0014] The initial data acquisition module is used to acquire models of automated agricultural machinery and map data of their working areas.
[0015] The boundary generation module is used to process the boundary into convex sub-regions based on map data, and to generate the Headlands boundary based on the cost function for generating Headlands boundary according to the processed convex sub-regions.
[0016] The parallel line partitioning module is used to partition the region enclosed by the Headlands boundary using a cost function selected based on the model of automated agricultural machinery and the parallel line partitioning angle, or to partition the parallel line bundles according to the user-defined parallel line angles, thereby obtaining the set of parallel lines within the convex sub-region.
[0017] The path planning module is used to perform full-coverage path planning based on the set of parallel lines, and to obtain the traversal order of the parallel line bundle set. The traversal order includes the entry and exit points of each parallel line.
[0018] The parallel line connection module is used to obtain the planned path by connecting parallel lines based on the set of parallel lines, traversal order, and model of automated agricultural machinery, using a cost function based on path length and Dubins curves with continuous curvature.
[0019] Third aspect This invention provides a full-coverage path planning device for automated agricultural machinery, comprising a processor, a memory, and a computer program stored in the memory. The computer program can be executed by the processor to implement a full-coverage path planning method for automated agricultural machinery as described in any paragraph of the first aspect.
[0020] By adopting the above technical solution, the present invention can achieve the following technical effects: The embodiments of this invention can plan paths that completely cover the working area of automated agricultural machinery. This provides a foundation for the automation of agricultural machinery and has significant practical implications. Attached Figure Description
[0021] To more clearly illustrate the technical solutions of the embodiments of the present invention, the accompanying drawings used in the embodiments will be briefly introduced below. It should be understood that the following drawings only show some embodiments of the present invention and should not be regarded as a limitation on the scope. For those skilled in the art, other related drawings can be obtained based on these drawings without creative effort.
[0022] Figure 1 This is a flowchart illustrating the full-coverage path planning method.
[0023] Figure 2 This is a schematic map of the working area of automated agricultural machinery after smoothing.
[0024] Figure 3 This is a schematic diagram of the generated Headlands boundary map.
[0025] Figure 4 This is a schematic diagram of a map after it has been divided by parallel lines.
[0026] Figure 5 These are schematic diagrams of six types of Dubins curves with continuous curvature. Detailed Implementation
[0027] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. All other embodiments obtained by those skilled in the art based on the embodiments of the present invention without creative effort are within the scope of protection of the present invention.
[0028] Example 1 Please see Figures 1 to 5The first embodiment of the present invention provides a full-coverage path planning method for automated agricultural machinery, which can be executed by a full-coverage path planning device for automated agricultural machinery (hereinafter referred to as: path planning device). In particular, it is executed by one or more processors in the path planning device to implement steps S1 to S6.
[0029] It is understood that the path planning device can be an electronic device with computing power, such as a portable laptop, desktop computer, server, smartphone, or tablet computer. Preferably, the path planning device is the vehicle-mounted system of automated agricultural machinery.
[0030] S1. Obtain the global optimization cost objective function. This global optimization cost objective function includes the cost function for generating Headlands boundaries, the cost function for selecting the parallel wire bundle division angle, and the cost function for path length.
[0031] S2. Obtain the model of the automated agricultural machinery and the map data of its working area.
[0032] Specifically, the model of automated agricultural machinery includes parameters such as the size, working width, moving speed, and minimum turning radius of the automated agricultural machinery. This invention does not specifically limit the model of automated agricultural machinery; any parameters related to the automated agricultural machinery itself are included in the model.
[0033] Preferably, based on the model of the automated agricultural machinery, a mapping function parameter for the turning radius and curvature linear velocity during turning is designed, enabling the linear velocity of the automated agricultural machinery to be dynamically adjusted according to the curvature during turning. The mapping relationship is mainly based on the mapping limit and calculation of the linear velocity at the current point's curvature. Input parameter: Curvature value of the current planning point. Minimum curvature value Maximum linear velocity Minimum linear velocity and the current turning radius The mapping relationship is as follows: 1. Calculate based on the current turning radius The value, specifically the formula is: This indicates that the larger the turning radius, the smaller the curvature coefficient.
[0034] 2. Comparison and The magnitude of the curvature value. If Less than Then directly set the linear velocity to the maximum speed. If Greater than The current linear velocity is then calculated using the following formula: 3. Limit the lower speed limit, the specific formula is as follows: This allows us to obtain the dynamic adjustment of linear velocity with curvature.
[0035] S3. Based on the map data, the boundary is processed into convex sub-regions, and the Headlands boundary is generated based on the cost function for generating Headlands boundary according to the processed convex sub-regions.
[0036] S4. Based on the Headlands boundary, the region enclosed by the boundary is divided into parallel wire bundles according to the cost function selected by the model of the automated agricultural machinery and the parallel wire bundle division angle, or the parallel wire bundles are divided according to the user-defined parallel wire angle to obtain the set of parallel wires in the convex sub-region.
[0037] S5. Based on the set of parallel lines, perform full-coverage path planning to obtain the traversal order of the set of parallel line bundles. The traversal order includes the entry and exit points of each parallel line.
[0038] S6. Based on the set of parallel lines, the traversal order, and the model of automated agricultural machinery, and using the cost function based on path length, the planned path is obtained by connecting the parallel lines using a Dubins curve with continuous curvature.
[0039] This invention effectively utilizes the regularized distribution of farmland and the maneuverability of small agricultural machinery. First, it obtains information such as map boundaries, obstacle areas, and visited areas from the working environment of the agricultural machinery. Then, it employs a more efficient parallel line bundle division method and convex sub-regioning for complex terrain, solving the problem of efficient path traversal in complex boundary farmland and better dividing and planning the target work area. Finally, it uses a heuristic search algorithm to search for the optimal path and connects parallel lines using a Dubins curve with continuous curvature to obtain the planned path for the agricultural machinery. This provides essential conditions for automated and efficient operation and has significant practical value.
[0040] Based on the above embodiments, in an optional embodiment of the present invention, the cost function for generating Headlands boundaries is... for: In the formula, The remaining area after generating the Headlands boundary, This represents the original area.
[0041] Specifically, this function is mainly used to evaluate the ratio of the remaining area after generating the Headlands boundary to the original area.
[0042] Based on the above embodiments, in an optional embodiment of the present invention, the cost function for selecting the parallel harness segmentation angle includes a field coverage maximization function, a harness number minimization constraint function, a field overlap maximization function, and a harness path length minimization function. Wherein, Field Cover Maximization Function for: In the formula, The sum of the areas of the intersecting portions between convex subregions. For work area The total area.
[0043] Specifically, the percentage of the field covered by the harness is calculated. The cost is a value between [0, 1], and it is defined as a maximization problem. For a large area... Assume it is connected to multiple small regions. The sum of the areas of the intersecting parts is , For a large area The total area. This represents the sum of the overlapping portions of all small and large regions. This indicator can calculate the degree to which a large region is covered by all small regions.
[0044] Minimize the number of wire harnesses constraint function for: In the formula, It is the number of wire harnesses, It is the area enclosed by the inner boundary of Headlands. It refers to the operating width of automated agricultural machinery.
[0045] Specifically, the constraint function for minimizing the number of wire harnesses. The number of wiring harnesses depends on the shape and area of the site and the operating width of the automated agricultural machinery. In the formula, It is a given angle Number of scanned wires It is the area enclosed by the inner boundary of Headlands. It is the robot's working width.
[0046] Based on this constraint, the constraint function for minimizing the number of wire harnesses is obtained. .
[0047] Field overlap maximization function for: In the formula, Polygonal region area Polygonal region Other polygonal regions area Polygonal region and polygonal regions The area of overlap between them.
[0048] Specifically, the field overlap function is used to calculate the area of the overlapping portion between one polygonal region and several other polygonal regions. Examples are as follows: Let A be a polygon, B be multiple polygonal regions, and O be their overlapping region, then we have: In the formula, , , These represent the number of vertices of polygons A, B, and O, respectively. ) is the first digit of polygon A. The coordinates of the vertices, To calculate the area of the overlapping region using Green's formula .
[0049] Right now: Thus, the field overlap maximization function is obtained. .
[0050] Harness path length minimization function for: In the formula, It is the number of wire harnesses, For the first The starting position of the wire harness, For the first The end position of the wire harness It is the first Euclidean norm of a line bundle.
[0051] Specifically, the harness path length can be calculated using the following formula: In the formula, Sum the lengths of all wire bundles. It is the number of wire harnesses, It is the first The number of nodes on the parallel boundaries It is the first The first parallel boundary Each node It is a node and nodes The Euclidean norm. Based on the formula for calculating the harness path length, the function for minimizing the harness path length can be obtained. .
[0052] Based on the above embodiments, in an optional embodiment of the present invention, the cost function of path length... for: In the formula, For the total number of wire harnesses, For the first The curve length of the Dubins curve of the wire harness, For the first The starting position of the wire harness, For the first The end position of the wire harness It is the first Euclidean norm of a line bundle.
[0053] Specifically, path calculation consists of parallel line bundle paths and turning paths. Calculating parallel line bundle paths is relatively simple, requiring only the calculation of the Euclidean norm of the starting and ending points of each parallel boundary path. Turning paths require segmented calculation of the paths generated by the Dubins curves.
[0054] Based on the above embodiments, in an optional embodiment of the present invention, the global optimization cost objective function further includes a cost function for turning distance. Preferably, the automated agricultural machinery is a tracked rotary tiller.
[0055] In this embodiment, the motion model of the tracked robot is abstracted and simplified into a two-wheel differential drive robot model, and then the design cost function is considered as follows: In the formula, Indicates the turning radius. Indicates the steering angle. , , It is an adjustment factor.
[0056] The meaning of this cost function is: for a given steering angle Based on the vehicle dimensions, calculate the turning radius of the tracked robot and compare it with the expected turning radius. If the difference between the actual turning radius and the expected turning radius is large, meaning the robot's rotation curve is too winding or the turning radius is too large, the cost function will increase, indicating that this turning method is not suitable for the tracked robot; conversely, if the difference between the actual turning radius and the expected turning radius is small, the cost function will decrease, indicating that this turning method is more suitable for the tracked robot.
[0057] Based on the above embodiments, in an optional embodiment of the present invention, The model of the automated agricultural machinery includes a dimensional model and a kinematic model of the automated agricultural machinery.
[0058] The map data for the automated agricultural machinery is a raster map, a satellite positioning map, a map generated by a sensor, or a fusion information map of a satellite positioning map and a map generated by a sensor.
[0059] Based on the above embodiments, in an optional embodiment of the present invention, step S2 specifically includes steps S21 to S23.
[0060] S21. Obtain a model of automated agricultural machinery.
[0061] S22. Obtain map data of the working area of the automated agricultural machinery, and determine whether the map data is a raster map.
[0062] S23. When it is determined that the map data is not a rasterized map, the edges of the map data are extracted and smoothed. The smoothing process is performed using filtering or B-Spline curve fitting.
[0063] Specifically, when the map data is not a rasterized map, the edges of the working area need to be extracted and processed. Smoothing is achieved through B-Spline curve fitting, which includes two parts: parameterization and B-Spline basis functions.
[0064] First, parameterization is performed, mapping data points to a parameter space according to certain rules. Common methods include equidistant parameterization and Chord length parameterization. Taking equidistant parameterization as an example, suppose we have... Data points Then, parameterization can be performed as follows: In the formula, This represents the parameter value corresponding to the i-th data point in the parameter space.
[0065] Next, we will calculate the B-Spline basis functions. The B-Spline basis functions are a set of recursively defined functions, in the following form: In the formula, Represents a sequence of nodes. This indicates the order of the B-spline. When When, there is only one non-zero basis function. When, the basis functions are linear, when When the basis functions are quadratic, the basis functions are quadratic, and so on.
[0066] Finally, the expression for the B-Spline curve can be represented as: In the formula, Representing data points The coordinates, where n represents the number of data points. Using the above methods to perform B-Spline smoothing and filtering on the working boundary can effectively extract the working area boundary from the original map. Based on the above embodiments, in an optional embodiment of the present invention, step S3 specifically includes steps S31 to S33.
[0067] S31. Based on the map data, obtain the boundary information of the working area, and determine whether the boundary information contains a concave boundary.
[0068] S32. When it is determined that the boundary information contains a concave boundary, perform boundary segmentation based on the concave points of the boundary information to obtain multiple convex sub-regions. Otherwise, directly use the boundary information as the convex sub-region.
[0069] S33. Based on multiple convex sub-regions, generate Headlands boundaries using the expansion coefficient and cost function for generating Headlands boundaries. The expansion coefficient is a multiple of the width of the automated agricultural machinery.
[0070] Specifically, the process of generating Headlands boundaries is achieved through the following steps: 1. If the boundary is complex (concave boundary), perform boundary segmentation based on the concave point, i.e. convex sub-regionation, to obtain multiple convex polygon sub-regions with shared boundaries. Then, perform subsequent operations on each convex sub-region to obtain multiple polygon ring objects. 2. Receive input parameters, namely the smoothed boundary, the reserved Headlands boundary expansion coefficient w (the choice of w is related to the robot width, and in this example it is set to 3 times the robot width) and the cost function for generating the Headlands boundary; 3. Convert each ring (vertices sequence) of the polygon into a line segment, and divide the line segment into several smaller segments according to the vertices; 4. Traverse each small line segment and expand each small line segment outward by w in the direction of the normal vector to generate a new geometric representation cell, which is now the expanded polygon cell; 5. Subtract the generated polygon cell from the original site representation to obtain the Headlands boundary, which is a polygonal ring.
[0071] 6. Calculate the score of the generated Headlands based on the cost function for generating Headlands boundaries.
[0072] Based on the above embodiments, in an optional embodiment of the present invention, step S4 specifically includes steps S41 to S44.
[0073] S41. Based on the Headlands boundary, obtain the boundary of the parallel lines.
[0074] S42. Based on the model of the automated agricultural machinery, obtain the working width of the automated agricultural machinery.
[0075] S43. Based on the working width and the boundary of the parallel line, generate a set of parallel lines with different parallel line generation angles.
[0076] S44. Based on the sets of parallel lines generated at different parallel line angles, select the set of parallel lines with the smallest cost function value for selecting the parallel line bundle division angle as the final determined set of parallel lines.
[0077] Understandably, the process of parallel line bundle partitioning can be summarized as follows: a brute-force approach is used to try all angles to generate parallel lines, and then the most suitable parallel line generation angle is selected based on minimizing the objective function cost. Furthermore, users can also define custom parallel line angles to generate parallel line bundle partitions.
[0078] The process of parallel wire harness segmentation is implemented through the following steps: 1. Receive input parameters, namely the generated Headlands boundary, the robot's operating range (mainly for the working width), and the cost function for selecting the parallel wire harness division angle.
[0079] 2. Iterate through each polygonal ring object and perform the following operations on each polygonal ring: a. Data Transformation: Convert the polygonal ring into a list of line segments, each segment's length being the row width. As needed, align the end points with the original geometry or maintain gaps, generating a series of new line segments. Note that if any line segments generated in this step intersect or overlap with the original geometry, they must be trimmed or split to ensure they do not cross the limits.
[0080] b. Minimum cost angle parallel harness division: using a traversal method to divide each angle separately. The inner ring of the polygon is divided into parallel line bundles.
[0081] Based on the minimum cost angle Rotate counterclockwise to generate a rotated polygon variable `rotpoly`. Based on the width of the rotated polygon and the robot's operating width, calculate the number of parallel wire bundles `n` to be generated. Specifically, divide the width of the rotated polygon `rotpoly` by the operating width to obtain a floating-point value, and then round it up to the nearest integer.
[0082] Initialize the seed curve from the rotated polygon. It is a horizontal straight line segment in the free space contour used to generate parallel line bundles. Specifically, it starts from the lower left corner of the rot poly (rot_poly.getDimMinX(), rot_poly.getDimMinY()) and is in the vertical direction.
[0083] The remaining n-1 parallel wire bundles are generated iteratively. Specifically, for the i-th iteration (starting from 0), first calculate the point that moves to the right from the seed curve by a distance of (i + 0.5) * op width (where op width is the robot's operating width), and then rotate it counterclockwise around a point on the seed curve. The curve endpoint path is obtained by measuring the degree, and then the generated parallel line bundle is added to the path set to complete the entire partitioning process.
[0084] Based on the above embodiments, in an optional embodiment of the present invention, step S5 is specifically used to: perform full-coverage path planning based on the set of parallel lines using the Boustrophedon metaheuristic search algorithm, the Snake non-heuristic search method, or the Spiral non-heuristic search method to obtain the traversal order of the set of parallel line bundles. The traversal order includes the entry point and exit point of each parallel line.
[0085] The specific steps for planning Boustrophedon are as follows: 1. Definition of state points: The map is divided into a finite number of state points (here only the start and end points of parallel line bundles are used as state points, and more state points can be defined by the user).
[0086] 2. State Selection: Select a suitable starting state on the map. In this example, the starting state point is the bottom left vertex of the polygon. From the current state, select an adjacent, unvisited state as the next target state. Calculate the travel cost based on the distance between the two states and the estimated time and energy required to reach the target state. Iterate through all adjacent states, selecting the state with the lowest cost as the next target state. After entering the next state, use that state as the origin and establish a forward or reverse (depending on the current state) Boustrophedon path until a boundary or obstacle is encountered. When unable to proceed, return to the starting point and construct another path, repeating this process until all state points have been traversed, completing the entire planning process.
[0087] The specific steps of the Snake planning process are as follows: 1. Serpentine Sort: This sorts the parallel lines to be planned in a cyclic manner. The initial value of the loop is 1, and the loop operation starts from the second element of the path array. The loop ends at the center of the array. Inside the loop, elements located between the current index i and i+1 are rotated to achieve a serpentine order.
[0088] 2. Snake-like sorting turns: Reverse the elements in the array from the (i+1)th element to the last element to achieve the "snake" turn. Finally, if the array length is odd, rotate the elements between positions i and i+1 again to complete the final step of the snake-like sorting.
[0089] The specific steps for Spiral planning are as follows: 1. Planning and sorting area division: Create a Spiral planning division standard sp_size, which divides the parallel line bundle to be planned (hereinafter referred to as swath) into parts of size sp_size. In particular, the size of sp_size should be at least greater than 2.
[0090] 2. Spiral Sort: A spiral sort is performed on the subarray `swath`. The process involves defining initial parameters `offset` and `size`, representing the starting position and length of the subarray to be sorted within the original array, respectively. In this example, `offset` is the product of `sp_size` and the subarray index `i`, and `size` is `sp_size`. The element at position `swath_0 + offset + size - 1` is moved to the current loop index position `swath_0 + offset + i`, where `swath_0` is the initial position of the subarray. Therefore, with each loop iteration, the last element in the subarray is moved to the current index position until the entire subarray is completely sorted.
[0091] (3) Piecing together the complete path: Piecing together the sorted subswaths into a complete path in the original order, thus completing the Spiral planning process.
[0092] Based on the above embodiments, in an optional embodiment of the present invention, S6 specifically includes steps S61 to S63.
[0093] S61. Based on the model of the automated agricultural machinery, obtain the minimum turning radius of the automated agricultural machinery.
[0094] S62. Based on the set of parallel lines and the traversal order, obtain the departure point and the entry point to be connected between two adjacent parallel lines.
[0095] S63. Based on the minimum turning radius, smoothly connect the departure point and the entry point between two adjacent parallel lines using a Dubins curve with continuous curvature to obtain the planned path.
[0096] Understandably, the process of convex subregioning the complex boundary can be summarized as follows: reducing the outer polygon inward by a certain distance and forming a dividing line, thus dividing the complex concave shape into multiple convex polygons with holes. The process of generating the Headlands boundary can be summarized as follows: translating the boundary in the original site outward along the normal vector direction to obtain a geometric representation slightly larger than the original site boundary, and then subtracting the original site geometric representation from the expanded geometric representation to obtain the geometric representation of the ridge portion.
[0097] The specific steps for smoothly connecting parallel wire harnesses using a Dubins curve with continuous curvature are as follows: 1. Constructing a Dubins Path with Continuous Curvature: A Dubins path with continuous curvature (hereinafter referred to as CC-Dubins) is a specific Dubins curve model, consisting of a straight line segment and two circular arc segments. The CC-Dubins curve is constructed by iteratively selecting adjacent state points. The length of the Dubins curve is calculated based on its type. A continuous curvature Dubins curve is the shortest path connecting two points on a plane, and it restricts the target to only moving forward. It consists of one of six basic curve types: LSL, LSR, RSL, RSR, RLR, and LRL.
[0098] Assume the starting point and the ending point are respectively and The directions are respectively and If the Euclidean distance between two points is D, then the formula for calculating the Dubins curve is as follows: LSL path: Path shape: Left turn, straight, left turn Calculation formula: RSR path: Path shape: Right turn, straight, right turn Calculation formula: RSL path: Path shape: right turn, straight, left turn Calculation formula: LSR path: Path shape: Left turn, straight, right turn Calculation formula: RLR path: Path shape: right turn, left turn, right turn Calculation formula: LRL path: Path shape: left turn, right turn, left turn Calculation formula: In the formula, , Here, r represents the starting point and the ending point, r is the turning radius, and d is the distance between the two points. It is the modulo function, and atan2 is the arctangent function.
[0099] 2. Cost evaluation of Dubins curve smoothing path calculation and path length: The length of the Dubins curve can be calculated by... , , The costs are calculated separately and then summed. The results are then substituted into the cost function for path length to obtain the cost score. The solution with the lowest cost score, i.e., the shortest total path, is selected as the solution to be implemented to connect parallel line bundles, thereby obtaining the planned path.
[0100] The various steps in this invention embodiment can be processed in different modules within the computer model, with only data coupling and no methodological coupling, exhibiting a structured processing characteristic. This invention embodiment relates to the trajectory planning portion of the overall automated operation scheme, seamlessly integrating with the positioning and mapping portion, trajectory tracking, and automated operation portion to complete the automated operation of agricultural machinery. The full-coverage path planning method of this invention embodiment can adapt to customized agricultural machinery. Only the parameters of the automated agricultural machinery model need to be adjusted to achieve path planning for different agricultural machinery. It can effectively achieve full-coverage path planning under different operating scenarios and functions.
[0101] Example 2 This invention provides a full-coverage path planning device for automated agricultural machinery, comprising: The objective function acquisition module is used to acquire the global optimization cost objective function. This global optimization cost objective function includes the cost function for generating Headlands boundaries, the cost function for selecting the parallel line bundle division angle, and the cost function for path length.
[0102] The initial data acquisition module is used to acquire models of automated agricultural machinery and map data of their working areas.
[0103] The boundary generation module is used to process the boundary into convex sub-regions based on the map data, and generate the Headlands boundary based on the cost function for generating Headlands boundary according to the processed convex sub-regions.
[0104] The parallel line division module is used to divide the region enclosed by the Headlands boundary into parallel line bundles based on the model of the automated agricultural machinery and the cost function selected by the parallel line bundle division angle, or to divide the parallel line bundles into parallel line bundles based on the user-defined parallel line angle, and obtain the set of parallel lines in the convex sub-region.
[0105] The path planning module is used to perform full-coverage path planning based on the set of parallel lines and obtain the traversal order of the set of parallel line bundles. The traversal order includes the entry point and exit point of each parallel line.
[0106] The parallel line connection module is used to obtain a planned path by connecting the parallel lines using a Dubins curve with continuous curvature, based on the set of parallel lines, the traversal order, and the model of the automated agricultural machinery, and using a cost function based on the path length.
[0107] Based on the above embodiments, in an optional embodiment of the present invention, the initial data acquisition module specifically includes: The model acquisition unit is used to acquire models of automated agricultural machinery.
[0108] The map determination unit is used to acquire map data of the working area of automated agricultural machinery and determine whether the map data is a raster map.
[0109] The rasterization unit is used to extract and smooth the edges of the map data when it is determined that the map data is not a rasterized map. The smoothing process is performed through filtering or B-Spline curve fitting.
[0110] Based on the above embodiments, in an optional embodiment of the present invention, the boundary generation module specifically includes: The concave boundary determination unit is used to obtain the boundary information of the working area based on the map data, and determine whether the boundary information contains a concave boundary.
[0111] The boundary segmentation unit is used to segment the boundary based on the concave points of the boundary information when it is determined that the boundary information contains a concave boundary, thereby obtaining multiple convex sub-regions. Otherwise, the boundary information is directly used as the convex sub-region.
[0112] The boundary generation unit is used to generate Headlands boundaries based on multiple convex sub-regions, using the expansion coefficient and cost function for generating Headlands boundaries. The expansion coefficient is a multiple of the width of the automated agricultural machinery.
[0113] Based on the above embodiments, in an optional embodiment of the present invention, the parallel line dividing module specifically includes: The boundary acquisition unit is used to obtain the boundaries of parallel lines based on the Headlands boundaries.
[0114] The working width acquisition unit is used to acquire the working width of the automated agricultural machinery based on the model of the automated agricultural machinery.
[0115] The parallel line traversal unit is used to generate a set of parallel lines with different parallel line generation angles based on the operation width and the boundary of the parallel lines.
[0116] The parallel line selection unit is used to generate a set of parallel lines with different angles based on different parallel lines, and selects the set of parallel lines with the smallest cost function value for dividing the parallel line bundle as the final set of parallel lines.
[0117] Based on the above embodiments, in an optional embodiment of the present invention, the path planning module is specifically used to: perform full-coverage path planning based on the set of parallel lines using the Boustrophedon metaheuristic search algorithm, the Snake non-heuristic search method, or the Spiral non-heuristic search method, to obtain the traversal order of the set of parallel line bundles. The traversal order includes the entry point and exit point of each parallel line.
[0118] Based on the above embodiments, in an optional embodiment of the present invention, the parallel line connection module specifically includes: The minimum turning radius acquisition unit is used to acquire the minimum turning radius of the automated agricultural machinery based on the model of the automated agricultural machinery.
[0119] The unit for obtaining connection points is used to obtain the departure point and the entry point to be connected between two adjacent parallel lines according to the set of parallel lines and the traversal order.
[0120] A smooth connection unit is used to smoothly connect the departure point and the entry point to be connected between two adjacent parallel lines using a Dubins curve with continuous curvature, based on the minimum turning radius, to obtain the planned path.
[0121] Example 3 This invention provides a full-coverage path planning device for automated agricultural machinery, comprising a processor, a memory, and a computer program stored in the memory. The computer program can be executed by the processor to implement a full-coverage path planning method for automated agricultural machinery as described in any paragraph of Embodiment 1.
[0122] In the several embodiments provided in this invention, it should be understood that the disclosed apparatus and methods can also be implemented in other ways. The apparatus and method embodiments described above are merely illustrative. For example, the flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of apparatus, methods, and computer program products according to various embodiments of the present invention. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions marked in the blocks may occur in a different order than those marked in the drawings. For example, two consecutive blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in a block diagram and / or flowchart, and combinations of blocks in block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or action, or using a combination of dedicated hardware and computer instructions.
[0123] In addition, the functional modules in the various embodiments of the present invention can be integrated together to form an independent part, or each module can exist independently, or two or more modules can be integrated to form an independent part.
[0124] If the aforementioned functions are implemented as software functional modules and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art, or a part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, electronic device, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks. It should be noted that, in this document, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. In the absence of further restrictions, an element defined by the phrase "comprising a..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.
[0125] The terminology used in the embodiments of this invention is for the purpose of describing particular embodiments only and is not intended to limit the invention. The singular forms “a,” “the,” and “the” as used in the embodiments of this invention and the appended claims are also intended to include the plural forms unless the context clearly indicates otherwise.
[0126] It should be understood that the term "and / or" used in this article is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, and B existing alone. Additionally, the character " / " in this article generally indicates that the preceding and following related objects have an "or" relationship.
[0127] Depending on the context, the word "if" as used here can be interpreted as "when," "when," "in response to determination," or "in response to detection." Similarly, depending on the context, the phrase "if determination" or "if detection (of the stated condition or event)" can be interpreted as "when determination," "in response to determination," "when detection (of the stated condition or event)," or "in response to detection (of the stated condition or event)."
[0128] The use of "first" and "second" in the embodiments is merely to distinguish similar objects and does not represent a specific ordering of objects. It is understood that "first" and "second" can be interchanged in a specific order or sequence where permitted. It should be understood that the objects distinguished by "first" and "second" can be interchanged where appropriate so that the embodiments described herein can be implemented in an order other than those illustrated or described herein.
[0129] The above description is merely a preferred embodiment of the present invention and is not intended to limit the invention. Various modifications and variations can be made to the present invention by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the scope of protection of the present invention.
Claims
1. A method for full-coverage path planning of automated agricultural machinery, characterized in that, Include: S1. Obtain the global optimization cost objective function; wherein, the global optimization cost objective function includes the cost function for generating Headlands boundaries, the cost function for selecting the parallel line bundle division angle, and the cost function for path length; S2. Obtain the model of the automated agricultural machinery and the map data of its working area; S3. Based on the map data, the boundary is processed into convex sub-regions, and the Headlands boundary is generated based on the cost function for generating Headlands boundary according to the processed convex sub-regions. S4. Based on the Headlands boundary, the region enclosed by the boundary is divided into parallel wire bundles according to the cost function selected by the model of the automated agricultural machinery and the parallel wire bundle division angle, or the parallel wire bundles are divided according to the user-defined parallel wire angle to obtain the set of parallel wires in the convex sub-region. S5. Based on the set of parallel lines, perform full-coverage path planning to obtain the traversal order of the set of parallel line bundles; wherein, the traversal order includes the entry point and exit point of each parallel line; S6. Based on the set of parallel lines, the traversal order, and the model of automated agricultural machinery, and using the cost function based on path length, the planned path is obtained by connecting the parallel lines using a Dubins curve with continuous curvature. S3 specifically includes: Based on the map data, obtain the boundary information of the working area, and determine whether the boundary information contains a concave boundary. When it is determined that the boundary information contains a concave boundary, the boundary is segmented according to the concave points of the boundary information to obtain multiple convex sub-regions; otherwise, the boundary information is directly used as the convex sub-region. Headlands boundaries are generated based on multiple convex sub-regions, using expansion coefficients and cost functions. The expansion coefficients are multiples of the width of the automated agricultural machinery. The cost function for generating the headlands boundaries is... for: In the formula, The remaining area after generating the Headlands boundary, This represents the original area.
2. The method for full-coverage path planning of automated agricultural machinery according to claim 1, characterized in that, Cost function of path length for: In the formula, For the total number of wire harnesses, For the first The curve length of the Dubins curve of the wire harness, For the first The starting position of the wire harness, For the first The end position of the wire harness It is the first Euclidean norm of a line bundle; The cost functions for selecting the parallel harness segmentation angle include the field coverage maximization function, the harness number minimization constraint function, the field overlap maximization function, and the harness path length minimization function; among them, Field Cover Maximization Function for: In the formula, The sum of the areas of the intersecting portions between convex subregions. For work area The total area; Minimize the number of wire harnesses constraint function for: In the formula, It is the number of wire harnesses, It is the area enclosed by the inner boundary of Headlands. It refers to the working width of automated agricultural machinery; Field overlap maximization function for: In the formula, Polygonal region area Polygonal region Other polygonal regions area Polygonal region and polygonal regions The area of overlap between them; Harness path length minimization function for: In the formula, It is the number of wire harnesses, For the first The starting position of the wire harness, For the first The end position of the wire harness It is the first Euclidean norm of a line bundle.
3. The method for full-coverage path planning of automated agricultural machinery according to claim 1, characterized in that, The model of the automated agricultural machinery includes a dimensional model and a kinematic model of the automated agricultural machinery; the map data of the automated agricultural machinery is a raster map, a satellite positioning map, a map generated by a sensor, or a fusion information map of a satellite positioning map and a map generated by a sensor. Obtain models of automated agricultural machinery and map data of their working areas, specifically including: Obtain models of automated agricultural machinery; Acquire map data of the working area of automated agricultural machinery and determine whether the map data is a raster map; When it is determined that the map data is not a rasterized map, the edges of the map data are extracted and smoothed; the smoothing is performed by filtering or B-Spline curve fitting.
4. The method for full-coverage path planning of automated agricultural machinery according to claim 1, characterized in that, Based on the Headlands boundary, the region enclosed by the boundary is divided into parallel line bundles according to the model of the automated agricultural machinery and the cost function selected by the parallel line bundle division angle, to obtain the set of parallel lines within the convex sub-region, specifically including: Based on the Headlands boundary, obtain the boundary of the parallel lines; Based on the model of the automated agricultural machinery, the working width of the automated agricultural machinery is obtained; Based on the work width and the boundary of the parallel lines, generate a set of parallel lines with different parallel line generation angles; Based on the sets of parallel lines generated at different angles, the set of parallel lines with the smallest cost function value for selecting the parallel line bundle division angle is selected as the final set of parallel lines.
5. The method for full-coverage path planning of automated agricultural machinery according to claim 1, characterized in that, Based on the set of parallel lines, perform full-coverage path planning to obtain the traversal order of the parallel line bundle set, specifically including: Based on the set of parallel lines, a full-coverage path planning is performed using the Boustrophedon metaheuristic search algorithm, the Snake non-heuristic search method, or the Spiral non-heuristic search method to obtain the traversal order of the set of parallel line bundles; wherein the traversal order includes the entry point and exit point of each parallel line.
6. A method for full-coverage path planning of automated agricultural machinery according to any one of claims 1 to 5, characterized in that, Based on the set of parallel lines, the traversal order, and the model of automated agricultural machinery, and using a cost function based on path length, a planned path is obtained by connecting the parallel lines using a Dubins curve with continuous curvature. Specifically, this includes: Based on the model of the automated agricultural machinery, the minimum turning radius of the automated agricultural machinery is obtained; Based on the set of parallel lines and the traversal order, obtain the departure point and entry point to be connected between two adjacent parallel lines; Based on the minimum turning radius, the planned path is obtained by smoothly connecting the departure point and the entry point between two adjacent parallel lines using a Dubins curve with continuous curvature.
7. A full-coverage path planning device for automated agricultural machinery, characterized in that, A method for performing full-coverage path planning of an automated agricultural machine according to any one of claims 1 to 6; the full-coverage path planning device comprises: The objective function acquisition module is used to acquire the global optimization cost objective function; wherein, the global optimization cost objective function includes the cost function for generating Headlands boundaries, the cost function for selecting the parallel line bundle division angle, and the cost function for path length; The initial data acquisition module is used to acquire models of automated agricultural machinery and map data of their working areas; The boundary generation module is used to process the boundary into convex sub-regions based on the map data, and generate the Headlands boundary based on the cost function for generating Headlands boundary according to the processed convex sub-regions. The parallel line division module is used to divide the region enclosed by the Headlands boundary into parallel line bundles based on the model of the automated agricultural machinery and the cost function selected by the parallel line bundle division angle, or to divide the parallel line bundles into parallel line bundles based on the user-defined parallel line angle, and obtain the set of parallel lines in the convex sub-region. The path planning module is used to perform full-coverage path planning based on the set of parallel lines and obtain the traversal order of the set of parallel line bundles; wherein, the traversal order includes the entry point and exit point of each parallel line; The parallel line connection module is used to obtain a planned path by connecting the parallel lines using a Dubins curve with continuous curvature, based on the set of parallel lines, the traversal order, and the model of the automated agricultural machinery, and using a cost function based on the path length.
8. A full-coverage path planning device for automated agricultural machinery, characterized in that, It includes a processor, a memory, and a computer program stored in the memory; the computer program can be executed by the processor to implement a full-coverage path planning method for automated agricultural machinery as described in any one of claims 1 to 6.
Citation Information
Patent Citations
Path planning method and system for agricultural unmanned aerial vehicle conducting autonomous flight
CN113495576A
Trajectory tracking control method, device and equipment of full-coverage operation agricultural machine and medium
CN116382306A