Distributed new energy agricultural machinery cluster cooperative operation system suitable for weak network area
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-04-22
- Publication Date
- 2026-08-11
AI Technical Summary
[0005]本发明提供适用于弱网络区域的分布式新能源农机集群协同作业系统,用于至少解决如何在通信不稳定条件下实现新能源农机集群持续协同作业的问题
通过节点状态采集、自组网拓扑建立和节点权重计算,实现了在缺乏稳定公网支撑条件下的主节点动态选举作用,使集群具备分布式协同基础;
Smart Images

Figure CN122554471A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of agricultural machinery collaborative control technology, specifically to a distributed new energy agricultural machinery cluster collaborative operation system suitable for areas with weak network coverage. Background Technology
[0002] With the continuous development of agricultural mechanization, intelligentization, and new energy power technologies, the coordinated operation of multiple agricultural machines to complete tasks such as sowing, fertilizing, and monitoring has become an important technological direction for improving operational efficiency per unit area, reducing reliance on manual labor, and improving energy utilization. Compared with single-machine operation, cluster collaboration can shorten the operation cycle, reduce energy consumption caused by repeated travel, and provide a more stable data foundation for precision agricultural management.
[0003] Most existing multi-machine collaborative solutions rely on a central control unit or public communication network to complete task allocation, path planning, and operation monitoring through centralized scheduling. When the communication environment is good, such solutions can maintain basic operation processes; however, in actual deployment, farmland areas often have large terrain undulations, discontinuous communication coverage, scattered node distribution, and inconvenient energy supply, which can easily lead to instability of central scheduling, node disconnection, path conflicts, and task interruption.
[0004] Meanwhile, existing solutions generally employ fixed path planning or static scheduling, which are insufficient in responding to changes in node power, fluctuations in computing resources, communication link attenuation, and local conflicts. If some nodes experience low power, task delays, or link anomalies, unfinished tasks cannot be transferred in a timely manner, and the global path cannot be reconstructed promptly. After communication is restored, the job states formed by different nodes during the disconnection period may result in duplicated jobs, inconsistent states, and mismatched scheduling results, affecting overall continuity and security. Summary of the Invention
[0005] This invention provides a distributed new energy agricultural machinery cluster collaborative operation system suitable for weak network areas, which at least solves the problem of how to achieve continuous collaborative operation of new energy agricultural machinery clusters under unstable communication conditions.
[0006] This invention provides a distributed new energy agricultural machinery cluster collaborative operation system suitable for areas with weak network coverage. The system includes: The network master selection module is used to collect node status data of each new energy agricultural machine and establish a self-organizing network communication topology, and determine the master node and slave node according to the power status and computing resource parameters. The task allocation module is used to construct a global task graph based on the work area boundary, terrain data, work task distribution and node status data, and divide sub-tasks and allocate them to slave nodes; The path coordination module is used to generate and transmit local job paths based on subtasks and the status of neighboring nodes. The conflict reconstruction module is used to identify path conflicts based on local job paths and node status data, construct a conflict matrix, and reconstruct and distribute conflict subtasks. The continuation recovery module is used to reallocate unfinished subtasks and update the conflict matrix when the node's power is detected to be below the low power threshold or the task execution timeout is detected; to continue the operation according to the locally cached subtasks when communication interruption is detected; to perform state synchronization when communication is detected to be restored; and to perform master node re-election when master node failure is detected.
[0007] In one possible implementation, node status data includes collecting node identifiers, spatial coordinates, task status, remaining battery power, processor utilization, available memory capacity, communication signal strength, and timestamps; establishing the ad hoc network communication topology includes filtering neighboring nodes based on communication signal strength and establishing the ad hoc network communication topology based on the filtered neighboring nodes.
[0008] In one possible implementation, determining the master node and slave node based on power status and computing resource parameters includes: determining power weight based on remaining power, determining computing resource weight based on processor utilization and available memory capacity, calculating node weight based on power weight and computing resource weight, identifying new energy agricultural machinery whose node weight fluctuation does not exceed the node weight fluctuation threshold as candidate nodes, and electing the new energy agricultural machinery with the largest node weight from the candidate nodes as the master node.
[0009] In one possible implementation, constructing a global task graph includes establishing collaborative state information within the global task graph. This collaborative state information includes node online status, remaining energy level, task execution progress, and communication link quality level.
[0010] In one possible implementation, assigning subtasks to slave nodes includes: grouping slave nodes according to collaborative status information; dividing the corresponding work areas of slave nodes in the same group that have the same online status, the same or adjacent remaining energy levels, and a communication link quality level not lower than the link quality level threshold into the same subtask; and assigning the same subtask to the corresponding slave node; when a node is detected to be offline, the communication link quality level is lower than the link quality level threshold, the task execution times out, or the node's battery level is lower than the low battery threshold, the same subtask is identified as a subtask to be reassigned.
[0011] In one possible implementation, generating and transmitting the local job path includes: determining the starting job node and the target job node based on the subtask, constructing a job grid graph, obtaining the real-time position, task load, and node weight of the neighboring nodes, and generating the local job path; when the position change of the neighboring node exceeds the position change threshold or the task load change exceeds the load change threshold, regenerating the affected path segment and updating the local job path.
[0012] In one possible implementation, identifying path conflicts and constructing a conflict matrix includes: sorting path nodes according to the job sequence corresponding to the local job path, identifying node pairs with a spatial distance less than the safe distance threshold and job resource competition within the same job time period as potential conflict node pairs, and constructing a conflict matrix based on the potential conflict node pairs.
[0013] In one possible implementation, path reconstruction for conflicting subtasks includes: determining the conflict weight of potential conflicting node pairs based on the distance between nodes, the difference in task load, the relative speed of nodes in potential conflicting node pairs, and the difference in task priority; identifying potential conflicting node pairs with conflict weights greater than the conflict weight threshold as actual conflicting node pairs; and reconstructing the paths for the conflicting subtasks corresponding to the actual conflicting node pairs and issuing the reconstructed paths.
[0014] In one possible implementation, the reallocation of unfinished subtasks and updating of the conflict matrix includes: reallocating unfinished subtasks among neighboring nodes based on the node power status, communication link quality, task priority, and spatial proximity of each slave node, and updating the conflict matrix.
[0015] In one possible implementation, execution status synchronization includes: performing consistency verification on the task status and local job path returned by each slave node, and synchronizing the subtask allocation results according to the verification results; execution master node re-election includes: when no heartbeat information is received from the master node for multiple consecutive heartbeat cycles, the master node is determined to be invalid, and a new master node is elected based on the node weight and the ad hoc network communication topology is rebuilt.
[0016] Compared with the prior art, the advantages and beneficial effects of the present invention are as follows: By collecting node status, establishing self-organizing network topology, and calculating node weights, the dynamic election of master nodes is realized under the condition of lacking stable public network support, enabling the cluster to have a distributed collaborative foundation. By constructing a global task graph and introducing collaborative state information, the subtasks are matched and allocated according to node status, energy capacity, and link conditions, thus reducing the problem of task allocation imbalance. By generating local operation paths, sensing neighborhood states, and iteratively updating paths, the system enables local corrections to be made as the neighborhood changes, thus reducing the rigidity issues caused by fixed path strategies. By identifying potential conflicts, constructing conflict matrices, and reconstructing conflict paths, the system enables the early detection and re-avoidance of spatiotemporal conflicts during multi-machine operations, reducing path intersections and resource competition. By reassigning unfinished subtasks, implementing autonomous disconnection, synchronizing state after communication recovery, and reselecting and rebuilding the topology after master node failure, the system can maintain job continuity even under conditions of node anomalies, link interruptions, and master node failures. At the same time, it ensures the global task state reconvergence, thereby enhancing the system's robustness and engineering applicability. Attached Figure Description
[0017] Figure 1 This is a block diagram of the module composition of the system of the present invention; Figure 2 This is a schematic diagram of the execution flow of the system of the present invention. Detailed Implementation
[0018] Hereinafter, embodiments of the present invention will be described with reference to the accompanying drawings. However, it should be understood that these descriptions are exemplary only and are not intended to limit the scope of the invention. In the following detailed description, numerous specific details are set forth to provide a thorough understanding of the embodiments of the invention for ease of explanation. However, it will be apparent that one or more embodiments may be practiced without these specific details. Furthermore, descriptions of well-known structures and techniques are omitted in the following description to avoid unnecessarily obscuring the concept of the invention.
[0019] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to limit the invention. The terms “comprising,” “including,” etc., as used herein indicate the presence of the stated features, steps, operations, and / or components, but do not exclude the presence or addition of one or more other features, steps, operations, or components.
[0020] All terms used herein (including technical and scientific terms) have the meanings commonly understood by those skilled in the art, unless otherwise defined. It should be noted that the terms used herein are to be interpreted in a manner consistent with the context of this specification, and not in an idealized or overly rigid way.
[0021] In agricultural operations, weak network areas typically refer to regions with discontinuous wireless communication coverage, fluctuating link quality, limited bandwidth, or intermittent outages. These areas are not necessarily completely without network access; more commonly, network availability dynamically changes with terrain obstruction, changes in work location, vegetation distribution, relative distances between devices, and weather conditions, manifesting as increased communication latency, packet loss, frequent connection switching, or temporary disconnection of local nodes. For collaborative operation systems requiring real-time multi-machine coordination, weak network areas are not merely a communication problem but further impact the continuity of task scheduling, the timeliness of path coordination, and the consistency of state synchronization. Therefore, when constructing collaborative operation systems for such areas, the system architecture needs to possess local awareness, neighborhood interconnection, distributed decision-making, abnormal continuation, and recovery convergence capabilities, rather than relying solely on a fixed central node or a continuously stable public network connection. Based on this, this invention proposes a distributed new energy agricultural machinery cluster collaborative operation system suitable for weak network areas. Through mechanisms such as network leader selection, task allocation, path coordination, conflict reconstruction, and continuation recovery, it enables continuous collaborative operation of new energy agricultural machinery clusters under fluctuating communication conditions.
[0022] like Figure 1 As shown, a distributed new energy agricultural machinery cluster collaborative operation system suitable for areas with weak network coverage includes: The network master selection module is used to collect node status data of each new energy agricultural machine and establish a self-organizing network communication topology, and determine the master node and slave node according to the power status and computing resource parameters. In one embodiment, after the agricultural machinery cluster enters the collaborative operation preparation phase, each new energy agricultural machine first completes node status data collection locally and exchanges node status data with neighboring agricultural machines via short-range wireless communication to form an ad hoc network communication topology within the current operating area. The node status data is written into a node status data structure, which includes at least node identifier, spatial coordinates, task status, power status, and computing resource parameters. After each new energy agricultural machine completes multiple broadcast reception cycles, it generates node weights based on power status and computing resource parameters, and performs stability determination on changes in node weights. New energy agricultural machines that meet the node weight fluctuation constraints enter the candidate node set, with the candidate node with the highest node weight being determined as the master node, and the remaining new energy agricultural machines being determined as slave nodes. The master node is used for subsequent task modeling, task allocation, and conflict coordination handling, while the slave nodes are used for receiving tasks, path generation, and status feedback.
[0023] Node status data includes node identifier, spatial coordinates, task status, remaining power, processor utilization, available memory capacity, communication signal strength, and timestamp; establishing the ad hoc network communication topology includes filtering neighboring nodes based on communication signal strength and establishing the ad hoc network communication topology based on the filtered neighboring nodes.
[0024] In one embodiment, the node status data acquisition and self-organizing network communication topology establishment, based on the upper-level content, adds a node status data structure and neighbor node filtering rules to limit the input sources, data boundaries, and link establishment conditions during the network leader selection phase. Each new energy agricultural machine is equipped with an onboard multi-source sensing unit and a short-range wireless communication device. The onboard multi-source sensing unit is used to read basic operating data from the positioning module, battery management unit, work controller, and onboard computing board. The node identifier uses a unique serial number for each machine to distinguish different new energy agricultural machines. The spatial coordinates use the current operating position coordinates to represent the actual location of the new energy agricultural machine in the plot. The task status uses discrete status codes to record operating states such as idle, executing, waiting for takeover, and fault exit, which are used to identify schedulability during subsequent task allocation.
[0025] The remaining battery power is output in real time by the battery management unit, reflecting the remaining energy available for continued operation. Processor utilization and available memory capacity are periodically reported by the onboard computing board to characterize the device's ability to perform edge computing tasks. Communication signal strength is synchronously measured by the short-range wireless communication device when receiving neighboring broadcast data frames; the timestamp is used to identify the generation time of this data set, preventing old states from being mistakenly used in the current master election process.
[0026] After the node status data is encapsulated, each new energy agricultural machine broadcasts node status data frames according to a fixed sampling period and writes the received neighbor broadcast data into its local neighbor node cache. Neighbor node selection is based on a communication signal strength threshold. This threshold can be preset based on farmland size, operating speed, and the stable reception range of the wireless communication device, or it can be determined during on-site debugging based on packet loss rate and reception strength distribution over several consecutive periods. Neighbor nodes with communication signal strength higher than the threshold are retained as usable neighbors, while those with communication signal strength lower than the threshold are only temporarily recorded and do not participate in the current topology establishment.
[0027] After the screening is completed, each new energy agricultural machine generates a local adjacency table based on the set of available neighboring nodes, and forms an ad hoc network communication topology based on the adjacency table. The ad hoc network communication topology records at least the reachability relationship between nodes, the most recent effective communication time, and the link quality status, for subsequent master node confirmation and slave node access.
[0028] Determining master and slave nodes based on power status and computing resource parameters includes: determining power weight based on remaining power, determining computing resource weight based on processor utilization and available memory capacity, calculating node weight based on power weight and computing resource weight, identifying new energy agricultural machinery whose node weight fluctuation does not exceed the node weight fluctuation threshold as candidate nodes, and electing the new energy agricultural machinery with the largest node weight from the candidate nodes as the master node.
[0029] In one embodiment, the determination of master and slave nodes is based on the higher-level content, with the addition of node weight generation rules, node weight fluctuation judgment rules, and master node confirmation rules, which are used to limit the calculation basis and stability boundaries of the master selection process. After completing multiple broadcast reception cycles, each new energy agricultural machine reads the latest node status data of all new energy agricultural machines from its local cache.
[0030] Power status is represented by remaining power, and the power weight is determined based on the distribution range of remaining power within the current cluster; the higher the remaining power, the greater the power weight. Computational resource parameters are represented by processor utilization and available memory capacity. Processor utilization reflects the current workload level; a lower utilization rate makes it more suitable for handling master node scheduling tasks. Available memory capacity reflects the ability to continue loading task and path data; a larger available memory capacity makes it more suitable for handling master node scheduling tasks. The computational resource weight is determined based on the combination of processor utilization and available memory capacity, with processor utilization contributing negatively and available memory contributing positively. Node weights are generated by weighting the power weight and computational resource weight. The weight coefficients are related to the operational scenario. In hilly areas with long continuous operation times and inconvenient recharging, the proportion of power weight can be appropriately increased; in areas with frequent task scheduling and dense path updates, the proportion of computational resource weight can be appropriately increased.
[0031] After node weights are generated, the system records the changes in node weights over multiple consecutive periods according to a time window, and compares the magnitude of these changes with a node weight fluctuation threshold. The node weight fluctuation threshold is used to filter out false master selections caused by momentary jitter. Its setting can be based on an empirical upper limit of the maximum node weight change over several consecutive sampling periods, or the maximum fluctuation range allowed to maintain topology stability during on-site debugging. New energy agricultural machinery whose node weight fluctuations do not exceed the node weight fluctuation threshold enters the candidate node set. The new energy agricultural machinery in the candidate node set is sorted from highest to lowest node weight. The new energy agricultural machinery ranked first generates a master node declaration data frame and broadcasts it to the entire network. The remaining new energy agricultural machinery receiving the master node declaration data frame performs a consistency check between the node weights cached locally and those in the declaration data frame. If the consistency check passes, it switches to slave node status and establishes a communication link to the master node; if the consistency check fails, it remains in a waiting state until the next master selection period to participate in the master selection again.
[0032] After the master node enters the running state, it continues to broadcast the master node's survival information at a fixed heartbeat cycle. The slave nodes update the master node's survival record according to the heartbeat time, providing a basis for subsequent master node failure and re-election.
[0033] The task allocation module is used to construct a global task graph based on the work area boundary, terrain data, work task distribution and node status data, and divide sub-tasks and allocate them to slave nodes; After the agricultural machinery cluster determines its master node, the master node reads the current work area boundary, terrain data, task distribution, and node status data returned by each slave node to construct a global task graph for unified scheduling. The global task graph uses the waiting area, already-operated area, restricted area, and transition area within the work area as basic graphic elements, and writes the operating status of each slave node into the corresponding graphic element or node attribute. The master node identifies continuously executable work areas in the global task graph and, combined with the current available status of each slave node, divides these areas into multiple sub-tasks. Each sub-task corresponds to at least one waiting area, a set of state-compatible slave nodes, and a subsequently generated local work path. After the sub-tasks are divided, the master node issues task allocation information according to the matching results between sub-tasks and slave nodes, enabling each slave node to enter the corresponding work area to perform collaborative work. The task allocation results are continuously retained on the master node side and serve as the data basis for subsequent path coordination, conflict reconstruction, and work resumption.
[0034] Constructing a global task graph involves establishing collaborative status information within the graph, including node online status, remaining energy level, task execution progress, and communication link quality level.
[0035] In one embodiment, the process of constructing the global task graph adds a method for organizing and writing collaborative state information to define the state expression boundaries of the task partitioning stage. This ensures that when the master node performs task partitioning, it considers not only the spatial distribution of the plots themselves but also whether the slave nodes are online, whether the remaining energy is sufficient to support the current operation, whether the task is in a continuous state, and whether the communication link is stable. In specific implementation, the master node generates a regional base map based on the boundary of the operation area. The regional base map can be constructed directly according to the plot outline or discretized according to a preset grid size. Topographic data is used to mark slope change areas, obstacle distribution areas, and access constraint areas to prevent subsequent task graphs from mistakenly classifying unsafely passable areas as executable areas. The distribution of operation tasks is used to characterize the deployment of different types of operations such as sowing, fertilizing, and monitoring in each area. The master node marks the task units to be performed on the global task graph accordingly.
[0036] After node status data enters the task allocation module, it is no longer directly used for partitioning as the original sampled items, but is instead rewritten as collaborative status information. Node online status characterizes whether a node can currently receive scheduling commands; online status can be categorized as idle online, executing online, offline awaiting recovery, and fault exit. Remaining energy level characterizes continuous operation capability, typically graded according to the proportion of remaining power to rated power, such as high, medium, and low levels, or further refined into more levels based on the operational scenario.
[0037] Task execution progress reflects the completion rate of currently assigned tasks; the progress value can be determined by the proportion of completed work area to the total task area. Communication link quality level characterizes the stability of communication between the master and slave nodes, and can be determined based on a combination of reception success rate, latency fluctuations, and signal strength over several consecutive communication cycles. After generating collaborative state information, the master node writes this information into the corresponding node attributes of the global task graph, enabling the global task graph to simultaneously possess spatial distribution information and scheduling state information. With this processing, subsequent subtask partitioning is no longer a simple plot-cutting process, but rather an executable task organization process oriented towards the current cluster state.
[0038] The process of assigning subtasks to slave nodes includes: grouping slave nodes according to their collaborative status information; dividing the corresponding work areas of slave nodes in the same group that have the same online status, the same or adjacent remaining energy levels, and a communication link quality level not lower than the link quality level threshold into the same subtask; and assigning the same subtask to the corresponding slave node; when a node is detected to be offline, the communication link quality level is lower than the link quality level threshold, the task execution times out, or the node's battery level is lower than the low battery threshold, the same subtask is identified as a subtask to be reassigned.
[0039] In one embodiment, the process of dividing subtasks and assigning them to slave nodes includes slave node grouping rules, subtask generation rules, and subtask reassignment marking rules. These rules are used to define the actual execution boundaries of task allocation and prevent slave nodes with incompatible states or unstable links from being assigned to the same job task. Specifically, the master node first reads the collaborative state information in the global task graph and performs grouping processing on all slave nodes. During grouping, the node's online status is used as the basic constraint; only slave nodes in a schedulable state are included in the current round of grouping. Slave nodes in an offline state awaiting recovery or that have failed and exited a state do not participate in the current round of task assignment.
[0040] The remaining energy level is used to limit the continuous operation capability after grouping. Slave nodes with the same or adjacent remaining energy levels can be grouped together to avoid an imbalance in the same subtask where some slave nodes lose power quickly while others continue to operate for a long time. The communication link quality level is used to limit the scheduling reachability after task allocation. The communication link quality level threshold can be determined based on the operation area, wireless link stability requirements, and status synchronization cycle. Slave nodes with a communication link quality level lower than the link quality level threshold will not enter the current group.
[0041] After grouping, the master node, based on the current location of each group's slave nodes and the spatial distribution of the work area, divides adjacent work areas with the same work type and similar terrain constraints into the same subtask, and assigns the subtask to the corresponding slave node within the corresponding group. During assignment, subtasks can be preferentially assigned to slave nodes with lower task execution progress and higher remaining energy levels to maintain overall cluster work balance.
[0042] After task allocation, the master node continuously receives status feedback from slave nodes. If a node is detected to be offline, the communication link quality level is below the link quality level threshold, the task execution times out, or the node's battery level is below the low battery threshold, the task allocation module marks the previously allocated subtask as a subtask awaiting reallocation. The low battery threshold is determined based on the minimum remaining battery power required for the new energy agricultural machinery to complete its exit from the current work area, relocation, or safe shutdown. The task execution timeout is determined based on the historical average operation time and allowable fluctuation range of similar tasks under similar terrain conditions. After a subtask awaiting reallocation is marked, the original allocation relationship is not directly deleted. Instead, the completed portion of the work is retained, and only the unfinished areas are resubmitted to the subsequent task reallocation process. This ensures the traceability of task map updates and guarantees that subsequent path coordination and conflict refactoring can continue to use a consistent data foundation.
[0043] The path coordination module is used to generate and transmit local job paths based on subtasks and the status of neighboring nodes. After receiving the assigned subtask, each slave node reads the corresponding job area locally and generates a local job path based on the current status of neighboring nodes. The path coordination module establishes a job grid locally, determines the starting and target job nodes, writes the real-time positions, task loads, and node weights of neighboring nodes into the neighboring state table, and then generates a local job path according to the depth-first search rule. After the local job path is generated, the slave node sends the local job path back to the master node for subsequent conflict detection and path reconstruction. During path execution, the path coordination module continuously receives information on changes in the status of neighboring nodes. When the position change of a neighboring node exceeds the position change threshold or the task load change exceeds the load change threshold, a local re-search is performed on the affected path segment, the local job path is updated, and then sent back again.
[0044] The process of generating and transmitting local job paths includes: determining the starting job node and the target job node based on the subtasks, constructing a job grid graph, obtaining the real-time location, task load, and node weight of neighboring nodes, and generating local job paths; when the location change of a neighboring node exceeds the location change threshold or the task load change exceeds the load change threshold, regenerating the affected path segments and updating the local job paths.
[0045] In one embodiment, the process of generating and transmitting local job paths includes path search rules, path expansion constraints, collaborative weight calculation rules, and path update rules. These rules define how local job paths are formed, how they are adjusted based on changes in the neighborhood state, and how the update results are fed back to the master node. Each slave node, upon receiving a subtask, first reads the boundary range of its currently responsible job area from the subtask. Combining this with the distribution of unfinished units within the subtask, it determines the starting and target job nodes. The starting job node can be the unfinished unit closest to the current slave node's location, and the target job node can be the last unfinished unit within the current subtask's coverage area or a predetermined exit node. The job grid is constructed based on the subtask's coverage area, discretizing the workable area into a set of nodes and a set of edges. Each node records its node number, spatial coordinates, and access identifier, and each edge records the connectivity between adjacent nodes. The neighborhood node state is obtained through short-range wireless communication and includes at least the real-time location, task load, and node weight of the neighborhood nodes. The task load characterizes the amount of task currently undertaken by the neighborhood node, and the node weight characterizes the comprehensive ability of the neighborhood node to participate in collaborative work. During path search, the starting job node is taken as the root node, and the node access function is defined as follows: in, For node access function values, For the current job grid node, This is a node access identifier. This formula is used to determine whether the current node has been visited. When this condition is met, it indicates that the current node has not yet entered the current search path and can be pushed onto the path stack for further expansion. The path expansion condition is defined as follows: in, Adjacent nodes Extended constraints, Adjacent nodes With the current node The distance between them To allow the maximum adjacency distance for expansion, Adjacent nodes Corresponding task load, This represents the upper limit threshold for task load. This formula limits the expansion of local task paths to adjacent nodes where the spatial distance meets the constraint and the task load does not exceed the limit. When the expansion condition is met, the adjacent node is added to the path sequence. After backtracking, the complete path sequence is obtained. in, This is a local job path sequence. This is the starting node for the operation. The target task node is defined as [target node], and the intermediate nodes are the task grid nodes traversed by the path. After the local task path is generated, the path coordination module calculates the coordination weights based on the node weights and task load. The coordination weights are defined as follows: in, For nodes With nodes The collaborative weights between them and They are nodes and nodes The node weights, and They are nodes and nodes The workload, and The preset weighting coefficients are used to quantify the degree of collaboration between adjacent nodes. Higher node weights and smaller task load differences result in greater collaboration weights. The position change threshold determines whether changes in the position of neighboring nodes have affected the current path segment, while the task load change threshold determines whether changes in the load of neighboring nodes have affected the collaboration relationship. Both can be set based on plot size, operation speed, communication cycle, and historical fluctuation amplitude. When either threshold is triggered, the path collaboration module performs a local re-search on the affected path segment and updates the local operation path according to the path cost function, defined as: in, The path cost of the local operation path. For the first Segment path length, For the first The segment path corresponds to the coordination weight between nodes. This formula is used to comprehensively measure the path length and the degree of neighborhood coordination. The path coordination module completes the local update by selecting candidate paths with lower path costs. The updated local operation path is written back to the local path table and sent back to the master node, enabling the master node to continue performing conflict detection and subsequent coordination processing under a unified time reference.
[0046] The conflict reconstruction module is used to identify path conflicts based on local job paths and node status data, construct a conflict matrix, and reconstruct and distribute conflict subtasks. The mobile edge host receives local job paths and node status data from each slave node in each scheduling cycle, and constructs global path data accordingly. The global path data records at least the path number, path node sequence, job time stamp, and job type stamp. The conflict reconstruction module sorts the path nodes temporally based on the global path data, identifies node pairs that may be spatially close or compete for job resources within the same job time period, and generates a conflict matrix. After the conflict matrix is formed, the conflict reconstruction module maps the conflict matrix to the current job area grid, performs path reconstruction on the conflicting subtasks, obtains the updated reconstructed path, and distributes the reconstructed path to the corresponding slave node. After receiving the reconstructed path, the slave node continues to execute the current subtask according to the updated node sequence, ensuring that the local job path is consistent with the global scheduling result.
[0047] Identifying path conflicts and constructing a conflict matrix includes: sorting path nodes according to the job sequence corresponding to the local job path; identifying node pairs with a spatial distance of less than the safe distance threshold and competition for job resources within the same job time period as potential conflict node pairs; and constructing a conflict matrix based on the potential conflict node pairs.
[0048] In one embodiment, the process of identifying path conflicts and constructing a conflict matrix is enhanced with rules for screening potential conflict node pairs, initializing conflict weights, and iteratively updating conflict weights. These rules define how the conflict matrix is generated from local operation paths and node status data. After receiving the local operation paths from each slave node, the mobile edge host sorts all path nodes by operation time marker and compares path nodes within the same operation time period as nodes in the same batch. A safe distance threshold is used to limit the risk of two nodes being too close together within the same time period. The safe distance threshold can be determined based on the vehicle width of the new energy agricultural machinery, the deployment width of the implements, the turning error of the plot, and the positioning error. If the actual distance between two nodes is less than the safe distance threshold, and the two nodes have overlapping operation zones, occupy the same passage area, or occupy the same resource location, then the node pair is identified as a potential conflict node pair. After the potential conflict node pairs are identified, the conflict reconstruction module assigns an initial conflict weight to each pair of potential conflict nodes. The initial conflict weight is defined as: in, For nodes With nodes The conflict weights at the initial moment, For nodes With nodes Spatial distance between them To prevent constants with a denominator of zero, For nodes With nodes Task load differences This is the task load adjustment coefficient. This formula maps spatial proximity and task load differences to the initial conflict level; the smaller the node distance and the greater the task load difference, the higher the corresponding initial conflict weight. After initial assignment, the conflict reconstruction module updates the conflict weights according to the iteration cycle, with the update relationship as follows: in, For the first Conflict weights during round iterations For the first The conflict weights after rounds of iteration. For the first The conflict correction factor in round iteration. The conflict correction factor is defined as: in, For the first Distance between nodes during round iteration The initial distance, For the first The change in relative velocity between two nodes during round iteration. To preset the maximum relative speed, This represents the priority difference between the tasks corresponding to the two nodes. To preset the maximum priority difference, , and These are the weighting coefficients for distance, velocity, and priority, respectively. This formula is used to adjust the conflict severity based on changes in space, velocity, and scheduling priority during the iteration process. After multiple iterations, the conflict reconfiguration module will satisfy... Potential conflicting node pairs are identified as actual conflicting node pairs, where... The conflict weight threshold is set based on the permissible level of path interference and operational safety requirements. Actual conflict node pairs are mapped to the global conflict matrix, with the following mapping relationship: in, The first in the global conflict matrix Line number The matrix elements of the column are used to represent the nodes. With nodes The final degree of conflict. After completing the matrix mapping, the conflict matrix can be used as direct input for subsequent conflict subtask path reconstruction.
[0049] Path reconstruction for conflicting subtasks includes: determining the conflict weight of potential conflicting node pairs based on the distance between nodes, differences in task load, relative speed of nodes in potential conflicting node pairs, and differences in task priority; identifying potential conflicting node pairs with conflict weights greater than the conflict weight threshold as actual conflicting node pairs; and reconstructing the paths for the conflicting subtasks corresponding to the actual conflicting node pairs and issuing the reconstructed paths.
[0050] In one embodiment, the process of reconstructing and distributing reconstructed paths for conflicting subtasks incorporates path cost construction rules, path execution time update rules, and collaborative weight adjustment rules. These rules define how new executable paths are formed after the actual conflicting node pairs are identified, and how the update results are fed back to the corresponding slave nodes. After identifying the actual conflicting node pairs, the conflict reconstruction module first reads the sequence of local job path nodes currently held by the corresponding slave nodes, and then maps the global conflict matrix onto the job area grid diagram. The node cost in the job area grid diagram is defined as: in, For nodes The total cost, For nodes Basic passage cost under conflict-free conditions For nodes The additional costs introduced by the conflict. The additional costs of conflict are defined as follows: in, As a factor to amplify the cost of conflict, This represents the matrix element corresponding to the conflicting node pair in the global conflict matrix. This formula directly maps the conflict level in the conflict matrix to the path search cost, causing conflict areas to automatically appear as high-cost areas during reconstruction. Based on the node cost distribution, the conflict reconstruction module performs path search in the work area mesh map, and the total path cost is defined as: in, Candidate paths The total cost, The first candidate path The node cost of each path node. This represents the number of nodes included in the candidate path. The conflict reconstruction module selects the candidate path with the smaller total cost as the new reconstruction path. After the reconstruction path is generated, the distance between adjacent nodes needs to be constrained and verified to meet the following requirements: in, To reconstruct the distance between two adjacent path nodes in the path, This is the safe distance threshold. This check is used to avoid situations where the overall cost of reconstructing the path is low, but there is still a risk of localized overly close passage. After the node spacing check passes, the conflict reconstruction module recalculates the path execution time based on the path length and node speed. The calculation relationship is as follows: in, The estimated execution time for the refactored path, For the first Segment path length, For the first The passage speed corresponding to the segment path. This formula is used to update the path execution time stamp, providing a time basis for subsequent timing conflict detection. After the time update is completed, the conflict reconstruction module encapsulates the reconstructed path and corresponding task identifier into a scheduling data frame and distributes it to the corresponding slave node through the ad hoc network communication topology. After the reconstructed path is distributed, the cooperative weights in the neighborhood communication are also synchronized and adjusted. Nodes that have clashed are listed as follows: Update nodes that have not experienced conflicts and have high collaboration efficiency by: An update will be performed. Among other things, For the updated collaborative weights, The collaborative weights before the update. For the coordinated attenuation coefficient, This represents the collaboration enhancement coefficient. The two equations above are used to reduce the collaboration level of high-risk adjacency relationships and enhance the collaboration level of low-risk, highly cooperative adjacency relationships after path reconstruction, so that subsequent path collaboration stages can continue to generate more stable local operation paths based on new neighborhood relationships.
[0051] The continuation recovery module is used to reallocate unfinished subtasks and update the conflict matrix when the node's power is detected to be below the low power threshold or the task execution timeout is detected; to continue the operation according to the locally cached subtasks when communication interruption is detected; to perform state synchronization when communication is detected to be restored; and to perform master node re-election when master node failure is detected.
[0052] During the job execution phase, each slave node continuously reports its battery status, task execution progress, communication link status, and local job path changes. The continuation and recovery module performs abnormal continuation processing based on the received status change results. When a node's battery level falls below the low battery threshold or the task execution time exceeds the task execution timeout limit, the continuation and recovery module identifies incomplete job areas from the current subtasks, reassigns the incomplete subtasks to neighboring nodes, and synchronously updates the conflict matrix. When the communication link is interrupted, the slave node calls the locally cached subtasks and local job paths to continue executing the current job. After communication is restored, the continuation and recovery module performs consistency checks on the task status and local job paths returned by each slave node and synchronizes the subtask allocation results according to the check results. If no heartbeat information is received from the master node for several consecutive heartbeat cycles, the continuation and recovery module determines that the master node has failed and re-elects a master node and rebuilds the ad hoc network communication topology based on node weights.
[0053] The process of reallocating unfinished subtasks and updating the conflict matrix includes: reallocating unfinished subtasks among neighboring nodes based on the node power status, communication link quality, task priority, and spatial proximity of each slave node, and updating the conflict matrix.
[0054] In one embodiment, the process of reallocating unfinished subtasks and updating the conflict matrix incorporates anomaly triggering boundaries, neighborhood takeover rules, and reallocation result write-back rules. These rules define how unfinished subtasks migrate when a slave node experiences low battery or task execution anomalies, and how global scheduling consistency is maintained after migration. The continuation recovery module reads the node battery status, communication link quality, task priority, and spatial proximity relationships reported by all slave nodes in each status acquisition cycle. The node battery status characterizes the remaining job capability of the current slave node to continue executing the current subtask.
[0055] The low battery threshold is determined based on the minimum remaining battery power required for the new energy agricultural machinery to complete its current path exit, relocation, and safe shutdown. It is typically set in conjunction with the battery's rated capacity, current instantaneous power consumption, and safety redundancy ratio. The task execution timeout limit is determined based on the historical average completion time of similar tasks under similar terrain and operating speeds, combined with the allowable fluctuation range to form a timeout judgment boundary. When any trigger condition is met, the continuation recovery module first freezes the unfinished area of the subtask currently handled by the abnormal slave node, extracts the starting position, completed boundary, remaining area, and corresponding local operation path segment of the unfinished area, and then selects candidate takeover nodes from the neighboring node set of the abnormal slave node. The selection criteria for candidate takeover nodes include four aspects. First, the node's battery status should be higher than the low battery threshold to ensure that the new task can be completed after takeover. Second, the communication link quality should be higher than the link quality level threshold. The link quality level threshold can be set based on the status synchronization cycle, continuous packet loss rate, and reception success rate to ensure that the status can continue to be transmitted after the subtask is reassigned. Third, task priority should allow the current node to take on new tasks, and higher-priority tasks to be completed should be taken over by highly reliable nodes during reallocation. Fourth, spatial proximity should ensure that the transfer cost is acceptable, that is, the distance between the candidate takeover node and the unfinished area should be short to reduce ineffective transfers.
[0056] The continuation and recovery module generates a takeover order for each candidate takeover node based on the four types of constraints mentioned above, and sequentially splits or migrates unfinished subtasks to their corresponding neighboring nodes. If multiple candidate takeover nodes exist, the continuation and recovery module prioritizes allocating continuous workable areas to the neighboring node closest to the abnormal node with the most stable communication link quality, and then allocates the remaining discrete areas to the other candidate nodes. After the reallocation is completed, the continuation and recovery module does not directly overwrite the atomic task record, but retains the original task identifier in the global task graph and writes the unfinished areas into the new task allocation record, making the task migration process traceable. Simultaneously, the continuation and recovery module writes the local path occupancy information corresponding to the newly added takeover node into the conflict matrix update queue, re-executes conflict checks on adjacent path intersections, time window overlaps, and job resource competition caused by the new takeover, and writes the update results back to the conflict matrix. After this processing, unfinished subtasks can continue to be executed under weak network or local anomaly conditions, without destroying the existing path coordination results on the master node side.
[0057] Execution status synchronization includes: performing consistency verification on the task status and local job paths returned by each slave node, and synchronizing the subtask allocation results based on the verification results; execution master node re-election includes: when no heartbeat information is received from the master node for several consecutive heartbeat cycles, the master node is determined to be invalid, and a new master node is elected based on the node weight and the ad hoc network communication topology is rebuilt.
[0058] In one embodiment, the process of execution state synchronization and master node reselection is enhanced with interruption continuation boundaries, synchronization verification rules, conflict resolution rules, and topology recovery rules to define how the cluster recovers to a unified, schedulable state in the event of communication or master node failures. When a communication interruption occurs, the slave node does not immediately abandon its current subtask but instead invokes locally cached subtasks, the most recently issued local job path, and locally recorded neighborhood state summaries to continue the work. The locally cached subtasks include at least a task identifier, a waiting area boundary, a task priority, and the progress of the most recently executed task. The locally cached local job path includes at least the current path node sequence, the expected execution time, and completed path segment markers.
[0059] During the continuation of operations, slave nodes advance their current tasks according to a predetermined priority order, and record newly completed areas, path occupancy changes, and abnormal event markers locally. Upon detection of a communication recovery event, the continuation recovery module receives the task status and local job paths transmitted back from each slave node and performs consistency checks on the transmitted data. Consistency checks include at least timestamp integrity checks, task identifier matching checks, path occupancy interval overlap checks, and duplicate job area comparisons. Timestamp integrity checks confirm whether the transmitted data belongs to the current recovery cycle; task identifier matching checks confirm the correspondence between the content reported by each slave node and the assigned tasks; path occupancy interval overlap checks identify whether new spatiotemporal overlaps occur during the recovery period; and duplicate job area comparisons identify whether multiple slave nodes performed duplicate operations on the same area during the disconnection period.
[0060] Data that passes verification is directly written to the master node's current task status table. Data that fails verification enters the conflict resolution process, where the continuation and recovery module determines which records to retain and which to roll back based on the completed area, priority, and time sequence, and synchronizes the subtask allocation results accordingly. Master node failure is determined through a heartbeat timeout mechanism. During normal operation, the master node broadcasts its liveness information at a fixed heartbeat cycle. If a slave node fails to receive this information for several consecutive heartbeat cycles, it marks the master node as a failed node and reads the most recent valid node weight record from its local cache.
[0061] The continuation recovery module re-elects a new master node based on node weights. After the new master node is elected, it broadcasts its declaration information to the entire network. The remaining slave nodes switch access objects after completing identifier verification and reconstruct the ad hoc network communication topology according to the new adjacency table. After the topology reconstruction is completed, the new master node summarizes the task status, local job paths, and incomplete subtask records cached locally by each slave node, and regenerates the currently valid task allocation results and conflict matrix. This allows the cluster to converge from a state of local autonomy back to a unified scheduling state, thereby ensuring that collaborative operations can continue in weak network areas.
[0062] In one embodiment, the invention is applied to a multi-machine collaborative operation scenario in hilly and remote farmland. The operation area is approximately 300 hectares, and the area contains slopes, gentle slope transition zones, and local communication blind spots. The operation tasks include sowing, fertilization, and crop monitoring. Six new energy agricultural machines participate in the operation, each equipped with an onboard multi-source sensing unit, a short-range wireless communication device, a positioning device, an onboard controller, and a battery management unit. Before the operation begins, each new energy agricultural machine periodically collects node identifiers, spatial coordinates, task status, remaining battery power, processor utilization, available memory capacity, communication signal strength, and timestamps, and broadcasts the node status data. Each new energy agricultural machine establishes a set of neighboring nodes based on the received neighborhood broadcast data, and after selecting neighboring nodes with sufficient communication signal strength, a self-organizing network communication topology is formed.
[0063] After completing multiple broadcast reception cycles, each new energy agricultural machine generates a node weight based on its power status and computing resource parameters. The new energy agricultural machine with the highest node weight is designated as the mobile edge host, while the remaining new energy agricultural machines enter slave mode. The mobile edge host reads the work area boundary, terrain data, and work task distribution to construct a global task map. Combining the current online status, remaining energy level, task execution progress, and communication link quality level of each slave machine, it divides the land into multiple sub-task areas and assigns different sub-task areas to corresponding slave machines. After receiving a sub-task, each slave machine constructs a work grid map locally, determines the starting and target work nodes, and generates a local work path based on the real-time location of neighboring nodes, task load, and node weight.
[0064] After the local job path is generated, it is sent back to the mobile edge host. The mobile edge host detects potential conflicting node pairs according to the job time window and spatial location relationship, constructs a conflict matrix, and reconstructs the paths for conflicting subtasks before distributing the reconstructed paths to the corresponding slaves. During job execution, if a slave's battery level falls below the low battery threshold or its subtask execution time exceeds the task execution timeout limit, the mobile edge host reallocates the unfinished job area of that slave to neighboring slaves and updates the conflict matrix synchronously. If communication in a local area is interrupted, the slave continues to use locally cached subtasks and local job paths to perform independent operations. After communication is restored, each slave sends its task status and local job path back to the mobile edge host, which performs consistency checks and task convergence processing. If no heartbeat information is received from the mobile edge host for several consecutive heartbeat cycles, each slave re-elects a new mobile edge host based on node weights, rebuilds the ad hoc network communication topology, and continues to perform collaborative operations.
[0065] The communication signal strength screening threshold is determined based on the stable reception distance of the short-range wireless communication device in the current plot. The low battery threshold is determined based on the minimum remaining power required for the new energy agricultural machinery to complete the exit from the current work area and safely shut down. The task execution timeout limit is determined based on the historical average operation time and allowable fluctuation range of the same type of task under similar terrain conditions. For areas with large slope changes, the mobile edge host prioritizes dividing work areas with similar slopes, adjacent locations, and stable links into the same sub-task area when dividing sub-tasks, in order to reduce energy loss caused by frequent relocation. For work areas near communication blind spots, the mobile edge host prioritizes placing slaves with higher remaining energy levels and better communication link quality at the edge of the blind spot during the task allocation phase, in order to ensure that the status feedback link remains continuous. Through the above methods, the present invention can enable multiple new energy agricultural machines to continuously coordinate operations in weak network areas, and form a complete closed loop of task allocation, local path generation, conflict handling, abnormal continuation, and host reselection.
[0066] Those skilled in the art will understand that embodiments of the present invention can be provided as methods, systems, or computer program products. Therefore, the present invention can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects.
[0067] The above are merely embodiments of the present invention and are 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 principle of the present invention should be included within the scope of the claims of the present invention.
Claims
1. A distributed new energy agricultural machinery cluster cooperative operation system suitable for weak network areas, characterized in that, The system includes: The network master selection module is used to collect node status data of each new energy agricultural machine and establish a self-organizing network communication topology, and determine the master node and slave node according to the power status and computing resource parameters. The task allocation module is used to construct a global task graph based on the work area boundary, terrain data, work task distribution and the node status data, and to divide sub-tasks and allocate them to the slave nodes. The path coordination module is used to generate and transmit local operation paths based on the subtasks and the status of neighboring nodes; The conflict reconstruction module is used to identify path conflicts based on the local job path and the node status data, construct a conflict matrix, and reconstruct and distribute the reconstructed paths for conflict subtasks. The continuation recovery module is used to reallocate unfinished subtasks and update the conflict matrix when the node's power is detected to be below the low power threshold or the task execution timeout is detected; to continue the operation according to the locally cached subtasks when communication interruption is detected; to perform state synchronization when communication is detected to be restored; and to perform master node reselection when the master node is detected to be failed.
2. The system according to claim 1, characterized in that, The node status data includes the node identifier, spatial coordinates, task status, remaining battery power, processor utilization, available memory capacity, communication signal strength, and timestamp. The establishment of the ad hoc network communication topology includes filtering neighboring nodes based on the communication signal strength, and establishing the ad hoc network communication topology based on the filtered neighboring nodes.
3. The system according to claim 2, characterized in that, The step of determining the master node and slave node based on the power status and computing resource parameters includes: determining the power weight based on the remaining power, determining the computing resource weight based on the processor utilization rate and the available memory capacity, calculating the node weight based on the power weight and the computing resource weight, identifying new energy agricultural machinery whose node weight fluctuation does not exceed the node weight fluctuation threshold as candidate nodes, and selecting the new energy agricultural machinery with the largest node weight from the candidate nodes as the master node.
4. The system according to claim 1, characterized in that, The construction of the global task graph includes establishing collaborative status information in the global task graph, which includes node online status, remaining energy level, task execution progress, and communication link quality level.
5. The system according to claim 4, characterized in that, The process of assigning subtasks to the slave nodes includes: grouping the slave nodes according to the collaborative status information; dividing the corresponding work areas of slave nodes in the same group that have the same online status, the same or adjacent remaining energy levels, and a communication link quality level not lower than the link quality level threshold into the same subtask; and assigning the same subtask to the corresponding slave node. When a node is detected to be offline, the communication link quality level is lower than the link quality level threshold, the task execution times out, or the node battery level is lower than the low battery threshold, the same subtask is identified as a subtask to be reassigned.
6. The system according to claim 1, characterized in that, The process of generating and transmitting the local job path includes: determining the starting job node and the target job node based on the sub-task, constructing a job grid graph, obtaining the real-time location, task load, and node weight of the neighboring nodes, and generating the local job path. When the location of a neighboring node changes beyond the location change threshold or the task load changes beyond the load change threshold, the affected path segment is regenerated and the local job path is updated.
7. The system according to claim 1, characterized in that, The identification of path conflicts and the construction of the conflict matrix include: sorting the path nodes according to the operation time sequence corresponding to the local operation path, identifying the node pairs with a spatial distance of less than the safe distance threshold and competition for operation resources within the same operation time period as potential conflict node pairs, and constructing the conflict matrix based on the potential conflict node pairs.
8. The system according to claim 7, characterized in that, The path reconstruction of conflicting subtasks includes: determining the conflict weight of the potential conflicting node pair based on the distance between nodes, the difference in task load, the difference in relative speed and task priority of the nodes in the potential conflicting node pair; identifying potential conflicting node pairs with conflict weights greater than the conflict weight threshold as actual conflicting node pairs; and reconstructing the path of the conflicting subtasks corresponding to the actual conflicting node pairs and issuing the reconstructed path.
9. The system according to claim 1, characterized in that, The process of reallocating unfinished subtasks and updating the conflict matrix includes: reallocating unfinished subtasks among neighboring nodes based on the node power status, communication link quality, task priority, and spatial proximity of each slave node, and updating the conflict matrix.
10. The system according to claim 1, characterized in that, The execution status synchronization includes: performing consistency verification on the task status returned by each slave node and the local job path, and synchronizing the subtask allocation results according to the verification results; The process of performing master node re-election includes: if no heartbeat information is received from the master node for multiple consecutive heartbeat cycles, the master node is determined to be invalid, and the master node is re-elected based on the node weight and the ad hoc network communication topology is rebuilt.