Satellite Control System: Part I - Architecture and Main Components

This chapter provides introductory material to satellite control system (SCS). It is based on the author ’ s experience, who has been working in areas of SCS development, including designing, testing, operating of real SCS, as well as reviewing and overseeing various SCS projects. It briefly presents SCS generic futures and functional principles: tasks, architecture, basic components and algorithms, operational modes, simulation and testing. The chapter is divided into two parts, namely, Part I: SCS Architecture and Main Components and Part II: SCS Simulation, Control Modes, Power, Interface and Testing. This chapter focuses on Part I. Part II will be presented as a separate chapter in this book.


Introduction
Satellite control system (SCS) is a core, essential subsystem that provides to the satellite capabilities to control its orbit and attitude with a certain performance that is required for satellite mission and proper functioning of satellite payload operation. However, the first mandatory task for SCS is assuring satellite safe functionality; providing sufficient electric power, thermal and communication conditions to be able for nominal functioning during specified life time at different sun lightening conditions (including potential eclipse periods), protecting against life critical failures proving to satellite safe attitude in Safe Hold Mode (SHM). Without SCS or satellite guidance, navigation and control (GN&C) system, any Earth-orbiting satellite could be considered just as artificial space body, demonstrating the launcher capability for the satellite launch. As soon as a satellite is assigned to perform a certain space mission, it has to have SCS and a kind of special device (s)-payload (s), performing scientific, commercial or military tasks that are dedicated to this mission. Today, the widespread satellite and SCS design philosophy [1][2][3] is based on the concept that satellite is a platform (bus or transportation vehicle) for the very important person (VIP) passenger, which is the payload, and this platform is aimed just to deliver and carry it in space. This approach has been proven as successful or, at least, satisfactory from the commercial point of view. However, the first Soviet satellite "Sputnik" and further Soviet/Russian satellites were built and launched under the different philosophy that satellite is the main "personage" performing a space mission and the payload (unlikely the ballistic rocket war head (s)) is just one of the satellite subsystems that should be integrated into the satellite board under the satellite chief designer guidance, who is responsible for the mission performance. From the author's point of view, this approach has certain advantages following from the Aerospace System Engineering, integration and distribution functions, and responsibilities between the space mission participants. In this chapter, SCS is presented from this point of view, integrating conventionally separate satellite GN and C subsystems and devices into the joint integrated system, attitude and orbit determination and control system (AODCS). The main principles and features of this system are presented in this chapter.

Earth-orbiting satellites and the role of the control system
The first human-made Earth-orbiting satellite (Soviet Sputnik), Simplest Satellite (SS-1), was launched on October 4, 1957. This satellite was launched following the development of the Soviet intercontinental ballistic rocket R-7 (8 K71). Nevertheless, it started a new era of space human exploration (Figure 1).
• Inside, the satellite sphere was filled by nitrogen, and the temperature was kept within 20-23 deg. C with automatic thermoregulation-ventilation system (thermometer-ventilator).
• The satellite had no attitude control and was free rotated around its center of mass in orbit, keeping initial angular speed, provided by the separation pulse after the separation from the launch rocket. However, thanks to the four rod antennas that provided unidirectional radio transmission in the two-radio bends, HF and VHF, SS-1 evidently indicated its presence in space for all people over the world. Even amateur radio operators with amateur receivers could receive famous now signals: BIP, BIP, BIP … !! (Figure 2).
Since SS-1, about 8378 satellites were launched to year 2018 [6]. Early satellite launches were extraordinary events and demonstrated tremendous achievement of the launched state, the USSR (4 Oct. 1957, SS-1), the USA (31 Jan. 1958, Explorer 1) and Canada (29 Sep. 1962, Alouette, launched by Thor-Agena, a US two-stage rocket), but with time, satellite launches became ordinary and usually pursue a certain military or civil mission.
Among the civil missions (satellites), the following types can be determined as already conventional: navigation, communication, Earth observation, scientific, geophysics and geodetic, technology demonstration and developers training. These satellites are usually equipped with a kind of payload system(s) (radio/TV transmitter/transducer, radar, telescope or different scientific instrument, etc.) to perform certain dedicated space mission(s). For example, the first Canadian Earth observation satellite RADARSAT-1 (Nov 4, 1995-May 10, 2013; Figure 3) was equipped with a side-looking synthetic aperture radar (SAR) on board the International Space Station (November 1998, ISS; Figure 4) was installed a Canadian robotic arm for its assembling and maintenance.
There are satellites with special type of orbit such as polar (i = 90 deg), equatorial geostationary (GEO, i = 0 and h = 35,800 km) and Sun-synchronous provide orbital precession equal to Sun annual rate (i depends on satellite period) ( Figure 5).  Miniaturized low-cost satellites are as follows: small satellites (100-500 kg), microsatellite (below 100 kg) and nanosatellite (below 10 kg).
A large diversity of satellites serving for different missions is in space now. A widespread point of vew is that all of them are transportation platforms delivering and carrying in orbit dedicated to the planned space mission payload system, like a VIP passenger. For example, it could be the postman for the postal horse carriage for many years ago. Namely, the satellite with its control system (SCS) provides to the payload all conditions required for the mission performance (orbit, attitude, power, pressure, temperature, radiation protection and communication with ground mission control center (MCC)). That is why from the mission integration point of view, the SCS can be seen as the space segment integration bases that set their development and operation process in corresponding order. In turn, SCS as satellite subsystem also can be reviled and established in satellite onboard equipment architecture, combining the group of subsystems that are dedicated to orbit and attitude determination and control tasks. It could be done rather from the System Engineering than from the commercial practice point of view and would significantly streamline satellite development order and the degree of responsibility of all the developers.
It should be mentioned that such group of aircraft equipment in aviation has been named as GN&C Avionics; hence, for space, it can be named as the Spacetronics, and the heritage of system development and integration wherever it is possible should be kept. Essential difference with Avionics for the Spacetronics is that it should work for specified life time in space environment (dedicated orbit) after mechanical start-up impacts (overload, vibration) connected to the launch into the orbit. The verification of this capability is usually gained in special space qualification ground tests that imitate launch impact and space environment with thermo-vacuum and radiation chambers, mechanical load and vibration stands [7, 8].

