Robust Attitude Controller for NASA Astrobee Robots Operating in the ISS

Free-flying robots have been recently developed to operate on-board the International Space Station (ISS) as semi-autonomous robotic assistants. NASA Astrobee robots are the new free-flyers proposed by NASA, and equipped with a 3 degree of freedom manipulator. This research aims to realize an accurate mathematical model of the robot attitude dynamics, and an attitude controller for the NASA Astrobee system. The robot has been modeled coupling the attitude dynamics with the manipulator motion, and robust attitude controllers are proposed to stabilize disturbances and configuration changes induced by the manipulator usage. First, a second-order twisting sliding mode controller is designed to achieve a trade-off among control law flexibility, robustness and accuracy. Among robust control strategies, sliding mode controllers are characterized as low complexity, and low computational cost control methods, making the system able to achieve reactivity and stability also when parameters are changed. The performance of the proposed control method are compared with a backstepping controller that include an iterative algorithm to compute an adaptive control, as function of disturbances and orientation error. The performance are evaluated and analyzed considering several scenarios in Matlab Simulink simulations, and combining Simulink and ROS Gazebo to run co-simulations with the NASA Astrobee simulator. Simulations with variable body mass, links masses, and different gripped objects have been run to test the controllers performance in off-design conditions.


Introduction
Free-flying robots have been recently developed to operate on-board the International Space Station (ISS) as semiautonomous robotic assistants [18]. SPHERES [13], Int-Ball and CIMON are projects of free-flyers already employed in the ISS, and designed as modular base for the integration of a wide range of hardware and software as monitoring and maintenance tools of ISS systems. Thus, free-flyers are the ideal platform for manual observation of the ISS from ground control, autonomous sensor readings and surveying of ISS conditions, and human-robot interactions during long duration human missions. The NASA Astrobee project, described in [3,16], consists in the realization of 3 high capable robots able to moving and operate inside the ISS for long periods of time without crew supervision or intervention. In particular, in the top-aft bay, the Astrobee is equipped with a perching arm to grasp ISS handrails and objects. The robotic arm is designed as two-joints two-links robotic arm, and when not in use, it is stowed in the top payload bay, while the joints allow the arm deployment and motion for grasping.
The coordinated control of attitude and manipulator is a topic discussed in several researches about aerial and space manipulators, as reported in [10,12], where the disturbances introduced by the manipulator are computed, and robust control strategies are proposed to stabilize the system. As well, the Astrobee can be considered as a small satellite floating in the micro-gravity environment of the ISS, and the reduced mass turns the robot to be more sensitive to external disturbances, while the actuators have more limitation due to the their small dimensions, as it is in [6,14]. Thus, it is important to estimate correctly the possible disturbance introduced by the robotic arm, and to design an attitude controller able to stabilize the system in every possible scenario. Therefore, the objective of this research is to realize an accurate mathematical model of the Astrobee robot, coupling the attitude dynamics with the 1 3 robotic arm dynamics, to design an effective attitude controller. Robust attitude controllers have been taken into account, to achieve reactivity and stability to parameters variation. In particular, the twisting sliding mode controller (TW-SMC) has been proposed for precise attitude control since, as it is in [4,17], sliding mode controllers (SMC) are characterized as low complexity, and low computational cost control methods, making the TW-SMC a suitable approach for the Astrobee attitude control. For the same reason, a first-order SMC is designed for the arm manipulator. TW-SMC is compared with a backstepping controller, already employed in [5] with an aerial manipulator, considering several scenarios in Matlab/ Simulink simulations where the controllers performance, in terms of manipulator motion stabilization and robustness, are analyzed. Moreover, the ability of the controller to preserve the desired attitude has been verified through combined simulations between Simulink and the NASA Astrobee simulator.
The paper is organized as follows. The Astrobee attitude dynamics is presented in "NASA Astrobee: Mathematical Model", including the arm manipulator model. "Controllers Design" describes the sliding mode controllers for both manipulator and main body, and the design process of the backstepping controller. Simulation results are shown in "Simulation Results". Finally, some concluding remarks are described in "Conclusion and Future Works".

