Satellite attitude control method, system, and satellite when gyro data is unavailable

CN120191529BActive Publication Date: 2026-10-27BEIJING WEINA STAR TECH CO LTD +2
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202510391485.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-03-31
Publication Date
2026-10-27
Estimated Expiration
2045-03-31

AI Technical Summary

Technical Problem

MEMS陀螺同样具有明显的加电瞬间启动特性,启动时间通常在1s~5s,该启动特性特点为加电后在启动时间内输出数据不能满足稳态状态指标要求、不能供姿态闭环控制使用

Benefits of technology

[0018]当卫星的陀螺数据无法使用时,可以利用卫星搭载的星敏感器所采集的第一预设历史时间段内的星敏数据,确定出卫星在当前时刻的姿态数据,进而能够有效且及时地对卫星进行姿态控制,能够最大程度保障任务实施,本发明的工程实施可操作性强。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120191529B_ABST
    Figure CN120191529B_ABST
Patent Text Reader

Abstract

The application discloses a satellite attitude control method and system when gyro data cannot be used and a satellite, relates to the technical field of satellite attitude control, and comprises the following steps: when it is determined that the gyro data of the satellite cannot be used, it is judged whether the star sensor data collected by a star sensor configured to the satellite in a current control period is valid; if yes, the attitude data of the satellite at a current time is determined according to the star sensor data collected by the star sensor in the current control period; and when a preset condition is met, the satellite is controlled in attitude according to the attitude data of the satellite at the current time. In the application, when the gyro data of the satellite cannot be used, the star sensor data collected by the star sensor configured to the satellite in the current control period can be used to determine the attitude data of the satellite at the current time, so that the satellite can be effectively and timely controlled in attitude, and the implementation of a task can be maximally guaranteed, and the engineering implementation of the application is high in operability.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of satellite attitude control technology, and in particular to a satellite attitude control method, system and satellite when gyroscope data is unavailable. Background Technology

[0002] A satellite attitude control system typically consists of sensors, actuators, and control software. It controls the satellite's attitude relative to a reference point to maintain the desired position, thereby providing accurate and reliable attitude pointing for the satellite to complete its mission.

[0003] Satellite attitude control includes attitude determination, attitude stabilization, and attitude maneuver control. Attitude determination is the process of determining the azimuth or pointing of the satellite relative to a reference point, thereby obtaining attitude angle parameters. Attitude stabilization control is the process of keeping the satellite attitude in the expected specified direction and value. Attitude maneuver is the process of reorienting the satellite from one attitude to another.

[0004] Commonly used sensors in satellite attitude control systems include: gyroscopes, star sensors, sun sensors, earth sensors, and magnetometers. Among them, gyroscopes are used to measure the satellite's attitude angular motion, star sensors are used to determine the inertial attitude at discrete moments, sun sensors are used to measure solar vector information, earth sensors are used to measure earth vector information, and magnetometers are used to sense the geomagnetic field information of the satellite's location.

[0005] Commonly used actuators in satellite attitude control systems include flywheels, magnetic torquers, jet propulsion systems, and electric propulsion systems. Low Earth orbit satellites are often equipped with flywheels and magnetic torquers.

[0006] The "star sensor + gyroscope" scheme is a commonly used high-precision attitude determination method for satellites. It utilizes measurement information from star sensors and gyroscopes, and through a joint filter, achieves high-precision attitude determination. When measurement information from sun sensors, earth sensors, and magnetometers is available, the information from two of them can be used to achieve satellite attitude determination using a dual-vector attitude determination algorithm.

[0007] Satellites with lower attitude stability requirements are often equipped with low-precision fiber optic gyroscopes or MEMS gyroscopes, while satellites with higher precision requirements are equipped with multiple sets of three-axis fiber optic gyroscopes or a single fiber optic gyroscope with multi-axis redundancy.

[0008] The working principle of a fiber optic gyroscope is based on the Sagnac effect, a common effect of light propagating in a closed optical path. When two beams of light with equal characteristics emitted from the same source propagate in opposite directions in the same closed optical path, if the plane of the closed optical path has a rotational angular velocity relative to inertial space, the optical paths traversed by the beams propagating in opposite directions will be different, resulting in an optical path difference. This optical path difference is proportional to the rotational angular velocity. By detecting this optical path difference and its corresponding phase difference, the rotational angular velocity can be determined. Currently, mainstream fiber optic gyroscopes employ a closed-loop demodulation scheme using a PID control algorithm. Fiber optic gyroscopes exhibit a significant power-on instantaneous start-up characteristic, with a start-up time typically ranging from 5 to 15 seconds. This start-up characteristic is characterized by irregular output during the start-up time after power-on, making angular velocity measurement impossible. Fiber optic gyroscopes also exhibit failure modes such as open-loop operation, constant output, and abnormal output data.

[0009] The working principle of a MEMS (Micro-Electro-Mechanical Systems) gyroscope is based on the Coriolis force. The Coriolis force describes the linear displacement of a particle moving in a straight line relative to the rotating system due to inertia. MEMS gyroscopes measure angular velocity using the Coriolis force. MEMS gyroscopes also exhibit a significant power-on instantaneous start-up characteristic, with a start-up time typically ranging from 1 to 5 seconds. This start-up characteristic means that the output data during the initial start-up time cannot meet steady-state performance requirements and cannot be used for attitude closed-loop control.

