A method, system, device, and medium for presenting rocket telemetry data in a sliding window

By processing rocket telemetry data using a sliding window method, the problems of untimely rendering and difficulty in capturing trend details caused by the large amount of data during rocket launch were solved. This enabled efficient and real-time data display and analysis, improving the stability and diagnostic efficiency of rocket launch monitoring.

CN122240698APending Publication Date: 2026-06-19ZHONGKE XINGTU MEASUREMENT & CONTROL TECH CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
ZHONGKE XINGTU MEASUREMENT & CONTROL TECH CO LTD
Filing Date
2026-03-12
Publication Date
2026-06-19

AI Technical Summary

Technical Problem

Existing technologies for real-time display of telemetry data during rocket launches face challenges such as untimely rendering due to large data volumes, page lag, and difficulty in simultaneously capturing global trends and local details.

Method used

Telemetry data is processed using a sliding window approach. By receiving and distinguishing historical and new data, a base time is determined, a sliding window calculation function is called to filter a subset of data, and the data is then visualized in a chart component.

Benefits of technology

It effectively reduces the browser rendering pressure, improves page smoothness and real-time performance, supports users to flexibly adjust the observation range, realizes collaborative analysis of global trends and local details, and improves the diagnostic efficiency of rocket launch monitoring.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122240698A_ABST
    Figure CN122240698A_ABST
Patent Text Reader

Abstract

This invention discloses a method, system, device, and medium for displaying rocket telemetry data using a sliding window mechanism. The method includes: processing historical data and newly added data separately to determine a reference time; based on the reference time, calling a sliding window calculation function to return a time range, and filtering a subset of data within that time range from the telemetry data array; and loading the data subset into a chart component for visualization. This invention dynamically captures and displays local telemetry data within the current time window through a sliding window mechanism, avoiding the memory accumulation and rendering lag issues caused by traditional chart libraries loading all data at once. This significantly reduces the browser rendering pressure, ensures smooth page response, reduces the amount of data transmitted over the network, improves the speed of data initialization and real-time updates, and ensures the stability and real-time performance of the monitoring system.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of rocket telemetry data display technology, and in particular to a method, system, device and medium for displaying rocket telemetry data in a sliding window manner. Background Technology

[0002] With the rapid development of aerospace technology, rocket launches are becoming increasingly frequent, placing higher demands on real-time monitoring and data analysis of the launch process. During pre-launch testing, the ascent phase, and on-orbit operation, rockets generate massive amounts of highly real-time time-series telemetry data. This data is multi-dimensional and highly valuable, serving as crucial evidence for status monitoring, anomaly warning, and post-launch fault analysis.

[0003] Currently, mature chart libraries such as ECharts are commonly used in front-end data visualization. However, when directly applied to rocket telemetry scenarios, existing technologies face significant challenges: with the continuous influx of real-time data, the number of data points that the front-end needs to render grows linearly or even exponentially. This easily leads to ECharts charts failing to render in a timely manner due to data accumulation, causing performance issues such as page lag, slow response, and even browser crashes, severely impacting the real-time performance and effectiveness of monitoring.

[0004] Furthermore, at the data analysis level, existing methods struggle to balance global trends with local details. If the entire process data is displayed, the sheer volume of data makes it impossible to clearly observe subtle changes within key time segments; if only local details are focused on, the lack of correlation with data from preceding and following time periods hinders the analysis of parameter trends and the rapid identification of the root causes of anomalies.

[0005] Therefore, there is an urgent need in this field for a method to display rocket telemetry data in a sliding window manner, so as to improve the smoothness, real-time performance and accuracy of the entire rocket launch monitoring process. Summary of the Invention

[0006] To address the aforementioned problems, the present invention aims to provide a method, system, device, and medium for displaying rocket telemetry data in a sliding window manner, which can efficiently process massive amounts of real-time data and effectively balance the visualization of macroscopic trends and microscopic details.

[0007] This invention provides a method, system, device, and medium for displaying rocket telemetry data in a sliding window manner.

[0008] First aspect: A method for displaying rocket telemetry data using a sliding window, including:

[0009] Receive telemetry data arrays and classify them into historical data or new data;

[0010] The historical data or newly added data are processed separately to determine their respective base time;

[0011] Based on the aforementioned reference time, the sliding window calculation function is invoked;

