A timing sequence-based on-orbit servicing timing planning component and method

By using an on-orbit operation timing plan component based on timing sequences, parallel execution of multiple spacecraft missions and real-time status feedback were achieved. This solved the problems of single-mission serial execution and complex command formats in existing technologies, and improved mission execution efficiency and feedback capabilities.

CN115454619BActive Publication Date: 2026-05-19BEIJING INST OF SPACECRAFT SYST ENG
View PDF 3 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
BEIJING INST OF SPACECRAFT SYST ENG
Filing Date
2022-08-05
Publication Date
2026-05-19

AI Technical Summary

Technical Problem

In existing technologies, spacecraft can only support single-task serial execution during on-orbit operation, and cannot meet the requirement of multiple tasks being executed simultaneously. The execution status of the command chain cannot be fed back in real time, and the command format is simple and the parameter description is complex.

Method used

It adopts an on-orbit operation timing plan component based on timing sequence, and uses instruction codes, instruction pools and instruction groups. Through timing sequence IDs and event reporting real-time feedback mechanisms, it realizes parallel execution of multiple tasks and flexible instruction scheduling, and supports instruction formatting and encapsulation.

Benefits of technology

It enables parallel execution of multiple missions on spacecraft, improves mission execution efficiency, provides real-time mission status feedback, and solves the problem of complexity in command parameter description.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115454619B_ABST
    Figure CN115454619B_ABST
Patent Text Reader

Abstract

The application relates to a kind of on-orbit operation timing plan components and methods based on timing sequence, for solving the problem of single and instruction scheduling flexibility of time-delay instruction in spacecraft software.The component takes timing sequence as the core, and is completed with three elements of instruction code, instruction pool and instruction group.The component receives the instruction injected by user, and the instruction format is instruction head and instruction load, and the instruction load is timing sequence;the component is parsed and stored after the key field in timing sequence is successfully checked;the timing sequence is stored in the timing sequence storage linked list in the component;the instruction scheduling process collects star time, and when there is timing sequence in the timing sequence storage linked list, all timing sequences are taken out from the first instruction in sequence and sent out through instruction sending interface, wherein, if instruction identification shows instruction code, instruction content is obtained from instruction pool for sending, and if instruction identification shows remote control package, it is directly sent.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to a timing planning component and method for on-orbit operations based on timing sequences, belonging to the field of integrated electronic technology for spacecraft. Background Technology

[0002] During spacecraft operation in orbit, ground users typically design and program numerous delayed commands to meet the management needs of specific missions. These delayed commands and their scheduling can also be termed on-orbit operation timing plans. Patent ZL201310146811.8 describes a two-level analytical mission management method, which involves the use of command chains. While this simplifies the data upload process, it still suffers from the following problems:

[0003] 1) The command chain is a single-chain structure. When the spacecraft is in orbit, it can only support the execution of a single task and cannot meet the situation of multiple tasks being executed simultaneously, that is, the tasks are executed serially.

[0004] 2) The execution status of the instruction chain cannot be fed back to the user in real time.

[0005] 3) The instruction format in the instruction chain is simple, lacks flexible selection of identifiers, and the description information of the instruction-related parameters is complex. Summary of the Invention

[0006] The purpose of this invention is to address the risks inherent in existing technologies by providing a timing sequence-based on-orbit operation timing planning component and method, which essentially solves the problems of single delay instructions and flexible instruction scheduling in spacecraft software.

[0007] The technical solution is as follows:

