Distributed giant panda collar sensing data synchronous acquisition and preprocessing method

CN122621627BActive Publication Date: 2026-10-09SICHUAN RES INST OF GIANT PANDA SCI
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202611113621.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2026-07-27
Publication Date
2026-10-09
Estimated Expiration
2046-07-27

AI Technical Summary

Technical Problem

由于现有确认信息通常只反映数据包是否成功到达,不能表明各传感通道已经连续处理至哪个采样顺位,也不能标识已完成区间内仍待补回的采样位置,后一边缘计算节点容易对已处理数据再次执行预处理,或者对同一缺失位置重复生成补全值,进而造成相邻处理区间重叠、断开以及标准化数据副本不一致;

Benefits of technology

1、本方案通过项圈转送处理末位和状态区间,使第二边缘计算节点从既定顺位续算,相对减少重复预处理及区间断裂;

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122621627B_ABST
    Figure CN122621627B_ABST
Patent Text Reader

Abstract

The application discloses a distributed giant panda necklace sensing data synchronous acquisition and preprocessing method, and particularly relates to the field of wild animal monitoring and edge computing technology, and comprises the following steps: acquiring a necklace channel sampling value, starting to generate a starting number and incrementing a channel order, generating a sampling code according to the starting number, the channel number and the channel order, and forming a sampling record by associating a sampling time; a first edge computing node collects the sampling record according to the sampling code, forms an interval sequence from an adjacent sampling time difference and a receiving time difference, and extends an alignment table by using an online dynamic time warping algorithm; the absolute values of two interval differences are accumulated in a diagonal grid, a sampling interval is accumulated longitudinally when a bit is broken, a receiving interval is accumulated horizontally when the intervals coincide, the first item in ascending order is taken and backtracking is performed to form an alignment relationship; a state interval generated by the first edge computing node is carried by the necklace, and the last item is processed, so that a second edge computing node continues the time sequence alignment and data preprocessing according to a processing boundary, and the merging of data copies on both sides is completed after communication recovery.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of wildlife monitoring and edge computing technology, and more specifically, to a method for synchronous acquisition and preprocessing of distributed giant panda collar sensor data. Background Technology

[0002] Existing distributed wildlife monitoring methods mostly employ collar-end caching, edge computing node segmented reception, timestamp calibration, lost data retransmission, and central-end aggregation to maintain continuous acquisition and temporal consistency of multi-source sensor data; During the process of a giant panda moving from the coverage area of ​​one edge computing node to the coverage area of ​​another edge computing node, the obstruction of mountains and the wireless attenuation under the forest may prevent adjacent edge computing nodes from exchanging data for a long time. At the same time, the collar is limited by battery capacity and transmission power consumption and cannot continuously transmit all historical sampling records. The previous edge computing node may have already completed the denoising, missing data completion and normalization of part of the sampling interval, while the next edge computing node can only redetermine the processing starting point based on the data currently received. Since the existing confirmation information usually only reflects whether the data packet has arrived successfully, it cannot indicate which sampling sequence each sensing channel has been continuously processed to, nor can it identify the sampling positions that still need to be filled in within the completed interval. The next edge computing node is prone to re-preprocessing the processed data, or repeatedly generating complete values ​​for the same missing position, which can lead to overlapping, disconnection and inconsistency of standardized data copies between adjacent processing intervals. The technical problem to be solved by this application is: how to use a mobile collar to transmit the data processing boundary of the previous edge computing node when adjacent edge computing nodes cannot exchange processing states in a timely manner, so that the next edge computing node can continue to perform preprocessing from the correct sampling position. Summary of the Invention

[0003] To overcome the aforementioned deficiencies in the prior art, embodiments of the present invention provide a distributed giant panda collar sensing data synchronous acquisition and preprocessing method. The collar carries a state interval and processing end position generated by a first edge computing node, enabling a second edge computing node to perform sequential alignment and data preprocessing based on the processing boundary. After communication is restored, the data copies on both sides are merged to solve the problems mentioned in the background art.

[0004] To achieve the above objectives, the present invention provides the following technical solution: a method for synchronous acquisition and preprocessing of distributed giant panda collar sensor data, comprising: S1. Obtain the collar channel sampling value, start generating the start number and increment the channel order, generate the sampling code according to the start number, channel number and channel order, and associate the sampling time to form a sampling record; S2. The first edge computing node collects sampling records according to the sampling code, and forms an interval sequence by the adjacent sampling time difference and the receiving time difference. The alignment table is expanded by the online dynamic time warping algorithm. The absolute value of the difference between the two intervals is accumulated in the diagonal grid. When there is a gap, the sampling interval is accumulated in the vertical grid. When there is an overlap, the receiving interval is accumulated in the horizontal grid. The first item of the cumulative value is taken in ascending order and backtracked to form the alignment relationship. S3. Correct the actual sampled value with the median of three points, interpolate the missing sequence according to the actual sampled values ​​on both sides and the sequence distance, and normalize according to the channel range; use the interval state CRDT algorithm to write the actual sampled, interpolated, and uninterpolated sequence as state two, state one, and state zero, compress the continuous sequence of the same state and determine the last position to be processed, forming the first data copy and boundary record. S4. The collar receives the boundary record, segments it according to the interval endpoints, and extracts items according to the state value, processing round, and node number. It then sends the sampled record to the second edge computing node. The second edge computing node skips the state two record, replaces the state one interpolation value with the actual sampled value, and continues to calculate the alignment table from the last processed position to form the second data copy. S5. After the two edge computing nodes resume communication, they merge data copies according to the same rules, replace the interpolation results with the actual sampling results, and generate synchronous preprocessing datasets and boundary records in the order of sampling codes.

[0005] In a preferred embodiment, S1 includes: S11. Read the local start number and the confirmation start number returned by the edge computing node from the collar non-volatile storage. Write zero for missing fields. Sort the two start numbers in ascending order of value. Read the last item and add one. Generate the start number for this time and write it back to the non-volatile storage. Non-volatile storage refers to the storage area that retains the written data after the collar is powered off, used to save the local start number and read the local start number when the collar is powered on again. The start number refers to the start batch identifier generated each time the collar is started. Sampling records generated during the same start period use the same start number, while different start numbers are used for different start periods. S12. Establish a channel sequence for each sensing channel. When sampling is triggered, read the current channel sequence as the current channel sequence and add a write-back. Then generate a sampling code according to the position of the current start number, channel number and current channel sequence. Write the sampling value and sampling time into the corresponding position of the sampling code to form a sampling record. The sensing channel refers to the data acquisition path corresponding to the output end of a sensor inside the collar. Each sensing channel is configured with a fixed channel number and the channel sequence is recorded independently. The sampled value refers to the value output by the sensing channel when a sampling is triggered and obtained by analog-to-digital conversion. The sampled value and the corresponding sampling time are written together into the sampling record corresponding to the sampling code. S13. Using the sampling code as an index, write the sampling record into the collar data copy and send it to the edge computing node. If the edge computing node does not have the same sampling code in the index, it writes the sampling record, then arranges the sampling codes in the edge data copy in ascending order of value, reads the start number contained in the last item and returns it to the collar to form a confirmation start number.

[0006] In a preferred embodiment, S2 includes: S21. The sampling records of the first edge computing node are concatenated according to the start number and channel number. The number of breaks is obtained by subtracting one from the sequence difference of adjacent sampling codes. The number of overlaps is obtained by the number of times the same sampling code is repeated. The termination alignment grid of the previous processing round is used as the starting grid. If there is no termination alignment grid, the grid corresponding to the first sampling interval and the first receiving interval is used as the starting grid. Then, candidate alignment grids with vertical usage number and horizontal usage number are established, so that the vertical usage number does not exceed the number of breaks and the horizontal usage number does not exceed the number of overlaps, forming an alignment field constrained by the sampling code. The first edge computing node refers to the edge computing device set up in the giant panda's activity area to receive collar sampling records and record the receiving time. The first edge computing node saves the sampling records according to the start number and channel number, and performs alignment table recursion, path summary generation and data copy writing. The termination alignment grid refers to the table position corresponding to the end of the alignment path after the previous processing round has completed backtracking. The row coordinates of the termination alignment grid correspond to the last sampling interval that has participated in the alignment, and the column coordinates correspond to the last receiving interval that has participated in the alignment. It also saves the cumulative interval difference, cumulative offset change, and receiving direction. Usage count refers to the number of times the vertical or horizontal axis has been occupied along the path from the starting cell to the current candidate alignment cell. The vertical usage count records the number of occupied breaks, and the horizontal usage count records the number of occupied overlaps.