SCS architecture
Today, for many satellites, GN&C onboard equipment can be presented by the following subsystems, performing related functions listed below: • Global Positioning System (GPS)-onboard satellite orbit and time determination • Propulsion system-orbit/attitude control system • Attitude Determination and Control System (ADCS)-satellite attitude determination and control Integration of these subsystems can be named as attitude and orbit determination and control system or Spacetronic system. Typically, AODCS includes the following components: • Onboard computer system (OBCS) or dedicated to AODCS electronic cards (plates) in Central Satellite Computer System (e.g., command and data handling computer (C&DH)) • Sensors

• Actuators
Basic AODCS architecture is presented in Figure 6. OBCS, onboard computer system; TLM, telemetry data and commands; PL, payload; PS, propulsion system; RW, inertia reaction wheels; MTR, magnetic torque rods; GPS, satellite navigation Global Positioning System; MAG, 3-axis magnetometer; SS, 2-axis Sun sensor; HS, horizontal plane sensor; ST, star tracker; RS, angular rate sensor; EP, electric power; TR, temperature regulation; VP, vacuumed protection; RP, radiation protection. Depending on required reliability and life time, each component can be a single or redundant unit. Unlike airplanes, satellite is an inhabitant space vehicle that is operated from the ground. The operation is usually performed via a bidirectional telemetry radio link (TLM) in S-band (2.0-2.2 GHz). Payload data downlink radio link (unidirectional) is usually performed via X-band (7.25-7.75 GHz;). For both links, usually the same data protocol standards are applied Figure 7.
Two subsystems can be allocated in AODCS architecture, namely, orbit determination and control subsystem (ODCS) and attitude determination and control subsystem (ADCS). Practically both subsystems are dynamically uncoupled; however, orbital control requires the satellite to have a certain attitude (as well as orbital knowledge itself), and attitude control requires orbit knowledge also. Hence, orbit (its knowledge) is essentially continuously required on satellite board where it is propagated by special orbit propagator (OP). Due to orbital perturbations (residual atmospheric drag, gravity and magnetic disturbances and solar pressure), satellite orbit changes over time and OP accumulates errors; its accuracy is degraded.
Before the application of satellite onboard GPS receivers, the satellite position and velocity were periodically determined on ground by the ground tracking radio stations (GS, dish antenna), and calculated on-ground orbital parameters were periodically uploaded to satellite OBCS to correct OP, to provide available accuracy. Now with GPS satellite, orbit can be calculated onboard autonomously, and OP can propagate data only during relatively short GPS outage periods. For some applications, orbital data uploaded from the ground still can be used, at least, for fusion with GPS-based OP.
For newly developed satellites with GPS, orbit maneuvers (correction, deorbiting, collision avoidance, special formation flying and orbit servicing missions) can be executed autonomously onboard at planned time or from ground operators using orbital knowledge and TLM commands to activate satellite orbit control thrusters.