[0008] A timing sequence-based on-orbit operation timing plan component is disclosed. This component is part of the spacecraft CPU software. It is based on a timing sequence and supplemented by three elements: instruction code, instruction pool, and instruction group. The instruction code is used to identify or match instructions in the instruction pool; the instruction group implements a specific function and consists of multiple pre-ordered instruction codes and the interval between executing adjacent instruction codes; the instruction pool includes instruction codes that the component can store and the instruction content corresponding to each instruction code; the timing sequence includes a timing sequence ID, the number of instructions N, the start execution time, a first instruction identifier, a first instruction code, a first remote control packet, a second instruction execution interval, a second instruction identifier, a second instruction code, a second remote control packet, ..., the Nth instruction execution interval, the Nth instruction identifier, the Nth instruction code, and the Nth remote control packet; the component receives... The user-injected instructions have an instruction header and an instruction payload, with the instruction payload being a timing sequence. After the component successfully verifies the key fields in the timing sequence, it reads the instruction identifier from the timing sequence. If the identifier is an instruction code, it retrieves the instruction code from the timing sequence and associates it with the instruction in the instruction pool. If the identifier is a remote control packet, it directly stores the remote control packet in the component's internal storage structure. The timing sequence is stored in the timing sequence storage linked list within the component. When the instruction scheduling process acquires satellite data, if there is an expired timing sequence in the timing sequence storage linked list, it retrieves all instructions sequentially, starting from the first instruction, and sends them out through the instruction sending interface. If the instruction identifier is an instruction code, it retrieves the instruction content from the instruction pool and sends it; if the instruction identifier is a remote control packet, it sends it directly.

[0009] When the instruction identifier is displayed as an instruction code, the remote control package is not present.

[0010] In addition, during the operation of the components (see appendix) Figure 4 The component can access a specified time sequence at any time via the time sequence ID and perform a clearing operation. At the same time, if the current time sequence fails to execute, the component will automatically clear the current time sequence without affecting the normal execution of other time sequences.

[0011] In addition, during the component's operation, the execution status (error code, success flag) of the current sequence can be fed back to the user in real time based on the timing sequence ID and the source identifier injected into the current sequence.

[0012] In addition, during the operation of the component, the instruction pool can be queried, inserted, deleted and modified at any time through instructions, which facilitates the rematching of instruction codes in the timing sequence.

[0013] A method for on-orbit operation timing planning based on timing sequences, using on-orbit operation timing planning components, includes the following steps:

[0014] 1) Initialize the on-orbit operation timing plan component, configuring several key built-in data structures, including instruction code, instruction group, instruction pool, and timing sequence. The instruction code is a code that the component supports parsing; the instruction group is used to pre-sort some instructions; the instruction pool includes instruction codes and instruction content that the component can store; and the specific format of the timing sequence is shown in the appendix. Figure 2 According to the appendix Figure 2 Configure the timer sequence storage space; each instruction group will be configured with an instruction group enable instruction, which can also be assigned a code and stored in the instruction pool. In this way, the triggering of the instruction group can be completed by an instruction code.

[0015] 2) The CPU software sets the cycle of the instruction scheduling process and starts the process, periodically collects the on-board time and determines whether the timing sequence (if any) has started to be executed;

[0016] 3) The on-orbit operation timing plan component receives user-injected instructions (in the format of an instruction header and an instruction payload, the payload being a timing sequence). First, the component parses the source identifier (representing the source of the instruction) in the instruction header and the timing sequence in the instruction payload, and verifies the key fields in the timing sequence. These fields include: timing sequence ID, number of instructions, instruction identifier, instruction code, and remote control packet (also known as TC packet, which is the standard instruction format used in the aerospace field). If the verification fails, an error message is fed back to the user through an event report (an aerospace field term that includes the source identifier), and the timing sequence is not executed. If the verification succeeds, step 4 is executed.

[0017] 4) Read the instruction identifier in the timing sequence. If the identifier is an instruction code, extract the instruction code from the timing sequence and associate it with the instruction in the instruction pool; if the identifier is a remote control packet, directly store the remote control packet into the internal storage structure of the component; then store the timing sequence in the timing sequence linked list inside the component (see appendix). Figure 3 );

