# Roto-Translational Control of Spacecraft in Low Earth Orbit Using Environmental Forces and Torques
## 4 Simulation Results and Discussion  
The simulation scenario for this maneuver considered a set of two identical DMD-equipped CubeSats (i.e., one chaser and one target) with their physical parameters shown in Table 1. The translational states were propagated for each spacecraft independently using Equations (5)-(7) and transforming to the LVLH relative states to compute (35) and (36). The atmospheric density used for attitude and orbit propagation, and considered unknown for the controllers, was obtained by using the NRLMSISE-00 model. The nonlinear attitude dynamics (i.e., Equation (12)) were simultaneously propagated and coupling with the translational dynamics was explicitly included in the computation of the attitude-dependent cross-sectional area, and the analytical models for the drag and lift coefficients [33]. The spacecraft were required to perform a phasing maneuver while controlling their attitude to achieve the desired orientation. The desired orientation (i.e., \(q_{d}\) and \(\omega_{d}\)) was computed to be equivalent to a regulation maneuver with respect to the LVLH frame. For visualization purposes, the initial and desired orientations were expressed in 3-2-1 Euler angle representation with respect to the LVLH frame and are shown in Tables 2 and 3 for both spacecraft, where \(\phi\), \(\theta\), \(\psi\in\mathbb{R}\) are rotations with respect to \(\Delta\hat{g}\), \(\Delta\hat{z}\) and \(\Delta\hat{x}\), respectively. The initial orbit was identical for both spacecraft and its orbital elements are shown in Table 4. The objective for the relative controller was to perform an along-orbit formation maneuver where the desired inter-spacecraft separation was 4 km. To achieve the along-orbit maneuver, a modified reference frame that had a position offset with respect to the LVLH with origin at the CoM of the chaser spacecraft is considered. A desired user-defined along-orbit distance \(\Delta d\in\mathbb{R}\) was specified, which can be expressed as an offset in true anomaly \(\Delta\
u\in\mathbb{R}\) with respect to that of the chaser spacecraft as  
\[\Delta\
u\triangleq\frac{\Delta d}{a}, \tag{46}\]  
where \(a\in\mathbb{R}_{>0}\) is the true anomaly of chaser's orbit, then the orbital elements for the origin of the new reference frame are the same as those of the chaser but adding \(\Delta\
u\) to the true anomaly and the control objective remains to regulate \(X\) to zero. The control and adaptation laws in (27), (30), (35) and (36) could be computed every time step by each spacecraft since they did not require any iterative algorithm. The function minimization problem in (37) was solved every 30 s by each spacecraft to produce a new set of DMD lengths that considered the required total cross-sectional areas and environmental torques. This update rate for the DMD lengths could be reduced; however, 30 s provided a practical balance between the transient response and the computational demands. In the numerical simulation, the function minimization algorithm was implemented using the fmincon command in MATLAB and the average time required to obtain a solution was 0.3152 s using a Windows laptop, 2.7 GHz quad core Intel Core i7 processor, and 16 GB RAM. Since the relative maneuvering control law computed the cross-sectional required by the chaser, the target spacecraft was tasked with the only objective of attitude control and to broadcast its ECI states and cross-sectional area. The control gains are presented in Table 5 along with the weights \(W_{att}\) and \(W_{orb}\), where \(\overline{\alpha}\in\mathbb{R}_{>0}\) is defined as  
\[\overline{\alpha}\triangleq\left\{ \begin{array}{cl}\frac{10}{3}\|e_{\psi}\|,&\frac{10}{3}\|e_{\psi}\|\leq 1,\\ 1,&\frac{10}{3}\|e_{\psi}\|>1\end{array} \right. \tag{47}\] \begin{table}
\begin{tabular}{c c c} \hline \hline \(S_{t}\), \(S_{1}\) [m\({}^{2}\)] & \(m_{t}\), \(m_{1}\) [kg] & \(S_{t,max}\), \(S_{1,max}\) [m\({}^{2}\)] & \(S_{t,min}\), \(S_{1,min}\) [m\({}^{2}\)] \\ \hline
0.2 & 3 & 0.5 & 0.01 \\ \hline \hline \end{tabular}
\end{table}