Available online at www.sciencedirect.com Available online at www.sciencedirect.com
Procedia Engineering
ProcediaProcedia Engineering 00 (2011) 000–000 Engineering 15 (2011) 526 – 530 www.elsevier.com/locate/procedia
Advanced in Control Engineering and Information Science
Satellite Attitude Tracking Controller Optimization based on Particle Swarm Optimization Shi-Ming Chen*, Yun-Feng Dong School of Astronautics, Beijing University of Aeronautics and Astronautics, Beijing, 100191,China
Abstract Parametric design of satellite tracking controller is an essential for almost modern satellites. To avoid selecting parameters by traditional experience, particle swarm optimization (PSO) algorithm is proposed to optimize the parameters of satellite attitude tracking controller, which is a radial basis function neural network based sliding mode controller. The mechanism of sharing information among particles is introduced to obtain solution. Numerical simulation results show that PSO can reach the optimal solution within 20 iterations. By updating the position and velocity of particles to seek solutions, PSO provides strong global search ability and convergent performance.
© 2011 Published by Elsevier Ltd. Selection and/or peer-review under responsibility of [CEIS 2011] Keywords: particle swarm optimization; optimization; tracking; attitude; satellite
1. Introduction Spacecraft attitude tracking control has been studied intensively in the past few decades [1-7], because of the increasing demands on taking pictures from objects far away, or maintaining high precision pointing towards object on the ground [1]. Chen [2] designed a sliding mode controller for spacecraft tracking problems. This was illustrated by an example of multi-axis attitude tracking maneuvers. Kowalchuk [3] also designed a sliding control law under system uncertainties. Gao [4] designed a sliding mode controller with PID sliding surface. In order to avoid inherent chattering of sliding mode control, Wu [5] designed a disturbance observer in the sliding mode controller. Chen [6] proposed a sliding mode control law based on radial basis function (RBF) neural network for satellite attitude tracking using reaction wheels. Yoon [7] designed an adaptive tracking controller to deal with the actuator uncertainties. These controller parameters often designed by traditional experience. PSO was introduced by Kennedy and Eberhart [8] in 1995. It was inspired by the swarming behavior as is displayed by birds, fishes, or human social behavior being influenced by other individuals. Zhang [9] introduced proposed particle swarm optimization (PSO) to optimize the parameters of the satellite attitude
*
Corresponding author. Tel.: +86-10-82316396; fax: +86-10-82339186. E-mail address:
[email protected] (Shi-Ming Chen),
[email protected] (Yun-Feng Dong).
1877-7058 © 2011 Published by Elsevier Ltd. doi:10.1016/j.proeng.2011.08.100
527
Shi-Ming Shi-Ming Chen andChen Yun-Feng / Procedia Engineering 15 (2011) 526 – 530 ,et al/Dong Procedia Engineering 00 (2011) 000–000
2
controller. Hu [10] improved the basic PSO algorithm and applied to flexible satellite attitude controller parameters optimization. The optimization showed better performance. In this paper, for the satellite attitude tracking problem, we applied PSO algorithm to optimize the controller parameters based on the ref [6]. 2. Satellite Attitude Tracking Control Problem 2.1. Dynamics and Kinematics of Satellite Consider a rigid spacecraft with N reaction wheels, the dynamic equations of the spacecraft can be written as Eqn. (1).
Jω = −ω × Jω − ω × As hs − As us + Td
(1)
as described in [6], J is the total body inertia matrix minus the radial moments of inertia of wheels, and ω is the body rate vector of the spacecraft. The notation ω× denotes the skew-symmetric matrix. As is the setup matrix of N wheels, hs is angular momentum of wheels and us are the control torques. Td are external torques on the satellite. The differential equation that governs the kinematics in terms of the Modified Rodrigues Parameters (MRPs) is given by Eqn. (2).
σ = G (σ )ω
(2)
where σ are MRPs, G(σ) is a function of σ in [6]. 2.2. Tracking Error Equations Introduce the orbital frame as the reference frame, and assume the σd denotes the desired attitude with the orbital frame to inertial frame, and define σe as the attitude error from the body frame to the orbital frame. Then the tracking error dynamics are given by Eqn. (3-4).
(
)
Jω e = − (ωe + R (σ e )ωd ) (J (ωe + R (σ e )ωd ) + As hs ) + J ωe R (σ e )ωd − R (σ e )ωd − As u s + Td
(3)
σ e = G (σ e )ωe
(4)
×
×
2.3. Tracking Controller Design The sliding surface is defined as Eqn. (5). (5)
s = ωe + Kσ e
where K is a diagonal positive matrix. The sliding mode controller is described in Eqn. (6-7).
(
)
× × ˆ As 0us = −(ωe + R(σ e )ωd ) (J 0 (ωe + R(σ e )ωd ) + As 0 hs ) + J 0 ωe R(σ e )ωd − R(σ e )ω d + J 0 KG (σ e )ωe − τ s + y
(6)
s = ω e + Kσ e
(7)
528
Shi-Ming Chen and,et Yun-Feng DongEngineering / Procedia Engineering 15 (2011) 526 – 530 Shi-Ming Chen al / Procedia 00 (2011) 000–000
3
where “0” means the system nominal value, τs=[τs1, τs2, τs3]T , and τsi=-knisign(si)-kmisi, the kni and kmi are positive. ŷ is the estimate value of uncertainties by radial basis function neural network, as described in Eqn. (8). m
(
yˆ j = ∑ wij exp − s − Ci i =1
2
2bi
2
)
(8)
where Ci=[c1i, c2i, c3i], i=1,2,…,m, represents the center of the ith Gaussian function, bi is a measure of its width and wi represents the output weight from that node to the jth output. m is the number of employed neurons at hidden layer. 3. Particle Swarm Optimization for Controller Parametric Optimization 3.1. Basic PSO Algorithm PSO consists of a swarm of particles moving in an D-dimensional, real-valued search space of possible problem solutions [11]. Every particle represents a solution to a specific problem. In other words, a particle is a point in search space in which we are attempting to find an optimal location with respect to a fitness function f. For the ith particle, each particle has a position vector X(x1, x1,…, xD) encoding a candidate solution to the problem, and a velocity vector V(v1, v1,…, vD). Moreover, each particle contains a small memory that stores its own best position seen so far lPbest and a global best position gPbest obtained through communication with its neighbor particles. At each time step t, the velocity is updated and the particle is moved to a new position. This new position is calculated as the sum of the previous position and the new velocity, as given in Eqn. (9). x ij ( t + 1) = x ij ( t ) + v ij ( t + 1)
(9)
where i=1,2,…,m expresses m particles, j=1,2,…,D represents the dimension of particles. The update of the velocity from the previous velocity to the new velocity is determined by Eqn. (10). v ij ( t + 1) = w ⋅ij ( t ) + c1 rand() (lPbest ij − x ij ( t ) ) + c 2 rand() (gPbest j − x ij ( t ) )
(10)
where w is inertia weight, c1,c2 are learning factors, rand() is a random function to produce random numbers in [0,1]. 3.2. PSO for controller parametric optimization The control parameters are defined as the input variables of PSO, such as K, Km, Kn. In the general control system design, integrated error, integrated absolute error, integrated square error etc, are used as evaluation functions. While for the satellite control system, the fitness f of each particle is given by Eqn. (11). T
f = ∫ t e (t )dt 0
where t is the control system running time, e(t) is the error of control result.
(11)
4
Shi-Ming Shi-Ming Chen andChen Yun-Feng / Procedia Engineering 15 (2011) 526 – 530 ,et al/Dong Procedia Engineering 00 (2011) 000–000
4. Simulation and Result The satellite inertia is equal to matrix [220 0 0; 0 200 0; 0 0 175]kgm2, and the uncertainty inertia is given by matrix [-15 10 -20; 10 10 30; -20 30 -10] kgm2. The inertia of each reaction wheels is taken as 0.4 kgm2, and the nominal reaction wheels’ install matrix is equal to [1 0 0 -1/√3; 0 1 0 1/√3; 0 0 1 1/√3]. The initial MRPs of the satellite is equal to [0.01, -0.02, 0.04]T , and the initial angular velocity is equal to [-0.005, 0.002, -0.008]T rad/s. The initial wheel speed is equal to [3000, 3000, 3000]T rpm. The desired angular velocity is equal to matrix 0.001×[sin(2πt/600), sin(2πt/500), sin(2πt/300)]T rad/s. For the remainder parameters we can refer [6]. The PSO algorithm’s learning factor c1 is equal to 1.4962, c2 is equal to 1.4962. Inertia weight w is equal to 0.7298. Particles number is equal to 40. Maximum iterations is equal to 40. The fitness trend of PSO is shown in Fig. 1. As seen in the figure, PSO get the optimal result at 20th iteration.
Fig. 1. Convergence curve of PSO algorithm
Fig. 2 and 3 are the attitude tracking error curves compared PSO optimal with the curves in refer [6]. These curves indicate angular variations and rate variations in three axis. The figures illustrate that PSO optimization parameters are much better than that in refer [6], the MRPs error and angular velocity error are close to 0 at about 24s, but at 180s as in refer [6]. Therefore the PSO is effective for the parametric optimization of satellite attitude tracking controller.
Fig. 2. (a) Attitude tracking error by PSO optimization; (b) Attitude tracking error in refer [6]
529
530
Shi-Ming Chen and,et Yun-Feng DongEngineering / Procedia Engineering 15 (2011) 526 – 530 Shi-Ming Chen al / Procedia 00 (2011) 000–000
Fig. 3. (a) Angular velocity tracking error by PSO optimization; (b) Angular velocity tracking error in refer [6]
5. Conclusion For the parametric optimization of satellite attitude tracking controller, this paper proposes a PSO algorithm for a RBF neural network sliding mode controller. The numerical simulation result shows that PSO algorithm can be applied for the parametric optimization of satellite attitude tracking controller. References [1] Kristiansen R, Nicklasson PJ, Gravdahl JT. Satellite attitude tracking by quaternion-based backstepping. In: Proceedings of the 16 th IFAC World Congress, 2005. [2] Chen YP, Lo SC. Sliding mode control for spacecraft attitude tracking maneuver. IEEE Trans Aerosp Electron Syst 1993;29(4): 1328-1333. [3] Kowalchuk SA, Hall CD. Spacecraft attitude sliding mode controller using reaction wheels. In: AIAA/AAS Astrodynamics Specialist Conference and Exhibit, AIAA 2008-6260. [4] Gao D, Lv J. Sliding mode control for a satellite attitude tracking system. In: Systems and control in Aerospace and Astronautics, ISSCAA, 2008, p.1-4. [5] Wu S, Sun Z, Li H. Sliding mode controller design for rigid satellite attitude tracking. In: IEEE International Conference on Robotics and Biomimetics, 2009, p.2238-2243. [6] Chen S, Dong Y, Su J. Sliding mode control using RBF neural network for spacecraft attitude tracking. In: Intelligent Computing and Intelligent Systems ICIS, 2010, vol.2, p.211-214. [7] Yoon H, Tsiotras P. Adaptive spacecraft attitude tracking control with actuator uncertainties. In: AIAA Guidance, Navigation, and Control Conference, AIAA 2005-6392. [8] Kenndy J, Eberhart RC. Particle swarm optimization. In: International Conference on Neural Networks, 1995,vol.4, p.19421948. [9] Zhang JR, Wang H. PSO-based controller parameters design for spacecraft. Transcations of Beijing Institute of Technology, 2010;30(4):425-428. [10] Hu D, Sarosh A, Dong YF. An Improved Particle Swarm Optimizer for parametric optimization of flexible satellite controller. Appl Math Comput, 2011;217(21):8512-8521. [11] Vesterstrom J, Thomsen R. A comparative study of differential evolution, particle swarm optimization, and evolutionary algorithms on numerical benchmark problems. In: Evolutionary Computation Congress CEC, 2004, vol.2, p.1980-1987.
5