Satellite on-orbit mission program control instruction automatic generation method and device

CN122816702APending Publication Date: 2026-09-25BEIJING WEINA STAR TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202610980638.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-07-02
Publication Date
2026-09-25

AI Technical Summary

Technical Problem

一方面,任务参数需要人工逐一填入不同的指令模板,不仅处理效率低下,而且容易出现参数录入错误或遗漏;不同成像模式对应不同的指令格式,人工切换模板过程繁琐且易发生混淆,存在指令格式错误的风险

Benefits of technology

通过构建覆盖任务输入、预处理、并行处理、结果输出的完整自动化处理流程,首先以标准化的Excel配置文件作为统一任务输入源,实现了全量任务参数的集中化管理与统一解析,避免了多源参数输入带来的数据不一致问题;通过基于UTC时间的任务排序预处理,从数据源层面保障了指令生成顺序与卫星实际执行时序的一致性,从根源上规避了任务时序冲突的风险;通过载荷标识的前置解析与参数数组化处理,为载荷数据的自动化匹配封装提供了标准化的匹配依据;采用程控指令生成与载荷数据加工的双流程并行架构,打破了传统串行处理的效率瓶颈,可同时完成两类核心任务文件的批量生成;最终输出的标准化指令文件与载荷数据文件可直接适配星地上注的格式要求,无需人工二次调整,整体实现了卫星在轨任务指令生成的全流程自动化,大幅提升了高密度卫星任务的处理效率与输出结果的一致性。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122816702A_ABST
    Figure CN122816702A_ABST
Patent Text Reader

Abstract

The application provides a satellite on-orbit task program control instruction automatic generation method and device, the method comprises the following steps: firstly reading an Excel configuration file containing a task planning list, sorting the task list in ascending order according to the task starting UTC time, extracting the load identification field and converting it into a hexadecimal byte stream to generate a corresponding load parameter array; then starting multi-thread parallel execution of the program control instruction generation process and the load data processing process, respectively completing the encoding and packaging of the program control instruction and the protocol encapsulation of the load data; finally outputting the program control instruction file and the processed load data file that meet the requirements of the satellite-ground interface. The application can realize the full-automatic batch generation of satellite on-orbit task instructions and load data, improve the task processing efficiency and result consistency, and adapt to the high-density satellite task planning requirements of commercial aerospace.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of satellite on-orbit program control command generation technology, and in particular to a method and device for automatically generating satellite on-orbit mission program control commands. Background Technology

[0002] Synthetic Aperture Radar (SAR) Earth observation remote sensing satellites, as active microwave remote sensing observation equipment, have the ability to operate in all weather and all time, and are not limited by meteorological and environmental conditions such as clouds, fog, rain, snow, and light. They can stably achieve high-precision detection of the Earth and have now become the core technology equipment for Earth remote sensing observation, land surveying and mapping, natural resource exploration, geological disaster monitoring, dynamic monitoring of marine environment, and acquisition of basic geographic information. Currently, a multi-band, multi-spectral SAR satellite observation system has been formed at the application level, covering different observation accuracies and application scenarios. Typical on-orbit SAR satellites cover different mainstream working bands: L-band, represented by the Land Detection-1 (LT-1) satellite, has good vegetation and surface penetration characteristics and is suitable for surface deformation monitoring, geological mapping and other scenarios; C-band, represented by the Gaofen-3 (GF-3) satellite, has balanced imaging performance and wide applicability to various scenarios, and is the main satellite for domestic civilian remote sensing, marine observation and resource survey; X-band, represented by the TerraSAR-X satellite, has high spatial resolution characteristics and can meet the needs of high-precision operations such as fine-grained surface observation and urban monitoring.

[0003] Although existing SAR satellites have achieved routine on-orbit observation operations, in actual operation, they generally suffer from problems such as multiple types of on-orbit programmable task commands, cumbersome configuration, poor command generation adaptability, and high degree of human intervention. These issues make it difficult to meet the needs of SAR satellites for efficient, automated, and accurate on-orbit operations in multi-satellite parallel scenarios.

[0004] As the core carrier for ground control of satellite on-orbit operation, the quality and efficiency of SAR satellite command generation directly determine the execution effect and on-orbit operational safety of the satellite mission. Currently, the mainstream methods for generating SAR satellite command mainly rely on manual editing or simple semi-automatic scripts, which have many shortcomings in practical applications. Firstly, mission parameters need to be manually entered one by one into different command templates, which is not only inefficient but also prone to errors or omissions. Different imaging modes correspond to different command formats, and manually switching templates is cumbersome and prone to confusion, posing a risk of command format errors. Secondly, payload data blocks require manual addition of frame headers, length padding, and verification information according to the satellite-to-ground interface protocol, resulting in a large workload and high error rate. Furthermore, existing methods lack unified mission timing control and batch generation capabilities, making it difficult to cope with the batch processing needs of high-density missions, easily leading to mission execution timing chaos and failing to meet the high-density, high-reliability mission requirements of commercial aerospace. Summary of the Invention

[0005] In view of this, the embodiments of this application provide a method and apparatus for automatically generating satellite on-orbit mission control instructions, which can realize fully automated batch generation of satellite on-orbit control instructions and payload data, greatly improve mission processing efficiency, effectively reduce human error rate, ensure the correctness of instruction timing and protocol compliance, and can adapt to the high-density, multi-mode satellite mission requirements of commercial aerospace.

