Skip to main content


Front. Robot. AI, 27 March 2019
Sec. Space Robotics
Volume 6 - 2019 |

Simultaneous Capture and Detumble of a Resident Space Object by a Free-Flying Spacecraft-Manipulator System

  • Spacecraft Robotics Laboratory, Mechanical and Aerospace Engineering Department, Naval Postgraduate School, Monterey, CA, United States

A maneuver to capture and detumble an orbiting space object using a chaser spacecraft equipped with a robotic manipulator is presented. In the proposed maneuver, the capture and detumble objectives are integrated into a unified set of terminal constraints. Terminal constraints on the end-effector's position and velocity ensure a successful capture, and a terminal constraint on the chaser's momenta ensures a post-capture chaser-target system with zero angular momentum. The manipulator motion required to achieve a smooth, impact-free grasp is gradually stopped after capture, equalizing the momenta across all bodies, rigidly connecting the two vehicles, and completing the detumble of the newly formed chaser-target system without further actuation. To guide this maneuver, an optimization-based approach that enforces the capture and detumble terminal constraints, avoids collisions, and satisfies actuation limits is used. The solution to the guidance problem is obtained by solving a collection of convex programming problems, making the proposed guidance approach suitable for onboard implementation and real-time use. This simultaneous capture and detumble maneuver is evaluated through numerical simulations and hardware-in-the-loop experiments. Videos of the numerically simulated and experimentally demonstrated maneuvers are included as Supplementary Material.

1. Introduction

On-orbit servicing holds the promise to refuel, maintain, upgrade, and repair existing spacecraft as well as to actively remove orbital debris (Long et al., 2007; Ellery et al., 2008; Flores-Abad et al., 2014a). Before the servicing operations can take place, the servicing spacecraft must capture its target. Several methods to capture a space object have been proposed, but a chaser spacecraft equipped with a robotic manipulator is widely seen as a promising and versatile approach (Bonnal et al., 2013; Flores-Abad et al., 2014a; Shan et al., 2016).

The robotic capture of cooperative and attitude-stabilized spacecraft has already been demonstrated. The Space Shuttle's Remote Manipulator System (Sallaberger et al., 1997; Goodman, 2006) and the International Space Station's robotic manipulator (Stieber et al., 1997) have been used, under human control, to capture cooperative and attitude-stabilized targets. The unmanned ETS-VII (Oda, 2000; Penin et al., 2000) and Orbital Express (Ogilvie et al., 2008) missions have also demonstrated teleoperated and automated capture of cooperative and attitude-stabilized targets.

For tumbling targets, the capture maneuver is significantly more challenging, and a detumbling phase is generally required before servicing operations can start. The capture and detumble of INTELSAT VI by the STS-49 crew in 1992 (Bennett, 1993) exemplifies some of these challenges. Spinning only at a 1.44 deg/s, INTELSAT VI required multiple capture attempts before it was manually captured and detumbled by three space walking astronauts. The unexpected difficulties were later attributed to some unforeseen effects related to fuel-sloshing and contact dynamics (Bennett, 1993). Similar difficulties have been experienced in the other instances where astronauts have manually captured slow tumbling objects (Grady, 1985; Hauck and Gardner, 1985; Goodman, 2006). Despite these accomplishments, the automated capture and detumble of resident space objects remains an open challenge.

Some of the difficulties facing a capture and detumble maneuver can be attributed to its guidance complexity. The trajectory generated by the guidance algorithm must be computed in a timely manner, the obstacle avoidance and control constraints satisfied, the nonlinear multibody kinematics and dynamics dealt with, and the propellant usage minimized. Given the relevance and challenging nature of the guidance problem, the literature on it is extensive (Flores-Abad et al., 2014a; Nanjangud et al., 2018). With respect to the capture maneuver, two distinct approaches have been considered. Some authors assume that the chaser can initiate the capture maneuver at a close-enough distance, where the target's grapple fixture is within the chaser's free-floating grasping range. Only actuating the manipulator, while leaving the base-spacecraft uncontrolled, is enough to capture the target in this scenario. Minimizing the disturbance to the floating base-spacecraft is usually considered on optimization-based approaches. Examples of this approach can be found in Yoshida et al. (2006), Shah et al. (2013), Flores-Abad et al. (2014b), Flores-Abad et al. (2016), and Stolfi et al. (2017). However, a tumbling target with large appendages imposes large time-varying keep-out zone constraints, preventing the existence of a safe holding position close-enough to the target where to wait and later execute a free-floating capture maneuver. A chaser starting at a sufficiently far-away hold position and executing a free-flying roto-translation maneuver is then required. This type of maneuver has been extensively studied with a wide variety of guidance and control approaches, such as: optimal control (Aghili, 2008, 2009a; Seweryn and Banaszkiewicz, 2008; Boyarko et al., 2011), optimization-based (Jacobsen et al., 2002; Lampariello, 2010; Lampariello and Hirzinger, 2013; Gasbarri and Pisculli, 2015; MacPherson et al., 2018), model predictive control (Rybus et al., 2017), and rapidly-exploring random trees (Persson and Sharf, 2015; Rybus and Seweryn, 2015).

The detumbling maneuver has also been the focus of significant attention, with minimum time formulations (Aghili, 2008, 2009b), sliding mode and impedance control approaches (Uyama and Narumi, 2016; Zhang et al., 2017), as well as strategies that exploit the variable inertia of the resulting multibody system to reduce its kinetic energy (Rybus et al., 2014) being proposed.

Although the capture and detumble maneuvers are usually studied independently from each other, both are generally required by on-orbit servicing missions. In the proposed simultaneous capture and detumble maneuver these two maneuvers are combined. The capture and detumble objectives are encoded with a unified set of terminal constraints, forcing the chaser's control actions to simultaneously consider both objectives from the very beginning of the maneuver. Once the target is captured, the underlying conditions to detumble the newly formed chaser-target system are met, and a completely detumbled system is achieved once the manipulator's motion is gradually stopped shortly after. Combining the capture and detumble into a single maneuver can result in a quicker and, as the chaser's monenta at capture is used to detumble the RSO, a potentially more propellant-efficient proposition.

The capture objective is casted as a terminal constraint on the chaser's end-effector position and velocity, whereas the detumble objective is formulated from a momenta standpoint and casted as terminal constraint on the chaser's momenta. These two sets of terminal constraints are then fused into a unified and coherent set. The terminal constraint derived from the detumble objective is based on the premise that a detumbled system has zero angular momentum. The capture of a space object can be seen as an inelastic collision between the two vehicles, with the post-capture momenta of the combined system resulting from the combination of the individual momenta contributed by each vehicle. To obtain a post-capture system with zero angular momentum the momenta contributed by the chaser must cancel-out the target's pre-existing angular momentum.

The terminal constraint on the chaser's momenta necessarily imposes a relative velocity between both vehicles. To achieve a smooth, impact-free capture, the chaser's manipulator is actuated to obtain a zero relative velocity between the chaser's end-effector and the target's grapple fixture. This manipulator motion is maintained during, and immediately after, capture. Therefore, the newly formed chaser-target system is not instantaneously detumbled upon capture. After capture, the manipulator joint velocities are gradually slowed down to zero, equalizing the linear and angular momenta across all bodies via internal reactions (i.e., gripper contact forces and joint reactions). After the manipulator motion is stopped, the angular momentum on all bodies of the chaser-target system vanishes to zero—as dictated by the maneuver's terminal constraint. The system is then fully detumbled and no further actuation is required.

In addition to formulating the simultaneous capture and detumble maneuver, a practical guidance algorithm for it is also proposed. The proposed guidance is able to generate a full roto-translation trajectory that minimizes the control effort, meets the simultaneous capture and detumble terminal constraint, avoids collisions, and respects the chaser's control limitations. The proposed guidance algorithm is a variation from a guidance approach suitable for onboard implementation and real-time use previously developed for capture-only maneuvers (Virgili-Llop et al., 2017b,c, 2019). Here, the detumbling of the RSO is added as additional terminal conditions to this previously developed guidance approach.

The combination of the newly proposed simultaneous capture and detumble maneuver with this guidance approach has been evaluated with numerical simulations and hardware-in-the-loop experiments. The simulation results show that the guidance ability to find admissible solutions decreases as the target's pre-capture momenta increases, eventually limiting the applicability of the simultaneous capture and detumble maneuver for targets with high tumbling rates or large inertias. The experimental results on a planar air bearing table provide empirical evidence on the efficacy of the maneuver and real-time capabilities of the proposed guidance. Videos of the experiments, as well as of the simulations, are included as Supplementary Material.

The simulation and experimental results obtained with the simultaneous capture and detumble maneuvers are compared to the results obtained with our previous capture-only maneuvers (Virgili-Llop et al., 2017b,c, 2019). The simulation scenario as well as the experimental set-up are the same on both cases, allowing for a direct comparison between the two. In a capture-only maneuver the chaser's velocity at capture is constrained, getting the chaser in sync with the rotation of the target and eliminating any relative velocity between the two. If maintained, the matching velocity terminal constraint prolongs the capture conditions beyond a single instant, greatly facilitating the grasping operation. As no consideration to the post-capture momenta is given, a separate detumble maneuver is required after capture. The new contributions of this work, which are appearing for the first time in literature to the best knowledge of the authors, are: (1) the formulation and design of a simultaneous capture and detumble maneuver, and (2) the demonstration of the proposed maneuver's feasibility via extensive numerical simulations and hardware-in-the-loop experiments.