[0018] 5) The instruction scheduling process collects satellite time and determines whether any timing sequences in the timing sequence list have reached their expiration date. For timing sequences that have reached their expiration date, the first instruction in each sequence is retrieved sequentially according to the sequence ID, and so on. The instruction is then sent out through the instruction sending interface. If the instruction is associated with an instruction code, it needs to be retrieved from the instruction pool for sending. If it is a remote control packet, it is sent directly. After the instruction is sent, the component promptly releases the storage resources occupied by the current instruction.

[0019] The advantages of this invention compared to the prior art are:

[0020] (1) This invention meets the needs of users to perform multiple tasks in parallel by designing the timing sequence ID and timing sequence linked list, thereby improving the efficiency of spacecraft in performing user tasks.

[0021] (2) This invention solves the problem of tracing timed sequences and even tasks by designing a timed sequence ID and event reporting real-time feedback mechanism, so that users can understand the execution status of tasks in a timely manner.

[0022] (3) Through the flexible design of instruction identifiers, instruction codes and remote control packets in the timing sequence, the present invention can meet the needs of various instruction delay scheduling by flexibly combining codes and remote control packets.

[0023] (4) By applying the remote control packet format in the timing sequence, the present invention formats and encapsulates complex specific parameters, thus solving the problem of complex instruction parameter description information in the existing instruction chain format. Attached Figure Description

[0024] Figure 1 This is a schematic diagram of the timing sequence processing procedure;

[0025] Figure 2 Schematic diagram of timing sequence structure;

[0026] Figure 3 This is a schematic diagram of a linked list structure for timed sequence management;

[0027] Figure 4 This is a schematic diagram of the operation process of the on-orbit operation timing planning software component. Detailed Implementation

[0028] The present invention will now be described in detail with reference to the accompanying drawings and embodiments. In this embodiment, the data xxH is represented in hexadecimal.

[0029] The on-orbit operation timing plan component described in this invention is a component (or functional module) in the spacecraft CPU software. This component provides flexible and efficient support for user tasks and involves three elements: an instruction pool (used to store formatted instructions involved in the spacecraft CPU software), instruction codes (used to identify or match instructions in the instruction pool), and instruction groups (a group of instructions ordered according to a specified time interval and instruction codes; instruction groups are generally fixed in the component, and one instruction group is used to complete one function).

[0030] Although these three elements can be used to perform operations such as instruction addressing and sending, how to more efficiently utilize these three elements to accurately support the parallel operation of multiple tasks is a problem that users are concerned about and urgently need to solve.

[0031] The component described in this invention receives user-injected instructions, the instruction format being an instruction header and an instruction payload, the instruction payload being a timing sequence. After the component successfully verifies the key fields in the timing sequence, it reads the instruction identifier in the timing sequence. If the identifier is an instruction code, the instruction code in the timing sequence is extracted and associated with the instruction in the instruction pool. If the identifier is a remote control packet, the remote control packet is directly stored in the component's internal storage structure. The timing sequence is stored in a timing sequence storage linked list within the component. When the instruction scheduling process acquires satellite data, if there is an expired timing sequence in the timing sequence storage linked list, all expired timing sequences are retrieved sequentially starting from the first instruction and sent out through the instruction sending interface. Specifically, if the instruction identifier is an instruction code, the instruction content is retrieved from the instruction pool and sent; if the instruction identifier is a remote control packet, it is sent directly.

[0032] This invention manages delayed instructions and delayed instruction scheduling, as detailed below:

[0033] Step 1: Component initialization, configuring instruction codes, instruction pools, instruction groups, and timing sequences. In this embodiment, the initialized instruction codes, instruction pools, and the format definitions of instruction pool entries are shown in Tables 1, 2, and 3. The timing sequences are configured with their corresponding storage spaces.

[0034] Table 1 Instruction Code Table

[0035] Serial Number Instruction code 1 1601H

[0036] The component has a pre-defined instruction code that represents the delay instruction code used.

[0037] Table 2 Instruction Pool

[0038] Serial Number Instruction code Instruction content 1 1601H C600……12B6H (16 bytes)