[0007] In a preferred embodiment, S2 further includes: S22. Within the alignment domain, an online dynamic time warping algorithm is used to iterate grid by grid. In the diagonal direction, the cumulative result of the absolute value of the difference between the two intervals and the change in the adjacent time difference offset is written. In the vertical direction, the cumulative result of the sampling interval is written only when the number of vertically used cells has not yet reached the number of cutoff cells. In the horizontal direction, the cumulative result of the receiving interval is written only when the number of horizontally used cells has not yet reached the number of overlap cells. Then, each direction is arranged in ascending order according to the number of cutoff cells not consumed, the number of overlap cells not consumed, the cumulative interval difference, and the cumulative offset change. The direction corresponding to the first item is taken over, and candidate cells with insufficient remaining cells to consume the number of cutoff cells or the number of overlap cells are deleted. When the number of vertically used cells in the last cell is equal to the number of cutoff cells and the number of horizontally used cells is equal to the number of overlap cells, the iteration stops, and the candidate alignment relationship is obtained by backtracking. The offset change refers to the absolute change in the difference between the sampling time difference and the receiving time difference corresponding to the current candidate alignment grid, relative to the difference between the sampling time difference and the receiving time difference corresponding to the source grid. Candidate cells refer to alignment table positions that can be reached from the starting cell along the open direction and whose vertical usage does not exceed the number of breaks and horizontal usage does not exceed the number of overlaps. Candidate cells store row and column coordinates, source of inheritance, vertical usage, horizontal usage, cumulative interval difference, and cumulative offset change.

[0008] In a preferred embodiment, S2 further includes: S23. Generate a path summary for the candidate alignment relationship according to the continuous sampling code interval and write it to the data copy of the first edge computing node. If a path summary already exists in the same sampling code interval, compare the start cell, end cell, and direction sequence of the two summaries. If the three items are consistent, confirm the candidate alignment relationship. If any item is inconsistent, re-execute S22 from the start cell that is common to both summaries, and replace the conflicting interval with the first item after the cumulative interval difference, cumulative offset change, and direction sequence are arranged in ascending order, until the same end cell and path summary are obtained in two adjacent recalculations, and output the alignment relationship. The direction sequence refers to the sequential string of diagonal, vertical, and horizontal directions recorded in the order of the path when traversing from the starting grid to the ending grid. It is used to represent the grid-by-grid correspondence between the sampling interval and the receiving interval.

[0009] In a preferred embodiment, S3 includes: S31. Based on the alignment relationship, divide the continuous sampling interval according to the channel order. For each non-endpoint sampling value in the interval, read the sampling values ​​on both sides of the adjacent side and arrange them in ascending order of value. Replace the current sampling value with the middle term and generate the correction difference with the absolute value of the difference between the values ​​before and after the replacement. The original sampling value is retained at the endpoint of the interval and the correction difference is written to zero to form a correction sequence. The actual sampling interval refers to the set of sampling records under the same start number and the same channel number, where the channel order is continuous and each channel order has a sensor value. The first and last positions of the interval are respectively used as the two endpoints of the actual sampling interval. Actual sampled value refers to the sensor value that the collar's sensor channel actually collects and writes into the sampling record in the corresponding channel sequence, excluding the interpolated value calculated based on adjacent actual sampled values; S32. For the missing sequence between adjacent sampling intervals, read the correction values ​​and correction difference at both ends. Distribute the difference between the correction values ​​at both ends according to the ratio of the distance from the missing sequence to the left sequence to the distance between the two sequences. Superimpose the left correction value to obtain the interpolated value. Distribute the correction difference at both ends according to the same ratio to obtain the error radius. Then convert the interpolated value and its upper and lower error boundaries into normalized values ​​and normalized error intervals according to the channel range. Stop generating interpolated values ​​when there is no sampling value on either side of the missing sequence, forming a preprocessing sequence. The missing sequence refers to a channel sequence that is located between two existing channel sequences under the same start number and the same channel number but for which no corresponding sampling record has been found; The correction value refers to the value obtained after performing three-point median processing on the non-endpoint actual values ​​within the actual mining interval. When the three-point median processing is not performed on the endpoints of the interval, the correction value is taken as the original actual value of the corresponding endpoint. Channel range refers to the range of values ​​formed by the lower and upper limits of the sensor corresponding to the sensing channel. It is used to convert correction values, interpolation values, and error boundaries into dimensionless normalized results.

[0010] In a preferred embodiment, S3 further includes: S33. The interval state CRDT algorithm is used to generate state items for the preprocessed sequence bit by bit. The state item is written as state 2 in the order of the actual sequence, state 1 in the order of the missing sequence of the generated interpolation value, and state 0 in the order of the missing sequence of the no-interpolation value. The state value, processing round, error radius and node number are written into the state item. When multiple state items appear in the same order, they are first arranged in ascending order of state value and the last item is read. If the state values ​​are the same, they are arranged in ascending order of processing round and the last item is read. If the processing rounds are the same, they are arranged in ascending order of error radius and the first item is read. If the error radius is the same, they are arranged in ascending order of node number and the first item is read. Then, the consecutive order with consistent state items is compressed into a state interval. The sequence is scanned from the zero position to the first zero position and the previous order position is read as the last position of processing. If no zero position appears, the last order position is read as the last position of processing, forming the first data copy and boundary record. The status value refers to a discrete numerical value used to mark the data source and processing status corresponding to the channel sequence. Status 2 indicates that there is a sampled value for the corresponding channel sequence, status 1 indicates that there is no sampled value for the corresponding channel sequence but an interpolated value has been generated, and status 0 indicates that there is no sampled value for the corresponding channel sequence and no interpolated value has been generated.

[0011] In a preferred embodiment, S4 includes: S41. The first edge computing node sends the boundary record to the collar. The collar collects the interval endpoints of the received boundary record and the local boundary record, divides the boundary record into two parts according to the endpoint order, and reads the last item after arranging the state values ​​in ascending order in each segmented interval. If the state values ​​are the same, the processing rounds are arranged in ascending order and the last item is read. If the processing rounds are the same, the node numbers are arranged in ascending order and the first item is read, forming a reserved state item. S42. The collar connects the retained status items according to the interval order, merges adjacent segmented intervals with the same status value, processing round and node number into a transmission interval, and writes the transmission interval with the corresponding start number, channel number and processing last position into the sampling record, forming a boundary carrying record and then sends it to the second edge computing node.

[0012] In a preferred embodiment, S4 further includes: S43. The second edge computing node reads the boundary-carried record according to the start number and channel number. It stops processing the corresponding sampling record in the interval corresponding to state two. When the actual sampled value is received in the interval corresponding to state one, the interpolated value is replaced with the actual sampled value and state one is rewritten as state two. When the sampling record is received in the interval corresponding to state zero or after processing the last position, it is written into the continuation queue. Then, the termination alignment grid corresponding to the last position is used as the starting grid for the continuation alignment table. S44. After state one is rewritten to state two, the second edge computing node reads the first state two corresponding cell as the recalculation start point by decreasing the channel order from the rewriting order, and reads the first state two corresponding cell as the recalculation end point by increasing the channel order. If the recalculation end point is not read, the current termination alignment cell is used instead. Then, local alignment is performed from the recalculation start point to the recalculation end point and the state interval is updated to form the second data copy.