[0010] The prerequisite for spacecraft attitude control is accurate attitude description. Currently, common attitude description methods include rotation matrices, Euler angles, Euler quaternions, and modified Rodrigues parameters. Among these, Euler angles and MRPs have singularities, and Euler quaternions have the disadvantage of non-uniqueness in attitude description. Rotation matrices can globally and uniquely describe the attitude of rigid bodies. In early research, the three-dimensional special orthogonal matrix group SO(3) formed by rotation matrices was a non-Euclidean manifold. Due to the imperfect development of its model stability theory, other parameterized models are usually chosen when control design is involved. Currently, research on Lie groups is gradually developing, and control methods based on SO(3) show high control accuracy and fast control performance.

[0011] Because current satellite fiber optic gyroscopes and MEMS gyroscopes have a significant instantaneous startup characteristic upon power-up, the satellite attitude control system lacks effective gyroscope angular velocity data for closed-loop attitude control during gyroscope failures or primary / backup gyroscope switching. In this state, how to adopt effective control logic and attitude control methods is extremely important for the satellite. This is especially true for high-value satellites performing missions, where effective control logic and attitude control methods are crucial to ensure stable and controllable satellite attitude and successful mission implementation when gyroscope failures or primary / backup gyroscope switching occur. Summary of the Invention

[0012] The technical problem to be solved by this invention is to address the shortcomings of existing technologies. Specifically, it provides a satellite attitude control method, system, and satellite when gyroscope data is unavailable, as detailed below:

[0013] 1) In a first aspect, the present invention provides a satellite attitude control method when gyroscope data is unavailable, the specific technical solution of which is as follows:

[0014] When it is determined that the satellite's gyroscope data is unusable, the system determines whether the star sensor data collected by the satellite's configured star sensor within the current control cycle is valid, and obtains the first determination result.

[0015] When the first judgment result is yes, the attitude data of the satellite at the current moment is determined based on the star sensor data collected by the star sensor within the current control cycle.

[0016] When the preset conditions are met, the satellite's attitude is controlled based on its current attitude data.

[0017] The beneficial effects of the satellite attitude control method provided by this invention when gyroscope data is unavailable are as follows:

[0018] When the satellite's gyroscope data is unavailable, the satellite's attitude data at the current moment can be determined by using the star sensor data collected within a first preset historical time period by the star sensor on board the satellite. This enables effective and timely attitude control of the satellite, maximizing the guarantee of mission implementation. The engineering implementation of this invention is highly operable.

[0019] Based on the above solution, the satellite attitude control method of the present invention when gyroscope data is unavailable can be further improved as follows.

[0020] Furthermore, it also includes:

[0021] If the first judgment result is negative, the second judgment result is obtained by judging whether the data of the current control cycle collected by the Earth sensor configured on the satellite and the data of the current control cycle collected by the Sun sensor configured on the satellite are both valid.

[0022] When the second judgment result is yes, the satellite's attitude data at the current moment is determined based on the data of the current control cycle collected by the Earth sensor and the data of the current control cycle collected by the satellite's configured solar sensor.

[0023] Furthermore, it also includes:

[0024] If the second judgment result is negative, the satellite's attitude data at the current moment is determined based on the satellite attitude data cached within a preset historical time period.

[0025] Furthermore, it also includes: determining whether preset conditions are met based on the fault diagnosis results that cause the satellite's gyroscope data to be unusable and the duration of the fault.

[0026] 2) Secondly, the present invention also provides a satellite attitude control system when gyroscope data is unavailable, the specific technical solution of which is as follows:

[0027] It includes a judgment module, an attitude data acquisition module, and an attitude control module;

[0028] The judgment module is used to: when it is determined that the satellite's gyroscope data is unusable, determine whether the star sensor data collected by the satellite's configured star sensor within the current control cycle is valid, and obtain the first judgment result;

[0029] The attitude data acquisition module is used to: when the first judgment result is yes, determine the attitude data of the satellite at the current moment based on the star sensor data collected by the star sensor within the current control cycle;

[0030] The attitude control module is used to control the attitude of the satellite based on the satellite's attitude data at the current moment when preset conditions are met.

[0031] Based on the above solution, the satellite attitude control system of the present invention when gyroscope data is unavailable can be further improved as follows.

[0032] Furthermore, the judgment module is also used to: when the first judgment result is negative, determine whether the data of the current control cycle collected by the Earth sensor configured on the satellite and the data of the current control cycle collected by the Sun sensor configured on the satellite are both valid, and obtain the second judgment result;

[0033] The attitude data acquisition module is also used to: when the second judgment result is yes, determine the attitude data of the satellite at the current moment based on the data of the current control cycle collected by the Earth sensor and the data of the current control cycle collected by the sun sensor configured on the satellite.

[0034] Furthermore, the attitude data acquisition module is also used for:

[0035] If the second judgment result is negative, the satellite's attitude data at the current moment is determined based on the satellite attitude data cached within a preset historical time period.

[0036] Furthermore, the judgment module is also used to: determine whether the preset conditions are met based on the fault diagnosis results that cause the satellite's gyroscope data to be unusable and the duration of the fault.

[0037] 3) In a third aspect, the present invention also provides a satellite, including an onboard processor, which is used to execute any of the above-described satellite attitude control methods when gyroscope data is unavailable.