[0006] The technical solution of this application embodiment is implemented as follows: In a first aspect, embodiments of this application provide a method for automatically generating satellite on-orbit mission control instructions, comprising the following steps: Read the Excel configuration file containing the task planning list, which at least includes the task start UTC time, imaging mode, task parameters, and payload identification fields; Sort the task planning list in ascending order according to the task start UTC time to generate a sorted task dataset. Parse the sorted task dataset, extract the payload identifier field and convert it into a hexadecimal byte stream to generate the corresponding payload parameter array; The programmable instruction generation process and the payload data processing process are executed in parallel. The programmable instruction generation process includes traversing the sorted task dataset, automatically selecting the matching Excel macro template worksheet according to the imaging mode corresponding to the task, writing the task parameters into the specified cells of the template, calling the preset VBA macro in the template to complete the instruction encoding and packaging, reading the generated programmable instruction string and outputting it as an instruction file. The payload data processing process includes scanning the original payload text files in the input folder, matching the corresponding payload parameter array according to the file name, adding frame headers and hexadecimal byte streams corresponding to the payload parameter array to the original payload data, performing length padding and XOR check calculation on the data, and formatting the output as a payload data file conforming to the satellite-to-ground interface protocol. Output all programmable instruction files and processed load data files.

[0007] Secondly, embodiments of this application also provide an automatic generation device for satellite on-orbit mission control instructions, the device comprising: The parameter configuration module is used to read an Excel configuration file containing a task planning list, which includes at least the task start UTC time, imaging mode, task parameters, and payload identification fields. The task sorting module is used to sort the task planning list in ascending order according to the task start UTC time and generate a sorted task dataset. The parameter parsing module is used to parse the sorted task dataset, extract the payload identifier field and convert it into a hexadecimal byte stream, and generate the corresponding payload parameter array. The parallel processing module is used to execute the programmable instruction generation process and the payload data processing process in parallel. The programmable instruction generation process includes traversing the sorted task dataset, automatically selecting a matching Excel macro template worksheet based on the imaging mode corresponding to the task, writing task parameters into specified cells of the template, calling a preset VBA macro within the template to complete instruction encoding and packaging, reading the generated programmable instruction string, and outputting it as an instruction file. The payload data processing process includes scanning the original payload text files in the input folder, matching the corresponding payload parameter array based on the filename, adding a frame header and a hexadecimal byte stream corresponding to the payload parameter array to the original payload data, performing length padding and XOR check calculations on the data, and formatting the output as a payload data file conforming to the satellite-to-ground interface protocol. The results output module is used to output all programmable instruction files and processed load data files.

[0008] Thirdly, embodiments of this application also provide an electronic device, including: a processor, a storage medium, and a bus, wherein the storage medium stores machine-readable instructions executable by the processor, and when the electronic device is running, the processor communicates with the storage medium via the bus, and the processor executes the machine-readable instructions to perform the automatic generation method for satellite on-orbit mission program control instructions as described in any of the first aspects.

[0009] Fourthly, embodiments of this application also provide a computer-readable storage medium storing a computer program, wherein the computer program, when executed by a processor, performs the automatic generation method for satellite on-orbit mission program control instructions as described in any one of the first aspects.

[0010] The embodiments of this application have the following beneficial effects: By constructing a complete automated processing flow covering task input, preprocessing, parallel processing, and result output, a standardized Excel configuration file is first used as a unified task input source, enabling centralized management and unified parsing of all task parameters and avoiding data inconsistency issues caused by multi-source parameter input. Through task sorting preprocessing based on UTC time, the consistency between the order of command generation and the actual execution sequence of the satellite is ensured at the data source level, fundamentally avoiding the risk of task timing conflicts. Pre-parsing of payload identifiers and parameter array processing provide a standardized matching basis for the automated matching and encapsulation of payload data. A dual-process parallel architecture of programmable command generation and payload data processing breaks through the efficiency bottleneck of traditional serial processing, enabling the batch generation of two types of core task files simultaneously. The final standardized command files and payload data files can be directly adapted to the format requirements of satellite-to-ground annotation without manual secondary adjustments. Overall, the entire process of generating on-orbit mission commands is automated, significantly improving the processing efficiency and consistency of output results for high-density satellite missions. Attached Figure Description

[0011] To more clearly illustrate the technical solutions of the embodiments of this application, the accompanying drawings used in the embodiments will be briefly introduced below. It should be understood that the following drawings only show some embodiments of this application and should not be regarded as a limitation of the scope. For those skilled in the art, other related drawings can be obtained based on these drawings without creative effort.

[0012] Figure 1 This is a flowchart illustrating steps S101-S105 provided in the embodiments of this application; Figure 2 This is a flowchart illustrating steps S201-S203 provided in the embodiments of this application; Figure 3 This is a flowchart illustrating steps S301-S305 provided in the embodiments of this application; Figure 4 This is a flowchart illustrating steps S401-S402 provided in the embodiments of this application; Figure 5 This is a flowchart illustrating steps S501-S502 provided in the embodiments of this application; Figure 6 This is an overall flowchart provided in the embodiments of this application; Figure 7 This is a schematic diagram of the structure of the automatic generation device for satellite on-orbit mission program control instructions provided in the embodiments of this application; Figure 8 This is a schematic diagram of the composition structure of the electronic device provided in the embodiments of this application. Detailed Implementation

[0013] To make the objectives, technical solutions, and advantages of the embodiments of this application clearer, the technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. It should be understood that the accompanying drawings in this application are for illustrative and descriptive purposes only and are not intended to limit the scope of protection of this application. Furthermore, it should be understood that the schematic drawings are not drawn to scale. The flowcharts used in this application illustrate operations implemented according to some embodiments of this application. It should be understood that the operations in the flowcharts may not be implemented in sequence, and steps without logical contextual relationships may be reversed or implemented simultaneously. In addition, those skilled in the art, guided by the content of this application, may add one or more other operations to the flowcharts, or remove one or more operations from the flowcharts.

[0014] In the following description, references are made to “some embodiments,” which describe a subset of all possible embodiments. However, it is understood that “some embodiments” may be the same subset or different subsets of all possible embodiments and may be combined with each other without conflict.

[0015] Furthermore, the described embodiments are merely some, not all, of the embodiments of this application. The components of the embodiments of this application described and illustrated herein can typically be arranged and designed in various different configurations. Therefore, the following detailed description of the embodiments of this application provided in the accompanying drawings is not intended to limit the scope of the claimed application, but merely to illustrate selected embodiments of the application. All other embodiments obtained by those skilled in the art based on the embodiments of this application without inventive effort are within the scope of protection of this application.