AODCS components
Below AODCS components are presented to show their generic principles that can help for the system understanding and modeling. Generic design requirements are presented in [3]. Some design examples can be found in many sources, for example, [1,[9][10][11][12].

Sensors
AODCS sensors are designed to measure satellite orbital and attitude position and velocity. From the most general point of view, they can be considered as the vector measuring devices (VMD). The device can measure in space a physical vector R m that can be known (referenced) in a reference coordinate system R r . Three parameters can be measured: vector module R and two angles of its orientation Az and El (Figure 8).
Vector module and its orientation can be expressed as functions of its projections R x , R y , R z as follows: It can be noted that measurement of referenced vectors can be used for the determination of satellite position or angular orientation. A minimum of three vectors is required to determine satellite position and two to determine its attitude. If more vectors are measured providing informational redundancy, then such statistical estimation methods as least square method (LSM) and Kalman filter (KF) can be applied. Satellite velocity and angular rate can be derived by the differentiation of its position and attitude applying a kind of filter recommended by the filtering and estimation theory [13][14][15]. It should also be noted that if vector orientation is measured for the position determination, then satellite attitude should be known and vice versa.
Especial autonomous satellite navigation system (sensor) is the inertial navigation system (INS/inertial measurement unit (IMU)). It can be used for the determination of satellite position, velocity, orientation and angular rate simultaneously. INS is based on measuring with linear accelerometers and angular rate sensors ("gyros") the two vectors: satellite linear active acceleration a and angular rate ω. After integration, the system provides satellite position, velocity, attitude and angular rate. It is also assumed in INS theory that the vector of Earth gravity acceleration g is not measured by the system accelerometers, but it is computed from referenced mathematical Earth gravity field model. Essential INS disadvantage is that its errors grow with time. That is why, it has to be periodically corrected by such navigation aids as a pair of VMD used for the direct attitude determination. A detailed system description is out of this chapter's scope and can be found in many publications [16][17][18]. Only the use of angular rate sensors ("gyros") for determination of satellite attitude is briefly considered below.

Determination of satellite position and velocity (GPS)
Today, satellite GPS can provide onboard accurate data about position, velocity and time [19] (Figure 9).
GPS receiver is a radio range measuring device that measures distance from the desired satellite to navigation satellite constellation (NAVSTAR, USA; GLONASS, Russia; and GALILEO, Europe) and computes its position and velocity. GPS mea- ) of the vector from the desired satellite to the navigation satellite, and this system is invariant of the system orientation (satellite attitude). The distance between the desired satellite and navigation satellite is measured by measuring the time delay Δt between the time t s of the radio pulse transmitted by navigation satellite and the reception time t r of its reception by GPS receiver installed on the desired satellite Δt ¼ t r À t s . Measuring the distance allows to determine the desired satellite relative position (relatively to navigation satellite), and using known navigation satellite position that is continuously received by the receiver for every tracking satellite in the navigation message (NM) converts it in absolute position. A minimum of three navigation satellites should be simultaneously traced by the receiver to determine position and velocity. Then satellite position is the cross-point of three spherical surfaces of the position equation R i ¼ const, i ¼ 1, 2, 3. If more tracked satellites are available, then redundant information can be used to calibrate the onboard clock (using the four satellites) and to use least square method or Kalman filter. Four nonlinear algebraic equations (pseudo-range measurements) are usually used to determine satellite position with GPS receiver: where R i is the distance (pseudo-range) to the i th tracked navigation satellite, x i , y i , z i are the navigation satellite Cartesian coordinates received in the NM, x, y, z are the Cartesian coordinates of the desired satellite, c ¼ 299 792 458 km=sis the speed velocity and τ is the GPS receiver clock bias. Satellite position can be found by solving it (1) numerically. It could also be linearized by using redundant measurements (t > 4) with LSM or KF. Satellite velocity can be determined by the differentiation of its position. Finally, GPS receiver can provide to AODC OBC current satellite position and velocity in the reference (e.g., Earth-centered inertial (ECI) [14] frame x, y, z, V x , V y , V z and synchronized (by GPS) onboard time t s ).

TRIAD method (MAG, SS, HS)
The TRIAD method [10] is applied when two different vectors are measured. They usually can be any of the three pairs combined with the following three vectors: Earth magnetic induction vector B (measured with three-axis MAG), Sun vector S (measured with two-axis SS), and local vertical r (perpendicular to the local infrared radiation temperature surface, measured with the HS). At least two different not collinear vectors (their orientation) should be measured to determine satellite attitude that here is considered as satellite directional cosine matrix (DCM) and related three Euler angles of the certain order of rotations (e.g., 3-2-1) [9,10] .
Let us assume that two different physical nature not collinear vectors U ¼ S and V ¼ r are measured U m , V m by two vector measuring devises (SS and HS) installed on the satellite board and both these vectors are referenced in the reference frame as U r , V r . Let us choose U as the main vector and V as an auxiliary vector. Then an orthogonal coordinate system (frame) with basis unit vectors, q, r and s can be defined as follows [10,20]: These unit vectors expressed at a given time by measured values in measured frame or body frame and reference values in a reference frame define two rotation matrixes, C m and C r , as follows: where vectors q, r, s are written in the matrix form as matrix columns. Rotation matrix C br that defines attitude in the body frame with respect to reference frame is determined by the following formula: Three Euler angles of rotation, roll (ϕ), pitch (θ), and yaw (ψ), can be expressed through the elements of the matrix C br . Certain trigonometric formulas depend on the agreement about the order of the body rotations. For the order 3-2-1, the matrix C br is as follows [9,10]: where c and sstand for cosine and sine angle. Then, formulas for Euler angles can be derived from (6) as: Vector measured sensors If a pair from the three vectors (B, S, r-write as vectors) is measured, then following VMD in the pair can be used: SS (Figure 10), HS (Figure 11) and MAG (Figure 12).

