ATTITUDE DETERMINATION AND CONTROL SYSTEM AND METHOD THEREOF
20220388693 · 2022-12-08
Assignee
Inventors
- Po-Hsun YEN (Chiayi City, TW)
- Shang-Jung LEE (Chiayi City, TW)
- Yung-Cheng CHANG (Chiayi City, TW)
- Sung-Liang HOU (Chiayi City, TW)
Cpc classification
B64G1/36
PERFORMING OPERATIONS; TRANSPORTING
B64G1/286
PERFORMING OPERATIONS; TRANSPORTING
B64G1/38
PERFORMING OPERATIONS; TRANSPORTING
International classification
Abstract
This patent presents an attitude determination and control system based on a Quaternion Kalman Filter (QKF) with an extendable number of sensors and actuators. Furthermore, it is compatible with the spherical motor as its attitude actuator. The system includes a processor with a QKF, at least one direct attitude actuator, and at least two environmental sensors. Firstly, system dynamics calculates a first propagation attitude determination result. Next, update the first propagation with the attitude sensor measurements. Then, control the satellite's attitude via the attitude actuator closer to the attitude command provided by the user. The proposed system dynamic model could adjust the number of actuators and sensors freely without reprogramming the algorithms for new missions with new configurations on the actuators and sensors. Moreover, if some components fail, the algorithm can automatically remove those related sequences to avoid the overall failure of the system.
Claims
1. An attitude determination and control system for controlling an attitude of a satellite, including: a controller for receiving an attitude command from a user to generate a torque-input command for an attitude actuator and sending a torque-control command to the attitude actuator; the attitude actuator for receiving the torque-control command and outputting a torque to change the attitude of the satellite, wherein the attitude actuator measures the output torque via sensors, and wherein the attitude actuator includes at least one indirect attitude actuator, and wherein the at least one indirect attitude actuator includes a spherical motor; 1.sup.st to N.sup.th environmental sensors for measuring 1.sup.st to M.sup.th targets to simultaneously obtain 1.sup.st to N.sup.th measured values of the 1 to N environmental sensors at time t, wherein both N and M are integers greater than or equal to 2, and M is a positive integer less than or equal to N; and a processor having a Quaternion Kalman Filter (QKF), wherein the processor connects to the controller, the attitude actuator, and the 1.sup.st to the N.sup.th environmental sensors, wherein the processor is configured to obtain a first propagation result at time t by performing a calculation according to at least one of the torque-input command from the controller and the measured output torque, obtain a second propagation result by performing a calculation according to the 1.sup.st to the N.sup.th measured values measured at time t and then updating the first propagation result, and repeat the steps of obtaining the first propagation result and the second propagation result at time t+1, and updating the first propagation result at time t+1, wherein the steps of obtaining the first propagation result, updating the first propagation result, and obtaining the second propagation result are repeated no more than N times, wherein the processor is configured to detect and remove the measurement values of sensors that are not functioning properly so that the number of updating the first propagation result and obtaining the second propagation result is reduced to less than N times.
2. The attitude determination and control system according to claim 1, further comprising at least one of an inertia measurement unit and an attitude measurement unit, wherein the inertia measurement unit is for measuring an inertia status, and the attitude measurement unit is for directly measuring the attitude to obtain attitude information; wherein in a condition that the satellite attitude control system includes the inertia measurement unit, the processor further connects to the inertia measurement unit, and the processor is configured to obtain the first propagation result by performing a calculation according to either one or both of the torque-input command from the controller and the measured output torque, and the inertia information; wherein in a condition that the attitude control system includes the attitude measurement unit, the processor further connects to the attitude measurement unit, and the processor is configured to obtain the first propagation result by performing a calculation according to either one or both of the torque-input command from the controller and the measured of output torque, and the attitude information.
3. An attitude determination and control method for determining an attitude of a satellite, including: a propagate stage including: obtaining a first propagation result at time t, by using a processor having a Quaternion Kalman Filter (QKF), to perform a calculation according to at least one of a torque-input command from a controller and a measured output torque on an attitude actuator, wherein the attitude actuator comprises at least one indirect attitude actuator, and wherein the at least one indirect attitude actuator includes a spherical motor; and an update stage including: using 1.sup.st to N.sup.th environmental sensors to simultaneously measure 1.sup.st to M.sup.th targets at time t to obtain 1.sup.st to N.sup.th measured values, wherein both N and M are integers greater than or equal to 2, and M is a positive integer less than or equal to N; obtaining a second propagation result by using the processor to perform a calculation according to the 1.sup.st to the N.sup.th measured values measured at time t, and then to update the first propagation result; and repeating the steps of obtaining the first propagation result, updating the first propagation result, and obtaining the second propagation result at time t+1, wherein the steps of obtaining the first propagation result and the second propagation result and updating the first propagation result are repeated no more than N times, wherein the processor is configured to detect and remove the measurement values of sensors that are not functioning properly so that the number of updating the first propagation result and obtaining the second propagation result is reduced to less than N times.
4. The attitude determination and control method according to claim 3, wherein the propagate stage further includes at least one step of measuring inertia of the satellite to obtain inertia information by using an inertia measurement unit and measuring the attitude of the satellite to obtain an attitude information by using an attitude measurement unit; wherein in a condition that the propagate stage further includes a step of measuring the inertia of the satellite to obtain the inertia information by using the inertia measurement unit, the processor is for obtaining the first propagation result by performing a calculation according to either one or both of the torque-input command from the controller, and the measured output torque, and the inertia information; wherein in a condition that the propagate stage further includes a step of measuring the attitude of the satellite to obtain the attitude information by using the attitude measurement unit, the processor is for obtaining the first propagation result by performing a calculation according to either one or both of the torque-input command from the controller and the measured output torque, and the attitude information.
5. An attitude determination and control method for controlling an attitude of a satellite, including: a propagate stage including: receiving an attitude command from a user; and obtaining a first propagation result at time t, by using a processor having a Quaternion Kalman Filter (QKF), to perform a calculation according to at least one of torque-input command from a controller and a measured output torque of an attitude actuator measured by a torque sensor, wherein the attitude actuator includes at least one indirect attitude actuator, and wherein the at least one indirect attitude actuator includes a spherical motor; an update stage including: using 1.sup.st to N.sup.th environmental sensors to simultaneously measure 1.sup.st to M.sup.th targets at time t and to obtain 1.sup.st to N.sup.th measured values, wherein both N and M are integers greater than or equal to 2, and M is a positive integer less than or equal to N; obtaining a second propagation result by using the processor to perform a calculation according to the 1.sup.st to the N.sup.th measured values measured at time t, and then to update the first propagation result; and repeating the steps of obtaining the first propagation result, updating the first propagation result, and obtaining the second propagation result at time t+1, wherein the steps of obtaining the first propagation result and the second propagation result and updating the first propagation result are repeated no more than N times, wherein the processor is configured to detect and remove the measurement values of sensors that are not functioning properly so that the number of updating the first propagation result and obtaining the second propagation result is reduced to less than N times; and a control stage including: obtaining a torque-control command by using the processor to perform a calculation for compensation purposes according to the attitude command and the second propagation result; and altering the satellite's attitude using the attitude actuator to output a torque to the satellite according to the torque-control command.
6. The satellite attitude determination and control method according to claim 5, wherein the propagate stage further includes at least one of measuring inertia of the satellite to obtain inertia information by using an inertia measurement unit, and measuring the attitude of the satellite to obtain attitude information by using an attitude measurement unit; wherein in a condition that the propagate stage further includes a step of measuring the inertia of the satellite to obtain the inertia information by using the inertia measurement unit, wherein the processor is configured to obtain the first propagation result by performing a calculation according to one or both of the torque-input command from the controller and the measured output torque, and the inertia information; wherein in a condition that the propagate stage further includes a step of measuring the attitude of the satellite to obtain the attitude information by using the attitude measurement unit, the processor is configured to obtain the first propagation result by performing a calculation according to one or both of the torque-input command from the controller and the measured value of output torque, and the attitude information.
7. The attitude control determination and control system according to claim 1, wherein the attitude actuator further includes at least one direct attitude actuator.
8. The attitude determination and control system according to claim 2, wherein the attitude actuator further includes at least one direct attitude actuator.
9. The attitude determination and control method according to claim 3, wherein the attitude actuator further includes at least one direct attitude actuator.
10. The attitude determination and control method according to claim 4, wherein the attitude actuator further includes at least one direct attitude actuator.
11. The attitude determination and control method according to claim 5, wherein the attitude actuator further includes at least one direct attitude actuator.
12. The attitude determination and control method according to claim 6, wherein the attitude actuator further includes at least one direct attitude actuator.
13. The attitude determination and control system according to claim 1, wherein the controller of the control system has at least three control modes: a de-tumbling mode, a de-saturation mode, and a fine-pointing mode.
14. The attitude determination and control system according to claim 2, wherein the controller of the control system has at least three control modes: a de-tumbling mode, a de-saturation mode, and a fine-pointing mode.
15. The attitude determination and control method according to claim 3, wherein the indirect attitude actuator further includes at least one or more of the single-gimbal control moment gyro, the dual-gimbal control moment gyro, and the reaction wheel, and wherein the controller of the control system has at least three control modes: a de-tumbling mode, a de-saturation mode, and a fine-pointing mode.
16. The attitude determination and control method according to claim 4, wherein the indirect attitude actuator further includes at least one or more of the single-gimbal control moment gyro, the dual-gimbal control moment gyro, and the reaction wheel, and wherein the controller of the control system has at least three control modes: a de-tumbling mode, a de-saturation mode, and a fine-pointing mode.
17. The attitude determination and control method according to claim 5, wherein the indirect attitude actuator further includes at least one or more of the single-gimbal control moment gyro, the dual-gimbal control moment gyro, and the reaction wheel, and wherein the controller of the control system has at least three control modes: a de-tumbling mode, a de-saturation mode, and a fine-pointing mode.
18. The attitude determination and control method according to claim 6, wherein the indirect attitude actuator further includes at least one or more of the single-gimbal control moment gyro, the dual-gimbal control moment gyro, and the reaction wheel, and wherein the controller of the control system has at least three control modes: a de-tumbling mode, a de-saturation mode, and a fine-pointing mode.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0026] The present disclosure will become more fully understood from the following detailed description and accompanying drawings.
[0027]
[0028]
[0029]
[0030]
[0031]
[0032]
[0033]
[0034]
[0035]
[0036]
[0037]
[0038]
[0039]
[0040]
[0041]
[0042]
DETAILED DESCRIPTION
[0043] In the following paragraphs, embodiments are provided for describing the implementations of the satellite attitude control system according to the present disclosure, and the same elements are indicated by the same or similar reference numbers.
[0044] It should be noted that the directional indications (such as front, rear, left, right, above, under, clockwise, counterclockwise, etc.) in the embodiments are only used to describe the relative positions or movements, etc. of multiple components under specific circumstances (such as those shown in the drawings). When the circumstances are changed, the directional indications may be changed accordingly.
[0045] Descriptions for the embodiments are accompanied by drawings incorporated as parts of the specification for describing the embodiments of the present disclosure, but the present disclosure is not limited to the embodiments. Moreover, the following embodiments may be appropriately modified or integrated to achieve another embodiment.
[0046] In the following paragraphs, the terms “one embodiment,” “one practical embodiment,” “a preferred embodiment,” “the other embodiment,” “another embodiment,” or any descriptions which are related to the “embodiment” or the “implementation” are provided for describing the feature, the structure, or the property that may be included in the described embodiment; it should be noted that other embodiments do not necessarily include the feature, the structure, or the property. Moreover, using the terms “in this embodiment,” “in some embodiments,” or the like does not limit the described embodiments to be the same embodiment. It may refer to different embodiments.
[0047] The conventional QKF cannot adjust its number of environmental sensors and actuators without reprogramming its software or firmware.
[0048] According to the present disclosure, a technical feature is applying the QKF on the attitude control system. It could be applied on a satellite, an underwater vehicle, a drone, etc. Detail operations of the QKF may be referred to D. Choukroun, L. Y. Bar-Itzhack, and Y. Oshman. (2005) Novel Quaternion Kalman Filter. Published on IEEE Transactions on Aerospace and Electronic Systems Vol. 42, No. 1 (abbreviated as “Reference 1”). In the present disclosure, the algorithm built in the satellite attitude control system is improved, thereby completing the system's architecture being expandable to have several environmental sensors. The Kalman filter is a high-efficiency recursive filter (autoregressive filter). The Kalman filter uses a series of measurements containing random errors or system errors, produces estimates of the state of a dynamic system. Moreover, specifically, in one or some embodiments, the algorithm built in the satellite attitude control system includes three parts: initialize (hereinafter, “Part A”), propagate (hereinafter, “Part B”), and update (hereinafter, “Part C”).
[0049] In the Kalman filter model, supposed that the true state at time k is evolved from the state at time k−1 according to the equation x.sub.k=F.sub.kx.sub.k−1+B.sub.ku.sub.k+w.sub.k, where F.sub.k is the state transition model (/matrix/vector), which is applied to the previous state x.sub.k−1, B.sub.k is the control-input model which is applied to the control vector u.sub.k, and w.sub.k is the process noise.
[0050] For the sake of convenience in describing the initial state, the equation is rewritten by taking k=0 as the initial state; namely, it is supposed that the true state at time k+1 is evolved from the state at time k. Therefore, the rewritten equation is x.sub.k+1=F.sub.k+1x.sub.k+B.sub.k+1u.sub.k+1+w.sub.k+1. For the sake of convenience in describing some of the embodiments of the present disclosure, upon applying the Kalman filter to the satellite attitude, the following parameters have to be defined in advance. [0051] (1) “P.sub.k/k” is the estimation error covariance matrix, and “P.sub.0/0” is the Initial estimation error covariance matrix; [0052] (2) “{circumflex over (q)}.sub.k/k.sup.T” is the attitude quaternion, and “{circumflex over (q)}.sub.0/0.sup.T” is the initial attitude quaternion; [0053] (3) “{circumflex over (μ)}.sub.k/k.sup.T” is the drift estimations, and “{circumflex over (μ)}.sub.0/0.sup.T” is the initial drift estimations; [0054] (4) “{circumflex over (x)}.sub.k/k.sup.T” is the state space, and “{circumflex over (x)}.sub.0/0.sup.T” is the initial state space.
[0055] The calculation processes of Part A, Part B, and Part C are described in order.
[0056] [Part A—Initialize]
[0057] Firstly, in some embodiments, the relationship between the attitude quaternion (namely, q.sub.k/k) of the satellite and the time k and the relationship among the state space ({circumflex over (x)}.sub.k/k.sup.T) of the satellite, the attitude quaternion ({circumflex over (q)}.sub.k/k.sup.T) of the satellite, and the drift estimations ({circumflex over (μ)}.sub.k/k.sup.T) at time k can be presented by following Eq. A-1 and Eq. A-2:
[0058] In the present disclosure, at least two environmental sensors and a Triad Method are applied to set the initial attitude of the satellite, and the attitude is inputted into the QKF as the state space at time k=0 and the error covariance matrix at time k=0, whose equations are presented as below:
[0059] Next, using Eq. A-1′ to set the initial attitude quaternion ({circumflex over (q)}.sub.0/0.sup.T) and using Eq. A-2′ to set the initial state space ({circumflex over (x)}.sub.0/0.sup.T) and then inputting these parameters into the QKF to complete Part A (Initialize).
[0060] According to the rewritten equations, in the algorithm of the present disclosure, Part A (Initialize) will be used only in the first iteration (that is, “k=0”). After Part A (Initialize) is completed, several cycles, including Part B (Propagate) and Part C (Update) (hereinafter, “propagate and update cycles”), are performed, according to the command rate (CMD Rate) of the analog-to-digital converters (ADC). Theoretically, the algorithm provided by the present disclosure can support infinite environmental sensors, namely, infinite times of updates (the Part C cycles).
[0061] However, it should be noted that, based on the number of the environmental sensors which are installed and participated in the tasks of the satellite attitude control system actually, “one” propagate and update cycle may include one propagate and one update, or one propagate and two updates, or one propagate and three updates, or the like. Specifically, in the case that the satellite attitude control system has N environmental sensors which are installed and participate in the tasks of the satellite attitude control system (where both N and M are integers greater than or equal to 2) actually, then the “one” propagate and update cycle includes one propagate and N updates.
[0062] [Part B—Propagate]
[0063] Before discussing the Part B (Propagate) of the embodiments of the present disclosure, the dynamic equations and the predecessor works of the satellite system of the embodiments of the present disclosure are described in advance. That is, obtaining the satellite angular acceleration (a.sub.k) of Eq. B-1 and Eq. B-2; the satellite angular acceleration may be presented by the first derivative of the satellite angular velocity () After the first derivative of the satellite angular velocity (
) is obtained, the propagate of the Kalman filter is performed.
[0064] In the satellite control system, a governing equation is applied to calculate and express the relationship between the angular momentum and the torque. As Eq. B0-1 shows, in this embodiment, the governing equation considers the direct actuator, the indirect actuator, and the disturbance torque. Moreover, it should be noted that Eq. B0-1′, Eq. B0-1″, and Eq. B0-1 are substantially the same. The shifts of the items are the equations is for the sake of convenience in describing and expressing the conservation law for angular momentum in the embodiments of the present disclosure.
[0065] Where the parameters in Eq. B0-1 are explained as below: [0066] (1) in Eq. B0-1, H is the angular momentum, τ is the torque, and {dot over (H)} represents the first-order derivative function by differentiating the angular momentum with time; [0067] (2) in Eq. B0-1, the first item on the right side (namely,
represents the torque outputted by the “direct” actuator; [0068] (3) in Eq. B0-1, the second item on the left side, represents the outputted torque of the “indirect” actuator in which the torque output is achieved by manipulating the tilting angle, the rotational speed, and the acceleration/de-acceleration of the rotor; [0069] (4) is the first derivative of the angular momentum with respect to time, as shown in Eq. B0-1′,
also represents the total torque generated by the direct actuator, the indirect actuator, and the disturbance torque to the satellite; [0070] (5) τ.sub.disturbance represents environmental disturbances that exist in space and exert torques on the satellite. Specifically, τ.sub.disturbance includes the solar radiation pressure torque, the gravity-gradient torque, the magnetic dipole moment torque, the aerodynamic torque, and so forth. However, in most conditions, these disturbances are relatively small compared to the actuators' output torque and cannot be estimated easily. Therefore, according to embodiments of the present disclosure, in the Part B0, the Kalman filter presets the value of the environmental disturbance to be zero (namely, τ.sub.disturbance is set to be 0) for the convenience in the calculation of Eq. B0-6. However, the impacts of these environmental disturbances on the satellite system dynamics are still considered by the QKF in process noise. Hence, the impacts of the environmental disturbances on the satellite system dynamics can be considered in the parameter setting stage of the attitude control system.
[0071] Eq. B0-4 and Eq. B0-5 are results develop from some items in Eq. B0-1. The development method may be referred to GEORGE W. HOUSNER, DONALD E. HUDSON. (1991) Applied Mechanics Dynamics (abbreviated as Reference 2), p 202-p 203, Section 7.8 “The General Equations of Motion for a Rigid Body.” In the embodiment of the present disclosure, the model describes the system dynamics of any indirect actuator, including a spherical motor (e.g., a motor disclosed in Taiwan Invention Patent (Patent Number I719585) “Motor and driving method thereof”), a single-gimbal control moment gyro, a dual-gimbal control moment gyro, a reaction wheel, etc. Moreover, the product of inertia (POI) of the rotor and the satellite itself is fully considered in the system model.
[0072] In the following embodiments of the present disclosure, the satellite attitude control system can, by measuring, inferring, and calculating, directly or indirectly obtain the rotational speed of the rotor to ω.sub.rotor(α), the angular acceleration of the rotor , the inertia tensor of the rotor I.sub.rotor(a), the angular velocity of the satellite ω.sub.satellite, and the inertia tensor of the satellite I.sub.satellite. Therefore, from the foregoing equations, to
can be derived as following Eq. B0-6.
[0073] According to Eq. B0-1 to Eq. B0-5, the satellite attitude control system of the embodiment of the present disclosure, is expandable to have any number of direct attitude actuators and indirect actuators freely. Moreover, although the indirect actuators may have several implementations, these indirect actuators are all based on the conservation law of angular momentum, as indicated by Eq. B0-1. Hence, the indirect actuators in different implementations are all suitable for being applied in the satellite attitude control system of the present disclosure.
[0074] After the first derivative of the satellite angular velocity with respect to time, to is obtained. Then, the propagation procedure of the Kalman filter is performed. The relationships among the delta angle estimation (θ.sub.k), the triaxial angular velocity (ω.sub.k), the angular acceleration (α.sub.k), and the change of the time (Δt) can be presented by following Eq. B-1:
θ.sub.k=ω.sub.k*Δt+0.5*α.sub.k*Δt.sup.2 (Eq. B-1)
[0075] Where the angular acceleration of the satellite at time k (α.sub.k) is the result of Eq. B0-6:
α.sub.k= (Eq. B-2)
[0076] Next, with the consideration of the satellite drift, the following Eq. B-3 is used to correct the delta angle estimation θ.sub.k to obtain the delta angle estimation after drift correction (hereinafter, the “corrected delta angle estimation ()”)
=θ.sub.k−{circumflex over (μ)}.sub.k/k*Δt (Eq. B-3)
[0077] Then, the corrected delta angle estimation () is introduced into Eq. B-4 to Eq. B-6 for the calculation to obtain a propagated state space at time k+1 ({circumflex over (x)}.sub.k+1/k), the {circumflex over (x)}.sub.k+1/k is also “the first attitude propagation result” in any of the following embodiments. The “γ” represents the γ function. Detailed contents of the γ function can be referred to page 176 of Reference 1.
=γ(
) (Eq. B-4)
=exp(0.5*
) (Eq. B-5)
{circumflex over (x)}.sub.k+1/k=.sub.I.sup.0*{circumflex over (x)}.sub.k/k (Eq. B-6)
[0078] Then, to correct the error covariance matrix, the aforementioned corrected delta angle estimation () is introduced into following Eq. B-7 to Eq. B-13 for the calculation to obtain corrected error covariance matrix (
).
[0079] Where is obtained from the first four items of the state space {circumflex over (x)}.sub.k/k, and P.sub.k/k.sup.q is obtained from the number of the upper-left 4×4 portion of the error covariance matrix P.sub.k/k. Where σ.sub.1 is the standard deviation of electronic noise, σ.sub.2 is the standard deviation of float torque noise, σ.sub.3 is the standard deviation of the output drift rate, and “E” represents the E function. Detail contents could be found in Reference 1. When the delta angle estimation after drift correction and the error covariance matrix after drift correction is obtained, Part B (Propagate) is completed, and Part C (Update) can then be executed.
[0080] [Part C—Update]
[0081] After the foregoing Part A (Initialize) and Part B (Propagate) are executed, the state space {circumflex over (x)}.sub.k+1/k=[.sup.T,
.sup.T] and the environment sensing vector pair [b.sub.k+1.sup.i, r.sub.k+1.sup.i] at time k+1 can be obtained. As mentioned above, the satellite attitude control system has N environmental sensors which are installed and participate in the update stage (where both N and M are integers greater than or equal to 2). “i” here stands for the designated number of the environmental sensor, which is a number ranging from 0 to N (where both N and M are integers greater than or equal to 2). It is understood that “N” not only represents the number of environmental sensors on the satellite but also represents the times of “update” in the algorithm.
[0082] In Part C (Update), the characteristics of the quaternion are utilized to obtain an H function, and when the H function multiplies a quaternion which can correctly map b.sub.k+1.sup.i to r.sub.k+1.sup.i, the product of the H function and the quaternion equal 0.
[0083] Next, the Kalman Gain is calculated by introducing the H function and values at k+1 obtained in Part B (Propagate), which include the state space {circumflex over (x)}.sub.k+1/k, the error covariance matrix P.sub.k+1/k, the environment sensing vector pair [b.sub.k+1.sup.i, r.sub.k+1.sup.i] (where b.sub.k+1.sup.i is the measured value of the environmental sensor) into following Eq. C-05 to Eq. C-09. Wherein P.sub.k+1/k.sup.q is obtained from the number of the upper-left 4×4 portion of the error covariance matrix P.sub.k+1/k, and the error covariance matrix is defined by the error covariance matrix model for updating the measured value from page 179 of Reference 1: R.sub.k+1=ρ.sub.k+1(I.sub.3−b.sub.k+1b.sub.k+1.sup.T).
[0084] Lastly, Eq. C-10 and Eq. C-11 are applied to “update” the system state and the error covariance matrix.
[0085] For the sake of convenience in describing embodiments of the present disclosure, correlations between the parameter symbols in the foregoing equations and the terms in the following embodiments are presented as the table below:
TABLE-US-00001 Parameter symbol Terms in the following embodiments k A particular time step that the controller received attitude command from the user and commanded the attitude actuator. k + 1 The time step that follows right after the time step k τ.sub.k “Measured output torque” or “torque-control command” {circumflex over (x)}.sub.k+1/k First propagation result b.sub.k+1.sup.i The measured value of the environmental sensor N The satellite attitude control system has N environmental sensors which are installed and participated in the tasks of the satellite attitude control system i An integer ranging from 0 to N representing the designated number of certain environmental attitude sensors Second propagation result
[0086] In the following paragraphs, practical embodiments of the present disclosure are described.
First Practical Embodiment
[0087] Please refer to
[0088] In this embodiment, the satellite could be, but not limited to, a satellite or an underwater vehicle. The satellite attitude control system is applied to a satellite as an illustrative example in the following embodiments. The satellite attitude control system is applied to execute (1) determine the attitude of the satellite at time t, and (2) controlling and adjusting the attitude of the satellite closer to the commanded attitude at time t+1. The attitude command can be represented by quaternions or the like.
[0089] As shown in
[0090] In this embodiment, to obtain the satellite's attitude, processor 4 calculates at least one input from environmental sensors that obtains measured value in the satellite body reference frame. The ideal measured value for the same environmental referencing object in the inertia frame can further be calculated via ephemeris or any celestial model. By comparing these two pieces of information, a correction for the first propagation result could be made.
[0091] As compared with the known arts, it is worth noting that, in the embodiments of the present disclosure, an algorithm capable of performing calculation or data processing to two measured values (e.g., the position of the sun and the position of the earth) obtained by at least sequentially or simultaneously measuring “two ‘different’ targets with two environmental sensors” is built in the processor 4 of the satellite attitude control system. Therefore, when processor 4 of the satellite attitude control system is connected to two environmental sensors, processor 4 is connected to two different types of environmental sensors (e.g., the sun sensor and the magnetometer) to measure two “different” targets (for example, but not limited to the sun and the earth magnet field).
[0092] Here, the calculation for the number of the environmental sensors is neither based on the number of the devices nor based on the maximum number of the environmental sensors that can be disassembled or divided without damage, and it is not calculated based on the types of the environmental sensor. Instead, the number of the environmental sensors is calculated based on the number of the smallest units that can individually and effectively measure the target. For example, the satellite attitude control system, according to embodiments of the present disclosure, may use five sun sensors to measure the position of the sun (the first target) and one earth magnetic sensor to measure the position of the earth (the second target) at the same time.
[0093] Here, the number of the environmental sensors is calculated based on the number of different effective measurements of one environmental sensor in the propagate stage S1 and the update stage S2. For example, when one environmental sensor can sequentially or simultaneously perform measurements to the sun and the magnetic field of the earth, since the environmental sensor in the satellite attitude determination method performs effective measurements for the two different targets (the position of the sun and the magnetic field of the earth) sequentially or simultaneously, it is considered that two environmental sensors are applied in this scenario.
[0094] Moreover, as shown in
[0095] In this embodiment, the satellite attitude control system has at least two functions capable of obtaining a second propagation result, but not limited to. The satellite attitude control system may have the following options: (1) obtaining a first propagation result by performing a calculation according to at least one selected from the group consisting of the torque-input command in the very last time step, and obtaining a second propagation result by performing a calculation according to the 1.sup.st to the N.sup.th measured value and updating the first propagation result; or (2) obtaining a first propagation result by performing a calculation according to the measured value of the torque output, and obtaining a second propagation result by performing a calculation according to the 1.sup.st to the N.sup.th measured value and updating the first propagation result.
[0096] In some embodiments, the attitude actuator 2 is a direct attitude actuator 2, for example, a magnetorquer or a thruster.
[0097] In some preferred embodiments, the attitude actuator 2 further includes at least one direct attitude actuator and at least one indirect attitude actuator. The indirect attitude actuator may include but not be limited to a spherical motor (e.g., a motor disclosed in Taiwan Invention Patent (Patent Number I719585) “Motor and driving method thereof”), a single-gimbal control moment gyro, a dual-gimbal control moment gyro, a reaction wheel, etc. From the angular momentum formula “L=Iω”, where I is the moment of inertia (unit: kg.Math.m.sup.2) and ω is the angular velocity (rad/s), it is understood that the higher rotational speed the indirect attitude actuator 2 has, the higher angular momentum (unit: kg.Math.m.sup.2/s, which is represented as ‘L”) the indirect attitude actuator 2 has.
[0098] From the torque formula
it is understood that to generate the “torque (unit: N.Math.m, which is represented as “τ”)” by using a spherical motor, the spherical motor needs to have the “angular acceleration (unit: rad/s.sup.2, which is represented as “α”).” However, it should be noted that the spherical motor has limits on the rotational speed, and the spherical motor cannot be accelerated anymore when it hits its maximum rotational speed. As a result, when the motor reaches the rotational speed limit, namely, the limit for storing angular momentum, the spherical motor automatically enters into the De-saturation mode, in which a direct attitude actuator is applied to generate a reverse torque whose direction is opposite to the direction of the torque generated by the indirect attitude actuator while deacceleration. This reverse torque is applied to compensate with the torque produce by the spherical motor while deacceleration, thereby achieving the purpose of the De-saturation for the satellite.
[0099] Accordingly, the attitude actuator 2 in the satellite attitude control system can be solely the direct attitude actuator 2 but cannot be the indirect attitude actuator 2.
Second Practical Embodiment
[0100] Please refer to
Third Practical Embodiment
[0101]
[0102] [Satellite Attitude Determination and Control Method]
[0103] The fourth to the tenth practical embodiments (satellite attitude determination methods E21-E26) as well as the eleventh practical embodiment (satellite attitude control method E31) are provided to elaborate the determination and control method for satellite attitude implemented by the foregoing satellite attitude control system of the embodiment of the present disclosure. Before explaining the fourth to the tenth practical embodiments (satellite attitude determination methods E21-E26) as well as the eleventh practical embodiment (satellite attitude control method E31), the major differences between the practical embodiments are described as below.
[0104] First, the following terminologies are defined (please also refer to the foregoing formulas or Eq. A0-1 to Eq. C-11 and related descriptions thereof) [0105] (1) The inertia information may be, but not limited to the rotational speed of the rotor ω.sub.rotor(α), the angular acceleration of the rotor , the inertia tensor of the rotor I.sub.rotor(a), the angular velocity of the satellite ω.sub.satellite, the angular acceleration of the satellite
, or the inertia tensor of the satellite I.sub.satellite. [0106] (2) τ.sub.k stands for the torque-input command from the controller in the very last time step or the measured output torque. In brief, the torque-input command is a digital signal provided by the user or the calculation of a computer, without measurement, and the measured output torque is done by a sensor. [0107] (3) The attitude information may be, but is not limited to, the attitude of the satellite. [0108] (4) The first propagation result may be, but is not limited to, {circumflex over (x)}.sub.k+1/k. [0109] (5) The second propagation result may be, but is not limited to,
.
[0110]
[0111] From
[0112] The difference between the second type and the first type is that the second type of the satellite attitude determination methods E23 to E26, as compared with the first type of the satellite attitude determination methods E21 and E22, further includes “measuring the inertia of the satellite to obtain an inertia information by using an inertia measurement unit 5” (step S12a) or “measuring the attitude of the satellite to obtain an attitude information by using an attitude measurement unit 6” (step S12b).
[0113] As mentioned above, the second type of satellite attitude determination method includes the satellite attitude determination methods E23 to E26. The difference between these satellite attitude determination methods E23 to E26 is that, in the propagate stage, according to which “parameters,” the processor 4 having the QKF 41 performs the calculation to obtain the first propagation result (step S15). The “parameters” may be: [0114] (1) “a torque-input command from a controller 1 in the very last time step,” and the “inertia information” (e.g., step S13c); or [0115] (2) “a measured output torque by a torque sensor on attitude actuator 2,” and the “inertia information” (e.g., step S13d); or [0116] (3) “a torque-input command from a controller 1 in the very last time step,” and the “attitude information” (e.g., step S13e); or [0117] (4) “a measured output torque obtained by measuring an attitude actuator 2 with a torque sensor,” and the “attitude information” (e.g., step S13f); or [0118] (5) the “torque-input command from controller 1 in the very last time step,” the “measured output torque by a torque sensor on attitude actuator 2,” the “inertia information,” and the “attitude information” (e.g., step S13g).
[0119] The implementations of the “propagate stage S1” in the satellite attitude determination methods E21-E26 are sequentially described by the fourth practical embodiment to the ninth practical embodiment.
Fourth Practical Embodiment
[0120]
Fifth Practical Embodiment
[0124]
[0128]
Sixth Practical Embodiment
[0133]
Seventh Practical Embodiment
[0138]
Eighth Practical Embodiment
[0143]
Ninth Practical Embodiment
[0148]
Tenth Practical Embodiment
[0153]
Eleventh Practical Embodiment
[0158]
Twelfth Practical Embodiment
[0162] Please refer to
[0165] In brief, the satellite attitude control method E31 described in the foregoing paragraphs may be generally called “the satellite fine pointing mode.” With the control-logic in a feedback-compensation manner (namely, the satellite attitude control method E31), the satellite attitude control system compares the “attitude command” from the user with the second attitude propagation result to obtain the torque control command for the attitude actuator. Consequently, the satellite's attitude may reach its “attitude command” one step closer.
[0166] Additionally, in some embodiments, the satellite attitude control method E31 includes at least three control modes. In addition to the foregoing satellite fine pointing mode, the satellite attitude control method E31 further includes a satellite de-tumbling mode (De-tumbling) and a satellite de-saturation mode (De-Saturation).
[0167] As mentioned above, the satellite attitude control system in which the indirect attitude actuator 2 is applied has the angular momentum saturation issue. Therefore, in some satellite attitude control systems, the attitude control method E31 further includes the satellite de-saturation mode (De-saturation).
[0168] Furthermore, the De-tumbling mode is an emergency mode triggered when (1) satellites just get ejected into space from the rocket or (2) the satellite is suffering from significant disturbance torque and entering a tumbling state. When the satellite detects this tumbling state happens, herein refers to the absolute body angular velocity of the satellite is faster than a preset value, the de-tumbling mode is triggered. Compared with the satellite attitude control method E31, only the direct attitude actuator 2 is used in the de-tumbling mode. It outputs torque to the satellite according to the torque-control command to reduce the tumbling speed of the satellite.
[0169] As above, according to one or some embodiments of the present disclosure, a satellite attitude control system based on the QKF and control method thereof are provided. By applying the QKF to the satellite attitude control system, the satellite attitude control system can achieve the effects of “expandable environmental sensors,” “performs a calculation according to the information of ‘different’ environmental reference objects within the space measured by environmental sensors,” and “performs at least one ‘update procedure’ to correct the propagation result” to the first propagation result. As a result, an “expandable attitude determination system” can be achieved.
[0170] Moreover, the present disclosure provides a satellite attitude control method in which various types and numbers of indirect attitude actuators (e.g., a spherical motor) and direct attitude actuators can be applied.
[0171] The above embodiments were chosen and described to explain the principles of the disclosure and their practical application to enable others skilled in the art to utilize the disclosure and various embodiments and with various modifications as are suited to the particular use contemplated. Alternative embodiments will become apparent to those skilled in the art to which the present disclosure pertains without departing from its spirit and scope.