Implementation method of irrigation area real-time data acquisition and monitoring system
By deploying real-time data acquisition and monitoring systems in irrigation areas with multiple nodes in the irrigation area, the problems of high power consumption, long delay and low data accuracy in traditional systems are solved, real-time data acquisition and monitoring of irrigation areas are realized, and data accuracy is improved and response speed, reducing costs and latency.
Patent Information
- Application Number
- CN202510091101.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-01-21
- Publication Date
- 2025-02-25
- Estimated Expiration
- 2045-01-21
AI Technical Summary
Traditional irrigation area data acquisition and monitoring systems have problems such as high power consumption, long delay, low data accuracy and long response time, resulting in increased costs and delays for data acquisition and monitoring in irrigation area, and nodes with low energy cannot effectively collect and process data.
A real-time data acquisition and monitoring system for irrigation areas was designed. By deploying multiple nodes in the irrigation area, the nodes were divided into acquisition nodes and user nodes, and the acquisition nodes were further divided into first nodes and member nodes. The first node was responsible for data forwarding and member nodes were responsible for data. Collect, user nodes are used for data monitoring. The system realizes real-time data collection and monitoring through the management of request and response messages, data tables and cache tables.
Real-time data acquisition and monitoring in irrigation areas is realized, data accuracy and response speed are improved, and the cost and delay of data acquisition and monitoring are reduced, ensuring the healthy growth of crops and the sustainability of agricultural production.
Smart Images