LSM method for star tracker (ST)
If more than two vectors are measured and available for attitude determination, then LSM-BATCH method [10] can be applied to use informational redundancy for   increasing the stochastic estimation accuracy. This method basically can be applied for any set of VMD but is specifically convenient for the star tracker (ST), when some number (n) of navigation stars are in the device field of view (FOV) and are detected and tracked simultaneously, providing measured vectors R m to these stars that are referenced in the device space catalog R r (Figures 10-13).
Let us consider the transformation of the referenced vector R r in satellite body frame, where it is measured with the ST R m ¼ CR r (8) where C is the DCM of the rotation from the reference frame to satellite body frame and vectors R r and R m are written in the matrix form as matrix columns.
If the ST is in the tracking mode keeping in its FOV some n detected navigation stars, then it can be assumed that C is a small-angle matrix that is independent of the rotation order and can be expressed as follows: where α x , α y , α z are small angles of satellite rotation about X, Y, Z axis, respectively. Then subtracting from (8) R r , the following equation can be written: Transforming in (10) matrix product and taking into account random measurement errors, this equation can be represented in the following form: V is random measurement error vector (considered as the white Gaussian noise, having covariance matrix R ¼ rI).
Then this equation can be considered as a "standard" linear algebraic equation: If n ¼ 1, only a single vector is measured, then deth i ¼ ÀR rx R ry R rz þ R rx R ry R rz 0, and thus, determining all three angles of satellite attitude is impossible. If it takes informational redundancy, then optimal estimate (providing minimum of standard deviation of satellite attitude errors) can be found with the following LSM formula [13]:α

Direct measurement
Satellite angular rate ω (vector absolute angular velocity) can be measured directly by three-axis rate sensor (RS) that could have mechanical, optical, or microelectromechanical systems (MEMS) design [21,22] (Figure 14). Traditionally, independent of the design type, these RS are usually named "gyros," paying respect to their historical appearance for aerospace vehicle control purposes as a mechanical gyroscope (Figure 15).
Measured angular velocity vector ω can be used to determine satellite attitude by the integration of matrix kinematic Poisson's Equation [9,10]: where C ¼ C ib C ¼ C ib is the DCM between the inertial frame ECI and satellite body frame and ω ¼ 0 5 is skew symmetric matrix measured in the satellite frame components of vector of satellite absolute angular velocity. After determination of the DCM, satellite attitude in three Euler angles can be derived with Eq. (7) above. Unfortunately, gyro drift causes unlimited growing up errors in integrated attitude that require periodic corrections from two VMD, measuring the attitude directly (Figures 10-12). Body rate estimator Often, specifically for attitude stabilization (keeping or aka pointing) mode, satellite angular rate is estimated by using the so-called body rate estimator and is not measured directly by the RS. Indeed, using for attitude keeping mode small angles and linear approximation, we can simplify satellite attitude dynamics model [9] to three single-axis state equations and present it with the stochastic influences as follows: where ω is the angular velocity, α is the satellite deviation angle from the desired direction and z is the satellite deviation angle measurement with random Gaussian white noise error v. Realistically, it is a wide spectrum correlated process that components have spectral density , w i is exciting angular acceleration noise with spectral density q i ¼ 2σ 2 wi T wi (σ w i is standard deviation of the random angular acceleration . The linear KF can be applied to synthesize the estimator for the optimal estimation of the vector angle α and the vector of angular velocity ω, using noisy measurements z [9]:_ whereα andω are the optimal estimates of the angle α and the angular velocity ω correspondingly. Matrix KF (16) is separated in three independent scalar channels for X, Y, Z axis. Its weight coefficients k 12 and k 22 can be determined by solving KF Riccati Equation [13][14][15] for each of these three separate channels independently.
It can be shown that in the considering case, the steady-state (t ! ∞) KF coefficients are determined by the following formulas (identically for X, Y, Z axes, i = 1,2,3): where ξ i ¼ q i r i is the ratio of spectral densities of satellite disturbing torque noise to measured attitude error noise (assuming that both are white Gaussian noises). This parameter can be considered as the filterability index. Eq. (16) can be represented in the transfer function (Laplace operator) form as a second-order differential equation unit:ω where s is the Laplace operator, T i is the time constant, and d i is the specific damping coefficient that is determined by the following formulas: or in other words, the time constant is in inverse proportionality to the filterability index (in ¼ degree) and the specific damping coefficient is conventional for such a second-order unit 0.707 for each of the three channels.

Multisensory sensor unit (MSU)
As it can be seen from the consideration above, the use of directly measuring devices (e.g., ST and RS) for attitude and body rate determination has a disadvantage. The random noises are at the devices output, and they have to be filtered in the closed control loop of satellite attitude control that puts some constraints to choose the control law coefficients. However, using indirect body rate measurement, the state estimator (filter) unavoidably introduces additional phase delay in the control loop because of the consecutive inclusion of this filter in the control loop. To use the RS (gyro) and the integrator for body rate and attitude determination autonomously for a long time is not possible because of the accumulated attitude errors caused by the integration of the gyro drift. The following scheme (that is common in Aviation) can be considered as free from the disadvantages above. Let us assume that satellite attitude is determined in two ways: continuous integration of RS angular velocity (IMU) and using VMD, for example, ST. Then this ST is used to correct the attitude derived by the integration of RS output. The idea of MSU is shown in Figure 16.
In integrated IMU attitude (IMU = RS + integrator) as in Figure 14 above (three identical channels), α i (inertial angle) has been growing with time deterministic error δα due to the integration of RS bias δω and ST has random noisy error ΔαΔα. The difference of these signals is equal to the difference of system errors z ¼ δα À Δα. This difference is used for estimation of errors of IMU with a kind of filter, and after the compensation at the system output, the estimates (α andω) can be used for satellite control. As it can be seen, in this scheme the filter is not connected in the control loop, and consequently, it does not introduce additional phase delay; however, the scheme still performs its job to filter the noise and estimate RS bias. This scheme can be very effective in practice. It can be presented similar to Eqs. (15) and (16) as follows: IMU model equations : where δω is the RS error of measuring the angular velocity; δα is attitude error after the integration of the RS signal; zis IMU attitude error measurement with random Gaussian white noise error v Δα ¼ v, having spectral density r 1 ¼ 2σ 2 Δα T Δα (σ Δα is the standard deviation of the random error Δα, T Δα is its correlation time); and w 1 is the exciting noise of RS random drift with spectral density q 1 ¼ 2σ 2 w1 T w1 (σ w1 is the standard deviation of the random drift, T w is the w t ð Þ correlation time).
KF equations : where KF coefficients k 12 and k 22 are determined by (17), substituting there q 1 andr 1 instead of q and r.