[0016] In the following description, the terms "first, second, third" are used merely to distinguish similar objects and do not represent a specific ordering of objects. It is understood that "first, second, third" may be interchanged in a specific order or sequence where permitted, so that the embodiments of this application described herein can be implemented in an order other than that illustrated or described herein.

[0017] It should be noted that the term "comprising" will be used in the embodiments of this application to indicate the presence of the features declared thereafter, but does not exclude the addition of other features.

[0018] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application belongs. The terminology used herein is for the purpose of describing embodiments of this application and is not intended to limit this application.

[0019] See Figure 1 , Figure 1This is a flowchart illustrating steps S101-S105 of the automatic generation method for satellite on-orbit mission control instructions provided in this application embodiment, which will be combined with... Figure 1 Steps S101-S105 are explained below.

[0020] In step S101, an Excel configuration file containing a task planning list is read. The task planning list includes at least the task start UTC time, imaging mode, task parameters, and payload identification fields. In step S102, the task planning list is sorted in ascending order according to the task start UTC time to generate a sorted task dataset. In step S103, the sorted task dataset is parsed, the load identifier field is extracted and converted into a hexadecimal byte stream, and the corresponding load parameter array is generated; In step S104, the programmable instruction generation process and the payload data processing process are executed in parallel. The programmable instruction generation process includes traversing the sorted task dataset, automatically selecting the matching Excel macro template worksheet according to the imaging mode corresponding to the task, writing the task parameters into the specified cells of the template, calling the preset VBA macro in the template to complete the instruction encoding and packaging, reading the generated programmable instruction string and outputting it as an instruction file. The payload data processing process includes scanning the original payload text files in the input folder, matching the corresponding payload parameter array according to the file name, adding a frame header and the hexadecimal byte stream corresponding to the payload parameter array to the original payload data, performing length padding and XOR check calculation on the data, and formatting the output as a payload data file conforming to the satellite-ground interface protocol. In step S105, all programmable instruction files and the processed load data files are output.

[0021] This embodiment first obtains all basic information about the task by reading a standardized Excel configuration file. The configuration file contains fields such as the task start UTC time, imaging mode, task parameters, and payload identifier. These fields are the core data source for all subsequent data processing, instruction encoding, and payload processing. All subsequent steps are executed based on the parsing results of these fields.

[0022] The preprocessing stage includes task sorting and parameter parsing. Task sorting arranges the task list in ascending order based on the task's start UTC time. Its core function is to reorganize the original unordered task list according to the actual execution time logic of the satellite, ensuring the timing correctness of subsequent generated instructions from the data source level. Parameter parsing performs format conversion on the payload identifier field, converting the decimal payload identifier into a hexadecimal byte stream recognizable by the satellite protocol, and generating a structured payload parameter array. This provides a matching basis for the subsequent automated encapsulation of payload data, completing the pre-conversion from raw business parameters to protocol format parameters.

[0023] The execution phase employs multi-threaded parallelism, simultaneously initiating two independent processing flows: control command generation and payload data processing. The control command generation flow converts mission parameters into satellite-recognizable control commands, while the payload data processing flow encapsulates raw payload data into uploadable data packets conforming to the space-to-ground protocol. These two flows are independent of each other, have no data dependencies, and can be executed concurrently, significantly improving the overall processing efficiency of high-density tasks. The final output stage generates standardized text files for both types of processing results, directly meeting the format requirements for satellite uploads from the ground station, eliminating the need for manual secondary modifications.

[0024] In some embodiments, see Figure 2 , Figure 2 This is a flowchart illustrating steps S201-S203 provided in the embodiments of this application. The step of automatically selecting a matching Excel macro template worksheet according to the imaging mode corresponding to the task, writing the task parameters into the specified cells of the template, calling the preset VBA macro in the template to complete the instruction encoding and packaging, and reading the generated programmable instruction string can be achieved through steps S201-S203, which will be explained in conjunction with each step.

[0025] In step S201, the parsed task parameters are written into a specified cell of the template worksheet through the table interaction interface; In step S202, the preset instruction generation macro and data block packaging macro in the template are called in sequence to trigger the VBA execution instruction encoding and packaging logic; In step S203, after the macro is executed, the programmable instruction string and programmable data block string generated in the specified cell of the template are read through the table interaction interface.

[0026] The parameter writing process utilizes a table-based interactive interface to transfer parameters from the main control program to the template. The main control program precisely writes the parsed task parameters (including task number, latitude and longitude, UTC seconds, lateral swing angle, load identifier, etc.) into designated cells of the template worksheet. These designated cells are fixed input ports for the macro template, with each cell corresponding to a specific protocol parameter bit. During macro execution, the values ​​in these cells are directly read and encoded. This method ensures the accuracy of parameter transmission and avoids the misalignment issues that can occur with manual parameter entry.

[0027] The macro invocation and result retrieval process triggers the encoding logic and sends back the results. The main control program calls VBA macros within the template in a fixed order, triggering the macros to execute the underlying protocol encoding and packaging logic in the Excel background. This design fully leverages Excel VBA's natural adaptability to table templates and fixed-format encoding, eliminating the need to repeatedly develop a large amount of protocol conversion code in the main control program. After the macro execution is complete, the main control program again reads the final encoding result from the specified cell in the template through the table interaction interface, completing the entire interaction and achieving a fully automated process from parameter input to encoding execution to result output.

[0028] In some embodiments, the preset VBA macros include instruction generation macros and data block packaging macros; wherein the instruction generation macro is used to convert the task parameters written to the template into hexadecimal instruction strings according to the satellite-to-ground interface protocol and write them into a specified column of the template, and the data block packaging macro is used to classify the instruction by type and package them into the final programmable instruction block and programmable data block according to the corresponding protocol rules.