Figure CN119521047A_ABST
Abstract
Description
Technical Field
[0001] The invention relates to the technical field of irrigation area monitoring, and in particular to a method for realizing a real-time data collection and monitoring system for an irrigation area. Background Art
[0002] Real-time data collection and monitoring of irrigation areas is an important means to provide necessary water sources for farmland, increase crop yields, and improve the stability and sustainability of agricultural production. Irrigation area environmental monitoring and early warning ensure the healthy growth of crops by automatically monitoring the degree of soil drought. Traditional irrigation area data collection and monitoring systems use broadcasting to transmit data, resulting in high power consumption and long delays in irrigation area data collection and monitoring. At the same time, traditional irrigation area data collection and monitoring systems do not have data fusion problems, resulting in low data accuracy and long response time, which further increases the cost and delay of irrigation area data collection and monitoring. At the same time, nodes with low energy cannot collect and process irrigation area data, resulting in the inability to monitor real-time irrigation area data.
[0003] This system is designed to achieve real-time data collection and monitoring of irrigation areas to ensure the healthy growth of crops in the irrigation areas. Summary of the invention
[0004] Purpose of the invention: The technical problem to be solved by the present invention is to provide a method for implementing a real-time data collection and monitoring system for an irrigation area in view of the deficiencies in the prior art.
[0005] Technical solution: The present invention discloses a method for implementing a real-time data collection and monitoring system for an irrigation area. The system includes a plurality of nodes evenly distributed in the irrigation area. The nodes are divided into collection nodes and user nodes. The collection nodes are divided into head nodes and member nodes. The head node is used to perform forwarding operations, the member node is used to perform data collection operations, and the user node is used to monitor data. The method includes: The first node sends a request message to construct a data set identified by its own coordinates and sets a clock at the same time; if the set clock is equal to 0, the data set is constructed and a data table entry is created; If the member node receives the request message, it sends a response message; if the head node that receives the request message does not have a request table entry with coordinates equal to the coordinates in the request message and the hop limit value in the request message is not equal to 0, it creates a request table entry and forwards the request message; if the head node that receives the request message does not have a request table entry with coordinates equal to the coordinates in the request message and the hop limit value in the request message is equal to 0, it sends a response message; If the head node receiving the response message has a request entry, the coordinates of the request entry are equal to the coordinates in the response message and the life cycle is equal to 0, then forward the response message; The user node sends a query message to obtain a data set; if the coordinates of the first node receiving the query message are equal to the coordinates in the query message, a data message is sent; if the coordinates of the first node are not equal to the coordinates in the query message, and the address of the first node is equal to the address in the query message, and the coordinate set does not contain the coordinates in the query message, the query message is forwarded; If the coordinate set of the head node receiving the data message contains the coordinates in the data message, the data message is forwarded; if the user node receives the data message, the data set in the data message is saved.
[0006] The method further comprises: In the initial state, all the acquisition nodes are member nodes; The irrigation area sets a virtual node; wherein the coordinates of the virtual node are preset, the abscissa is equal to (x1+x2) / 2, and the ordinate is equal to (y1+y2) / 2, wherein x1 and x2 are respectively the maximum abscissa and the minimum abscissa of the area covered by the irrigation area, and y1 and y2 are respectively the maximum ordinate and the minimum ordinate of the area covered by the irrigation area; Each of the nodes is uniquely identified by an address, which is preset, and the coordinate value of each node is preset; Each of the nodes stores a node table, and a node table entry includes an address, a node type, energy, coordinates, and a life cycle; the node type value of the user node is 0, the node type value of the head node is 1, and the node type value of the member node is 2.
[0007] The method further comprises: Each of the nodes establishes a node table by sending a node message, wherein the address and node type in the node message are its own address and node type, the energy is the current energy value, and the coordinates are the current coordinates; If a neighbor node that receives the node message has a node table entry whose address is equal to the address in the node message, the node type, energy and coordinates of the node table entry are set to the node type, energy and coordinates in the node message respectively, and the life cycle is set to the maximum value; otherwise, the neighbor node creates a node table entry, the address of the created node table entry is equal to the address in the node message, the node type, energy and coordinates of the node table entry are set to the node type, energy and coordinates in the node message respectively, and the life cycle is set to the maximum value.
[0008] The method further comprises: If the member node does not have a node table entry that meets condition 1 and satisfies formula (1), it marks itself as the head node; Condition 1: The node type of the node entry is 1, and the distance between the coordinates and the virtual node coordinates is less than the distance between the member node coordinates and the virtual node coordinates; e1>θ×e2(1) Wherein, e1 is the current energy value of the member node, e2 is the initial energy value of the member node, and θ is an adjustment parameter, ranging from 0.5 to 0.9; If the member node does not have a node table entry that meets condition 1 and does not satisfy formula (1), then all node table entries that meet condition 2 are selected, and a node table entry with the largest energy value is selected from the node table entries that meet condition 2, and an election message is sent, the address of the message is equal to the address in the node table entry; Condition 2: The node type of the node table entry is 2, and the distance between the coordinates and the virtual node coordinates is less than the distance between the member node coordinates and the virtual node coordinates; If the address of the member node that receives the election message is equal to the address in the election message, it sets itself as the head node.
[0009] The method further comprises: Each data set is uniquely identified by coordinates; Each node stores a data table. A data table item contains coordinates and data sets. The data table is initially empty. Each node stores a cache table. A cache table entry contains coordinates and data sets. The initial state of the cache table is an empty table. Each node stores a request table. A request table entry contains coordinates and life cycle. The initial state of the request table is an empty table. In the request message sent by the first node, the coordinates are equal to its own coordinates, the hop limit value is the preset value h1, and the set clock value is set to (t1+t2)×h1, t1 is the delay in forwarding the request message between neighbor nodes, and t2 is the delay in forwarding the response message between neighbor nodes.
[0010] The method further comprises: In the response message sent by the member node or the head node that receives the request message, the coordinates are equal to the coordinates in the request message, and the data set is composed of the data collected by itself; In the request table entry created by the head node that receives the request message, the coordinates are equal to the coordinates in the request message, and the life cycle is set equal to (t1+t2)×h2, where h2 is equal to the hop limit value in the received request message.
[0011] The method further comprises: If the first node receiving the response message is the first node sending the request message or there is a request table entry with coordinates equal to the coordinates in the response message, a cache table entry is created; wherein the coordinates and data set of the cache table entry are respectively equal to the coordinates and data set in the response message; In the response message forwarded by the head node that receives the response message, the data set is set to the union of the data sets of all cache entries whose coordinates are equal to the coordinates in the response message.
[0012] The method further comprises: The data set constructed by the first node sending the request message is equal to the union of the data sets of all cache entries whose coordinates are equal to the coordinates of the first node; In the data table entry created by the first node that sends the request message, the coordinates are equal to its own coordinates, and the data set is equal to the constructed data set.
[0013] The method further comprises: Each node stores a coordinate set, which is an empty set in the initialization state; In the query message sent by the user node, the coordinates are equal to the coordinates identifying the data set to be obtained, the address is equal to the address of a node table entry, the node type of the node table entry is equal to 1, and among all node table entries of the user node whose node type is equal to 1, the coordinates of the node table entry are closest to the coordinates in the query message; In the data message sent by the head node that receives the query message, the coordinates are equal to the coordinates in the query message, and the data set is equal to the data set in the data table item whose coordinates are equal to the coordinates in the query message.
[0014] The method further comprises: In the query message forwarded by the first node that receives the query message, the address is set to the address of a node table entry, and the node table entry has the closest coordinates to the coordinates in the query message among all node table entries of the first node whose node type is equal to 1. At the same time, the first node adds the coordinates in the query message to its own coordinate set; If the coordinate set of the head node that receives the data message includes the coordinates in the data message, the coordinates in the data message are deleted from its own coordinate set.
[0015] Beneficial effects: The present invention provides an implementation method of a real-time data collection and monitoring system for an irrigation area. Through the implementation method of a real-time data collection and monitoring system for an irrigation area provided by the present invention, the staff can quickly obtain accurate real-time data of the irrigation area for monitoring, such as humidity and drought level, so as to take effective measures to ensure the healthy growth of crops and the sustainability of crop production. It has broad application prospects. BRIEF DESCRIPTION OF THE DRAWINGS
[0016] The present invention will be further described in detail below in conjunction with the accompanying drawings and specific embodiments, and the above and / or other advantages of the present invention will become more clear.
[0017] Figure 1 It is a flow chart of the implementation method of the irrigation area real-time data collection and monitoring system of the present invention; Figure 2 Create a flow chart for the node table; Figure 3 This is the flow chart for selecting the first node; Figure 4 To construct a flow chart of real-time data collection in irrigation areas; Figure 5 Flowchart for real-time data collection for monitoring irrigation areas. DETAILED DESCRIPTION
[0018] In order to enable those skilled in the art to better understand the technical solution of the present invention, the present invention is further described in detail below in conjunction with the accompanying drawings and specific implementation methods. Obviously, the described embodiments are part of the embodiments of the present invention, rather than all of the embodiments. Based on the described embodiments of the present invention, all other embodiments obtained by those of ordinary skill in the art without creative work are within the scope of protection of the present invention.
[0019] Unless otherwise specified, the technical terms or scientific terms used in the embodiments of the present invention should be understood by people with ordinary skills in the field to which the present invention belongs. "Including" or "comprising" used in the embodiments of the present invention neither limit the shapes, numbers, steps, actions, operations, components, originals and / or their groups mentioned, nor exclude the appearance or addition of one or more other different shapes, numbers, steps, actions, operations, components, originals and / or their groups, or the addition of these. In addition, the terms "first" and "second" are only used for descriptive purposes, and cannot be understood as indicating or implying relative importance or implicitly indicating the number and order of the indicated technical features. Thus, the features defined as "first" and "second" can explicitly or implicitly include one or more of the features. In the description of the embodiments of the present invention, the meaning of "multiple" is two or more, unless otherwise clearly and specifically defined.
[0020] Unless otherwise specifically stated, the relative arrangement of the components and steps, numerical expressions and numerical values set forth in these embodiments do not limit the scope of the present invention. At the same time, it should be understood that for ease of description, the sizes of the various parts shown in the drawings are not drawn according to the actual proportional relationship, and the techniques, methods and devices known to ordinary technicians in the relevant fields may not be discussed in detail, but where appropriate, the techniques, methods and devices shown should be considered as part of the authorized specification. In all examples shown and discussed here, any specific other examples may have different values. It should be noted that similar symbols and letters represent similar items in the following drawings, so once an item is defined in one drawing, it does not need to be further discussed in subsequent drawings.
[0021] In the description of the embodiments of the present invention, the description with reference to the terms "one embodiment", "some embodiments", "example", "specific example", or "some examples" etc. means that the specific features, structures, materials or characteristics described in conjunction with the embodiment or example are included in at least one embodiment or example of the present invention. In the embodiments of the present invention, the schematic representations of the above terms do not necessarily refer to the same embodiments or examples. Moreover, the specific features, structures, materials or characteristics described may be combined in any one or more embodiments or examples in a suitable manner. In addition, those skilled in the art may combine and combine the different embodiments or examples described in the embodiments of the present invention and the features of the different embodiments or examples, without contradiction.
[0022] Below, the exemplary embodiments according to the present invention will be described in detail with reference to the accompanying drawings. Obviously, the described embodiments are only part of the embodiments of the present invention, rather than all the embodiments of the present invention, and it should be understood that the present invention is not limited to the exemplary embodiments described here.
[0023] Figure 1 The flowchart of the method for implementing the real-time data collection and monitoring system for irrigation areas of the present invention. The system is composed of nodes evenly distributed in the irrigation area, and the nodes are divided into collection nodes and user nodes. The collection nodes are divided into head nodes and member nodes. The head nodes are used to perform forwarding operations, the member nodes are used to perform data collection operations, and the user nodes are used to monitor data. Figure 1 As shown, the method comprises the following steps: The first node sends a request message to construct a data set identified by its own coordinates and sets a clock at the same time; if the set clock is equal to 0, the data set is constructed and a data table entry is created.
[0024] If the member node receives the request message, it sends a response message; if the first node that receives the request message does not have a request table entry with coordinates equal to the coordinates in the request message and the hop limit value in the request message is not equal to 0, it creates a request table entry and forwards the request message; if the first node that receives the request message does not have a request table entry with coordinates equal to the coordinates in the request message and the hop limit value in the request message is equal to 0, it sends a response message.
[0025] If the head node that receives the response message has a request entry, the coordinates of the request entry are equal to the coordinates in the response message and the life cycle is equal to 0, then the response message is forwarded.
[0026] The user node sends a query message to obtain a data set; if the coordinates of the first node receiving the query message are equal to the coordinates in the query message, a data message is sent; if the coordinates of the first node are not equal to the coordinates in the query message, and the address of the first node is equal to the address in the query message, and the coordinate set does not contain the coordinates in the query message, the query message is forwarded.
[0027] If the coordinate set of the head node receiving the data message contains the coordinates in the data message, the data message is forwarded; if the user node receives the data message, the data set in the data message is saved.
[0028] The present invention provides an implementation method of a real-time data collection and monitoring system for an irrigation area. Through the implementation method of a real-time data collection and monitoring system for an irrigation area provided by the present invention, staff can quickly obtain accurate real-time data of the irrigation area for monitoring, such as humidity and drought level, so as to take effective measures to ensure the healthy growth of crops and the sustainability of crop production. The present invention has broad application prospects.
[0029] Figure 2 Create a flow chart for the node table. Figure 2 As shown, in the initial state, all acquisition nodes are member nodes; the irrigation area sets a virtual node, the coordinates of the virtual node are preset, the horizontal coordinate is equal to (x1+x2) / 2, and the vertical coordinate is equal to (y1+y2) / 2, wherein x1 and x2 are the maximum horizontal coordinate and the minimum horizontal coordinate of the area covered by the irrigation area, respectively, and y1 and y2 are the maximum vertical coordinate and the minimum vertical coordinate of the area covered by the irrigation area, respectively; Each node is uniquely identified by an address, which is pre-set and can be set to a hardware address, such as a MAC address; The coordinate values of each node are preset; Each node stores a node table. A node table entry contains address, node type, energy, coordinates and life cycle. The node type value of the user node is 0, the node type value of the head node is 1, and the node type value of the member node is 2. The node message contains the message ID, address, node type, energy and coordinates; Node N1 creates a node table through the following process: Step 101: Start; Step 102: Node N1 sends a node message, the message ID of which is 1, the address and node type are both its own address and node type, the energy is the current energy value, and the coordinates are the current coordinates; Step 103: after receiving the node message, the neighbor node determines whether there is a node table entry whose address is equal to the address in the node message; if so, the node type, energy and coordinates of the node table entry are respectively set to the node type, energy and coordinates in the node message, and the life cycle is set to the maximum value; otherwise, a node table entry is created whose address is equal to the address in the node message, the node type, energy and coordinates of the node table entry are respectively set to the node type, energy and coordinates in the node message, and the life cycle is set to the maximum value; Step 104: End.
[0030] In the above process, the node establishes a node table by sending node messages, thereby obtaining the address, node type, current energy and coordinates of the neighboring nodes, and then electing the first node to collect and transmit data.
[0031] Figure 3 This is the flow chart for electing the first node. If the member node MN1 does not have a node table entry that meets condition 1 and satisfies formula (1), it will mark itself as the first node; in formula (1), e1 is the current energy value of the member node MN1, e2 is the initial energy value of the member node MN1, and θ is an adjustment parameter with a value range of 0.5-0.9; Condition 1: The node type of the node entry is 1, and the distance between the coordinates and the virtual node coordinates is less than the distance between the member node MN1 coordinates and the virtual node coordinates; e1>θ×e2(1) The election message contains a message ID and an address; If the member node MN1 does not have a node table entry that meets condition 1 and does not satisfy formula (1), the following operations are performed: Step 201: Start; Step 202: The member node MN1 selects all node entries that meet condition 2, selects a node entry from the node entries that meet condition 2, and the energy value of the node entry is the largest, and sends an election message, the message ID of the message is 2, and the address is the address in the node entry; Condition 2: The node type of the node entry is 2, and the distance between the coordinates and the virtual node coordinates is less than the distance between the member node MN1 coordinates and the virtual node coordinates; Step 203: The member node that receives the election message determines whether its address is equal to the address in the election message. If yes, execute step 204; otherwise, execute step 205; Step 204: The member node receiving the election message sets itself as the head node; Step 205: End.
[0032] The member nodes elect the head node through the above process, so that the head node covers the entire irrigation area, collects data of the irrigation area, improves the success rate of data monitoring, and reduces the delay and cost of data monitoring.
[0033] Figure 4 To construct a flow chart of real-time data sets for irrigation areas. Each data set is uniquely identified by coordinates; Each node stores a data table. A data table item contains coordinates and data sets. The data table is initially empty. Each node stores a cache table. A cache table entry contains coordinates and data sets. The initial state of the cache table is an empty table. Each node stores a request table. A request table entry contains coordinates and life cycle. The initial state of the request table is an empty table. The request message contains the message ID, coordinates and hop limit value; The response message contains the message ID, coordinates and data set; The coordinates of the first node HN1 are CO1. The data set identified by the coordinates CO1 is created through the following process: Step 301: Start; Step 302: The head node HN1 sends a request message, the message ID of which is 3, the coordinates are its own coordinates CO1, the hop limit value is a preset value h1, and a clock TM1 is set, the value of which is set to (t1+t2)×h1, t1 is the delay of forwarding the request message between neighbor nodes, and t2 is the delay of forwarding the response message between neighbor nodes; Step 303: If the member node receives the request message, execute step 304, otherwise execute step 305; Step 304: The member node that receives the request message sends a response message, the message ID of which is 4, the coordinates are equal to the coordinates in the request message, and the data set is composed of the data collected by itself, and then executes step 309; Step 305: The head node receiving the request message determines whether there is a request table entry whose coordinates are equal to the coordinates in the request message. If so, execute step 309; otherwise, execute step 306. Step 306: The head node receiving the request message decrements the hop limit value in the request message by 1. If the hop limit value in the request message is equal to 0, step 308 is executed; otherwise, step 307 is executed. Step 307: The head node that receives the request message creates a request table entry, the coordinates of the table entry are equal to the coordinates in the request message, the life cycle is set to be equal to (t1+t2)×h2, h2 is equal to the hop limit value in the received request message, forwards the request message, and executes step 303; Step 308: The head node that receives the request message sends a response message, the message ID of which is 4, the coordinates are equal to the coordinates in the request message, and the data set contains the data collected by itself; Step 309: whether the head node receiving the response message is the head node HN1, if yes, execute step 313, otherwise execute step 310; Step 310: The head node that receives the response message determines whether there is a request table entry whose coordinates are equal to the coordinates in the response message. If so, execute step 311; otherwise, execute step 315; Step 311: The head node that receives the response message creates a cache entry, the coordinates and data set of which are respectively equal to the coordinates and data set in the response message, and determines whether the life cycle of the request entry whose coordinates are equal to the coordinates in the response message is equal to 0. If so, execute step 312, otherwise execute step 309; Step 312: the head node receiving the response message selects all cache entries whose coordinates are equal to the coordinates in the response message, sets the data set in the response message to the union of the data sets of all selected cache entries, forwards the response message, and executes step 309; Step 313: The head node HN1 creates a cache entry, the coordinates and data set of which are respectively equal to the coordinates and data set in the response message, and determines whether the clock TM1 is equal to 0. If so, execute step 314, otherwise execute step 309; Step 314: the head node HN1 selects all cache entries whose coordinates are equal to its own coordinates CO1, constructs a data set DS1, the data set DS1 is equal to the union of the data sets of all selected cache entries, and creates a data entry whose coordinates are equal to CO1 and whose data set is equal to the data set DS1; Step 315: End.
[0034] In the above process, the first node builds a real-time irrigation data set by sending request messages and response messages, thereby collecting data of its own irrigation area for monitoring and early warning.
[0035] Figure 5 Flowchart for real-time data collection for monitoring irrigation areas.
[0036] Each node stores a coordinate set, which is an empty set in the initialization state; The query message contains the message ID, coordinates and address; The data message contains the message ID, coordinates and data set; The user node UN1 obtains the data set identified by the coordinate CO1 as follows; Step 401: Start; Step 402: the user node UN1 selects all node entries with node type equal to 1, selects an entry from these entries, the coordinates of which are closest to the coordinates CO1, and sends a query message, the message ID of which is 5, the coordinates are equal to CO1, and the address is equal to the address in the node entry; Step 403: The first node that receives the query message determines whether its own coordinates are equal to the coordinates in the query message. If yes, execute step 404; otherwise, execute step 407; Step 404: The first node that receives the query message determines whether there is a data table entry with coordinates equal to the coordinates in the query message. If so, execute step 406; otherwise, execute step 405. Step 405: The first node that receives the query message builds a data set and creates a data table entry, the coordinates of the data table entry are equal to its own coordinates, and the data set is equal to the created data set; Step 406: The first node that receives the query message selects a data table item whose coordinates are equal to the coordinates in the query message, sends a data message, the message ID of which is 6, the coordinates are equal to the coordinates in the query message, and the data set is equal to the data set in the data table item, and executes step 410; Step 407: The first node that receives the query message determines whether its address is equal to the address in the query message. If yes, execute step 408; otherwise, execute step 413; Step 408: The first node that receives the query message determines whether its own coordinate set contains the coordinates in the query message. If so, execute step 410; otherwise, execute step 409; Step 409: The first node that receives the query message adds the coordinates in the query message to its own coordinate set, selects all node entries with node type equal to 1, selects an entry from these entries whose coordinates are closest to the coordinates in the query message, sets the address in the query message as the address of the node entry, forwards the query message, and executes step 403; Step 410: If the user node UN1 receives the data message, execute step 413, otherwise execute step 411; Step 411: The first node that receives the data message determines whether its own coordinate set contains the coordinates in the data message. If so, step 412 is executed; otherwise, step 413 is executed. Step 412: The head node that receives the data message deletes the coordinates in the data message from its own coordinate set, forwards the data message, and executes step 410; Step 413: End.
[0037] Through the above process, the user node obtains the target data set of the irrigation area by sending query messages for monitoring and early warning. In the above process, only the first node participates in the data set transmission, so the data set communication delay is reduced. At the same time, multiple user nodes can share data through coordinate sets, so as to quickly obtain the real-time data set of the irrigation area, thereby realizing timely monitoring and early warning of the irrigation area, and improving the irrigation efficiency of the irrigation area.
[0038] Example 1 Based on the simulation parameters in Table 1, this embodiment simulates an implementation method of an irrigation area real-time data collection and monitoring system in the present invention, and the performance analysis is as follows: when the number of first nodes increases, the success rate of user nodes in obtaining irrigation area real-time data sets decreases; when the number of first nodes decreases, the success rate of user nodes in obtaining irrigation area real-time data sets increases; the average success rate of collection nodes in obtaining irrigation area environmental monitoring data is 98.1%.
[0039] Table 1
[0040] The present invention provides a method for implementing a real-time data collection and monitoring system for an irrigation area. There are many methods and ways to implement the technical solution. The above is only a preferred embodiment of the present invention. It should be pointed out that for ordinary technicians in this technical field, several improvements and modifications can be made without departing from the principle of the present invention. These improvements and modifications should also be considered as the protection scope of the present invention. All components not specified in this embodiment can be implemented using existing technologies.
Claims
1. A method for implementing a real-time data collection and monitoring system for an irrigation area, characterized in that: The system includes a plurality of nodes evenly distributed in the irrigation area, the nodes are divided into collection nodes and user nodes, the collection nodes are divided into head nodes and member nodes, the head nodes are used to perform forwarding operations, the member nodes are used to perform data collection operations, and the user nodes are used to monitor data; the method includes: The first node sends a request message to construct a data set identified by its own coordinates and sets a clock at the same time; if the set clock is equal to 0, the data set is constructed and a data table entry is created; If the member node receives the request message, it sends a response message; if the head node that receives the request message does not have a request table entry with coordinates equal to the coordinates in the request message and the hop limit value in the request message is not equal to 0, it creates a request table entry and forwards the request message; if the head node that receives the request message does not have a request table entry with coordinates equal to the coordinates in the request message and the hop limit value in the request message is equal to 0, it sends a response message; If the head node receiving the response message has a request entry, the coordinates of the request entry are equal to the coordinates in the response message and the life cycle is equal to 0, then forward the response message; The user node sends a query message to obtain a data set; if the coordinates of the first node receiving the query message are equal to the coordinates in the query message, a data message is sent; if the coordinates of the first node are not equal to the coordinates in the query message, and the address of the first node is equal to the address in the query message, and the coordinate set does not contain the coordinates in the query message, the query message is forwarded; If the coordinate set of the head node receiving the data message contains the coordinates in the data message, the data message is forwarded; if the user node receives the data message, the data set in the data message is saved.
2. The method for implementing a real-time data collection and monitoring system for an irrigation area according to claim 1, characterized in that: The method further comprises: In the initial state, all the acquisition nodes are member nodes; The irrigation area sets a virtual node; wherein the coordinates of the virtual node are preset, the abscissa is equal to (x1+x2) / 2, and the ordinate is equal to (y1+y2) / 2, wherein x1 and x2 are respectively the maximum abscissa and the minimum abscissa of the area covered by the irrigation area, and y1 and y2 are respectively the maximum ordinate and the minimum ordinate of the area covered by the irrigation area; Each of the nodes is uniquely identified by an address, which is preset, and the coordinate value of each node is preset; Each of the nodes stores a node table, and a node table entry includes an address, a node type, energy, coordinates, and a life cycle; the node type value of the user node is 0, the node type value of the head node is 1, and the node type value of the member node is 2.
3. The method for implementing a real-time data collection and monitoring system for an irrigation area according to claim 2, characterized in that: Each of the nodes establishes a node table by sending a node message, wherein the address and node type in the node message are its own address and node type, the energy is the current energy value, and the coordinates are the current coordinates; If a neighbor node that receives the node message has a node table entry whose address is equal to the address in the node message, the node type, energy and coordinates of the node table entry are set to the node type, energy and coordinates in the node message respectively, and the life cycle is set to the maximum value; otherwise, the neighbor node creates a node table entry, the address of the created node table entry is equal to the address in the node message, the node type, energy and coordinates of the node table entry are set to the node type, energy and coordinates in the node message respectively, and the life cycle is set to the maximum value.
4. The method for implementing a real-time data collection and monitoring system for an irrigation area according to claim 1, characterized in that: The method further comprises: If the member node does not have a node table entry that meets condition 1 and satisfies formula (1), it marks itself as the head node; Condition 1: The node type of the node entry is 1, and the distance between the coordinates and the virtual node coordinates is less than the distance between the member node coordinates and the virtual node coordinates; e1>θ×e2(1) Wherein, e1 is the current energy value of the member node, e2 is the initial energy value of the member node, and θ is an adjustment parameter, ranging from 0.5 to 0.9; If the member node does not have a node table entry that meets condition 1 and does not satisfy formula (1), then all node table entries that meet condition 2 are selected, and a node table entry with the largest energy value is selected from the node table entries that meet condition 2, and an election message is sent, the address of the message is equal to the address in the node table entry; Condition 2: The node type of the node table entry is 2, and the distance between the coordinates and the virtual node coordinates is less than the distance between the member node coordinates and the virtual node coordinates; If the address of the member node that receives the election message is equal to the address in the election message, it sets itself as the head node.
5. The method for implementing a real-time data collection and monitoring system for an irrigation area according to claim 1, characterized in that: Each data set is uniquely identified by coordinates; Each node stores a data table. A data table item contains coordinates and data sets. The data table is initially empty. Each node stores a cache table. A cache table entry contains coordinates and data sets. The initial state of the cache table is an empty table. Each node stores a request table. A request table entry contains coordinates and life cycle. The initial state of the request table is an empty table. In the request message sent by the first node, the coordinates are equal to its own coordinates, the hop limit value is the preset value h1, and the set clock value is set to (t1+t2)×h1, t1 is the delay in forwarding the request message between neighbor nodes, and t2 is the delay in forwarding the response message between neighbor nodes.
6. The method for implementing a real-time data collection and monitoring system for an irrigation area according to claim 1, characterized in that: The method further comprises: In the response message sent by the member node or the head node that receives the request message, the coordinates are equal to the coordinates in the request message, and the data set is composed of the data collected by itself; In the request table entry created by the head node that receives the request message, the coordinates are equal to the coordinates in the request message, and the life cycle is set equal to (t1+t2)×h2, where h2 is equal to the hop limit value in the received request message.
7. The method for implementing a real-time data collection and monitoring system for an irrigation area according to claim 1, characterized in that: The method further comprises: If the first node receiving the response message is the first node sending the request message or there is a request table entry with coordinates equal to the coordinates in the response message, a cache table entry is created; wherein the coordinates and data set of the cache table entry are respectively equal to the coordinates and data set in the response message; In the response message forwarded by the head node that receives the response message, the data set is set to the union of the data sets of all cache entries whose coordinates are equal to the coordinates in the response message.
8. The method for implementing a real-time data collection and monitoring system for an irrigation area according to claim 1, characterized in that: The method further comprises: The data set constructed by the first node sending the request message is equal to the union of the data sets of all cache entries whose coordinates are equal to the coordinates of the first node; In the data table entry created by the first node that sends the request message, the coordinates are equal to its own coordinates, and the data set is equal to the constructed data set.
9. The method for implementing a real-time data collection and monitoring system for an irrigation area according to claim 5, characterized in that: Each node stores a coordinate set, which is an empty set in the initialization state; In the query message sent by the user node, the coordinates are equal to the coordinates identifying the data set to be obtained, the address is equal to the address of a node table entry, the node type of the node table entry is equal to 1, and among all node table entries of the user node whose node type is equal to 1, the coordinates of the node table entry are closest to the coordinates in the query message; In the data message sent by the head node that receives the query message, the coordinates are equal to the coordinates in the query message, and the data set is equal to the data set in the data table item whose coordinates are equal to the coordinates in the query message.
10. The method for implementing a real-time data collection and monitoring system for an irrigation area according to claim 1, characterized in that: The method further comprises: In the query message forwarded by the first node that receives the query message, the address is set to the address of a node table entry, and the node table entry has the closest coordinates to the coordinates in the query message among all node table entries of the first node whose node type is equal to 1. At the same time, the first node adds the coordinates in the query message to its own coordinate set; If the coordinate set of the head node that receives the data message includes the coordinates in the data message, the coordinates in the data message are deleted from its own coordinate set.
Citation Information
Patent Citations
Network data communication implementation method based on cache mechanism
CN110233889A
Irrigation monitoring system implementation method based on Internet of Things
CN112968838A
Implementation method of underwater sensor network data monitoring system based on cache mechanism
CN114157928A
Implementation method of agricultural greenhouse monitoring and early warning system
CN118785295A
Data transmission method, device and system
WO2017063198A1
Cited By
Implementation method of intelligent farmland environment monitoring system
CN119767377A
Implementation method of intelligent irrigation area data monitoring system
CN120528946A
Implementation method of intelligent irrigation district data monitoring system
CN120528946B
Implementation method of intelligent irrigation environment management system
CN120547208A
Implementation method of intelligent irrigation environment management system
CN120547208B