[0039] One table entry is preset in the component instruction pool.

[0040] Table 3 Instruction Groups

[0041] Serial Number Instruction code Interval / sec 1 1701H 0 2 1702H 2 … … … 8 1708H /

[0042] The component's instruction group contains 8 instructions, which can be connected in series at different intervals to complete some functions.

[0043] Step 2: Start the instruction scheduling process, collect satellite time every 100ms, and simultaneously traverse the timed sequence linked list to check if there is a timed sequence that has expired.

[0044] Step 3: In order to support the new task, the ground user injects two new instructions into the component instruction pool through the "Instruction Pool Insertion" instruction, and updates the content of the instruction pool as shown in Table 4.

[0045] Table 4 New Instruction Pool

[0046] Serial Number Instruction code Instruction content 1 1601H C600……12B6H (16 bytes) 2 1636H 2002……9897H (16 bytes) 3 3800H 2002……C088H (22 bytes)

[0047] Step 4: The ground team designs and generates timing sequence 1 based on the actual mission requirements. The ground team injects timing sequence 1 into the spacecraft's CPU software using the "Timing Sequence Injection" command. The system then parses the timing sequence and stores it. The format of timing sequence 1 is shown in Table 5.

[0048] Table 5 Timing Sequence 1

[0049]

[0050] The ID of timing sequence 1 is 68H, which contains 3 instructions. The instruction identifier of the first instruction is 11H, indicating that the instruction is an instruction code, and the execution time is 5113608 seconds (the number of seconds since the initial timing of the current spacecraft system). The instruction identifier of the second instruction is 11H, indicating that the instruction is an instruction code, enabling the specified instruction group, and the execution interval is 128 seconds. The third instruction is a one-time remote control package used in the current mission. This remote control package is sent to the AIS receiver and contains parameter data for the AIS-guided payload imaging mission, with an execution interval of 256 seconds.

[0051] Step 5: The autonomous mission management component in the spacecraft CPU software performs the autonomous mission management function. One second before the execution time of timing sequence 1, timing sequence 2 is autonomously generated and injected into the component. The format of timing sequence 2 is shown in Table 6.

[0052] Table 6 Timing Sequence 2

[0053]

[0054] The ID of timing sequence 2 is 12H, which contains 4 instructions. The instruction identifier of the first instruction is 11H, indicating that the instruction is an instruction code and the start execution time is 0 seconds, indicating that the sequence will be executed immediately after injection. The second instruction has the same identifier as the first instruction and the execution interval is 2 seconds. The third instruction is the instruction group enable instruction, which is also addressed by code and the execution interval is 2 seconds. The fourth instruction is a one-time remote control package used by the current task. This remote control package is sent to the navigation subsystem and contains the parameter data of the autonomous navigation task. The execution interval is 32 seconds.

[0055] Step 6: The instruction scheduling process collects satellite time every 100ms. If it detects that the start execution time of timing sequence 1 is 0, the component will immediately execute timing sequence 1, and in the next second, the component will start executing timing sequence 2.

[0056] Step 7: Ground users discovered, through telemetry data transmitted down from the spacecraft, that the spacecraft's CPU software executed timing sequence 1 and timing sequence 2 in parallel, indicating that the AIS guidance payload imaging mission and the autonomous navigation mission were executed in parallel.

[0057] In summary, the above is merely one embodiment of the present invention and is not intended to limit the scope of protection of the present invention. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the scope of protection of the present invention.

Claims