[0038] 4) In a fourth aspect, the present invention also provides an electronic device, the electronic device including a processor coupled to a memory, the memory storing at least one computer program, the at least one computer program being loaded and executed by the processor to enable the electronic device to implement any of the above-mentioned satellite attitude control methods when gyroscope data is unavailable.

[0039] 5) In a fifth aspect, the present invention also provides a computer-readable storage medium storing a computer program, wherein the computer program, when executed by a processor, implements any of the above-mentioned satellite attitude control methods when gyroscope data is unavailable.

[0040] It should be noted that the beneficial effects of the technical solutions of the second to fifth aspects of the present invention and their corresponding possible implementations can be found in the above description of the technical effects of the first aspect and its corresponding possible implementations, and will not be repeated here. Attached Figure Description

[0041] To more clearly illustrate the technical solutions in the embodiments of the present invention, the accompanying drawings used in the description of the embodiments of the present invention will be briefly introduced below:

[0042] Figure 1 This is a flowchart illustrating a satellite attitude control method when gyroscope data is unavailable, according to an embodiment of the present invention.

[0043] Figure 2 A simulation diagram of attitude stabilization control of a zero-attitude orbital system without angular velocity feedback.

[0044] Figure 3 This is a simulation diagram illustrating the attitude stabilization control of a small-angle maneuver without angular velocity feedback in an orbital system.

[0045] Figure 4 A simulation diagram of the axis angle for attitude stability control error during small-angle maneuvers of the orbital system without angular velocity feedback.

[0046] Figure 5This is a schematic diagram of a satellite attitude control system according to an embodiment of the present invention when gyroscope data is unavailable;

[0047] Figure 6 This is a schematic diagram of the structure of an electronic device according to an embodiment of the present invention. Detailed Implementation

[0048] The principles and features of the present invention are described below. The examples given are only for explaining the present invention and are not intended to limit the scope of the present invention.

[0049] The technical solution of the present invention and how the technical solution of the present invention solves the above-mentioned technical problems are described in detail below with specific embodiments. These specific embodiments can be combined with each other, and the same or similar concepts or processes may not be described again in some embodiments. The embodiments of the present invention will now be described with reference to the accompanying drawings.

[0050] like Figure 1 As shown, an embodiment of the present invention provides a satellite attitude control method when gyroscope data is unavailable, comprising the following steps:

[0051] S1. When it is determined that the satellite's gyroscope data is unusable, determine whether the star sensor data collected by the satellite's configured star sensor within the current control cycle is valid, and obtain the first judgment result;

[0052] The current control period refers to the control period to which the moment when the satellite's gyroscope data is determined to be unusable is determined.

[0053] When the star sensor outputs star sensor data, it will carry an identifier indicating whether the star sensor data is valid. This identifier is used to determine whether the star sensor data of the current control cycle of the satellite configuration star sensor is valid.

[0054] The attitude control system is equipped with sensors such as star sensors, gyroscope sensors, earth sensors, and sun sensors, while the satellite actuators are equipped with flywheels, magnetic torquers, etc.

[0055] This includes diagnosing faults in the gyroscope sensors of the satellite's attitude control system, determining the fault diagnosis results, and assigning a fault category identifier to each fault diagnosis result. Specifically:

[0056] 1) If all gyroscope sensors on the satellite malfunction, the fault category is marked as: Category I fault.

[0057] The process for determining whether any gyroscope sensor has malfunctioned is as follows:

[0058] If the angular velocity output by any gyroscope sensor exceeds a preset angular velocity threshold and the duration exceeds a first preset duration, the gyroscope sensor is determined to be faulty. For ease of distinction, this duration is recorded as the first preset duration. The preset angular velocity threshold and the first duration can be determined based on actual conditions and ground tests. Alternatively, if the change between any two adjacent angular velocities output by any gyroscope sensor does not exceed a preset change threshold and the duration exceeds a second preset duration, the gyroscope sensor is determined to be faulty. For ease of distinction, this duration is recorded as the second preset duration. The preset change threshold and the second preset duration can be determined based on actual conditions and ground tests.

[0059] 2) When some of the satellite's gyroscope sensors malfunction, and there are still normal gyroscope sensors that are not powered on (gyroscope sensors that are able to operate normally), after powering on the normal gyroscope sensors that are not powered on, during the startup process, the data output by the gyroscope sensors is unstable and cannot be directly used for attitude determination and closed-loop control. The fault category of this fault is marked as: Category II fault.

[0060] 3) If all the gyroscope sensors on the satellite are normal, but the data output by each gyroscope sensor is unstable during the power-on startup process and cannot directly participate in attitude determination and closed-loop control, the fault category of this fault is marked as: Category III fault.

[0061] When the first, second, or third type of fault occurs, the satellite's gyroscope data is deemed unusable. If none of the first, second, or third type of fault occurs, the satellite's gyroscope data is deemed usable.

[0062] S2. When the first judgment result is yes, determine the satellite's attitude data at the current moment based on the star sensor data collected by the star sensor within the current control cycle.

[0063] S3. When the preset conditions are met, the satellite's attitude is controlled based on the satellite's attitude data at the current moment.

[0064] Optionally, the above technical solution also includes:

[0065] If the first judgment result is negative, the second judgment result is obtained by judging whether the data of the current control cycle collected by the Earth sensor configured on the satellite and the data of the current control cycle collected by the Sun sensor configured on the satellite are both valid.

[0066] When the Earth sensor outputs data, it carries an identifier indicating whether the output data is valid. This identifier allows us to determine whether the data collected from the Earth sensor configured on the satellite is valid for the current control cycle. Similarly, when the Sun sensor outputs data, it carries an identifier indicating whether the output data is valid. This identifier allows us to determine whether the data collected from the Sun sensor configured on the satellite is valid for the current control cycle.

[0067] When the second judgment result is yes, the satellite's attitude data at the current moment is determined based on the data of the current control cycle collected by the Earth sensor and the data of the current control cycle collected by the satellite's configured solar sensor.

[0068] Optionally, the above technical solution also includes:

[0069] If the second judgment result is negative, the satellite's attitude data at the current moment is determined based on the satellite attitude data cached within a preset historical time period.

[0070] The preset historical time period is the time between the start time and the end time. The end time is the moment when the satellite's gyroscope data is determined to be unusable. The duration between the start time and the end time is a preset duration, such as 1 minute or 5 minutes, which can be set according to the actual situation. Table 1 lists the satellite attitude data cached by the satellite within the preset historical time period, specifically including roll angle, pitch angle, and yaw angle at different times.

[0071] Table 1:

[0072]

[0073]

[0074] Based on the satellite attitude data (roll angle, pitch angle, and yaw angle) cached within a preset historical time period, the satellite's attitude data at the current moment is determined. The specific implementation process is as follows:

[0075] Based on the satellite attitude data cached within a preset historical time period, determine the correspondence between roll angle, pitch angle, and yaw angle and satellite time:

[0076]

[0077] Where, φ t Represents the roll angle of the satellite at time t. t Represents: the elevation angle of the satellite at time t, ψ t It represents the yaw angle of the satellite at time t, where a3, a2, a1, a0, b3, b2, b1, b0, c3, c2, c1, and c0 are all coefficients.

[0078] ①The methods for obtaining a3, a2, a1, and a0 are as follows:

[0079] Construct a formula group: This set of formulas is denoted as Ang_φ=M φ *X, where Using the least squares method for Ang_φ=M φ *X is fitted to obtain a3, a2, a1, and a0, and the current time t is further obtained. n+1 Roll angle φ n+1 , φ n+1 =a3*(t n +t step ) 3 +a2*(t n +t step ) 2 +a1*(t n +t step )+a0,t n+1 =t n +t step , t step This indicates that the time step size can be controlled and can be set according to the actual situation.

[0080] ②The process of obtaining b3, b2, b1, and b0 is as follows:

[0081] Construct a formula group: This set of formulas is denoted as: Ang_θ=M θ *Y, where, Using the least squares method for Ang_θ=M θ *Y is fitted to obtain b3, b2, b1, and b0, and the current time t is further obtained. n+1 Roll angle θ n+1 θ n+1 =b3*(t n +t step ) 3 +b2*(t n +t step ) 2 +b1*(t n +t step )+b0.

[0082] ③The process of obtaining c3, ​​c2, c1, and c0 is as follows:

[0083] Construct a formula group: This set of formulas is denoted as: Ang_ψ=M ψ *Z, where, Using the least squares method to apply Ang_ψ=M ψ*Z is fitted to obtain c3, c2, c1, and c0, and then the current time t is obtained. n+1 pitch angle ψ n+1 , ψ n+1 =c3*(t n +t step ) 3 +c2*(t n +t step ) 2 +c1*(t n +t step )+c0.

[0084] Optionally, the above technical solution also includes:

[0085] Based on the fault diagnosis results and duration of the fault that caused the satellite's gyroscope data to be unusable, it is determined whether preset conditions are met. If the preset conditions are met, attitude control is performed on the satellite based on its current attitude data. If the preset conditions are not met, the satellite's current attitude data is not required during attitude control. Specifically:

[0086] 1) When the fault diagnosis result is not a Class I fault, determine whether the fault duration exceeds the first preset duration threshold to obtain a third judgment result. Then:

[0087] ① When the third judgment result is yes, a PID controller with angular rate participation is used for closed-loop attitude control, and the control torque is calculated so that the satellite's actuator outputs the control torque to perform closed-loop attitude control on the satellite.

[0088] ② When the third judgment result is negative, based on the calculated attitude data of the satellite at the current moment, the SO(3) controller without angular rate participation is used to perform closed-loop attitude control, calculate the control torque so that the satellite's actuator outputs the control torque to perform closed-loop attitude control on the satellite.

[0089] Based on the calculated satellite attitude data at the current moment, a closed-loop attitude control is performed using an SO(3) controller without angular rate participation, and the control torque is calculated. The specific implementation process is as follows:

[0090] a. Define vector calculation method: Define any vector x, Definition: (x × ) ∨ =x;

[0091] b. Calculate the control torque using the following formula:

[0092] τ=-κ Q e Q -κ R Re