Propulsion system (PS)
Satellite propulsion system [9,10] is usually designed for satellite orbital and/or angular control. In the first case, PS is commanded from the ground OC by TLM commands in some cases when satellite orbit has to be changed (orbit correction, deorbiting, collision avoidance), in the second controlled automatically from onboard AODCS. It consists of such typical elements as orbital and attitude thrusters (number and installation scheme depending on certain application), propulsion tank with associated pipes, valves, regulators, and electronics. General principles of PS act independently of the type (ion thrusters (0.01-0.1 N), liquid propellant and solid motor (100-10,000 N), cold gas (1-3 N)).
where M is the mass body, F is the external force, V P is the propellant exhaust velocity and m is the propellant mass. The term ÀV p dm dt is the propulsion force (propulsion thrust) (Figure 17).
In Section 3.2.2.1.2, it is always dm dt < 0, then T > 0. Usually for any propulsion system, let us introduce parameter specific pulse I sp , where If the satellite thruster is installed such as satellite point of the center of mass (CM) is located on the line of the action of the force T (red thruster in Figure 17), then the thruster can serve for satellite orbit correction, and the pulse of the control thrust causes increment of satellite velocity dV ¼ 1 M Tdt. If satellite thrusters are installed in such a way that having an arm L from the CM, then they create rotating torque (green reversible thruster pair in Figure 17) and can be used for attitude control (control torque is T r ¼ LT). And the increment in attitude angle for the time dt of the pair of thruster activation will be dα ¼ T r J dt. The expelled propulsion mass Δm can be calculated with the K. Tsiolkovsky formula [9,24] that follows from Eq. (22) where m 0 is the propellant initial mass. Photos of I. Meshchersky and K. Tsiolkovsky are presented (Figures 18 and 19).
Discrete pulse modulation control is usually used to minimize the consumption of the propellant for attitude control [9]. Examples of the gas thruster and the tank are presented in Figures 20 and 21.

Magnetic torque rods (MTR)
Magnetorquers are essentially sets of electromagnets. A conductive wire is wrapped around a ferromagnetic core which is magnetized when excited by the electric current caused by the control voltage applied to the coil. The disadvantage of this design is the presence of a residual magnetic dipole that remains even when the coil is turned off because of the hysteresis in the magnetization curve of the core. It is therefore necessary to demagnetize the core with a proper demagnetizing procedure. Normally, the presence of the core (generally consisting of ferromagnetic) increases the mass of the system. The control voltage is controlled by AODCS control output (Figures 18-20). The magnetic dipole generated by the magnetorquer is expressed by the formula:   where n is the number of turns of the wire, i is the current provided, and S is the vector aria of the coil. The dipole interacts with the Earth magnetic field, generating a torque whose expression is: where M is the magnetic dipole vector moment, B is the Earth magnetic field induction vector and T m is the generated magnetic torque vector. This equation in the scalar form is as follows: Typically, three coils are used; the three-coil assembly usually takes the form of three perpendicular coils, because this setup equalizes the rotational symmetry of the fields which can be generated; no matter how the external field and the craft are placed with respect to each other, approximately the same torque can always be generated simply by using different amounts of current on the three different coils (Figure 22).
It can be seen from Eq. (26) that MTR cannot generate the magnetic torque in the direction that is parallel to Earth magnetic field B (MkB) and it always is perpendicular to the Earth magnetic field vector T m ⊥B. Unfortunately, from Eq. (27), the required magnetic moments cannot be found, because it has zero determinant, and we cannot invert it.
However, the following approach can be used to find required vector M [9]. When we take cross-product of B with both sides of Eq. (26) and take into account that it is useless to apply M in parallel direction to B, and hence we can require that M⊥B and M Á B ¼ 0, then the following formula can be derived: Another MTR control method is the so-called B-dot control [25].
where k is control gate coefficient. As the result of (29) control, the satellite will reduce its body rate and is finally slow rotated along Earth's geomagnetic field line (vector B). Eventually it achieves its threshold of capture by the gravity gradient effect.
If the redundancy is required, it is provided by additional (redundant) coil with the same core (Figure 23).