[0029] Here, the core function of the instruction generation macro is to complete the format encoding of individual instructions. It has pre-defined protocol conversion rules for all satellite instructions. When the macro executes, it reads the business parameters from the template cell, converting parameters such as decimal latitude and longitude, UTC time, yaw angle, and mission number into corresponding hexadecimal strings according to the byte length, encoding rules, and offset specified in the protocol, and then writes them one by one into the designated column of the template. This macro implements the low-level conversion from business parameters to protocol instructions, and all encoding rules are fixed within the macro, ensuring the consistency of the format of instructions generated for different tasks.

[0030] The core function of the data block packing macro is to structurally pack scattered instructions. During macro execution, it reads instructions and generates a list of instructions for macro output. First, it categorizes the instructions according to their functional type. Then, based on the frame structure, length rules, and assembly order specified in the satellite-to-ground protocol, it assembles multiple scattered instructions into complete programmable instruction blocks and programmable data blocks. The packaged result is written to a designated result cell in the template for the main control program to read and output. This method achieves the assembly from single instructions to complete mission instruction packages, ensuring that the final output instructions fully comply with the frame format requirements of satellite uploading.

[0031] In some embodiments, the method further includes: determining the imaging mode based on the task type field in the task planning list; if the task type is a strip mode, selecting the corresponding macro template worksheet for strip imaging; if the task type is a sliding spotting mode, selecting the corresponding macro template worksheet for spotting imaging; the template worksheets corresponding to different imaging modes are configured with different parameter writing cell areas and macro encoding logic.

[0032] The pattern recognition and template matching process is automated by using the "Task Type" field in the task list. When the main control program iterates through the task rows, it reads the task type identifier for that row and automatically matches the corresponding macro template worksheet. For example, when the task type is strip mode, it will automatically switch to the template worksheet corresponding to strip imaging; when the task type is sliding spotting mode, it will automatically switch to the template worksheet corresponding to spotting imaging. The entire switching process is fully automated and requires no manual intervention to select a template.

[0033] The template worksheets for different imaging modes have pre-defined parameter configurations and encoding rules. For example, the template worksheet for strip mode has cells for writing parameters such as side sway angle and task duration, while the template worksheet for sliding focus mode has additional areas for writing parameters such as gaze point longitude, latitude, and altitude. Each worksheet corresponds to independent macro encoding logic. The principle of this embodiment is to achieve logical isolation between different modes through worksheets. When adding a new imaging mode, only the corresponding template worksheet needs to be added, without modifying the scheduling logic of the main control program, which greatly improves the scalability and maintainability of the solution.

[0034] In some embodiments, see Figure 3 , Figure 3 This is a flowchart illustrating steps S301-S305 provided in the embodiments of this application. The load data processing flow specifically includes steps S301-S305, which will be explained in conjunction with each step.

[0035] In step S301, the filename of the original payload text file is identified. If the filename contains a SAR imaging parameter package identifier, the first payload parameter array is matched. If the filename contains a SAR mission start package identifier, the second payload parameter array is matched. In step S302, the fixed frame header, the matched hexadecimal byte stream, and the original payload data after removing spaces are concatenated to obtain the initial payload string; In step S303, if the length of the initial payload string is less than the preset length threshold, a specified character is used to right-padded it to the preset length threshold. In step S304, the padded load string is XORed by grouping it into preset bytes, the XOR checksum is calculated and appended to the end of the load string; In step S305, the final load string is inserted byte by byte and then output as the processed load data file.

[0036] Here, the program scans all raw payload text files in the input folder and automatically matches the payload parameter array generated in the preprocessing stage with the identifier field in the filename (such as "SAR imaging parameter package" or "SAR mission startup package"). It then concatenates the hexadecimal payload identifier byte stream of the corresponding mission with the raw payload data and adds a fixed frame header as specified in the protocol, completing the basic frame structure assembly of the payload data packet. This step ensures a unique association between each payload data packet and its corresponding mission, avoiding the problem of payload data mismatch with missions.

[0037] For payload data whose length after splicing is less than the threshold specified in the protocol, the program will automatically right-padded it with specified characters to ensure that the length of all payload data packets is uniform and meets the satellite's reception requirements. In the checksum calculation stage, the program performs an XOR operation on the padded complete payload data according to the XOR rules specified in the protocol, generating a 16-bit XOR checksum which is appended to the end of the data packet for data integrity verification during satellite reception. Finally, the program inserts spaces byte-by-byte into the complete hexadecimal payload data and formats it into a text file that meets the requirements for ground station uploading, completing the automated encapsulation of the entire payload data.

[0038] In some embodiments, see Figure 4 , Figure 4 This is a flowchart illustrating steps S401-S402 provided in the embodiments of this application. The step of sorting the task planning list in ascending order according to the task start UTC time to generate a sorted task dataset can be achieved through steps S401-S402, which will be explained in conjunction with each step.

[0039] In step S401, the original task worksheet in the Excel configuration file is read, sorted in ascending order by the task start UTC time column, and a new sorted data worksheet is generated. In step S402, if a sorted data worksheet with the same name already exists in the Excel configuration file, the original worksheet is deleted first, and then a new sorted data worksheet is generated.

[0040] Here, tasks are sorted in ascending order based on their starting UTC time. The principle is that satellite missions are executed strictly in chronological order, and the order in which instructions are generated must perfectly match the actual execution order of the satellite. Otherwise, timing conflicts and incorrect execution of uploaded instructions will occur. The program reads the top-of-the-line time (UTC time) column from the original task worksheet and reorders all tasks according to their chronological order, generating a sorted task dataset. All subsequent instruction generation is based on this sorted dataset, ensuring the correctness of instruction timing from the outset.

[0041] Worksheet management ensures consistency control of sorted data. Before generating a new sorted data worksheet, the program checks if an old worksheet with the same name exists in the Excel configuration file. If it does, the old worksheet is deleted before generating the new sorted worksheet. The core function of this design is to prevent residual old data from previous processing from interfering with the current processing, ensuring that the sorted task data used in each processing is generated based on the latest original task list. This completely avoids parameter errors caused by the mixing of old and new data, guaranteeing the accuracy of the processing results.