NASA Astrobee: Mathematical Model
In this section the kinematics and dynamics model of the Astrobee is introduced. The system orientation has been described trough the quaternions formulation for its compactness, low computational cost and lack of singularity [9]. Thus, the kinematics can be expressed as the quaternions variation in time: where = { x , y , z } T ∈ ℝ 3 is the angular velocity, expressed in the body reference frame, and q = {q 0 , q v } T are the quaternions, in which q 0 is the scalar component and q v ∈ ℝ 3 is the vector part. The attitude dynamics is defined by a modified version of the Euler equation, where terms related to the manipulator motion are included. In fact, considering the center of mass (CoM) of the robot fixed in the CoM of the main body, the overall moment of inertia is expressed as where J body ∈ ℝ 3,3 is the inertia matrix of the main body, and J arm,0 ∈ ℝ 3,3 is the inertia matrix of the manipulator referred to the CoM, which is a variable value in function of the manipulator configuration, finally, J ∈ ℝ 3,3 is the total moment of inertia. Following the approach used in [5] for an aerial manipulator, the attitude dynamics equation can be derived from the angular momentum conservation expressed in the body reference frame where h ∈ ℝ 3 is the robot angular momentum and T ∈ ℝ 3 is the resultant external torque acting on the body. Exploiting the angular momentum h as the combination of the manipulator and the overall system motion, the attitude dynamics can be expressed as where each term related to the manipulator is expressed in the body reference frame. In particular, the manipulator can be modeled as two-links two-joints robotic arm, as shown in Fig. 1, and its dynamics can be expressed through the joints rotation where a ∈ ℝ 2 are the joints angle, M ∈ ℝ 2 is the torque applied in each joint, and J a ∈ ℝ 2,2 is a diagonal matrix, where J a,ii is the moment inertia of the rotating manipulator part around the i-th joint. According to its configuration, each term of the manipulator dynamics included in the attitude dynamics can be computed in the the body reference frame through a rotational matrix expressed as function of the joints angles. In particular, ̇J a is related only to the rotation of the second joint that causes variations in J 11 , but considering the limitations in the second joint rotation it can be considered as negligible. On the other hand, the Fig. 1 Robotic arm model terms (J ȧa ) b and (J a a ) b of Eq. (4) matches the robotic arm control input u a ∈ ℝ 3 and angular momentum h a ∈ ℝ 3 , both expressed in the body reference frame. Thus, the final formulation of the attitude dynamics has been rewritten as where T = u c + u ext , in which u c ∈ ℝ 3 is the control input of the body and u ext ∈ ℝ 3 is the external disturbances. The arm manipulator influences the system dynamics including disturbance torques, and modifying the overall inertia. The system dynamics can be combined with attitude and manipulator controllers, as showed in Fig. 2, to realize a complete mathematical model of the Astrobee system.

Controllers Design
In this section, the sliding mode controllers are described for both manipulator and main body. The overall system needs two controllers, one to handle the manipulator motion and one to achieve attitude control and stabilization, as shown in Fig. 2. Both the controllers have been designed considering sliding mode control strategies, since SMCs are characterized as low complexity, low computational burden, and robust control methods [15]. For the attitude control, it has been compared with a backstepping controller, which include an iterative algorithm to define an adaptive control to faster stabilize the disturbances.

First-Order SMC
The robotic arm controller has been designed as first-order SMC. In particular, SMC consists in the definition of a sliding surface , which has to be reached by the system. Thus, the control forces lead the system on , and let it slide on the surface [17]. The sliding surface is usually defined by a linear combination of the tracking error derivatives where k > 0 is a constant parameter, and e ( ) y is the -th derivative of the tracking error that is defined as where y ∈ ℝ n and y ref ∈ ℝ n are the system output and the desired value. The convergence of the methods is assured if terms k lead to negative real part roots in the polynomial P(x), defined as In this way, when the trajectory is confined on the sliding surface, the tracking error will reach 0 in an exponential way, according to the roots of P(x) [15]. Thus, the control law has to be chosen so that the sliding surface is both invariant and attractive, so a discontinuous term is needed in its definition. The ideal control law is expressed through the sign(⋅) function The manipulator controller has been realized according to the first-order sliding mode control strategy. The sliding surface has been designed through the joints angles and the angular velocity errors, defined as where a,e , a,e ∈ ℝ 2 are the the joints angle and angular velocity errors, a,ref , a,ref ∈ ℝ 2 are the desired values, and a , a ∈ ℝ 2 are the real time values. Thus, the sliding surface has been defined as where > 0 is constant. However, the discontinuous term in the control law brings a high frequency oscillation around the sliding surface. Thus, to overcome this problem, defined chattering effect, the hyperbolic tangent formulation has been employed where > 0 is constant.