Reaction/reaction-momentum wheels (RW/RMW)
Reaction wheels (RW), aka momentum exchange devices [9] or reactionmomentum wheels (RMW), have massive rotated rotor with big axial moment of inertia with respect to the axis of rotation. They are electrically controlled by the electric motors and the rotor is installed on the rotating motor shaft. The controlled voltage, applied to the control winding of the motor, controls its rotor angular speed. The product of the rotor angular acceleration _ Ω multiplied by its axial inertia I is the RW generated inertia control torque T i ¼ I _ Ω that is applied to the satellite body in opposite to the acceleration direction. Special embedded angular speed  sensor (tachometer) measures the motor rotor angular speed and allows organizing RW inertia torque control proportional to the applied control voltage. At least three RW, as in Figure 24, are required to produce control torque vector in threedimensional spatial, having desired value and pointed in the desired direction. Sometimes redundant unit of three redundant wheels or one with 4th redundant skewed wheel is applied to meet reliability requirements.
RW can generate control inertia torques T i only when they are accelerated or decelerated. With this torque, they cannot compensate a permanent disturbance torque T d ¼ const applied to satellite for a long enough time and come eventually to some maximum/minimum available speed aka the saturation speed. At that state T i becomes zero. That is why RW is usually applied with other types of actuators such as MTRs or gas thrusters to de-saturate the RW to use them as the source of T i again.
In general case, RW can be run around in some nominal angular speed Ω 0 . In this case they can be named as reaction-momentum wheel (RMW) and then just RW. Mathematically RW/RMW dynamics can be presented as follows. Let us consider satellite with RW unit angular momentum: where H ¼ Jω is the satellite absolute angular momentum vector (column matrix), ω is the vector of satellite absolute angular velocity, J ¼ J xx ÀJ xy ÀJ xz ÀJ yx J yy ÀJ yz ÀJ zx ÀJ zy J zz Then differentiating (31) in rotating with angular velocity satellite axis ω and using Euler's rigid body dynamics formula [9], we can get the following equation: where ω ¼  we can see two terms that have meaning of torques applied from the RMW unit to the satellite body: À _ h ¼ T i the inertial torque and Àω h ¼ T g the gyro torque. They are RMW generated torques that can be used for the satellite attitude control. Eq. (32) presents satellite attitude dynamics under the action of RMW torques. The RW dynamics can be presented similar to Eq. (32): where h w ¼ h þ h c is the absolute RW momentum, h c ¼ Iω is the carrier component of RW absolute momentum, QUOTE M w is the RW motor control torque, and M f is the RW friction torque.
Eq. (33) can be represented in the following form: where M f ¼ Àk e Ω À M df sgn Ω is the friction torque, k e is the motor natural damping coefficient, M df is the dry friction torque, and M w is the control motor torque.
The torque M f usually consists of two components: the viscous torque (counter electromotive voltage in the control coil) Àk e Ω and dry or Coulomb friction torque in the RMW bearings-M df sgn Ω. The control torque M w can be set as follows: where k Ω is the motor control damping coefficient, Ω 0 is the desired angular RMW speed, k T is the control torque coefficient, and T c is requested from AODCS OBC control torque. Taking into account Eq. (35), Eq. (34) can be rewritten in the following form: In the operator Laplace s-form (transfer function), Eq. (36) can be rewritten as follows: Ωz þk ez is the RW time constants, and. It should be noted that sometimes the RW control loop is more sophisticated. Special integrators could be connected into the loop to memorize and compensate the dry friction torques acting in bearings. Some small nominal rotating speed can be set for all three RMW to eliminate the dry friction torque having a pike when the wheel speed is zero Ω ¼ 0.
However, more representative case is when Ω 0 is set (usually in one direction as in Figure 23-axis Y) to provide to the satellite a gyro-stiffness (gyro-stabilization capability) with respect to another two axes X and Z.
Indeed, if we put in (32) that _ then it can be written as: where H y ¼ J y ω 0 , h y ¼ I y Ω 0 . In this case carrier orbital angular velocity ω 0 helps to increase satellite momentum H sy ¼ H y þ h y. Eq. (38) is known as three degrees of freedom of a free gyroscope precession [21] and represents the gyro-stabilization effect: that gyroscope vector H sy being free of disturbing torques can keep its direction and value in inertial spatial (Figure 25).

AODCS OBCS
Independently of sytem arhitecture; it is separate dedicated to AODCS computer, or a special AODCS card within central satellite C&DH computer, it is the integration element of AODCS [1,11]. AODCS system may consist of the computer (computer card) itself (OBC) and auxiliary intercommunication electronic units (electronic cards) AEU carrying DC/DC electric power conversion and I/O (analog and digital) interface and commutation functions.
OBC can be divided into two parts: the hardware (HW, power convertor, processor, input/output [I/O] convertors, non-volatile and volatile memory) and the software (SW, operation system [OS] and vital or functional software [VS/FS]) (Figure 26).
What makes the satellite OBC essentially different for the airplane OBC is that its SW can be uploaded and updated from the ground and during operation and scheduled maintenance. OS OBC includes generic computer programs: program of I/O interface, time schedule (dispatcher), embedded test, timer and standard mathematic functions. Satellite SW often is considered as satellite SW subsystem that is verified during development (with mathematical high-fidelity Matlab/Simulink simulators and semi-natural processor-in-the-loop (PIL) simulators). SW subsystem should be tested to meet SW requirements [26,27]. The flight version of the SW subsystem is supported with operation real-time satellite simulators (RSS) [1,11] located in operation center. It should be mentioned that only final AODCS (OBC (HW + SW), sensors, and actuators) functional test [2] that should be performed in the Space Qualification Laboratory [7] during satellite Space Qualification and Acceptance campaign can really minimize the risk of launching a not ready satellite and prevent against AODCS refinishing in orbit during commissioning and operation. VS can be separated in two parts, ODCS SW and ADCS SW. For both parts, I/O interface with sensors and actuators is determined in special interface control document(s) (ICD), describing type, certain connectors, and electrical parameters of the exchanging data. These data before using them for functional tasks are pre-processed in OBC with special algorithms.

