Satellite attitude control method, electronic device and program product
By acquiring the quaternion of satellite attitude and predicting the desired attitude quaternion, and combining the maximum angular velocity and angular acceleration, rapid maneuvering and stable control of the satellite were achieved, solving the problem of rapid maneuvering of satellites at large angles, expanding the observation range and improving communication efficiency.
Patent Information
- Application Number
- CN202511490226.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-10-17
- Publication Date
- 2026-01-13
AI Technical Summary
Existing technologies are insufficient to achieve rapid, large-angle maneuvers of satellite attitude, thus failing to meet the needs for expanding satellite Earth observation range and enabling rapid communication.
By acquiring the quaternions of the satellite's current attitude and desired attitude, the spatial rotation axis and target rotation angle values are determined. Combined with the maximum calibrated angular velocity and angular acceleration, the desired attitude quaternion that changes over time is predicted, and maneuver control is performed to achieve the fastest path maneuver.
It enables satellites to quickly maneuver to the desired attitude, meeting the requirements for large-angle maneuvers and rapid stabilization, expanding the satellite's observation range and reducing the observation time interval.
Smart Images

Figure CN121325935A_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present disclosure relates to the technical field of satellite control, in particular to a satellite attitude control method, an electronic device and a program product. BACKGROUND
[0002] With the development of satellite application technology, the demand for the ability of large-angle rapid maneuver of satellite attitude in a short time is increasing. Compared with traditional satellites, such satellites with rapid maneuvering capability can greatly increase the satellite observation range on the ground and increase the communication time with the ground station.
[0003] How to realize the large-angle rapid maneuvering capability of satellite attitude is a direction that satellite control technology needs to study. SUMMARY
[0004] Therefore, the embodiments of the present disclosure provide a satellite attitude control method, an electronic device and a program product to provide a solution for realizing the large-angle rapid maneuvering capability of satellite attitude.
[0005] In a first aspect, the present disclosure provides a satellite attitude control method, comprising: obtaining a current quaternion of a current attitude of a satellite and an expected quaternion of an expected attitude; determining a coordinate of a space rotation axis of the satellite and a target rotation angle value of the space rotation axis according to the current quaternion and the expected quaternion; predicting an expected attitude quaternion changing over time according to the target rotation angle value and maximum calibrated angular velocity and maximum calibrated angular acceleration values of the satellite; maneuvering controlling the satellite based on the expected attitude quaternion changing over time, so that the satellite reaches the expected attitude.
[0006] In a second aspect, the present disclosure provides an electronic device, comprising: at least one processor; and a memory in communication connection with the at least one processor; wherein the memory stores at least one computer program executable by the at least one processor, and the at least one computer program is executed by the at least one processor to enable the at least one processor to execute the satellite attitude control method of the first aspect.
[0007] In a third aspect, the present disclosure provides a computer program product, which comprises a computer program, and the computer program realizes the satellite attitude control method of the first aspect when running in a processor.
[0008] The embodiment provided by the present disclosure determines a target rotation angle value of a satellite around a space rotation axis according to a current quaternion and a desired quaternion of the satellite when the satellite needs to perform an angle maneuver; predicts a desired attitude quaternion changing over time according to the target rotation angle value and a maximum calibrated angular velocity value and a maximum calibrated angular acceleration value of the satellite, so that the predicted desired attitude quaternion changing over time can enable the satellite to maneuver along a shortest path; and performs a maneuver control on the satellite based on the desired attitude quaternion changing over time, so that the satellite can be maneuvered to the desired attitude as quickly as possible. It can be seen that the embodiment of the present disclosure provides an effective solution for realizing the rapid maneuvering capability of the satellite attitude. BRIEF DESCRIPTION OF DRAWINGS
[0009] In order to more clearly illustrate the technical solutions in the embodiments of the present disclosure or the prior art, the drawings needed to be used in the embodiments or the prior art description will be briefly introduced. Obviously, the drawings in the following description are only some embodiments of the present disclosure, and other drawings can be obtained by those skilled in the art without creative effort on the basis of the provided drawings.
[0010] Figure 1 An angular velocity curve schematic diagram in a satellite maneuvering process in the embodiment of the present disclosure is shown.
[0011] Figure 2 A satellite attitude control method flowchart schematic diagram in the embodiment of the present disclosure is shown.
[0012] Figure 3 An architecture schematic diagram of a satellite attitude control system in the embodiment of the present disclosure is shown.
[0013] Figure 4 A block diagram of a satellite attitude control device in the embodiment of the present disclosure is shown.
[0014] Figure 5 A structure schematic diagram of an electronic device in the embodiment of the present disclosure is shown. DETAILED DESCRIPTION
[0015] The technical solutions in the embodiments of the present disclosure will be described clearly and completely below with reference to the drawings in the embodiments of the present disclosure. Obviously, the described embodiments are only some of the embodiments of the present disclosure, but not all the embodiments. Based on the embodiments in the present disclosure, all other embodiments obtained by those skilled in the art without creative effort fall within the protection scope of the present disclosure.
[0016] In the case of no conflict, each embodiment of the present disclosure and each feature in the embodiments can be combined with each other.
[0017] As used herein, the term "and / or" includes any and all combinations of one or more of the associated listed items.
[0018] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to limit this disclosure. As used herein, the singular forms “a” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will also be understood that when the terms “comprising” and / or “made of” are used in this specification, the presence of the stated feature, integral, step, operation, element, and / or component is specified, but the presence or addition of one or more other features, integrals, steps, operations, elements, components, and / or groups thereof is not excluded. Words such as “connected” or “linked” are not limited to physical or mechanical connections but can include electrical connections, whether direct or indirect.
[0019] Unless otherwise specified, all terms used herein (including technical and scientific terms) have the same meaning as commonly understood by one of ordinary skill in the art. It will also be understood that terms such as those defined in commonly used dictionaries should be interpreted as having a meaning consistent with their meaning in the context of the relevant art and this disclosure, and will not be interpreted as having an idealized or overly formal meaning, unless expressly so defined herein.
[0020] To achieve a fast-motion effect for a satellite, this disclosure provides a satellite attitude control method. This method can be applied to a satellite attitude control system, for example, it can be executed by a controller within the satellite attitude control system.
[0021] The method provided in this disclosure utilizes a high-fit maneuvering guidance algorithm to plan the process from the current attitude to the desired attitude. The principle of the high-fit maneuvering guidance algorithm is to calculate the shortest path using the spatial rotation axis and complete the maneuver using the maximum angular acceleration and maximum angular velocity. The angular velocity curve of the maneuvering process is shown in the figure. Figure 1 As shown, the area formed by the angular velocity curve and the time axis represents the angle of the maneuver. Wherein, The maximum calibrated angular velocity designed for the satellite, The maximum calibrated angular acceleration designed for the satellite. , The pre-calibrated satellite parameters can be adapted to different actual satellite conditions.
[0022] The satellite attitude control method provided in this disclosure embodiment, such as Figure 2 As shown, the main steps include: Step 201: Obtain the current quaternion of the satellite's current attitude and the expected quaternion of the desired attitude.
[0023] Quaternions are a way to represent satellite attitude. The representation is as follows: , (Scalar) represents the rotation angle-related quantity, and the other three terms represent the rotation axis-related quantity. If quaternion multiplication is used to represent matrix transformations of two or more orders, then the correspondence between the multiplication order and matrix multiplication should be written as follows: in, .
[0024] The current quaternion represents the satellite's current attitude; the expected quaternion represents the satellite's expected attitude, that is, the final attitude expected to be achieved during this maneuver; the difference between the two is the amount of rotation that needs to be compensated.
[0025] Step 202: Determine the target rotation angle value of the satellite around the space rotation axis based on the current quaternion and the expected quaternion.
[0026] The target rotation angle value is the rotation angle value around the space rotation axis that the satellite needs to achieve the desired four elements.
[0027] Satellite attitude is defined as the satellite body coordinate system. The orientation relative to a certain spatial reference coordinate system. Typically, the spatial reference coordinate system for satellite attitude is the satellite's center-of-mass orbital coordinate system. and satellite inertial reference coordinate system In this embodiment of the disclosure, the ground orientation attitude is defined as relative to the orbital coordinate system of the center of mass. Inertial pointing attitude is defined relative to an inertial reference coordinate system. The attitude of a solar observation mission is defined relative to a pointing reference coordinate system. The spatial rotation axis describes the instantaneous rotation axis around which the satellite revolves as it rotates from the current quaternion to the desired quaternion. This axis is determined by the relative rotation of the two quaternions and its direction is perpendicular to the rotation plane of the current attitude and the desired attitude. If the desired attitude is based on an inertial reference coordinate system, the spatial rotation axis is a fixed direction vector in that inertial reference coordinate system; if the desired attitude is based on a centroid orbital coordinate system, the spatial rotation axis dynamically changes with the orbital motion; if it is for target orientation, the spatial rotation axis points in the direction of the target (such as the direction of the sun).
[0028] In an exemplary embodiment, determining the target rotation angle value of the satellite around the space rotation axis based on the current quaternion and the desired quaternion can be expressed as Formula 1: Formula (1); in, Indicates the axis of rotation in space. This represents the target rotation angle value about a spatial rotation axis. q ini Let q represent the current quaternion. endThis represents the desired quaternion. Here, a relative rotation quaternion is obtained by performing a quaternion multiplication operation on the current quaternion and the desired quaternion. From this relative rotation quaternion, the spatial rotation axis and the target rotation angle value are separated.
[0029] Step 203: Based on the target rotation angle value and the satellite's maximum calibrated angular velocity and maximum calibrated angular acceleration value, predict the desired attitude quaternion that changes over time.
[0030] In some embodiments, predicting the desired attitude quaternion over time based on the target rotation angle value and the satellite's maximum calibrated angular velocity and maximum calibrated angular acceleration values includes: determining an angle change function of the space rotation axis angle over time based on the target rotation angle value and the satellite's maximum calibrated angular velocity and maximum calibrated angular acceleration values; determining a rotation attitude change function of the rotation attitude quaternion over time based on the angle change function; and predicting the desired attitude quaternion over time based on the rotation attitude change function and the current attitude. By combining the satellite's maximum calibrated angular velocity and maximum calibrated angular acceleration values to predict the desired attitude quaternion over time, it is possible to plan the fastest path from the current attitude to the desired attitude, and achieve rapid satellite maneuvering through the fastest path represented by the desired attitude quaternion.
[0031] In some embodiments, determining the angular change function of the space rotation axis's angle over time based on the target rotation angle value and the satellite's maximum calibrated angular velocity and maximum calibrated angular acceleration values includes: determining the angular velocity change function of the space rotation axis over time based on the target rotation angle value and the satellite's maximum calibrated angular velocity and maximum calibrated angular acceleration values; and determining the angular change function of the space rotation axis's angle over time using the mapping relationship between the angular velocity and angle of the space axis. By using the maximum calibrated angular velocity and maximum calibrated angular acceleration values to plan the angular velocity change function during the period of completing the target rotation angle value, the change in angular velocity can satisfy the requirement of completing the target rotation angle value as quickly as possible, thereby ensuring that the angular change function mapped from the angular velocity change function can also satisfy the requirement of completing the target rotation angle value as quickly as possible.
[0032] In some embodiments, determining the angular velocity variation function of the space rotation axis over time based on the target rotation angle value and the satellite's maximum calibrated angular velocity value and maximum calibrated angular acceleration value includes: determining the maneuver type based on the target rotation angle value and the satellite's maximum calibrated angular velocity value and maximum calibrated angular acceleration value, and obtaining a phase division method for angular velocity variation matching the maneuver type; obtaining the angular velocity variation function of the space rotation axis over time matching the phase division method.
[0033] In some embodiments, determining the maneuver type based on the target rotation angle value and the satellite's maximum calibrated angular velocity and maximum calibrated angular acceleration values, and obtaining a phase division method for angular velocity changes matching the maneuver type, includes: calculating the square of the maximum calibrated angular velocity value and calculating the ratio of the square value to the maximum calibrated angular acceleration value; when the difference between the target rotation angle value and the ratio is greater than 0, determining it as a large-angle maneuver type, and obtaining a first phase division method for angular velocity changes matching the large-angle maneuver type; the first phase division method includes an acceleration phase, a constant speed phase, and a deceleration phase; when the difference between the target rotation angle value and the ratio is less than or equal to 0, determining it as a small-angle maneuver type, and obtaining a second phase division method for angular velocity changes matching the small-angle maneuver type; the second phase division method includes an acceleration phase and a deceleration phase.
[0034] In an exemplary embodiment, the difference between the target rotation angle value and the ratio is greater than 0, that is... This indicates a large-angle maneuver; the difference between the target rotation angle value and the ratio is less than or equal to 0, i.e. , indicating a small-angle maneuver.
[0035] During high-angle maneuvers, a first-stage approach is adopted, dividing the maneuver process into an acceleration phase, a constant-speed phase, and a deceleration phase. In the acceleration phase, the angular velocity accelerates to the maximum calibrated angular velocity using the maximum calibrated angular acceleration, then enters the constant-speed phase, moving at the maximum calibrated angular velocity for rapid maneuvering. Finally, in the deceleration phase, the angular velocity is gradually reduced to 0, entering a stable state. In high-angle maneuvers, the acceleration and constant-speed phases achieve rapid maneuvering, while the gradual reduction of angular velocity during the deceleration phase ensures rapid satellite stabilization.
[0036] Similarly, during small-angle maneuvers, a second-stage approach is adopted, dividing the maneuver process into an acceleration phase and a deceleration phase. During the acceleration phase, the angular velocity accelerates to the maximum calibrated angular velocity using the maximum calibrated angular acceleration, then enters the deceleration phase. During the deceleration phase, the angular velocity is gradually reduced to 0, reaching a stable state. The acceleration phase achieves a rapid maneuver effect, while the gradual reduction of angular velocity during the deceleration phase ensures rapid satellite stabilization.
[0037] In some embodiments, obtaining the angular velocity change function of the spatial rotation axis over time, which matches the stage division method, includes: For the first stage division method, the angular velocity change function of the spatial rotation axis over time includes a first angular velocity change sub-function corresponding to the first time period, a second angular velocity change sub-function corresponding to the second time period, a third angular velocity change sub-function corresponding to the third time period, and a fourth angular velocity change sub-function corresponding to the fourth time period; the first time period is the duration of the acceleration stage, the second time period is the duration of the uniform speed stage, the third time period is the duration of the deceleration stage, and the fourth time period is the duration of the angular velocity decreasing to 0 and remaining there; For the second stage division method, the angular velocity change function of the matching spatial rotation axis over time includes the fifth angular velocity change sub-function corresponding to the fifth time period, the sixth angular velocity change sub-function corresponding to the sixth time period, and the seventh angular velocity change sub-function corresponding to the seventh time period; the fifth time period is the duration of the acceleration stage, the sixth time period is the duration of the deceleration stage, and the sixth time period is the duration of the angular velocity decreasing to 0 and remaining there.
[0038] In the exemplary embodiment, see Figure 1 The angular velocity curves shown are for the first stage division method, i.e. In this case, the first stage is divided into four time periods based on three time points: the first time period, the second time period, the third time period, and the fourth time period. The three time points are represented as t1, t2, and t3 in Formula 2: Formula (2) The angular velocity of the spatial rotation axis as a function of time is shown in Formula 3: Formula (3); The angle of the spatial rotation axis changes with time as shown in Formula 4: Formula (4).
[0039] In the exemplary embodiment, see Figure 1The angular velocity curve shown is for the second stage division method, i.e. In this case, the first stage is divided into three time periods based on two time points: the fifth time period, the sixth time period, and the seventh time period. These two time points are represented by t1 and t2 in Formula 5. Formula (5) The angular velocity of the spatial rotation axis as a function of time is shown in Formula 6: Formula (6) The angle of the spatial rotation axis changes with time as shown in Formula 7: Formula (7) The angle change functions calculated in the above two cases are used to determine the corresponding rotational attitude quaternion as a function of time, as shown in Formula 8: Formula (8) Based on the rotational attitude change function and the current pose, the expected pose quaternion changing over time is predicted, as shown in Equation 9: Formula (9).
[0040] The above describes how the planned maneuver path can be obtained by predicting the expected attitude quaternion that changes over time. This maneuver path is planned using the maximum calibrated angular velocity and maximum calibrated angular acceleration values. It is the shortest path from the current attitude to the expected attitude, which also means the fastest path.
[0041] Step 204: Perform maneuver control on the satellite based on the desired attitude quaternion that changes over time, so that the satellite reaches the desired attitude.
[0042] By using the predicted time-varying desired attitude quaternion to perform maneuvering control on the satellite, it can quickly maneuver to the desired attitude, achieving a rapid angular maneuvering effect. Furthermore, the maneuvering path is the fastest path planned using the maximum calibrated angular velocity and maximum calibrated angular acceleration values, achieving the effect of maneuvering to the desired attitude in the fastest possible time.
[0043] In Earth observation, rapid service, and high-efficiency applications, satellites require attitude control with large-angle maneuvers and rapid stabilization. Large-angle maneuvers can extend the satellite's observation range, and stability above 0.003º / s is a necessary condition for normal observation by remote sensing payloads. Rapid stabilization after a large-angle maneuver reduces the time interval between observations, improving satellite observation efficiency. Such satellites with rapid maneuvering and stabilization can be called agile satellites. However, it is difficult to balance both large-angle maneuvers and rapid stabilization in control system design. Remote sensing payloads with a resolution of 3 meters or higher require an operating stability of 0.003º / s or higher, a maneuver range of ±50º, and a maximum single angle of approximately 100 degrees.
[0044] Satellite control systems typically employ proportional (P)-integral (I)-derivative (D) controllers for feedback control, resulting in lengthy stabilization times that fail to meet the demands for rapid stabilization. Therefore, to meet the requirement for rapid satellite stabilization, this embodiment dynamically adjusts the parameters of the PID controller during the maneuver control of the satellite based on the time-varying desired attitude quaternion, thereby regulating the satellite's stabilization speed and achieving rapid stabilization.
[0045] like Figure 3 The diagram shows the architecture of a satellite attitude control system. This system includes a satellite, measurement sensors (such as star sensors or gyroscopes), a PID controller, an actuator flywheel (also called a flywheel), and feedforward control. In this embodiment, a fuzzy controller is added to adjust the parameter values of the PID controller. The fuzzy controller adjusts the PID controller parameter values based on the deviation between the satellite's real-time measured attitude and the desired attitude to regulate the satellite's stable speed. The fuzzy controller is equipped with a fuzzy algorithm, whose input is the attitude deviation between the real-time quaternion of the measured attitude and the desired quaternion of the desired attitude. Figure 3 E in the figure represents the attitude deviation and the rate of change of the attitude deviation. Figure 3 (dE / dt represents the rate of change of the attitude deviation). The output of the fuzzy algorithm is the parameter value of the PID controller, such as the kp value of the P controller. Figure 3 In this context, kp represents the parameter value of the P controller, ki represents the parameter value of the I controller, and kd represents the parameter value of the D controller.
[0046] In some embodiments, to achieve a fast and stable effect, the method further includes: during the maneuver control of the satellite based on the desired attitude quaternion, acquiring the real-time quaternion of the satellite's real-time measured attitude; determining the attitude deviation between the real-time quaternion of the real-time measured attitude and the desired attitude quaternion; when the attitude deviation is less than a first deviation threshold and greater than a second deviation threshold, increasing the parameter value of the proportional controller in the proportional-integral-derivative controller used for feedback closed-loop control of the satellite; and keeping the parameter value of the proportional-integral-derivative controller of the satellite unchanged when the attitude deviation is less than the second deviation threshold and the rate of change of the attitude deviation is less than a rate of change threshold. By increasing the parameter value (i.e., kp value) of the P controller in the PID controller, the purpose of accelerating satellite attitude stabilization is achieved. The rate of change of the attitude deviation is the attitude deviation angular velocity.
[0047] In some embodiments, increasing the parameter value of the proportional controller in the proportional-integral-derivative controller used for feedback closed-loop control of the satellite includes: increasing the parameter value of the proportional controller in the proportional-integral-derivative controller used for feedback closed-loop control of the satellite to four times the original parameter value of the proportional controller. Through multiple experimental tests using a fuzzy control algorithm, it was determined that adjusting the kp value to four times its original value achieved the fastest stabilization effect.
[0048] In the exemplary embodiment, the first deviation threshold is set to 0.4 degrees and the second deviation threshold is set to 0.02 degrees. Of course, this is just an example, and the first and second deviation thresholds can be adjusted to other values according to changes in satellite parameters.
[0049] In conventional PID control algorithms, , Where: f is the cutoff frequency of the satellite attitude control system, The damping coefficient is... This represents the diagonal value of the satellite's inertia; generally, f can be taken as 0.02 to 0.1. The value can be in the range of 0.8 to 0.99, and it must satisfy the following constraints: ; ; ;in, The maximum output torque of the actuator flywheel, The attitude error is input to the PID controller. The maximum angular acceleration that the satellite can achieve is determined by the maximum torque of the flywheel actuator and the satellite's inertia, which affects the speed of attitude adjustment; Approximately That is, 0.4°. If the flywheel torque resolution is 0.01... Therefore, the minimum controllable angle is 0.004°, corresponding to 0.01. The cutoff frequency can be selected based on the torque resolution of the actuator flywheel.
[0050] This section adds a fuzzy controller to the conventional PID control to determine the attitude deviation and its rate of change, and selects the PID controller parameters based on the determination result. For example, when the attitude deviation is less than 0.4 degrees, the PID parameters are adjusted as follows: That is, keep the parameter values of the I and D controllers unchanged, and increase the parameter value of the P controller to four times its original value. For example, when the attitude deviation is less than 0.02 degrees and the rate of change of attitude deviation is less than 0.02° / s, keep the parameter values of the PID control unchanged.
[0051] The embodiments provided in this disclosure, when a satellite needs angular maneuvering, determine the target rotation angle value of the satellite around its space rotation axis based on the satellite's current quaternion and desired quaternion; predict the desired attitude quaternion over time based on the target rotation angle value and the satellite's maximum calibrated angular velocity and maximum calibrated angular acceleration values, such that the predicted desired attitude quaternion over time enables the satellite to maneuver along the shortest path; and perform maneuver control on the satellite based on the desired attitude quaternion over time, so that the satellite can maneuver to the desired attitude as quickly as possible. Therefore, the embodiments of this disclosure provide an effective solution for achieving rapid maneuvering capabilities for satellite attitude control.
[0052] Furthermore, by increasing the parameter value of the proportional controller in the proportional-integral-derivative controller used for feedback closed-loop control of the satellite, the satellite can achieve a faster stabilization effect, thereby achieving a fast and stable satellite control effect.
[0053] It is understood that the various method embodiments mentioned above in this disclosure can be combined with each other to form combined embodiments without violating the principle and logic. Due to space limitations, this disclosure will not elaborate further. Those skilled in the art will understand that in the above methods of specific implementation, the specific execution order of each step should be determined by its function and possible internal logic, and the execution order between steps is not limited to implementation according to step number.
[0054] In addition, this disclosure also provides apparatus, electronic equipment, and computer program products, all of which can be used to implement any of the satellite attitude control methods provided in this disclosure. The corresponding technical solutions and descriptions are described in the relevant section of the method and will not be repeated here.
[0055] Figure 4 This is a block diagram of a satellite attitude control device provided in an embodiment of the present disclosure. The satellite attitude control device mainly includes: The acquisition module 401 is used to acquire the current quaternion of the satellite's current attitude and the expected quaternion of the desired attitude; The determining module 402 is used to determine the target rotation angle value of the satellite around the space rotation axis based on the current quaternion and the expected quaternion; The planning module 403 is used to predict the desired attitude quaternion that changes over time based on the target rotation angle value and the maximum calibrated angular velocity value and maximum calibrated angular acceleration value of the satellite. The maneuvering module 404 is used to perform maneuvering control on the satellite based on the time-varying desired attitude quaternion, so that the satellite reaches the desired attitude.
[0056] Figure 5 This is a block diagram of an electronic device provided in an embodiment of the present disclosure.
[0057] Reference Figure 5 This disclosure provides an electronic device, which includes: at least one processor 501; at least one memory 502; and one or more I / O interfaces 503 connected between the processor 501 and the memory 502; wherein the memory 502 stores one or more computer programs that can be executed by the at least one processor 501, and the one or more computer programs are executed by the at least one processor 501 to enable the at least one processor 501 to perform the above-described satellite attitude control method.
[0058] The modules in the aforementioned electronic devices can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in the processor of a computer device in hardware form or independent of it, or stored in the memory of a computer device in software form, so that the processor can call and execute the operations corresponding to each module.
[0059] This disclosure also provides a computer program product, including a computer program that, when run in a processor, implements the above-described satellite attitude control method.
[0060] The computer program may be stored on a readable storage medium of a computer device or in the cloud; the processor of the computer device reads the computer program from the readable storage medium or in the cloud.
[0061] The aforementioned computer program product can be implemented through hardware, software, or a combination thereof. In one optional embodiment, the computer program product is specifically manifested as a computer storage medium; in another optional embodiment, the computer program product is specifically manifested as a software product, such as a software development kit (SDK), etc.
[0062] Those skilled in the art will understand that all or some of the steps, systems, and apparatuses disclosed above, and their functional modules / units, can be implemented as software, firmware, hardware, or suitable combinations thereof. In hardware implementations, the division between functional modules / units mentioned above does not necessarily correspond to the division of physical components; for example, a physical component may have multiple functions, or a function or step may be performed collaboratively by several physical components. Some or all physical components may be implemented as software executed by a processor, such as a central processing unit, digital signal processor, or microprocessor, or as hardware, or as an integrated circuit, such as an application-specific integrated circuit (ASIC). Such software can be distributed on a computer-readable storage medium, which may include computer storage media (or non-transitory media) and communication media (or transient media).
[0063] As is known to those skilled in the art, the term computer storage medium includes volatile and non-volatile, removable and non-removable media implemented in any method or technology for storing information, such as computer-readable program instructions, data structures, program modules, or other data. Computer storage media includes, but is not limited to, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM), static random access memory (SRAM), flash memory or other memory technologies, portable compact disc read-only memory (CD-ROM), digital versatile disc (DVD) or other optical disc storage, magnetic cartridges, magnetic tape, disk storage or other magnetic storage devices, or any other medium that can be used to store desired information and is accessible to a computer. Furthermore, it is known to those skilled in the art that communication media typically contain computer-readable program instructions, data structures, program modules, or other data in modulated data signals such as carrier waves or other transmission mechanisms, and may include any information delivery medium.
[0064] The computer-readable program instructions described herein can be downloaded from computer-readable storage media to various computing / processing devices, or downloaded via a network, such as the Internet, local area network, wide area network, and / or wireless network, to an external computer or external storage device. The network may include copper transmission cables, fiber optic transmission, wireless transmission, routers, firewalls, switches, gateway computers, and / or edge servers. A network adapter card or network interface in each computing / processing device receives the computer-readable program instructions from the network and forwards them to the computer-readable storage media in the respective computing / processing device.
[0065] Computer program instructions used to perform the operations of this disclosure may be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, status setting data, or source code or object code written in any combination of one or more programming languages, including object-oriented programming languages such as Smalltalk, C++, etc., and conventional procedural programming languages such as the "C" language or similar programming languages. The computer-readable program instructions may execute 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 a remote computer, the remote computer may 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 may be connected to an external computer (e.g., via the Internet using an Internet service provider). In some embodiments, electronic circuitry, such as programmable logic circuitry, field-programmable gate arrays (FPGAs), or programmable logic arrays (PLAs), is personalized by utilizing the status information of the computer-readable program instructions to implement various aspects of this disclosure.
[0066] The computer program product described herein can be implemented specifically through hardware, software, or a combination thereof. In one alternative embodiment, the computer program product is specifically embodied in a computer storage medium; in another alternative embodiment, the computer program product is specifically embodied in a software product, such as a software development kit (SDK), etc.
[0067] Various aspects of this disclosure are described herein with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this disclosure. It should be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer-readable program instructions.
[0068] These computer-readable program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to produce a machine such that, when executed by the processor of the computer or other programmable data processing apparatus, they create means for implementing the functions / actions specified in one or more blocks of the flowchart and / or block diagram. These computer-readable program instructions can also be stored in a computer-readable storage medium that causes a computer, programmable data processing apparatus, and / or other device to operate in a particular manner; thus, the computer-readable medium storing the instructions comprises an article of manufacture that includes instructions for implementing aspects of the functions / actions specified in one or more blocks of the flowchart and / or block diagram.
[0069] Computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, thereby causing the instructions executed on the computer, other programmable data processing apparatus, or other device to perform the functions / actions specified in one or more boxes of a flowchart and / or block diagram.
[0070] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of an instruction containing one or more executable instructions for implementing a specified logical function. In some alternative implementations, the functions marked in the blocks may occur in a different order than those shown in the drawings. For example, two consecutive 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 action, or using a combination of dedicated hardware and computer instructions.
[0071] The above description is merely a preferred embodiment of this disclosure and is not intended to limit this disclosure. Any modifications or equivalent substitutions made within the spirit and principles of this disclosure should be included within the scope of protection of this disclosure.
Claims
1. A satellite attitude control method, characterized in that, include: Obtain the current quaternion of the satellite's current attitude and the expected quaternion of the desired attitude; The target rotation angle value of the satellite around the space rotation axis is determined based on the current quaternion and the expected quaternion. Based on the target rotation angle value and the satellite's maximum calibrated angular velocity and maximum calibrated angular acceleration value, predict the desired attitude quaternion that changes over time; The satellite is maneuvered based on the desired attitude quaternion that changes over time, so that the satellite can achieve the desired attitude.
2. The method according to claim 1, characterized in that, The step of predicting the desired attitude quaternion over time based on the target rotation angle value and the satellite's maximum calibrated angular velocity and maximum calibrated angular acceleration values includes: Based on the target rotation angle value, the maximum calibrated angular velocity value, and the maximum calibrated angular acceleration value of the satellite, determine the angle variation function of the space rotation axis over time; Based on the angle change function, determine the rotational attitude change function of the rotational attitude quaternion as a function of time; Based on the rotational attitude change function and the current pose, predict the desired attitude quaternion that changes over time.
3. The method according to claim 2, characterized in that, The step of determining the angle variation function of the space rotation axis over time based on the target rotation angle value, the satellite's maximum calibrated angular velocity value, and the maximum calibrated angular acceleration value includes: Based on the target rotation angle value, the maximum calibrated angular velocity value, and the maximum calibrated angular acceleration value of the satellite, determine the angular velocity variation function of the space rotation axis over time; Based on the angular velocity change function, the angular velocity of the spatial rotation axis as a function of time is determined by utilizing the mapping relationship between the angular velocity and angle of the spatial axis.
4. The method according to claim 3, characterized in that, The step of determining the angular velocity variation function of the space rotation axis over time based on the target rotation angle value, the satellite's maximum calibrated angular velocity value, and the maximum calibrated angular acceleration value includes: Based on the target rotation angle value, the maximum calibrated angular velocity value, and the maximum calibrated angular acceleration value of the satellite, the maneuver type is determined, and the stage division method of angular velocity change matching the maneuver type is obtained; Obtain the angular velocity change function of the spatial rotation axis over time, which matches the stage division method.
5. The method according to claim 4, characterized in that, The step of determining the maneuver type based on the target rotation angle value, the satellite's maximum calibrated angular velocity value, and maximum calibrated angular acceleration value, and obtaining a phase division method for angular velocity changes matching the maneuver type, includes: Calculate the square of the maximum calibrated angular velocity value, and calculate the ratio of the squared value to the maximum calibrated angular acceleration value; When the difference between the target rotation angle value and the ratio is greater than 0, it is determined to be a large-angle maneuver type, and a first-stage division method of angular velocity change matching the large-angle maneuver type is obtained; the first-stage division method includes an acceleration stage, a constant speed stage, and a deceleration stage; When the difference between the target rotation angle value and the ratio is less than or equal to 0, it is determined to be a small-angle maneuver type, and a second stage division method for angular velocity change matching the small-angle maneuver type is obtained; the second stage division method includes an acceleration stage and a deceleration stage.
6. The method according to claim 5, characterized in that, The step of obtaining the angular velocity change function of the spatial rotation axis over time, which matches the stage division method, includes: For the first stage division method, the angular velocity change function of the spatial rotation axis over time includes a first angular velocity change sub-function corresponding to the first time period, a second angular velocity change sub-function corresponding to the second time period, a third angular velocity change sub-function corresponding to the third time period, and a fourth angular velocity change sub-function corresponding to the fourth time period; the first time period is the duration of the acceleration stage, the second time period is the duration of the uniform speed stage, the third time period is the duration of the deceleration stage, and the fourth time period is the duration of the angular velocity decreasing to 0 and remaining there; For the second stage division method, the angular velocity change function of the matching spatial rotation axis over time includes the fifth angular velocity change sub-function corresponding to the fifth time period, the sixth angular velocity change sub-function corresponding to the sixth time period, and the seventh angular velocity change sub-function corresponding to the seventh time period; the fifth time period is the duration of the acceleration stage, the sixth time period is the duration of the deceleration stage, and the sixth time period is the duration of the angular velocity decreasing to 0 and remaining there.
7. The method according to any one of claims 1-6, characterized in that, The method further includes: During the process of maneuvering the satellite based on the desired attitude quaternion, the real-time quaternion of the satellite's real-time measured attitude is obtained. Determine the attitude deviation between the real-time quaternion of the real-time measured attitude and the expected quaternion of the desired attitude; When the attitude deviation is less than a first deviation threshold and greater than a second deviation threshold, the parameter value of the proportional controller in the proportional-integral-derivative controller used for feedback closed-loop control of the satellite is increased. When the attitude deviation is less than the second deviation threshold and the rate of change of the attitude deviation is less than the rate of change threshold, the parameter values of the proportional-integral-derivative controller of the satellite are kept unchanged.
8. The method according to claim 7, characterized in that, The increase in the parameter value of the proportional controller in the proportional-integral-derivative controller used for feedback closed-loop control of the satellite includes: The parameter value of the proportional controller in the proportional-integral-derivative controller used for feedback closed-loop control of the satellite is increased to four times the original parameter value of the proportional controller.
9. An electronic device, characterized in that, include: At least one processor; as well as A memory communicatively connected to the at least one processor; wherein, The memory stores at least one computer program that can be executed by the at least one processor, the at least one computer program being executed by the at least one processor to enable the at least one processor to perform the satellite attitude control method as described in any one of claims 1-8.
10. A computer program product, characterized in that, The computer program product includes a computer program that, when run in a processor, implements the satellite attitude control method according to any one of claims 1-8.