Second-Order TW-SMC
As attitude controller an higher-order sliding mode is proposed for its feature of improved accuracy under heavy uncertainty conditions, and chattering effect reduction [1,7]. The rth-order sliding mode is characterized by continuous r − 1 number of derivatives of in the vicinity of the sliding surface. Hence, the rth-order sliding mode is determined by In particular, the TW-SMC is a second-order SMC that takes advantage of the first-order sliding surface derivative in the  1) and (6), and it has been linearized to reach the formulation Thus, it is possible to estimate the bounds of functions h(t, x) and g(t, x) analyzing the variation of ̈ , since According to [8], to achieve accuracy and stability of the proposed control method, controller parameters k 1 and k 2 have been chosen to satisfy the condition The control law has been defined using the hyperbolic tangent formulation to further reduce the chattering effect, as in [2] where > 0 is constant, and k 1 , k 2 > 0 are constant parameters that satisfy the condition expressed in Eq. (22).

Backstepping Controller
The backstepping controller is included in this research to compare its performance with the TW-SMC, since it has been already employed in similar applications for aerial manipulators. It consists in an adaptive controller based on Lyapunov function. In control theory, a Lyapunov function V(x) is continuously differentiable function, positive definite, and such that where the last condition stands that for each state x exists a control u able to drive V(x) to zero, bringing the system to an equilibrium stable state. The backstepping controller has been designed following a procedure similar to [5], employed for an aerial manipulator. The definition of two Lyapunov function is needed, and they are computed using the system kinematics and dynamics. Considering the vectorial part of the quaternions error, its variation can be expressed as where q e = {q 0 ,q v } , and q v ∈ ℝ 3 has been chosen as the backstepping variable. Defining c as the backstepping virtual control variable, Eq. (25) has been rewritten as where R(q) ∈ ℝ 3,3 is the rotational matrix. The first Lyapunov function candidate has been defined as and its derivative is Defining the control variable c as Equation (28) can be rewritten as that is negative definite when ̃= 0 . The second Lyapunov function candidate has been defined as and its derivative is

Simulation Results
In this section, TW-SMC performance in terms of attitude control and stabilization are analyzed running Matlab Simulink simulations. As introduced with the attitude dynamics, Eq. (6), the manipulator motion leads to disturbances that have to be stabilized.
The Astrobee system is modeled as a 32 cm-on-a-side cube-shaped robot, and equipped with a two-links twojoints robotic arm. In particular, the Astrobee's main body is characterized by a mass of m b = 9.4 kg and an inertia of Since the geometrical parameters are subjected to uncertainties the proposed controllers have been tested in different scenarios where the Astrobee's parameters are changed. The initial conditions see the Astrobee in the desired configuration, with q 0 = [1 0 0 0] T , 0 = [0 0 0] T , and the manipulator stowed a,0 = (180 • , 0 • ) . All the simulations are characterized by the same manipulator motion request, and it consists in manipulator deploying a = (0 • , 0 • ) , a rotation around the second joint to a = (0 • , 30 • ) , a second rotation round the second joint to a = (0 • , −30 • ) , and manipulator stowing a = (180 • , 0 • ). The first scenario considers the manipulator motion stabilization with different manipulator deploying and stowing speed. Different manipulator rotation speed leads to different disturbances in terms of manipulator control torque and gyroscopic torque. Figure 4 shows the simulation results in terms of Euler Angles. The TW-SMC is able to stabilize the disturbances introduced by the manipulator motion recovering the desired configuration in acceptable time. The backstepping controller shows better performance in terms of orientation error, since its control law, Eq. (35), contains the manipulator control input u a , thus,it is able to react faster to the disturbance. Changing the angular speed request does not create a significant variation in the controller performance, despite the increasing of the disturbances.
The second scenario considers different values of the Astrobee body mass and inertia, and the arm rotational speed of a = 2 rad/s . Figure 5 shows simulation results in term of Euler Angles. Changing the Astrobee inertia leads to different sensitiveness to disturbances, but the variation of this parameter does not change the controllers performance.
The third and forth scenarios aim to test the controllers with different disturbances, considering different links masses and a possible object gripped with the arm rotational speed of a = 2 rad/s . Figure 6 shows simulation results in term of Euler Angles. Considering different values of manipulator's links masses, with arm rotational speed a = 2 rad/s , leads to different disturbances. The reduced dimension of the links makes impossible to consider relevant changes in the links masses, leading to insignificant changes in both controllers performance. However, these effects are amplified considering a gripped object, modeled as a point mass in the end-effector position, as reported in Fig. 7. However, moving the arm while

