Small satellite sub-packet remote control instruction error correction method
By using cyclic code encoding and iterative calculation, the problem of determining and correcting the location of errors in small satellite remote control frames was solved, achieving efficient 1-bit error correction, reducing the frame error rate and saving storage space.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-06-25
- Publication Date
- 2026-03-24
AI Technical Summary
In the existing technology, the CRC error correction method for small satellite remote control frames needs to store a large number of residual polynomials corresponding to error patterns, which occupies satellite storage space and is susceptible to single-event effects. Furthermore, it cannot effectively correct errors when critical command errors occur, leading to mission delays.
The remote control command is encoded using cyclic code. Error locations are determined and corrected through steps such as CRC check, cumulative check, and frame header format check. The residual polynomial corresponding to the error pattern is calculated iteratively using the properties of cyclic code, achieving 1-bit error correction without storing a large number of patterns.
It improves the error correction capability of small satellite remote control commands, reduces the amount of computation, avoids storage space occupation, ensures the correct execution of critical commands, and significantly reduces the frame error rate.
Smart Images

Figure CN116846513B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of small satellite packet remote control command error detection technology, specifically relating to a method for correcting errors in small satellite packet remote control commands. Background Technology
[0002] The correct execution of remote control commands is fundamental for small satellites to complete their on-orbit missions. Error detection codes are typically used to check the correctness of remote control frames. Currently, small satellite remote control frames usually use Cyclic Redundancy Check (CRC) codes for error detection: after receiving a remote control command, the satellite's central computer uses CRC to verify the received command. If the verification fails, the remote control command is discarded directly. This does not have a significant impact on the satellite's normal missions, but in emergency situations, critical commands may be directly discarded due to errors, delaying the best opportunity and causing significant losses.
[0003] Cyclic Redundancy Check (CRC) codes, as high-performance, low-complexity error detection codes, are widely used in data communication systems. Error detection performance is the main evaluation metric for CRC codes, and extensive theoretical research and verification have been conducted on their error detection capabilities and construction methods. In addition to error detection, CRC codes also possess a certain error correction capability. Reference 1 extends the application of CRC codes in wireless transmission to error correction, proposing a method using a 16-bit CRC-CCITT to correct 1-bit errors in data. Reference 2 proposes a method using a 24-bit CRC to correct navigation message errors.
[0004] The most crucial aspect of using CRC error correction is determining the location of errors. Currently, the most commonly used method is the lookup table method. Based on the properties of CRC, the receiver's residual polynomial r(x) is only related to the error polynomial e(x) and not to the information polynomial. Therefore, N 1-bit error patterns correspond one-to-one with N types of r(x). By searching a table for r(x), the location of a 1-bit error can be determined. However, the lookup table method requires pre-storing the residual polynomials corresponding to the error patterns. For long code lengths, this results in an excessively large mapping table, making it difficult to implement. For example, when the remote control frame length is 256 bytes, the mapping table length is 2048 bytes; when the remote control frame length is 512 bytes, the mapping table length is 4096 bytes, occupying a large amount of storage space on the satellite. Furthermore, storing the mapping table in SRAM is at risk of being overturned by single-event knockouts. Summary of the Invention
[0005] The technical problem solved by this invention is to overcome the shortcomings of the prior art and propose a small satellite remote control data error correction method for detecting and correcting errors in small satellite packet remote control commands, thereby overcoming space propagation errors. It also solves the problem of detecting and correcting errors in packet remote control commands without changing the original packet remote control frame structure and without needing to store a large number of residual polynomials corresponding to error patterns.
[0006] The technical solution of this invention is: a method for error correction of remote control commands in small satellite packetization, wherein the remote control commands are encoded using cyclic codes, and the remote control commands include a frame leader header, a frame data field, and an error control field. The frame data field includes multiple remote control packets, and the remote control packets are checked using an accumulation and verification method; the method includes the following steps:
[0007] S1. Perform CRC check on the received remote control frame: Calculate the residual polynomial r(x) corresponding to the received remote control frame. If r(x) = 0, there is no error, exit; otherwise, there is an error in the remote control frame, proceed to step S2.
[0008] S2. If r(x)≠0 and weight w(r(x))≤t, then the bit error occurs in the error control domain of the remote control frame, the single-bit error count is incremented by 1, and the process exits; otherwise, proceed to step S3, where t is the number of bits for cyclic code error correction.
[0009] S3. If r(x)≠0 and weight w(r(x))>t, perform a summation and verification on all remote control packets in the frame data field. If there is a summation and verification error for a remote control packet, proceed to step S4. If the summation of all remote control packets in the frame data field is correct, it is considered that there is an error in the frame header, and proceed to step S5.
[0010] S4. In the remote control packet area where the summation and verification are wrong, calculate the residual polynomial corresponding to the error pattern and compare it with the residual polynomial r(x) corresponding to the received remote control frame. If r(x) is found to be equal to the residual polynomial corresponding to a certain error pattern, the error position is found, the error is corrected and the process is exited. Otherwise, it is considered that a multi-bit error has occurred.
[0011] S5. Perform a format check on the frame header according to the agreed format. If an error is found, obtain the error location, correct the error, and exit; otherwise, consider that a multi-bit error has occurred.
[0012] Furthermore, the residual polynomial r(x) corresponding to the received remote control frame is calculated as follows:
[0013] r(x) = (B(x)) mod g(x)
[0014] Where B(x) represents the code polynomial corresponding to the received remote control frame, mod represents the modulo operation, and g(x) represents the generator polynomial.
[0015] Furthermore, the weight w(r(x)) is taken as the number of non-zero coefficients in the "residual polynomial r(x) corresponding to the received remote control frame".
[0016] Furthermore, the error pattern described in S4 is: within the remote control packet where the error occurred, using the values within the remote control packet's sequence range as exponents, to obtain a monomial of x, including x M x M+1, ...x N Where [M, N] represents the path sequence range of the remote control packets that have encountered errors;
[0017] The sequence range of the remote control packet refers to the sequence range of the data bits contained in the remote control packet in the remote control command, where 0 < M < N < n, and n is the length of the remote control command.
[0018] Furthermore, the residual polynomial corresponding to the erroneous pattern is calculated and compared with the residual polynomial r(x) corresponding to the received remote control frame, specifically:
[0019] First calculate
[0020] r M (x)=(x M modg(x)
[0021] Where, x M The error pattern represents the position of the path sequence M, r M (x) represents the residual polynomial corresponding to the error pattern when the error occurs at position M in the sequence;
[0022] If r exists M If r(x) = r(x), it is assumed that the error occurred in the data bit corresponding to the path sequence M. Otherwise, iterate through path sequence j, where the range of path sequence j is M+1≤j≤N. Iterate through the remaining polynomials that may correspond to the error position within the path sequence range of the remote control packet according to the following formula, and compare them with r(x) to see if they are equal.
[0023] r j (x)=(xr j-1 (x))modg(x)
[0024] If for a certain path order j, r j If r(x) = r(x) holds true, then a bit error occurs in the data bit corresponding to path sequence j; if the path sequence range of the remote control packet is traversed completely, then r(x) cannot be made true. j If r(x) = r(x) holds true, it means that a multi-bit error has occurred in the remote control package.
[0025] Furthermore, the frame header includes a version number, a pass flag, a control command flag, a spacecraft identifier, a virtual channel identifier, a transmission frame length, and a frame sequence number.
[0026] Furthermore, the version number, pass flag, control command flag, spacecraft identification word, virtual channel identification word, and frame sequence number are all fixed words. In step S5, if the content currently being checked for format is inconsistent with the corresponding fixed word, the error position is found, and the content at the error position is corrected to the set content to complete the error correction.
[0027] Furthermore, in step S5, the format check also includes: after receiving the remote control command, calculating the total number of bytes in the frame data field and the error control field; if the length of the transmission frame currently undergoing format check is inconsistent with the calculated total number of bytes, the error location is found, and the content at the error location is corrected according to the calculated total number of bytes to complete the error correction.
[0028] The advantages of this invention compared to the prior art are as follows:
[0029] (1) The present invention compares the received residual polynomial with the residual polynomial corresponding to all possible error patterns obtained by utilizing the characteristics of cyclic code, thereby determining the location of the error under the constraint of the number of bits for cyclic code error correction (such as 1 bit). This can increase the 1-bit error correction capability of ordinary packet remote control commands. Ordinary packet remote control commands usually only use CRC error detection. If an error is found, the command is discarded and does not have error correction capability.
[0030] (2) The present invention does not change the frame structure of the original packet remote control through CRC error correction, which facilitates the implementation of the present invention method in existing remote control command schemes that use CRC.
[0031] (3) The present invention does not require storing a large number of error patterns to achieve error correction. First, the error range is determined by packet summation and frame dominant header format definition. Second, the residual polynomial corresponding to the error pattern is obtained by using the formula iteration method based on the properties of cyclic code. This achieves both error detection and correction and effectively controls the amount of computation. Attached Figure Description
[0032] Figure 1 This is a schematic diagram of a remote control frame according to an embodiment of the present invention;
[0033] Figure 2 This is a schematic diagram of a remote control package according to an embodiment of the present invention;
[0034] Figure 3 This is a flowchart of the data error detection and correction task in an embodiment of the present invention. Detailed Implementation
[0035] The present invention will now be described in detail with reference to the accompanying drawings and embodiments.
[0036] This invention provides a method for error correction of remote control data in small satellite packetization. The remote control commands are encoded using cyclic codes, such as... Figure 1 As shown, the remote control command includes a frame master header, a frame data field, and an error control field. The frame data field includes multiple remote control packets, such as... Figure 2 As shown, the remote control packet uses an additive checksum method. After receiving the remote control command, the onboard computer, as follows: Figure 3 As shown, the steps to implement error detection and correction are as follows:
[0037] 1. Perform CRC check on the received remote control frames.
[0038] CRC check is performed according to the following formula.
[0039] r(x) = (B(x)) mod g(x)
[0040] Where r(x) represents the residual polynomial corresponding to the received remote control frame, mod is the modulo operation, B(x) represents the code polynomial corresponding to the received remote control frame, and g(x) represents the generator polynomial. For small satellites, g(x) is usually taken as x. 16 +x 12 +x 5 +1. If r(x) = 0, it means that there are no errors in the frame header and frame data field of the received remote control frame.
[0041] In algebraic coding theory, for ease of calculation, each symbol in a cyclic code group is treated as the coefficient of a polynomial; that is, a code group of length n is represented as...
[0042] A(x)=a n-1 x n-1 +a n-2 x n-2 +…a n-2 x+a0
[0043] For example, the code group 1101101 with a length of 7 can be represented as:
[0044] A(x) = 1·x 6 +1·x 5 +0·x 4 +1·x 3 +1·x 2 +0·x 1 +1=x 6 +x 5 +x 3 +x 2 +1;
[0045] In this polynomial, x is merely a marker of the symbol position, and the value of x is irrelevant.
[0046] 2. If the CRC check is incorrect, i.e., r(x) ≠ 0, it indicates that there is a bit error in the remote control frame. If the weight w(r(x)) ≤ t, where t is the number of bits for cyclic code error correction, it means that the bit error occurred in the error control domain of the remote control frame and no processing is required; otherwise, proceed to step 3.
[0047] The weight w(r(x)) represents the number of non-zero coefficients in the residual polynomial r(x) corresponding to the received remote control frame. If r(x) = x 6 +x 5 +x 3 +x2 +1, then the weight w(r(x)=5.
[0048] 3. If the CRC check is incorrect (i.e., r(x) ≠ 0 and the weight w(r(x)) > t), the error occurs in the frame header or frame data field. Perform a cumulative check on all remote control packets within the frame data field. If any remote control packet has a cumulative check error, proceed to step 4; if all remote control packets in the frame data field have a correct cumulative check, then the frame header is considered to have an error, and proceed to step 5.
[0049] 4. If a remote control packet has an accumulation and check error, it indicates that the error occurred within that remote control packet. Search within that packet to determine the location of the error. This includes: in the region of the remote control packet with the accumulation and check error, calculating the residual polynomial corresponding to the error pattern and comparing it with the residual polynomial r(x) corresponding to the received remote control frame. If r(x) is found to be equal to the residual polynomial corresponding to an error pattern, the error location is found, the error is corrected, and the process exits. Otherwise, it is considered that a multi-bit error has occurred within the remote control packet, and the multi-bit error flag is set.
[0050] The error pattern described here is: within the remote control packet where the error occurred, using the values within the remote control packet's sequence range as exponents, the resulting monomial of x includes x. M x M+1 , ...x N Where [M, N] represents the path sequence range of the remote control packet. The path sequence range of the remote control packet refers to the range of sequence numbers of the data bits contained in the remote control packet within the remote control command.
[0051] Assume that the remote control packet with the error has a path sequence range of M to N (0 < M < N < n), where n is the length of the remote control command, and perform an error search in this range.
[0052] First calculate
[0053] r M (x)=(x M modg(x)
[0054] Where, x M The error pattern represents the position of the bit error (M), r M (x) represents the residual polynomial corresponding to the error pattern when the error occurs at position M.
[0055] If r exists M If r(x) = r(x), then the bit error is considered to have occurred in the data bit corresponding to path sequence M. Otherwise, the path sequence j is iterated using the following formula: continue to iterate within the packet range to calculate the remaining polynomial that may correspond to the bit error position, and compare it with r(x) to see if they are equal.
[0056] r j (x)=(xrj-1 (x))modg(x)
[0057] Wherein, the range of path order j is M+1≤j≤N, and when j=M+1, r j-1 (x)=r M (x);
[0058] If for a certain path order j, r j If r(x) = r(x) holds true, it indicates that a bit error occurred in the data bits corresponding to path j. If the traversal of this packet range is completed, r(x) cannot be achieved. j If r(x) = r(x) holds true, it means that a multi-bit error has occurred in the remote control package.
[0059] 5. The frame header typically includes a version number, pass flag, control command flag, spacecraft identification word, virtual channel identification word, transmission frame length, frame sequence number, etc. These positions are clearly defined and have rules in the remote control frame structure. The received remote control frame header is checked for format according to the agreed format.
[0060] The format check specifically includes:
[0061] (a) The version number, pass flag, control command flag, spacecraft identification word, virtual channel identification word, and frame sequence number are all fixed words. In step 5, if the content of the current format check is inconsistent with the corresponding fixed word, the error position is found, and the content at the error position is corrected to the set content to complete the error correction.
[0062] (b) Calculate the total number of bytes in the frame data field and the error control field. If the length of the transmission frame currently being format checked is inconsistent with the calculated total number of bytes, the error location is found, and the content at the error location is corrected according to the calculated total number of bytes to complete the error correction.
[0063] If no errors are found during the frame header check due to a CRC error, it indicates that a multi-bit error has occurred in a remote control packet within the remote control frame data field, and the cumulative checksum cannot detect this multi-bit error. When a multi-bit error occurs in a remote control packet, the corresponding flag is set.
[0064] This invention utilizes the structure of packetized remote control frames and the characteristics of cyclic codes to achieve error correction of remote control frames. This invention achieves error correction without storing a large number of error patterns. First, the error range is determined by packet summation and the frame master header format definition. Second, the properties of cyclic codes are used to obtain error patterns within a possible range, thus achieving both error detection and correction while effectively controlling the computational load.
[0065] Example 1:
[0066] 1. Perform CRC check on the received remote control frames.
[0067] CRC check is performed according to the following formula.
[0068] r(x) = (B(x)) mod g(x)
[0069] Where r(x) represents the residual polynomial corresponding to the received remote control frame, B(x) represents the code polynomial corresponding to the received remote control frame, and g(x) represents the generator polynomial. For small satellites, g(x) is usually taken as x. 16 +x 12 +x 5 +1, if r(x) = 0, it means that there are no errors in the frame header and frame data field of the received remote control frame.
[0070] 2. If the CRC check is incorrect, i.e., r(x) ≠ 0, it indicates that there is a bit error in the remote control frame. If the weight w(r(x)) ≤ t, where t is the cyclic code error correction capability, it means that the bit error occurred in the error control domain of the remote control frame and no processing is required; otherwise, proceed to step 3.
[0071] 3. If the CRC check is incorrect (r(x) ≠ 0) and the weight w(r(x)) > t, the error occurs in the frame header or frame data field. All remote control packets in the frame data field are summed and checked. If any remote control packet has an incorrect summation check, proceed to step 4; if all remote control packets in the frame data field have correct summations, proceed to step 5. The remote control packets are as follows: Figure 2 As shown.
[0072] 4. If a checksum error is found in a remote control packet, it indicates that the error occurred within that remote control packet. Search within that packet to pinpoint the location of the error.
[0073] Assume that the path sequence range of the remote control packet that has a bit error is from M to N (0 < M < N < n), where n is the length of the remote control frame, and perform bit error search in this area.
[0074] First calculate
[0075] r M (x)=(x M modg(x)
[0076] If r exists M If r(x) = r(x), then the bit error is considered to have occurred at position M in the sequence M. Otherwise, the remaining polynomials that may correspond to the bit error position are calculated one by one within the packet range using the following formula, and compared with r(x) to see if they are equal.
[0077] r j (x)=(xr j-1 (x))modg(x)
[0078] If for a certain path j, M+1≤j≤N, the above formula holds, indicating that a bit error has occurred in the data bits corresponding to path j. If, after traversing the entire packet range, r cannot be made... j If r(x) = r(x) holds true, it means that a multi-bit error has occurred in the packet.
[0079] 5. The frame header typically includes a version number, pass flag, control command flag, explicit identifier, spacecraft identification word, virtual channel identification word, transmission frame length, and frame sequence number. These positions are clearly defined and follow rules in the remote control frame structure, and error detection is performed according to the remote control format conventions. If no errors are found during the frame header check, it indicates that a multi-bit error has occurred in a remote control packet within the data field, and the cumulative checksum cannot detect this multi-bit error.
[0080] This embodiment was simulated using a small satellite integrated electronic computer. The simulation used a remote control frame from a certain small satellite, the frame structure of which is as follows. Figure 1 As shown. Simulations were performed with remote control frame lengths of 512 (64 bytes), 1024 bits (128 bytes), 2048 (256 bytes), and 4096 (512 bytes), respectively, assuming a remote control error rate range of 10. -4 ~10 -6 The error correction code is CRC-16. Simulation experiments show that 10 [unclear characters] are sent at each bit error rate. 9 The error rates of each remote control data frame before and after error correction are shown in Tables 1 to 4.
[0081] Table 1 shows the frame error rate for a length n of 512 (64 bytes).
[0082] Bit error rate p <![CDATA[Error frame rate P before error correction e > <![CDATA[Corrected frame error rate P e1 <!-- 5 -->]]> <![CDATA[10 -4 ]]> 0.049913799 0.00126452 <![CDATA[5×10 -5 ]]> 0.025275722 0.000321533 <![CDATA[10 -5 ]]> 0.005106941 1.30372E-05 <![CDATA[5×10 -6 ]]> 0.002556732 3.26485E-06 <![CDATA[10 -6 ]]> 0.000511869 1.30772E-07
[0083] Table 2 shows the frame error rate for a length n of 1024 (128 bytes).
[0084] Bit error rate p <![CDATA[Error frame rate P before error correction e > <![CDATA[Corrected false frame rate P e1 > <![CDATA[10 -4 ]]> 0.09733621 0.004894194 <![CDATA[5×10 -5 ]]> 0.049912582 0.001265674 <![CDATA[10 -5 ]]> 0.0101878 5.20221E-05 <![CDATA[5×10 -6 ]]> 0.005106928 1.30499E-05 <![CDATA[10 -6 ]]> 0.001023476 5.23419E-07
[0085] Table 3 shows the frame error rate for a length n of 2048 (256 bytes).
[0086] Bit error rate p <![CDATA[Error frame rate P before error correction e > <![CDATA[Post - correction false frame rate P e1 > <![CDATA[10 -4 ]]> 0.185198082 0.01830996 <![CDATA[5×10 -5 ]]> 0.097333899 0.004896268 <![CDATA[10 -5 ]]> 0.020271809 0.000206775 <![CDATA[5×10 -6 ]]> 0.010187775 5.20472E-05 <![CDATA[10 -6 ]]> 0.002045905 2.09327E-06
[0087] Table 4 shows the frame error rate for a length n of 4096 (512 bytes).
[0088] Bit error rate p <![CDATA[Error frame rate P before error correction e > <![CDATA[Post - correction false frame rate P e1 > <![CDATA[10 -4 ]]> 0.185198082 0.01830996 <![CDATA[5×10 -5 ]]> 0.097333899 0.004896268 <![CDATA[10 -5 ]]> 0.020271809 0.000206775 <![CDATA[5×10 -6 ]]> 0.010187775 5.20472E-05 <![CDATA[10 -6 ]]> 0.002045905 2.09327E-06
[0089] Compare the frame error rate before and after error correction; when the bit error rate is 10... -4 ~10 -6 When the range is wide, using the CRC error correction algorithm can significantly improve the frame error rate of remote control commands, reducing the frame error rate by 1 to 3 orders of magnitude, and correcting some erroneous commands into correct commands.
[0090] The above description is only one specific embodiment of the present invention, but the protection scope of the present invention is not limited thereto. Any changes or substitutions that can be easily conceived by those skilled in the art within the technical scope disclosed in the present invention should be included within the protection scope of the present invention.
[0091] The contents not described in detail in this specification are common knowledge to those skilled in the art.
Claims
1. A method for error correction of remote control commands in small satellite packetization, wherein the remote control commands are encoded using cyclic codes, the remote control commands include a frame master header, a frame data field, and an error control field, the frame data field includes multiple remote control packets, and the remote control packets are processed using an accumulation and checksum method; characterized in that... Includes the following steps: S1. Perform CRC check on the received remote control frame: Calculate the residual polynomial r(x) corresponding to the received remote control frame. If r(x) = 0, there is no error, exit; otherwise, there is an error in the remote control frame, proceed to step S2. S2. If r(x)≠0 and weight w(r(x))≤t, then the bit error occurs in the error control domain of the remote control frame, the single-bit error count is incremented by 1, and the process exits; otherwise, proceed to step S3, where t is the number of bits for cyclic code error correction. S3. If r(x)≠0 and weight w(r(x))>t, perform a summation and verification on all remote control packets in the frame data field. If there is a summation and verification error for a remote control packet, proceed to step S4. If the summation of all remote control packets in the frame data field is correct, it is considered that there is an error in the frame header, and proceed to step S5. S4. In the remote control packet area where the summation and verification are wrong, calculate the residual polynomial corresponding to the error pattern and compare it with the residual polynomial r(x) corresponding to the received remote control frame. If r(x) is found to be equal to the residual polynomial corresponding to a certain error pattern, the error position is found, the error is corrected and the process is exited. Otherwise, it is considered that a multi-bit error has occurred. S5. Perform a format check on the frame header according to the agreed format. If an error is found, obtain the error location, correct the error, and exit; otherwise, consider that a multi-bit error has occurred.
2. The method for correcting errors in small satellite packet remote control commands according to claim 1, characterized in that, The residual polynomial r(x) corresponding to the received remote control frame is calculated as follows: r(x) = (B(x)) mod g(x) Where B(x) represents the code polynomial corresponding to the received remote control frame, mod represents the modulo operation, and g(x) represents the generator polynomial.
3. The method for correcting errors in small satellite packet remote control commands according to claim 1, characterized in that, The weight w(r(x)) is the number of non-zero coefficients in the "residual polynomial r(x) corresponding to the received remote control frame".
4. The method for correcting errors in small satellite packet remote control commands according to claim 1, characterized in that, The error pattern described in S4 is: within the remote control packet where the error occurred, using the values within the path sequence range of this remote control packet as exponents, to obtain a monomial of x, including x M x M+1 , ...x N Where [M, N] represents the path sequence range of the remote control packets that have encountered errors; The sequence range of the remote control packet refers to the sequence range of the data bits contained in the remote control packet in the remote control command, where 0 < M < N < n, and n is the length of the remote control command.
5. The method for correcting errors in small satellite packet remote control commands according to claim 4, characterized in that, The residual polynomial corresponding to the erroneous pattern is calculated and compared with the residual polynomial r(x) corresponding to the received remote control frame, specifically: First calculate r M (x)=(x M )modg(x) Where, x M The error pattern represents the position of the path sequence M, r M (x) represents the residual polynomial corresponding to the error pattern when the error occurs at position M in the sequence; If r exists M If r(x) = r(x), it is assumed that the error occurred in the data bit corresponding to the sequence M. Otherwise, iterate through the sequence j, where the range of sequence j is M+1≤j≤N. Iterate through the remaining polynomials within the remote control packet sequence range that may correspond to the error position according to the following formula, and compare them with r(x) to see if they are equal. r j (x)=(xr j-1 (x))modg(x) If for a certain path order j, r j If r(x) = r(x) holds true, then a bit error occurs in the data bit corresponding to path sequence j; if the path sequence range of the remote control packet is traversed completely, then r(x) cannot be made true. j If r(x) = r(x) holds true, it means that a multi-bit error has occurred in the remote control package.
6. The method for correcting errors in small satellite packet remote control commands according to claim 1, characterized in that, The frame header includes version number, pass flag, control command flag, spacecraft identifier, virtual channel identifier, transmission frame length, and frame sequence number.
7. The method for correcting errors in small satellite packet remote control commands according to claim 6, characterized in that, Version number, pass flag, control command flag, spacecraft identification word, virtual channel identification word, and frame sequence number are all fixed words that are set. In step S5, if the content currently being checked for format is inconsistent with the corresponding fixed word, the error position is found, and the content at the error position is corrected to the set content to complete the error correction.
8. The method for correcting errors in small satellite packet remote control commands according to claim 6, characterized in that, In step S5, the format check also includes: after receiving the remote control command, calculating the total number of bytes in the frame data field and the error control field; if the length of the transmission frame currently undergoing format check is inconsistent with the calculated total number of bytes, the error location is found, and the content at the error location is corrected according to the calculated total number of bytes to complete the error correction.
Citation Information
Patent Citations
Information data longitudinal redundancy check error correction encoding and decoding method
CN111327397A
Low-cost small satellite important data fault tolerance method
CN112000526A