The rest of this paper is organized as follows. In section 2, the capture and detumble problem is presented, introducing the nomenclature and equations of motion. The terminal constrains enabling the simultaneous capture and detumble are derived in section 3. The convex programming based guidance is outlined in section 4 and the results of the numerical simulations are presented in section 5. The experimental setup and results are presented in section 6.

Finally, concluding remarks are drawn.

2. Problem and Notation

The capture and detumble maneuver involves a chaser spacecraft, equipped with a robotic manipulator, capturing and detumbling a Resident Space Object (RSO). A notional overview of the maneuver is shown in Figure 1.


Figure 1. Illustration of the problem.

When formulating the guidance problem, the following underlying assumptions are made Virgili-Llop et al. (2019):

A.1 Both the chaser and target RSO are composed of rigid bodies moving in three-dimensional space.

A.2 Environmental disturbances (solar radiation pressure, atmospheric drag etc.) as well as the effects of the relative orbital dynamics are neglected. This assumption is verified in section 5.2.

A.3 The state and inertia properties of the chaser and target RSO are known.

A.4 The target object to be captured has a designated grapple fixture.

A.5 The manipulator configuration and base-spacecraft attitude at capture, as well as the manipulator motion during the final seconds of the maneuver, ttps, is pre-set and not subjected to optimization (as discussed further later). tf is the capture time, tps marks the transition to the pre-set motion, and Δtps = tftps denotes the period of time when the motion is pre-set.

A.6 The chaser's mass remains constant during the maneuver, i.e., the amount of propellant used for the maneuver is negligibly small when compared to the chaser's mass.

2.1. Equations of Motion

The equations of motion of a multibody system can be written, in canonical form, as (Dubowsky and Papadopoulos, 1993):

Hu˙+Cu=τ,    (1)

where u denotes the generalized velocities, τ the generalized forces, H the generalized inertia matrix, and C the generalized convective inertia matrix.

The generalized coordinates can be divided between those referring to the base-spacecraft (·)0 and those referring to the manipulator (·)m.

u=[u0um]    τ=[τ0τm]    (2)

The number of degrees-of-freedom of the manipulator is denoted by nDoF, implying that um,τmnDoF and H,C(6+nDoF)×(6+nDoF). The angular or linear displacements of the manipulator joints are denoted by θmnDoF with θ˙m=um.

Invoking assumption A.2, a Cartesian Coordinate System (CCS) can be considered as inertial if its origin is chosen as a reference orbiting point and if the orientation of its axes is kept inertially fixed (the relative orbital dynamics are neglected). Without lacking generality, all vectors—unless explicitly specified—are projected into this inertial CCS I, so in general, for a vector a, the 3 × 1 column matrix containing the components of the projection of a into I is denoted by a{I}3, or simply a. In addition, all kinematic quantities are—unless otherwise specified—referring to the origin of the inertial frame.

The base-spacecraft generalized velocities, u06, contain the base-spacecraft's linear (r˙03) and angular (ω03) velocities. Equivalently, the base-spacecraft generalized forces, τ06, contain the resulting force (f03) and torque (n03) applied to the base-spacecraft center-of-mass.

u0=[r˙0ω0]    τ0=[f0n0]    (3)

The contributions from the base-spacecraft, manipulator, and the base-manipulator coupling can be exposed within the inertia matrices and equations of motion:

[H0H0mH0mTHm][u˙0u˙m]+[C0C0mCm0Cm][u0um]=[τ0τm]    (4)

Finally, let r03 denote the base-spacecraft position and q0S3 denote a unit quaternion (q0 ∈ {ℍ∣‖q0‖ = 1}), representing the orientation of the base-spacecraft CCS B with respect to the inertial CCS I. The differential kinematics of the attitude quaternion can be written as:

q˙0=12ω0q0    (5)

with ⊗ denoting the quaternion product and assuming that ω0 is promoted to a pure quaternion (i.e., with zero scalar part) (Wie, 2008).

3. Simultaneous Capture and Detumble Maneuver

The post-capture rotational state of the combined chaser-target system is governed by the resulting angular momentum of the combined system. When the chaser captures the target RSO the linear and angular momenta of both vehicles are combined. Regulating the momenta of the chaser at capture allows to control the post-capture angular momentum of the combined chaser-target system. In the proposed simultaneous capture and detumble maneuver the chaser's momenta at capture are constrained in order to achieve a zero post-capture angular momentum on the combined chaser-target system.

The linear pc3 and angular hc3 momenta of the chaser are obtained, using the generalized velocities and inertia, as follows (Yoshida and Umetani, 1993):

H0u0+H0mum=[pchc]    (6)

The chaser's linear momentum can also be expressed as:

pc=mcr˙c    (7)

where mc denotes the chaser's total mass and rc the position of the chaser's center-of-mass (see Figure 1).

Furthermore, the linear and angular momenta of the target RSO can be written as:

pr=mrr˙r    (8)
hr=Irωr    (9)

with mr, Ir, and ωr denoting the mass, inertia matrix, and angular velocity with respect to the inertial frame of the target RSO.

After the chaser captures the target RSO, as shown in Figure 1, the momenta of the newly formed chaser-target system becomes a combination of the momenta of the chaser and target RSO. The combined linear momentum, pcomb, is simply the sum of the individual linear momenta:

pcomb=pc+pr    (10)

The center-of-mass position of the newly formed chaser-target system is:

rcomb=mcrc+mrrrmc+mr    (11)

The angular momentum of the combined system, hcomb, using as pole the combined center-of-mass, is obtained as follows:

hcomb=hc+(rc-rcomb)×pc+hr+(rr-rcomb)×pr    (12)

with the (·)× operator representing the matricial equivalent of the vector cross product,

a×=[0-a3a2a30-a1-a2a10]    (13)

Combining Equation (12) with Equation (11) yields:

hcomb=hr+hc+mcmrmc+mr(rc-rr)×(r˙c-r˙r)    (14)

The target RSO to be captured is assumed to be uncontrolled and subjected to negligible perturbations, thus with constant linear and angular momenta. Additionally, the tumbling RSO center-of-mass is assumed to be initially at rest with respect to the inertial frame I. Thus, before the capture occurs, the RSO's linear velocity and momentum are zero.

r˙r=0    pr=0    for t<tf    (15)

These assumptions allow to simplify the expressions for the combined momenta as:

pcomb=pc    (16)
hcomb=hr+hc+mcmrmc+mr(rc-rr)×r˙c    (17)

3.1. Terminal Constraint for a Simultaneous Capture and Detumble Maneuver

3.1.1. Constraint on the Chaser's Momenta

In the proposed simultaneous capture and detumble maneuver the goal is to achieve a zero post-capture angular momentum:

hcomb=0    (18)

which imposes the following terminal constraint on the chaser's angular momentum, hc, and linear velocity, r˙c:

hc=-hr-mcmrmc+mr(rc-rr)×r˙c    (19)

This underlying terminal constraint can be casted in terms of generalized velocities u and incorporated in an optimization-based guidance approach. To do so, let's assume that the chaser's position and configuration at capture, rc, q0, θm, are fixed (how to set the terminal attitude is discussed in section 4.3):

θm(tf)=θmf    (20)
rc(tf)=rcf    (21)
q0(tf)=q0f    (22)

Therefore, the chaser velocities at capture, u(tf), are the only remaining variables left to impose the zero angular momentum constraint defined in Equation (19). The linear velocity at capture, r˙c(tf), can be constrained as follows in order to neutralize the RSO's angular momentum:

r˙c(tf)=r˙cf=mc+mrmcmr((rrf-rcf)×)+hr    (23)

with the (·)+ operator denoting the Moore-Penrose pseudoinverse.

As rrf-rcf is, in general, not perpendicular to hr, there is some leftover RSO's angular momentum that needs to be neutralized by the contributing chaser's angular momentum at capture hc(tf).

hc(tf)=hcf=-hr-mcmrmc+mr(rcf-rrf)×r˙cf    (24)

In conclusion, in order to achieve a simultaneous capture and detumble, the chaser's linear velocity and angular momentum at capture need to obey both Equations (23) and (24).

3.1.2. Constraint on the Chaser's Attitude and Manipulator's Motion

In addition to detumble the target, a smooth, impact-free capture is desired. In order to achieve it, a zero relative velocity between the chaser's end-effector and target's grappling fixture is enforced, ensuring that the gripper can gently capture the grappling fixture without incurring in velocity discontinuities that could generate high contact forces. This condition implies that the position and velocity of the chaser's manipulator end-effector E must match the position and velocity of the target's grapple fixture G.

re(tf)=rg(tf)    (25)
r˙e(tf)=r˙g(tf)    (26)
ωe(tf)=ωr(tf)    (27)


r˙g=ωr×(rg-rr)    (28)