Satellite sensors/actuators data preprocessing
This group of algorithms performs the following common tasks: • Convert data into required physical parameters and units, taking into account certain sensor input-output scale function.
• Transform data in certain device frame and compensate device misalignment, bias and scale function errors if it is possible, monitor device state, establishing "on/off," "work/control," "data bad/good" flags.
• Transfer to C&DH TLM data about sensor/actuator state and their data.
• Perform some other auxiliary functions if they are required.
• Main functional tasks ODCS SW and ADCS SW can be listed as below.

Satellite orbit propagation (OP)
To understand the idea of propagation of satellite orbit in Earth gravity field to the simplest, Keplerian motion propagator based on spherical Earth gravity field model might be used [9]; however more realistic results can be obtained with more accurate propagator, taking into account the second zonal harmonic J 2 in the function of approximation of Earth gravitational potential. The following equations of motion of satellite center of mass in Earth gravitational field can be considered [9]: is the satellite orbit right ascension of ascending node angle (RAAN), uis the argument of latitude angle, ν is the satellite true anomaly angle, and ω is the satellite orbit argument of perigee angle (Figure 27).

Orbital thrusters control
If orbit maneuver is required, then it can be commanded by AODCS SW autonomously, or special control commands TLM (uploaded command tables) are sending to satellite AODCS, and in predetermined time they are executed activating at scheduled time for the calculated period Δt ð Þ the orbital thrusters that provide for the required orbital correction/maneuver pulse FΔt ð Þ.

Satellite attitude and angular velocity estimation algorithms
This group of algorithms was presented above in 3.2.1.2 and can be used here. For example, let us consider single-axis stabilized satellite that should keep one axis (e.g., Z) permanently pointed to the Sun as in Figure 28. Only two angles of the satellite deviation from this direction and their angular velocities are required to know to point and keep it in this direction. The satellite has two-axis Sun sensor that  can measure two angles α x , α y of satellite deviation from the sun direction. Its axes coincide with the satellite axes xyz. The axis z is the sensitivity axis that nominally should point into the Sun's direction (center of brightness), and xy is the focal plane. The Sun vector is referenced in the Sun frame as S r ¼ 0 0 S ½ T and is measured in the Sun sensor measured frame as S m ¼ S x S y S z Â Ã T .
In Figure 28, xyz is the satellite body frame, x s y s z s is the Sun reference frame, SS is the two-axis Sun sensor and α x and α y are the turn angles of satellite x and y axis accordingly.
The following formula represents the mathematical transformation of the Sun vector from the reference into the body frame: and C bs is the DCM between the reference (Sun) and measured (satellite) frames. Let us consider that the order of rotation from the Sun to the satellite frame is 3-2-1 (α z , α y , α x ); the DCM matrix C bs is as follows [9]: cos α y cos α z cos α y sin α z À sin α y À cos α x sin α z þ sin α x sin α y cos α z cos α x cos α z þ sin α x sin α y sin α z sin α x cos α y sin α x sin α z þ cos α x sin α y cos α z À cos α x cos α z þ cos α x sin α y sin α z cos α x cos α y Then from (41), (42) can derive the following formulas: From (43), desired angles and can be derived that can be used for satellite attitude control.

Angular velocities (body rates)
Let us also assume that the satellite does not have angular velocity sensors RS and its angular velocities should be derived from the measured angles α x and α y . Simple low-frequency first-order differentiating fitters can be applied for this purpose. Laplace operator s-form (transfer functions) of these filters are presented below:' where T fx , T fy are filter time constants, typically, T f < 3 À 10 ð Þs.