[0013] In a preferred embodiment, S5 includes: S51. After the first edge computing node and the second edge computing node resume communication, they concatenate the state items and processing results in each state interval according to the sampling code order, and use the encoding result of the previous sampling code to participate in the encoding of the next sampling code to generate interval fingerprints. Then, they exchange boundary records and interval fingerprints to determine the conflict intervals with different interval fingerprints. The processing result refers to the value written to the data copy after the corresponding sampling code has been corrected by the actual sampled value, interpolated for missing order, and normalized by the channel range; when the corresponding state value is state two, the processing result is the normalized actual sampled value; when the corresponding state value is state one, the processing result is the normalized interpolated value; when the corresponding state value is state zero, the processing result is empty. The encoding result refers to the fixed-length value generated by inputting the status item and processing result corresponding to the current sampling code and the encoding result of the previous sampling code into the same hash operation according to the sampling code order; the first sampling code of the interval replaces the encoding result of the previous sampling code with a pre-fixed value, so that when the content corresponding to any sampling code changes, the encoding result of the current sampling code and all subsequent sampling codes will change accordingly; S52. Recursively divide the conflict interval according to the intermediate sampling code until the divided interval contains only one sampling code. Then, exchange the status items and processing results under the corresponding sampling codes. After arranging the status values ​​in ascending order, read the last item. When the status values ​​are the same, arrange the processing rounds in ascending order and read the last item. When the processing rounds are the same, arrange the node numbers in ascending order and read the first item. Replace the corresponding data on both sides with the read item to form a merged copy. S53. Regenerate interval fingerprints based on merged copies. If interval fingerprints are different, return to S52 to continue segmentation and replacement. If interval fingerprints are the same, merge consecutive intervals in the same state, so that the actual sampling result corresponding to state 2 replaces the interpolation result corresponding to state 1. Then generate synchronous preprocessing datasets and boundary records in the order of sampling codes.

[0014] The technical effects and advantages of this invention are as follows: 1. This solution uses a collar to transfer the last position and state interval, allowing the second edge computing node to continue the calculation from the predetermined order, thereby reducing redundant preprocessing and interval breaks. 2. By using sampling codes to constrain the longitudinal and transverse directions of online dynamic time regularization, gaps and repeated receptions participate in alignment respectively, which relatively improves the identification of timing misalignment; 3. Performing three-point median correction on the actual measured values, and normalizing by order interpolation and range, helps to improve the quality and comparability of heterogeneous sensor data; 4. In the interval state CRDT, the state is limited to one-way advancement and continuous sequence is compressed, so that boundary records can support repeated merging, which relatively improves the consistency of data replicas. 5. Use interval fingerprints to recursively locate conflict sampling codes and complete the state value acquisition item by item, which relatively reduces the overhead of synchronous transmission and comparison after communication is restored. Attached Figure Description

[0015] Figure 1 This is a flowchart of the method of the present invention. Detailed Implementation

[0016] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0017] Refer to the instruction manual appendix Figure 1 The method for synchronous acquisition and preprocessing of distributed giant panda collar sensor data of the present invention includes: S1. Obtain the collar channel sampling value, start generating the start number and increment the channel order, generate the sampling code according to the start number, channel number and channel order, and associate the sampling time to form a sampling record; To ensure that the collar continues to generate distinguishable sampling records under conditions of power failure restart, wireless link interruption, and repeated transmission, this embodiment further limits the writing relationship between the start number, channel sequence, sampling code, and edge data copy; The collar is pre-written with a 64-bit collar number, the start number uses a 32-bit unsigned field, the channel number uses a 16-bit unsigned field, and the channel sequence uses a 32-bit unsigned field. Each field is written in byte order with the most significant bit first. If the number of bits in a field is insufficient, zeros are added to the most significant bit. Edge computing nodes are indexed using a combination of collar number and sampling code, allowing sampling records from different collars to be stored separately. This implementation process includes the following steps: After the collar is powered on, the local start number is first read from the non-volatile memory, and then the confirmation start number returned by the edge computing node and consistent with the collar number is read. If any field is missing, zero is written. The two start numbers are arranged in ascending order of unsigned values, and the last item is read and incremented by one. Thus, the start number for this time is generated in S11. The start number is written back to non-volatile memory before the sampling timer is enabled. After the write is completed, it is reread and checked bit by bit. If the check matches, sampling is enabled. If the check does not match, sampling is stopped and the start number is written to the error record. When the last item is a 32-bit all-one value, write the start number overflow record and stop generating sampling records; the start number remains unchanged during the current power-on period and is read by the subsequent sampling code generation process; After the startup number is written, the collar establishes the channel order of each sensing channel according to the fixed channel number mapping table. Each scalar output of the multi-component sensor occupies a sensing channel. Each sensing channel sets the current channel order to zero during this startup. After sampling is triggered, the current channel sequence is read as the current channel sequence, and the current channel sequence is incremented by one and written back first. Then, in S12, the current start number is written to the high bit of the sampling code, the channel number is written to the middle bit of the sampling code, and the current channel sequence is written to the low bit of the sampling code to generate an eighty-bit sampling code. The sensor output is converted from analog to digital to obtain the sampled value. The sampling time is the reading of a 64-bit monotonic timer that has been continuously increasing since the collar was started. The timing unit is microseconds. The sampled value and sampling time are then written into the corresponding position of the sampling code to form a sampling record. If a power outage occurs after the channel sequence is written back and the sampling record is not written, the corresponding missing bit is retained; if the current channel sequence is all 32 bits of one value, the sampling of the corresponding sensor channel is stopped and the channel sequence overflow record is written. After the sampling record is formed, the collar writes the collar data copy with the combination of collar number and sampling code as index, and encapsulates the collar number, sampling code, sampling value and sampling time into a transmission frame and sends it to the edge computing node. Each time an edge computing node receives a frame, it reads its own monotonic timer to generate the reception time and writes the collar number, sampling code, reception time, and incremental reception order into the reception log. In S13, the receiving and writing process continues to search for edge data copies. If the combined index does not exist, the sampling record is written. If the combined index already exists and the sampling payload is consistent, the original sampling record is retained and a new receiving log is added. If the combined index already exists and the sampling payload is inconsistent, the receiving payload is written to the payload conflict table and the original sampling record is maintained. After the write operation is completed, the edge computing node reads the start number, channel number, and channel order in the edge data copy corresponding to the same collar number, reads the start number contained in the last item, and returns the collar number and the start number together to form a confirmation record. After the collar verifies the collar number, it writes the returned start number into the confirmation start number field for the next start reading. Taking a single actual operation as an example, the collar number is written as 0000000000000037, the local start number is 18, the confirmed start number is 20, after the collar is powered on, the last item 20 is read and incremented by one to generate the current start number 21; the acceleration horizontal axis corresponds to channel number 0001, the channel sequence is read as 0 for the first sampling, the current channel sequence is first written back to 1, and then the sampling code is generated with start number 21, channel number 0001 and channel sequence 0, and the sampling value and sampling time are written in; When the sent frame is received twice by the edge computing node, the edge data copy saves a sampling record and the reception log saves two reception events for subsequent calculation of the overlap number; after the edge computing node returns the start number 21, the collar reads the local start number 21 and the confirmation start number 21 during the next start and generates the start number 22. By writing the start number first, counting each sensor channel independently, using a joint index of collar number and sampling code, and saving the sampling payload and reception log separately, the sampling records can maintain index consistency across start batches and edge data replicas, and can be used for subsequent gap identification, repeated reception counting, and recursive reading of the alignment table.