[0042] In some embodiments, see Figure 5 , Figure 5 This is a flowchart illustrating steps S501-S502 provided in the embodiments of this application. The parallel execution of the program control instruction generation process and the load data processing process can be implemented through steps S501-S502, which will be explained in conjunction with each step.

[0043] In step S501, the programmable instruction generation thread and the load data processing thread are started separately based on multi-threading; In step S502, the task processing progress and status are displayed in real time through a graphical interactive interface, and a completion prompt is output after all tasks are processed.

[0044] The two processes of generating programmable instructions and processing payload data have no data dependency, so they can be executed simultaneously by two independent threads. One thread iterates through the sorted task list, generating the programmable instruction file for each task one by one; the other thread simultaneously scans the input folder and processes all payload data files in batches. Compared to the serial processing mode, the parallel architecture can reduce the overall processing time by half, especially in scenarios with a large number of tasks and a large amount of payload data, where the efficiency improvement is even more significant.

[0045] Real-time progress feedback is provided through a graphical user interface (GUI) that visualizes the processing status. During processing, the program updates the current progress in real-time in text boxes on the GUI, including the currently processing task number, the total number of tasks, and the processing status of each task. Users can intuitively grasp the task's progress and determine whether processing is normal without needing to check background logs. Once all tasks are completed, a unified completion message pops up, informing the user that all instructions and payload data have been generated. The entire operation requires no specialized technical background, significantly lowering the barrier to entry for the solution.

[0046] The embodiments of this application will now be described in detail with reference to specific examples.

[0047] Please see Figure 6 , Figure 6 This is an overall flowchart provided in the embodiments of this application, such as Figure 6As shown, this embodiment is applied to the generation of on-orbit imaging mission instructions for a commercial SAR satellite. The operator first starts the graphical interactive program of this system and selects the input folder containing mission configuration and raw payload data, as well as the output folder for storing the final generated files, through the browse button on the interface. After the system starts, it first checks the Excel configuration file in the input folder and automatically deletes the old "sorted data" worksheet that already exists in the file to avoid historical residual data from interfering with the current processing. Then, it reads the "single target" worksheet in the configuration file. This worksheet is the original mission list output by the satellite mission planning system, which contains the over-the-top UTC time, target point information, imaging mode, side-swing angle, SAR-BLOCK-IDA, SAR-BLOCK-IDB and other core parameters for all imaging missions in this process.

[0048] Next, the system sorts the original task list in ascending order according to the "overpass time" column, generating a brand new "sorted data" worksheet. This ensures that the order in which subsequent instructions are generated is completely consistent with the actual time sequence of the satellite's missions, thus avoiding mission timing conflicts at the data source level. After sorting, the system iterates through each row of the "sorted data" worksheet, extracting the decimal values ​​of the SAR-BLOCK-IDA and SAR-BLOCK-IDB fields row by row. These values ​​are then converted into fixed two-digit hexadecimal byte streams and stored in two separate parameter lists, preparing for the matching and encapsulation of subsequent payload data.

[0049] After data preprocessing is completed, the system starts a dual-thread parallel processing architecture, simultaneously executing two independent processes: programmable instruction generation and payload data processing. Thread A is responsible for batch generation of programmable instructions, reading the sorted task parameters line by line. First, it determines the imaging mode based on the task type field. If it is a strip imaging mode, it automatically calls the preset template A worksheet; if it is a sliding spot imaging mode, it automatically switches to template B worksheet. Then, it accurately writes parameters such as task number, target point latitude and longitude, UTC seconds, and side-swing angle into the specified cells of the template worksheet. After the parameters are written, thread A sequentially calls the preset macros genCmdFromTemplate and genBlock_template in the template. The former converts the cell parameters into concatenated indirect instructions and data instructions and outputs them to the specified cells. The latter packages the generated scattered instructions into 3311 instruction blocks and 3322 data blocks conforming to the satellite-ground protocol and writes them into the specified cells of the template. Finally, thread A reads the generated programmable instructions and data block contents and writes them into a text file named "Satellite Code_Task Number_Target Point_Imaging Mode".

[0050] Thread B, which runs in parallel with thread A, is responsible for the automated encapsulation of payload data. First, it scans all raw payload data files with the .txt extension in the input folder. Based on the identifier in the filename, it automatically matches the parameter list generated by preprocessing. If the filename contains "SAR imaging parameter package", it matches the hexadecimal parameter list corresponding to SAR-BLOCK-IDA. If the filename contains "mission start package", it matches the parameter list corresponding to SAR-BLOCK-IDB. Then, the system constructs the payload data content according to the protocol rules, splicing a fixed frame header, the matched hexadecimal parameters, and the raw payload content after removing spaces. At the same time, it checks the total length of the data. If it is less than 508 characters, it automatically padded it with the character "A" to the specified length. After padding, it performs an XOR operation on the complete payload data in groups of 4 hexadecimal digits, calculates the checksum, and appends it to the end of the payload data. Finally, it writes the processed payload data into the corresponding text file in the output folder according to the format.

[0051] Throughout the process, the system's graphical interface will display the current task processing progress and the execution status of each task in real time. Once all tasks in both threads have been processed, the interface will display a "Processing Complete" message. Operators can then retrieve the programmable instruction files and packaged payload data files corresponding to all tasks from the output folder. The generated files fully comply with the requirements of the space-ground interface protocol and can be directly used for satellite on-orbit missions without any manual modification.

[0052] In summary, the embodiments of this application have the following beneficial effects: By constructing a processing architecture that integrates Python master control and Excel VBA macro templates in a two-way collaborative manner, fully automated batch generation of satellite on-orbit control commands and payload data is achieved. This effectively solves the problems of low efficiency, error-prone parameter entry, cumbersome multi-mode template switching, and error-prone payload protocol encapsulation in traditional manual command editing. By automatically sorting tasks based on UTC time, the correctness of command execution sequence is ensured from the data source level. It can adaptively match command templates for different imaging modes and is compatible with various imaging tasks such as striping and sliding spotting without manual intervention. It has built-in standardized payload data protocol encapsulation logic, automatically completing frame header addition, length padding, and XOR check calculation. The output results fully comply with the satellite-ground interface specifications. At the same time, the multi-threaded parallel processing architecture significantly shortens the overall processing time of high-density tasks. Coupled with a visual progress interaction interface, it lowers the operation threshold. While significantly improving the efficiency of satellite mission command generation, it effectively ensures the accuracy and compliance of command and payload data, and can fully adapt to the high-density, multi-mode satellite on-orbit mission planning needs of commercial aerospace.