[0012] Based on the time range returned by the sliding window calculation function, a subset of data within that time range is selected from the telemetry data array;

[0013] The data subset is loaded into a chart component for visualization.

[0014] In one embodiment of the present invention, the telemetry data array is determined to be either historical data or newly added data based on the data type identifier.

[0015] In one embodiment of the present invention, the historical data or the newly added data are processed respectively, including performing a first processing logic on the historical data and performing a second processing logic on the newly added data;

[0016] In one embodiment of the present invention, the first processing logic includes: obtaining the timestamp of the first data point in the telemetry data array as a reference time.

[0017] In one embodiment of the present invention, the second processing logic includes:

[0018] Calculate the difference between the timestamps of the last data point and the first data point in the telemetry data array to obtain the data time span; compare the data time span with the preset window display duration; if the data time span is greater than the window display duration, then the timestamp of the last data point is used as the base time; if the data time span is less than or equal to the window display duration, then the timestamp of the first data point is used as the base time.

[0019] In one embodiment of the present invention, the sliding window calculation function takes a reference time as an input parameter and performs the following operations:

[0020] If the current window start time is empty, then the base time is set to the current window start time, and the time range starting from the current window start time and adding the window display duration as the end time is returned.

[0021] If the current window start time is not empty, calculate the current window end time; determine if the base time is greater than the current window end time; if yes, slide the current window start time backward by a preset sliding step, and return to the time range with the sliding start time as the starting point and the window display duration as the end time; if no, return to the time range with the current window start time as the starting point and the current window end time as the end time.

[0022] In one embodiment of the present invention, the time axis range of the chart component is set to match the time range.

[0023] The second aspect: a system for displaying rocket telemetry data via a sliding window, including:

[0024] The data receiving module is used to receive telemetry data arrays and data type identifiers;

[0025] The data type determination module is used to determine the data source type based on the data type identifier;

[0026] The base time determination module determines the base time based on the data source type.

[0027] The sliding window calculation module is used to receive the reference time, call the sliding window calculation function to perform the sliding window calculation operation, and return the sliding window time range;

[0028] The data filtering module is used to filter out a subset of data within the time range returned by the sliding window calculation module from the telemetry data array;

[0029] The chart rendering module is used to load the data subset into the chart component for visualization.

[0030] Third aspect: An electronic device including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor, when executing the program, performs the steps of the method provided in the first aspect.

[0031] Fourth aspect: A non-transitory computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steps of the method provided in the first aspect.

[0032] The beneficial effects of this invention are:

[0033] 1. This invention dynamically captures and displays local telemetry data within the current time window using a sliding window mechanism, effectively avoiding the memory accumulation and rendering stuttering issues caused by traditional chart libraries (such as ECharts) loading the entire dataset at once. In high real-time scenarios such as rocket launches, the amount of telemetry data can reach millions. The sliding window limits the amount of data rendered each time to a fixed time range (e.g., 10 minutes), significantly reducing the browser's rendering pressure and ensuring smooth page response. Simultaneously, local data loading reduces the amount of data transmitted over the network, improves the speed of data initialization and real-time updates, ensures the stability and real-time performance of the monitoring system, and significantly improves front-end rendering performance and data loading efficiency.

[0034] 2. This invention, through a sliding time window, allows users to flexibly adjust the observation interval. It enables users to focus on data details within a specific time period and compare data changes between different time periods, intuitively reflecting parameter evolution trends. This mechanism resolves the contradiction in traditional visualization schemes where global views lose detail and local views lack context. It is particularly suitable for scenarios such as rocket launch failure review and anomaly localization, helping analysts quickly correlate abnormal data with its temporal sequence, improving diagnostic efficiency, and achieving collaborative analysis of global trends and local details.

[0035] 3. This invention dynamically determines the data increment type and window boundary conditions, enabling it to adapt to the telemetry monitoring needs of different rocket stages. The window size and sliding step are configurable, satisfying both long-term data trend observation and rapid refresh of high-frequency real-time data. This method integrates into visualization tools such as ECharts through a standardized process, improving the scalability and scenario adaptability of the telemetry monitoring system. It adapts to the flexibility and real-time requirements of monitoring the entire rocket launch process. Attached Figure Description

[0036] Figure 1 This is a flowchart illustrating the principle of the method of the present invention;

[0037] Figure 2 This is a flowchart illustrating the sliding window calculation function of the present invention;

