## 2 Orbital Simulator
### Spacecraft Position Dynamics
The actuation system for position control exploits thrusters and the adopted thrusters can exert mono-directional actions, that is they can apply to the Chaser thrusts of given magnitude and along fixed directions, which depend on how and where the thrusters have been assembled in the system (their orientations and application points). As will be detailed in the following, in each required control direction a pair of actuators are placed and exert their mono-directional thrusts. Moreover these thrusters coupled by direction are always switched on together by the controller. This precise choice of design for the actuation system guarantees a nominal zero moment due to the thrusters in the ideal case, when no thruster errors occur. Then the total number of thrusters \(N_{\text{thr}}\) of the Chaser is always even. Each thruster is characterized by a fixed output and can be only be turned on/off without modulation of the provided thrust. This means that, the individual thruster can provide either the maximum amount of thrust when switched on or no force when switched off. Further characteristics of each thruster are given by the time duration of the pulse width \(\tau_{oni}\) and the thruster zero time before turning on again \(\tau_{off_{i}}\). In fact, if the controller switches on the \(i^{th}\) thruster at time \(t_{0}\), this actuator provides the maximum thrust \(T_{maxi}\) for a time \(\tau_{oni}\) and then the same thruster cannot be turned on again for a time \(\tau_{off_{i}}\), as shown in Figure 3 and according to the following  
\[T_{i}^{+}= \begin{cases}T_{maxi},&\text{if }t\in(t_{0},t_{0}+\tau_{oni})\,\\ 0,&\text{if }t\in(t_{0}+\tau_{oni},t_{0}+\tau_{oni}+\tau_{off_{i}})\,\end{cases}  \tag{4}\]  
where \(\tau_{oni}\) and \(\tau_{off_{i}}\) are known and constant for each thruster. The constant \(\tau_{i}=\tau_{oni}+\tau_{off_{i}}\) can be computed and its inverse constitutes the maximum allowed frequency at which the \(i^{th}\) thruster can be switched on. In our case, RCS is composed by 12 thrusters, as depicted in Figure 4.  
The magnitude of the thrust produced by each thruster is affected by bias and random errors, as well as the thrust direction, which is also affected by both type of errors. The magnitude of each thruster \(i\) can be expressed by  
\[F_{mag}^{i}=F_{nom}^{i}+\Delta F_{bias}^{i}+\Delta F_{noise}^{i}.\]  
\(F_{nom}^{i}\) is the nominal thrust, \(\Delta F_{bias}^{i}\) is the bias thrust error and \(\Delta F_{noise}^{i}\) is the thrust noise; both of these contributions are different for each thruster. A similar formulation has been used to model the thrust direction  
\[f^{i}=[R_{rand}^{i}(\delta_{rand},\epsilon_{rand},\zeta_{rand})][R_{bias}^{i}( \delta_{bias},\epsilon_{bias},\zeta_{bias})]f_{nom}^{i},\]  
Figure 4: RCS (Reaction Control Thrusters) configuration and body frame definition. CoG: Center of Gravity. Figure 3: Thrust provided by the \(i^{th}\) thruster switched on at time \(t_{0}\). in which \(f^{i}\in\mathbb{R}^{3}\) is the unit vector representing the thrust direction of the \(i^{th}\) thruster affected by errors, \(f^{i}_{nom}\in\mathbb{R}^{3}\) is the unit vector representing the nominal thrust direction of the \(i^{th}\) thruster, \(R^{i}_{bias}(\delta_{bias},\epsilon_{bias},\zeta_{bias})\) is the rotation matrix relative to the nominal direction of the \(i^{th}\) thruster computed with bias angles and \(R^{i}_{rand}(\delta_{rand},\epsilon_{rand},\zeta_{rand})\) is the rotation matrix relative to the nominal direction of the \(i^{th}\) thruster computed with random angles. At the end, the thrust provided by the \(i^{th}\) thruster expressed in the body frame can be computed as  
\[F^{i}=[f^{i}]F^{i}_{mag}, \tag{5}\]  
and \(F^{i}\in\mathbb{R}^{3}\) is the force provided by the \(i^{th}\) thruster. The total force provided by the RCS is  
\[F^{b}_{\text{thr}}=\sum_{i=1}^{12}F^{i}\]