[0093] in, Ω=Γe Q , τ represents the control torque, κ Q and κ R All are coefficients of the SO(3) controller. κ is determined through simulation experiments and ground tests based on the satellite's requirements for the speed and stability of the control system. Q and κ R Q and Γ are both intermediate variables. The initial values ​​of Q and Γ can be set according to the actual situation. Q belongs to a special three-dimensional orthogonal group, and R is the value based on the attitude angle φ at the current moment. n+1 θ n+1 ψ n+1 The calculated attitude matrix at the current time, R d To determine the target attitude matrix based on the satellite's attitude control objectives, tr(R) T Q) indicates: Calculate R T The traces of Q.

[0094] 2) When the fault is a type I fault, determine whether the duration of the fault exceeds the second preset duration threshold, and obtain the fourth determination result: the first preset duration threshold is less than the second preset duration threshold.

[0095] ① When the fourth judgment result is yes, the control method for attitude control of the satellite is: to use the actuator to perform magnetic damping control of the satellite.

[0096] ② When the fourth judgment result is negative, based on the calculated attitude data of the satellite at the current moment, the SO(3) controller without angular rate participation is used to perform closed-loop attitude control, calculate the control torque so that the satellite's actuator outputs the control torque to perform closed-loop attitude control on the satellite.

[0097] Among them, meeting the preset conditions means: meeting the condition that "the fault diagnosis result is not a first type of fault and the third judgment result is no", or meeting the condition that "the fault that occurred is a first type of fault and the fourth judgment result is no". If the condition that "the fault diagnosis result is not a first type of fault and the third judgment result is no" or "the fault that occurred is a first type of fault and the fourth judgment result is no" is not met, then it is determined that the preset conditions are not met.

[0098] When it is determined that the satellite's gyroscope data is unavailable, control is performed according to the time step t. step It acquires satellite attitude data at multiple times in real time, and performs attitude control on the satellite based on the fault diagnosis results that cause the satellite's gyroscope data to be unusable, the duration of the fault, and the latest attitude data of the satellite.

[0099] Simulation results of attitude control without angular rate feedback using the attitude handling control method of this invention are as follows: Figure 2 , Figure 3 and Figure 4 As shown.

[0100] In the above embodiments, although the steps are numbered S1, S2, etc., they are only specific embodiments given by the present invention. Those skilled in the art can adjust the execution order of S1, S2, etc. according to the actual situation, which is also within the protection scope of the present invention. It can be understood that in some embodiments, some or all of the above embodiments may be included.

[0101] like Figure 5 As shown, a satellite attitude control system 200 according to an embodiment of the present invention when gyroscope data is unavailable includes a judgment module 201, an attitude data acquisition module 202, and an attitude control module 203.

[0102] The judgment module 201 is used to: when it is determined that the satellite's gyroscope data is unusable, determine whether the star sensor data collected by the satellite's configured star sensor within the current control cycle is valid, and obtain a first judgment result;

[0103] The attitude data acquisition module 202 is used to: when the first judgment result is yes, determine the attitude data of the satellite at the current moment based on the star sensor data collected by the star sensor within the current control cycle;

[0104] The attitude control module 203 is used to: control the attitude of the satellite based on the satellite's attitude data at the current moment when preset conditions are met.

[0105] Optionally, in the above technical solution, the judgment module 201 is further configured to: when the first judgment result is negative, determine whether the data of the current control cycle collected by the Earth sensor configured on the satellite and the data of the current control cycle collected by the Sun sensor configured on the satellite are both valid, and obtain the second judgment result;

[0106] The attitude data acquisition module 202 is also used to: when the second judgment result is yes, determine the attitude data of the satellite at the current moment based on the data of the current control cycle collected by the Earth sensor and the data of the current control cycle collected by the sun sensor configured on the satellite.

[0107] Optionally, in the above technical solution, the attitude data acquisition module 202 is further used for:

[0108] If the second judgment result is negative, the satellite's attitude data at the current moment is determined based on the satellite attitude data cached within a preset historical time period.

[0109] Optionally, in the above technical solution, the judgment module 201 is further used to: determine whether the preset conditions are met based on the fault diagnosis results and the duration of the fault that caused the satellite's gyroscope data to be unusable.

[0110] It should be noted that the beneficial effects of the satellite attitude control system 200 provided in the above embodiments when gyroscope data is unavailable are the same as the beneficial effects of the satellite attitude control method provided in the above embodiments when gyroscope data is unavailable, and will not be repeated here. Furthermore, the system provided in the above embodiments is only illustrated by the division of the above functional modules. In practical applications, the above functions can be assigned to different functional modules as needed, that is, the system can be divided into different functional modules according to the actual situation to complete all or part of the functions described above. In addition, the system and method embodiments provided in the above embodiments belong to the same concept, and their specific implementation process is detailed in the method embodiments, and will not be repeated here.

[0111] The satellite attitude control system of the present invention when gyroscope data is unavailable can be a computer program (including program code) running on a computer device. For example, the satellite attitude control system of the present invention when gyroscope data is unavailable is an application software that can be used to execute the corresponding steps in the satellite attitude control method of the present invention when gyroscope data is unavailable.

[0112] In some embodiments, the satellite attitude control system of the present invention when gyroscope data is unavailable can be implemented using a combination of hardware and software. As an example, the satellite attitude control system of the present invention when gyroscope data is unavailable can be a processor in the form of a hardware decoding processor, which is programmed to execute the satellite attitude control method of the present invention when gyroscope data is unavailable. For example, the processor in the form of a hardware decoding processor can be one or more application-specific integrated circuits (ASICs), DSPs, programmable logic devices (PLDs), complex programmable logic devices (CPLDs), field-programmable gate arrays (FPGAs), or other electronic components.

