High-speed satellite telemetry processing method and system
By segmenting satellite telemetry data and using multi-threaded parallel processing, the problem of slow speed and low efficiency when processing large data volumes is solved, and the effect of efficient processing of satellite telemetry data on a computer is achieved.
Patent Information
- Application Number
- CN202210062146.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-01-19
- Publication Date
- 2025-03-14
- Estimated Expiration
- 2042-01-19
AI Technical Summary
In the prior art, when processing large-scale satellite telemetry data, single-threaded processing methods lead to underutilization of computer resources, slow processing speed and low efficiency.
By obtaining the number of CPU cores of the computer, segmenting the telemetry original code data file into multiple primary and secondary data segments, and processing it in a multi-threaded parallel manner. Each processing child thread is responsible for processing the allocated data segments, and the final main thread splicing result generates the final processing result.
It realizes efficient processing of satellite telemetry data on one computer, without the need for multiple computers to run networks, makes full use of computer resources, and improves processing speed and efficiency.
Smart Images

Figure CN114519035B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of satellite data processing, and in particular to a high-speed satellite telemetry processing method and system. Background Art
[0002] A large amount of satellite telemetry data is generated during the development and operation of satellites in orbit. In order to obtain and analyze satellite data and satellite status, these telemetry data need to be quickly processed and extracted. However, the amount of satellite telemetry data is large, and the traditional single-threaded processing method cannot fully utilize computer resources to process all data in sequence, and usually takes a lot of time to wait for data processing to complete.
[0003] At present, the research on telemetry processing methods in China is mostly focused on the generalization aspect. CN104102690A "A telemetry data processing method based on storage structure" provides a general telemetry data storage structure to solve the general processing problem of telemetry data of different models and different tasks. CN102323941A "A telemetry data processing method" provides a general data processing method for telemetry with frame structure and packet structure. However, there is little research on high-speed telemetry processing methods.
[0004] In a Chinese patent document with announcement number CN103347025B, a method for processing telemetry data of a spacecraft is disclosed, wherein the spacecraft sends one or more groups of telemetry data with a small amount of data to the ground through a data frame according to a data protocol; the spacecraft sends a group of telemetry data with a large amount of data to the ground through multiple data frames according to the data protocol; the ground processes the received data according to the data protocol to obtain a valid data frame; and searches for a parsing rule table corresponding to the valid data frame according to the data packet identifier of the valid data frame, wherein the parsing rule table stores operations performed on the telemetry data in the valid data frame and a data file written to the telemetry data in the valid data frame; the valid data frame is processed according to the operations in the parsing rule table and the written data file, and finally the telemetry data is written into the corresponding data file.
[0005] Li Qiang and Li Xuzhi of the Chinese Academy of Sciences proposed a distributed real-time telemetry data processing system in their paper "Design of a High-Speed Satellite Telemetry Data Processing System". The system distributes telemetry data according to VCID (virtual channel on board) and distributes data analysis and processing tasks to multiple computers. Although this solution can improve processing speed, the efficiency improvement is limited because most satellite telemetry VCIDs are unevenly distributed. In addition, this solution requires multiple computers in the same local area network, which is inconvenient to use. Summary of the invention
[0006] In view of the defects in the prior art, an object of the present invention is to provide a high-speed satellite telemetry processing method and system.
[0007] A high-speed satellite telemetry processing method provided by the present invention comprises the following steps:
[0008] Step S1: Obtain the number N of CPU cores running the computer;
[0009] Step S2: reading the telemetry original code data file, obtaining the file size, and dividing the telemetry original code data file according to the number of CPU cores of the computer into N primary data segments;
[0010] Step S3: Slide and search for a telemetry frame independent of the previous frame at the starting position of the primary data segment, and re-segment the file using the starting position of the independent telemetry frame as the segmentation point to obtain N secondary data segments;
[0011] Step S4: the main thread opens N new processing sub-threads and allocates the i-th secondary data segment to the i-th thread, where i=1-N;
[0012] Step S5: Each processing sub-thread synchronously performs the telemetry processing and parsing task, parses and inverts the telemetry original code data according to the protocol format, and obtains the telemetry processing result data;
[0013] Step S6: After the main thread waits for all processing sub-threads to complete their respective telemetry processing tasks, it splices the telemetry processing result data in sequence to generate a final telemetry processing result data file.
[0014] Preferably, the segmentation of the telemetry source code data file in step S2 includes: slidingly searching for the synchronization header at the DataLen*m byte of the telemetry source code data file, m=1~N-1, and segmenting the telemetry source code data file with the starting position of the first found synchronization header as the segmentation point, the DataLen is the maximum integer less than FileLen / (N*OriLen), the FileLen is the number of bytes of the telemetry source code data file, and the OriLen is the byte length of a telemetry frame.
[0015] Preferably, in step S3, a telemetry frame whose leader pointer is 0 is searched at the starting position of each secondary data segment, and the first independent telemetry frame synchronization header found is used as a new segmentation point. For the i-th secondary data segment, the first synchronization header is searched from the starting position of the secondary data segment from front to back, and the synchronization header is the starting point of the telemetry frame. If the leader pointer is not 0, it means that there is a residual packet of the previous frame in the current frame, then the search for the next telemetry frame continues until a telemetry frame whose leader pointer is 0 is found, and the synchronization header position of the telemetry frame is used as the new segmentation point.
[0016] Preferably, in step S5, each processing sub-thread reads the telemetry source code in its own secondary data segment in turn, processes each frame of telemetry original code data and outputs the telemetry result data to a telemetry result temporary file until all the allocated original code data is processed.
[0017] Preferably, the telemetry frame includes a synchronization header, fixed area telemetry and sub-packet area telemetry, and the sub-packet area telemetry includes multiple data packets; the processing of a frame of telemetry source code data includes the following steps:
[0018] Step S5.1: read a telemetry frame and extract fixed area telemetry;
[0019] Step S5.2: determine the position of the first leader pointer, if the first leader pointer is not 0, extract the residual data and splice it with the remaining data of the previous frame;
[0020] Step S5.3: extracting each data packet in the telemetry of the packet sub-area in sequence until the last packet;
[0021] Step S5.4: Determine whether the last data packet is complete. If it is incomplete, temporarily store the data of the data packet in the remaining data area for splicing with the next telemetry frame;
[0022] Step S5.5: parse and process the fixed area telemetry and each data packet in the frame in turn, and output the processing results to the telemetry result file.
[0023] A high-speed satellite telemetry processing system provided by the present invention includes the following modules:
[0024] Module M1: Get the number of CPU cores N of the running computer;
[0025] Module M2: read the telemetry original code data file, obtain the file size, and divide the telemetry original code data file into N primary data segments according to the number of computer CPU cores;
[0026] Module M3: Slide and search for a telemetry frame independent of the previous frame at the starting position of the primary data segment, and re-split the file using the starting position of the independent telemetry frame as the split point to obtain N secondary data segments;
[0027] Module M4: Open N new processing sub-threads through the main thread, and allocate the i-th secondary data segment to the i-th thread, where i=1-N;
[0028] Module M5: Each processing sub-thread synchronously performs telemetry processing and parsing tasks, parses and inverts the telemetry original code data according to the protocol format, and obtains the telemetry processing result data;
[0029] Module M6: After waiting for all processing sub-threads to complete their respective telemetry processing tasks, the main thread sequentially splices the telemetry processing result data to generate the final telemetry processing result data file.
[0030] Preferably, the segmentation of the telemetry source code data file in the module M2 includes: slidingly searching for the synchronization header at the DataLen*m byte of the telemetry source code data file, m=1~N-1, and segmenting the telemetry source code data file with the starting position of the first found synchronization header as the segmentation point, the DataLen is the maximum integer less than FileLen / (N*OriLen), the FileLen is the number of bytes of the telemetry source code data file, and the OriLen is the byte length of a telemetry frame.
[0031] Preferably, in the module M3, a telemetry frame with a leader pointer of 0 is searched at the starting position of each secondary data segment, and the first independent telemetry frame synchronization header found is used as a new segmentation point. For the i-th secondary data segment, the first synchronization header is searched from the starting position of the secondary data segment from front to back, and the synchronization header is the starting point of the telemetry frame. If the leader pointer is not 0, it means that there is a residual packet of the previous frame in the current frame, then the search for the next telemetry frame continues until a telemetry frame with a leader pointer of 0 is found, and the synchronization header position of the telemetry frame is used as the new segmentation point.
[0032] Preferably, in the module M5, each processing sub-thread reads the telemetry source code in its own secondary data segment in turn, processes each frame of telemetry original code data and outputs the telemetry result data to a telemetry result temporary file until all the allocated original code data is processed.
[0033] Preferably, the telemetry frame includes a synchronization header, fixed area telemetry and sub-packet area telemetry, and the sub-packet area telemetry includes multiple data packets; the processing of one frame of telemetry source code data includes the following sub-modules:
[0034] Module M5.1: read a telemetry frame and extract fixed area telemetry;
[0035] Module M5.2: Determine the position of the first leader pointer. If the first leader pointer is not 0, extract the residual data and splice it with the remaining data of the previous frame;
[0036] Module M5.3: Extract each data packet in the telemetry of the packet sub-area in sequence until the last packet;
[0037] Module M5.4: Determine whether the last data packet is complete. If not, temporarily store the data of the data packet in the remaining data area for splicing with the next telemetry frame;
[0038] Module M5.5: parse and process the fixed area telemetry and each data packet in the frame in turn, and output the processing results to the telemetry result file.
[0039] Compared with the prior art, the present invention has the following beneficial effects:
[0040] 1. The high-speed satellite telemetry processing method described in the present invention is implemented on one computer, without the need for multiple computers to be networked and operated, and is simple and easy to implement;
[0041] 2. The present invention adopts a multi-threaded parallel mode, where multiple threads share the processing tasks and process simultaneously, effectively solving the problem of slow speed and low efficiency when a single thread processes large amounts of telemetry source code data;
[0042] 3. The present invention adaptively allocates processing tasks according to the number of computer CPU cores, which can more fully and flexibly utilize computer resources compared to fixed sub-threads;
[0043] 4. The present invention performs segmentation and splicing processing on telemetry data, solves the problem of segmentation of cross-frame packets in the packetized telemetry solution, and not only ensures the integrity and balance of the data, but also ensures the independence of the segmented data;
[0044] 5. The processing sub-threads adopt an independent division of labor method to avoid the system stability problems caused by communication and data exchange between multiple threads;
[0045] 6. The present invention is applicable to packetized telemetry schemes and most telemetry arrangement schemes, has good versatility, and also has good reference significance for simpler frame-independent arrangement schemes. BRIEF DESCRIPTION OF THE DRAWINGS
[0046] Other features, objects and advantages of the present invention will become more apparent from the detailed description of non-limiting embodiments made with reference to the following drawings:
[0047] Figure 1 Schematic diagram of the main process of the high-speed satellite telemetry processing method in an embodiment of the present invention;
[0048] Figure 2 This is a schematic diagram of telemetry source code data file segmentation in an embodiment of the present invention;
[0049] Figure 3 This is a flowchart of the telemetry processing sub-thread in an embodiment of the present invention. DETAILED DESCRIPTION
[0050] The present invention is described in detail below in conjunction with specific embodiments. The following embodiments will help those skilled in the art to further understand the present invention, but are not intended to limit the present invention in any form. It should be noted that, for those of ordinary skill in the art, several changes and improvements can also be made without departing from the concept of the present invention. These all belong to the protection scope of the present invention.
[0051] The present invention introduces a high-speed satellite telemetry processing method, referring to Figure 1 , including the following steps:
[0052] Step S1: Obtain the number N of CPU cores running the computer. For example, when an eight-core CPU is used, N=8.
[0053] Step S2: Read the telemetry source code data file, obtain the file size, and divide the telemetry source code data file into N primary data segments according to the number of CPU cores of the computer. Figure 2 , the specific implementation is as follows: define the number of bytes of the telemetry source code file as FileLen, and the length of one telemetry frame source code as OriLen, then each primary data segment roughly contains FileLen / (N*OriLen) frames of telemetry source code. Since FileLen / (N*OriLen) cannot be determined to be an integer, the start frame and end frame of each primary data segment are likely not complete frames. Therefore, it is necessary to find the synchronization header near the split point and split the telemetry data at the synchronization header position. Define DataLen as the largest integer less than FileLen / (N*OriLen), slide and search for the synchronization header at DataLen*m (m=1~N-1) bytes, and split the data with the starting position of the first synchronization header found as the split point. In this way, each primary data contains an integer number of complete frames and the number of complete frames contained is roughly the same. Each segmented primary data segment is marked as Data1, Data2, Data3...DataN.
[0054] Step S3: Slide and search for a telemetry frame independent of the previous frame at the starting position of the primary data segment, and re-divide the file with the starting position of the independent telemetry frame as the segmentation point to obtain N secondary data segments. The specific implementation is as follows: search for a telemetry frame with a first leader pointer of 0 (indicating that there is no residual telemetry packet of the previous frame) at the starting position of each primary data segment, and use the synchronization header of the first independent telemetry frame found as the new segmentation point. For the i-th primary data segment Data i (i=1~N), search for the first synchronization header from the starting position of the primary data segment from the front to the back, find the position of the first leader pointer according to the telemetry processing scheme, if the first leader pointer is not 0, indicating that there is a residual packet of the previous frame in the current frame, then continue to search for the next frame of telemetry original code until a telemetry frame with a first leader pointer of 0 is found, and the synchronization header position of the frame is used as the new segmentation point. Search for new segmentation points for each data segment except the first segment in turn, and re-divide the data segments according to the new segmentation points. The re-divided secondary data segments are marked as NewData1, NewData2, NewData3...NewDataN.
[0055] The telemetry frames of the data segments that have been re-divided are all complete, avoiding the problem of frame loss and ensuring data integrity. In addition, each data segment does not exist in other data segments across frames, and different data segments are independent of each other. The data re-segmentation diagram is shown in the figure below. Figure 1 shown.
[0056] Step S4: the main thread opens N processing sub-threads, namely Thread1 to TreadN, and the corresponding data to be processed are NewData1, NewData2, NewData3...NewDataN. Each thread executes the same telemetry processing task to process the data segment it is responsible for.
[0057] Step S5: Each processing sub-thread synchronously performs the telemetry processing and parsing task, parses and inverts the telemetry original code data according to the protocol format, and obtains the telemetry processing result data. The specific implementation is as follows: the processing sub-thread reads the telemetry original code frame data in sequence, processes each frame of telemetry original code data, and outputs the telemetry result data to the telemetry result temporary file ResultDatai until all the allocated original code data are processed.
[0058] Reference Figure 3The processing flow of a frame of telemetry original code data is: 1. Read a burst of telemetry frames and extract the fixed area telemetry; 2. Determine the position of the first leader needle. If the first leader pointer is not 0, extract the residual data and splice it with the remaining data of the previous frame; 3. Extract each data packet in the sub-packet area in turn until the last packet; 4. Determine whether the last packet is complete. If not, temporarily store the packet data in the remaining data area for the next frame of telemetry splicing; 5. Finally, parse and process the fixed area and each packet data in the frame in turn, and output the processing results to the telemetry result file. The telemetry result data file is marked as ResultDatai (1=1~N). The telemetry processing sub-thread executes the telemetry processing sub-process as follows Figure 2 shown.
[0059] Step S6: After the main thread waits for all processing sub-threads to complete their respective telemetry processing tasks, it sequentially splices the telemetry result temporary files ResultDatai (1=1~N) to generate a final complete telemetry processing result data file.
[0060] The present invention introduces a high-speed satellite telemetry processing system, comprising the following modules:
[0061] Module M1: Get the number of CPU cores N of the running computer;
[0062] Module M2: read the telemetry original code data file, obtain the file size, and divide the telemetry original code data file into N primary data segments according to the number of computer CPU cores.
[0063] The synchronization header is searched at the DataLen*m byte of the telemetry source code data file by sliding, where m=1 to N-1, and the telemetry source code data file is split with the starting position of the first found synchronization header as the split point. The DataLen is the maximum integer less than FileLen / (N*OriLen), the FileLen is the number of bytes of the telemetry source code data file, and the OriLen is the byte length of a telemetry frame.
[0064] Module M3: Slide and search for a telemetry frame independent of the previous frame at the starting position of the primary data segment, and re-split the file using the starting position of the independent telemetry frame as the split point to obtain N secondary data segments.
[0065] At the starting position of each secondary data segment, search for a telemetry frame with a leader pointer of 0, and use the first independent telemetry frame synchronization header found as a new segmentation point. For the i-th secondary data segment, search for the first synchronization header from the starting position of the secondary data segment from front to back. The synchronization header is the starting point of the telemetry frame. If the leader pointer is not 0, it means that there is a residual packet of the previous frame in the current frame. Then continue to search for the next telemetry frame until a telemetry frame with a leader pointer of 0 is found. The synchronization header position of the telemetry frame is used as the new segmentation point.
[0066] Module M4: Open N new processing sub-threads through the main thread, and allocate the i-th secondary data segment to the i-th thread, where i=1-N;
[0067] Module M5: Each processing sub-thread synchronously performs telemetry processing and parsing tasks, parses and inverts the telemetry original code data according to the protocol format, and obtains the telemetry processing result data.
[0068] Each processing sub-thread reads the telemetry source code in its own secondary data segment in turn, processes each frame of telemetry original code data and outputs the telemetry result data to the telemetry result temporary file until all the assigned original code data is processed.
[0069] Module M5 includes the following submodules:
[0070] Module M5.1: read a telemetry frame and extract fixed area telemetry;
[0071] Module M5.2: Determine the position of the first leader pointer. If the first leader pointer is not 0, extract the residual data and splice it with the remaining data of the previous frame;
[0072] Module M5.3: Extract each data packet in the telemetry of the packet sub-area in sequence until the last packet;
[0073] Module M5.4: Determine whether the last data packet is complete. If not, temporarily store the data of the data packet in the remaining data area for splicing with the next telemetry frame;
[0074] Module M5.5: parse and process the fixed area telemetry and each data packet in the frame in turn, and output the processing results to the telemetry result file.
[0075] Module M6: After the main thread waits for all processing sub-threads to complete their respective telemetry processing tasks, it splices the telemetry processing result data in sequence to generate the final telemetry processing result data file.
[0076] Those skilled in the art know that, in addition to realizing the system and its various devices, modules, and units provided by the present invention in a purely computer-readable program code, it is entirely possible to realize the same functions in the form of logic gates, switches, application-specific integrated circuits, programmable logic controllers, and embedded microcontrollers by logically programming the method steps. Therefore, the system and its various devices, modules, and units provided by the present invention can be considered as a hardware component, and the devices, modules, and units included therein for realizing various functions can also be regarded as structures within the hardware component; the devices, modules, and units for realizing various functions can also be regarded as both software modules for realizing the method and structures within the hardware component.
[0077] In the description of the present application, it should be understood that the terms "up", "down", "front", "back", "left", "right", "vertical", "horizontal", "top", "bottom", "inside", "outside", etc., indicating orientations or positional relationships, are based on the orientations or positional relationships shown in the accompanying drawings, and are only for the convenience of describing the present application and simplifying the description, and do not indicate or imply that the referred device or element must have a specific orientation, be constructed and operated in a specific orientation, and therefore should not be understood as a limitation on the present application.
[0078] The above describes the specific embodiments of the present invention. It should be understood that the present invention is not limited to the above specific embodiments, and those skilled in the art can make various changes or modifications within the scope of the claims, which does not affect the essence of the present invention. In the absence of conflict, the embodiments of the present application and the features in the embodiments can be combined with each other arbitrarily.
Claims
1. A high-speed satellite telemetry processing method, characterized in that: The following steps are involved: Step S1: Obtain the number N of CPU cores running the computer; Step S2: read the telemetry original code data file, obtain the file size, and divide the telemetry original code data file into N primary data segments according to the number of CPU cores of the computer; Step S3: Slide and search for a telemetry frame independent of the previous frame at the starting position of the primary data segment, and re-segment the file using the starting position of the independent telemetry frame as the segmentation point to obtain N secondary data segments; Step S4: the main thread opens N new processing sub-threads and allocates the i-th secondary data segment to the i-th thread, where i=1-N; Step S5: Each processing sub-thread synchronously performs the telemetry processing and parsing task, parses and inverts the telemetry original code data according to the protocol format, and obtains the telemetry processing result data; Step S6: After the main thread waits for all processing sub-threads to complete their respective telemetry processing tasks, it splices the telemetry processing result data in sequence to generate a final telemetry processing result data file; The segmentation of the telemetry source code data file in step S2 includes: slidingly searching for a synchronization header at the DataLen*m byte of the telemetry source code data file, where m=1 to N-1, and segmenting the telemetry source code data file with the starting position of the first synchronization header found as the segmentation point, wherein DataLen is a maximum integer less than FileLen / (N*OriLen), FileLen is the number of bytes of the telemetry source code data file, and OriLen is the byte length of a telemetry frame; In step S3, a telemetry frame with a leader pointer of 0 is searched at the starting position of each secondary data segment, and the first independent telemetry frame synchronization header found is used as a new segmentation point. For the i-th secondary data segment, the first synchronization header is searched from the starting position of the secondary data segment from the front to the back. The synchronization header is the starting point of the telemetry frame. If the leader pointer is not 0, it means that there is a residual packet of the previous frame in the current frame, and the next telemetry frame is searched continuously until a telemetry frame with a leader pointer of 0 is found, and the synchronization header position of the telemetry frame is used as the new segmentation point. In step S5, each processing sub-thread sequentially reads the telemetry source code in its own secondary data segment, processes each frame of telemetry source code data, and outputs the telemetry result data to a telemetry result temporary file until all the allocated source code data is processed; The telemetry frame includes a synchronization header, fixed area telemetry and sub-packet area telemetry, and the sub-packet area telemetry includes multiple data packets; the processing of a frame of telemetry source code data includes the following steps: Step S5.1: read a telemetry frame and extract fixed area telemetry; Step S5.2: determine the position of the first leader pointer, if the first leader pointer is not 0, extract the residual data and splice it with the remaining data of the previous frame; Step S5.3: extracting each data packet in the telemetry of the packet sub-area in sequence until the last packet; Step S5.4: Determine whether the last data packet is complete. If it is incomplete, temporarily store the data of the data packet in the remaining data area for splicing with the next telemetry frame; Step S5.5: parse and process the fixed area telemetry and each data packet in the frame in turn, and output the processing results to the telemetry result file.
2. A high-speed satellite telemetry processing system, characterized in that: Includes the following modules: Module M1: Get the number of CPU cores N of the running computer; Module M2: read the telemetry original code data file, obtain the file size, and divide the telemetry original code data file into N primary data segments according to the number of computer CPU cores; Module M3: Slide and search for a telemetry frame independent of the previous frame at the starting position of the primary data segment, and re-split the file using the starting position of the independent telemetry frame as the split point to obtain N secondary data segments; Module M4: Open N new processing sub-threads through the main thread, and allocate the i-th secondary data segment to the i-th thread, where i=1-N; Module M5: Each processing sub-thread synchronously performs telemetry processing and parsing tasks, parses and inverts the telemetry original code data according to the protocol format, and obtains the telemetry processing result data; Module M6: After waiting for all processing sub-threads to complete their respective telemetry processing tasks, the main thread sequentially splices the telemetry processing result data to generate the final telemetry processing result data file; The segmentation of the telemetry source code data file in the module M2 includes: slidingly searching for a synchronization header at the DataLen*m byte of the telemetry source code data file, where m=1 to N-1, and segmenting the telemetry source code data file with the starting position of the first synchronization header found as the segmentation point, wherein DataLen is the largest integer less than FileLen / (N*OriLen), FileLen is the number of bytes of the telemetry source code data file, and OriLen is the byte length of a telemetry frame; In the module M3, a telemetry frame with a leader pointer of 0 is searched at the starting position of each secondary data segment, and the first independent telemetry frame synchronization header found is used as a new segmentation point. For the i-th secondary data segment, the first synchronization header is searched from the starting position of the secondary data segment from the front to the back. The synchronization header is the starting point of the telemetry frame. If the leader pointer is not 0, it means that there is a residual packet of the previous frame in the current frame, and the next telemetry frame is searched continuously until a telemetry frame with a leader pointer of 0 is found, and the synchronization header position of the telemetry frame is used as a new segmentation point. In the module M5, each processing sub-thread sequentially reads the telemetry source code in its own secondary data segment, processes each frame of telemetry original code data, and outputs the telemetry result data to the telemetry result temporary file until all the allocated original code data is processed; The telemetry frame includes a synchronization header, fixed area telemetry and sub-packet area telemetry, and the sub-packet area telemetry includes multiple data packets; the processing of a frame of telemetry source code data includes the following sub-modules: Module M5.1: read a telemetry frame and extract fixed area telemetry; Module M5.2: Determine the position of the first leader pointer. If the first leader pointer is not 0, extract the residual data and splice it with the remaining data of the previous frame; Module M5.3: Extract each data packet in the telemetry of the packet sub-area in sequence until the last packet; Module M5.4: Determine whether the last data packet is complete. If not, temporarily store the data of the data packet in the remaining data area for splicing with the next telemetry frame; Module M5.5: parse and process the fixed area telemetry and each data packet in the frame in turn, and output the processing results to the telemetry result file.
Citation Information
Patent Citations
Telemetry data processing method
CN102323941A
A method for processing telemetry data from a spacecraft
CN103347025B
Storage structure based telemetry data processing method
CN104102690A
Data block dividing method in XML parsing and XML parsing method
CN103020176A
Segmented multi-thread task execution method and device
CN109522128A