[0018] S2. The first edge computing node collects sampling records according to the sampling code, and forms an interval sequence by the adjacent sampling time difference and the receiving time difference. The alignment table is expanded by the online dynamic time warping algorithm. The absolute value of the difference between the two intervals is accumulated in the diagonal grid. When there is a gap, the sampling interval is accumulated in the vertical grid. When there is an overlap, the receiving interval is accumulated in the horizontal grid. The first item of the cumulative value is taken in ascending order and backtracked to form the alignment relationship. In response to situations where the collar sampling time and the edge reception time belong to different timing processes, wireless retransmission causes the same sampling code to arrive multiple times, and power failure causes sampling code gaps, this implementation uses the sampling code to fix the sampling identity, uses the edge reception log to retain each arrival event, and then writes the number of gaps and the number of repeated receptions into the path constraints of the online dynamic time warping process. The first edge computing node establishes an alignment table only within the same collar number, same start number, and same channel number range. Both sampling and receiving times are converted to microsecond integers. The sampling time is taken from the collar's monotonic timer reading, and the receiving time is taken from the first edge computing node's monotonic timer reading. The two absolute times are not directly subtracted; they are only used to form the sampling interval and receiving interval, respectively. This implementation process includes the following steps: After entering the sampling record collection stage, the first edge computing node first separates the edge data replica and the receiving log by collar number, and then concatenates the sampling records in the edge data replica according to the start number, channel number and channel order. After removing duplicate sampling codes from the sampling record, the order of adjacent channels is read one by one. The current number of breaks is obtained by subtracting the order of the previous channel from the order of the next channel and then subtracting one. The number of breaks at each adjacent position is added together to form the number of breaks. The received logs are concatenated in the order of reception. The number of received records for each sample code is reduced by one to obtain the number of overlaps for the current sample code. The number of overlaps for each sample code is then added together to form the overlap count. When there is only one received log, the overlap count is written as zero. The sampling times of adjacent sampling records are subtracted to form a sampling interval sequence, and the receiving times of adjacent receiving logs are subtracted to form a receiving interval sequence. When the first item of any sequence has not yet been formed, the establishment of the alignment field is paused and the existing records are retained. After having two interval sequences, S21 reads the termination alignment grid from the previous processing round, where the collar number, start number, channel number and first edge computing node number are all consistent. The sampling axis position saved in the termination alignment grid is used as the starting row and the receiving axis position is used as the starting column. If the terminating alignment cell is not read, the starting cell is established at the corresponding position of the first sampling interval and the first receiving interval, and the absolute value of the difference between the two intervals is written into the cumulative interval difference, and the cumulative offset change, the vertical usage number and the horizontal usage number are written to zero. Each candidate alignment cell is identified by its row coordinates, column coordinates, vertical usage count, and horizontal usage count. Different combinations of usage counts under the same row and column coordinates are stored separately. The vertical usage count records the number of breaks in the path that have been occupied, and the horizontal usage count records the number of overlaps in the path that have been occupied. Combinations where the number of vertically used bits exceeds the number of breaks or the number of horizontally used bits exceeds the number of overlaps are not written into the candidate alignment grid, thus forming an alignment field constrained by the sampled code; After the alignment domain is initialized, the online dynamic time warping process expands the candidate alignment grid in ascending order of rows and columns; S22 opens the diagonal direction when there is a next item in both the current row and the current column, and adds the absolute value of the difference between the current sampling interval and the current receiving interval to the cumulative interval difference of the receiving source grid, and at the same time subtracts the difference between the two intervals of the source grid from the difference between the current two intervals and takes the absolute value, and adds it to the cumulative offset change. When the current row is at a sampling code break position and the vertical usage number has not reached the break number, the vertical direction is opened, the cumulative interval difference of the source grid is added to the current sampling interval, and the vertical usage number is incremented by one; When the current column belongs to the same sampling code repeated reception position and the horizontal usage number has not reached the overlap number, the horizontal direction is opened, the cumulative interval difference of the source grid is added to the current reception interval, and the horizontal usage number is incremented by one; if the direction is not opened, an unreachable flag is written, and it is not used as a zero value for item selection; When multiple candidate results arrive at the same row coordinate, column coordinate, vertical usage count, and horizontal usage count, first calculate the number of cuts and subtract the vertical usage count to obtain the number of cuts not consumed, then calculate the number of overlaps and subtract the horizontal usage count to obtain the number of overlaps not consumed. Subsequently, compare the number of cuts not consumed, the number of overlaps not consumed, the cumulative interval difference, and the cumulative offset change in sequence. Each time, only when the previous comparison item is equal will the next comparison item be entered. When all four items are equal, the first item is read in the encoding order of diagonal direction, vertical direction, and horizontal direction. The current candidate cell is deleted when the number of remaining breakpoint marker rows after the candidate cell is less than the number of unused breakpoints; the current candidate cell is also deleted when the number of remaining overlap marker columns is less than the number of unused overlaps. After recursively reaching the last row and last column of the alignment table, only the last cell with the vertical usage number equal to the number of breaks and the horizontal usage number equal to the number of overlaps is retained. If there is a cell to be retained, backtrack along the source cell to obtain the candidate alignment relationship. If there is no cell to be retained, write the current sampling code interval into the interval to be aligned and wait for the new sampling record or the received log to be added to re-establish the alignment field. After the candidate alignment relationship is formed, the first edge computing node freezes the sampling records and receiving logs that participated in the calculation in this round, and generates a path digest according to the continuous sampling code interval; The path summary is written in S23 with collar number, start number, channel number, start cell, end cell, direction sequence, and input record fingerprint; The direction sequence records the diagonal, longitudinal, and lateral directions according to the path progression order. The three directions are each encoded with a fixed two-bit code. The input record fingerprint is generated by encoding the current round sampling code, sampling time, reception sequence, and reception time in a fixed field order. If the data copy does not contain a path digest for the same continuous sampling code interval, the candidate alignment relationship and path digest are written directly. If a path digest already exists, the start cell, end cell, and direction sequence are compared first. If the three items are consistent bit by bit, the candidate alignment relationship is confirmed. If there is a discrepancy, the comparison is started from the original start cell of the two direction sequences and the last identical cell before the first divergence is read as the common start cell. When the first cell is the cell where the divergence occurs, the initial cell of the current continuous sampling code interval is read. The first edge computing node re-executes the alignment domain recursion from the common starting grid, and compares the cumulative interval difference, cumulative offset change and direction sequence encoding of the recalculated candidate paths in turn, and reads the first item to replace the conflict interval after the incremental arrangement. When two consecutive recalculations result in the same termination cell, the same direction sequence, and the same input record fingerprint, the recalculation stops and the alignment relationship is output. If all candidate cells are deleted during the recalculation process, the conflict interval is written into the interval to be aligned, and the loop does not continue. In a real-world scenario: collar number 0000000000000037 forms channel sequences 0, 1, 3, and 4 under startup number 21 and channel number 0001. The first edge computing node identifies sequence 2 as a breakpoint based on this. The frame sent in sequence 3 of the sampling code is received twice, and the reception log saves two records. The overlap number is obtained by subtracting one from the number of received records. In the alignment field, the vertical usage count can only be increased once in the row corresponding to position 2, and the horizontal usage count can only be increased once in the column corresponding to position 3 after repeated reception. Other positions do not open the corresponding direction; the last cell consumes one break and one overlap to complete the backtracking. If the new receiving log causes the receiving interval corresponding to sequence 3 to change, the first edge computing node will recalculate from the same cell before the first divergence between the old path and the new path until it obtains the same termination cell and path summary twice in a row. The resulting alignment can distinguish between collar sampling gaps, repeated wireless reception, and reception delay variations, and can be used for subsequent real-value correction, missing sequence interpolation, and state interval generation and reading.