In practice, this zero relative velocity condition is achieved by actuating the chaser's manipulator, such that the end-effector velocity matches the grapple fixture velocity. This manipulator motion is also exploited to absorb the relative velocity between the chaser and target (see Equation 23).

Let's now map the operational-space velocities of the end-effector, r˙e, to joint-space velocities, um, while imposing the required base-spacecraft rotation, ω0, to maintain the prescribed chaser's angular momentum, hcf, defined in Equation (24). The linear velocity of the end-effector, relative to the center-of-mass, r˙e,c, is:

r˙e,c(tf)=r˙e(tf)-r˙c(tf)=r˙g(tf)-r˙c(tf)    (29)

The twist of the end-effector, te,c, encapsulating the angular and relative linear velocities, can be written as follows:

te,c=[r˙e,cωe]=[r˙g-r˙cωr]    (30)

The end-effector Jacobians J0 and Jm map the joint-space velocities into operational-space velocities:

te,c=J0[r˙0,cω0]+Jmum    (31)

The inverse differential kinematics mapping can then be obtained:

um=Jm+(te,c-J0[r˙0,cω0])    (32)

The relative linear momentum of the chaser, with respect to its center-of-mass is, by definition, zero:

pc,c=0    (33)

The chaser's momenta, using the relative linear momentum, can then be written as follows:

H0[r˙0,cω0]+H0mum=[0hc]    (34)

By combining the velocity mapping and momenta equation the following expression is obtained:

[r˙0,cω0]=(H0-H0mJm+J0)-1([0hc]-H0mJm+te,c)    (35)

3.1.3. Combined Terminal Constraints

The terminal constraints for the simultaneous capture and detumble maneuver are now fully determined:

             θmf,rcf,q0fassumed known,see section 4.3             r˙cfobtained using Equation (23)             ω0fobtained using Equation (35),with hcf             given by Equation (24)             r˙0,cf obtained using Equation (35)             umf obtained using Equation (32)
r˙0f=r˙cf+r˙0,cf    (36)
r0f=rcf+r0,cf    (37)
r0,cfobtained via direct kinematics r0,cf=f(θmf,q0f)    (38)

3.2. Pre-set Manipulator Motion

During the last phase of the capture maneuver, t ∈ [tps, tf], the manipulator motion is pre-set (see assumption A.5). The need to pre-set the manipulator motion is required by the guidance algorithm in order to handle the obstacle avoidance considerations. More details are offered in section 4 and in Virgili-Llop et al. (2019).

The manipulator configuration at capture, θmf, is assumed to be also pre-set, and the manipulator velocity at capture, umf, is constrained by the terminal constraint presented in section 3.1.3. In order to define the manipulator's motion during the pre-set period a manipulator velocity profile is defined:

um(t)=umps(t)fort[tps,tf]    (39)

Any arbitrary velocity profile is allowed, but to illustrate the method and simplify the guidance, let's assume that the manipulator ramps-up, from a zero velocity um(t) = 0 at tps to its prescribed velocity at capture, umf, with a constant acceleration:

u˙mps=umfΔtps    (40)

Integrating back in time allows to obtain θm(tps) during the pre-set time period Δtps.

θm(t)=θmps(t) for t[tps,tf]    (41)

If the manipulator velocity at capture is high, Δtps can be shortened to ensure that the joint displacements, θm, remain within limits.

To reduce the control effort of the chaser, the base-spacecraft is operated, during the pre-set manipulator motion period, in a translation-flying/rotation-floating mode, where the base-spacecraft attitude is, for trajectory planning purposes, left uncontrolled. Figure 2 illustrates and summarizes the motion during the pre-set period.

n0(t)=0 for t[tps,tf]    (42)

Figure 2. Illustration of the capture constraints and pre-set period motion.

3.3. Decelerating and Momenta Transfer

Immediately after the smooth, impact-free capture, the manipulator velocity is decreased by applying, for example, a constant deceleration u˙m. During this post-capture deceleration phase, the momenta between the chaser and target RSO are equalized. The momenta transfer is performed via contact forces applied by the chaser's gripper (or by joint forces and torques to transfer momenta within the chaser's multibody system). At capture, the relative linear and angular momenta are stored as internal motion within the newly formed chaser-target multibody system. During the deceleration period, the forces applied to decelerate the manipulator equalize the momenta between the different bodies. As the momenta are gradually equalized, no impact is perceived by either vehicle.

Despite the nominally smooth, impact-free capture, the momenta equalization between the chaser and the target relies on contact forces between the chaser's gripper and the target's grapple fixture. Depending on the mass and inertia of the two vehicles, as well as the tumbling state and momenta transfer rates, these forces could be large, limiting the applicability of this technique or requiring a gripper able to sustain these large forces (Nanjangud et al., 2018). A thorough analysis of the requirements imposed to the chaser's manipulator falls outside the scope of this research.

It is also important to note that in the simultaneous capture and detumbling maneuver the resulting linear momentum is not constrained. As a result, the combined chaser-target system exhibits a residual linear velocity after the maneuver is completed.

pcomb0        r˙comb=r˙r=r˙c0     for t>tf    (43)

4. Guidance of the Simultaneous Capture and Detumble Maneuver as a Collection of Convex Programming Problems

For guidance purposes, the chaser's free-flying maneuver is divided into the two concurrent sub-maneuvers shown in Figure 3: a system wide translation and an internal re-configuration. The system-wide translation concerns only the motion of the chaser's center-of-mass, while the internal re-configuration focuses on the manipulator motion and base-spacecraft re-orientation around the chaser's center-of-mass. The complete maneuver is recovered as the combination of the two sub-maneuvers.


Figure 3. Sub-maneuvers. (A) System-wide translation. (B) Internal re-con-guration.

The guidance of these two sub-maneuvers is formulated as two consecutive optimization steps, solved via two sequential convex programming procedures. In a sequential convex programming procedure (Virgili-Llop and Romano, 2018), a convex approximation of a non-convex programming problem, formed around the previous iteration solution (·)~, is repeatedly solved until the cost, J, between two consecutive iterations, [k−1]J and [k]J, decreases below a certain threshold ϵ:

J[k1]J[k]1ϵ    (44)

This guidance approach, first proposed by Virgili-Llop et al. (2017b,c, 2019) for a capture-only maneuver, is here adapted for the simultaneous capture and detumble maneuver.

4.1. Step 1: Optimization of the System-Wide Translation

To cast the guidance of the system-wide translation into a convex programming problem, the maneuver time, tf, is fixed and the sub-maneuver transcribed with a direct transcription method (Hull, 1997; Conway, 2012; Sagliano, 2017). A total of N1 nodes are used, with each individual node denoted by n.

The dynamics of the system-wide translation are expressed in a state-space form as,

x[n+1]=Φr[n]x[n]+Ψr[n]f0[n]    (45)
x[n]=[rc[n]r˙c[n]]    (46)

with the state transition matrix Φr[n] and control matrix Ψr[n] defined as follows:

Φr[n]=[I3Δt[n]I303×3I3]    Ψr[n]=1mc[(Δt[n])22I3Δt[n]I3]    (47)
Δt[n]=t[n+1]-t[n]    (48)

with I3 and 03 × 3 denoting a 3 × 3 identity and zero matrix, respectively.

The cost to be minimized is formulated as the following quadratic expression, with W13×3 denoting the positive semi-definite weight matrix:

J1=n=1N1-1f0[n]TW1f0[n]Δt[n]    (49)

In order to satisfy the chaser's control limits, a maximum force constraint is enforced:

f0f0max    (50)

Additionally, in order to avoid colliding with the target, a keep-out zone constraint is used. This constraint ensures that the chaser, enclosed by the set Schaser, and the target RSO, enclosed by the set SRSO, don't collide. As the chaser's internal configuration is undefined during this first optimization step, Schaser is modeled as a sphere, centered around the chaser's center-of-mass C and enclosing all admissible internal configurations, θm, q0. As illustrated in Figure 3B, there is a configuration θmKO that defines the maximum radius RKO. As illustrated in Figure 3A, during the pre-set period of the maneuver, t ∈ [tps, tf], the manipulator motion is known and a smaller radius, RKOps(t), is used.