NASA Astrobee Simulator
The Astrobee attitude model has been compared with the 3D model in the NASA Astrobee simulator [11], shown in Fig. 8. It consist in an open source software realized in ROS Gazebo to simulate the Astrobee flight inside the ISS environment. To verify the goodness of results, NASA Astrobee simulator software has been used combined with Matlab Simulink that is able to communicate and exchange information with ROS Gazebo through the ROStoolbox block set. In this way, it is possible to test the controller in a more realistic scenario, where the system dynamics is expressed by the Astrobee ROS 3D model floating in the micro-gravity environment of the ISS, and the attitude controller, implemented in Simulink, reads the information about orientation and angular velocity to compute and apply the desired torque directly on the 3D model. Since the manipulator is managed by manual commands in the simulator, it is impossible to collect precise comparable results. Moreover, the high computational cost of the combined simulation, leads to imperfections and delays in the communication of the two software, leading to delays and errors in the control torque application. Figure 9 shows simulation results in term of Euler Angles for an arm motion request that consist in deploying and stowing. The results are not comparable with numerical simulations since the delay in the application of torque, due to synchronization error between Simulink and ROS, leads to higher orientation errors. However, despite the communication delays and errors, also in this scenario the TW-SMC is able to restore the desired orientation in acceptable time.

Conclusion and Future Works
The objective of this research is to realize an accurate mathematical model for the NASA Astrobee free-flyer attitude dynamics and to propose an attitude controller able to stabilize the disturbances introduced by the robotic arm motion. The system dynamics has been defined combining the overall attitude dynamics and the robotic arm dynamics in the angular momentum conservation. The controller has been designed as a robust attitude controller able to overcome uncertainties in parameters and disturbances. Thus, sliding mode controllers have been taken into account for their properties of robustness and low computational cost. In particular, for precise attitude control and stabilization a TW-SMC has been designed, and compared with a backstepping controller, already employed in similar application for aerial manipulators. Despite the reduced mass of the Astrobee that turns the robot to be more sensitive to the disturbances, and the actuators limitation due to their small dimension, the simulations show that the controller is able to operate in several scenarios, and to always track the desired attitude. Thus, the robustness of the proposed control method has been tested considering simulations with parameters variation, and the results obtained make the TW-SMC a good control strategies able to fulfill several space manipulators tasks. However, the comparison with the backstepping controller shows the limitation of the constant parameters that define the TW-SMC control law, while the adaptation and the inclusion of the robotic arm control input in the backstepping controller control law results to be more effective. The NASA Astrobee simulator has been used in co-simulation with Simulink to test the proposed controller in a more real scenario. The results obtained confirm the goodness of the mathematical model and the performance of the TW-SMC. Possible future works are the implementation of the actuators model to evaluate more accurate performance of the designed controller, and the combination of attitude and position control to test the system in more challenging missions and scenarios.