CubeSat Design Bleeping Interplanetary Radiations Determination Yo-yo (BIRDY) - AOCS...
-
Upload
haochihlin -
Category
Documents
-
view
216 -
download
0
Transcript of CubeSat Design Bleeping Interplanetary Radiations Determination Yo-yo (BIRDY) - AOCS...
-
8/19/2019 CubeSat Design Bleeping Interplanetary Radiations Determination Yo-yo (BIRDY) - AOCS Subsystem-report
1/22
-
8/19/2019 CubeSat Design Bleeping Interplanetary Radiations Determination Yo-yo (BIRDY) - AOCS Subsystem-report
2/22
BIRDYTechnical solution for AOCS Ref. : NAV-007
Version : 2.0CL=1
Author(s): Lin Hao-Chih (Jim) Date: 16-January-2015
1
Contents
I. - Introduction ....................................................................................................................... 2
I.1. - Context & Purpose .................................................................................................................... 2
I.2. - List of abbreviations ................................................................................................................... 2
I.3. - Internal reference documents .................................................................................................... 2
I.4. - External reference documents ................................................................................................... 2
II. - Definitions and notation .................................................................................................. 3
II.1. - BIRDY definitions ............................................................................................................... 3
II.2. - Reference frames .............................................................................................................. 3
II.3. - Attitude representation ....................................................................................................... 3
III. - Mathematical modeling ................................................................................................... 5
III.1. - BIRDY kinematics .............................................................................................................. 5
III.2. - BIRDY dynamics ................................................................................................................ 5
III.3. - SIMULINK Layout .............................................................................................................. 6
III.4. -Actuator dynamics .............................................................................................................. 6
III.5. –Control law ......................................................................................................................... 9
IV. - Mathematical modeling ................................................................................................. 12
IV.1. - Detumbling mode ............................................................................................................. 12
IV.2. -Pointing mode ................................................................................................................... 15
IV.3. –Simulation for the bias between COG and COM .............................................................. 18
V. - Conclusion and future work ............................................................................................ 21
-
8/19/2019 CubeSat Design Bleeping Interplanetary Radiations Determination Yo-yo (BIRDY) - AOCS Subsystem-report
3/22
-
8/19/2019 CubeSat Design Bleeping Interplanetary Radiations Determination Yo-yo (BIRDY) - AOCS Subsystem-report
4/22
BIRDYTechnical solution for AOCS Ref. : NAV-007
Version : 2.0CL=1
Author(s): Lin Hao-Chih (Jim) Date: 16-January-2015
3
II. - Definitions and notation
II.1.- BIRDY definitions
The following picture shows the reference frame (called BIRDY reference frame):
II.2.- Reference frames
Earth-centered inertial (ECI) frame:
The center of ECI is coincided with the center of Earth. It is defined by the unit vectors x i, yi and zi. The
zi-axis is pointed along the Earth’s rotational axis towards geographic north, the xi-axis points to an
imaginary fixed star at vernal equinox and the yi-axis completes the orthogonal system according to the
right-hand rule. This frame will be referred to throughout this technical note with a superscript i.
Body frame:
It is the same as BIRDY reference frame. The right-handed orthogonal three axis system with the origin at
the satellite’s center of mass, and is defined by the unit vectors x b, y b and z b. Rotation about these three
axes is referred to as roll, pitch and yaw, respectively. It is fixed to the satellite body, and thus moves and
rotates with it. This frame will be referred to throughout this report with a superscript b.
II.3.- Attitude representation
Rotation matrix:
There are two vectors given in frame and b as below:
Further, the transformation of a coordinate vector from frame b to frame is given by
-
8/19/2019 CubeSat Design Bleeping Interplanetary Radiations Determination Yo-yo (BIRDY) - AOCS Subsystem-report
5/22
BIRDYTechnical solution for AOCS Ref. : NAV-007
Version : 2.0CL=1
Author(s): Lin Hao-Chih (Jim) Date: 16-January-2015
4
Where
is the transformation matrix which transform a vector in the b frame to a vector in the
frame.
The main property of the rotation matrix is that it is an element in SO(3), which is defined as: Also, the R is the orthogonal matrix, so there is a special property like
( ) ( ) Then, the time derivative of the rotation matrix can be expressed as ̇ ( ) Where is the angular velocity of frame b relative to frame represented in frame , and S (
・
) is
the cross product operator given by
Euler angles:
To represent the satellite’s attitude, the straight forward way is to use the Euler angles, which is consisted
of roll angle –
, pitch angle –
and yaw angle –
. Where roll is rotation about the x- axis, pitch is
rotation about the y - axis and yaw is rotation about the z - axis.
Quaternions:
When using the Euler angle to represent the attitude of the CubeSat, one get singularities for some angles.
For this reason, in this technical note, the attitude of BIRDY is replaced with the other way called
“quaternions”. The quaternions is a four-parameter singularity free attitude representation, where the
quaternion q is defined as a complex number with one real part and three imaginary parts given in thevector
:
which corresponds to a rotation about an unit vector . A quaternion also satisfies the constraint In order to save the space, the vector of quaternion is written as The inverse rotation is given by the complex conjugate of q as
̅
-
8/19/2019 CubeSat Design Bleeping Interplanetary Radiations Determination Yo-yo (BIRDY) - AOCS Subsystem-report
6/22
BIRDYTechnical solution for AOCS Ref. : NAV-007
Version : 2.0CL=1
Author(s): Lin Hao-Chih (Jim) Date: 16-January-2015
5
In addition, the quaternion differential equations is found to be
̇ ̇ Notations:
Here, the notations used in this report will be specified and clarified. To transform/rotate a vector in frame
b to frame a: To represent an object’s angular velocity with respect to a specific coordinate frame, the following notation
is used: which means the angular velocity of the body frame with respect to the inertial (ECI) frame, and
represented in the body frame.
III. - Mathematical modeling
III.1.
- BIRDY kinematicsInsert the (2.3) into (2.1) and (2.2), the kinematic differential equations for the relation between inertial
(ECI) frame and body frame can be found as
̇ ̇ Where the symbol represents the 3x3 identity matrix.III.2. - BIRDY dynamics
The Euler ’s moment equations is ̇ Where and the standard form of Cubesat, with satellite inertia matrix , angular velocity and is the total momentum of momentum wheels(MW), all seen in the body frame, is the totalactuator torque without the torque caused by MW, is the minus rate of change of the angularmomentum from MW(see eq-3.5), and is the total disturbance torque. With this notation, the dynamicequation can be written as
̇ ( ) ( ) Where ̇
-
8/19/2019 CubeSat Design Bleeping Interplanetary Radiations Determination Yo-yo (BIRDY) - AOCS Subsystem-report
7/22
BIRDYTechnical solution for AOCS Ref. : NAV-007
Version : 2.0CL=1
Author(s): Lin Hao-Chih (Jim) Date: 16-January-2015
6
III.3. - SIMULINK LayoutThe whole simulation model and related “MATLAB Function” codes are included in attached files. There
are some useful tools and functions provided in SIMLUNK, like “3x3 cross product”, “translation between
Euler angles and Quaternions ” and “Quaternions Normalize”. All of these functions can be transformed
into C codes easily(ex. by using C++ library or MATLAB coder).
The simulation model shows as below represents the nonlinear dynamics and kinematics of BIRDY.
Input terminal:
The “Control input” is the combination of total actuator torque() and , the “Disturbance” is the totaldisturbance torque() and the “h” is the total momentum of momentum wheels.Output terminal:
The “Angular velocity” is the same as the , the “Quaternion” represents the attitude of BIRDY and the“Animation” means that the quaternion results will be shown in 3D animation.III.4. -Actuator dynamics
In this report, only the configuration of four reaction thruster will be analyzed, the MW configuration will
not be included in this technical note. For this reason, the total momentum of reaction wheels (h) and are zero. Therefore, the dynamics equation of BIRDY (3.4) can be rewritten as
̇ ( )
Where the means the control torque from four reaction thruster.Before doing the further analysis of , the configuration of four thrusters should be depicted firstly.
-
8/19/2019 CubeSat Design Bleeping Interplanetary Radiations Determination Yo-yo (BIRDY) - AOCS Subsystem-report
8/22
BIRDYTechnical solution for AOCS Ref. : NAV-007
Version : 2.0CL=1
Author(s): Lin Hao-Chih (Jim) Date: 16-January-2015
7
Layout of four reaction thrusters:
In previous technical note (NAV-001), the L-µPPT was selected as our first choice of reaction thrusters.
The related specification and configuration information are shown as below
According to this previous drawings, here is the positions of thrusters (from the geometric center):
Table 3-1. The i’th vector from COM to the position of the i’th thrusterPositions of
thrusters (mm) Thruster 1 Thruster 2 Thruster 3 Thruster 4
X 30,5 -30,5 -30,5 30,5
Y -41,9 -41,9 41,9 41,9Z -152,75 -152,75 -152,75 -152,75
-
8/19/2019 CubeSat Design Bleeping Interplanetary Radiations Determination Yo-yo (BIRDY) - AOCS Subsystem-report
9/22
BIRDYTechnical solution for AOCS Ref. : NAV-007
Version : 2.0CL=1
Author(s): Lin Hao-Chih (Jim) Date: 16-January-2015
8
Thrusters dynamics:
The control torque from four thrusters can be expressed as where u is the vector of actuator torques given as A variable Fi is the magnitude of thrust from the i’th thruster. The actuator matrix Ba contains elements
from thrusters torques. According to the layout of thrusters, the Ba matrix can be expressed as
where variable ri is vector from COM to the position of the i’th thruster. Ti is the unit vector, whichrepresent the direction of the i’th thruster. Here the position of thrust axis (values provided by L-µPPT
consortium which are given in meter for a
unit vector of thrust):
Table 3-2. The i’th vector for the direction of i’th thrusterThrust axis Thruster 1 ( Thruster 2 ( Thruster 3 ( Thruster 4 (
X 0 0 0 0
Y -0,259 -0,259 0,259 0,259
Z 0,966 0,966 0,966 0,966
Insert values, which were given from Table 3-1 and 3-2, into the eq(3.9), then bring the result into eq(3.8).
The Ba matrix can be counted out like
In order to calculate the vector of actuator torques u, the inverse of the Ba matrix is needed. However, the
matrix of Ba is rectangular( ), the invers of Ba matrix does not exist. To solve this problem, the“Least-norm” solution (also called “Pseudo-inverse”) will be applied. Hence, the equation (3.7) can be
computed as There is an additional advantage when using the “Least-norm” method, it will find out the minimum
energy solution by itself.
Limitation of Thruster
Reaction thrusters are by nature on-off devices and are normally only capable of providing fixed torque. In
this document, bang-bang control with deadzone is used to control the thrusters. It is based on a saturation
function, so that the thrusters are fired when the commanded torque exceeds a defined upper limit.
Increasing the deadzone and the corresponding upper limit will decrease the fuel consumption, but increase
the attitude error, and vice versa.
-
8/19/2019 CubeSat Design Bleeping Interplanetary Radiations Determination Yo-yo (BIRDY) - AOCS Subsystem-report
10/22
BIRDYTechnical solution for AOCS Ref. : NAV-007
Version : 2.0CL=1
Author(s): Lin Hao-Chih (Jim) Date: 16-January-2015
9
III.5.–
Control lawPD controller:
This strategy is a basic and direct linear control law. It uses feedback from the three quaternion error
elements in ̃ (or Euler angles error ) and the angular velocity error
Where the subscript-d means the component of desired vector, and the subscript-n means the component of
current state vector. The and basically are identity matrix. If needed, the PD tuned gain could beno the same in and matrix.SIMULINK layout of PD controller:
The figure shown as below includes PD controller block, Least-norm block, which is in charge of
calculating the force generated by thruster, and BIRDY model block, which integrate the dynamics and
kinematics model of BIRDY.
-
8/19/2019 CubeSat Design Bleeping Interplanetary Radiations Determination Yo-yo (BIRDY) - AOCS Subsystem-report
11/22
-
8/19/2019 CubeSat Design Bleeping Interplanetary Radiations Determination Yo-yo (BIRDY) - AOCS Subsystem-report
12/22
BIRDYTechnical solution for AOCS Ref. : NAV-007
Version : 2.0CL=1
Author(s): Lin Hao-Chih (Jim) Date: 16-January-2015
11
Now, the last unknown symbol in equation
is
̇ , which is a stabilizing function. The time
differentiation of the states can be performed as ̇ [ ̇ ̇] where ̇ can be found from following z1-system
̇ Then, ̇ can be expressed as
̇
̇
̇
where ̇ ̃̇ ̇
and
̇ ̃ ̇ ̇ ̇ ̇
Substituting equations from (3.13) to (3.23) into (3.12), the vector of actuator torque can be calculated.SIMULINK layout of Backstepping controller:
There are two special blocks, which are z1 and z2_dot, represent equation (3.16) and (3.13) respectively.
After calculating z1 and z2, put all parameters and variables into “Backstepping” block. The output of
control torque has to be passes through “Least norm” block, then sent to the “BIRDY model”.
-
8/19/2019 CubeSat Design Bleeping Interplanetary Radiations Determination Yo-yo (BIRDY) - AOCS Subsystem-report
13/22
-
8/19/2019 CubeSat Design Bleeping Interplanetary Radiations Determination Yo-yo (BIRDY) - AOCS Subsystem-report
14/22
BIRDYTechnical solution for AOCS Ref. : NAV-007
Version : 2.0CL=1
Author(s): Lin Hao-Chih (Jim) Date: 16-January-2015
13
Figure 4-2, Euler angles (rad) vs. time (sec).
Figure 4-3, impulse of each thruster (grams) vs. time (sec).
The total propellant consumption during “detumbling mode” of PD controller is about “2.67” grams, and
the duration of whole process is around sec (~ 3.6 hours).Backstepping controller:
The backstepping controller from equation (3.12) is implemented with initial values from (4.1) and (4.2).
The controller gains used in the detumbling mode are given as following:
In fact, there is not a theoretical way to find out the proper gain matrix (K 1 and K 2). In practice, the same
“trial and error ” method as PD controller used is a common way to get suitable gain matrix. However, it is
very easy to choice matrixes make the whole system unstable, especially in “detumbling mode”.
See figures 4-4, 4-5 and 4-6 for the Euler angle, angular velocity and power outputs, respectively.
-
8/19/2019 CubeSat Design Bleeping Interplanetary Radiations Determination Yo-yo (BIRDY) - AOCS Subsystem-report
15/22
BIRDYTechnical solution for AOCS Ref. : NAV-007
Version : 2.0CL=1
Author(s): Lin Hao-Chih (Jim) Date: 16-January-2015
14
Figure 4-4, angular velocity (rad/sec) vs. time (sec).
Figure 4-5, Euler angles (rad) vs. time (sec).
Figure 4-6, impulse of each thruster (grams) vs. time (sec).
The total propellant consumption during “detumbling mode” of Backsteeping controller is about “7.064”
grams, and the duration of whole process is around sec (~ 9.03 hours).
-
8/19/2019 CubeSat Design Bleeping Interplanetary Radiations Determination Yo-yo (BIRDY) - AOCS Subsystem-report
16/22
BIRDYTechnical solution for AOCS Ref. : NAV-007
Version : 2.0CL=1
Author(s): Lin Hao-Chih (Jim) Date: 16-January-2015
15
IV.2. -Pointing modeIn the pointing phase, the initial condition of Cubesat is just current state. On the other hand, the desired
condition bases on your command. In the following simulation, the initial condition was selected as where is the initial angular velocity vector and is the initial Euler angles vector. In addition, thetarget (desired condition) was assumed as
PD controller:
The PD controller from equation (3.11) is implemented with initial values from (4.5) and (4.6).
The controller gains used in the this mode are given as following: The K p gain is bit different with the value in “detumbling mode”, since the requirement for attitude of
BIRDY is more important in pointing mode. The simulated results can be found from following figures 4-7,
4-8 and 4-9 for the Euler angle, angular velocity and propellant consumption, respectively.
Figure 4-7, angular velocity (rad/sec) vs. time (sec).
-
8/19/2019 CubeSat Design Bleeping Interplanetary Radiations Determination Yo-yo (BIRDY) - AOCS Subsystem-report
17/22
BIRDYTechnical solution for AOCS Ref. : NAV-007
Version : 2.0CL=1
Author(s): Lin Hao-Chih (Jim) Date: 16-January-2015
16
Figure 4-8, Euler angles (rad) vs. time (sec).
Figure 4-9, impulse of each thruster (grams) vs. time (sec).
The total propellant consumption during “ pointing mode” of PD controller is about “0.06377” grams, and
the duration of whole process is around
sec (~ 6.16 minutes).
Backstepping controller:
The backstepping controller from equation (3.12) is implemented with initial values from (4.5) and (4.6).
The controller gains used in the pointing mode are given as following:
See figures 4-10, 4-11 and 4-12 for the Euler angle, angular velocity and power outputs, respectively.
-
8/19/2019 CubeSat Design Bleeping Interplanetary Radiations Determination Yo-yo (BIRDY) - AOCS Subsystem-report
18/22
BIRDYTechnical solution for AOCS Ref. : NAV-007
Version : 2.0CL=1
Author(s): Lin Hao-Chih (Jim) Date: 16-January-2015
17
Figure 4-10, angular velocity (rad/sec) vs. time (sec).
Figure 4-11, Euler angles (rad) vs. time (sec).
Figure 4-12, impulse of each thruster (grams) vs. time (sec).
The total propellant consumption during “ pointing mode” of Backstepping controller is about “0.04065”
grams, and the duration of whole process is around sec (~ 7.16 minutes).
-
8/19/2019 CubeSat Design Bleeping Interplanetary Radiations Determination Yo-yo (BIRDY) - AOCS Subsystem-report
19/22
BIRDYTechnical solution for AOCS Ref. : NAV-007
Version : 2.0CL=1
Author(s): Lin Hao-Chih (Jim) Date: 16-January-2015
18
IV.3.–
Simulation for the bias between COG and COMIn the previous “IV.1.-Detumbling mode” and “ IV.2.-Pointing mode” chapter, all of simulation results are
running under specific assumption, which is the COG coincide with the COG. However, it is impossible
for any CubeSat satisfied this requirement. Therefore, the following simulation assume there is a bias as
[1;1;1] (cm) between COG and COM. In addition, in view of the performance of PD controller is better in
detumbling mode, the result of Backstepping will be neglected. In contrast, in the pointing mode, only the
Backstepping simulation result will be demonstrated.
PD controller for detumbling mode with bias [1;1;1]:
Initial condition:
Angular velocity = [50; 50; 50] degree/sec
Euler angles = [11.4; -57.3; 0] degrees
Result:Duration = 40,000 s ~ 11.1 hrs.
Propellant ~ 7.62 grams.
Relative figures:
Figure 4-13, Angular velocity (rad/s) vs. time
-
8/19/2019 CubeSat Design Bleeping Interplanetary Radiations Determination Yo-yo (BIRDY) - AOCS Subsystem-report
20/22
BIRDYTechnical solution for AOCS Ref. : NAV-007
Version : 2.0CL=1
Author(s): Lin Hao-Chih (Jim) Date: 16-January-2015
19
Figure 4-14, Euler angles (rad) vs. time
Figure 4-15, Impulse sequence of each thruster (Newton) vs. time
Backstepping controller for pointing mode with bias [1;1;1]:
Initial condition:
Angular velocity = [0; 0; 0] in rad/s
Euler angles = [0; pi/2; 0] in rad
Target:
Angular velocity = [0;0;0] in rad/s
Euler angles = [0;0;0] in rad
Accuracy:
Requirement of accuracy for Angular velocity and Euler angles are 0.0001 (deg /s) and 0.01 (degrees)
respectively.
Result:
Duration = 650 sec (~ 10.8 mins).
Propellant ~ 0.05404 grams.
-
8/19/2019 CubeSat Design Bleeping Interplanetary Radiations Determination Yo-yo (BIRDY) - AOCS Subsystem-report
21/22
BIRDYTechnical solution for AOCS Ref. : NAV-007
Version : 2.0CL=1
Author(s): Lin Hao-Chih (Jim) Date: 16-January-2015
20
Feedback gain matrixes are as follows:
K1 = [ -2, 0, 0;
0, -0.052, 0;
0, 0, -0.3]
K2 = [ 0.15, 0, 0;
0, 0.2, 0;
0, 0, 0.15];
Relative figures:
Figure 4-16, Angular velocity (in body frame, rad/s) vs. time
Figure 4-17, Euler angles (rad) vs. time
Figure 4-18, Impulse sequence of each thruster (Newton) vs. time
-
8/19/2019 CubeSat Design Bleeping Interplanetary Radiations Determination Yo-yo (BIRDY) - AOCS Subsystem-report
22/22
BIRDYTechnical solution for AOCS Ref. : NAV-007
Version : 2.0CL=1
Author(s): Lin Hao-Chih (Jim) Date: 16-January-2015
21
V. - Conclusion and future work
In this technical note, the nonlinear dynamic model of BIRDY has been created and confirmed. Then, we
have presented two different control law, which are PD linear controller and Backstepping controller,
applied to our BIRDY model. The simulation results expressed in chapter IV shows that the PD controller
is a not only better and more robust way in the detumbling motion of BIRDY, but gives more efficient
performance based on our four thrusters system. On the other hand, in the pointing mode the outcome of
backstepping controller is more efficient on the propellant consumption than the other control law.
However, the system model adapted in this document has many assumptions and constraints, for example,environment distribution are not included, the center of mass has to coincide with the center of geometry,
the effects of the fuel decreasing is ignored in both mode and only the configuration of four reaction
thrusters is analyzed. In addition, the time delay between different thruster generating the force is also
neglected.
In the future work, the main issues will be trying to add the basis from environment. Furthermore, the
detail specifications of L-µPPT should be included in the thrusters system. If needed, the momentum wheel
(MW) component can be embedded in our AOCS subsystem, and make more complex model to simulate
the performance of combining the MW and L-µPPT. Moreover, the whole MATLAB codes will betransferred into C/C++ codes (ex, by using < Eigen> C++ library).