[0038] Figure 3 This is a schematic diagram of the structure of the electronic device of the present invention. Detailed Implementation

[0039] Embodiments of the present invention are described in detail below. Examples of these embodiments are illustrated in the accompanying drawings, wherein the same or similar symbols denote the same or similar elements or elements having the same or similar functions throughout. The embodiments described below with reference to the accompanying drawings are exemplary and are only used to explain the present invention, and should not be construed as limiting the present invention.

[0040] Existing technologies suffer from problems such as echarts rendering pages with large amounts of data being prone to lag and crashes, and the inability to simultaneously capture global trends and detailed data.

[0041] To address the aforementioned problems, this invention discloses a method for displaying rocket telemetry data via a sliding window. To make the objectives, technical solutions, and advantages of this disclosure clearer, the following detailed description is provided in conjunction with specific embodiments.

[0042] Example 1:

[0043] This embodiment discloses a method for displaying rocket telemetry data in a sliding window manner, such as... Figure 1 As shown, it includes:

[0044] First, receive the telemetry data array and distinguish it into historical data or new data.

[0045] Upon receiving the telemetry data array (arrs) and data type identifier (type) from the message queue (MQ), the type is used to determine the data source. Based on the type value, it is determined whether it is newly added data or historical data retrieved once during a page refresh.

[0046] The telemetry data array contains multiple data points, each of which includes a timestamp and a value. The format can be [timestamp, value], i.e., [timestamp, data value].

[0047] Then, the historical data and new data are processed separately to determine their respective base time. Specifically:

[0048] The data source type is determined based on the data type identifier. If it is historical data, the first processing logic is executed; if it is new data, the second processing logic is executed.

[0049] The execution of the first processing logic includes: taking the first data timestamp ars[0][0] of the telemetry data array (arrs) and assigning it to a variable as the historical data reference time (curTime).

[0050] Executing the second processing logic includes:

[0051] Calculate the time difference (gapTime) between the last data point and the first data point in the telemetry data array as the data time span; compare the data time span with the preset window display duration (MAX_WINDOW_MS); if the data time span is greater than the window display duration, use the timestamp of the last data point as the base time; if the data time span is less than or equal to the window display duration, use the timestamp of the first data point as the base time.

[0052] Then, based on the base time, the sliding window calculation function (updateChartdataFunc()) is called.

[0053] The sliding window calculation function takes a base time as input and performs the following operations:

[0054] If the current window start time (startTime) is empty, the base time is set to the current window start time, and the time range [min, max] is returned, which is the current window start time plus the window display duration as the end time.

[0055] If the current window's start time is not empty, calculate the current window's end time (currentWindowEnd); determine if the base time is greater than the current window's end time; if so, slide the current window's start time forward by a preset sliding step (DROP_MS / 1000), and return the time range with the slided start time as the starting point and the window display duration as the end time; if not, return the time range with the current window's start time as the starting point and the current window's end time as the end time.

[0056] Then, based on the time range returned by the sliding window calculation function, a subset of data within that time range is selected from the telemetry data array.

[0057] Finally, set the time axis range of the chart component to match the time range, and load the data subset into the chart component for visualization.

[0058] Example 2:

[0059] This embodiment, based on Embodiment 1, illustrates the method of displaying rocket telemetry data via a sliding window by incorporating computer language variables. Specifically, as follows... Figure 2 As shown:

[0060] Step 1: Receive the telemetry data ars from the MQ message, and determine whether it is newly added data or historical data retrieved once by page refresh based on the passed parameter type value.

[0061] Step 1-1: If it is historical data, take the first data timestamp of the telemetry data ars[0][0], assign it to the curTime variable, and call the updateChartdataFunc() function, passing in the curTime parameter. If it is newly added data, proceed to the next step of judgment.

[0062] Step 2: Obtain the last and first data values ​​of the telemetry data arrs, and calculate the difference (gapTime). Compare this gapTime with the set window display duration (MAX_WINDOW_MS).

[0063] Step 2-1: If the gapTime value is greater than MAX_WINDOW_MS, take the time of the last data value of the telemetry data ars and assign it to curTime=arrs[arrs.length-1][0]. Call the updateChartdataFunc() function and pass in the parameter curTime.

[0064] Step 2-2: If the gapTime value is less than MAX_WINDOW_M, take the time of the first data value of the telemetry data ars and assign it to curTime=arrs[0][0]. Call the updateChartdataFunc() function and pass in the parameter curTime.

