High-precision satellite-borne GNSS (Global Navigation Satellite System) data compression method containing abnormal data detection based on cubic difference
The three-time differential compression algorithm is used to process the satellite-borne GNSS data, which solves the problem of large amount of observation data on the satellite-borne GNSS, realizes efficient data compression and abnormal data monitoring, improves data transmission and storage efficiency, and is suitable for a variety of orbital situations.
Patent Information
- Application Number
- CN202411354257.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-26
- Publication Date
- 2025-01-10
AI Technical Summary
With the increase in the number of orbital satellites, the large amount of observation data on the satellite GNSS has led to an increase in the burden on ground measurement and control personnel, affecting satellite state maintenance and mission planning. The existing compression methods are insufficient in compression ratio and accuracy, making it difficult to meet the needs of efficient data transmission and storage.
Using a high-precision compression algorithm based on tri-differential, the GNSS measurement data is preprocessed and differentially processed, satellite number and pseudorange + carrier data are extracted, the data is compressed using tri-differential formula, and the number of stored bits is selected according to the differential result, so as to realize the data Highly efficient compression.
A compression rate of 5% to 7%, reduces the interaction pressure of satellite-ground data, is highly versatile, can monitor abnormal data, improves the transmission and storage efficiency of fixed-orbit data, and is suitable for constant-orbit, variable-orbit and full-photography. Movement situation.
Smart Images

