A mountain orchard picking missing supplement unmanned aerial vehicle dynamic scheduling method and system
Patent Information
- Application Number
- CN202611046989.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-07-14
- Publication Date
- 2026-09-15
Smart Images

Figure CN122756263A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of agricultural intelligent equipment technology, and in particular to a method and system for dynamic scheduling of drones to catch missed harvests in mountain orchards. Background Technology
[0002] With the rapid development of smart agriculture technology, drone harvesting has become an important direction for mechanized fruit harvesting, especially suitable for orchards in mountainous areas with complex terrain, high difficulty of manual harvesting, and high safety risks. Currently, mountain orchards generally use rail vehicles as the main mode of transportation for fruits and supplies. In order to achieve efficient operation and energy replenishment of drones, drone charging stations are usually set up along the transport tracks, and the orchard is divided into multiple operating areas, with a corresponding number of drones assigned to each area to perform harvesting tasks.
[0003] In existing technologies, orchards with flat terrain are typically allocated using a regular grid system. This method is simple and easy to implement, and can meet basic scheduling needs. However, orchards in steep mountainous areas are characterized by large terrain undulations, significant height differences, and fragmented plots. Traditional grid partitioning methods cannot adapt to complex mountainous terrain and present many intractable technical problems.
[0004] First, existing regional division methods fail to consider the critical impact of altitude differences on drone energy consumption. When drones operate in mountainous terrain, the energy consumption for climbing is far greater than for horizontal flight. Current technologies mostly use fixed-radius circular or square area divisions, which cannot dynamically adjust coverage based on terrain variations. If a uniform large-radius division is used, drones are highly susceptible to insufficient endurance due to excessive climbing in steep slopes with significant elevation differences, leading to mid-flight return and mission interruption. Conversely, if a uniform small-radius division is used, it would significantly increase the number of charging stations required, and the costs of laying tracks and constructing charging stations in mountainous areas are extremely high, making large-scale application difficult.
[0005] Secondly, existing technologies are inadequate in handling scattered areas between adjacent regions. Due to the complex terrain, mountain orchards inevitably result in a large number of scattered fruit tree areas after zoning. Existing technologies typically assign these scattered areas simply to closer stations, completely ignoring the differences in workload between different areas. This easily leads to an uneven workload, with some areas experiencing drone overload and others idle, severely reducing overall operational efficiency. Furthermore, using only straight-line distance as the allocation basis, without considering the additional energy consumption due to altitude differences in cost calculations, significantly increases drone flight costs and results in low energy utilization.
[0006] Chinese patent application CN202510115623.1 discloses a method for cleaning photovoltaic panels in a mountain photovoltaic base station based on a drone swarm, comprising: S101 taking a designated first photovoltaic panel as the initial point, if the number of adjacent first photovoltaic panels with the same cleaning pattern reaches a first preset threshold N1, then dividing the first photovoltaic panel and adjacent first photovoltaic panels with the same cleaning pattern into a region, thereby obtaining several regions; S103 calculating the density of the cleaning patterns corresponding to multiple scattered second photovoltaic panels between any designated region and its adjacent regions, and dividing the second photovoltaic panels according to the density and quantity; S105 configuring drones with corresponding cleaning patterns for each region; S107 after cleaning is completed, scanning the region to obtain the target to be cleaned a second time, and performing a second cleaning.
[0007] The aforementioned existing technologies, addressing the scattered distribution of photovoltaic panels in mountainous photovoltaic base stations, use a clustering-like approach to group adjacent panels with the same cleaning pattern into a single area for coordinated drone cleaning. However, they do not solve the problems of rational planning in mountainous terrain with varying elevations and scattered areas.
[0008] In addition, due to the shading of fruit tree canopies, uneven fruit distribution, limitations in the visual recognition accuracy of drones, and unexpected situations during the operation, it is inevitable that some fruits will be missed during any initial harvesting operation. If the missed fruits cannot be harvested in time, it will not only cause serious economic losses, but also affect the fruit yield and quality of the fruit trees in the following year. Summary of the Invention
[0009] The purpose of this invention is to provide a dynamic scheduling method and system for unmanned aerial vehicles (UAVs) to replenish missed harvests in mountain orchards, which partially solves or alleviates at least one of the above-mentioned shortcomings in the prior art. It can adapt to complex mountain terrain, take into account load balancing and energy costs, effectively solve scheduling conflicts in large overlapping areas, and enable replenishment of missed harvests.
[0010] To solve the aforementioned technical problems, the present invention specifically adopts the following technical solution: The first aspect of the present invention is to provide a method for dynamic scheduling of drones to address missed harvesting during orchard picking in mountainous areas, comprising: S1, obtain the altitude difference between two adjacent transport vehicle stopping points and the maximum flight distance of the drone; S2, Divide the area according to the preset area division rules to obtain multiple areas to be picked as well as scattered areas between two adjacent areas to be picked; S3, allocate the fruit trees in the scattered area. For the fruit trees near the station in the scattered area, divide them into the area with the smaller total number of fruit trees in the two adjacent waiting areas; the fruit trees near the station are those whose distance from the two adjacent stations is less than or equal to a preset distance. For fruit trees located in scattered areas on the far side of the station, they are allocated to stations with lower overall flight costs based on the comprehensive flight cost between the fruit tree and the rail station; the fruit trees on the far side of the station are those whose distance from both adjacent stations is greater than a preset distance. S4, Configure a corresponding number of drones for each of the areas to be harvested, and control the drone swarm to perform harvesting operations; S5, after harvesting, scan all areas to be harvested and scattered areas to identify any missed fruit trees in the areas to be harvested and scattered areas that need to be harvested a second time, and then perform a second harvest.
[0011] Furthermore, the secondary harvesting step includes: S51, identify the area where each missed fruit tree is located; S52, if the missed fruit tree is located within a certain harvesting area, the drone within that harvesting area will be responsible for the secondary harvesting; S53, if the missed fruit trees are located in scattered areas, they will be allocated to adjacent harvesting areas according to the principle of minimizing overall flight costs; S54: Each harvesting area calculates the number of drone flights required based on the number of missed fruit trees allocated, and prioritizes calling drones with sufficient battery power to perform secondary harvesting.
[0012] Furthermore, it also includes the following steps: All the missing fruit trees allocated to each station are sorted from smallest to largest according to the comprehensive flight cost to form a re-collection task queue; Determine whether the remaining battery power of the drone assigned to the re-harvesting task is sufficient for the round trip to the corresponding missed fruit tree; if it is sufficient, then perform the second harvest; if not, then suspend the re-harvesting task until the drone has finished charging.
[0013] Furthermore, it also includes the following steps: When the number of missed harvesting tasks in any harvesting area exceeds the total remaining capacity of its drones, drones with an idle rate higher than the first preset idle threshold in adjacent harvesting areas are called up for secondary harvesting. The drone called up is the one with the lowest overall flight cost to perform the harvesting task.
[0014] Furthermore, when there is an overlapping area between two adjacent areas to be harvested, the method of configuring a corresponding number of drones for each of the areas to be harvested includes: S41, control the drone to prioritize picking fruit trees in the picking area, and monitor the current idle rate of each picking area in real time; the current idle rate is the ratio of the number of idle drones in the picking area to the total number of drones configured in the area; S42, determine whether the current idle rate of the area to be picked is higher than the first preset idle threshold; If the idle rate of two adjacent areas to be harvested is greater than or equal to the first preset idle threshold, the idle drones in the corresponding areas are called to harvest the overlapping areas according to the overall operating cost of the drones, and step S43 is executed. If the idle rate of either of two adjacent areas to be harvested is greater than or equal to the first preset idle threshold, the idle drone in that area is called to harvest the overlapping area, and step S44 is executed. S43, continue to monitor the current idle rate of the area to be harvested in real time. If the current idle rate is higher than the second preset idle threshold, call idle drones to harvest fruit trees in the scattered areas of the area. S44, monitor the drone idle rate of each area to be harvested. When the idle rate of any area is detected to be greater than or equal to the first preset idle threshold, call the idle drone in that area to harvest the fruit trees in the scattered areas that have been assigned to that area.
[0015] Further, determine whether the number of fruit trees in the overlapping area is greater than a first preset number threshold; if so, execute steps S41 to S44; otherwise, classify the entire overlapping area into the area with the smaller total number of fruit trees in the two adjacent areas to be harvested.
[0016] Furthermore, the method also includes the following steps: if the number of fruit trees in the overlapping area is greater than a first preset number threshold, determine whether it is greater than a second preset number threshold, wherein the second preset number threshold is greater than the first preset number threshold; if so, divide the overlapping area for harvesting according to the proportion of idle drones in the area to be harvested.
[0017] Furthermore, the steps for dividing overlapping areas for harvesting based on the proportion of idle drones in the harvesting area include: S45, obtain the line connecting the centers of two adjacent harvested areas that form the overlapping area, and use the perpendicular bisector of the line connecting the centers as the initial area boundary. S46, using the initial region boundary as a reference, divide the overlapping region into two sub-regions; S47, adjust the boundary between the two sub-regions based on the ratio of the number of idle drones in the adjacent harvesting areas of the two sub-regions; S48 controls drones in two adjacent harvesting areas to harvest fruit trees in their respective sub-areas. S49, when any picking area completes the picking task of its corresponding sub-area, if the idle rate of the area is higher than the second preset idle threshold, release the drone of the area to cross the boundary of the area and assist another area in picking the remaining overlapping fruit trees.
[0018] Furthermore, the overall operating cost is determined by the distance and height difference between the drone's current location and the fruit trees in the overlapping area, as well as the remaining battery power.
[0019] Furthermore, the preset area division rule is as follows: if the height difference between two adjacent stations is less than a preset height difference threshold, the area is divided with the track station as the center and the first preset radius as the radius; if the height difference between two adjacent stations is greater than or equal to the preset height difference threshold, the area is divided with the track station as the center and the second preset radius as the radius, where the second preset radius is less than the first preset radius.
[0020] Furthermore, the comprehensive flight cost utilization formula is as follows: C1 = α × L + β × ΔH Calculate; where C1 is the comprehensive flight cost, L is the distance, ΔH is the altitude difference, α and β are weighting coefficients, and β = n × α, n > 1.
[0021] Furthermore, the comprehensive activity cost is calculated using the formula: C2 = α × L d +β×H d +γ×(1 SOC) calculation, where C2 is the comprehensive activity cost, L d H represents the horizontal straight-line distance from the current location of the corresponding drone to the missed fruit tree; d α represents the absolute value of the height difference between the current position of the corresponding drone and the missed fruit tree; SOC represents the remaining battery percentage of the corresponding idle drone; α, β, and γ are weighting coefficients, and β = n × α, n > 1, where n is the energy consumption ratio.
[0022] Furthermore, the first preset radius is 80% of the maximum flight distance of the drone, the second preset radius is 75% of the maximum flight distance of the drone, and the preset distance is 50% of the maximum flight distance of the drone.
[0023] Based on the above method, the present invention also provides a dynamic scheduling system for unmanned aerial vehicles (UAVs) to compensate for missed harvesting during orchard picking in mountainous areas, comprising: The data acquisition module is configured to acquire the height difference between two adjacent transport vehicle stopping points and the maximum flight distance of the drone. The area division module is configured to divide areas according to preset area division rules, resulting in multiple areas to be harvested and scattered areas between two adjacent areas to be harvested. The scattered area allocation module is configured to allocate fruit trees within the scattered areas. For fruit trees near the station within the scattered areas, they are assigned to the area with the smaller total number of fruit trees between two adjacent unharvested areas. The fruit trees near the station are defined as fruit trees whose distance from both adjacent stations is less than or equal to a preset distance. For fruit trees far from the station within the scattered areas, they are allocated based on the comprehensive flight cost between the fruit tree and the track station, and are assigned to the station with the lower comprehensive flight cost. The fruit trees far from the station are defined as fruit trees whose distance from both adjacent stations is greater than a preset distance. The first scheduling module is configured to allocate a corresponding number of drones to each of the harvesting areas and control the drone swarm to perform harvesting operations. The second scheduling module is configured to control the drone to scan all areas to be harvested and scattered areas, identify any fruit trees in the areas to be harvested and scattered areas that have been missed for secondary harvesting, and then perform secondary harvesting.
[0024] Furthermore, the second scheduling module specifically includes: The omission detection unit is configured to identify the area where each missed fruit tree is located; The first scheduling unit is configured to, if the omission identification unit identifies any omission fruit tree located within a certain harvesting area, have a drone within that harvesting area responsible for secondary harvesting. The second scheduling unit is configured to allocate any missing fruit tree to an adjacent harvesting area according to the principle of minimizing overall flight cost if the omission identification unit identifies any missing fruit tree in a scattered area. The third scheduling unit is configured to calculate the required number of drone flights for each harvesting area based on the number of missing fruit trees allocated to it, and prioritize calling drones with sufficient power to perform secondary harvesting.
[0025] Furthermore, the aforementioned dynamic scheduling system for drones to replenish missed fruit trees during orchard harvesting in mountainous areas also includes: a cost calculation module, configured to sort all missed fruit trees allocated to each station in ascending order of comprehensive flight cost to form a replenishment task queue; and determine whether the remaining battery power of the drone assigned to the replenishment task is sufficient for the round trip to the corresponding missed fruit tree; if it is sufficient, the second scheduling module is triggered to perform a second harvest; if it is insufficient, the replenishment task is temporarily suspended until the drone is fully charged before execution.
[0026] Furthermore, the cost calculation module is also configured to trigger the second calling module to call drones with an idle rate higher than a first preset idle threshold in adjacent areas to be picked when the amount of missed re-picking tasks in any area exceeds the total remaining drone capacity. The called drone is the one with the lowest overall flight cost to perform the picking task.
[0027] Beneficial effects: This invention abandons the traditional fixed grid or fixed radius division, and for the first time uses the elevation difference of mountains as the basis for regional division. In gentle slope areas, a large radius of 80% of the maximum flight distance is used to maximize coverage, while in steep slope areas, a small radius of 75% is used to ensure endurance safety. This fundamentally solves the dilemma of insufficient endurance with a uniform large radius and excessively high infrastructure costs with a uniform small radius. The station elevation difference, the maximum flight distance of the drone, and all thresholds support real-time dynamic adjustment, adapting to mountainous environments with different slopes, altitudes, and seasons, making it far more versatile than traditional static scheduling schemes.
[0028] In addition, priority is given to load balancing for fruit trees near the station to avoid uneven workloads; for fruit trees far from the station, a comprehensive cost formula based on straight-line distance and weighted height difference is used to allocate costs, which truly reflects the energy consumption of mountain drones and reduces the operating cost of a single fruit tree at a distant station.
[0029] For scenarios with large overlapping areas in extremely flat regions, real-time dynamic capacity adjustment is adopted, completely eliminating the risks of task wastage, flight path intersections, and mid-air collisions associated with the traditional "whoever is idle calls the call" model. Based on the number of fruit trees in the overlapping area, direct merging, hierarchical idle rate scheduling, and dynamic boundary scheduling are employed respectively, significantly improving system scheduling efficiency.
[0030] For fruit trees that were missed during the initial harvest, this invention has developed a secondary harvesting strategy. After the initial harvest, a full-coverage scan of the entire orchard is performed to identify all missed fruit trees. Tasks are then allocated and scheduled according to the same rules as the initial harvest, ultimately achieving the goal of harvesting all the fruit in the orchard while ensuring optimal energy costs and operational efficiency during the supplementary harvesting phase. Attached Figure Description
[0031] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. In all the drawings, similar elements or parts are generally identified by similar reference numerals. The elements or parts in the drawings are not necessarily drawn to scale. Obviously, the drawings described below are some embodiments of the present invention, and those skilled in the art can obtain other drawings based on these drawings without any creative effort.
[0032] Figure 1 This is a flowchart of the multi-regional collaborative scheduling method for drones in mountain orchard harvesting according to Embodiment 1 of the present invention.
[0033] Figure 2 This is a flowchart of the UAV dynamic scheduling method for supplementing missed harvesting in mountain orchards in Embodiment 2 of the present invention.
[0034] Figure 3 for Figure 2 The flowchart for step S5.
[0035] Figure 4 This is a functional module diagram of the UAV dynamic scheduling system for supplementary harvesting in mountain orchards in Embodiment 3 of the present invention. Detailed Implementation
[0036] To make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, 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, not all, of the embodiments of the present invention. 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.
[0037] In this document, suffixes such as "module," "part," or "unit" used to denote elements are used only for the purpose of illustrative purposes and have no specific meaning in themselves. Therefore, "module," "part," or "unit" may be used interchangeably.
[0038] In this document, the terms "upper," "lower," "inner," "outer," "front," "rear," "one end," and "the other end," etc., indicate the orientation or positional relationship based on the orientation or positional relationship shown in the accompanying drawings. They are used only for the convenience of describing the present invention and for simplifying the description, and do not indicate or imply that the device or element referred to must have a specific orientation, or be constructed and operated in a specific orientation. Therefore, they should not be construed as limitations on the present invention. Furthermore, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance.
[0039] In this document, unless otherwise explicitly specified and limited, the terms "installed," "equipped with," "connected," etc., should be interpreted broadly. For example, "connection" can be a fixed connection, a detachable connection, or an integral connection; it can be a mechanical connection, a direct connection, or an indirect connection through an intermediate medium; it can be a connection within two components. Those skilled in the art can understand the specific meaning of the above terms in this invention based on the specific circumstances.
[0040] In this document, "and / or" includes any and all combinations of one or more of the listed related items.
[0041] In this article, "multiple" means two or more, that is, it includes two, three, four, five, etc.
[0042] Example 1: like Figure 1 As shown, this invention provides a multi-regional collaborative scheduling method for unmanned aerial vehicles (UAVs) in mountain orchard harvesting, the specific steps of which include: S1, obtain the altitude difference between two adjacent transport vehicle parking stations and the maximum flight distance of the drone.
[0043] To facilitate drone harvesting and subsequent transportation, fruit farmers will set up multiple transport vehicle stops along the transport track in the mountain orchard, and install drone charging equipment at each of the stops.
[0044] In mountainous orchards, the energy consumption of a drone climbing a unit height is approximately 3-5 times that of flying horizontally for the same distance. Altitude difference is the most critical terrain factor affecting drone endurance and operating costs. In this invention, the altitude difference between adjacent stations directly determines the coverage radius of the harvesting area; a larger altitude difference results in a smaller radius, and a smaller difference results in a larger radius. It is also a core weighting term in the comprehensive cost formula for allocating fruit trees in scattered areas. Here, "two adjacent transport vehicle stops" refers to adjacent stations connected sequentially along the transport track, not arbitrarily adjacent stations in space, reflecting the actual linear distribution of tracks in mountainous orchards.
[0045] The purpose of this step is to collect two basic parameters that determine subsequent area division rules, comprehensive flight cost calculation, and UAV operation boundaries, so as to provide a basis for subsequent scheduling.
[0046] S2, divide the area according to the preset area division rules to obtain multiple areas to be picked as well as scattered areas between two adjacent areas to be picked.
[0047] Specifically, the preset area division rules are as follows: if the height difference between two adjacent stations is less than a preset height difference threshold, the area is divided with the track station as the center and the first preset radius as the radius; if the height difference between two adjacent stations is greater than or equal to the preset height difference threshold, the area is divided with the track station as the center and the second preset radius as the radius, where the second preset radius is less than the first preset radius.
[0048] The purpose of this step is to optimize the harvesting area by adjusting the coverage radius of a single site based on the energy consumption characteristics of drones and the differences in altitude in mountainous terrain, without increasing the number of track stations and charging equipment. This step ultimately outputs two types of geographical areas: the harvesting area, which is the non-overlapping portion of the circular coverage area of each site, and scattered areas, which are the blank areas between two adjacent circular coverage areas that are not completely covered by any site.
[0049] Traditional fixed radius division methods use a one-size-fits-all approach to coverage. If a large radius is set for flat areas, drones in steep areas will run out of power and have to return midway due to excessive climbing. If a small radius is set for steep areas, flat areas will require a large number of additional sites, and infrastructure costs will increase exponentially.
[0050] In this embodiment, the coverage radius of a single site is inversely proportional to the terrain complexity, i.e., the height difference, surrounding the site. The steeper the terrain and the greater the height difference between adjacent sites, the smaller the safe operating radius for the drone; conversely, the flatter the terrain and the smaller the height difference between adjacent sites, the larger the safe operating radius for the drone. This dynamic matching ensures sufficient power redundancy for drones operating within their respective responsibility areas, while maximizing single-site coverage efficiency in flat areas and minimizing overall infrastructure costs.
[0051] More specifically, the first preset radius is 80% of the drone's maximum flight distance. In flat areas, the drone requires almost no climb, with energy consumption primarily from horizontal flight. A 20% power reserve is provided to handle unexpected situations such as sudden gusts of wind or temporary flight path adjustments, while ensuring the drone has sufficient power to complete multiple harvests from a single fruit tree.
[0052] The second preset radius is 75% of the drone's maximum flight distance. In steep terrain, the drone needs to frequently climb and descend, consuming a significant amount of power. A 25% power reserve is specifically reserved to address the increased energy consumption caused by terrain undulations, eliminating the risk of insufficient battery life.
[0053] S3, allocate the fruit trees in the scattered area. For the fruit trees near the station in the scattered area, divide them into the area with the smaller total number of fruit trees in the two adjacent waiting areas; the fruit trees near the station are those whose distance from the two adjacent stations is less than or equal to a preset distance. For fruit trees located in scattered areas on the far side of the station, they are allocated to stations with lower overall flight costs based on the comprehensive flight cost between the fruit tree and the rail station; the fruit trees on the far side of the station are those whose distance from both adjacent stations is greater than a preset distance.
[0054] Compared to grid-based division, scattered areas are an inevitable product of circular division. They specifically refer to blank areas within the orchard that are not completely covered by the initial circular coverage area of any station. These areas are mainly distributed in three types of locations: first, the gaps between the coverage areas of adjacent stations in steep slope sections, caused by the reduction in coverage radius; second, the orchard edge areas, the parts that exceed the coverage range of the outermost station; and third, isolated areas formed by local topographical changes, such as deep ditches and steep slope protrusions.
[0055] In scattered areas, fruit trees are sparsely distributed, and the cost of operating a single fruit tree is much higher than in areas awaiting harvesting. Furthermore, the allocation of these trees directly affects the total workload of each station and the efficiency of drone scheduling. Improper allocation can lead to situations where drones are idle at some stations and tasks pile up at others, or even cause drones to be unable to complete the harvesting tasks of fruit trees at remote stations due to insufficient battery life.
[0056] In this embodiment, the preset distance is 50% of the maximum round-trip flight distance of the drone. Within this distance range, the energy consumption of the drone to and from the fruit tree accounts for ≤25% of the total range, and the difference in flight costs between the two stations is usually less than 10%. The impact of the cost difference on the overall economy can be ignored. At this time, load balancing becomes a better decision objective.
[0057] The term "near-station side fruit trees" refers to scattered fruit trees that simultaneously meet the condition that their straight-line distance to both adjacent stations is less than or equal to a preset distance. For near-station side fruit trees, they are assigned to the area with the smaller total number of fruit trees between two adjacent unharvested areas.
[0058] For example, if there are 220 fruit trees in the harvesting area A centered on station A, and 160 fruit trees in the harvesting area B centered on station B, and 10 fruit trees near the station in the scattered areas, then all of them will be assigned to station B, reducing the task gap between the two stations from 60 trees to 50 trees.
[0059] The term "far-station side fruit trees" refers to scattered fruit trees that simultaneously satisfy the condition that the straight-line distance to both adjacent stations is greater than a preset distance. These fruit trees represent the highest operational cost in scattered areas, with their flight energy consumption typically accounting for more than 30% of the drone's total range, and the additional energy consumption due to altitude differences significantly increases the proportion.
[0060] For remote-station fruit trees, load balancing is no longer a priority. Instead, allocation is strictly based on the overall flight cost C1 between the fruit tree and the orbital station, assigning them to stations with lower overall costs. This is because the cost difference for remote-station fruit trees far outweighs the benefits of load balancing. Forcibly allocating them to higher-cost stations for load balancing would lead to a significant increase in overall energy consumption and could even result in insufficient drone range.
[0061] More specifically, the comprehensive flight cost utilization formula described in this embodiment is as follows: Calculate C1 = α × L + β × ΔH; Where C1 is the comprehensive flight cost, L is the distance from the fruit tree to the corresponding station, ΔH is the height difference between the fruit tree and the corresponding station (absolute value), α and β are weighting coefficients, and β = n × α, n > 1. n is the energy consumption ratio, which physically means that the energy consumption of the UAV climbing 1 meter is equivalent to the energy consumption of flying n meters horizontally. The specific value of n can be obtained in advance through extensive testing to determine the specific value (the specific calibration method is existing technology and will not be described in detail here), or it can be obtained from the UAV's performance parameter manual, etc. Usually, α is taken as 1.
[0062] For example, for a certain type of drone with n=3, α=1, and a fruit tree in a scattered area, the horizontal straight-line distance from Y to station A is 300 meters, and the height difference is 80 meters. Then the comprehensive flight cost C1 A=1×300+3×80=540 equivalent meters; the horizontal straight-line distance to Station B is 400 meters, the altitude difference is 20 meters, so the comprehensive flight cost C1 B =1×400+3×20=460 equivalent meters. Because C1 B <C1 A Therefore, fruit tree Y is assigned to station B. If the traditional principle of shortest straight-line distance were followed, it would be incorrectly assigned to station A, leading to an increase in the operating cost per fruit tree.
[0063] S4, Configure a corresponding number of drones for each of the areas to be harvested, and control the drone swarm to perform harvesting operations.
[0064] Based on the area division steps described above, it is only necessary to equip the corresponding number of drones for harvesting operations according to the number of fruit trees in each area to be harvested.
[0065] However, since this invention abandons the grid division of flat orchards and adopts the division of circular areas with the track station as the center, geometrically speaking, when the distance between the centers of two circles is less than the sum of the radii of the two circles, overlapping areas will inevitably occur. To completely eliminate the overlap, the distance between the centers of adjacent stations must be greater than or equal to the sum of the radii of the two circles, but this will result in an uncoverable blank gap between the two circles, forming a permanent blind spot for picking.
[0066] Therefore, in some other embodiments, when there is an overlapping area between two adjacent areas to be picked, the method of configuring a corresponding number of drones for each of the areas to be picked includes: S41, control the drone to prioritize picking fruit trees in the non-overlapping areas of the picking area, and monitor the current idle rate of each picking area in real time; the current idle rate is the ratio of the number of idle drones in the picking area to the total number of drones configured in the area.
[0067] When the harvesting task is initiated, fruit trees within the non-overlapping harvesting areas of each station are organized into a task queue, ordered from closest to furthest from the station and from smallest to largest height difference. These queues are then batch-assigned to all drones configured for that area. Drones take off from the station and harvest fruit from the queue sequentially along a pre-defined path. When the fruit bins are full or the battery level drops below a preset value, the drones return to the station to unload the fruit and recharge, then take on the next task. This cycle repeats until all tasks are completed.
[0068] Before the idle rate in any area reaches the first preset idle threshold, the system locks the cross-regional scheduling permissions of all drones, prohibiting any drone from leaving its own core harvesting area.
[0069] In this embodiment, the current idle rate = number of available idle drones in the area / total number of drones configured in the area. Available idle drones refer to drones that have completed their current task, have a battery level of ≥50%, are fault-free, and are in standby mode; drones that are flying, charging, undergoing maintenance, or whose fruit bins are fully loaded are not included.
[0070] S42, determine whether the current idle rate of the area to be harvested is higher than the first preset idle threshold. If the current idle rates of two adjacent areas to be harvested are both greater than or equal to the first preset idle threshold, call the idle drone in the corresponding area to harvest the overlapping area according to the comprehensive operating cost C2 of the drone, and execute step S43; if the idle rate of any area in two adjacent areas to be harvested is greater than or equal to the first preset idle threshold, call the idle drone in that area to harvest the overlapping area, and execute step S44.
[0071] In some embodiments, the first preset idle threshold is 30%.
[0072] Specifically, the comprehensive operating cost C2 is determined by the distance and height difference between the drone's current location and the fruit trees in the overlapping area, as well as the remaining battery power, i.e., C2 = α × L d +β×H d +γ×(1 SOC).
[0073] Among them, L d H represents the horizontal straight-line distance from the current location of the drone to the target fruit tree in the overlapping area. d The absolute value of the height difference between the drone's current position and the target fruit tree; SOC is the percentage of the drone's current remaining battery power; α, β, and γ are weighting coefficients, α=1, β=n×α, and n is the same as n in formula C1.
[0074] If the current idle rate of two adjacent areas to be harvested is greater than or equal to the first preset idle threshold, the system traverses all available idle drones in the two areas, calculates the C2 value of each available idle drone to each unharvested fruit tree in the overlapping area; sorts the C2 values from smallest to largest, and assigns the drone with the smallest C2 value to each fruit tree.
[0075] If the idle rate of either of two adjacent areas to be harvested is greater than or equal to the first preset idle threshold, the idle drones in that area are called to harvest the overlapping area. Since only one area has idle resources, all available idle drones in that area are directly called to handle the overlapping area task without waiting for the other area.
[0076] Of course, if the current idle rate of any area is greater than or equal to the first preset idle threshold, real-time monitoring will continue until the idle rate of any area is greater than or equal to the first preset idle threshold. Then, the C2 value of the idle drones in that area to each unharvested fruit tree in the overlapping area will be calculated. The drones with the smallest C2 value will be assigned to each fruit tree in ascending order of C2 value.
[0077] S43, continue to monitor the current idle rate of the area to be harvested in real time. If the current idle rate is higher than the second preset idle threshold, call idle drones to harvest the fruit trees in the scattered areas of the area.
[0078] When the idle rates of two regions both reach the first threshold and are jointly executing the overlapping area harvesting task, if the idle rate of either region rises above the second preset idle threshold (greater than the first preset idle threshold), the system triggers the corresponding region to perform scattered area scheduling, that is, scheduling idle drones to harvest fruit trees in the scattered area. In other words, for the same harvesting area, the harvesting priority of fruit trees in non-overlapping areas is higher than that of fruit trees in overlapping areas, and the harvesting priority of fruit trees in overlapping areas is higher than that of fruit trees in scattered areas. Of course, this does not mean that fruit trees in non-overlapping areas are harvested first, and fruit trees in overlapping areas are harvested first, and fruit trees in scattered areas are harvested first. Rather, as mentioned above, drones are scheduled based on the real-time idle rate of the harvesting area. Therefore, it is possible for any two or three of the non-overlapping areas, overlapping areas, and scattered areas to be harvested simultaneously.
[0079] When the idle rate of any region reaches the first preset idle threshold, harvesting tasks in overlapping regions will be immediately allocated. Therefore, the idle rate will drop below the first preset idle threshold. During this process, as harvesting tasks in non-overlapping regions are continuously completed, drones will become idle. However, they are simultaneously executing harvesting tasks in overlapping regions. Therefore, the idle rate may not reach the first preset idle threshold for a period of time. Only when the harvesting tasks in overlapping regions are almost finished, and a significant portion of the harvesting tasks in overlapping regions have been completed, or when drones from other regions join the harvesting tasks in overlapping regions, will the idle rate potentially exceed the first preset idle threshold, or even exceed the second preset idle threshold (i.e., the idle rate will fall back below the first preset idle threshold due to resource allocation; at this time, although non-overlapping regions are still releasing new idle resources, overlapping regions are also consuming resources, thus forming a temporary dynamic equilibrium). When the release rate of non-overlapping regions exceeds the consumption rate of overlapping regions, such as when overlapping region tasks are nearing completion or external support is available, the idle rate will increase net, even reaching the second preset idle threshold. This indicates that there are enough idle drones, and therefore, drones can be scheduled to begin executing harvesting tasks in dispersed regions.
[0080] Of course, in other embodiments, the two regions can wait until the harvesting tasks in the overlapping areas are completed before simultaneously scheduling drones to carry out harvesting tasks in the dispersed areas.
[0081] As mentioned earlier, the system sorts the scattered fruit trees previously allocated to each region according to the C1 comprehensive cost from smallest to largest, generating their respective scattered task queues. Therefore, all available idle drones are called up to execute the scattered harvesting tasks in the order of the queues. Of course, if a region completes its own scattered tasks ahead of schedule and its idle rate is still higher than the second threshold, the system automatically releases its drones to assist another region in completing the remaining scattered tasks.
[0082] S44, monitor the drone idle rate of each area to be harvested. When the idle rate of any area is detected to be greater than or equal to the first preset idle threshold, call the idle drone in that area to harvest the fruit trees in the scattered areas that have been assigned to that area.
[0083] It should be noted that any area here may be a picking area where the idle rate is greater than or equal to the first preset idle threshold in step S42 (i.e., the first case), or it may be another picking area where the idle rate is not greater than or equal to the first preset idle threshold (i.e., the second case); of course, it is also possible that two areas reach the first preset idle threshold at the same time (i.e., the third case).
[0084] To improve overall efficiency, in some embodiments, different scheduling schemes are adopted for different situations, specifically: In the first scenario, as mentioned earlier, when the idle rate of the area reaches the first preset idle threshold, harvesting tasks in overlapping areas will be immediately assigned. Therefore, the idle rate will drop below the first preset idle threshold. Of course, during this process, as harvesting tasks in non-overlapping areas are continuously completed, drones will become idle, but at the same time, they are executing harvesting tasks in overlapping areas. Therefore, the idle rate may not reach the first preset idle threshold for a period of time. Only when the harvesting tasks in overlapping areas are almost finished and a large number of harvesting tasks in overlapping areas have been completed, or when drones from other areas join the harvesting tasks in overlapping areas, will the idle rate be greater than the first preset idle threshold. In other words, resources are very abundant. Therefore, harvesting tasks in scattered areas can be executed directly without waiting for the idle rate to reach the second preset idle threshold.
[0085] In the second scenario, the harvesting tasks in the non-overlapping areas of another region have been largely completed. At this point, resources are already being used to execute harvesting tasks in the overlapping areas, but harvesting tasks in the scattered areas have not yet started. Therefore, surplus resources are used to execute harvesting tasks in the scattered areas. Based on the same principle, in the third scenario, surplus resources are also used to execute harvesting tasks in the scattered areas. This is because harvesting tasks in scattered areas may be more costly than those in overlapping areas, thus requiring a longer time window to complete. If all other tasks are completed before processing them all at once, the time pressure might necessitate a large influx of drones simultaneously, leading to even greater resource congestion.
[0086] Therefore, in this embodiment, when the picking task in the overlapping area has not yet been started, the idle resources that have reached the first preset idle threshold are used to start the overlapping area; when the picking task in the overlapping area is already in the execution state, the system determines that the idle resources that have newly reached the first preset idle threshold are actually surplus capacity, and therefore, they are used to start the picking task in the scattered areas that have not yet been executed.
[0087] In other words, when two zones collaboratively execute overlapping area tasks (i.e., in step S42, if the current idle rate of both zones is greater than or equal to the first preset idle threshold, then idle drones in both zones are called to execute harvesting tasks in the dispersed areas), the harvesting task pressure in the overlapping area is shared by both zones, and the idle rate of either zone rises relatively slowly. Therefore, only when the idle rate accumulates to a higher second preset idle threshold does it indicate that the system has sufficient redundant resources to safely start the dispersed area tasks. However, when only one zone undertakes overlapping area tasks (i.e., in step S42, if the current idle rate of only one zone is greater than or equal to the first preset idle threshold, then idle drones in that zone are called to execute harvesting tasks in the dispersed areas), that zone needs to independently handle the overlapping area load. Its idle rate recovering to the first preset idle threshold is already a positive signal of resource surplus—indicating that while executing overlapping area tasks, the zone still has net idle resource output. If this portion of resources is not immediately allocated to the dispersed areas, it will result in idle capacity. Therefore, in a single-zone scenario, using the first preset idle threshold as the trigger condition for initiating harvesting tasks in dispersed areas ensures timely utilization of scarce idle resources. Similarly, when only a single zone undertakes tasks in overlapping areas, since the tasks in overlapping areas have already been initiated, even if the idle rate of another area reaches the first preset idle threshold, newly added idle resources will not be invested in the overlapping area. Instead, harvesting tasks in dispersed areas will be executed directly, allocating resources to dispersed areas with zero progress to obtain greater overall benefits.
[0088] It is worth noting that when processing overlapping areas, it is determined whether the number of fruit trees in the overlapping area is greater than a first preset threshold. If so, steps S41 to S44 are executed; otherwise, the overlapping area is merged into the area with the smaller total number of fruit trees in the two adjacent areas to be harvested. That is, this area is no longer used as an overlapping area for harvesting, but is directly used as a non-overlapping area in the areas to be harvested. Cross-area idle rate scheduling requires real-time monitoring of drone status, calculation of comprehensive operation costs, and dynamic allocation of tasks, which will generate certain system computing and communication overhead. Therefore, when the number of fruit trees in the overlapping area is very small, this overhead will far outweigh the efficiency gains brought by cross-area collaboration, and direct merging is a better choice.
[0089] Assume the first preset quantity threshold T1 = 10 trees.
[0090] If there are 8 fruit trees in the overlapping area between stations A and B, and station A has a total task of 220 trees while station B has a total task of 180 trees, then since 8 ≤ 10, a direct merger is performed, assigning all 8 fruit trees to station B. Station B's total task becomes 188 trees, and the difference in task volume between the two stations is reduced from 40 trees to 32 trees.
[0091] If there are 15 fruit trees in the overlapping area between stations A and B, since 15 > 10, direct merging is not performed; the 15 fruit trees are marked as a common work area, and the idle rate scheduling process in steps S41 to S44 is initiated, which is handled jointly by the idle drones of the two stations.
[0092] Furthermore, in some other embodiments, if the number of fruit trees in the overlapping area is greater than a first preset number threshold, it is further determined whether it is greater than a second preset number threshold, where the second preset number threshold is greater than the first preset number threshold; if so, the overlapping area is divided for harvesting according to the proportion of idle drones in the area to be harvested.
[0093] When the number of fruit trees in the overlapping area is less than or equal to the first preset threshold, the fruit trees are directly merged into the area with fewer fruit trees. When the first threshold is less than the number and less than the second threshold, the idle rate scheduling method in steps S41 to S44 is adopted. When the number is greater than the second threshold, the dynamic boundary scheduling method is switched to divide the overlapping area for harvesting according to the proportion of idle drones in the area to be harvested.
[0094] When the number of fruit trees in the overlapping area exceeds the second threshold, it indicates that there is a large-scale overlap in the coverage of the two stations. If the random scheduling mode of "whoever is idle undertakes the task" is still followed, dozens of unmanned aerial vehicles will scramble for tasks disorderly at the same time, which is very likely to cause multiple UAVs to fly to the same fruit tree, increasing the energy consumption caused by empty flight. When a large number of UAVs fly crosswise in the same airspace, the probability of air collision and the intensity of communication interference increase exponentially. Therefore, the root cause of conflicts must be eliminated in terms of rules by dividing responsibility boundaries in advance, and then load balancing is achieved through dynamic adjustment.
[0095] Specifically, the step of dividing the overlapping area for picking according to the proportion of idle UAVs in the to-be-picked areas includes: S45, acquiring the connecting line between the centers of two adjacent to-be-picked areas that form the overlapping area, and taking the perpendicular bisector of said connecting line between the centers as the initial area boundary.
[0096] Taking the center points of the UAV take-off and landing platforms of two adjacent stations as endpoints to draw the connecting line between the centers; calculating the perpendicular bisector of the connecting line, which is used as the initial boundary of two sub-areas; any point on the boundary has exactly the same straight-line distance to the two stations, which ensures the fairness of initial allocation. The perpendicular bisector is the fairest division method that can be obtained without any additional calculation, and can complete initial boundary generation within milliseconds, avoiding chaos in the early stage of system startup.
[0097] S46, dividing the overlapping area into two sub-areas based on the initial area boundary.
[0098] The initial boundary cuts the overlapping area into two left and right sub-areas, which respectively correspond to the left station and the right station; the system automatically counts the number of fruit trees in the two sub-areas and generates respective initial task lists; the boundary line and the fruit trees on the boundary line are temporarily allocated to the sub-area with fewer fruit trees as a supplement to the initial load balancing. When the boundary offset is performed in the subsequent step S47, these fruit trees are automatically allocated to the corresponding new sub-area along with the movement of the boundary line.
[0099] S47, adjusting the area boundary between the two sub-areas according to the proportion of idle UAVs in the respective adjacent to-be-picked areas of the two sub-areas.
[0100] In this embodiment, the following formula is used: to perform boundary adjustment; Wherein, Δx is the offset of the boundary line along the direction of the connecting line between the centers, k is a preset adjustment coefficient (0 < k ≤ 1, preferably, k takes an empirical value of 0.3-0.7, preferably 0.4, that is, the steeper the terrain, the smaller the value), N A is the current number of available idle UAVs in the to-be-picked area A, N BLet B be the number of available idle drones in the harvesting area, and W be the total width of the overlapping area along the line connecting the centers of the circles.
[0101] In some embodiments, step S47 is performed periodically. That is, the number of idle drones in two adjacent harvesting areas is read in real time periodically (e.g., every 5-15 minutes) and the boundary offset is calculated.
[0102] To avoid frequent boundary fine-tuning causing repeated changes in the drone's path, a threshold D (5% of the width of the overlapping area) is set. Step S47 is only executed to update the boundary when the calculated offset exceeds this threshold D. If it does not exceed the threshold, the process continues to the next cycle for judgment.
[0103] S48 controls drones in two adjacent harvesting areas to harvest fruit trees in their respective sub-areas.
[0104] Each station's drones are only responsible for harvesting fruit trees within their own sub-area, performing tasks in order from near to far and from low to high. The flight path of a single drone is planned uniformly by the system to avoid overlapping paths between drones within the same sub-area.
[0105] S49, when any picking area completes the picking task of its corresponding sub-area, if the idle rate of the area is higher than the second preset idle threshold, release the drone of the area to cross the boundary of the area and assist another area in picking the remaining overlapping fruit trees.
[0106] When any region completes all its tasks and its idle rate is greater than or equal to the second preset idle threshold, Remove the fence restrictions on drones in the area, allowing them to cross the boundary and assist in harvesting the remaining overlapping fruit trees in another area; drones assisting across areas will still be subject to the comprehensive operation cost C2 (i.e., the comprehensive operation cost between the drone and the fruit trees being harvested across areas: C2=α×L). d +β×H d +γ×(1 SOC), where L d H represents the horizontal straight-line distance from the drone's current location to the target fruit tree requiring cross-regional assistance; d The absolute difference between the drone's current altitude and the height of the target fruit tree for cross-regional assistance; SOC (the percentage of the drone's current remaining battery power) is used to prioritize harvesting the closest and lowest-cost fruit tree. Of course, for cross-regional assistance, drones with remaining battery power ≥ 120% of the mission's required battery power are preferred.
[0107] Example 2: In actual scheduling, after the initial harvest, a full-coverage scan of the entire harvesting area is performed to identify all missed fruit trees. Randomly calling upon currently idle drones for supplementary harvesting without any planning would result in significant resource waste. Therefore, based on the above scheduling method, this invention also provides a dynamic drone scheduling method for supplementary harvesting in mountain orchards, specifically including steps S1-S4 of the above embodiment, see [link to relevant documentation]. Figure 2 The difference is that this embodiment also includes the following steps: S5, after harvesting, scan all areas to be harvested and scattered areas to identify any missed fruit trees in the areas to be harvested and scattered areas that need to be harvested a second time, and then perform a second harvest.
[0108] After the initial harvest, a full-coverage scan of the entire harvesting area is conducted to identify all missed fruit trees. Tasks are then allocated and scheduled according to the same rules as the initial harvest to ensure optimal energy costs and operational efficiency during the re-harvesting phase.
[0109] Specifically, see Figure 3 In this embodiment, the steps for secondary harvesting specifically include: S51 identifies the area where each missed fruit tree is located.
[0110] The purpose of this step is to locate the geographical coordinates of each missed fruit tree and match it with its geographical region, providing a basis for subsequent task allocation.
[0111] The images and point cloud data acquired by the drone are transmitted to the dispatch center in real time. The dispatch center uses a trained fruit detection model, such as YOLOv8, to identify clusters of unpicked fruits and cluster all fruit clusters on the same fruit tree to generate the center point coordinates and the number of fruits of a single missing fruit tree.
[0112] The center point coordinates of each missed fruit tree are spatially topologically matched with the boundaries of the core harvest area, scattered areas, and overlapping areas generated during the initial harvesting stage to determine its region. If the coordinates fall within a harvest area, it is determined to be a missed fruit tree in that area; if the coordinates fall within a scattered area, it is determined to be a missed fruit tree in the scattered area; if the coordinates fall within an overlapping area, it is determined to be a missed fruit tree in the overlapping area, and its affiliation is determined according to the division of the fruit tree in step S4.
[0113] S52: If the missed fruit tree is located within a certain harvesting area, a drone within that harvesting area will be responsible for secondary harvesting.
[0114] All missing fruit trees identified as belonging to the same harvesting area are collectively included in the reharvesting task list for that area and given priority in allocating them to idle drones within that site that have completed their initial harvesting task and have high remaining battery power.
[0115] S53. If the missed fruit trees are located in scattered areas, they will be allocated to adjacent harvesting areas according to the principle of minimizing overall flight costs.
[0116] For each missing fruit tree in a scattered area, the comprehensive flight cost from it to the corresponding stations in the two adjacent unharvested areas is calculated. The missing fruit tree is then assigned to the station corresponding to the unharvested area with the lower comprehensive flight cost. If the comprehensive flight costs of the two stations are equal, the tree is assigned to the station corresponding to the unharvested area with the smaller current reharvesting workload, thus balancing the load. Specifically, the comprehensive flight cost is calculated using the method described in Example 1. The difference is that in this example, L is the horizontal straight-line distance between the missing fruit tree and the corresponding station, and ΔH is the absolute value of the height difference between the missing fruit tree and the corresponding station. That is, in this example, the comprehensive flight cost from the missing fruit tree to the station is calculated, thereby dividing the missing fruit trees into regions.
[0117] S54: Each harvesting area calculates the number of drone flights required based on the number of missed fruit trees allocated, and prioritizes calling drones with sufficient battery power to perform secondary harvesting.
[0118] In some embodiments, the minimum number of drone flights M required to complete all re-harvesting tasks is calculated based on the total number of missed fruit trees allocated to the corresponding sites in the sampling area, combined with the average re-harvesting efficiency of a single drone (the average number of fruit trees that a drone can harvest in a single flight in the area) and the charging time. M = (Q / P) * (1 + T) 充电 / T 作业 ), where Q is the total number of missing fruit trees allocated to the area (including fruit trees that originally belonged to the area, as well as missing fruit trees transferred from scattered areas), P is the average replenishment efficiency of a single drone in the area (i.e., the average number of missing fruit trees that can be picked by all available drones in the area in a single takeoff, preferably, the average replenishment efficiency is 60% to 80% of the single-flight picking capacity of the area, and the single-flight picking capacity of the area refers to the ratio of the number of fruit trees that can be picked by each drone in a single flight to the number of drones); T 充电 Time to charge a drone on a single charge; T 作业 This refers to the average flight time of a single drone operation (including return time).
[0119] In some embodiments, a drone priority ranking rule is pre-established. The first priority is drones with ≥80% battery, that have completed all initial harvesting tasks, and are currently idle. The second priority is drones with ≥60% battery, that have completed all initial harvesting tasks (in this document, initial harvesting tasks refer to completing the harvesting tasks in Embodiment 1), and are currently idle. The third priority is drones that have completed all initial harvesting tasks, are currently charging, and are expected to be fully charged within 30 minutes. That is, drones with higher priority are assigned to the corresponding supplementary harvesting tasks first. Generally, drones with <60% battery are prohibited from performing supplementary harvesting tasks to avoid returning midway due to insufficient battery. However, as mentioned above, drones expected to be fully charged within 30 minutes can also be assigned corresponding tasks.
[0120] As mentioned earlier, if the missed fruit tree is located within a certain harvesting area, a drone within that harvesting area will be assigned to it first for secondary harvesting.
[0121] In some embodiments, all replenishment tasks at the site are sorted in ascending order of their comprehensive operating cost C2 to generate a final replenishment task queue. Specifically, the comprehensive operating cost C2 calculation formula in Embodiment 1 above is used: C2 = α × L d +β×H d +γ×(1 The overall operating cost is calculated using the SOC (Social Operating Cost), but in this embodiment, L... d H represents the horizontal straight-line distance from the current location of the idle drone to the missed fruit tree; d The absolute difference in height between the current location of the idle drone and the missed fruit tree; SOC is the remaining percentage of battery power of the idle drone.
[0122] After receiving a task, the drone executes it sequentially according to the task queue. Once completed, it returns to the station to unload the fruit and recharge, until all tasks are completed.
[0123] Before assigning each task, the system must accurately calculate the power required for the drone to travel to and from the fruit tree and reserve a safety margin of power. If the drone's remaining power is greater than or equal to the required power, the task will be executed; if the drone's remaining power is less than the required power, the task will be temporarily placed in the waiting queue and will be assigned to the drone again after it has finished charging.
[0124] In addition, in this embodiment, when the amount of missed re-harvesting tasks in any harvesting area exceeds the total remaining drone capacity, drones in adjacent harvesting areas with an idle rate higher than a first preset idle threshold are called in for secondary harvesting. The total operating cost of the called drone for performing the harvesting task is C2 (C2=α×L). d +β×H d +γ×(1 SOC), at this time, L d H represents the horizontal straight-line distance from the current location of an idle drone in an adjacent unharvested area to the missed fruit trees that need to be harvested within that area; d The absolute value of the height difference between the current position of an idle drone in an adjacent harvesting area and the missed fruit trees that need to be harvested in that area; SOC is the current remaining percentage of the drone's battery; α, β, and γ are weighting coefficients (α=1, β=n×α, n is the energy consumption ratio of the corresponding drone) and the drone with the lowest energy consumption ratio.
[0125] The remaining total drone capacity is the maximum number of fruit trees that all available drones can harvest in a given harvesting area within the specified harvesting deadline.
[0126] The system calculates the remaining total capacity and remaining workload of all stations. If a station meets the above triggering conditions, the cross-regional assistance process is initiated. Of course, the closer the adjacent harvesting area, the higher the priority is given to it as a candidate area.
[0127] Specifically, from the candidate adjacent harvesting areas, drones that simultaneously meet the following conditions are selected: they are in idle standby mode, have a remaining battery level of ≥60%, and have no local tasks to be executed. Then, for each eligible drone, the comprehensive operating cost of flying from its current location to the target missing fruit trees at the supported site is calculated, and the drone with the lowest comprehensive operating cost value is selected to perform the cross-regional supplementary harvesting task.
[0128] For example, after the first harvest in harvesting area A, a scan revealed 15 missed fruit trees. Each drone can harvest 8 trees per sortie. Therefore, area A requires 15 / 8 drone sorties, or 2 drones (rounded up). Currently, only one drone is available in area A (65% battery), and another has 30% battery (not meeting the safety margin requirement). Therefore, one drone sortie from another area is needed.
[0129] Let the first preset idle threshold be 30%, and the idle rates of adjacent regions B and C are 40% and 28% respectively. Therefore, region C cannot provide support, while region B can. There are currently N idle drones in region B, one of which, drone B1, has 82% remaining battery power, and another drone, B2, has 80% remaining battery power. The remaining battery power of the remaining drones is all <80%. Therefore, these two drones are considered candidate drones (of course, if only one drone has ≥80% remaining battery power, it is directly used as the support drone). Of the two candidate drones: The distance between B1 and a missing fruit tree in area A is 120m and the height difference is 15m; while the distance between B2 and the same missing fruit tree in area A is 180m and the height difference is 8m.
[0130] Let α=1, β=3, γ=2, then the comprehensive cost C2 of each aircraft is... B1 C2 B2 They are respectively: C2 B1 =1×120+3×15+2×(1 0.82) = 165.36; C2 B2 =1×180+3×8+2×(1-0.8)=204.40.
[0131] Therefore, B1 has a lower overall operating cost, and thus, B1 was chosen to carry out the cross-regional supplementary mining task.
[0132] Finally, a cross-regional mission instruction is sent to the selected drone, specifying the coordinates of the target fruit tree, the number of fruits, and the return route; after completing the re-harvesting mission, the drone returns to its original area.
[0133] In this embodiment, after the initial harvest, a drone swarm is used to conduct a full-coverage scan of the orchard to identify the location and number of fruits of all missed fruit trees. Then, according to the same rules as the initial harvest (such as the regional division logic based on height difference and distance constraints), the missed fruit trees are reassigned and scheduled for execution, forming a closed-loop operation process of "initial harvest - full orchard scan - missed identification - secondary scheduling - complete harvest". Ultimately, the number of missed harvests is greatly reduced without significantly increasing costs.
[0134] Example 3: like Figure 3 As shown, based on the above embodiment two, this embodiment provides a dynamic scheduling system for drones to re-harvest missed fruits during orchard picking in mountainous areas, specifically including: The data acquisition module is used to obtain the height difference between two adjacent transport vehicle stopping points and the maximum flight distance of the drone; The region division module is used to divide regions according to preset region division rules to obtain multiple harvesting areas and scattered areas between two adjacent harvesting areas. The preset region division rules are as follows: if the height difference between two adjacent stations is less than a preset height difference threshold, the region is divided with the track station as the center and a first preset radius as the radius; if the height difference between two adjacent stations is greater than or equal to the preset height difference threshold, the region is divided with the track station as the center and a second preset radius as the radius, where the second preset radius is less than the first preset radius. The scattered area allocation module is used to allocate fruit trees in the scattered area. For fruit trees near the station in the scattered area, they are assigned to the area with the smaller total number of fruit trees in two adjacent waiting areas. The fruit trees near the station are those whose distance from both adjacent stations is less than or equal to a preset distance. For fruit trees located in scattered areas on the far side of the station, they are allocated to stations with lower overall flight costs based on the comprehensive flight cost between the fruit tree and the rail station. The fruit trees on the far side of the station are those whose distances from both adjacent stations are greater than a preset distance. The comprehensive flight cost is calculated using the formula: C1 = α × L + β × ΔH; where C1 is the comprehensive flight cost, L is the distance, ΔH is the altitude difference, α and β are weighting coefficients, and β = n × α, n > 1, where n is the energy consumption ratio. The first scheduling module is used to configure a corresponding number of drones for each of the harvesting areas and control the drone swarm to perform harvesting operations. The second scheduling module is used to control the drone to scan all areas to be harvested and scattered areas, to identify any fruit trees in the areas to be harvested and scattered areas that have been missed for secondary harvesting, and to perform secondary harvesting.
[0135] In some embodiments, the second scheduling module specifically includes: The omission detection unit is configured to identify the area where each missed fruit tree is located; The first scheduling unit is configured to, if the omission identification unit identifies any omission fruit tree located within a certain harvesting area, have a drone within that harvesting area responsible for secondary harvesting. The second scheduling unit is configured to allocate any missing fruit tree to an adjacent harvesting area according to the principle of minimizing overall flight cost if the omission identification unit identifies any missing fruit tree in a scattered area. The third scheduling unit is configured to calculate the required number of drone flights for each harvesting area based on the number of missing fruit trees allocated to it, and prioritize calling drones with sufficient power to perform secondary harvesting.
[0136] In some embodiments, the system further includes: a cost calculation module, configured to sort all the missed fruit trees allocated to each site in ascending order of comprehensive flight cost to form a replenishment task queue; and determine whether the remaining power of the drone assigned to the replenishment task meets the power requirements for round trip to the corresponding missed fruit tree; if it does, trigger the second scheduling module to perform a second harvest; if it does not, suspend the replenishment task until the drone is fully charged.
[0137] In some embodiments, the cost calculation module is further configured to: when the amount of missed re-harvesting tasks in any harvesting area exceeds the total remaining drone capacity, trigger the second scheduling module to call drones with an idle rate higher than a first preset idle threshold in adjacent harvesting areas to perform secondary harvesting, and the called drone is the drone with the lowest overall flight cost to perform the harvesting task.
[0138] In some embodiments, the first scheduling module is further configured to, when there is an overlapping area between two adjacent picking areas, control the drone to prioritize picking fruit trees in the picking area and monitor the current idle rate of each picking area in real time; the current idle rate is the ratio of the number of idle drones in the picking area to the total number of drones configured in the area; and determine whether the current idle rate of the picking area is higher than a first preset idle threshold; if the idle rates of two adjacent picking areas are both greater than or equal to the first preset idle threshold, call the idle drones of the corresponding area to pick the overlapping area according to the comprehensive operating cost of the drones, and continue to monitor the current idle rate of the picking area in real time; if the current idle rate is higher than a second preset idle threshold, call the idle drones to pick fruit trees in the scattered areas included in the area; if the idle rate of any area in two adjacent picking areas is greater than or equal to the first preset idle threshold, call the idle drones of that area to pick the overlapping area, and monitor the drone idle rate of each picking area; and when the idle rate of any area is again greater than or equal to the first preset idle threshold, call the idle drones of that area to pick fruit trees in the scattered areas included in the area.
[0139] In some embodiments, the first scheduling module is further configured to determine whether the number of fruit trees in the overlapping area is greater than a first preset number threshold; if so, monitor the current idle rate of each picking area in real time as described above, and schedule based on the current idle rate (the specific scheduling process is described in S41-S44 in the above embodiments, and will not be elaborated here); otherwise, trigger the area division module to divide the overlapping area into the area with the smaller total number of fruit trees in the two adjacent picking areas.
[0140] In some embodiments, the first scheduling module is further configured to determine whether the number of fruit trees in the overlapping area is greater than a second preset number threshold when the number of fruit trees in the overlapping area is greater than a first preset number threshold, wherein the second preset number threshold is greater than the first preset number threshold; if so, the area division module is triggered to divide the overlapping area for harvesting according to the proportion of idle drones in the area to be harvested.
[0141] 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. Unless otherwise specified, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes that element.
[0142] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods of the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk) and includes several instructions to cause a computer terminal (which may be a mobile phone, computer, server, or network device, etc.) to execute the methods described in the various embodiments of the present invention.
[0143] The embodiments of the present invention have been described above with reference to the accompanying drawings. However, the present invention is not limited to the specific embodiments described above. The specific embodiments described above are merely illustrative and not restrictive. Those skilled in the art can make many other forms under the guidance of the present invention without departing from the spirit and scope of the claims. All of these forms are within the protection scope of the present invention.
Claims
1. A method for dynamic scheduling of unmanned aerial vehicles for missing picking in mountain orchard picking, characterized in that, include: S1, obtain the altitude difference between two adjacent transport vehicle stopping points and the maximum flight distance of the drone; S2, Divide the area according to the preset area division rules to obtain multiple areas to be picked as well as scattered areas between two adjacent areas to be picked; S3, allocate the fruit trees in the scattered area. For the fruit trees near the station in the scattered area, divide them into the area with the smaller total number of fruit trees in the two adjacent areas to be picked. The fruit trees near the station are those whose distance from both adjacent stations is less than or equal to a preset distance; for the fruit trees far from the station in the scattered area, they are allocated according to the comprehensive flight cost between the fruit tree and the track station, and are assigned to the station with the lower comprehensive flight cost; the fruit trees far from the station are those whose distance from both adjacent stations is greater than a preset distance. S4, Configure a corresponding number of drones for each of the areas to be harvested, and control the drone swarm to perform harvesting operations; S5, after harvesting, scan all areas to be harvested and scattered areas to identify any missed fruit trees in the areas to be harvested and scattered areas that need to be harvested a second time, and then perform a second harvest.
2. The method according to claim 1, wherein, The secondary harvesting process includes: S51, identify the area where each missed fruit tree is located; S52, if the missed fruit tree is located within a certain harvesting area, the drone within that harvesting area will be responsible for the secondary harvesting; S53, if the missed fruit trees are located in scattered areas, they will be allocated to adjacent harvesting areas according to the principle of minimizing overall flight costs; S54: Each harvesting area calculates the number of drone flights required based on the number of missed fruit trees allocated, and prioritizes calling drones with sufficient battery power to perform secondary harvesting.
3. A method for dynamic scheduling of drones to address missed harvesting during orchard picking in mountainous areas, as described in claim 2, is characterized in that... It also includes the following steps: All the missing fruit trees allocated to each station are sorted from smallest to largest according to the comprehensive flight cost to form a re-collection task queue; Determine whether the remaining battery power of the drone assigned to the re-harvesting task is sufficient for the round trip to the corresponding missed fruit tree; if it is sufficient, then perform the second harvest; if not, then suspend the re-harvesting task until the drone has finished charging.
4. A method for dynamic scheduling of drones to address missed harvesting during orchard picking in mountainous areas, as described in claim 3, is characterized in that... It also includes the following steps: When the amount of missed harvesting tasks in any harvesting area exceeds the total capacity of its remaining drones, drones with an idle rate higher than the first preset idle threshold in adjacent harvesting areas are called up for secondary harvesting. The drone called up is the one with the lowest overall operating cost for performing the harvesting task.
5. A method for dynamic scheduling of drones to address missed harvesting during orchard picking in mountainous areas, as described in claim 1, is characterized in that... The preset area division rules are as follows: if the height difference between two adjacent stations is less than a preset height difference threshold, the area is divided with the track station as the center and the first preset radius as the radius; if the height difference between two adjacent stations is greater than or equal to the preset height difference threshold, the area is divided with the track station as the center and the second preset radius as the radius, where the second preset radius is less than the first preset radius.
6. A method for dynamic scheduling of drones to address missed harvesting during orchard picking in mountainous areas, as described in claim 4, is characterized in that... The comprehensive flight cost utilization formula is as follows: C1 = α × L + β × ΔH Calculation; where C1 is the comprehensive flight cost, L is the distance between the two stations, ΔH is the altitude difference between the two stations, α and β are weighting coefficients, and β = n × α, n > 1, n is the energy consumption ratio; and / or, The formula for comprehensive activity cost utilization is as follows: C2=α×L d +β×H d +γ×(1 SOC) calculation, where C2 is the comprehensive activity cost, L d H represents the horizontal straight-line distance from the current location of the corresponding drone to the missed fruit tree; d α represents the absolute value of the height difference between the current position of the corresponding drone and the missed fruit tree; SOC represents the remaining battery percentage of the corresponding idle drone; α, β, and γ are weighting coefficients, and β = n × α, n > 1, where n is the energy consumption ratio.
7. A dynamic scheduling system for unmanned aerial vehicles (UAVs) to address missed harvesting during orchard picking in mountainous areas, characterized in that, include: The data acquisition module is configured to acquire the height difference between two adjacent transport vehicle stopping points and the maximum flight distance of the drone. The area division module is configured to divide areas according to preset area division rules, resulting in multiple areas to be harvested and scattered areas between two adjacent areas to be harvested. The scattered area allocation module is configured to allocate fruit trees in the scattered area. For fruit trees near the station in the scattered area, they are assigned to the area with the smaller total number of fruit trees in two adjacent waiting-to-harvest areas. The fruit trees near the station are those whose distance from both adjacent stations is less than or equal to a preset distance; for the fruit trees far from the station in the scattered area, they are allocated according to the comprehensive flight cost between the fruit tree and the track station, and are assigned to the station with the lower comprehensive flight cost; the fruit trees far from the station are those whose distance from both adjacent stations is greater than a preset distance. The first scheduling module is configured to allocate a corresponding number of drones to each of the harvesting areas and control the drone swarm to perform harvesting operations. The second scheduling module is configured to control the drone to scan all areas to be harvested and scattered areas, identify any fruit trees in the areas to be harvested and scattered areas that have been missed for secondary harvesting, and then perform secondary harvesting.
8. A dynamic scheduling system for unmanned aerial vehicles (UAVs) to address missed harvesting during orchard picking in mountainous areas, as described in claim 7, is characterized in that... The second scheduling module specifically includes: The omission detection unit is configured to identify the area where each missed fruit tree is located; The first scheduling unit is configured to, if the omission identification unit identifies any omission fruit tree located within a certain harvesting area, have a drone within that harvesting area responsible for secondary harvesting. The second scheduling unit is configured to allocate any missing fruit tree to an adjacent harvesting area according to the principle of minimizing overall flight cost if the omission identification unit identifies any missing fruit tree in a scattered area. The third scheduling unit is configured to calculate the required number of drone flights for each harvesting area based on the number of missing fruit trees allocated to it, and prioritize calling drones with sufficient power to perform secondary harvesting.
9. A dynamic scheduling system for unmanned aerial vehicles (UAVs) to address missed harvesting during orchard picking in mountainous areas, as described in claim 7, is characterized in that... Also includes: The cost calculation module is configured to sort all the missed fruit trees allocated to each site in ascending order of comprehensive flight cost, forming a replenishment task queue. It then determines whether the remaining battery power of the drone assigned to the re-harvesting task is sufficient for the round trip to the corresponding missed fruit tree; if it is sufficient, the second scheduling module is triggered to perform a second harvest; if it is insufficient, the re-harvesting task is temporarily suspended until the drone is fully charged before execution.
10. A dynamic scheduling system for unmanned aerial vehicles (UAVs) to address missed harvesting during orchard picking in mountainous areas, as described in claim 9, is characterized in that... The cost calculation module is also configured to trigger the second calling module to call drones with an idle rate higher than a first preset idle threshold in adjacent areas to be picked when the amount of missed re-picking tasks in any area exceeds the total capacity of its remaining drones. The called drone is the one with the lowest overall flight cost to perform the picking task.
Citation Information
Patent Citations
A cleaning method for photovoltaic panels in a mountain photovoltaic base station based on a drone swarm
CN119813941B