[0019] S3. Correct the actual sampled value with the median of three points, interpolate the missing sequence according to the actual sampled values ​​on both sides and the sequence distance, and normalize according to the channel range; use the interval state CRDT algorithm to write the actual sampled, interpolated, and uninterpolated sequence as state two, state one, and state zero, compress the continuous sequence of the same state and determine the last position to be processed, forming the first data copy and boundary record. After aligning the sampling order with the receiving order, the sensor values ​​whose source can be confirmed need to be converted into continuous preprocessing results, and the actual sampling, interpolation, and incomplete positions need to be written into a state structure that can be merged between different edge computing nodes. This implementation method limits the processing range by collar number, start number and channel number, and reads the alignment relationship along the channel order; when the received load of the same sampling code is consistent bit by bit, one sampled value is retained; when the received load is inconsistent, the corresponding channel order is written into the load conflict table. This round does not participate in the correction of the sampled value and the missing order interpolation. The channel range, node number, and numerical precision are read from the channel configuration table of the edge computing node, where the node number is fixed at deployment and remains unique across all edge computing nodes; the implementation process includes the following steps: Scan the channel sequence along the same start number and the same channel number, and connect the sampling records that have consecutive actual sampling values ​​and have not been written into the load conflict table to form the actual sampling interval; When the interval length is one, the actual sampled value is retained; when the interval length is two, two actual sampled values ​​are retained, and the corresponding correction difference is written to zero. When the interval length reaches three, for each non-endpoint, read the previous actual value, the current actual value and the next actual value in sequence, arrange them in ascending order of value and read the middle term, replace the current actual value with the middle term, and take the absolute value of the replacement value minus the original actual value to obtain the correction difference. The two endpoints retain the original actual values ​​and write the correction difference to zero. The correction sequence formed by S31 saves the correction value and correction difference according to the channel order. The load conflict order and the order in which no sampling record was retrieved are not written into the correction value, and are read for missing order processing. When there is a missing order between adjacent sampling intervals, read the left order, the right order, and the corresponding correction values ​​and correction differences at both ends; Subtract the left position from the current missing position, then divide by the right position minus the left position to obtain the position ratio. Subtract the left correction value from the right correction value, multiply by the position ratio, and then add it to the left correction value to generate the interpolation value. In S32, the same position ratio is used for error propagation. The result of multiplying the left correction difference by one and subtracting the position ratio is added to the result of multiplying the right correction difference by the position ratio to obtain the error radius. The lower boundary of the error is obtained by subtracting the error radius from the interpolation value, and the upper boundary of the error is obtained by adding the error radius to the interpolation value. The upper limit of the channel range minus the lower limit of the channel range forms the range span. The correction value, interpolation value, and two error boundaries are each subtracted from the lower limit of the channel range and then divided by the range span to generate the normalized measured value, the normalized interpolation value, and the normalized error interval. When the range span is zero, stop the normalization of the current channel and write the range configuration error record. When the value exceeds the channel range, retain the conversion result and do not perform truncation. If there is no actual sampled value on either side of the missing sequence, either side is written into the load conflict table, or the two ends do not belong to the same start number and the same channel number, no interpolated value is generated, and the corresponding channel sequence is written into the uninterpolated table. The preprocessing sequence is formed by the corrected sequence, the normalized interpolated value, and the uninterpolated table. Before the preprocessed sequence is written to the first data copy, a state item is established sequentially for each channel: if a normalized actual sample value exists, state two is written, and the normalized correction difference is used as the error radius; if no actual sample value exists but a normalized interpolated value has been generated, state one is written, and half the width of the normalized error interval is used as the error radius; if no normalized interpolated value has been generated or there is a load conflict in the corresponding sequence, state zero is written, and the error radius is zero. The status item in S33 also includes the processing round and node number. When it is generated for the first time, the processing round is written to zero. When the same sampling code already has a boundary record, the original processing round is inherited. When the status value or processing result changes, it is incremented by one. When the input and processing result do not change, the original processing round is maintained. State updates are only allowed to transition from state zero to state one or state two, or from state one to state two. The order of state two already written is not rolled back due to the arrival of an old copy. When there are multiple local candidate status items at the same priority, first read the last item in ascending order of status value. If the status values ​​are the same, read the last item in ascending order of processing round. If the processing rounds are still the same, read the first item in ascending order of error radius. If the error radius is still the same, read the first item in ascending order of node number. The status entries are split into interval headers and interval loads. The interval header stores the start order, end order, status value, processing round, and node number. The interval load stores the error radius and processing result bit by bit. When the status values, processing rounds, and node numbers of consecutive orders are consistent, they are merged into one status interval. Starting from channel zero, the state interval is scanned. When the first state zero is in the zero position, the last processing position is written as negative one. When the first state zero is in other positions, the previous position is written as the last processing position. When no state zero appears, the tail position is written as the last processing position. When the preprocessing sequence is empty, negative one is also written. The first data copy stores the status items, processing results, and error radius corresponding to each sampling code. The boundary record stores the collar number, start number, channel number, status interval, processing last position, processing round, node number, and the alignment grid corresponding to the processing last position, for collar transfer and second edge calculation node continuation calculation. The above processing is illustrated with a set of continuous sampling data: Under the same ring number, start number 21 and channel number 0001, the actual sampling values ​​of channels 0, 1, 2 and 4 are 10, 80, 12 and 16 respectively, while no sampling record was received for channel 3; The sequence from 0 to 2 forms a sampling interval of length three. After reading 10, 80 and 12, 80 is replaced with the middle term 12, and the correction difference is 68. The sequence 3 is located between sequence 2 and sequence 4, with a position ratio of half and an interpolation value of 14. The error radius is obtained by distributing the correction differences of sequence 2 and sequence 4 in half and then adding them together. After completing the range normalization, the order 0, 1, 2 and 4 are written to state 2, the order 3 is written to state 1, the continuous state 2 interval and state 1 interval are written to the boundary record respectively, and the last digit is processed by taking the order 4. When the actual sampled value of sequence 3 is received subsequently, state 1 is updated to state 2 and the processing round is increased. The original interpolation result is replaced by the normalized actual sampled value. The first data copy generated in this way retains the actual sampled correction result and interpolation error, and is transmitted to the collar and read by distributed copy merging through one-way state update and interval compression.