[0113] The modules described in the embodiments of this invention can be implemented in software or hardware. The names of the modules are not, in some cases, limiting the scope of the module itself.

[0114] The present invention also provides a satellite, including an onboard processor, which is used to execute any of the above-described satellite attitude control methods when gyroscope data is unavailable.

[0115] An electronic device according to an embodiment of the present invention includes a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the computer program, it implements any of the above-mentioned satellite attitude control methods when gyroscope data is unavailable. That is, an electronic device according to an embodiment of the present invention may include, but is not limited to: a processor and a memory; the memory is used to store the computer program; the processor is used to execute the satellite attitude control method when gyroscope data is unavailable as shown in any embodiment of the present invention by calling the computer program.

[0116] In one alternative embodiment, an electronic device is provided, such as Figure 6 As shown, Figure 6 The illustrated electronic device 4000 includes a processor 4001 and a memory 4003. The processor 4001 and the memory 4003 are connected, for example, via a bus 4002. Optionally, the electronic device 4000 may further include a transceiver 4004, which can be used for data interaction between the electronic device and other electronic devices, such as sending and / or receiving data. It should be noted that in practical applications, the transceiver 4004 is not limited to one type, and the structure of the electronic device 4000 does not constitute a limitation on the embodiments of the present invention.

[0117] Processor 4001 may be a CPU (Central Processing Unit), a general-purpose processor, a DSP (Digital Signal Processor), an ASIC (Application Specific Integrated Circuit), an FPGA (Field Programmable Gate Array), or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof. It can implement or execute the various exemplary logic blocks, modules, and circuits described in conjunction with the disclosure of this invention. Processor 4001 may also be a combination that implements computational functions, such as a combination of one or more microprocessors, a combination of a DSP and a microprocessor, etc.

[0118] Bus 4002 may include a path for transmitting information between the aforementioned components. Bus 4002 may be a PCI (Peripheral Component Interconnect) bus or an EISA (Extended Industry Standard Architecture) bus, etc. Bus 4002 can be divided into address bus, data bus, control bus, etc. For ease of representation, Figure 6 The bus 4002 is represented by only one thick line, but this does not mean that there is only one bus or one type of bus.

[0119] The memory 4003 may be ROM (Read Only Memory) or other types of static storage devices capable of storing static information and instructions, RAM (Random Access Memory) or other types of dynamic storage devices capable of storing information and instructions, or EEPROM (Electrically Erasable Programmable Read Only Memory), CD-ROM (Compact Disc Read Only Memory) or other optical disc storage, optical disc storage (including compressed optical discs, laser discs, optical discs, digital universal optical discs, Blu-ray discs, etc.), magnetic disk storage media or other magnetic storage devices, or any other medium capable of carrying or storing desired program code in the form of instructions or data structures and accessible by a computer, but not limited thereto.

[0120] The memory 4003 stores the application code (computer program) for executing the present invention, and its execution is controlled by the processor 4001. The processor 4001 executes the application code stored in the memory 4003 to implement the content shown in the foregoing method embodiments.

[0121] Among them, electronic devices can also be terminal devices, which can be any device that can install applications, including at least one of smartphones, tablets, laptops, desktop computers, smart speakers, smartwatches, smart TVs, and smart in-vehicle devices.

[0122] It should be noted that, Figure 6 The electronic device shown is merely an example and should not be construed as limiting the functionality and scope of use of the embodiments of the present invention.

[0123] An embodiment of the present invention provides a computer-readable storage medium storing a computer program, which, when executed by a processor, implements any of the above-mentioned satellite attitude control methods when gyroscope data is unavailable.

[0124] Alternatively, the computer-readable storage medium may be a read-only memory (ROM), a random access memory (RAM), a compact disc read-only memory (CD-ROM), magnetic tape, a floppy disk, and an optical data storage device, etc.

[0125] In an exemplary embodiment, a computer program product or computer program is also provided, which includes computer instructions stored in a computer-readable storage medium. A processor of an electronic device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the electronic device to perform any of the above-described satellite attitude control methods when gyroscope data is unavailable.

[0126] Computer program code for performing the operations of this invention can be written in one or more programming languages ​​or a combination thereof. These programming languages ​​include object-oriented programming languages—such as Java, Smalltalk, and C++—and conventional procedural programming languages—such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can be connected to the user's computer via any type of network—including a local area network (LAN) or a wide area network (WAN)—or can be connected to an external computer (e.g., via the Internet using an Internet service provider).

[0127] It should be understood that the flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of methods and computer program products according to various embodiments of the present invention. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing the specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, may be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.

[0128] The computer-readable storage medium provided in this invention can be, but is not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of a computer-readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EEPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof. In this invention, a computer-readable storage medium can be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, apparatus, or device.

[0129] The aforementioned computer-readable storage medium carries one or more programs, which, when executed by the electronic device, cause the electronic device to perform the method shown in the above embodiments.

[0130] The above description is merely a preferred embodiment of the present invention and an explanation of the technical principles employed. Those skilled in the art should understand that the scope of disclosure in this invention is not limited to technical solutions formed by specific combinations of the above-described technical features, but should also cover other technical solutions formed by arbitrary combinations of the above-described technical features or their equivalents without departing from the above-described concept. For example, technical solutions formed by substituting the above features with (but not limited to) technical features with similar functions disclosed in this invention.