[0053] Based on the same inventive concept, this application also provides an automatic satellite on-orbit mission control instruction generation device corresponding to the automatic satellite on-orbit mission control instruction generation method in the first embodiment. Since the principle of the device in this application is similar to the above-mentioned automatic satellite on-orbit mission control instruction generation method, the implementation of the device can refer to the implementation of the method, and the repeated parts will not be described again.

[0054] like Figure 7 As shown, Figure 7 This is a schematic diagram of the structure of the satellite on-orbit mission program control command automatic generation device 700 provided in this application embodiment. The satellite on-orbit mission program control command automatic generation device 700 includes: The parameter configuration module 701 is used to read an Excel configuration file containing a task planning list, wherein the task planning list includes at least the task start UTC time, imaging mode, task parameters and payload identification fields. The task sorting module 702 is used to sort the task planning list in ascending order according to the task start UTC time and generate a sorted task dataset. The parameter parsing module 703 is used to parse the sorted task dataset, extract the load identifier field and convert it into a hexadecimal byte stream, and generate the corresponding load parameter array. The parallel processing module 704 is used to execute the programmable instruction generation process and the payload data processing process in parallel. The programmable instruction generation process includes traversing the sorted task dataset, automatically selecting a matching Excel macro template worksheet based on the imaging mode corresponding to the task, writing task parameters into specified cells of the template, calling a preset VBA macro within the template to complete instruction encoding and packaging, reading the generated programmable instruction string, and outputting it as an instruction file. The payload data processing process includes scanning the original payload text files in the input folder, matching the corresponding payload parameter array based on the filename, adding a frame header and a hexadecimal byte stream corresponding to the payload parameter array to the original payload data, performing length padding and XOR check calculations on the data, and formatting the output as a payload data file conforming to the satellite-to-ground interface protocol. The output module 705 is used to output all programmable instruction files and the processed load data files.

[0055] Those skilled in the art should understand that Figure 7 The functions of each unit in the satellite on-orbit mission program control command automatic generation device 700 shown can be understood by referring to the relevant description of the aforementioned satellite on-orbit mission program control command automatic generation method. Figure 7 The functions of each unit in the satellite on-orbit mission program control instruction automatic generation device 700 shown can be realized through a program running on a processor or through specific logic circuits.

[0056] In one possible implementation, the parallel processing module 704 is specifically used for: The parsed task parameters are written into the specified cells of the template worksheet through the table interaction interface; The pre-defined instruction generation macro and data block packaging macro in the template are called sequentially, triggering VBA to execute instruction encoding and packaging logic; After the macro is executed, the programmable instruction string and programmable data block string generated in the specified cell of the template are read through the table interaction interface.

[0057] In one possible implementation, the preset VBA macro includes an instruction generation macro and a data block packaging macro; wherein the instruction generation macro is used to convert the task parameters written to the template into hexadecimal instruction strings according to the satellite-to-ground interface protocol and write them into a specified column of the template, and the data block packaging macro is used to classify the instruction by type and package them into the final programmable instruction block and programmable data block according to the corresponding protocol rules.

[0058] In one possible implementation, the parallel processing module 704 is further configured to: The imaging mode is determined based on the task type field in the task planning list. If the task type is strip mode, the corresponding macro template worksheet for strip imaging is selected. If the task type is sliding slewing mode, the corresponding macro template worksheet for slewing imaging is selected. The template worksheets corresponding to different imaging modes are configured with different parameter writing cell ranges and macro encoding logic.

[0059] In one possible implementation, the load data processing procedure specifically includes: Identify the filename of the original payload text file. If the filename contains a SAR imaging parameter package identifier, match the first payload parameter array. If the filename contains a SAR mission start package identifier, match the second payload parameter array. By concatenating the fixed frame header, the matched hexadecimal byte stream, and the original payload data after removing spaces, the initial payload string is obtained. If the length of the initial payload string is less than the preset length threshold, right padding with specified characters is used to reach the preset length threshold. The padded payload string is XORed by grouping it into preset bytes, and the XOR checksum is calculated and appended to the end of the payload string. The final load string is inserted byte by byte and then output as the processed load data file.

[0060] In one possible implementation, the task sorting module 702 is specifically used for: Read the original task worksheet from the Excel configuration file, sort it in ascending order by the task start UTC time column, and generate a new sorted data worksheet. If a sorted data worksheet with the same name already exists in the Excel configuration file, delete the original worksheet first and then generate a new sorted data worksheet.

[0061] In one possible implementation, the parallel processing module 704 is specifically used for: The programmable instruction generation thread and the load data processing thread are started separately using multiple threads; The task processing progress and status are displayed in real time through a graphical interactive interface, and a completion prompt is output after all tasks are processed.

[0062] The aforementioned automatic generation device for satellite on-orbit mission control instructions achieves fully automated batch generation of satellite on-orbit control instructions and payload data by constructing a processing architecture that combines Python main control with Excel VBA macro templates. This effectively solves the problems of low efficiency, error-prone parameter input, cumbersome multi-mode template switching, and error-prone payload protocol encapsulation in traditional manual instruction editing. By automatically sorting tasks based on UTC time, it ensures the correctness of instruction execution sequence from the data source level. It can adaptively match instruction templates for different imaging modes and is compatible with various imaging tasks such as striping and sliding focus without manual intervention. It has built-in standardized payload data protocol encapsulation logic, automatically completes frame header addition, length padding, and XOR check calculation, and the output results fully comply with the satellite-to-ground interface specifications. At the same time, the multi-threaded parallel processing architecture significantly shortens the overall processing time of high-density tasks, and the visual progress interaction interface reduces the operation threshold. While significantly improving the efficiency of satellite mission instruction generation, it effectively ensures the accuracy and compliance of instruction and payload data, and can fully adapt to the high-density, multi-mode satellite on-orbit mission planning needs of commercial aerospace.

