=Paper= {{Paper |id=Vol-2864/paper34 |storemode=property |title=SVD-Aided EKF with Process Noise Covariance Adaptation Applied to Satellite Attitude Dynamics |pdfUrl=https://ceur-ws.org/Vol-2864/paper34.pdf |volume=Vol-2864 |authors=Chingiz Hajiyev,Demet Cilden-Guler |dblpUrl=https://dblp.org/rec/conf/cmis/HajiyevC21 }} ==SVD-Aided EKF with Process Noise Covariance Adaptation Applied to Satellite Attitude Dynamics== https://ceur-ws.org/Vol-2864/paper34.pdf
SVD‐Aided EKF with Process Noise Covariance Adaptation
Applied to Satellite Attitude Dynamics
Chingiz Hajiyev and Demet Cilden-Guler
Faculty of Aeronautics and Astronautics, Istanbul Technical University, 34469, Maslak, Istanbul, Turkey

                 Abstract
                 An attitude estimation scheme is designed with the process noise adaptation rule in the
                 extended Kalman filter (EKF) algorithm for a spacecraft in low Earth orbit. The adaptations
                 are designed for compensating the external disturbances by updating the process noise
                 covariance. Satellite attitude estimation algorithm based on the Singular Value
                 Decomposition (SVD) as a preprocessing step in EKF is proposed. The process noise
                 covariance (Q) adaptation rule is incorporated into the previous filter design. The proposed
                 filter has the capability to be robust against initialization errors and the dynamics modeling
                 errors of the satellite. Numerical simulations based on several scenarios are employed to
                 investigate the robustness of the filter.

                 Keywords 1
                 Singular value decomposition, extended Kalman filter, attitude estimation, adaptive filtering,
                 rate gyro, small satellite.

1. Introduction
    Attitude and angular rate of a satellite can be estimated using a conventional Kalman filter based
on nonlinear measurements of reference directions (e.g. Earth magnetic field direction, Sun direction,
etc.) [1–3]. On the other hand, linear measurements-based approach using vector observations in a
preprocessing method can also be used for attitude estimation purposes. This approach is called
nontraditional Kalman filter [3–7]. Here, a single-frame method determining the attitude angles as
linear measurement inputs for the attitude filter such as Extended Kalman filter (EKF) or Unscented
Kalman filter (UKF). The measurement model becomes linear as the state vector is composed of
attitude angles that are directly observed by the preprocessing step. As an example, in [4], authors
present an integrated satellite attitude determination system based on EKF and a single-frame
estimator to estimate the attitude angles and angular velocities. The single-frame attitude estimator
uses the TRIAD (Three-Axis Attitude Determination) method.
    As the measurement model is linear in the nontraditional attitude filter, the overall computational
load for the attitude estimation algorithm can be decreased at a great extent. In addition, if the filter is
correctly tuned the estimation accuracy may increase compared to the estimates of a traditional filter.
Because of these benefits the nontraditional approach for attitude filtering is a promising method for
attitude estimation of small satellites including the nanosatellites [3, 5, 8, 9].
    One of the difficulties for the non-traditional attitude filters that were met in previous
investigations is the tuning of the filter in terms of the process noise covariance. Variations in the
disturbance torques such as the residual magnetic torque, modeling errors in the satellite’s dynamics
and any fault in the actuators, they all cause changes in the process noise covariance of the filter.
Despite being robust to any kind of variation in the measurements due to its nature, the nontraditional
attitude filter is not capable of tuning itself against this kind of process noise covariance variations.
The traditional Kalman filtering algorithms including the EKF, also have the same drawback when
using any of them for attitude estimation: they are not robust against the environment changes. In case

CMIS-2021: The Fourth International Workshop on Computer Modeling and Intelligent Systems, April 27, 2021, Zaporizhzhia, Ukraine
EMAIL: cingiz@itu.edu.tr (C. Hajiyev); cilden@itu.edu.tr (D. Cilden-Guler)
ORCID: 0000-0003-4115-341X (C. Hajiyev); 0000-0002-3924-5422 (D. Cilden-Guler);
            © 2021 Copyright for this paper by its authors.
            Use permitted under Creative Commons License Attribution 4.0 International (CC BY 4.0).
            CEUR Workshop Proceedings (CEUR-WS.org)
of such changes, the estimation accuracy of the filter deteriorates and if the faults are long lasting, the
filter may diverge. For any satellite, harsh operation conditions and anomalies in the geomagnetic
field and sun are very likely in space environment. This situation leads us to a search for an Adaptive
EKF (AEKF) algorithm that can be implemented in the nontraditional attitude filter.
    The paper [10] proposes a robust adaptive UKF (RAUKF) to improve the accuracy and robustness
of state estimation with having uncertain noise covariance. An online fault-detection mechanism is
adopted to decide whether there is a need to update the current noise covariance or not. If necessary,
innovation-based method and residual-based method are used to calculate the estimations of current
noise covariance of process and measurement, respectively. The filter combines the last noise
covariance matrices with the estimations for the new noise covariance matrices by using a weighting
factor.
    Like space anomalies the marine environment is also very complex; therefore, it is difficult to
accurately obtain the system noise. The acoustic observations usually have gross errors, which affects
the positioning accuracy of classical UKF. An RAUKF algorithm is proposed in [11] based on the
Sage-Husa filter. The RAUKF can adaptively adjust the system noise to solve the divergence
problem, and control the effects of gross measurement errors on dynamic state estimates.
    In [12], the authors proposed an integrated algorithm which adapts both the measurement and
process noise covariance matrices of the UKF for satellite attitude estimation. However, in this paper,
the traditional approach is used for the attitude estimation.
    In this study, we extend and add on to our previous researches about non-traditional filtering by
proposing an adaptation method for tuning the Q matrix of the filter. The SVD method runs using the
magnetometer and Sun sensor measurements as the first stage of the algorithm, and estimates the
attitude of the satellite, giving one estimate at a single-frame. Then, these estimated attitude terms are
used as inputs to the Q-adaptive EKF (AEKF). In different from the previous works of authors [28,
29], where SVD-Aided UKF adaptation is performed using single scale factors, in this study adapting
the attitude filter is fulfilled using multiple scale factors.
    The paper presents the mathematical models for a nanosatellite in Section 2. The SVD-aided EKF
algorithm is introduced in Section 3 in detail for each sub-algorithm. The proposed filter adaptation
method is also presented in this section. In Section 4, the simulation results of the proposed SVD-
aided AEKF algorithm for a hypothetical nanosatellite are given. In Section 5, a brief summary and
conclusions are given.

2. Singular Value Decomposition Method
   Singular value decomposition (SVD) method is one of the single-frame methods (SFMs) used for
minimization of Wahba’s loss function [13]. At least two vectors need to be measured in order to
determine the attitude using the optimal attitude matrix. The loss function is defined as,
                                               1
                                      L  A    ai |b i  Ari |2                         (1)
                                               2 i
                                              Bsvd   ai bi riT                           (2)
                                                     i

                                          L  A   0  tr  ABT                                    (3)
where b i is the measurement vector in body coordinate system and ri is the vector in reference
coordinate system , ai is the non-negative weight with their sum of 0 . B svd can be seen in Equation
(2) has singular value decomposition:
                                Bsvd  USVT  Udiag S11 S22 S33 VT                               (4)
                                A opt  Udiag[1 1 det  U det  V ]VT                               (5)
where the left and right matrices are U and V , S11 , S22 , S33  are the primary singular values and A opt
is the optimal attitude transformation matrix. To examine the rotation angle error, covariance matrix
can be defined as,
                            Psvd  Udiag[(s2  s3 )1 (s3  s1 )1 (s1  s2 )1 ]UT                    (6)
where s1  S11 , s2  S22 , s3  det  U det  V  S33 . In applications where only two vectors are available
and one of them has faulty measurements, the SVD method cannot determine the attitude as at least
two vector observations are required for the method to work properly.

    2.1.          Modeling of Earth’s Magnetic Field Vector
    International Geomagnetic Reference Field (IGRF) is used as the Earth’s magnetic field model in
this study [14]. Model needs two inputs, position of the near-Earth spacecraft and the time, for
calculating the geomagnetic field vector as,
                                   N n  a n 1                                                          
                    Bo  k    a    g nm (t)cos  msc   hnm (t)sin  msc    Pnm (cos sc )   (7)
                                    n 1 m0  rsc                                                        
where rsc is the spacecraft’s distance from Earth’s center in km, a  6371.2 km (magnetic reference
spherical radius),  sc is colatitude in deg,  sc longitude in deg of the spacecraft at specified time, t .
In the equation, the global variables g , h are Gauss coefficients while P denotes the Legendre
function of degree n and order m . The magnetometer measurements can be defined using the
transformed magnetic field model using the attitude transformation matrix A as,
                                          Bm  k   A  k  Bo  k   v B  k              (8)
where B m is the magnetometer measurement vector and υB is the zero-mean Gaussian noise of the
magnetometer measurements.

2.2.     Modeling of Sun Direction Vector
   The reference sun direction can be calculated in inertial frame at a specified time [15]. The sun
sensor measurements can be defined using the transformed sun direction model using the attitude
transformation matrix A as,
                                         Sm  k   A  k  So  k   υ S  k                   (9)
where S m is the sun sensor measurement vector, So is the reference sun direction vector and υS is the
zero-mean Gaussian noise of the sun sensor measurements.

3. Mathematical Models

3.1.     Satellite’s Rotational Motion

   The kinematics equation of motion of the satellite using Euler angle representation (roll   , pitch
  , and yaw   ) is given as [16],
                                     1 sin   tan     cos   tan     p 
                                                                                
                                      0    cos              sin         q                      (10)
                                    0 sin   / cos   cos   / cos     r 
                                                                                
where the components of the vector ω BR in body frame with respect to the reference frame are given
as p, q , r . The body angular rate with respect to the inertial frame is expressed as,
                                                                               T
                                                     ωBI   x   y  z                                   (11)
with the relationship
                                                  ωBR  ωBI  A  0 o            0
                                                                                    T
                                                                                               (12)
where o defines the orbital angular velocity with respect to the inertial frame, A is the attitude
transformation matrix composed of Euler angles.
       For estimating the attitude and attitude rates together, rate gyro driven kinematics or both the
dynamics and the kinematics of the satellite are utilized. We use dynamic equations in this study. The
satellite’s rotational motion dynamics are derived based on the Euler’s equations as,
                                               d
                                            J x x  Nx   J y  J z   y  z ,                  (13a)
                                                dt
                                               d
                                            Jy y  Ny   Jz  Jx  zx ,
                                                dt                                                (13b)
                                               dz
                                            Jz      Nz   Jx  Jy  xy ,
                                                dt                                                (13c)
where J x , Jy and J z are the principal moments of inertia and N x , Ny and Nz are the terms of the
external disturbance torque.

3.2.       Measurement Models
    Single-frame method aided filters use the SFM estimates and the noise covariance calculations.
Since the SFM determines the coarse attitude angles, the three elements of the measurements for the
filter are directly composed of these angles as,
                                            z (k)  svd (k)   (k)
                                                        z (k)   svd (k)   (k)                                                (14)
                                                       z (k)   svd (k)   (k)
                                                                                          T
where  (k) is the measurement noise and z   z                        z   z  . The rate gyros are used as the
measurement input to the filter as well,
                                                             z (k)  ω BI (k)  υ (k)                                            (15)
                                                                                                                                     T
where υ is the zero-mean Gaussian noise of the rate gyro measurements and z   zx                                  zy    zz  .
The variances and the expectations of the measurement noises are,
          E   (k)  0, E 2 (k)  Var  (k) , E 2 (k)   Var  (k)  , E 2 (k)  Var  (k)  ,
                      
                                                                                                       
                   E 2 x (k)  Var x (k) , E 2y (k)  Var y (k) , E 2 z (k)  Var z (k) .                 (16)


4. SVD‐Aided EKF for Attitude and Rate Estimation

      For the full-state estimation, the state vector  x  is composed of attitude angles and angular rates
as,
                                                                                              T
                                                      x    
                                                               x y  z                                                         (17)
      The process and measurement models can be expressed in the discrete-time as,
                                            xˆ(k  1)  f  xˆ(k), k   w(k)                                                      (18)
                                                 z(k)  H xˆ (k)  υ(k)                       (19)
where f  is the state transition matrix, w is Gaussian process noise, υ is gaussian measurement
noise, z is the measurement vector, H is the measurement matrix.
                                                                                                                               T
      The process and measurement noises υ(k)=  (k)  (k)  (k) x (k) y (k) z (k)                                    and
w(k) are assumed linearly additive Gaussian, temporally uncorrelated with zero mean. Their
corresponding covariances are,
                               E  w(i)wT ( j)  Q (i) (ij), E υ(i)υT ( j)  R(i) (ij) (20)
   Here,  (ij) is the Kronecker symbol. The process and measurement noises are assumed to be
uncorrelated as,
                                           E  w(i)υT ( j)  0, i , j                (21)
   The state vector estimate is,
                               xˆ(k  1)  xˆ(k  1 / k)  K(k  1)  z(k  1)  H xˆ(k  1 / k)             (22)
where the measurement vector is presented as z(k  1)   z (k  1) z (k  1) with the measurement
                                                                                                  T


matrix H . For our case, H is a 6x6 unit matrix because of the linearity. The extrapolation value is,
                                              xˆ(k  1 / k)  f  xˆ(k), k                           (23)
  The gain of the filter is,
                                                                                                          1
                                        K(k  1)  P(k  1 / k)HT  H P(k  1 / k)HT  R(k)                (24)
   The extrapolation error covariance matrix is,

                                                         f[xˆ(k), k]          f T [xˆ (k), k ]
                                        P(k  1 / k)                 P(k / k)                    Q(k)        (25)
                                                           xˆ (k)                 xˆ(k)
   The estimation error covariance matrix is,
                                        P(k  1 / k  1)  I  K(k  1)H P(k  1 / k)                   (26)
   The filter is represented by the Equations (22) – (26).
   One of the difficulties for the nontraditional attitude filters is the tuning of the filter’s process noise
covariance matrix, Q [17]. Especially, the process noise covariance needs to be tuned when the
environment changes [18]. Here, any condition change is referred as a change that may affect the
process model of the filter. These might include uncertainties in the inertia parameters, disturbance
torques (as it may happen when the satellite goes in/out of the eclipse) as well as the changes in the
controller parameters (such as a malfunction) although a controller is not considered in this paper.

5. SVD‐Aided Q‐Adaptive EKF
   The SVD method runs as the first stage of the algorithm and estimates the attitude of the satellite
giving one estimate at a single-frame. Then, these estimated attitude terms are given as inputs to the
EKF. This forms the SVD-Aided EKF scheme. An adaptation using process noise covariance matrix
is also added to this filter called SVD-Aided AEKF. The algorithms in SVD-Aided AEKF is
summarized in the block diagram in Figure 1.




Figure 1: Relationships between the algorithms used for SVD‐Aided AEKF

    Here, there are two measurements used in SVD for attitude determination: magnetic field and sun
direction. The determined attitude and corresponding covariance ( R ) are the filter’s inputs from the
SVD. In addition to SVD’s observations, rate gyro measurements are used as well in the full-state
estimation process. Also, one more adaptation rule (Q-adaptation) is defined for making the filter
adaptive to the environmental changes. This way, the filter is expected to be robust against process
noises.
   In case of process noise covariance change, the real error of the innovation covariance will exceed
the theoretical one. Thus, the basic of the Q-adaptation is to obtain an appropriate multiplier matrix
for the Q matrix such that the real and theoretical values of the innovation covariance could match.
   The innovation of the EKF in Equations (22) - (26) is,
                               e (k)  z(k  1)  H xˆ(k  1 / k)  z(k  1)  H f  xˆ (k), k  (27)
   In order to adapt the covariance, an adaptive scaling factor is put into the procedure. Hence, if a
scaling matrix ( Λ ) built of multiple scaling factors, is added in to the algorithm as,
                                               f[xˆ (k), k ]          f T [xˆ(k), k]
                              P(k  1 / k)                   P(k / k)                  Λ(k)Q(k) (28)
                                                  xˆ(k)                   xˆ(k)
   The scaling matrix Λ can be determined from equality,

                                                             k
                                                   1
                                                      e ( j)e ( j)  H P(k  1 / k)H  R(k)
                                                     j  k  1
                                                                       T                         T
                                                                                                                                     (29)


    The left side of equality (29) represents the real, and the right side represents the theoretical value
of the covariance of the innovation sequence.
    The innovation covariance can be expressed in the form below by substituting (28) into (29),

                           1       k
                                                          f[xˆ (k), k ]         f T [xˆ (k), k ]           
                              e ( j)e ( j)  H  xˆ(k) P(k / k)
                            
                                             T

                                                                                      xˆ(k)
                                                                                                     Λ(k)Q(k) HT  R(k)            (30)
                               j  k  1                                                                    

   Here,  is the width of the moving window.
   From (30), it can be written,
                                 1 k                                  f[xˆ(k), k ]          f T [xˆ(k), k ]  T
                  H(k)Q(k)HT         
                                  j  k   1
                                                e ( j)e T ( j)  H                P(k / k)                   H  R(k)            (31)
                                                                      xˆ (k)                    xˆ(k) 

   By multiplying (31) with HT on the left and with H on the right, the scale matrix Λ can be
determined as,

                1     1 k                                  f[xˆ(k), k ]           f T [xˆ(k), k ]  T                         1
 Λ(k)  HT H HT                 
                                       e ( j )e T
                                                   ( j )  H                P(k / k )                   H  R(k)  H Q (k) HT H (32)
                        j k   1                        xˆ(k)                      xˆ (k)               
   For a specific case where the all states are measured ( H  I ) as in case, (32) reduces to
                            1 k                               f[ xˆ (k), k ]          f T [xˆ (k), k ]        
                   Λ(k)          
                            j  k   1
                                            e ( j)e T ( j)                   P(k / k)                     R(k) Q 1 (k)       (33)
                                                                xˆ (k)                      xˆ (k)               
   If the process noise does not change, the scale matrix will be a unit matrix as Λ  I , since the
innovation values already match. Here, I represents the unit matrix.
   The obtained scaling matrix should be diagonalized since the Q matrix must be a diagonal,
positive definite matrix. Remark that, as  is a limited number because of the number of the
measurements and the computations performed with the computer implies errors such as the
approximation errors and the round off errors; Λ matrix, found by using Equations (32) or (33), may
not be diagonal and may have diagonal elements which are “negative” or less than “one” (although
the computer simulations may bring out such results that is physically impossible in reality).
Therefore, in order to avoid such situation, composing the scale factor by the following rule is
suggested by [19] as,
                                      Λ  diag  1 , 2 ,..., n  ,                       (34)

where,
                                                 i  max 1,  ii               i  1,, n .     (35)

   Here,  ii represents the ith diagonal element of the matrix Λ . Apart from that point, if there is an
actuator fault in the system, k must be included in the estimation process as,
                                             f[xˆ(k), k ]          f T [xˆ (k), k ] *
                              P(k  1 / k)                P(k / k)                   Λ (k)Q(k)    (36)
                                               xˆ(k)                   xˆ(k)
    Therefore, when process noise change, the related element of the scale matrix, which corresponds
to the changed component of the state vector, increases and that brings out a smaller Kalman gain,
which reduces the effect of the innovation on the state update process. As a result, the robustness of
the filter against the process noise change is ensured and deterioration of the estimation procedure
caused by the fault is prevented.

6. Analysis and Results
   A       low-Earth      orbiting    spacecraft      with  the    principal   moment      of    inertia
J  diag  2.1  10 3
                       2.0  10 3
                                   1.9  10  kg  m is considered in the simulations. The spacecraft is
                                           3       2


tumbling             during        the        simulations     with      an      initial     state      of
 x 0   0.03 rad 0.02 rad 0.01 rad 0.001 rad/s 0.0015 rad/s 0.002 rad/s. The sun sensors are
processed at 1 Hz and corrupted by Gaussian zero-mean noise with a standard deviation of 2%
whereas the magnetometers are corrupted by 8%. The process noise covariance is selected as
 Q  10 4 I6x6 . There is an eclipse period along the orbit between 1500 and 2500 seconds, which causes
the sun sensors to give zero-output.
      This section analyzes the application of the process noise covariance adaptation on the filter. The
Q-adaptive filter is called SVD-Aided AEKF in this study. The adaptation against process noise is
investigated by applying noise increment on the system with a standard deviation of
 1,2,3
    process
             0.01 rad and  4,5,6
                               process
                                        0.01 rad/s between 3000 and 4000 seconds. The inherently R-
adaptive filter called SVD-Aided EKF does not cope well with the process noise increment and
deteriorates as seen from Figure 2 whereas simultaneous R- and Q-adaptive filter called SVD-Aided
AEKF estimates more accurate attitude angles. On the other hand, angular velocity estimations
deteriorate for both filters as seen in Figure 3 and are not improved as much as the attitude angles in
Q-adaptation.




Figure 2: Attitude estimation errors for process noise increment (N.I.) case
Figure 3: Angular velocity estimation errors for process noise increment (N.I.) case

Table 1
RMS errors of SVD‐Aided EKF and AEKF during nominal mode and process noise increment (N.I.)
                                   SVD‐aided EKF                          SVD‐aided AEKF
      RMS Error
                            Nominal           Process N.I.          Nominal            Process N.I.
       (deg)                0.9479              4.8026             0.0971               1.2094
       (deg)                0.0568             11.7243             0.0993               0.8061
       (deg)                0.4194              6.7010             0.3377               1.1692

       x (deg/s)            0.1545              0.8462             0.1546               0.7900

      y (deg/s)             0.0845              0.7890             0.0850               0.8197

      z (deg/s)             0.0055              0.7954             0.0057               0.7915


   Table 1 is composed of root mean square (RMS) error values of the estimations of the filters
considered in this study. The column ‘Nominal’ takes the period outside of the eclipse and outside of
the process noise increment into account. The results do not differentiate much between method-to-
method as there is no fault considered in this period. On the other hand, SVD-Aided AEKF improves
the attitude results with respect to SVD-Aided EKF around 4 to 10 times for the process noise
increment interval. Figure 4 demonstrates the adaptive factor used in the Q-adaptation process, which
seem to be successful in compensating the noise on the process for estimating the attitude angles.
   The adaptive algorithm performs the correction only when the real values of the process noise
covariance does not match with the model used in the synthesis of the filter. Otherwise, the filter
works in a regular manner.
Figure 4: Adaptive factor of the SVD‐aided AEKF

7. Conclusions
    This paper presents the design and numerical analyses of Q- adaptive extended Kalman filtering
algorithm. An attitude estimation algorithm is designed by integrating SVD and EKF methods to
estimate the attitude angles and angular velocities. Processing of attitude sensors (magnetometer and
sun sensor measurements in this case) within the SVD method computes the Euler angle
measurements and their variances, and provides them to the filter as inputs. This filter also eliminates
the possibility of poorly-chosen initial attitude as it initializes the attitude using SVD method.
    Specifically, the Q adaptation method is proposed in this study. In case of process noise increment,
which may be caused by the changes in the environment or satellite dynamics, performance of the Q-
adaptive EKF is investigated. To adapt the EKF to the changing conditions its Q matrix is tuned by an
adaptive method. Since the measurement model of the SVD-aided EKF algorithm is linear, the
adaptation rule is similar to linear KF and easy to apply.
    For investigating the system modelling errors, one more case is implemented by implementing a
noise increment on the system. Here, the Q-adaptation rule is introduced for the EKF. Thus, the
attitude and angular rates of the satellite can be estimated accurately in spite of any change in the
process noise covariance.

8. References
[1] H. E. Soken and C. Hajiyev, “Estimation of Pico Satellite Attitude Dynamics and External
    Torques via Unscented Kalman Filter,” J. Aerosp. Technol. Manag., volume 6, no. 2, pp. 149–
    157, May 2014, doi: 10.5028/jatm.v6i2.352.
[2] J. C. Springmann and J. W. Cutler, “Flight Results of a Low-cost Attitude Determination
    Systems,” Acta Astronaut., volume 99, pp. 201–214, 2014, doi: 10.1016/j.actaastro.2014.02.026.
[3] C. Hajiyev and D. Cilden-Guler, “Review on Gyroless Attitude Determination Methods for
    Small Satellites,” Prog. Aerosp. Sci., volume 90, pp. 54–66, 2017, doi:
    10.1016/j.paerosci.2017.03.003.
[4] C. Hajiyev and M. Bahar, “Attitude Determination and Control System Design of the ITU-UUBF
     LEO1 Satellite,” Acta Astronaut., volume 52, no. 2–6, pp. 493–499, 2003, doi: 10.1016/S0094-
     5765(02)00192-3.
[5] B. Y. Mimasu and J. C. Van der Ha, “Attitude Determination Concept for QSAT,” Trans. Japan
     Soc. Aeronaut. Sp. Sci. Aerosp. Technol. Japan, volume 7, pp. 63–68, 2009, doi:
     10.2322/tstj.7.Pd_63.
[6] C. Hajiyev, D. Cilden, and Y. Somov, “Gyro-free attitude and rate estimation for a small satellite
     using SVD and EKF,” Aerosp. Sci. Technol., volume 55, pp. 324–331, 2016, doi:
     10.1016/j.ast.2016.06.004.
[7] D. Cilden, H. E. Soken, and C. Hajiyev, “Nanosatellite attitude estimation from vector
     measurements using SVD-AIDED UKF algorithm,” Metrol. Meas. Syst., volume 24, no. 1, pp.
     113–125, 2017, doi: 10.1515/mms-2017-0011.
[8] H. E. Soken, D. Cilden, and C. Hajiyev, “Attitude Estimation for Nanosatellites Using Singular
     Value Decomposition and Unscented Kalman Filter,” 2015.
[9] D. Cilden-Guler, H. E. Soken, and C. Hajiyev, “SVD-Aided UKF for Estimation of Nanosatellite
     Rotational Motion Parameters,” WSEAS Trans. Signal Procesing, volume 14, pp. 27–35, 2018,
     Accessed:             Apr.            07,           2021.           [Online].          Available:
     https://www.wseas.org/multimedia/journals/signal/2018/a085914-062.php.
[10] B. Zheng, P. Fu, B. Li, and X. Yuan, “A Robust Adaptive Unscented Kalman Filter for
     Nonlinear Estimation with Uncertain Noise Covariance,” Sensors, volume 18, no. 3, p. 808, Mar.
     2018, doi: 10.3390/s18030808.
[11] J. Wang, T. Xu, and Z. Wang, “Adaptive Robust Unscented Kalman Filter for AUV Acoustic
     Navigation,” Sensors, volume 20, no. 1, p. 60, Dec. 2019, doi: 10.3390/s20010060.
[12] C. Hajiyev and H. E. Soken, “Robust Adaptive Unscented Kalman Filter for Attitude Estimation
     of Pico Satellites,” Int. J. Adapt. Control Signal Process., volume 28, no. 2, pp. 107–120, 2014,
     doi: 10.1002/acs.2393.
[13] G. Wahba, “Problem 65-1: A Least Squares Estimate of Satellite Attitude,” Soc. Ind. Appl.
     Math.      Rev.,    volume      7,    no.    3,    p.    409,    1965,    [Online].    Available:
     http://www.malcolmdshuster.com/FC_Wahba_1965_J_SIAM.pdf.
[14] E. Thébault, C. C. Finlay, C. D. Beggan, P. Alken, and E. Al., “International Geomagnetic
     Reference Field: the 12th generation,” Earth, Planets Sp., volume 67:69, 2015, doi:
     10.1186/s40623-015-0228-9.
[15] D. A. Vallado, Fundamentals of Astrodynamics and Applications (3rd Ed.), volume 21. USA:
     Microcosm Press/Springer, 2007.
[16] J. R. Wertz, Spacecraft Attitude Determination and Control, no. 73. Dordrecht, Holland:
     D.Reidel Publishing Company, 2002.
[17] C. Hajiyev, H. E. Soken, and D. Cilden-Guler, “Q-Adaptation of SVD-aided UKF Algorithm for
     Nanosatellite Attitude Estimation,” IFAC-PapersOnLine, volume 50, no. 1, pp. 8273–8278, Jul.
     2017, doi: 10.1016/j.ifacol.2017.08.1399.
[18] C. Hajiyev, H. E. Soken, and D. Cilden-Guler, “Nontraditional Attitude Filtering with
     Simultaneous Process and Measurement Covariance Adaptation,” J. Aerosp. Eng., volume 32,
     no. 5, p. 04019054, Sep. 2019, doi: 10.1061/(ASCE)AS.1943-5525.0001038.
[19] C. Hajiyev and H. E. Soken, “Robust Estimation of UAV Dynamics in the Presence of
     Measurement Faults,” J. Aerosp. Eng., volume 25, no. 1, pp. 80–89, Jan. 2012, doi:
     10.1061/(ASCE)AS.1943-5525.0000095.