Schaser={{r3|rrcRKO}t[0,tps){r3|rrcRKOps(t)}t[tps,tf]    (51)

Between Schaser and SRSO a signed distance d is defined. If the two sets are not in contact d is positive and it is computed as the smallest distance required to bring the two sets in contact. If the two sets intersect d is negative and it is computed as the smallest distance required to get the two sets out of contact (Schulman et al., 2014). Then, the d vector is defined as the vector between the two closest supporting points Pchaser ∈ ∂Schaser and PRSO ∈ ∂SRSO, as illustrated in Figure 4.


Figure 4. Signed distance d and the d.

A convex approximation of the keep-out zone constraint, d > 0, is found by linearizing the constraint around the previous iteration solution r~c (Schulman et al., 2014):

d~+n^d~T(rc-r~c)0    (52)
n^d~=d~d~    (53)

with the quantities with (·)~ being computed using the previous iteration's solution r~c.

In order to complete the system-wide translation sub-maneuver's convex programming problem, the simultaneous capture detumble maneuver center-of-mass position and velocity terminal constraints, Equations (21) and (23), are enforced. Problem 1. System-wide convex programming problem to be sequentially solved.

min:n=1N11f0[n]TW1f0[n]Δt[n]    (49, repeated)
s.t: x[n+1]=Φr[n]x[n]+Ψr[n]f0[n]                                                  n=1N11    (45, repeated)
f0[n]f0 max                                                                                                n=1N11    (50, repeated)
d˜[n]+n^d˜[n]T(rc[n]r˜c[n])0                                                                    n=1N1    (52, repeated)
rc[n]=rcf                                                                                                                n=N1    (21, repeated)
r˙c[n]=r˙cf                                                                                                                n=N1    (23, repeated)

Notably, the reference trajectory, r~c, required to linearize the keep-out zone constraint is not available when the problem is solved for the first time (k = 1). A seed to the sequential convex programming procedure is obtained during the first iteration, k = 1, by removing the keep-out zone constraint in Equation (52) from the convex programming problem.

The sequential convex programming procedure of the system-wide translation enjoys guaranteed convergence to a locally optimal point—meeting the Karush-Kuhn-Tucker conditions (Boyd and Vandenberghe, 2004)—even if the RSO's shape, SRSO, is non-convex (Virgili-Llop et al., 2019). To obtain these convergence properties replace, during the second iteration k = 2, the RSO shape, SRSO, by its convex hull. The solution to this problem is an admissible point to the original non-convex problem and, if feasible, subsequent programming problems are bound to remain feasible with a non-strictly decreasing cost (descending algorithm). From the third iteration onwards, k ≥ 3, SRSO is decomposed into a collection of overlapping convex sets and the linearized keep-out zone constraint is enforced against all these convex sets.

4.2. Step 2: Optimization of the Internal Re-Configuration

In order to facilitate the optimization of the internal re-configuration sub-maneuver it is convenient to formulate the multibody dynamics within a non-inertial CCS C, which is assumed to have its origin on the chaser's center-of-mass and its axes parallel to the ones of the inertial CCS I. The equations of motion in the C CCS take the following form:

H|Cu˙|C+C|Cu|C=τ|C    (54)

Note that the inertia matrices and geometric Jacobians in the relative CCS C are equivalent to the ones with respect to the inertial CCS I:

H|C=H,    C|C=C,    J|C=J    (55)

As C is non-inertial, a set of generalized inertial forces τI, derived from the frame's acceleration, appear:

τ|C=τ+τI    (56)

These inertial forces, τI, are the reaction to the center-of-mass forces, fc = f0, mapped into their equivalent generalized forces. The kineto-static duality is used to obtain this mapping (Siciliano et al., 2009):

τI=-JcTf0    (57)
Jc=i=0i=nDoFJimii=0i=nDoFmi    (58)

with mi and Ji denoting the mass and geometric Jacobian of the ith link, respectively.

By definition, the portion of the Jacobian mapping the forces applied to the center-of-mass, fc, to forces applied to the base-spacecraft, f0 is an identity. Therefore, it follows that f0,I=-f0. Taking into account this relationship and the identities in Equation (55) the equations of motion in the C CCS can be re-written as:

H[r¨0,cu¯˙]+C[r˙0,cu¯]=[03×1τ¯-J¯cTf0]    (59)
u¯˙=[ω˙0u˙m]    u¯=[ω0um]    τ¯=[n0τm]    (60)

with τ¯3+nDoF denoting the control variables and J¯cT the sub-Jacobian, corresponding to the internal re-configuration sub-maneuver control variable τ¯.

During the pre-set period of the maneuver, the chaser is operated in a translation-flying/rotation-floating control mode, with the base-spacecraft attitude left uncontrolled (see Equation 42). The manipulator motion during the pre-set period is known and the center-of-mass trajectory for the entire maneuver has been obtained during the optimization of the

system wide translation sub-maneuver. Therefore, the attitude motion, ω0, during the pre-set period can be obtained with Equation (59) and integrated backwards to obtain q0 before initiating the internal re-configuration optimization. As the base-spacecraft attitude, ω0, q0, and manipulator motion, um, θm, are known during the pre-set period, the internal re-configuration optimization step only needs to extend until the start of the pre-set period ttps. The pre-set period is excluded from the internal re-configuration optimization. Note that during the first optimization step the keep-out zone constraint is applied to a sphere enclosing all possible chaser attitudes. Therefore, even if the attitude is not controlled during the pre-set period, the obstacle avoidance properties, as shown in Figure 2, are preserved.

In this optimization step, a sequential convex programming procedure is used to overcome the nonlinear kinematics and dynamics of the multibody system. A convex approximation of the problem is obtained by linearizing the kinematics and dynamics around the previous iteration solution, denoted by u¯~,θ~m,q~0. To ensure that the solution remains within the region where the linearization is valid, trust regions around θm and ω0 are enforced:

θm[n]-θ~m[n]1ρθm    (61)
ω0[n]-ω~0[n]1ρω0    (62)

with ρθm and ρω0 denoting the user-tunable radius of the trust region.

A direct transcription method with N2 nodes is used to transcribe the sub-maneuver, with the generalized accelerations u¯˙[n] serving as the optimization variables. A trapezoidal integration scheme is used to obtain the quadratic cost for this sub-maneuver with W2(nDoF+3)×(nDoF+3) denoting the positive semi-definite weight matrix.

J2=n=1N2-1τ¯[n+1]TW2τ¯[n+1]-τ¯[n]TW2τ¯[n]2Δt[n]    (63)

The velocities, u¯, and manipulator joint displacements, θm, can be propagated using state transition matrices.

u¯[n+1]=Φuu¯[n]+Θu[n]u¯˙[n]    (64)
Φu=I3+nDoF    (65)
Θu[n]=Δt[n]I3+nDoF    (66)
θm[n+1]=Φθθm[n]+Θθ[n][um[n]u˙m[n]]    (67)
Φθ=InDoF    (68)
Θθ[n]=[Δt[n]InDoF(Δt[n])22InDoF]    (69)

The linear approximation of the quaternion differential kinematics is obtained as follows:

ω0[n+1/2]=ω0[n+1]+ω0[n]2    (70)
ω^0[n+1/2]=ω0[n+1/2]ω0[n+1/2]    (71)
αω0[n+1/2]=ω0[n+1/2]Δt[n]2    (72)
fq[n](q0[n],ω0[n+1/2])=[ω^0[n+1/2]sinαω0[n+1/2]cosαω0[n+1/2]]q0[n]    (73)
q0[n+1]q~0[n+1]+fq[q0[n]-q~0[n]ω0[n+1/2]-ω~0[n+1/2]]    (74)

The following partial linearization of the multibody dynamics is used:

τ¯-τ¯~I+H¯~[r¨0|C-r¨~0|Cu¯˙-u¯˙~]+C¯~[r˙0|C-r˙~0|Cu¯-u¯~]    (75)

Limits on the joint displacements, joint forces, and base-spacecraft torques are enforced:

θmminθmθmmax    (76)
τmminτmτmmax    (77)
n0n0max    (78)

and the entry conditions to the pre-set period are used as the terminal constraints.

θm[n]=θmps(tps)    n=N2    (79)
um[n]=umps(tps)    n=N2    (80)
q0[n]=q0ps(tps)    n=N2    (81)
ω0[n]=ω0ps(tps)    n=N2    (82)

Problem 2. Internal re-configuration convex programming problem to be sequentially solved.

min:n=1N21τ¯[n+1]TW2τ¯[n+1]τ¯[n]TW2τ¯[n]2Δt[n]    (63, repeated)
s.t.:τ¯[n]=τ¯˜Itexkk[n]+H¯˜[n][r¨0,c[n]r¨˜0,c[n]u¯˙[n]u¯˙˜[n]]+C¯˜[n][r˙0,c[n]r˙˜0,c[n]u¯[n]u¯˜[n]]                    n=1N2    (75, repeated)
q0[n+1]=q˜0[n+1]+fq[q0[n]q˜0[n]ω0[n+1/2]ω˜0[n+1/2]]                                              n=1N21    (74, repeated)
u¯[n+1]=Φuu¯[n]+Θu[n]u¯.[n]                                                                                          n=1N21    (64, repeated)
θm[n+1]=Φθθm[n]+Θθ[n][ωm[n]ω˙m[n]]                                                                                    n=1N21    (67, repeated)
θmminθm[n]θm max                                                                                                  n=1N2    (76, repeated)
τmminτm[n]τmmax                                                                                                     n=1N2    (77, repeated)
n0[n]n0 max                                                                                                                   n=1N21    (78, repeated)
θm[n]=θmps(tps)                                                                                                                    n=N2    (79, repeated)
um[n]=umps(tps)                                                                                                                     n=N2    (80, repeated)
q0[n]=q0ps(tps)                                                                                                                     n=N2    (81, repeated)
ω0[n]=ω0ps(tps)                                                                                                                  n=N2    (82, repeated)
θm[n]θ˜m[n]1ρθm                                                                                                   n=1N2    (61, repeated)
ω0[n]ω˜0[n]1ρω0                                                                                                   n=1N2    (62, repeated)

The convex approximation of the problem relies on a linearization around a set trajectory u¯~,θ~m,q~0. The first time the problem is solved there is no previous solution to rely on and an initial guess is required. An initial guess for the base-spacecraft's attitude and manipulator's motion can be obtained assuming that the base-spacecraft performs an eigenaxis maneuver and the manipulator follows a linear trajectory in joint space (i.e., minimum deflection from initial to final configuration).

4.3. Selecting the Final Base-Spacecraft Attitude q0f

The final position of the chaser's center-of-mass is set by the pre-set final manipulator configuration θmf. This condition, partially specifies the attitude of the chaser, yet leaving undetermined an angular displacement, ϕ, about the r^e,c axis, as shown in Figure 5.


Figure 5. The angular displacement about the axis connecting the center-of-mass and the end-effector/grapple fixture is undetermined.

During preliminary simulations it became apparent that small manipulator velocities increase the probability of obtaining feasible maneuvers, indicating that umf is a proxy for the maneuver's complexity. The manipulator velocities corresponding to several ϕ displacements can be computed, and the angular displacement, ϕ, that produces the minimum umf can be used to fully define the base-spacecraft capture attitude, and by extension, the manipulator and base-spacecraft attitude motion during the pre-set period.

4.4. Selecting the Initial and Final Time

In order to cast both sub-maneuver optimization problems as convex programming problems, they are converted to fixed-final-time problems. As discussed by Virgili-Llop et al. (2019), and later shown in section 5, longer final times, tf, reduce, in broad terms, the cost of the maneuver. The user is then prompted to select the longest possible maneuver duration, only limited by the available computing power, or by other factors as communication, or illumination windows. Once the maneuver time is fixed, the following question arises: When does the maneuver start? The window when the maneuver can occur, limited by illumination, communication, or other factors, may be longer than the actual maneuver duration. Instead of starting the maneuver right at the beginning of the window, it may be advantageous to wait for more favorable capture conditions. As the manipulator velocity is a proxy for the capture complexity, a capture condition inducing low manipulator velocities is, in general, desired. The chaser can analyze the capture conditions at different times during the capture window, and start the maneuver when the smallest manipulator velocity at capture is anticipated. The numerical simulations shown in section 5 indicate that this strategy helps to increase the ability of the guidance algorithm to find feasible solutions.

5. Numerical Simulations

In order to illustrate the proposed simultaneous capture and detumble maneuver, a numerical simulation case study is provided. The chaser and target RSO used are shown in Figure 6. The parameters used in the simulations are provided in Table 1. For added insight, a Monte Carlo analysis was conducted for 11 maneuver times (tf) and 11 initial RSO angular velocity magnitudes (∥ωr(t = 0)∥). For each pair of tf and ∥ωr(t = 0)∥, 100 simulations with randomized RSO initial orientations (as proposed by Shoemake, 1995) and angular velocity directions have been conducted. For each case two capture maneuvers are simulated, one starting the maneuver right away with the initial random orientation and velocity, while the other allowing the chaser to wait for more favorable capture conditions. A total of 11 × 11 × 100 × 2 = 24, 200 maneuvers have been simulated, allowing to assess the robustness of the proposed guidance. The post-capture manipulator deceleration has not been simulated and it is assumed to be feasible for all cases.


Figure 6. Chaser and RSO models used in the numerical simulations. (A) Chaser stowed. (B) Chaser capture. (C) RSO model.


Table 1. Numerical simulation parameters.

5.1. Numerical Simulation Results

Figure 7 shows the percentage of feasible simultaneous maneuvers found by the proposed guidance algorithm. Figure 7A shows the feasibility with respect to the target RSO initial tumbling rate, while Figure 7B shows the feasibility with respect to the target's angular momentum, normalized by the chaser's largest moment of inertia. The results suggest that the simultaneous capture and detumble maneuver gets increasingly difficult as the RSO's tumbling rate increases.


Figure 7. Simulation results: percentage of feasible maneuvers. (A) With respect to target's initial tumbling rate. (B) With respect to target's angular momentum.

The strategy of initiating the maneuver right away, or waiting for more favorable conditions within the capture window is compared in Figure 7. The capture window has been assumed to last for one tumbling period (P = 2π/‖ωr‖), upper bounded at 5 min. From the results shown in Figure 7, it can be concluded that waiting for more favorable capture conditions significantly increases the guidance ability to find feasible maneuvers.

With the particular combination of chaser and target simulated here, the proposed guidance approach is able to find feasible simultaneous capture and detumble maneuvers for moderate tumbling rates (<7 deg/s) and a wide range of initial RSO states. These feasibility statistics contrast with the remarkable 99.95% success rate obtained by capture-only maneuvers using the matching velocity terminal constraint, which were shown to be insensitive to the RSO's tumbling rate—at least up to 10 deg/s (Virgili-Llop et al., 2019). The simultaneous capture and detumble terminal constraints significantly differ from the matching velocity ones. The terminal constraint enforced on a simultaneous capture and detumble maneuver, produces a capture under relative velocity, only offering an instantaneous capture window. The relative velocity and manipulator velocity at capture (see Equations 23 and 32) increase as the target's angular momentum to be neutralized increases, suggesting that the maneuver becomes more challenging for large target inertias or high tumbling rates. This seems to indicate that the feasibility of the maneuver decreases with increasing RSO's rates and inertia. The broader question of maneuver feasibility, or reachability, is in general very difficult to answer and constitutes its own research field (Zagaris and Romano, 2018).

For the converged cases, Figures 8, 9 show the mean sub-maneuver cost and mean number of iterations required by each sequential convex programming procedure to converge. As expected, the system-wide sub-maneuver cost tends to increase as the tumbling rate increases or the maneuver time decreases. The internal re-configuration sub-maneuver cost exhibits a maximum cost at intermediate tumbling rates while also appearing to decrease for increasing maneuver durations. Figures 10 shows the convergence rate for both optimization steps. From the convergence rate figures it appears that limiting number of iterations of each optimization step to, for example nine, upper-bounds the guidance computation time, without incurring in an excessive loss of optimality (cost decreases after nine iterations are small on both optimization steps).


Figure 8. Simulation results: sub-maneuvers mean cost. (A) System-wide translation. (B) Internal re-con-guration.


Figure 9. Simulation results: mean iterations to converge. (A) System-wide translation. (B) Internal re-con-guration.


Figure 10. Simulation results: convergence rate. Dashed line shows the convergence threshold. (A) System-wide translation. (B) Internal re-con-guration.

Figures 8,9 can be compared to their counterparts in Virgili-Llop et al. (2019), where a capture-only maneuver was studied, showing that adding the detumble terminal constraints makes the maneuver more expensive and computationally complex.

A video showing the two sequential convex programming procedures used on both optimization steps is attached as Supplementary Material.

5.2. Verification of Assumption A.2

A brief analysis to confirm the validity of the assumption that the environmental and relative orbital dynamics disturbances are small and can be safely neglected is now presented. The order of magnitude of the relative orbital dynamics can be estimated, using the Clohessy-Wiltshire equations of relative motion (Fehse, 2003), by r¨CW3no2r+2no (with no denoting the orbit's mean motion). The results obtained with the numerical simulations, with r ≤ 10 m and ṙ ≤ 0.39 m s-1 (on a 10 deg/s tumbling rate case), imply that, at low orbital altitudes (500 km circular orbit), r¨CW is 1.9% of the chaser's maximum acceleration, F0 max/mc. At geostationary orbital altitudes, r¨CW drops to 0.12% of F0 max/mc. To bound the effects of differential aerodynamic drag let's assume that the target is operating at low altitudes (500 km circular orbit), orbiting through a residual atmosphere with a density of 10−11 kg m−3. Additionally, let's assume that the target's cross section area is A = 12 m2 and with a drag coefficient Cd = 2.2. With these conditions, the target would be subjected to 0.008 N of drag. If the chaser did not experience any drag—worst-case scenario—the differential aerodynamic drag would represent 0.12% of F0 max. For the solar radiation pressure a similar analysis can be conducted, showing that a worst-case solar radiation pressure differential would amount to 0.002% of F0 max.

6. Experiments on a Planar Air Bearing Table

In order to experimentally demonstrate that the proposed maneuver actually detumbles the target upon capture and to provide empirical evidence that the proposed guidance approach is suitable for onboard implementation and real-time execution, the proposed simultaneous capture and detumble maneuver has been tested on the POSEIDYN hardware-in-the-loop dynamic planar air bearing test bed (Romano et al., 2007; Zappulla et al., 2017b). In this test bed, experimental demonstrations of docking maneuvers with tumbling objects have been previously conducted (Wilde et al., 2016; Park et al., 2017), and the set-up used in this experimental campaign, which is shown in Figure 11, is similar to the one used in previous capture-only experiments (Virgili-Llop et al., 2019).


Figure 11. Floating Spacecraft Simulators used during the experiments at the Spacecraft Robotics Laboratory POSEIDYN planar air bearing test bed of the Naval Postgraduate School.

6.1. Experimental Set-up

The POSEIDYN air bearing test bed consists of a smooth and horizontally leveled 4-by-4 meter granite table and multiple Floating Spacecraft Simulators (FSS) (see Zappulla et al., 2017b). A Floating Spacecraft Simulator (FSS), equipped with a three-link robotic manipulator, is used as the chaser spacecraft while a second FSS, with mock solar panels, is used as the rotating RSO to be captured.

Three planar air bearings mounted on the FSS greatly reduce its friction with the granite table. This quasi-frictionless dynamics combined with the horizontally leveled table produce a low residual acceleration environment in two translation and one rotation degree-of-freedom (planar motion). Eight cold-gas thrusters (Lugini and Romano, 2009), modulated using a Delta-Sigma modulator (Ciarcià et al., 2017; Zappulla et al., 2017a), provide the required control forces, while a reaction wheel, controlled via a speed-mode controller, actuates the requested torques (Virgili-Llop et al., 2017a). A three-link manipulator is mounted on the chaser FSS (Virgili-Llop et al., 2016, 2017a). The manipulator joints are all revolute. The first two links are identical and host an additional air bearing to support their weight. The third link of the manipulator is a minimalistic joint that functions like a wrist, allowing the gripper to adjust its orientation. The gripper is based on the open-source OpenHand Model T42 (Ma et al., 2013). Selected parameters of the FSS are provided in Table 2.


Table 2. Selected Floating Spacecraft Simulator parameters (Zappulla et al., 2017b).

During the experiments, the navigation is solved by an overhead motion capture system (VICON), providing position and orientation measurements of the different FSS on the granite table. The VICON data is augmented by an onboard Fiber Optic Gyroscope (FOG) and fused with a discrete Kalman filter (Zappulla et al., 2017b).

6.2. Experimental Maneuver

The nominal initial conditions of the maneuver are shown in Figure 12. These initial conditions present a non-trivial guidance problem, requiring multiple iterations on both sequential convex programming procedures. The initial conditions were selected to obtain a trajectory that remains within the 4-by-4 meter granite table. The RSO rotation rate was set at 5 deg/s (above this rate the numerical simulations show the chaser trajectory extending outside of the granite table).


Figure 12. Experiment initial conditions on the POSEIDYN test bed.

During the experiments the chaser first moves to its prescribed initial position while acquiring the initial manipulator configuration. The capture maneuver starts when the RSO achieves a pre-determined initial attitude (seen in Figure 12). Then, the two-step optimization problem is solved onboard the chaser FSS every ten seconds. The solutions τ0 and u¯˙ are applied in a feed-forward arrangement with a linear-quadratic regulator in a feedback loop, correcting any deviations from the nominal trajectory (Virgili-Llop et al., 2017a). The open-source nonlinear programming solver IPOPT (Wächter and Biegler, 2005) is used to solve the convex programming problems onboard the chaser FSS and the open-source SPART toolkit (Virgili-Llop, 2017) is used to obtain all the manipulator-related kinematic and dynamic quantities. Selected guidance parameters are provided in Table 3.


Table 3. Selected guidance parameters used during the experiments.

When the chaser reaches ttps no new guidance updates are produced and the chaser follows the latest available solution. Finally, when the manipulator's end-effector is within a set distance with respect to the grapple fixture the gripper closes, capturing the rotating RSO. The FSS emulating the RSO to be captured is also controlled up to the capture instant. Its position and orientation are controlled in order to follow the prescribed rotation rate. When the RSO is captured the control stops, allowing the combined chaser-target system to freely drift as a single rigid body.

6.3. Experimental Results

Ten experiments were performed sequentially in a single session with all of them successfully completing the capture and detumble maneuver. This shows that the proposed guidance is able to produce repeatable results. A video showing an example maneuver, the telemetry replays for all ten experiments, and the comparison with a capture-only maneuver is attached as Supplementary Material.

Eight snapshots of the first experiment are shown in Figure 13. The bold line denotes the trajectory of the chaser's center-of-mass, the bold circles, •, denote the locations where the guidance updates are delivered, the triangle, △, denotes when the gripper closes and capture achieved, and the star, ⋆, denotes when the free-drifting starts.


Figure 13. Experimental results: telemetry snapshots of the first experiment.

Figure 14 shows the evolution of the angular velocity. Additionally, Figure 15 shows how the linear velocity (Figure 15A) and manipulator's configuration (Figure 15B) evolve. Due to the accelerations imparted immediately after capture, the navigation filter on the target FSS diverges during the manipulator's deceleration period. When the forces between the chaser and target subside, the filter re-converges, revealing a chaser-target system rigidly connected with matching roto-translational states.


Figure 14. Experimental results: evolution of the angular velocity.


Figure 15. Experimental results: linear velocity and manipulator's configuration. (A) Linear velocity. (B) Manipulator's con-guration.

The detumbled rotational state achieved after the maneuver is completed is most clearly seen in Figure 14. These figures show how the angular velocity of both vehicles is reduced to a near-zero.

To allow for a direct comparison, the time-history of the angular velocity on previously conducted capture-only maneuvers with matching velocity terminal constraints is displayed in Figure 16. As no momenta considerations are included within the maneuver's design, this figure shows how the systems retains a large angular velocity after capture. The contrast between Figure 14 (simultaneous capture and detumble) and Figure 16 (capture-only) is a testament to the simultaneous capture and detumble maneuver's effectiveness.


Figure 16. Angular velocity on capture-only maneuvers with matching velocity terminal constraints (data from Virgili-Llop et al., 2019).

Going back to the results of the proposed maneuver, Figure 15A shows the linear velocity magnitude of both vehicles, and how their linear velocities converge after the momenta equalization is complete to a non-zero value, as anticipated in section 3.3. The post-capture manipulator deceleration, equalizing the momenta between both vehicles, is shown in Figure 15B. The condition um = 0 imposed at t = tps (see section 3.2) can be also seen in this figure.

Figures 17, 18 show the number of iterations required to converge and the total amount of computational time used on both optimization steps. It is worth pointing out that the number of iterations required to converge is small and the required computation time is well within the limits. These results confirm that the proposed guidance is suitable for onboard implementation and real-time use.


Figure 17. Experimental results: Step 1 computational effort. (A) Iterations. (B) Computation time.


Figure 18. Experimental results: Step 2 computational effort. (A) Iterations. (B) Computation time.

The experiments success also indicate that the proposed guidance is able to cope with the inherent uncertainties and variability present in hardware-in-the-loop experiments. During the experiments, the target uses its thrusters to keep itself at the nominal position and rotating at the specified rate. The target's control is effective but position and angular rate fluctuations are still present (as clearly seen in Figure 14). Additionally, the discrete actuation of the chaser's thrusters along with inertia uncertainties and unmodeled hardware effects deviate the chaser from its intended trajectory. Periodically recomputing the guidance trajectory allows to adjust for both chaser and target off-nominal positions, while the tracking controller helps the chaser stick to the reference trajectory.

7. Conclusions

A maneuver to simultaneous capture and detumble a space object has been proposed here for the first time. In order to detumble the target upon capture, a terminal constraint on the chaser's momenta is introduced. A solution to the guidance problem is obtained by solving a collection of convex programming problems. Given the deterministic convergence properties of convex programming, the proposed guidance algorithm is suitable for onboard implementation and real-time use. Numerical simulations revealed that the feasibility of a simultaneous capture and detumble maneuver decreases as the target's angular momentum increases. The simulations also indicate that it is more difficult to obtain feasible solutions for a simultaneous capture and detumble maneuver than for a capture-only maneuver with a matching velocity terminal constraint. A set of hardware-in-the-loop experiments have provided empirical evidence of the simultaneous capture and detumble maneuver efficacy and real-time capabilities of the proposed guidance algorithm. These hardware experiments also show that the potential added difficulties of the proposed approach are not insurmountable, at least for moderate rotation rates and when the target RSO is of similar size than the chaser spacecraft. Larger RSO or higher rates may impose more stringent requirements on the chaser-spacecraft and manipulator design, potentially limiting its applicability.

Author Contributions

JV-L and MR developed the simultaneous capture and detumble maneuver and its associated guidance. Additionally JV-L performed the numerical simulations and experiments.

Conflict of Interest Statement

The authors declare that the research was conducted in the absence of any commercial or financial relationships that could be construed as a potential conflict of interest.


The authors acknowledge the work of Dr. R. Zappulla II, who contributed to the development of the Floating Spacecraft Simulator onboard software, as well as of Mr. D. Alvarez, Dr. M. Wilde, Mr. J. Drew, and Mr. A. Bradstreet, who greatly contributed to the development of the robotic manipulator used during the experimental demonstration. The numerical simulations presented in section 5 have been conducted on the High Performance Computing cluster Hamming at the Naval Postgraduate School.

Supplementary Material

The Supplementary Material for this article can be found online at:


Aghili, F. (2008). “Optimal control for robotic capturing and passivation of a tumbling satellite with unknown dynamics,” in AIAA Guidance, Navigation, and Control Conference and Exhibit, Vol. 21 (Honolulu, HI). doi: 10.2514/6.2008-7274

CrossRef Full Text | Google Scholar

Aghili, F. (2009a). “Coordination control of a free-flying manipulator and its base attitude to capture and detumble a noncooperative satellite,” in 2009 IEEE/RSJ International Conference on Intelligent Robots and Systems (St. Louis, MO), 2365–2372.

Google Scholar

Aghili, F. (2009b). Time-optimal detumbling control of spacecraft. J. Guid. Control Dyn. 32:1671. doi: 10.2514/1.43189

CrossRef Full Text | Google Scholar

Arthur, S., Emde, C., and McGuire, N. (2007). “Assessment of the realtime preemption patches (rt-preempt) and their impact on the general purpose performance of the system,” in Proceedings of the 9th Real-Time Linux Workshop (Linz).

Google Scholar

Bennett, S. B. (1993). “INTELSAT VI reboost video presentation,” in Conference Proceedings National Telesystems Conference 1993 (Atlanta, GA), 65–68.

Google Scholar

Bonnal, C., Ruault, J.-M., and Desjean, M.-C. (2013). Active debris removal: recent progress and current trends. Acta Astronautica 85(Suppl. C):51–60. doi: 10.1016/j.actaastro.2012.11.009

CrossRef Full Text | Google Scholar

Boyarko, G., Yakimenko, O., and Romano, M. (2011). Optimal rendezvous trajectories of a controlled spacecraft and a tumbling object. J. Guid. Control Dyn. 34, 1239–1252. doi: 10.2514/1.47645

CrossRef Full Text | Google Scholar

Boyd, S., and Vandenberghe, L. (2004). Convex Optimization. Cambridge, UK: Cambridge University Press.

Google Scholar

Ciarcià, M., Cristi, R., and Romano, M. M. (2017). Emulating scaled clohessy–wiltshire dynamics on an air-bearing spacecraft simulation testbed. J. Guid. Control Dyn. 40, 2496–2510. doi: 10.2514/1.G002585

CrossRef Full Text | Google Scholar

Conway, B. A. (2012). A survey of methods available for the numerical optimization of continuous dynamic systems. J. Optim. Theory Appl. 152, 271–306. doi: 10.1007/s10957-011-9918-z

CrossRef Full Text | Google Scholar

Dubowsky, S., and Papadopoulos, E. (1993). The kinematics, dynamics, and control of free-flying and free-floating space robotic systems. IEEE Trans. Robot. Automat. 9, 531–543. doi: 10.1109/70.258046

CrossRef Full Text | Google Scholar

Ellery, A., Kreisel, J., and Sommer, B. (2008). The case for robotic on-orbit servicing of spacecraft: spacecraft reliability is a myth. Acta Astronautica 63, 632–648. doi: 10.1016/j.actaastro.2008.01.042

CrossRef Full Text | Google Scholar

Fehse, W. (2003). Automated Rendezvous and Docking of Spacecraft. Cambridge, UK: Cambridge University Press.

Google Scholar

Flores-Abad, A., Ma, O., Pham, K., and Ulrich, S. (2014a). A review of space robotics technologies for on-orbit servicing. Prog. Aerospace Sci. 68, 1–26. doi: 10.1016/j.paerosci.2014.03.002

CrossRef Full Text | Google Scholar

Flores-Abad, A., Wei, Z., Ma, O., and Pham, K. (2014b). Optimal control of space robots for capturing a tumbling object with uncertainties. J. Guid. Control Dyn. 37, 2014–2017. doi: 10.2514/1.G000003

CrossRef Full Text | Google Scholar

Flores-Abad, A., Zhang, L., Wei, Z., and Ma, O. (2016). Optimal capture of a tumbling object in orbit using a space manipulator. J. Intell. Robot. Syst. 86:199. doi: 10.1007/s10846-016-0417-1

CrossRef Full Text | Google Scholar

Gasbarri, P., and Pisculli, A. (2015). Dynamic/control interactions between flexible orbiting space-robot during grasping, docking and post-docking manoeuvres. Acta Astronautica 110(Suppl. C):225–238. doi: 10.1016/j.actaastro.2015.01.024

CrossRef Full Text | Google Scholar

Goodman, J. L. (2006). History of space shuttle rendezvous and proximity operations. J. Spacecraft Rockets 43, 944–959. doi: 10.2514/1.19653

CrossRef Full Text | Google Scholar

Grady, K. (1985). “The dynamics of the solar maximum mission spacecraft capture and redeployment on sts-41c,” in AAS 85-060 Guidance and Control 1985, Advances in the Astronautical Sciences, Vol. 57 (Keystone, CO), 495.

Google Scholar

Hauck, H. F., and Gardner, A. D. (1985). “Space salvage - a report on shuttle mission sts 51-a,” in Proceedings Society of Experimental Test Pilots, Symposium, 29th, September 25-28, 1985 (Beverly Hills, CA).

Hull, D. G. (1997). Conversion of optimal control problems into parameter optimization problems. J. Guid. Control Dyn. 20, 57–60. doi: 10.2514/2.4033

CrossRef Full Text | Google Scholar

Jacobsen, S., Lee, C., Zhu, C., and Dubowsky, S. (2002). “Planning of safe kinematic trajectories for free flying robots approaching an uncontrolled spinning satellite,” in ASME 2002 International Design Engineering Technical Conferences and Computers and Information in Engineering Conference (Montreal, QC: American Society of Mechanical Engineers), 1145–1151.

Google Scholar

Lampariello, R. (2010). “Motion planning for the on-orbit grasping of a non-cooperative target satellite with collision avoidance,” in International Symposium on Artificial Intelligence, Robotics and Automation in Space, Vol. 1 (Sapporo), 636–643.

Google Scholar

Lampariello, R., and Hirzinger, G. (2013). “Generating feasible trajectories for autonomous on-orbit grasping of spinning debris in a useful time,” in Intelligent Robots and Systems (IROS), 2013 IEEE/RSJ International Conference on (Tokyo: IEEE), 5652–5659.

Google Scholar

Long, A. M., Richards, M. G., and Hastings, D. E. (2007). On-orbit servicing: a new value proposition for satellite design and operation. J. Spacecraft Rockets 44, 964–976. doi: 10.2514/1.27117

CrossRef Full Text | Google Scholar

Lugini, C., and Romano, M. (2009). A ballistic-pendulum test stand to characterize small cold-gas thruster nozzles. Acta Astronautica 64, 615–625. doi: 10.1016/j.actaastro.2008.11.001

CrossRef Full Text | Google Scholar

Ma, R. R., Odhner, L. U., and Dollar, A. M. (2013). “A modular, open-source 3d printed underactuated hand,” in Robotics and Automation (ICRA), 2013 IEEE International Conference on (Karlsruhe: IEEE), 2737–2743.

Google Scholar

MacPherson, R., Hockman, B., Bylard, A., Estrada, M. A., Cutkosky, M. R., and Pavone, M. (2018). “Trajectory optimization for dynamic grasping in space using adhesive grippers,” in Field and Service Robotics, Vol 5, eds M. Hutter and R. Siegwart (Cham: Springer Proceedings in Advanced Robotics).

Google Scholar

Nanjangud, A., Blacker, P. C., Bandyopadhyay, S., and Gao, Y. (2018). Robotics and AI-enabled on-orbit operations with future generation of small satellites. Proc. IEEE 106, 429–439. doi: 10.1109/JPROC.2018.2794829

CrossRef Full Text | Google Scholar

Oda, M. (2000). “Experiences and lessons learned from the ets-vii robot satellite,” in Robotics and Automation, 2000. Proceedings. ICRA '00. IEEE International Conference on, Vol. 1 (San Francisco, CA), 914–919.

Google Scholar

Ogilvie, A., Allport, J., Hannah, M., and Lymer, J. (2008). “Autonomous satellite servicing using the orbital express demonstration manipulator system,” in Proceedings of the 9th International Symposium on Artificial Intelligence, Robotics and Automation in Space (i-SAIRAS'08) (Hollywood, CA), 25–29.

Google Scholar

Park, H., Romano, M., Zagaris, C., Virgili-Llop, J., and Zappulla, R. I. (2017). “Nonlinear model predictive control for spacecraft rendezvous and docking with a rotating target,” in 27th AAS/AIAA Spaceflight Mechanics Meeting, Feb. 6-9, 2017 (San Antonio, TX).

Google Scholar

Penin, L. F., Matsumoto, K., and Wakabayashi, S. (2000). “Force reflection for time-delayed teleoperation of space robots,” in Proceedings 2000 ICRA. Millennium Conference. IEEE International Conference on Robotics and Automation. Symposia Proceedings (Cat. No.00CH37065), Vol. 4 (San Francisco, CA), 3120–3125.

Google Scholar

Persson, S. M., and Sharf, I. (2015). “Ground-based experiments towards the interception of non-cooperative space debris with a robotic manipulator,” in 2015 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS) (Hamburg), 5441–5446.

Google Scholar

Romano, M., Friedman, D. A., and Shay, T. J. (2007). Laboratory experimentation of autonomous spacecraft approach and docking to a collaborative target. J. Spacecraft Rockets 44, 164–173. doi: 10.2514/1.22092

CrossRef Full Text | Google Scholar

Rybus, T., and Seweryn, K. (2015). “Application of rapidly-exploring random trees (RRT) algorithm for trajectory planning of free-floating space manipulator,” in 2015 10th International Workshop on Robot Motion and Control (RoMoCo) (Poznan), 91–96.

Google Scholar

Rybus, T., Seweryn, K., and Sasiadek, J. Z. (2014). “Optimal detumbling of defunct spacecraft using space robots,” in 2014 19th International Conference on Methods and Models in Automation and Robotics (MMAR) (Miedzyzdroje), 64–69.

Google Scholar

Rybus, T., Seweryn, K., and Sasiadek, J. Z. (2017). Control system for free-floating space manipulator based on nonlinear model predictive control (nmpc). J. Intell. Robot. Syst. 85, 491–509. doi: 10.1007/s10846-016-0396-2

CrossRef Full Text | Google Scholar

Sagliano, M. (2017). Pseudospectral convex optimization for powered descent and landing. J. Guid. Control Dyn. 41, 320–334. doi: 10.2514/1.G002818

CrossRef Full Text | Google Scholar

Sallaberger, C., Force, S. P. T., and Agency, C. S. (1997). Canadian space robotic activities. Acta Astronautica 41, 239–246. doi: 10.1016/S0094-5765(98)00082-4

CrossRef Full Text | Google Scholar

Schulman, J., Duan, Y., Ho, J., Lee, A., Awwal, I., Bradlow, H., et al. (2014). Motion planning with sequential convex optimization and convex collision checking. Int. J. Robot. Res. 33, 1251–1270. doi: 10.1177/0278364914528132

CrossRef Full Text | Google Scholar

Seweryn, K., and Banaszkiewicz, M. (2008). “Optimization of the trajectory of a general free-flying manipulator during the rendezvous maneuver,” in AIAA Guidance, Navigation, and Control (GNC) Conference (Boston, MA: American Institute of Aeronautics and Astronautics).

Google Scholar

Shah, S. V., Sharf, I., and Misra, A. (2013). “Reactionless path planning strategies for capture of tumbling objects in space using a dual-arm robotic system,” in AIAA Guidance, Navigation, and Control (GNC) Conference (Boston, MA: American Institute of Aeronautics and Astronautics).

Google Scholar

Shan, M., Guo, J., and Gill, E. (2016). Review and comparison of active space debris capturing and removal methods. Prog. Aerospace Sci. 80, 18–32. doi: 10.1016/j.paerosci.2015.11.001

CrossRef Full Text | Google Scholar

Shoemake, K. (1995). “Chapter 6: uniform random Rotations,” in Graphics Gems III (Ap Professional), ed A. Glassner (Boston, MA: Academic Press Professional), 124–132.

Siciliano, B., Sciavicco, L., Villani, L., and Oriolo, G. (2009). Robotics Modelling, Planning and Control. New York, NY: Springer.

Google Scholar

Stieber, M., Trudel, C., and Hunter, D. (1997). “Robotic systems for the international space station,” in Robotics and Automation, 1997. Proceedings., 1997 IEEE International Conference on, Vol. 4 (Albuquerque, NM), 3068–3073.

Google Scholar

Stolfi, A., Gasbarri, P., and Sabatini, M. (2017). A combined impedance-pd approach for controlling a dual-arm space manipulator in the capture of a non-cooperative target. Acta Astronautica 139(Suppl. C):243–253. doi: 10.1016/j.actaastro.2017.07.014

CrossRef Full Text | Google Scholar

Uyama, N., and Narumi, T. (2016). Hybrid impedance/position control of a free-flying space robot for detumbling a noncooperative satellite. IFAC-PapersOnLine 49, 230–235. doi: 10.1016/j.ifacol.2016.09.040

CrossRef Full Text | Google Scholar

Virgili-Llop, J. (2017). SPART: Spacecraft Robotics Toolkit. Available online at:

Virgili-Llop, J., Drew, J., and Romano, M. (2016). “Design and parameter identification by laboratory experiments of a prototype modular robotic arm for orbiting spacecraft applications,” in 6th International Conference on Astrodynamics Tools and Techniques (ICATT), 14-17 March 2016 (Darmstadt).

Google Scholar

Virgili-Llop, J., Drew, J. V., Zappulla, R., and Romano, M. (2017a). Laboratory experiments of resident space object capture by a spacecraft–manipulator system. Aerospace Sci. Technol. 71, 530–545. doi: 10.1016/j.ast.2017.09.043

CrossRef Full Text | Google Scholar

Virgili-Llop, J., and Romano, M. (2018). A recursively feasible and convergent sequential convex programming procedure to solve non-convex problems with linear equality constraints. arXiv:1810.10439.

Google Scholar

Virgili-Llop, J., Zagaris, C., Richard Zappulla, I., Bradstreet, A., and Romano, M. (2019). A convex-programming-based guidance algorithm to capture a tumbling object on orbit using a spacecraft equipped with a robotic manipulator. Int. J. Robot. Res. 38, 40–72. doi: 10.1177/0278364918804660

CrossRef Full Text | Google Scholar

Virgili-Llop, J., Zagaris, C., Zappulla, II. R., Bradstreet, A., and Romano, M. (2017c). “Convex optimization for proximity maneuvering of a spacecraft with a robotic manipulator,” in 27th AAS/AIAA Space Flight Mechanics Meeting, 5-9 February 2017 (San Antonio, TX).

Google Scholar

Virgili-Llop, J., Zagaris, C., Zappulla, R., Bradstreet, A., and Romano, M. (2017b). “Laboratory experiments on the capture of a tumbling object by a spacecraft-manipulator system using a convex-programming-based guidance,” in Astrodynamics Specialist Conference August 20-24, 2017 (Stevenson, WA).

Google Scholar

Wächter, A., and Biegler, T. L. (2005). On the implementation of an interior-point filter line-search algorithm for large-scale nonlinear programming. Math. Program. 106, 25–57. doi: 10.1007/s10107-004-0559-y

CrossRef Full Text | Google Scholar

Wie, B. (2008). Space Vehicle Dynamics and Control, 2nd Edn. Reston, VA: American Institute of Aeronautics and Astronautics.

Google Scholar

Wilde, M., Ciarcià, M., Grompone, A., and Romano, M. (2016). Experimental characterization of inverse dynamics guidance in docking with a rotating target. J. Guid. Control Dyn. 39, 1173–1187. doi: 10.2514/1.G001631

CrossRef Full Text | Google Scholar

Yoshida, K., Dimitrov, D., and Nakanishi, H. (2006). “On the capture of tumbling satellite by a space robot,” in 2006 IEEE/RSJ International Conference on Intelligent Robots and Systems (Beijing), 4127–4132.

Google Scholar

Yoshida, K., and Umetani, Y. (1993). Control of Space Manipulators with Generalized Jacobian Matrix, volume 188 of The Kluwer International Series in Engineering and Computer Science. New York NY: Springer.

Zagaris, C., and Romano, M. (2018). Reachability analysis of planar spacecraft docking with rotating body in close proximity. J. Guid. Control Dyn. 41, 1416–1422. doi: 10.2514/1.G003389

CrossRef Full Text | Google Scholar

Zappulla, II. R., Virgili-Llop, J., and Romano, M. (2017a). Spacecraft thruster control via sigma–delta modulation. J. Guid. Control Dyn. 40, 2928–2933. doi: 10.2514/1.G002986

CrossRef Full Text | Google Scholar

Zappulla, II. R., Virgili-Llop, J., Zagaris, C., Park, H., and Romano, M. (2017b). Dynamic air-bearing hardware-in-the-loop testbed to experimentally evaluate autonomous spacecraft proximity maneuvers. J. Spacecraft Rockets 54, 825–839. doi: 10.2514/1.A33769

CrossRef Full Text | Google Scholar

Zhang, B., Liang, B., Wang, Z., Mi, Y., Zhang, Y., and Chen, Z. (2017). Coordinated stabilization for space robot after capturing a noncooperative target with large inertia. Acta Astronautica 134(Suppl. C):75–84. doi: 10.1016/j.actaastro.2017.01.041

CrossRef Full Text | Google Scholar

Keywords: spacecraft robotics, active debris removal, on-orbit servicing, computational guidance and control, convex optimization, hardware-in-the-loop experiments, sequential convex programming

Citation: Virgili-Llop J and Romano M (2019) Simultaneous Capture and Detumble of a Resident Space Object by a Free-Flying Spacecraft-Manipulator System. Front. Robot. AI 6:14. doi: 10.3389/frobt.2019.00014

Received: 13 January 2019; Accepted: 25 February 2019;
Published: 27 March 2019.

Edited by:

Jan Thomas Harder, Technische Universität München, Germany

Reviewed by:

Saptarshi Bandyopadhyay, NASA Jet Propulsion Laboratory (JPL), United States
Haijun Shen, Goddard Space Flight Center, United States

Copyright © 2019 Virgili-Llop and Romano. This is an open-access article distributed under the terms of the Creative Commons Attribution License (CC BY). The use, distribution or reproduction in other forums is permitted, provided the original author(s) and the copyright owner(s) are credited and that the original publication in this journal is cited, in accordance with accepted academic practice. No use, distribution or reproduction is permitted which does not comply with these terms.

*Correspondence: Josep Virgili-Llop,