[0131] It should be noted that the terms "first," "second," etc., used in the specification and claims of this application are used to distinguish similar objects and represent a limitation on a specific order or sequence. Where appropriate, the order of use for similar objects can be interchanged so that the embodiments of this application described herein can be implemented in an order other than that shown or described.

[0132] Those skilled in the art will recognize that this invention can be implemented as a system, method, or computer program product. Therefore, this invention can be specifically implemented in the following forms: it can be entirely hardware, entirely software (including firmware, resident software, microcode, etc.), or a combination of hardware and software, generally referred to herein as a "circuit," "module," or "system." Furthermore, in some embodiments, this invention can also be implemented as a computer program product contained in one or more computer-readable media, which includes computer-readable program code.

[0133] Although embodiments of the present invention have been shown and described above, it is understood that the above embodiments are exemplary and should not be construed as limiting the present invention. Those skilled in the art can make changes, modifications, substitutions and variations to the above embodiments within the scope of the present invention.

Claims

1. A satellite attitude control method when gyroscope data is unavailable, characterized in that, include: When it is determined that the satellite's gyroscope data is unusable, the system determines whether the star sensor data collected by the satellite's configured star sensor within the current control cycle is valid, and obtains the first determination result. When the first judgment result is yes, the attitude data of the satellite at the current moment is determined based on the star sensor data collected by the star sensor within the current control cycle. When the preset conditions are met, the attitude control of the satellite is performed based on the satellite's attitude data at the current moment; Also includes: If the first judgment result is negative, the second judgment result is obtained by judging whether the data of the current control cycle collected by the Earth sensor configured on the satellite and the data of the current control cycle collected by the Sun sensor configured on the satellite are both valid. When the second judgment result is yes, the attitude data of the satellite at the current moment is determined based on the data of the current control cycle collected by the Earth sensor and the data of the current control cycle collected by the sun sensor configured on the satellite. Also includes: When the second judgment result is negative, the satellite's attitude data at the current moment is determined based on the satellite attitude data cached within a preset historical time period. When the second determination result is negative, the satellite's attitude data at the current moment is determined based on the satellite attitude data cached within a preset historical time period, including: Based on the satellite attitude data cached within a preset historical time period, determine the correspondence between roll angle, pitch angle, and yaw angle and satellite time: ,in, Indicates: the roll angle of the satellite at time t. Indicates the elevation angle of the satellite at time t. Indicates: the yaw angle of the satellite at time t. , , , , , , , , , , and All are coefficients; , , , The methods of obtaining it include: Construct a formula group: Let this set of formulas be denoted as ,in, , , Using the least squares method to By fitting, we can obtain , , and To further obtain the current moment Roll angle , , , Indicates: controlling the time step; , , , The acquisition process includes: Construct a formula group: Let this set of formulas be denoted as: ,in, , , Using the least squares method to By fitting, we can obtain , , , To further obtain the current moment pitch angle , ; , , , The acquisition process includes: Construct a formula group: Let this set of formulas be denoted as: ,in, , , Using the least squares method to By fitting the data, we can obtain the following results: , , and Then get the current time. Yaw angle , ; Also includes: Based on the fault diagnosis results that cause the satellite's gyroscope data to be unusable and the duration of the fault, it is determined whether the preset conditions are met; when the preset conditions are met, the satellite's attitude is controlled based on the satellite's attitude data at the current moment; when the preset conditions are not met, the satellite's attitude data at the current moment is not required during the attitude control process. 1) If all gyroscope sensors on the satellite malfunction, the fault category is marked as: Category I fault. If the fault diagnosis result is not Category I fault, it is determined whether the fault duration exceeds a first preset duration threshold, resulting in a third judgment result. Then: ① When the third judgment result is yes, a PID controller with angular rate participation is used for attitude control, and the control torque is calculated so that the satellite's actuator outputs the control torque to control the satellite's attitude; ② When the third judgment result is negative, based on the calculated attitude data of the satellite at the current moment, the SO (3) controller without angular rate participation is used for attitude control, and the control torque is calculated so that the satellite's actuator outputs the control torque to control the attitude of the satellite. Based on the calculated satellite attitude data at the current moment, an SO(3) controller without angular rate involvement is used for attitude control, and the control torque is calculated, including: Define vector calculation method: Define any vector , ,definition ,definition: ; The control torque is calculated using the formula: ,in, , , , , Indicates: control torque. and All are coefficients of the SO(3) controller, determined through simulation experiments and ground tests based on the satellite's requirements for the speed and stability of the control system. and , and They are all intermediate variables. It belongs to the three-dimensional special orthogonal group. To determine the attitude angle at the current moment , , The calculated attitude matrix at the current time moment, This is the target attitude matrix determined based on the satellite's attitude control objectives. Indicates: Calculation traces; 2) When the fault is a Class I fault, determine whether the duration of the fault exceeds the second preset duration threshold, and obtain the fourth determination result: the first preset duration threshold is less than the second preset duration threshold. ① When the fourth judgment result is yes, the control method for satellite attitude control is: using actuators to perform satellite magnetic damping control; ② When the fourth judgment result is negative, based on the calculated attitude data of the satellite at the current moment, the SO (3) controller without angular rate participation is used for attitude control, and the control torque is calculated so that the satellite's actuator outputs the control torque to control the satellite's attitude.