[0020] S4. The collar receives the boundary record, segments it according to the interval endpoints, and extracts items according to the state value, processing round, and node number. It then sends the sampled record to the second edge computing node. The second edge computing node skips the state two record, replaces the state one interpolation value with the actual sampled value, and continues to calculate the alignment table from the last processed position to form the second data copy. After the first data copy is formed, the boundary record needs to be transferred to another edge computing node via the collar, and the order of state items, processing progress and alignment of the continuation position should be kept consistent during the transfer process. In this implementation, the boundary record is defined as a data structure consisting of collar number, start number, channel number, state interval, last processing position, processing round, node number and alignment anchor point. The state interval adopts a closed interval that simultaneously contains the start order and the end order. The alignment anchor point stores the sampling axis position, sampling time, vertical usage number, horizontal usage number and receiving direction corresponding to the last processing position. The local boundary records stored in the collar originate from previously received and merged boundary records; the collar does not independently generate processing status. This implementation process includes the following steps: After a boundary record arrives at the collar, S41 first searches the local boundary record by collar number, start number and channel number. If the search results are inconsistent, they are saved separately and do not participate in the same group of item retrieval. When the search results are consistent, the starting and ending positions of each state interval in the received boundary record and the local boundary record are collected, arranged in ascending order and duplicate endpoints are removed. Then, adjacent endpoints are used to form non-overlapping segmented intervals. If any boundary record does not cover a certain segmentation interval, write state zero, processing round zero, and all-one node number on the missing side; if there are state items on both sides, first arrange the state values ​​in ascending order and read the last item; if the state values ​​are the same, arrange the processing rounds in ascending order and read the last item; if the processing rounds are still the same, arrange the node numbers in ascending order and read the first item. State 2 replaces either State 1 or State 0, and State 1 replaces State 0. Under the same state value, the processing round determines the order of data processing, and the node number eliminates the item selection divergence only when the processing rounds are consistent. After each segmentation interval is compared, a reserved status item is written, and the processing result, error radius, and alignment anchor point in the boundary record to which the reserved status item belongs are inherited. When the receiving boundary record field is missing, the interval endpoint is reversed, or the state intervals within the same boundary record overlap, the collar retains the original boundary record and writes the receiving boundary record into the boundary exception table; After the item is retrieved from each interval, the collar retains the status item according to the order between the segments. When the status value, processing round and node number of adjacent segments are consistent, the interval endpoints are merged. The error radius and processing result are still written into the interval load according to the channel order, thus forming the transmission interval. In the process of generating the transmission interval, S42 continues to read the sequence of each channel, scanning from sequence zero to the first state zero. When the first state zero is located at sequence zero, the last bit of processing is written as negative one. When it is located at other sequences, the previous sequence is read as the last bit of processing. When no state zero appears, the tail sequence is read as the last bit of processing. When the last digit of the reserved status item belongs to the received boundary record, read the alignment anchor point in the received boundary record; when it belongs to the local boundary record, read the alignment anchor point in the local boundary record. The collar associates the transmission interval, start number, channel number, processing end and alignment anchor point into the boundary record area of ​​the same transmission frame, and writes the subsequent sampling record into the sampling record area of ​​the transmission frame, forming a boundary carry record; When the boundary record area exceeds the length of a single frame payload, the collar divides the boundary record into fixed byte lengths and writes the boundary record number, fragment order, total number of fragments and check value in sequence. The second edge computing node only reassembles the boundary carry record after all fragments with the same boundary record number have arrived and the check results are consistent. When a fragment is missing, the received fragment is retained and the local status interval is not updated. After receiving the complete boundary record, the second edge computing node first establishes a read partition according to the collar number, start number and channel number, and writes the transmission interval into the boundary area of ​​the second data copy; After the sampling record enters the processing range of S43, the corresponding sequence of state two no longer performs actual value correction, interpolation and normalization, but each reception still writes the sampling code, reception time and reception sequence into the reception log to retain the number of repeated receptions and reception intervals. When the sampled value is received in the sequence corresponding to state one, the sampling code and sampling payload are first verified. After the verification is passed, the sampled value is written to the second data copy, the interpolation result corresponding to the same sampling code is deleted, state one is rewritten to state two and the processing round is incremented by one; the sampled record corresponding to state zero and the last processed position are written to the continuation queue. When the second edge computing node continues to calculate the alignment table, it only inherits the sampling axis position, sampling time, vertical usage number, horizontal usage number and receiving direction in the alignment anchor point, and does not inherit the receiving axis column coordinates, cumulative interval difference and cumulative offset change of the first edge computing node. The second edge computing node establishes the zero position of its receiving axis with the first continuous processing sampling record after the boundary-carrying record arrives, and writes the cumulative interval difference and cumulative offset change to zero, forming the receiving interval from the next receiving record. If there is only one sampling record in the continuation queue, the alignment table is not expanded. The calculation continues after the next sampling record arrives and forms the first reception interval. After the actual value is written and causes state one to change to state two, the second edge computing node reads the first state two cell before the rewriting order in descending order along the channel, and reads the first state two cell after the rewriting order in ascending order along the channel. If the cell corresponding to state two on the left exists, it serves as the starting point for recalculation. If state two is not read on the left, the first aligned cell under the same start number and channel number is read. If the first aligned cell has not yet been formed, the rewrite order is written into the queue to be aligned. If the cell corresponding to state 2 on the right exists, it is used as the recalculation endpoint; if state 2 is not read on the right, the current termination alignment cell of the second edge calculation node is used as the recalculation endpoint; if the current termination alignment cell has not yet been formed, the rewritten state 2 is retained and the local recalculation is paused. After the recalculation boundary is determined, S44 freezes the sampling records and receiving logs between the recalculation start point and the recalculation end point, recalculates the local alignment path according to the direction opening, cost recursion and candidate cell deletion rules of S22, and then recalculates the correction value, interpolation value and normalization value of the affected order according to the updated alignment relationship. The state update still follows the order of transitioning from state zero to state one or state two, and from state one to state two; state two is not rolled back. After the local recalculation is completed, the state interval is compressed again, and the state zero is scanned from the sequential zero to update the last bit of the processing, forming a second data copy and the boundary record saved by the second edge computing node; For example, the receiving boundary record generated by the first edge computing node includes the state two intervals in order 0 to 7, the state one intervals in order 8 to 9, and the state zero interval in order 10. The original local boundary record of the collar includes the state two intervals in order 0 to 5 and the state one intervals in order 6 to 8. After the collar is divided into two boundary records according to the order 0, 6, 8, 9, 10 and 11, the state 2 corresponding to the processing round is retained in order 0 to 5, the state 1 is replaced by state 2 in order 6 to 7, the state 1 corresponding to the processing round is retained in order 8, the state 1 in the receiving boundary record is retained in order 9, and the last processing position is written as 9. After the second edge computing node receives the actual sampled value of sequence 8, it first writes the actual sampled value and deletes the interpolation result, then rewrites sequence 8 to state 2, and performs local alignment and preprocessing update from the cell corresponding to sequence 7 to the cell corresponding to sequence 9. The boundary records transmitted via the collar thus define the skip interval, insertion position, continuation start point, and recalculation range of the second edge computing node, enabling the processing progress in the first data copy to continue to the second data copy when the edge computing node cannot communicate directly.

[0021] S5. After the two edge computing nodes resume communication, they merge data copies according to the same rules, replace the interpolation results with the actual sampling results, and generate synchronous preprocessing datasets and boundary records according to the sampling code order. After the first edge computing node and the second edge computing node re-establish communication, it is necessary to locate the difference sampling code without exchanging all data copies, and to ensure that both sides obtain consistent processing results according to the same item extraction order. This implementation first divides the synchronization range according to the collar number, start number, and channel number, and then forms a common interval by recording the interval endpoints of both sides; when any edge computing node lacks a corresponding interval, it writes state zero, processing round zero, all-one node number, and empty processing result to the missing side; The status items are encoded in a fixed field order of status value, processing round, error radius and node number. The processing result is converted to a fixed-length integer using the number of decimal places specified in the channel configuration table. All fields are concatenated in byte order with the most significant byte first. The empty processing result corresponding to status zero is written to a fixed null value marker. This implementation method uses the same hash operation and the same fixed-length pre-value to generate interval fingerprints, ensuring that the same field content yields the same encoding result; the specific processing is as follows: After the common interval on both sides is determined, the first edge computing node and the second edge computing node read the status item and the processing result in the order of the sampling code, respectively. The first sampling code in the interval is used as the previous encoding result by pre-fixed value. Subsequent sampling codes are generated by inputting the encoding result of the previous sampling code, the current sampling code, the current state item, and the current processing result into a hash operation in sequence, and the resulting fixed-length value is used as the current encoding result. The interval starting sampling code, the interval ending sampling code, the number of sampling codes in the interval, and the encoding result of the last item together constitute the interval fingerprint. The S51 exchange process only sends boundary records and interval fingerprints. When the start sampling code, end sampling code, number of sampling codes and tail item encoding results are all consistent, it is confirmed that there is no difference in the corresponding interval. When any field is inconsistent, the corresponding common interval is written into the conflict interval table. Each time a sub-interval fingerprint is generated, the same pre-fixed value is reused, and the encoding results outside the sub-interval are not inherited, so as to prevent the difference of a sampling code from causing continuous display conflicts in all subsequent sub-intervals; When the boundary record or interval fingerprint is not received completely, retain the current data copy and record the incomplete synchronization interval, and continue the comparison after the missing data arrives; After the conflict interval enters S52, it is divided according to the actual number of sampled codes contained in the interval; when the number of sampled codes is even, the first half of the sampled codes form the left sub-interval, and the remaining sampled codes form the right sub-interval; when the number of sampled codes is odd, the middle sampled code is assigned to the left sub-interval. The interval fingerprints are regenerated from the two sub-intervals with the previous fixed values. Only the sub-intervals with inconsistent fingerprints are further segmented until the leaf interval contains only one sampling code. When there is no sampling code on one side of the leaf interval, generate state zero, processing round zero, all-one node number and empty processing result for the missing side; when there are state items on both sides, first arrange them in ascending order of state value and read the last item; if the state values ​​are the same, arrange them in ascending order of processing round and read the last item; if the processing rounds are still the same, arrange them in ascending order of node number and read the first item. The read item and processing result are written to the corresponding sampling codes on both sides to form a merged copy; when the read item is in state two, the normalized actual sampled value is retained; when the read item is in state one, the normalized interpolated value is retained; when the read item is in state zero, the processing result is written blank. If the status value, processing round, and node number are the same but the processing results are different, it means that the same node and the same processing round produced different loads. The two edge computing nodes write the sampling code into the replica anomaly table and regenerate the processing results based on the saved sampling records, alignment relationship, and channel configuration. The recalculation result is written to the merged copy only after each bit is consistent. If it is still inconsistent, the current sampling code synchronization is stopped. No original processing result is overwritten by another processing result. After the leaf interval completes the item retrieval, S53 regenerates the fingerprints of each level of sub-interval according to the merged copy, and verifies them level by level from the leaf interval to the common interval. If the fingerprints of any sub-interval are still inconsistent, the code-by-code exchange and item retrieval process of that sub-interval is re-entered; if the status items and processing results of all leaf intervals are consistent but the fingerprints of the upper-level interval are still inconsistent, the cached fingerprints on both sides are deleted, and the fingerprints are recalculated once according to the unified field encoding. If they are still inconsistent after recalculation, they are written to the encoding exception table and the synchronization of that interval is stopped. During the recursive process, each segmentation reduces the number of sampled codes contained in the sub-interval. Once a single sampled code interval has completed its item extraction, it is no longer segmented. Therefore, the synchronization process ends when all conflicting sampled codes have completed their item extraction or have been written to the exception table. The merged copies with consistent fingerprints are then reconstructed in the order of the sampling codes. When the consecutive state values, processing rounds and node numbers are consistent, the endpoints of the merged intervals are merged. The error radius and processing results are still saved bit by bit in the interval load. The normalized actual sampled value corresponding to state two covers the normalized interpolated value corresponding to state one. After completing the interval compression, start scanning the first state zero from the channel sequence zero. When the first state zero is in sequence zero, write the last processing bit as negative one. When it is in other sequences, read the previous sequence as the last processing bit. When no state zero appears, read the tail sequence as the last processing bit. This generates the synchronous preprocessed dataset and the updated boundary record. Taking the sampling code interval under the same item number, start number 21 and channel number 0001 as an example, the fingerprints of the first data copy and the second data copy are different in the interval from sequence 0 to 15. After recursive segmentation, only the leaf interval corresponding to sequence 8 remains different. In the first data copy, position 8 is state one and the normalized interpolation value is saved. In the second data copy, position 8 is state two and the normalized actual value is saved. After taking the item according to the state value, state two and the corresponding normalized actual value are written on both sides. After regenerating the fingerprint of the interval from 0 to 15, the starting sampling code, ending sampling code, number of sampling codes and tail code results on both sides are consistent. The consecutive state intervals before and after the 8th position are merged, and the last digit is recalculated accordingly. By using interval fingerprinting, code-by-code item extraction, and boundary reconstruction, the two edge computing nodes only exchange data corresponding to the difference intervals, while maintaining consistency in the order of state item extraction, processing results, and boundary records.