[0063] like Figure 8 As shown, Figure 8 This is a schematic diagram of the composition structure of the electronic device 800 provided in the embodiments of this application. The electronic device 800 includes: The device 800 includes a processor 801, a storage medium 802, and a bus 803. The storage medium 802 stores machine-readable instructions that can be executed by the processor 801. When the electronic device 800 is running, the processor 801 communicates with the storage medium 802 via the bus 803. The processor 801 executes the machine-readable instructions to perform the steps of the automatic generation method for satellite on-orbit mission program control instructions described in the embodiments of this application.

[0064] In practical applications, the various components in the electronic device 800 are coupled together via bus 803. It can be understood that bus 803 is used to achieve communication between these components. In addition to a data bus, bus 803 also includes a power bus, a control bus, and a status signal bus. However, for clarity, in... Figure 8The general labeled all buses as Bus 803.

[0065] The aforementioned electronic equipment, through a two-way collaborative processing architecture combining Python main control and Excel VBA macro templates, achieves fully automated batch generation of satellite on-orbit programmable commands and payload data. This effectively solves the problems of low efficiency, error-prone parameter input, cumbersome multi-mode template switching, and error-prone payload protocol encapsulation associated with traditional manual command editing. By automatically sorting tasks based on UTC time, it ensures the correctness of command execution timing from the data source level. It can adaptively match command templates for different imaging modes and is compatible with various imaging tasks such as striping and sliding focus without manual intervention. It has built-in standardized payload data protocol encapsulation logic, automatically completing frame header addition, length padding, and XOR check calculations. The output results fully comply with the satellite-to-ground interface specifications. At the same time, the multi-threaded parallel processing architecture significantly shortens the overall processing time of high-density tasks. Coupled with a visual progress interaction interface, it lowers the operation threshold. While significantly improving the efficiency of satellite mission command generation, it effectively ensures the accuracy and compliance of command and payload data, and can fully adapt to the high-density, multi-mode satellite on-orbit mission planning needs of commercial aerospace.

[0066] This application also provides a computer-readable storage medium storing executable instructions. When the executable instructions are executed by at least one processor 801, the automatic generation method for satellite on-orbit mission control instructions described in this application is implemented.

[0067] In some embodiments, the storage medium may be a magnetic random access memory (FRAM), a read-only memory (ROM), or a programmable read-only memory (PROM). Erasable Programmable Read-Only Memory (EPROM) Electrically Erasable Programmable Read-Only Memory (EEPROM) Read-only memory, flash memory, magnetic surface storage, optical disc, or CD-ROM ROM, Compact Disc Read It can be a memory such as a memory only; or it can be a device that includes one or any combination of the above-mentioned memories.

[0068] In some embodiments, executable instructions may take the form of a program, software, software module, script, or code, written in any form of programming language (including compiled or interpreted languages, or declarative or procedural languages), and may be deployed in any form, including as a standalone program or as a module, component, subroutine, or other unit suitable for use in a computing environment.

[0069] As an example, executable instructions may, but do not necessarily, correspond to files in the file system. They may be stored as part of a file that holds other programs or data, for example, in one or more scripts in a HyperText Markup Language (HTML) document, in a single file dedicated to the program in question, or in multiple collaborating files (e.g., a file that stores one or more modules, subroutines, or code sections).

[0070] As an example, executable instructions can be deployed to execute on a single computing device, or on multiple computing devices located in one location, or on multiple computing devices distributed across multiple locations and interconnected via a communication network.

[0071] The aforementioned computer-readable storage medium, through a bidirectional collaborative processing architecture combining Python master control and Excel VBA macro templates, achieves fully automated batch generation of satellite on-orbit programmable commands and payload data. This effectively solves the problems of low efficiency in traditional manual command editing, error-prone parameter entry, cumbersome multi-mode template switching, and error-prone payload protocol encapsulation. By automatically sorting tasks based on UTC time, it ensures the correctness of command execution timing from the data source level. It can adaptively match command templates for different imaging modes, and is compatible with various imaging tasks such as striping and sliding focus without manual intervention. It incorporates standardized payload data protocol encapsulation logic, automatically completing frame header addition, length padding, and XOR check calculations. The output results fully comply with the satellite-to-ground interface specifications. Simultaneously, the multi-threaded parallel processing architecture significantly shortens the overall processing time for high-density tasks, and the visual progress interface lowers the operational threshold. While significantly improving the efficiency of satellite mission command generation, it effectively ensures the accuracy and compliance of command and payload data, fully adapting to the high-density, multi-mode satellite on-orbit mission planning needs of commercial aerospace.

[0072] In the several embodiments provided in this application, it should be understood that the disclosed methods and electronic devices can be implemented in other ways. The device embodiments described above are merely illustrative. For example, the division of units is only a logical functional division, and in actual implementation, there may be other division methods, such as: multiple units or components may be combined, or integrated into another system, or some features may be ignored or not executed. In addition, the coupling, direct coupling, or communication connection between the various components shown or discussed may be through some interfaces, and the indirect coupling or communication connection between devices or units may be electrical, mechanical, or other forms.

[0073] The modules described as separate components may or may not be physically separate. The components shown as modules 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 units can be selected to achieve the purpose of this embodiment according to actual needs.

[0074] In addition, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit.

[0075] If the aforementioned functions are implemented as software functional units and sold or used as independent products, they can be stored in a processor-executable, non-volatile, computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or a portion 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, a platform server, or a network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, ROM, RAM, magnetic disks, or optical disks.

[0076] The above are merely specific embodiments of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.

Claims