Satellite control algorithms
If not the optimization criterion to characterize the control quality [13] is required, then conventional negative feedback closed control loop with linear PID (proportional, integral, and damping) control law [9] that provides a good performance for many practical satellite control applications can be used to satisfy the requirements. They are typical for any automatic control system requirements: such as transfer process decay time and overshooting, residual static error caused by the permanent external disturbance, etc. Today, attitude control system performance can be verified mainly on ground with simulation. If we try to evaluate it in flight, then only onboard attitude sensors TLM data can be used for postprocessing, and it should be taken into account that mainly sensors that detect high-frequency noise (perceived errors) will be observable and low-frequency components (sensor biases) are compensated in the closed control attitude stabilization loop. Simple example of single-axis satellite attitude stabilization control loop is presented below. It is a simplified linear model; however, it presents the stabilization principle and essential features. Let us assume that a simple, positional, and damping control law is used to stabilize satellite axis Z in Sun direction S as in the example C1 for attitude and angular rate determination above. Let us assume that only the one-axis control channel X is considered; small angle α x tan α x ≈ α x ð Þis measured with SS (44), and its rate is derived with linear differentiating filter (45). Then requested PD control torque can be presented by the following formula: where k px is the position control coefficient, k dx is the damping control coefficient, s ¼ d dt is the Laplace operator, T fx is the differentiating filter time constant, α xm ¼ α x þ Δα x is the measured angle α x ,α x is the true value and Δα x is the measured error. Let us assume that this torque is generated by only one MTR Y. Eq. (27) is determined as: where B z ¼ const is the local Z component of Earth magnetic induction vector, M y ¼ k TRy u y is the Y MTR magnetic moment, k TRy is the Y MTR control gate and i y is the control voltage applied to Y MTR winding. Then as it follows from (46), (47) requested from the AODCS OBC control voltage to the winding of Y MTR is: where K px ¼ k px B z k TRy and K dx ¼ k dx B z k TRy are position and damping magnetic control coefficients.
Let us take a ball-shaped satellite with the inertia matrix as follows: Then in inertial spatial, its linear angular dynamical equations for the axis X can be approximately written as follows: mass m ¼ 83:6 kg and the radiusR ¼ 0:29 m and take the assumption that its mass was homogeneously distributed within its spherical volume of V ¼ 4 3 πR 3 ¼ 0:1 m 3 , and then its inertia ( J ¼ J x ¼ J y ¼ J z Þ can be calculated with the following formula: as for a homogeneous sphere. Substituting into Eq. (55) the data above, we can calculate that for SS-1 J ¼ 2:82 kgm 2 , then its time constant with the considered MTR control might be: It has the following value: k dx ¼ 2 Á 0:707 Á 66:56 Á 6:366 Á 10 À4 s Á Nm=rad ¼ 0:06 Nms=rd.
Finally, K px and K dx can be calculated. They are as follows: When T x is determined, then the time constant for the differencing filter T fx can be chosen from the condition that T fx < < T x . In our example T x ¼ 66:56 s, let us take that T fx ¼ 5 s.

Figure 29.
Satellite single-axis attitude control Simulink block scheme.
Blocks in the pink color present the satellite model, the dark green color is for control law blocks, the cyan blocks are registration oscilloscopes, and the display and the orange color are the disturbances. The red manual switch allows to implement the differentiating filter, transforming the scheme from the approximation (52) to the accurate presentation (51). Disturbing external torque M d is constant; attitude sensor error is represented by the constant value ALP 0 and limited range white noise V that has spectral density S V ¼ 2σ 2 V T v (σ v is the standard deviation (SD), T v is the correlation time). The results of the simulation (Figure 29) with and without the differentiating filter (with the assumption that _ α x _ α x is directly measured without any errors) are presented below in Figures 30-34 (left A, (52), without the filter; right B, (51), with the filter). The numerical data for the simulation are as follows:    Decay time: τ ¼ 195s, α x 3τ ð Þ ¼ 5%α x0 (deg), (s) τ ¼ 275s. As it can be seen, measured noise is filtered effectively in the control loop, and stabilization error is equal to the sensor bias with opposite sign.
In Figure 34, we can see that the measured (perceived) errors that TLM data provide to ground after the decay time do not present sensor bias and present only measured noise. It is because satellite stabilization error with opposite sign compensates the bias. In general, it can also be seen that the simulation of the approximate second-order model (52) is very close to the accurate model (51). Hence, at least for the analytical representation, (52) can be successfully used.

Conclusion
Part I of this chapter presents an overview of practical satellite control system, satellite guidance, navigation and control equipment. The work presented here is based on the author's point of view of integration of this GN&C equipment in the integrated AODCS system (satellite GN&C Spacetronics System). Main work principles, architecture, and components of the satellite control system were briefly highlighted.
The chapter can serve to a wide pool of space system specialists as an introduction to satellite control system development.

Acknowledgements
The author wishes to express his sincere gratitude to the Canadian Space Agency, where he had the opportunity to learn and possess the knowledge and experience related to the writing of this chapter. As well, he is very thankful to many of his colleagues from Canadian Magellan Aerospace Company (Bristol Aerospace Division) with whom he discussed and analyzed satellite AODCS design projects and issues that helped him to work out the system analysis and its principal concepts presented in this chapter. Additionally, he cannot forget that his  This chapter was written as a solo author since his friend and regular coauthor Prof. George Vukovich from York University of Toronto passed away 2 years ago. For many years, Prof. Vukovich served as Director of his Department of Spacecraft Engineering in CSA. He will always keep good memories of Prof. Vukovich who helped and encouraged him continue his scientific and engineering work.
The author also acknowledges the copyrights of all publishers of the illustrations that were extracted from the open sources in the Internet.

Note
Dedicated to Prof. G. Vukovich.

Author details
Yuri V. Kim David Florida Laboratory, Canadian Space Agency (CSA), St. Hubert, Ottawa, Canada *Address all correspondence to: yurikim@hotmail.ca © 2020 The Author(s). Licensee IntechOpen. This chapter is distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/ by/3.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.