[0022] exist Figure 1 It should be noted that the diagram shows the process from top to bottom, following the execution order of the distributed giant panda collar sensor data synchronous acquisition and preprocessing method: sampling record generation, timing alignment of the first edge computing node, data preprocessing, processing boundary transfer, second edge computing node continuation computing, and data copy synchronization. The collar first acquires the sampled values ​​of each sensor channel, generates a sampling code with the start number, channel number and channel sequence, and associates the sampling time to form a sampling record. The first edge computing node then collects the sampling records according to the sampling code, establishes an interval sequence based on the sampling time difference and the reception time difference, and constrains the online dynamic time warping process with the sampling code break and repeated reception position, and backtracks to obtain the alignment relationship. Based on this, the actual sampled values ​​are corrected using three-point median, interpolated values ​​are generated for missing positions and normalized, and then the actual sampled, interpolated, and incomplete states are recorded using the interval state CRDT algorithm to form the first data copy and boundary records. After the boundary records are segmented into intervals and the state items are extracted by the collar, they are sent to the second edge computing node along with the subsequent sampled records. The second edge computing node skips the records that have been processed, replaces the corresponding interpolated values ​​with the late actual sampled values, and continues to perform time alignment and preprocessing from the last processed position to form the second data copy. The diamond-shaped node is used to determine whether the first edge computing node and the second edge computing node have resumed communication. The solid line marked "yes" points to the data copy synchronization process, which means that the two edge computing nodes exchange boundary records and interval fingerprints, locate conflict intervals, and merge status items and processing results to finally generate a synchronized preprocessed dataset. The solid line marked "no" points to the process of continuing to receive sampling records, which means that the second edge computing node continues to update the second data copy independently when communication has not been resumed. Solid arrows in the diagram represent the data transmission and execution relationships that occur in a predetermined order between each processing stage. Dashed arrows represent the loop relationship where the receiving process returns to the second edge computing node to continue the computing process during the period when communication is not restored. This loop does not change the previous processing results, but is only used to continuously receive new sampling records and update the second data copy until the two edge computing nodes resume communication and enter the data copy synchronization process.

[0023] Overall Execution and Implementation: This solution first generates a sampling code for each sensor data point, including the start number, channel number, and channel sequence, using the collar, ensuring that the sampling record remains unique during multiple start-ups and multi-node reception processes. The first edge computing node identifies missing sequences and repeated reception positions based on the sampling code, and then uses an online dynamic time warping algorithm to perform limited alignment between the sampling interval and the reception interval, obtaining the correspondence between the sampling sequence and the reception sequence. Subsequently, the median correction is performed on the actual sampled values, interpolation values ​​are generated for the missing positions that can be determined by the actual sampled values ​​on both sides, and normalization is completed according to the channel range. Then, the actual sampled position, interpolation position and incomplete position are written into the state interval through the interval state CRDT algorithm to form a data copy and processing boundary. After the collar carries the processing boundary into the coverage area of ​​another edge computing node, the second edge computing node skips the completed data, fills in the late-collected data, and continues to align and preprocess from the end of the processing. After the two edge computing nodes resume communication, they locate the data intervals with differences through interval fingerprints, sample the codes one by one, merge the status items and processing results, and finally generate a consistent synchronous preprocessed dataset. For example, when a giant panda moves from a valley covered by the first edge computing node to a forest area covered by the second edge computing node, the first edge computing node has already completed the actual sampling processing of channel order zero to seven, and generated interpolation results for order eight and nine. After receiving the processing boundary, the collar sends the record along with the subsequent sampled data to the second edge computing node. The second edge computing node no longer processes the order zero to seven repeatedly, but only replaces the original interpolation result when it receives the late sampled value of the order eight, and continues to expand the alignment table from the last processed position. After the two edge computing nodes reconnect, the system determines that there is a difference in sequence eight through interval fingerprinting, and then replaces the interpolation state with the actual sampling state so that the data replicas on both sides get the same result. Thus, the collar can still continuously transmit the processing progress under the conditions of forest obstruction, link interruption and repeated transmission, avoiding repeated preprocessing, incorrect interpolation and inconsistency of replicas.

[0024] The above description is merely a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the protection scope of the present invention.

Claims

1. A method for synchronous acquisition and preprocessing of distributed giant panda collar sensor data, characterized in that, include: S1. Obtain the collar channel sampling value, start generating the start number and increment the channel order, generate the sampling code according to the start number, channel number and channel order, and associate the sampling time to form a sampling record; S2. The first edge computing node collects sampling records according to the sampling code, and forms an interval sequence by the adjacent sampling time difference and the receiving time difference. The alignment table is expanded by the online dynamic time warping algorithm. The absolute value of the difference between the two intervals is accumulated in the diagonal grid. When there is a gap, the sampling interval is accumulated in the vertical grid. When there is an overlap, the receiving interval is accumulated in the horizontal grid. The first item of the cumulative value is taken in ascending order and backtracked to form the alignment relationship. S3. Correct the actual sampled value with the median of the three points, interpolate the missing sequence according to the actual sampled values ​​on both sides and the sequence distance, and normalize according to the channel range. Using the interval state CRDT algorithm, the order of actual sampling, interpolation, and non-interpolation is written as state two, state one, and state zero, respectively. The consecutive order of the same state is compressed and the last position is determined to form the first data copy and boundary record. S4. The collar receives the boundary record, segments it according to the interval endpoints, and extracts items according to the state value, processing round, and node number. It then sends the sampled record to the second edge computing node. The second edge computing node skips the state two record, replaces the state one interpolation value with the actual sampled value, and continues to calculate the alignment table from the last processed position to form the second data copy. S5. After the two edge computing nodes resume communication, they merge data copies according to the same rules, replace the interpolation results with the actual sampling results, and generate synchronous preprocessing datasets and boundary records according to the sampling code order. S2 includes: S21. The sampling records of the first edge computing node are connected in series according to the start number and channel number. The number of breaks is obtained by subtracting one from the sequence difference of adjacent sampling codes. The number of overlaps is obtained by the number of times the same sampling code is repeated. The end alignment cell of the previous processing round is used as the starting cell. When there is no terminating alignment grid, the grid corresponding to the first sampling interval and the first receiving interval is used as the starting grid. Then, candidate alignment grids with vertical usage number and horizontal usage number are established, so that the vertical usage number does not exceed the number of breaks and the horizontal usage number does not exceed the number of overlaps, forming an alignment field constrained by the sampling code. S22. Within the alignment domain, an online dynamic time warping algorithm is used to iterate grid by grid. In the diagonal direction, the cumulative result of the absolute value of the difference between the two intervals and the change in the adjacent time difference offset is written. In the vertical direction, the cumulative result of the sampling interval is written only when the number of vertically used cells has not yet reached the number of cutoff cells. In the horizontal direction, the cumulative result of the receiving interval is written only when the number of horizontally used cells has not yet reached the number of overlap cells. Then, each direction is arranged in ascending order according to the number of cutoff cells not consumed, the number of overlap cells not consumed, the cumulative interval difference, and the cumulative offset change. The direction corresponding to the first item is taken over, and candidate cells with insufficient remaining cells to consume the number of cutoff cells or the number of overlap cells are deleted. When the number of vertically used cells in the last cell is equal to the number of cutoff cells and the number of horizontally used cells is equal to the number of overlap cells, the iteration stops, and the candidate alignment relationship is obtained by backtracking. S23. Generate a path summary for the candidate alignment relationship according to the continuous sampling code interval and write it to the data copy of the first edge computing node. If a path summary already exists in the same sampling code interval, compare the start cell, end cell, and direction sequence of the two summaries. If the three items are consistent, confirm the candidate alignment relationship. If any item is inconsistent, re-execute S22 from the start cell that is common to both summaries, and replace the conflicting interval with the first item after the cumulative interval difference, cumulative offset change, and direction sequence are arranged in ascending order, until the same end cell and path summary are obtained in two adjacent recalculations, and output the alignment relationship.