1. A method for automatically generating on-orbit mission control instructions for satellites, characterized in that, Includes the following steps: Read the Excel configuration file containing the task planning list, which at least includes the task start UTC time, imaging mode, task parameters, and payload identification fields; Sort the task planning list in ascending order according to the task start UTC time to generate a sorted task dataset. Parse the sorted task dataset, extract the payload identifier field and convert it into a hexadecimal byte stream to generate the corresponding payload parameter array; The programmable instruction generation process and the payload data processing process are executed in parallel. The programmable instruction generation process includes traversing the sorted task dataset, automatically selecting the matching Excel macro template worksheet according to the imaging mode corresponding to the task, writing the task parameters into the specified cells of the template, calling the preset VBA macro in the template to complete the instruction encoding and packaging, reading the generated programmable instruction string and outputting it as an instruction file. The payload data processing process includes scanning the original payload text files in the input folder, matching the corresponding payload parameter array according to the file name, adding frame headers and hexadecimal byte streams corresponding to the payload parameter array to the original payload data, performing length padding and XOR check calculation on the data, and formatting the output as a payload data file conforming to the satellite-to-ground interface protocol. Output all programmable instruction files and processed load data files.

2. The method for automatically generating satellite on-orbit mission control instructions according to claim 1, characterized in that, The process involves automatically selecting a matching Excel macro template worksheet based on the imaging mode corresponding to the task, writing the task parameters into a specified cell of the template, calling a preset VBA macro within the template to complete instruction encoding and packaging, and reading the generated programmable instruction string, including: The parsed task parameters are written into the specified cells of the template worksheet through the table interaction interface; The pre-defined instruction generation macro and data block packaging macro in the template are called sequentially, triggering VBA to execute instruction encoding and packaging logic; After the macro is executed, the programmable instruction string and programmable data block string generated in the specified cell of the template are read through the table interaction interface.

3. The method for automatically generating satellite on-orbit mission control instructions according to claim 2, characterized in that, The preset VBA macros include instruction generation macros and data block packaging macros; wherein the instruction generation macro is used to convert the task parameters written to the template into hexadecimal instruction strings according to the satellite-ground interface protocol and write them into the specified column of the template, and the data block packaging macro is used to classify the instruction by type and package them into the final programmable instruction block and programmable data block according to the corresponding protocol rules.

4. The method for automatically generating satellite on-orbit mission control instructions according to claim 1, characterized in that, The method further includes: determining the imaging mode based on the task type field in the task planning list; if the task type is strip mode, selecting the corresponding macro template worksheet for strip imaging; if the task type is sliding slewing mode, selecting the corresponding macro template worksheet for slewing imaging; the template worksheets corresponding to different imaging modes are configured with different parameter writing cell areas and macro encoding logic.

5. The method for automatically generating satellite on-orbit mission control instructions according to claim 1, characterized in that, The specific load data processing procedure includes: Identify the filename of the original payload text file. If the filename contains a SAR imaging parameter package identifier, match the first payload parameter array. If the filename contains a SAR mission start package identifier, match the second payload parameter array. By concatenating the fixed frame header, the matched hexadecimal byte stream, and the original payload data after removing spaces, the initial payload string is obtained. If the length of the initial payload string is less than the preset length threshold, right padding with specified characters is used to reach the preset length threshold. The padded payload string is XORed by grouping it into preset bytes, and the XOR checksum is calculated and appended to the end of the payload string. The final load string is inserted byte by byte and then output as the processed load data file.

6. The method for automatically generating satellite on-orbit mission control instructions according to claim 1, characterized in that, The step of sorting the task planning list in ascending order according to the task start UTC time to generate a sorted task dataset includes: Read the original task worksheet from the Excel configuration file, sort it in ascending order by the task start UTC time column, and generate a new sorted data worksheet. If a sorted data worksheet with the same name already exists in the Excel configuration file, delete the original worksheet first and then generate a new sorted data worksheet.

7. The method for automatically generating satellite on-orbit mission control instructions according to claim 1, characterized in that, The parallel execution process for generating program control instructions and processing payload data includes: The programmable instruction generation thread and the load data processing thread are started separately using multiple threads; The task processing progress and status are displayed in real time through a graphical interactive interface, and a completion prompt is output after all tasks are processed.

8. An automatic generation device for satellite on-orbit mission control instructions, characterized in that, The device includes: The parameter configuration module is used to read an Excel configuration file containing a task planning list, which includes at least the task start UTC time, imaging mode, task parameters, and payload identification fields. The task sorting module is used to sort the task planning list in ascending order according to the task start UTC time and generate a sorted task dataset. The parameter parsing module is used to parse the sorted task dataset, extract the payload identifier field and convert it into a hexadecimal byte stream, and generate the corresponding payload parameter array. The parallel processing module is used to execute the programmable instruction generation process and the payload data processing process in parallel. The programmable instruction generation process includes traversing the sorted task dataset, automatically selecting a matching Excel macro template worksheet based on the imaging mode corresponding to the task, writing task parameters into specified cells of the template, calling a preset VBA macro within the template to complete instruction encoding and packaging, reading the generated programmable instruction string, and outputting it as an instruction file. The payload data processing process includes scanning the original payload text files in the input folder, matching the corresponding payload parameter array based on the filename, adding a frame header and a hexadecimal byte stream corresponding to the payload parameter array to the original payload data, performing length padding and XOR check calculations on the data, and formatting the output as a payload data file conforming to the satellite-to-ground interface protocol. The results output module is used to output all programmable instruction files and processed load data files.

9. An electronic device, characterized in that, include: The device includes a processor, a storage medium, and a bus, wherein the storage medium stores machine-readable instructions executable by the processor, and when the electronic device is running, the processor communicates with the storage medium via the bus, and the processor executes the machine-readable instructions to perform the automatic generation method for satellite on-orbit mission program control instructions as described in any one of claims 1 to 7.

10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program, which, when executed by a processor, performs the automatic generation method for satellite on-orbit mission control instructions as described in any one of claims 1 to 7.