Figure CN119298916A_ABST
Abstract
Description
Technical Field
[0001] The invention belongs to the field of satellite applications and proposes a high-precision satellite-borne GNSS data compression method containing abnormal data detection based on cubic difference. Background Art
[0002] The Global Navigation Satellite System (GNSS) is an air-based radio navigation and positioning system that can provide users with all-weather 3D coordinates, speed and time information at any location on the Earth's surface or in near-Earth space. Spaceborne GNSS receivers are one of the most commonly used platform payloads for spacecraft. Spacecraft can achieve multiple functions such as real-time positioning, precise orbit determination, and attitude determination by relying on GNSS receivers, which is helpful for ground measurement and control personnel to understand the working status of spacecraft, achieve timely and accurate control of spacecraft, and ensure the safety of spacecraft and orbital environment.
[0003] However, with the continuous development of my country's space technology, the number of satellites in orbit continues to rise, and the amount of GNSS observation data that needs to be transmitted to the ground station is also increasing. This not only increases the burden on ground measurement and control personnel, but also squeezes the transmission space for other payload data within the limited transmission time window of a single satellite, which has an adverse effect on the maintenance of satellite working status and the realization of planning tasks. Therefore, a compression method is designed to compress the amount of transmitted data without affecting the accuracy of GNSS observation data. This is of great significance for reducing the workload of ground measurement and control personnel, facilitating the status maintenance of spacecraft and satellite constellations, and ensuring the smooth implementation of space missions.
[0004] In order to solve the problem of large amount of single-frequency GNSS observation data transmitted by low-cost spacecraft, the present invention proposes a new high-precision compression algorithm for orbit determination data with abnormal data monitoring. Compared with the current compression method, it has the advantages of high compression ratio, high data accuracy and strong versatility, which is conducive to reducing the pressure of spacecraft data transmission and improving orbit determination efficiency. Summary of the invention
[0005] (I) Purpose of the invention
[0006] Aiming at the problem of large amount of single-frequency GNSS observation data transmitted by low-cost spacecraft, this paper proposes a new high-precision compression algorithm for orbit determination data that utilizes the characteristics of adjacent epoch data changes. Compared with the current compression method, it has the advantages of high compression ratio, high data accuracy, abnormal data monitoring, and strong versatility, which is conducive to reducing the pressure of spacecraft data transmission and improving the transmission and storage efficiency of orbit determination data. It provides high-precision orbit data support for cooperative satellite space traffic management, which has certain significance for the engineering practice of GNSS orbit determination data compression algorithm.
[0007] (II) Technical solution
[0008] A method for compressing satellite-borne GNSS data with high precision based on cubic difference, the steps comprising:
[0009] S1. In one observation cycle, the onboard GNSS receiver completes the steps of signal acquisition, tracking, decoding, etc., obtains GNSS measurement data and stores it in the format shown in Table 1.
[0010] S2. Perform data preprocessing based on GNSS measurement data to obtain some header information (Start Time, Period, Obs.freq), the format of which is shown in Table 2, and organize the satellite number data and pseudorange + carrier data into two matrices;
[0011] S3. According to the satellite number data matrix, extract whether each satellite appears in the matrix, as well as the start time node and end time node of each period of time. Arrange the start time node and end time node of each satellite from low to high into a row. The beginning of each row is the satellite number. Arrange them from low to high into a matrix according to the number. The number of matrix columns is the length of the longest row. The missing part of each row is padded with 0. This matrix is the result of satellite number compression, and the format is shown in Table 3. According to this matrix, obtain the remaining data of the header file;
[0012] S4. Based on the obtained satellite number compression data, combined with the satellite pseudorange + carrier data matrix, extract the pseudorange + carrier distance information corresponding to the satellite appearance time period from top to bottom and from left to right, and organize it into rows of arrays. Since an array is the pseudorange + carrier of a satellite in a continuous time period, it is correlated with time, and three differential compressions are performed. After the test, it is found that the three differential compression has the best effect. The initial four pseudoranges + carriers store the true value x1 according to the first one, Δx2=x2-x1 according to the second one, Δx3=x3-2x2+x1 according to the third one, and Δx4=x4-3x3+3x2-x1 according to the fourth one. From the fifth one, the storage is calculated according to the following formula. According to the calculated differential result, if it is less than 1.28m, it is multiplied by 100 for storage; if it is greater than 1.28m but less than the orbit change threshold entered by the user, it is stored in 16bit; if it is greater than the orbit change threshold, it is stored in another column and 32bit is used. After testing, 8bit / 16bit storage is used during the orbit change period, and 32bit storage is used when abnormal data occurs, that is, the first row of the satellite pseudorange + carrier compression table is 32bit, and most of the subsequent ones are 8bit, and a few are 16bit. Then the calculation window is continuously updated to obtain subsequent stored values and the satellite pseudorange + carrier compression results.
[0013] The formula for the third difference is derived as follows:
[0014] Assume the relationship between distance and time is:
[0015] at 3 +bt 2 +ct+d=x (1)
[0016] Starting from the first four adjacent data, let them be (0,x1), (t,x2), (2t,x3), (3t,x4), and substitute into (1) to obtain:
[0017]
[0018] make
[0019]
[0020] Then equation (2) is
[0021] AX=b (4)
[0022] Since |A|≠0, we can get
[0023] X=A -1 b (5)
[0024] Then the predicted value of x5 is
[0025]
[0026] Resolve (6) to obtain
[0027]
[0028] The difference result is
[0029]
[0030] When using n-time differential compression, the principle is the same. Set up an expression and then solve it according to the above steps. The storage of the first n+1 items, the i-th (i>3) storage is the result of the i-2 times differential. The first one stores the true value x1, the second one stores Δx2=x2-x1, and the third one stores Δx3=x3-2x2+x1.
[0031] S5. The header file, satellite number compression result, and satellite pseudorange + carrier compression result are combined to obtain the compression result of the original data. Decompression is the reverse process of the above process. The satellite-time relationship matrix is restored based on the header file, and the pseudorange + carrier data is restored based on the satellite pseudorange + carrier compression result.
[0032] (III) Advantages
[0033] The present invention has the following beneficial effects:
[0034] ① The present invention proposes a general formula for n-order differential compression and compresses GNSS by using the cubic differential method.
[0035] Orbit determination data can achieve a compression rate of 5% to 7%, avoiding the downlink of large amounts of data and reducing the pressure on satellite-ground data interaction;
[0036] ② This algorithm is applicable to compression under the conditions of unchanged orbit, changed orbit, and full perturbation. It also realizes the monitoring of abnormal data and has strong versatility. Compared with the literature "Li Yingbing, Yan Jingxian, Xiong Chengbo, et al. Research on Compression Method of GNSS Observation Values [J]. Journal of Wuhan University (Information Science Edition)", it is actually the final result of quadratic difference. Compared with it, the result is smaller. The result is as follows Figure 4 shown.
[0037] ③ The differential formula used in this algorithm is mature and stable. The time complexity of satellite number compression is o(n^2) (n is the number of times a satellite with a certain number appears in a measurement cycle). The software takes a short time to run, which reduces the computing pressure on the satellite and has no special requirements for the storage and computing power of the onboard computer. BRIEF DESCRIPTION OF THE DRAWINGS
[0038] Figure 1 It is the overall flow chart of the compression algorithm;
[0039] Figure 2 is a flowchart of the number compression algorithm;
[0040] Figure 3 This is the flow chart of the n-times difference algorithm. When n is 3, it is a cubic difference algorithm and includes abnormal data monitoring.
[0041] Figure 4 This is the difference result diagram of the two methods. DETAILED DESCRIPTION
[0042] The following description is for the purpose of facilitating a better understanding and implementation of the present invention by those skilled in the art. Figure 1 , Figure 2 , Figure 3 The algorithm used in the present invention is described in detail in the process, and the specific contents of the algorithm include:
[0043] S1. The onboard GNSS receiver completes signal capture, tracking, decoding and other steps, obtains GNSS measurement data in real time, and starts compression at the end of a file recording cycle;
[0044] S2. Preprocess the data according to the GNSS observation data and extract some data of the header file, mainly including StartTime, Period, and Obs.Freq. At the same time, obtain the relationship table between satellite number and time, and the relationship table between satellite pseudorange + carrier and time.
[0045] S3. Process the satellite number and time relationship table to obtain a compressed table of satellite numbers. The main method is to start searching from satellite No. 1. If it can be found in the table, all the time nodes where it appeared are sorted into an array. According to this array, the beginning time node and the end time node of the continuous time period are obtained, and the time nodes in the middle continuous time period are discarded to obtain a new array. Add the satellite number to the beginning of this new array to complete the compression of the satellite number. Search all satellites from 1 to 32 (GPS satellite numbers are from 1 to 32, and other navigation system satellite numbers are different, but the principle is the same), and arrange all the new arrays obtained in order from low to high according to the satellite numbers to form a table. The blank positions are occupied by 0, and the compression of the satellite number information is completed.
[0046] S4. Obtain a complete header file according to the obtained satellite number compression table.
[0047] S5. Combined with the satellite number compression table, from top to bottom and from left to right, according to the satellite number and the beginning and end time nodes of the time period, a group of satellite pseudorange + carrier data arrays are obtained. Each group of data is obtained, the difference result is judged, and different resolutions are used for processing according to different results to obtain the compression result of pseudorange + carrier.
[0048] S6. Combining the obtained header file, satellite number compression table, and satellite pseudorange+carrier compression table together, thereby obtaining a compression result of the satellite GNSS measurement data.
[0049] The format of the compressed data is:
[0050]
[0051]
[0052] The corresponding compressed format of the compressed data in Table 1 is shown in the following table:
[0053]
[0054]
[0055] Table 2 Header file format
[0056]
[0057] Table 3 Satellite number compression format
[0058]
[0059]
[0060] Table 4 Satellite pseudorange + carrier compression format
Claims
1. A high-precision satellite-borne GNSS data compression method with abnormal data detection based on cubic difference, characterized by: The following steps are involved: S1. In one observation cycle, the onboard GNSS receiver completes the steps of signal acquisition, tracking, decoding, etc., obtains GNSS measurement data and stores it in the format shown in Table 1. S2. Perform data preprocessing based on GNSS measurement data to obtain some header information (Start Time, Period, Obs.freq), the format of which is shown in Table 2, and organize the satellite number data and pseudorange + carrier data into two matrices; S3. According to the satellite number data matrix, extract whether each satellite appears in the matrix, as well as the start time node and end time node of each period of time. Arrange the start time node and end time node of each satellite from low to high into a row. The beginning of each row is the satellite number. Arrange them from low to high into a matrix according to the number. The number of matrix columns is the length of the longest row. The missing part of each row is padded with 0. This matrix is the result of satellite number compression, and the format is shown in Table 3. According to this matrix, obtain the remaining data of the header file; S4. According to the satellite number compression data obtained, combined with the satellite pseudorange + carrier data matrix, extract the pseudorange + carrier distance information corresponding to the satellite appearance time period from top to bottom and from left to right, and organize it into rows of arrays. Since an array is the pseudorange + carrier in a continuous time period of a satellite, it has a correlation with time, and three differential compressions are performed. Because the results of the test show that the three differential compressions have the best effect, according to the calculated differential results, if it is less than 1.28m, it is multiplied by 100 for storage; if it is greater than 1.28m but less than the orbit change threshold entered by the user, it is stored in 16bit; if it is greater than the orbit change threshold, it is stored in another column and 32bit is used. After testing, 8bit / 16bit storage is used during the orbit change period, and 32bit storage is used when abnormal data appears, that is, the first row of the satellite pseudorange + carrier compression table is 32bit, and the subsequent ones are mostly 8bit, and a few are 16bit. Then continuously update the calculation window to obtain the subsequent storage value and obtain the satellite pseudorange + carrier compression result. The formula for the third difference is derived as follows: Assume the relationship between distance and time is: at 3 +bt 2 +ct+d=x (1) Starting from the first four adjacent data, let them be (0,x1), (t,x2), (2t,x3), (3t,x4), and substitute into (1) to obtain: make Then equation (2) is AX=b (4) Since |A|≠0, we can get X=A -1 b (5) Then the predicted value of x5 is Resolve (6) to obtain The difference result is S5. The header file, the satellite number compression result, and the satellite pseudorange + carrier compression result are combined to obtain the compression result of the original data. Decompression is the reverse process of the above process. The satellite-time relationship matrix is restored based on the header file, and then the pseudorange + carrier data is restored based on the satellite pseudorange + carrier compression results.
2. Derivation of an n-th difference method: Assume the relationship between distance and time is: a n t n +a n-1 t n-1 +…+a1t+a0=x (9) Starting from the first four adjacent data, let them be (0,x1), (t,x2)…((n-1)t,x n ),(nt,x n+1 ), and substituting into (1) we get: make Then equation (10) is AX=b (12) Since |A|≠0, we can get X=A -1 b (13) Then x n+2 The predicted value is The difference result is 3. When using the n-times differential method for compression, starting from item n+2, the storage results of the first n+1 items are: The storage of the first n+1 items, for the i-th (i>3) storage is the result of the i-2 differential, the first storage is the true value x1, the second storage is Δx2=x2-x1, and the third storage is Δx3=x3-2x2+x1.
4. The pseudorange + carrier storage format including abnormal data monitoring is shown in the following table: