INNOSAT ATTITUDE CONTROL SYSTEM BASED ON ADAPTIVE NEURO-CONTROLLER

The current research focuses on the designing of an intelligent controller for the Attitude Control System (ACS) of the Innovative Satellite (InnoSAT). The InnoSAT mission is to demonstrate local innovative space technology amongst the institutions of higher learning in the space sector. In this study, an Adaptive Neuro-controller (ANC) based on the Hybrid Multi Layered Perceptron (HMLP) network has been developed. The Model Reference Adaptive Control (MRAC) system is used as a control scheme to control a time varying systems where the performance specifications are given in terms of a reference model. The Weighted Recursive Least Square (WRLS) algorithm will adjust the controller parameters to minimize error between the plant output and the model reference output. The objective of this paper is to analyse the time response and the tracking performance of the ANC based on the HMLP network and the ANC based on the standard MLP network for controlling an InnoSAT attitude. These controllers have been tested using an InnoSAT model with some variations in operating conditions such as varying gain, measurement noise and disturbance torques. The simulation results indicated that the the ANC based on the HMLP network is adequate to control satellite attitude and give better results than the ANC based on the MLP network. Journal of ICT, 10, pp: 45–65 46


INTRODUCTION
Small satellites have become more popular in the last few decades due to their relative simplicity resulting in an attractive short period of design and in low cost (Bushenkov, 2002;Martinelli & Pena, 2005). Beginning in 1999, the California Polytechnic State University and the Stanford University developed the CubeSat specifications to help universities worldwide to perform space science exploration. The InnoSAT is a nano class satellite and is based on the basic unit CubeSat. A CubeSat is a type of miniaturized satellite for space research that usually of 10cm x 10cm x 10cm, a volume of exactly one liter, weighs no more than one kilogram, and typically uses commercial, off-theshelf electronics components (Gregory, 2004). The InnoSAT consists of a few CubeSats stacked together, which carries a few payloads designed by Astronautic Technology Sdn. Bhd. (ATSB) and Malaysia Universities. Figure  1 shows the external view of the InnoSAT (Yusoff, Hamzah & Arshad, 2009).

