• No results found

The Matlab Simulator is divided into eight modules or macro-functionalities:

1. a DYNAMIC PROPAGATOR module that performs the dynamic evolution of the system;

2. a SENSORS module that models the behavior of the sensor system while producing measures from the dynamic state of the system;

3. a NAVIGATION module that performs an (optimal) estimation of the current state of the system using models of its dynamic behavior and measures from the sensor module;

4. a GUIDANCE module that computes the desired trajectory that each satellite of the forma- tion has to follow;

5. a CONTROL module that computes (optimal) control actions that should be performed by the actuator system in order to track the desired trajectory;

6. an ACTUATORS module that models the behavior of the actuator system while performing the control actions provided by the control module;

7. an ENVIRONMENT module that computes the perturbative effects (forces and torques) on the system dynamics;

8. a MODE MANAGER module that menages the transition between different formation flying modes.

Figure 4.1 shows the top level architecture and data flow of the simulator. The modules are grouped in two main sections: the PLANT system, which represents the real world, and the GNC system, which is the brain of the loop and that interacts with the real world through sensors and actuators. A more detailed description of each module is presented below, following an input-output scheme.

DYNAMIC PROPAGATOR

This module performs the dynamic evolution of the whole physical system through the integration of the differential equations system used to model the dynamic behavior of the whole PLANT:

˙

X (t) = F ( X (t), t, Ucomm(t), Ud(t)) (4.1)

where X (t) is the dynamic state of the whole PLANT, which contains environment state and sensors, actuators, attitude and orbital absolute and/or relative states for each satellite of the formation; Ucomm(t) is the control vector that is formed by both linear and angular accelerations

GUIDANCE CONTROL NAVIGATION ACTUATORS SENSORS DYNAMIC PROPAGATOR ENVIRONMENT MODE MANAGER

GNC

PLANT

X(t) Ucalc(t) Ucomm(t) X(t) e Z(t) c X(t) c X(t)

Figure 4.1: Top level Architecture and Data flow.

and that is performed1 by the actuator system; Ud(t) is the perturbative action vector, which contains both linear and angular perturbative actions.

INPUT: dynamic state of the whole PLANT at time tk, X (tk); control actions performed by the actuators system Ucomm(t); forces and torques due to the interaction of the system with the environment, Ud(t).

OUTPUT: dynamic state of the whole PLANT at time tk+1 = tk + ∆Tsim, X (tk+1),where ∆Tsim is the simulation step.

SENSORS

The aim of this module is to simulate the sensors system behavior while producing desired mea- sures from the dynamic state of the system. The behavior of the sensors system is described by models whose accuracy and consequent complexity depend on the final purposes of the simulation. Measures eZ(t) can be obtained adding a bias and a (white) noise to a component that is function of the dynamic state of the PLANT:

e

Z(t) = f (X(t)) + bias + noise (4.2)

INPUT: dynamic state of the whole PLANT at timetk, X(tk).

OUTPUT: desired measures at time tk, eZ(tk).

NAVIGATION

This module performs an (optimal) estimation of the current state of the system bX(t) using a set of measures coming from the sensors module eZ(t) and a set of models that describe the dynamics of the system (state equations) and the sensor system behavior (measure equations). Different estimation techniques can be used for this purposes, as for instance Kalman filtering or Bayessian estimation, whose selection have to be evaluated accordingly to the sensor system type and the scenario on hand.

INPUT: measures from the SENSORS module at time tk, eZ(tk).

OUTPUT: best estimation of the current state of the system at time tk, bX(tk).

Depending on the estimation algorithm used, this module may require additional information as input, e.g. the control vector actuated at the previous time step when a Kalman Filter is used.

GUIDANCE

Taking into account the environmental conditions, the current estimated state of the system bX(t), the Actuator system characteristics, and the activated mission mode, this module performs the calculation of the desired trajectory X(t) (translational and/or attitude absolute or relative motion) that each satellite of the formation has to follow.

INPUT: Mode that is activated from the MODE SWITCHER; constraints related to actuator and sensor systems; environmental conditions; Navigation data bX(tk).

OUTPUT: Reference trajectory that each spacecraft of the formation has to track at time tk, X(tk).

CONTROL

This module computes the control actions Ucalc(t) that the actuator system should perform to make the current estimated state of the system bX(t), from the NAVIGATION module, matching the desired one X(t), from the GUIDANCE module. The tracking error depends not only on the control type in use but also on the characteristics of SENSORS, NAVIGATION and ACTUATORS modules.

INPUT: estimation of the system state at time tk, bX(tk); reference trajectory to be tracked at timetk, X(tk); environmental conditions; actuator system constraints.

ACTUATORS

This module simulates the actuator system behavior while performing the desired control actions. The behavior of the actuators system is described by models whose accuracy and consequent com- plexity depend on the final purposes of the simulation. The control actions that each element of the actuators system has to perform, Ucomm, can be obtained first using a function of the calculated control actions coming from the CONTROL module, Ucalc, and then adding to it a bias and a (white) noise:

Ucomm(t) = f ( Ucalc, X(t), bias(t), noise(t)) (4.3)

INPUT: control actions computed in the CONTROL module at time tk, Ucalc(tk); dynamic state of the whole PLANT at time tk, X(tk).

OUTPUT: control actions performed by the actuators system at time tk, Ucomm(tk).

ENVIRONMENT

The Environment module menages all computations needed to determine perturbative effects (forces and torques) that come from the interaction of the spacecraft(s) with the environment, as for example the central body current position and/or attitude with respect to the Earth Centered Inertial (ECI) reference frame, which is needed to compute spacecraft acceleration due to higher harmonics of the central body, solar radiation pressure, or physical properties of the central body atmosphere for the drag force computation.

INPUT: current Julian Date.

OUTPUT: parameters needed to compute perturbative effects on the spacecraft(s).

In particular, the perturbative accelerations due to a non spherical shape of the Earth are computed as the gradient of the gravity potential expanded in spherical harmonics (see for instance [12]). Also, the perturbative acceleration due to atmospheric drag acting on a single spacecraft in the ECI reference frame is modeled as:

fdrag =− 1 2ρ CDS M V 2Vb (4.4)

whereρ is the air density, computed as function of the satellite altitude following a classical Jacchia’s 1977 model for average solar activity, M and S are the mass and the cross section, respectively, of the spacecraft, CD is the drag coefficient (equal to 2.2), V is the satellite absolute velocity vector in the ECI reference frame.

MODE MANAGER

Taking into account the current estimated position of the spacecrafts in the formation and the mission requirements, this module menages the transition between different formation flying modes. The transition between one mode to another one occurs if some conditions, which depend on the formation state, are verified, e.g. if the distance between the satellites is less then a reference value, the collision-avoidance mode is activated.

INPUT: current position of the spacecraft of the formation at time tk, X(tk). OUTPUT: the formation flying mode that is currently activated.