[0065] Step 3: As Figure 2 As shown, the updateChartdataFunc() function is called with the parameter time (curTime).

[0066] Step 3-1: Check if the input parameter `time` is null or undefined. If it is, return null; otherwise, assign `time` to `curTimes`.

[0067] Step 3-2: Check if the start time (timestamp format) is empty. If so, update startTime, startTime=curTimes, and return min:startTime, max:startTime+MAX_WINDOW_MS / 1000;

[0068] If not, set the current window's end value to currentWindowEnd, where currentWindowEnd = startTime + MAX_WINDOW_MS / 1000;

[0069] Step 3-3: Determine if curTimes is greater than the current window's end value currentWindowEnd. If so, update startTime, startTime = startTime + DROP_MS / 1000, and return min:startTime, max:startTime + MAX_WINDOW_MS / 1000;

[0070] If not, return min:startTime, max:currentWindowEnd.

[0071] Step 4: Based on the maximum value (max) and minimum value (min) returned by the updateChartdataFunc() function, filter the arrs telemetry data, keeping only the data that is greater than min and less than max;

[0072] Step 5: Set the maximum value of the X-axis range for the ECharts chart to 'max' and the minimum value to 'min', and set the options data in the sequence to 'data'. The chart data will be displayed in a sliding window.

[0073] let startTime=null; / / Start time (time of the first data point, timestamp); const MAX_WINDOW_MS=10*60*1000; / / Set the window display duration in milliseconds; const DROP_MS=5*60*1000; / / Window swiping duration in milliseconds when the value exceeds the range.

[0074] Example 3:

[0075] This embodiment discloses a system for displaying rocket telemetry data in a sliding window manner. The system is applied to the method of embodiment 1 or 2. The system includes a data receiving module, a data type judgment module, a reference time determination module, a sliding window calculation module, a data filtering module, and a chart rendering module.

[0076] The data receiving module is used to receive telemetry data arrays and data type identifiers;

[0077] The data type determination module is connected to the data receiving module and is used to determine the data source type based on the data type identifier.

[0078] The data type identification module, serving as the system's data entry point, is responsible for communicating with external data sources and receiving raw rocket telemetry data streams. Its main functions include listening to message queues or responding to HTTP requests, obtaining structured data, and determining the data source type based on data type identifiers.

[0079] The base time determination module is connected to both the data type determination module and the data receiving module, and is used to perform the following operations:

[0080] If the data source type is historical data, the first processing logic is triggered; if the data source type is newly added data, the second processing logic is triggered.

[0081] When the first processing logic is triggered, the timestamp of the first data point in the telemetry data array is obtained as the base time.

[0082] When the second processing logic is triggered, the difference between the timestamps of the last data point and the first data point in the telemetry data array is calculated to obtain the data time span; the data time span is compared with the preset window display duration; if the data time span is greater than the window display duration, the timestamp of the last data point is used as the base time; if the data time span is less than or equal to the window display duration, the timestamp of the first data point is used as the base time.

[0083] The sliding window calculation module, connected to the base time determination module, receives the base time and calls the sliding window calculation function to perform the sliding window calculation operation.

[0084] If the current window's start time is empty, then set the base time to the current window's start time and return a time range starting from the current window's start time and adding the window's display duration as the end time.

[0085] If the current window start time is not empty, calculate the current window end time; determine if the base time is greater than the current window end time; if so, slide the current window start time backward by a preset sliding step, and return to the time range with the window display duration as the starting point after the slide as the starting point;

[0086] If not, return the time range starting from the current window's start time and ending at the current window's end time;

[0087] The data filtering module is connected to the sliding window calculation module and the data receiving module respectively. It is used to filter out a subset of data within the time range from the telemetry data array based on the time range returned by the sliding window calculation module.

[0088] The chart rendering module, connected to the data filtering module, is used to load a subset of data into the chart component for visualization and to set the time axis range of the chart component to match the time range.

[0089] The present invention also provides an electronic device, Figure 3 This is a schematic diagram of the structure of an electronic device provided in an embodiment of the present invention, such as... Figure 3 As shown, the electronic device may include a processor, a communications interface, memory, and a communication bus, wherein the processor, communications interface, and memory communicate with each other via the communication bus. The processor can invoke logical instructions from the memory, for example, to execute the following method:

[0090] Receive telemetry data arrays and classify them into historical data or new data;

[0091] The historical data or newly added data are processed separately to determine their respective base time;

[0092] Based on the aforementioned reference time, the sliding window calculation function is invoked;

[0093] Based on the time range returned by the sliding window calculation function, a subset of data within that time range is selected from the telemetry data array;

[0094] The data subset is loaded into a chart component for visualization.

[0095] Furthermore, the logical instructions in the aforementioned memory can be implemented as software functional units and sold or used as independent products, and can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art, or a part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0096] This invention also provides a non-transitory computer-readable storage medium storing a computer program thereon, which, when executed by a processor, is implemented to perform the methods provided in the above embodiments, including, for example:

[0097] Receive telemetry data arrays and classify them into historical data or new data;

[0098] The historical data or newly added data are processed separately to determine their respective base time;

[0099] Based on the aforementioned reference time, the sliding window calculation function is invoked;

[0100] Based on the time range returned by the sliding window calculation function, a subset of data within that time range is selected from the telemetry data array;

[0101] The data subset is loaded into a chart component for visualization.

[0102] The system embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs. Those skilled in the art can understand and implement this without any creative effort.

[0103] Through the above description of the embodiments, those skilled in the art can clearly understand that each embodiment can be implemented by means of software plus necessary general-purpose hardware platforms, and of course, it can also be implemented by hardware. Based on this understanding, the above technical solutions, in essence or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, magnetic disk, optical disk, etc., and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute the methods described in the various embodiments or some parts of the embodiments.

[0104] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, and not to limit them; although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features; and these modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention.

Claims

1. A method for displaying rocket telemetry data via a sliding window, characterized in that, include: Receive telemetry data arrays and classify them into historical data or new data; The historical data or newly added data are processed separately to determine their respective base time; Based on the aforementioned reference time, the sliding window calculation function is invoked; Based on the time range returned by the sliding window calculation function, a subset of data within that time range is selected from the telemetry data array; The data subset is loaded into a chart component for visualization.

2. The method according to claim 1, characterized in that, The telemetry data array is used to determine whether the data source is historical data or newly added data based on the data type identifier.

3. The method according to claim 2, characterized in that, The historical data and the newly added data are processed respectively, including performing a first processing logic on the historical data and performing a second processing logic on the newly added data.

4. The method according to claim 3, characterized in that, The first processing logic includes: obtaining the timestamp of the first data point in the telemetry data array as the base time.

5. The method according to claim 4, characterized in that, The second processing logic includes: Calculate the difference between the timestamps of the last data point and the first data point in the telemetry data array to obtain the data time span; compare the data time span with the preset window display duration; if the data time span is greater than the window display duration, then the timestamp of the last data point is used as the base time; if the data time span is less than or equal to the window display duration, then the timestamp of the first data point is used as the base time.

6. The method according to claim 4, characterized in that, The sliding window calculation function takes a reference time as an input parameter and performs the following operations: If the current window start time is empty, then the base time is set to the current window start time, and the time range starting from the current window start time and adding the window display duration as the end time is returned. If the current window start time is not empty, calculate the current window end time; determine if the base time is greater than the current window end time; if yes, slide the current window start time backward by a preset sliding step, and return to the time range with the sliding start time as the starting point and the window display duration as the end time; if no, return to the time range with the current window start time as the starting point and the current window end time as the end time.

7. The method according to claim 1, characterized in that, Set the time axis range of the chart component to match the time range.

8. A system for displaying rocket telemetry data in a sliding window manner using the method described in any one of claims 1 to 7, characterized in that, The system includes: The data receiving module is used to receive telemetry data arrays and data type identifiers; The data type determination module is used to determine the data source type based on the data type identifier; The base time determination module determines the base time based on the data source type. The sliding window calculation module is used to receive the reference time, call the sliding window calculation function to perform the sliding window calculation operation, and return the sliding window time range; The data filtering module is used to filter out a subset of data within the time range returned by the sliding window calculation module from the telemetry data array; The chart rendering module is used to load the data subset into the chart component for visualization.

9. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the program, it implements the steps of the method as described in any one of claims 1 to 7.

10. A non-transitory computer-readable storage medium having a computer program stored thereon, characterized in that, When executed by a processor, the computer program implements the steps of the method as described in any one of claims 1 to 7.