2. The method for synchronous acquisition and preprocessing of distributed giant panda collar sensor data according to claim 1, characterized in that: S1 includes: S11. Read the local start number and the confirmation start number returned by the edge computing node from the collar non-volatile storage. Write zero for missing fields. Sort the two start numbers in ascending order of value. Read the last item and add one. Generate the start number for this time and write it back to the non-volatile storage. S12. Establish a channel sequence for each sensing channel. When sampling is triggered, read the current channel sequence as the current channel sequence and add a write-back. Then generate a sampling code according to the position of the current start number, channel number and current channel sequence. Write the sampling value and sampling time into the corresponding position of the sampling code to form a sampling record. S13. Using the sampling code as an index, write the sampling record into the collar data copy and send it to the edge computing node. If the edge computing node does not have the same sampling code in the index, it writes the sampling record, then arranges the sampling codes in the edge data copy in ascending order of value, reads the start number contained in the last item and returns it to the collar to form a confirmation start number.

3. The method for synchronous acquisition and preprocessing of distributed giant panda collar sensor data according to claim 2, characterized in that: S3 includes: S31. Based on the alignment relationship, divide the continuous sampling interval according to the channel order. For each non-endpoint sampling value in the interval, read the sampling values ​​on both sides of the adjacent side and arrange them in ascending order of value. Replace the current sampling value with the middle term and generate the correction difference with the absolute value of the difference between the values ​​before and after the replacement. The original sampling value is retained at the endpoint of the interval and the correction difference is written to zero to form a correction sequence. S32. For the missing sequence between adjacent sampling intervals, read the correction values ​​and correction difference at both ends. Distribute the difference between the correction values ​​at both ends according to the ratio of the distance from the missing sequence to the left sequence to the distance between the two sequences. Superimpose the left correction value to obtain the interpolation value. Distribute the correction difference at both ends according to the same ratio to obtain the error radius. Then convert the interpolation value and its upper and lower error boundaries into normalized values ​​and normalized error intervals according to the channel range. Stop generating interpolation values ​​when there are no sampling values ​​on either side of the missing sequence, thus forming a preprocessing sequence.

4. The method for synchronous acquisition and preprocessing of distributed giant panda collar sensor data according to claim 3, characterized in that: S3 also includes: S33. The interval state CRDT algorithm is used to generate state items for the preprocessed sequence bit by bit. The state item is written as state 2 in the order of the actual sequence, state 1 in the order of the missing sequence of the generated interpolation value, and state 0 in the order of the missing sequence of the no generated interpolation value. The state value, processing round, error radius and node number are written into the state item. When multiple state items appear in the same order, they are first arranged in ascending order of state value and the last item is read. If the state values ​​are the same, they are arranged in ascending order of processing round and the last item is read. If the processing rounds are the same, they are arranged in ascending order of error radius and the first item is read. If the error radius is the same, they are arranged in ascending order of node number and the first item is read. Then, the consecutive sequences with consistent state items are compressed into a state interval. The sequence is scanned from the zero position to the first zero position and the previous sequence is read as the last sequence of processing. If no zero position appears, the last sequence is read as the last sequence of processing, forming the first data copy and boundary record.

5. The method for synchronous acquisition and preprocessing of distributed giant panda collar sensor data according to claim 4, characterized in that: S4 includes: S41. The first edge computing node sends the boundary record to the collar. The collar collects the interval endpoints of the received boundary record and the local boundary record, divides the boundary record into two parts according to the endpoint order, and reads the last item after arranging the state values ​​in ascending order in each segmented interval. If the state values ​​are the same, the processing rounds are arranged in ascending order and the last item is read. If the processing rounds are the same, the node numbers are arranged in ascending order and the first item is read, forming a reserved state item. S42. The collar connects the retained status items according to the interval order, merges adjacent segmented intervals with the same status value, processing round and node number into a transmission interval, and writes the transmission interval with the corresponding start number, channel number and processing last position into the sampling record, forming a boundary carrying record and then sends it to the second edge computing node.

6. The method for synchronous acquisition and preprocessing of distributed giant panda collar sensor data according to claim 5, characterized in that: S4 also includes: S43. The second edge computing node reads the boundary-carried record according to the start number and channel number. It stops processing the corresponding sampling record in the interval corresponding to state two. When the actual sampled value is received in the interval corresponding to state one, the interpolated value is replaced with the actual sampled value and state one is rewritten as state two. When the sampling record is received in the interval corresponding to state zero or after processing the last position, it is written into the continuation queue. Then, the termination alignment grid corresponding to the last position is used as the starting grid for the continuation alignment table. S44. After state one is rewritten to state two, the second edge computing node reads the first state two corresponding cell as the recalculation start point by decreasing the channel order from the rewriting order, and reads the first state two corresponding cell as the recalculation end point by increasing the channel order. If the recalculation end point is not read, the current termination alignment cell is used instead. Then, local alignment is performed from the recalculation start point to the recalculation end point and the state interval is updated to form the second data copy.

7. The method for synchronous acquisition and preprocessing of distributed giant panda collar sensor data according to claim 6, characterized in that: S5 includes: S51. After the first edge computing node and the second edge computing node resume communication, they concatenate the state items and processing results in each state interval according to the sampling code order, and use the encoding result of the previous sampling code to participate in the encoding of the next sampling code to generate interval fingerprints. Then, they exchange boundary records and interval fingerprints to determine the conflict intervals with different interval fingerprints. S52. Recursively divide the conflict interval according to the intermediate sampling code until the divided interval contains only one sampling code. Then, exchange the status items and processing results under the corresponding sampling codes. After arranging the status values ​​in ascending order, read the last item. When the status values ​​are the same, arrange the processing rounds in ascending order and read the last item. When the processing rounds are the same, arrange the node numbers in ascending order and read the first item. Replace the corresponding data on both sides with the read item to form a merged copy. S53. Regenerate interval fingerprints based on merged copies. If interval fingerprints are different, return to S52 to continue segmentation and replacement. If interval fingerprints are the same, merge consecutive intervals in the same state, so that the actual sampling result corresponding to state 2 replaces the interpolation result corresponding to state 1. Then generate synchronous preprocessing datasets and boundary records in the order of sampling codes.

Citation Information

Patent Citations

  • Bridge health monitoring system and method and storage medium

    CN121350519A

  • Panda breeding state analysis method based on necklace sensing data

    CN122139675A