2. A satellite attitude control system when gyroscope data is unavailable, characterized in that, It includes a judgment module, an attitude data acquisition module, and an attitude control module; The judgment module is used to: when it is determined that the satellite's gyroscope data is unusable, determine whether the star sensor data collected by the satellite's configured star sensor within the current control cycle is valid, and obtain a first judgment result; The attitude data acquisition module is used to: when the first judgment result is yes, determine the attitude data of the satellite at the current moment based on the star sensor data collected by the star sensor within the current control cycle; The attitude control module is used to: when preset conditions are met, perform attitude control on the satellite based on the satellite's attitude data at the current moment; The judgment module is further configured to: when the first judgment result is negative, determine whether the data of the current control cycle collected by the Earth sensor configured on the satellite and the data of the current control cycle collected by the Sun sensor configured on the satellite are both valid, and obtain a second judgment result; The attitude data acquisition module is further configured to: when the second judgment result is yes, determine the attitude data of the satellite at the current moment based on the data of the current control cycle collected by the Earth sensor and the data of the current control cycle collected by the sun sensor configured on the satellite; The attitude data acquisition module is also used for: When the second judgment result is negative, the satellite's attitude data at the current moment is determined based on the satellite attitude data cached within a preset historical time period. When the second determination result is negative, the satellite's attitude data at the current moment is determined based on the satellite attitude data cached within a preset historical time period, including: Based on the satellite attitude data cached within a preset historical time period, determine the correspondence between roll angle, pitch angle, and yaw angle and satellite time: ,in, Indicates: the roll angle of the satellite at time t. Indicates the elevation angle of the satellite at time t. Indicates: the yaw angle of the satellite at time t. , , , , , , , , , , and All are coefficients; , , , The methods of obtaining it include: Construct a formula group: Let this set of formulas be denoted as ,in, , , Using the least squares method to By fitting, we can obtain , , and To further obtain the current moment Roll angle , , , Indicates: controlling the time step; , , , The acquisition process includes: Construct a formula group: Let this set of formulas be denoted as: ,in, , , Using the least squares method to By fitting, we can obtain , , , To further obtain the current moment pitch angle , ; , , , The acquisition process includes: Construct a formula group: Let this set of formulas be denoted as: ,in, , , Using the least squares method to By fitting the data, we can obtain the following results: , , and Then get the current time. Yaw angle , ; The judgment module is also used to: determine whether the preset conditions are met based on the fault diagnosis results and the duration of the fault that caused the satellite's gyroscope data to be unusable; when the preset conditions are met, perform attitude control on the satellite based on the satellite's attitude data at the current moment; when the preset conditions are not met, the satellite's attitude data at the current moment is not required during the attitude control process. 1) If all gyroscope sensors on the satellite malfunction, the fault category is marked as: Category I fault. If the fault diagnosis result is not Category I fault, it is determined whether the fault duration exceeds a first preset duration threshold, resulting in a third judgment result. Then: ① When the third judgment result is yes, a PID controller with angular rate participation is used for attitude control, and the control torque is calculated so that the satellite's actuator outputs the control torque to control the satellite's attitude; ② When the third judgment result is negative, based on the calculated attitude data of the satellite at the current moment, the SO (3) controller without angular rate participation is used for attitude control, and the control torque is calculated so that the satellite's actuator outputs the control torque to control the attitude of the satellite. Based on the calculated satellite attitude data at the current moment, an SO(3) controller without angular rate involvement is used for attitude control, and the control torque is calculated, including: Define vector calculation method: Define any vector , ,definition ,definition: ; The control torque is calculated using the formula: ,in, , , , , Indicates: control torque. and All are coefficients of the SO(3) controller, determined through simulation experiments and ground tests based on the satellite's requirements for the speed and stability of the control system. and , and They are all intermediate variables. It belongs to the three-dimensional special orthogonal group. To determine the attitude angle at the current moment , , The calculated attitude matrix at the current time moment, This is the target attitude matrix determined based on the satellite's attitude control objectives. Indicates: Calculation traces; 2) When the fault is a Class I fault, determine whether the duration of the fault exceeds the second preset duration threshold, and obtain the fourth determination result: the first preset duration threshold is less than the second preset duration threshold. ① When the fourth judgment result is yes, the control method for satellite attitude control is: using actuators to perform satellite magnetic damping control; ② When the fourth judgment result is negative, based on the calculated attitude data of the satellite at the current moment, the SO (3) controller without angular rate participation is used for attitude control, and the control torque is calculated so that the satellite's actuator outputs the control torque to control the satellite's attitude.

3. A satellite, characterized in that, It includes an onboard processor for executing a satellite attitude control method as described in claim 1 when gyroscope data is unavailable.

4. An electronic device, characterized in that, It includes a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the satellite attitude control method of claim 1 when gyroscope data is unavailable.

5. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that, when executed by a processor, implements a satellite attitude control method as described in claims 1 to 1 when gyroscope data is unavailable.

Citation Information

Patent Citations

  • Satellite multi-sensor fusion attitude determination method and system

    CN113291493A

  • Star Tracker Rate Estimation with Kalman Filter Enhancement

    US20140236401A1