1. An on-orbit operation timing planning device based on timing sequences, wherein the device is a module in the spacecraft CPU software, characterized in that: This device is based on a timing sequence, supplemented by three elements: instruction code, instruction pool, and instruction group. The instruction code is used to identify or match instructions in the instruction pool; the instruction group implements a specific function and consists of multiple pre-ordered instruction codes and the interval between executing adjacent instruction codes; the instruction pool includes instruction codes that the device can store and the instruction content corresponding to each instruction code; the timing sequence includes a timing sequence ID, the number of instructions N, the start execution time, the first instruction identifier, the first instruction code, the first remote control packet, the second instruction execution interval, the second instruction identifier, the second instruction code, the second remote control packet, ..., the Nth instruction execution interval, the Nth instruction identifier, the Nth instruction code, and the Nth remote control packet; the device receives user-injected instructions, with the instruction format being an instruction header and an instruction payload. The instruction payload is a timing sequence. After the device successfully verifies the key fields in the timing sequence, it reads the instruction identifier in the timing sequence. If the identifier is an instruction code, the instruction code in the timing sequence is extracted and associated with the instruction in the instruction pool. If the identifier is a remote control packet, the remote control packet is directly stored in the device's internal storage structure. The timing sequence is stored in the timing sequence storage linked list inside the device. When the instruction scheduling process acquires satellite data, if there is an expired timing sequence in the timing sequence storage linked list, all instructions are retrieved sequentially starting from the first instruction for all expired timing sequences and sent out through the instruction sending interface. If the instruction identifier shows an instruction code, the instruction content is obtained from the instruction pool and sent. If the instruction identifier shows a remote control packet, it is sent directly.

2. The on-orbit operation timing planning device based on timing sequence according to claim 1, characterized in that: When the instruction identifier is displayed as an instruction code, the remote control package is not present.

3. An on-orbit operation timing planning device based on timing sequences according to claim 1 or 2, characterized in that: During device operation, the specified time sequence is indexed by the time sequence ID and the clearing operation is completed. At the same time, if the current time sequence is executed incorrectly, the current time sequence is automatically cleared without affecting the normal execution of other time sequences.

4. An on-orbit operation timing planning device based on timing sequences according to claim 1 or 2, characterized in that: During device operation, the execution status of the current sequence is fed back to the user in real time, including error codes and success flags, based on the timing sequence ID and the source identifier injected into the current sequence.

5. An on-orbit operation timing planning device based on timing sequences according to claim 1 or 2, characterized in that: During device operation, read and write operations are performed on the instruction pool through instructions, including querying, inserting, deleting and modifying, which facilitates the rematching of instruction codes in the timing sequence.

6. A method for on-orbit operation timing planning based on timing sequences, based on the apparatus described in any one of claims 1-5, characterized in that... Includes the following steps: 1) The on-orbit operation timing planning device is initialized, and several key data structures built into the device are configured, including instruction code, instruction group, instruction pool and timing sequence; among them, the enable operation of instruction group is implemented by instruction group enable instruction, and the instruction group enable instruction has a corresponding instruction code. 2) The CPU software sets the cycle of the instruction scheduling process and starts the process, periodically collecting on-board time and determining whether the timing sequence has started to execute; 3) The device receives the user-injected instruction, parses the source identifier in the instruction header and the timing sequence in the instruction payload, and verifies the key fields in the timing sequence, including: timing sequence ID, number of instructions, instruction identifier, instruction code, and remote control packet; if the verification fails, the device reports the error information to the user through an event report and does not execute the timing sequence; if the verification succeeds, the device proceeds to the next step. 4) Read the instruction identifier in the timing sequence. If the identifier is an instruction code, extract the instruction code from the timing sequence and associate it with the instruction in the instruction pool. If the identifier is a remote control packet, store the remote control packet directly in the internal storage structure of the device. Then store the timing sequence in the timing sequence linked list inside the device. 5) The instruction scheduling process collects satellite time and determines whether any timing sequences in the timing sequence list have reached their time. For all timing sequences that have reached their time, all instructions are retrieved sequentially starting from the first instruction and sent out through the instruction sending interface. If it is an instruction associated with an instruction code, the instruction needs to be retrieved from the instruction pool for sending; if it is a remote control packet, it is sent directly. After the instruction is sent, the device promptly releases the storage resources occupied by the current instruction.