Figure 1. InnoSAT External View
includes several kinds of sensors, actuators and an on-board computer that processes the data through a control algorithm (Martinelli & Pena, 2005).
The MLP network is a variant of the Multilayer Feedforward neural network. It can be trained to form arbitrary decision surfaces in the input space. However, the training process of the multilayer perceptron takes a large computation time and often leads to local minimum problems (Mat Isa & Mamat, 2010). In the satellite attitude control system, a few controllers have been developed by using the neural network (Krishnakumar, Rickard & Bartholomew, The Attitude Control System (ACS) is part of the attitude determination and control system payload. The ACS fully operates as a three-axis attitude stabilization control system. Attitude refers to the coordinate for satellite movement in space where the coordinates are the data of X, Y and Z axes. The data are the main information to evaluate the movement of the satellite (Yaakop, Yaacob, Saad & Harihran, 2009). The usual ACS used in small or large satellites includes several kinds of sensors, actuators and an on-board computer that processes the data through a control algorithm (Martinelli & Pena, 2005).
The MLP network is a variant of the Multilayer Feedforward neural network. It can be trained to form arbitrary decision surfaces in the input space. However, the training process of the multilayer perceptron takes a large computation time and often leads to local minimum problems (Mat Isa & Mamat, 2010). In the satellite attitude control system, a few controllers have been developed by using the neural network (Krishnakumar, Rickard & Bartholomew, 1995;Hao Sun & Zhang, 2004;Talebi & Patel, 2005;Sivaprakash & Shanmugam, 2005). The development of an intelligent real time control system based on neural network is possible for the satellite in space that has been exposed to non-probabilistic uncertainties such as sun flare and time-dependant noises in measurement (Zak, 2003).
A few performance comparisons have been done between the adaptive neurocontroller based on the HMLP network and other controllers. The results show that the ANC based on the HMLP network have given significant improvement in the performance of controlling unstable systems (Sharun, Mashor, Jaafar, Yaacob & Norhayati, 2010a;Sharun et al., 2010b& Sharun et al., 2010c). In the current study, the advantages of the HMLP network and the WRLS algorithm are combined to improve the performance of tracking control techniques in various operating conditions such as noise, varying gain and disturbance torques.

MODEL OF SATELLITE
Since the InnoSAT model is dealing with second-order systems, some damping control must also be provided to improve stability. Thus the control torques will have to include a term that is dependent on the attitude rates to be measured or estimated. The control torques to be activated are normally a function of the attitude errors. The simplest torque control law is based on the Euler angle errors. For a satellite with a diagonal inertia matrix and small Euler angle rotations, the attitude dynamic equations can be approximated as (Sidi, 2001):         and  are fixed model parameters and their values are chosen for any desired stable response for which the controlled system is expected to acquire. 6. Page 52, paragraph 2, line 1 and 2: missing symbol  and    whereas the Model Reference Adaptive Control (MRAC) has been chosen to be the controller scheme. Meanwhile, a Weighted Recursive Least Square (WRLS) algorithm is used as an adjustment mechanism to adjust the controller parameters in order to improve the stability of the satellite model's response. Mashor (2007) proposed the Model Reference Adaptive Control (MRAC) system as shown in Figure 2. In this MRAC, a reference model is chosen to generate the desired output trajectory and to ensure the output of the controlled system tracking the desired reference output. In order to achieve the desired system performance in the sense of the closed-loop stability, adaptive laws are used to update the controller parameter. A stable linear continuous-time reference model is specified by the following differential equation (Mashor, 2007):

Model Reference Adaptive Control System
(4) wherer r (t) is the reference input and is the reference model output; a and b are fixed model parameters and their values are chosen for any desired stable response for which the controlled system is expected to acquire. The model following error is defined by: Hybrid Multi-Layered Perceptron Network Cybenko (1989) and Funahashi (1989) have proved that the Multi-Layered Perceptron (MLP) network with one hidden layer is sufficiently complete to approximate any continuous function with reasonable accuracy. However, the training process of the MLP takes a large computation time and often leads to local minima problem. To reduce this problem, the MLP network with linear connection, called the Hybrid Multi-Layered Perceptron (HMLP) network was introduced which proved to have better performance than the conventional MLP network (Mashor, 2000).
In this current study, a HMLP network with one hidden layer as shown in Figure 3 has been selected as the basis for the ANC. The network allows the inputs to be connected directly to the output nodes with some weighted connections to form a linear system (dotted line connections) parallel with the original non-linear system from the standard MLP model (continuous line connection). These additional linear input connections do not significantly increase the complexity of the MLP network since the connections are linear. Since the parameters of the network appear linearly within the network model, the simple RLS algorithm is used to train the network. In this paper, both controllers have used the Weighted Recursive Least Square (WRLS) algorithm as a mechanism to adjust the controller parameters.
The HMLP network with one hidden layer can be expressed by the following equation: where and f or 1 ≤ j ≤ n h denote the weights in the first layer, weights in the second layer and weights of the extra linear connections between the input and the output layers, respectively. Meanwhile, and denote the thresholds in the hidden nodes and the inputs that are supplied to the input layer, respectively. The number of input nodes and hidden nodes are represented by n i and n n respectively. F (.) is an activation function that is normally selected as a sigmoid function: The weight and and the threshold, are unknowns and should be selected to minimize the prediction error. They are defined as: where y (t) and ŷ (t) are the actual and the network outputs, respectively.

Adjustment Mechanism
The least square algorithm is one of the most used parameter estimators. Basically, this algorithm minimizes the cost function of the controlled output. The corrective adjustment is designed to make the satellite output approach the desired output. When applying to parameters or state estimation, the recursive least square algorithm presents two advantages, which are: to avoid matrix inversion in the presence of uncorrelated measurement errors, and needing smaller matrix sizes which means less need of memory storage (Pardal, Kuga & Moraes, 2009). In order to deal with parameters of varying plants, a weighted recursive least square (WRLS) will be used. Some modifications are required to enable the WRLS algorithm to estimate the controller parameters instead of the conventional estimation of plant parameters.
Journal of ICT,10, 52 For all t ≥ t 0, given o (t 0 ) and set P, (t) = α [ I ], the WRLS estimate θ (t) using the following recursive equations (Mashor, 2007): Equation (9) needs to be modified to become: where e is the difference between the plant output and the reference input.
is the information vector that consists of the controller inputs and is the vector of controller parameters. Other symbols are defined and assigned according to the standard WRLS algorithm that could be found in Astrom (1995).
Another modification that is required to speed up the learning process is resetting the covariant matrix and forgetting factor, if the model following error becomes significantly large. The resetting is based on the following equation: (13)

RESULTS AND DISCUSSIONS
In this section, the simulation results of the InnoSAT model are presented. The simulation results were produced for the controllers using some operating conditions such as varying gain, noise and disturbance. The performances of the controllers were evaluated based on time response and tracking performance in response to the model reference output. The InnoSAT characteristics and initial conditions for active control are shown in Table 1.        The transfer function for roll, pitch and yaw axes after substituting the parameter value of the InnoSAT become: For this comparison, the InnoSAT model can be described by a different equation of the discrete form:        ICT,10, 54 (17) where is a varying gain are the controller output and are the constant disturbance torque. Meanwhile and are the output from the InnoSAT model for the Roll, Pitch and Yaw axes. Model reference has been selected as: (18) where r(t) is a square wave reference input signal. Parameter and have been chosen such that a desired trajectory is obtained for the plant output to follow. The cost functions for the model following has been set to: (19) where is the proportional error and is the differential error.
With the same number of input, hidden and output nodes, the HMLP network will have extra weights that are equal to the number of input nodes. The equation for calculating the number of weight can be referred to Mashor (2000). For the comparison to be fair, the ANC based on the MLP network with extra hidden node is also considered. Therefore, the HMLP network will be assigned to have 3 hidden nodes whereas the MLP network with 5 hidden nodes is also considered for comparison.
The HMLP network with 3 hidden nodes (HMLP) will have 35 weights, the MLP network with 3 hidden nodes (MLP3) will have 27 weights and the MLP with 5 hidden nodes (MLP5) will have 45 weights. Thus, in the comparison of the ANCs the MLP network with 5 hidden nodes will have an extra weight over the HMLP network with 3 hidden nodes.
The input reference for this simulation is a square wave and step input. Figure 4 shows the varying operating conditions such as the varying gain, measurement noise and step disturbance that have been added into the system.
 is the information vector that consists of the controller inputs and    is the vector of controller parameters. 7. Page 52, paragraph 3, line 2: missing symbol  and  Another modification that is required to speed up the learning process is by resetting the covariant matrix  and forgetting factor , if the model following error becomes significantly large.
8. Page 54, paragraph 1, line 1: missing symbol   ,   ′ and   ′ where    is a varying gain,   ′ are the controller output and   ′ are the constant disturbance torque. 9. Page 54, paragraph 1, line 2: missing symbol   and .
Meanwhile   and  are the outputs from InnoSAT model for Roll, Pitch and Yaw axes.
Parameter   = 1   = −0.15 and   = 0.15 have been chosen such that a desired trajectory    is obtained for the plant output    to follow.
 is the information vector that consists of the controller inputs and    is the vector of controller parameters.
7. Page 52, paragraph 3, line 2: missing symbol  and  Another modification that is required to speed up the learning process is by resetting the covariant matrix  and forgetting factor , if the model following error becomes significantly large.
8. Page 54, paragraph 1, line 1: missing symbol   ,   ′ and   ′ where    is a varying gain,   ′ are the controller output and   ′ are the constant disturbance torque.
Meanwhile   and  are the outputs from InnoSAT model for Roll, Pitch and Yaw axes.
Parameter   = 1   = −0.15 and   = 0.15 have been chosen such that a desired trajectory    is obtained for the plant output    to follow.
 is the information vector that consists of the controller inputs and    is the vector of controller parameters.
7. Page 52, paragraph 3, line 2: missing symbol  and  Another modification that is required to speed up the learning process is by resetting the covariant matrix  and forgetting factor , if the model following error becomes significantly large.
8. Page 54, paragraph 1, line 1: missing symbol   ,   ′ and   ′ where    is a varying gain,   ′ are the controller output and   ′ are the constant disturbance torque.
Meanwhile   and  are the outputs from InnoSAT model for Roll, Pitch and Yaw axes.
Parameter   = 1   = −0.15 and   = 0.15 have been chosen such that a desired trajectory    is obtained for the plant output    to follow.
 is the information vector that consists of the controller inputs and    is the vector of controller parameters.    Step Disturbance  Performances of the ANC controllers are computed and compared in Table 2 to Table 4 for Roll (X), Pitch (Y) and Yaw (Z) axes. Figure 5 illustrates the step response of the controllers while Figure 6 shows the output response with square wave input. The analysis indicates that the HMLP controller produced better results for all the axes where the percentage of overshoot, settling time and percentage of undershoot are significantly less compared to the other MLP controllers. Only in terms of rise time, the MLP controller with 5 hidden nodes produced a better rise time for all the axes but the responses had delays and more than 25% undershoots.
Here, the delay time for Roll, Pitch and Yaw axes are 12.97s, 14.15s and 13.00s, respectively. In other words, the HMLP still provides a faster response without a delay or undershoot. On the other hand, the output response of the MLP controllers has a longer settling time and the percentage of overshoot is more than 25% for the Pitch axis.

Figure 5.
Step Response of HMLP and MLP Controllers for Unity Gain By referring to Figure 5 and 6, the output response at unity gain for all the axes shows that the ANC controllers can track smoothly the model reference. However, the MLP controllers have delay time and undershoot which make it take more time to converge.  Figure 7 shows the output response of the ANC controllers at varying gain where the HMLP controller asymptotically follows the desired response at the high gain but degrades with small oscillations at the low gain. Meanwhile, the output response of the MLP controllers is even worse especially for the Pitch axis where it has divergence output response.  Figure 8 shows the system is subjected to measurement noise known as Gaussian white noise sequence with zero mean and a variance of 0.00013. It is rather difficult to distinguish the performance between the HMLP and the MLP controllers in these figures. This is because the plots show that the MLP controllers can produce results that are as good as the HMLP controller. For the Roll and Pitch axes, the output response of the HMLP is slightly better than the MLP controllers but the response for the Yaw axes are degraded. It also can be observed that the simulation results for the HMLP and the MLP controllers are capable of following the output of the reference model and remain stable under measurement noise.  (b) show the response of the system when a step disturbance with a strength of 0.05 has been introduced between 300s and 600s. The output response from the HMLP controller for all the axes is better than the output response from the MLP controllers due to its ability to converge in a shorter time after disturbance. Meanwhile, the MLP controllers have unstable output response for the Roll and Yaw axes. From the simulation result, it can be said that the ANC based on the HMLP network can improve the efficiency of attitude stabilization better than the ANC controllers based on the standard MLP network.

CONCLUSIONS
Based on the above analyses, the simulation results of the ANC based on the HMLP network and the ANC based on the standard MLP network are compared for satellite attitude control of the InnoSAT model. The comparison is based on the capability of the controlled output tracking the model reference output and also in terms of time response analysis. Here, the simulated data has used for the comparison. From Table 2 to Table 4, it can be observed that the performance of the HMLP controller has been significantly improved than the MLP controllers in terms of percentage of overshoot, percentage of undershoot and settling time. The simulation results signify that the HMLP controller is sufficient to control the satellite attitude with unpredictable conditions and disturbances. In addition, it has been shown that the ANC based on the HMLP network provide better tracking and is more stable compared to the standard MLP network with more hidden nodes.