Next Article in Journal
Teachers’ Opinions towards Educational Robotics for Special Needs Students: An Exploratory Italian Study
Previous Article in Journal
Computational Design Thinking and Physical Computing: Preliminary Observations of a Pilot Study
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Proximity Operations and Three Degree-of-Freedom Maneuvers Using the Smartphone Video Guidance Sensor

1
Department of Mechanical and Energy Engineering, College of Engineering, Imam Abdulrahman Bin Faisal University, P.O. Box 1982, Dammam 31441, Saudi Arabia
2
Mechanical and Aerospace Engineering, Florida Institute of Technology, Melbourne, FL 32901, USA
3
Control Systems Design and Analysis Branch, NASA Marshall Space Flight Center, Huntsville, AL 35812, USA
4
Avionics Subsystems Branch, NASA Marshall Space Flight Center, Huntsville, AL 35812, USA
*
Author to whom correspondence should be addressed.
Robotics 2020, 9(3), 70; https://doi.org/10.3390/robotics9030070
Submission received: 23 August 2020 / Revised: 4 September 2020 / Accepted: 5 September 2020 / Published: 10 September 2020
(This article belongs to the Section Aerospace Robotics and Autonomous Systems)

Abstract

:
This paper presents the first demonstration of NASA’s Smartphone Video Guidance Sensor (SVGS) as real-time position and attitude estimator for proximity and formation maneuvers. An optimal linear quadratic Gaussian controller was used, combining a linear quadratic regulator and a Kalman filter. The system was demonstrated controlling the 3-degree of freedom planar motion of the RINGS ground units (Resonant Inductive Near-field Generation Systems). A state-space model of the system’s 3-DOF motion dynamics was derived, and model parameters extracted using a system identification technique. The system’s motion control performance is experimentally demonstrated in both tracking and formation maneuvers. The results highlight the capabilities and performance of the Smartphone Video Guidance Sensor (SVGS) as a vision-based real-time position and attitude sensor for motion control, formation flight and proximity operations. A leader-follower formation maneuver approach is demonstrated, as well as position hold and path following.

1. Introduction

The interest in formation maneuvers and distributed space missions has grown significantly in recent years [1,2,3,4,5,6], including follower formations and station keeping [7,8]. Proximity maneuvers rely on accurate and reliable position and attitude tracking between individual spacecraft involved [9]. The Smartphone Video Guidance Sensor (SVGS) [10,11,12] is a miniature, self-contained autonomous rendezvous and docking sensor developed at the NASA Marshall Space Flight Center using an Android-based smartphone to enable proximity operations and formation flight in small satellite platforms. SVGS determines the relative position and orientation of a moving target relative to a coordinate system attached to the phone by capturing an image of a set of illuminated targets mounted in a known pattern on the target spacecraft. The image is processed using a modification of algorithms originally developed for the Advanced Video Guidance Sensor (AVGS) [13,14,15,16,17], which successfully flew on the Demonstration for Autonomous Rendezvous Technology (DART) and Orbital Express missions [13,18]. SVGS is part of the development at NASA Marshall Space Flight Center of a low-cost, low mass, embedded sensor that will enable formation flight and navigation within proximity distance between small satellites in autonomous rendezvous and capture maneuvers. SVGS is capable of estimating the full six-degree-of-freedom relative position and attitude vector of a target in the near range (up to tens of meters) without incurring a computational burden on the motion platform controller, since the image processing and motion estimation algorithm are performed on the SVGS device itself. This paper demonstrates for the first time the capability and performance of SVGS as a real-time position and attitude sensor for proximity and formation maneuvers using the ground units of RINGS as a demonstration platform.
Vision-based navigation for spacecraft proximity operations is of significant current interest [19]. Figure 1a shows the operational concept of SVGS [10]. Estimating the target’s position and attitude relative to the camera’s coordinate system starts with image capture of a set of illuminated points in the target. The target’s 6-DOF position and attitude vector was estimated using geometric photogrammetry techniques [10,12,20]. Image processing and state estimation, outlined on Figure 2, take place onboard the SVGS device, avoiding additional computational burden on the motion control computer. SVGS output data are sent in each control cycle to the motion control computer through a serial communication link such as UART.
RINGS (Resonant Inductive Near-field Generation Systems) [21,22,23] are prototype systems developed to investigate electromagnetic formation flight and wireless power transfer between spacecraft. RINGS were designed to operate with the ISS free-flying robot SPHERES (Synchronized Position Hold, Engaged, Reorient, Experimental Satellites) [24], using the SPHERES metrology system to estimate RINGS position and attitude. SPHERES also act as motion control systems to regulate the degrees of freedom in RINGS not controlled by electromagnetic forces during formation flight maneuvers. Two RINGS-SPHERES assemblies are shown in Figure 3.

2. Materials and Methods

A 3-DOF planar motion platform (Figure 4a: design, Figure 4b: implementation) was developed for ground testing of RINGS using SVGS feedback. This section presents the system identification and controller design for motion control of SVGS–RINGS on a flat glass surface using ducted fans. The motion platform provides alternative actuation to the one provided on ISS by the free-flying robot attached to RINGS, enabling assessment of the functionality of RINGS using the ground units.

2.1. State-Space Model of the 3-DOF Ground Motion Platform

The translation and rotation dynamics of the RINGS assemblies are derived from the Newton–Euler equations [25,26]:
F = P ˙
M = H ˙
where F is the resultant external force applied to the system, P ˙ the rate of change of linear momentum, M the sum of external torques, and H ˙ the corresponding rate of change in angular momentum. For a rigid-body rotating about the center of mass, linear and angular momentums can be expressed as P = m v and H c = I c ω , where v is the linear velocity and ω the angular velocity vectors of the system. The Newton–Euler equations can therefore be written as:
[ m 0 0 I c ] { v ˙ ω ˙ } = ( F M ) + ( 0 ω × I c ω )
where m is the mass matrix, I c the mass moment of inertia, v ˙ the linear acceleration vector of the center of mass, and ω ˙ the angular acceleration vector. Since the motion is planar, the angular momentum can be simplified into H c = I c θ ˙ , and the Newton–Euler equations can then be:
( I z θ ¨ m x ¨ m y ¨ ) = ( M z F x F y )
where x, y, θ are two translational and one attitude coordinates that describe the planar motion of the 3-DOF platform relative to the inertial frame. This corresponds to the linear time-invariant state-space model {A,B,C,D} with state vector: x ( t ) = { θ θ ˙ x x ˙ y y ˙ } T , as described in Section 2.2:
x ˙ ( t ) = A x ( t ) + B u ( t )
y ( t ) = C x ( t ) + D u ( t )

2.2. System Identification of the 3-DOF Motion Dynamics

A system identification procedure was used to experimentally identify the unknown parameters in the state-space model (Equations (5) and (6)). Chirp excitation signals were used as speed commands to the ducted fans that control forces and torques applied to the system. The sinusoidal chirp function has frequency f ( t ) (Equation (7)), where f 0 and f 1 are the initial and final frequencies of the chirp signal, and the rate of frequency change is k = f 1 f 0 T , where T is the total duration of the signal:
f ( t ) = f 0 + k t
The chirp signal covers the desired frequency range of the system (0.1 to 2 Hz) and has a total duration of 10 s. Experimental measurements for displacement and velocity are shown in Figure 5.
A prediction error method was used to estimate the unknown system parameters of the state-space model (Equations (5) and (6)) based on experimental input-output sequences. SVGS provides an update of the six-state position and attitude vector on each control cycle (every 35 msec in this case). The position and attitude vector is sent as a serial data packet to the local motion control computer, where it is decoded to the corresponding floating point values. The system identification procedure uses the forces and torques directly available from linear regression curves of the fan thrusters as input, and uses the six-state position and attitude vector available from SVGS as output. Position and attitude measurements (x, y, θ) and linear velocity estimates (based on finite differences) were obtained from the SVGS sensor, while a MEMS gyroscope was used to collect angular velocity data. While SVGS provides good estimates of attitude (roll angle in this case), the estimation of angular velocity from SVGS measurements by finite differences is noisy compared to MEMS gyro measurements. Each motion control platform uses a MEMS gyro to estimate angular velocity in real time.
Figure 5a shows linear displacement predictions compared to measured response, and Figure 5b linear velocity estimation of the same axis, compared to finite-difference velocity estimation using SVGS measurements. The procedure was performed for all three degrees-of-freedom of the planar motion dynamics, achieving model fits of 97.2% and 79.8% in linear position and velocity estimation, and 96.4% and 88.64% for angular position and velocity estimations (θ axis). The estimated state-space model of the 3-DOF motion dynamics of the RINGS motion platform is:
{ x ˙ 1 x ˙ 2 x ˙ 3 x ˙ 4 x ˙ 5 x ˙ 6 } = [ 0 1 0 0 0 0 0 0.009521 0 0 0 0 0 0 0 1 0 0 0 0 0 0.03117 0 0 0 0 0 0 0 1 0 0 0 0 0 0.03238 ] { x 1 x 2 x 3 x 4 x 5 x 6 }     + [ 0 0 0 0.02374 0 0 0 0 0 0 0.00663 0 0 0 0 0 0 0.005813 ] { u 1 u 2 u 3 }
{ y 1 y 2 y 3 y 4 y 5 y 6 } = [ 0.5693 0 0 0 0 0 0 1 0 0 0 0 0 0 2.14 0 0 0 0 0 0 1 0 0 0 0 0 0 2.145 0 0 0 0 0 0 1 ] { x 1 x 2 x 3 x 4 x 5 x 6 }
The state-space matrices are computed by a prediction error method (PEM), a gradient-based optimization that calculates model parameters from a set of input–output sequences; the PEM method and system identification procedure is described in detail in [27]. The C matrix in Equation (9) is initialized as a unity matrix, but is later updated by the gradient descent algorithm to provide minimum mean square error to the predicted output for the given input–output data sets.

2.3. 3-Degree of Freedom Motion Control via LQG-Servo

A linear quadratic Gaussian (LQG) full-state feedback controller [28,29,30] was designed based on the experimental model of the 3-DOF dynamics (Equations (8) and (9)). The LQG-servo combines a linear quadratic regulator with an optimal state estimator (Kalman filter). The formulation of a linear quadratic (LQ) servo controller starts with the typical LQR cost function:
J = 0 [ x T ( t ) Q x ( t ) + u T ( t ) R u ( t ) ] d t
An LQR controller with diagonal Q and R matrices considers the minimization of (Equation (10)) for the state equations (Equations (5) and (6)):
J = 0 [ q θ θ 2 + q x x 2 + q y y 2 + q θ ˙ θ ˙ 2 + q x ˙ x ˙ 2 + q y ˙ y ˙ 2 + ρ θ u θ 2 + ρ x u x 2 + ρ y u y 2 ] d t
where the semi-positive definite state weighting matrix Q is:
Q = N T N = [ q θ 0 0 0 0 0 0 q θ ˙ 0 0 0 0 0 0 q x 0 0 0 0 0 0 q x ˙ 0 0 0 0 0 0 q y 0 0 0 0 0 0 q y ˙ ]
where N is a diagonal matrix with entries equal to the square root of the diagonal entries of Q , q i are the weight penalties to each state, and the control weighting matrix, R is:
R = [ ρ θ 0 0 0 ρ x 0 0 0 ρ y ]
If the system ( A , B ) is stabilizable and ( A , N ) is detectable, a unique solution K to the optimal control problem can be found by solving the Algebraic Riccati equation:
K A + A T K + Q K B R 1 B T K = 0
The optimal control gain matrix G is:
G = R 1 B T K
A critically damped response (damping ratio ~1) was desired, to provide fast rising and settling times with minimal overshoot and zero steady state error. The effects of varying the state weighting matrix Q and control weighting matrix R are shown in Figure 6, for one degree of freedom (x-axis).
Similar analyses were done to tune the other two axes of motion (y- and θ -axis). The full state weighting matrix Q and control weighting matrix R were finally chosen as:
Q = 10 3 [ 1 0 0 0 0 0 0 4 0 0 0 0 0 0 8 0 0 0 0 0 0 100 0 0 0 0 0 0 8 0 0 0 0 0 0 100 ] ;
R = [ 0.3 0 0 0 0.6 0 0 0 0.6 ]
Larger penalties correspond to the velocity states of the system ( q θ ˙ , q x ˙ , and q y ˙ ) to restriction velocity in all three axes to prevent overshooting. The optimal control gain matrix G was then:
G = [ 57.7 134.5 0 0 0 0 0 0 115.5 444.2 0 0 0 0 0 0 115.5 448.8 ]
To implement a tracking LQ-servo from the LQR control law, the control gain matrix is decomposed to separate the gains for the tracking states, G y , from the gains of the regulated states, G r , such that G = [ G y G r ] :
G y = [ 0 0 115.5 0 0 115.5 ] ;
G r = [ 57.7 134.5 0 0 0 0 444.2 0 0 0 0 448.8 ]
The states x ( t ) are divided into output vector y p ( t ) = { x y } T and the remaining state vector x r ( t ) = { θ θ ˙ x ˙ y ˙ } T . The optimal feedback control vector u ( t ) = { u θ u x u y } T for the LQ-servo formulation is:
u ( t ) = G y   e ( t ) G r   x r ( t )
where the tracking error is e ( t ) = r ( t ) y p ( t ) , and the reference command r ( t ) = { x d y d } T . Figure 7 shows a block diagram of the proposed 3-degree of freedom LQ-servo system.
SVGS provides only relative position and attitude information. Implementation of a full-state feedback law requires a real-time velocity estimation. Finite differences provide noisy velocity estimates, and low-pass filtering the corresponding estimates introduces delays that can significantly affect stability and performance. A Kalman state estimator [31,32,33] was implemented to provide robust estimation of the non-measurable states, and integrated with the LQ-servo control law as a model-based compensator. A state-space model of the 3-DOF planar motion system subject to both process and measurement noise is:
x ˙ ( t ) = A x ( t ) + B u ( t ) + P ξ ( t ) ;
y ( t ) = C x ( t ) + θ ( t )
where ξ ( t ) and θ ( t ) are process and sensor noise, respectively. It is assumed that the statistical properties of the process and measuring device do not change with time, therefore a steady-state Kalman filter can be used. A design parameter, μ , was added to the Kalman formulation to shape the response of the filter. The state estimation error is ε ( t ) = x ( t ) x ^ ( t ) , and the cost function J to be minimized is defined as the sum of error variances, i.e., the trace of the error covariance matrix:
J = t r ( E { ε ( t ) ε T ( t ) } ) =   i = 1 n E { ( x i ( t ) x ^ i ( t ) ) 2 }
If ( A , P ) is stabilizable and ( A , C ) detectable, a unique solution to the optimal error covariance matrix Σ 0 can be found by solving the filter algebraic Riccati equation:
A Σ + Σ A T + P P T 1 μ Σ C T C Σ = 0
The noise and error statistics of SVGS were estimated using accuracy assessment experiments, in which SVGS measurements were compared to known motion profiles in each axes of motion. The “true position” was estimated from encoder readings from a computer controlled motion stage used to apply known motion profiles to a SVGS target while collecting SVGS readings. By these means, the statistics of sensor noise (mean, standard deviation, variance and covariance) were estimated. The sensor noise covariance matrix Θ is:
Θ = E { θ ( t ) θ T ( t ) }   = μ I δ ( t τ )
where the diagonal entries represent the variance σ x i 2 , and the off-diagonal entries the covariance σ x i σ x ˙ i between state variables. Both were estimated from SVGS accuracy assessment tests, yielding:
Θ = μ   [ σ θ 2 σ θ ˙ σ θ σ x σ θ σ x ˙ σ θ σ y σ θ σ y ˙ σ θ σ θ σ θ ˙ σ θ ˙ 2 σ x σ θ ˙ σ x ˙ σ θ ˙ σ y σ θ ˙ σ y ˙ σ θ ˙ σ x σ θ σ x σ θ ˙ σ x 2 σ x σ x ˙ σ x σ y σ x σ y ˙ σ x ˙ σ θ σ x ˙ σ θ ˙ σ x ˙ σ x σ x ˙ 2 σ x ˙ σ y σ x ˙ σ y ˙ σ θ σ y σ θ ˙ σ y σ x σ y σ x ˙ σ y σ y 2 σ y ˙ σ y σ y ˙ σ θ σ y ˙ σ θ ˙ σ x σ y ˙ σ x ˙ σ y ˙ σ y ˙ σ y σ y ˙ 2 ]
Θ = μ   [ 0.000027 0.000003 0 0 0 0 0.000003 0.000016 0 0 0 0 0 0 0.006 0.0069 0 0 0 0 0.0069 0.0552 0 0 0 0 0 0 0.0051 0.0003 0 0 0 0 0.0003 0.0405 ]
Angular position is measured in radians, while linear position state variables ( x and y ) are in meters. The process noise covariance matrix Ξ is defined as:
Ξ = Ψ I 6 = Ψ [ 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1 ]
where μ and Ψ are design parameters used to shape the performance of the model-based state estimator: small values of μ in Equation (28) represent “accurate” sensor measurements, leading to larger values of filter gain. ψ is a tuning parameter: the chosen value was selected by optimizing performance of the nominal Kalman filter so that it gives less weight to noisy measurements. After tuning, these parameters were selected as μ = 1.6 and Ψ . = 0.01, respectively. After solving Equation (25) for the optimal error covariance matrix, the gain matrix of the Kalman filter L is:
L = 1 μ Σ C T = [ 0.0381 0.05 0 0 0 0 0.1088 0.998 0 0 0 0 0 0 0.1194 0.0346 0 0 0 0 0.494 0.2782 0 0 0 0 0 0 0.1188 0.0316 0 0 0 0 0.281 0.2957 ] .
The state estimate x ^ n based on the Kalman filter is a discrete-time process based on the model matrices, the previous state estimate x ^ n 1 and the control effort u n :
x ^ n = A d x ^ n 1 + B d u n + L ( y n C d x ^ n 1 D d u n )
where A d , B d , C d , and D d are the matrices of the discretized state-space model at a nominal sampling rate of 50 msec. The estimated output y ^ n based on the state estimator is:
y ^ n = C d x ^ n
Figure 8 shows the proposed LQG-servo controller, where the estimated plant output is y ^ p ( t ) = { x ^ y ^ } T , and the estimated remaining state vector is x ^ r ( t ) = { θ ^ θ ˙ ^ x ˙ ^ y ˙ ^ } T .

2.4. Path Following and Formation Maneuvers

Figure 9 shows the experimental setup to demonstrate the use of SVGS in path following and formation maneuvers. The setup consists of two RINGS units integrated to their 3-DOF motion control platforms using SVGS. In this implementation, the first SVGS device provides position and attitude information to the RINGS leader relative to the inertial frame, while the second SVGS unit provides motion information to the RINGS follower relative to the leader. The workspace has a dimension of 2.1 × 1.2 m. In both units, SVGS data are transmitted to the corresponding 3-DOF motion control computer using Bluetooth serial links.
The path following problem for a leader-follower formation maneuver is illustrated in Figure 10, where the leader tracks a predefined path, while the follower keeps a fixed coaxial distance to the leader (de) while holding a constant relative attitude (θe).
The position of both spacecraft relative to the coordinate system attached to the workspace is defined as follows. The first SVGS device is fixed relative to the ground, and its position ( r s A ) is
r s A = x s A i ^ + y s A j ^
where x s A and y s A are constants given by the fixed location of SVGS relative to the origin. The position of the leader spacecraft r A is defined as:
r A = r s A + r ρ = ( x s A + r ρ x ) i ^ + ( y s A + r ρ y ) j ^
where r ρ x and r ρ y are position data for the x and z states from the first SVGS device, respectively. The position of the follower spacecraft ( r B ) can be now defined as:
r B = r A + r e = ( x s A + r ρ x r e x ) i ^ + ( y s A + r ρ y + r e y ) j ^
where r e y and r e x are position data for the x and z states from the second SVGS device, respectively. During all maneuvers, the motion of both leader and follower spacecraft are controlled using the SVGS devices relative to this coordinate frame.

3. Results

3.1. Response to Single Axis and Dual Axes Commands, and Response to External Disturbances

SVGS is only functional in proximity operations: it requires line of sight and a clear picture of all four illuminated points in the target to provide an estimate of the 6-DOF position and attitude state. The preconditions to use SVGS need to be met by an additional navigation system until proximity is reached.
Figure 11a shows the time response of the 3-DOF closed-loop system using SVGS feedback during a single axis maneuver: a 0.5 m pulse command in x-axis while the remaining 2-DOFs (z and θ) were kept constant at 1.5 m and 0°, respectively. The command signals are internally generated by the motion controller, whereas position and attitude output is measured by SVGS. Figure 11b shows the 3-DOF closed-loop response by SVGS feedback in a dual-axis maneuver: a 0.5 m pulse command (starting at −0.25 m in the x-axis) and 0.3 m pulse commands (starting at 1.35 m in the z-axis) in x- and z-axis, respectively, while the remaining DOF (θ) is regulated at 0°.
Figure 12 compares the SVGS velocity estimation using filtered finite differences vs. Kalman velocity estimates for all 3-DOFs. The Kalman filter leads to a significant improvement in velocity estimates compared to finite difference followed by a first order filter. This is important since the LQG-servo controller gives high penalties to the velocity states to achieve higher control gain values, thereby requiring lower error/noise in the velocity estimates. The 3-DOF motion controller uses x- and z-axes velocity estimates from the Kalman filter and MEMS gyro measurements for angular rate.
Figure 13 shows the response of each degree-of-freedom (x, y, θ) to a position hold command (red trace) in the presence of externally applied disturbances. Four external disturbances d1, d2, d3, and d4, were applied as external forces and torques at approximately 25, 34, 45, and 60 sec., respectively, illustrating the ability of the LQG-servo controller to regulate disturbances that do not exceed the limits of the available thruster forces.

3.2. Performance in Proximity Operations and Path Following Maneuvers

To assess the capabilities of SVGS in formation maneuvers, three different experiments were implemented: coaxial, colinear, and combined maneuvers, where the leader spacecraft follows a predefined path, while the follower tracks the leader’s path while keeping a constant coaxial distance and constant attitude relative to the leader. The maneuvers were chosen to demonstrate RINGS functionality in support of their proposed science missions on the ISS using the RINGS ground units, which implied motion control while keeping a zero relative attitude angle. This also enables to assume that the dynamics of the slave RINGS are pure translation, since the motion control system is actively regulating the attitude angle at zero, and the master unit is keeping zero attitude relative to the inertial frame.
First path following maneuver. The leader RINGS moves from the home position to waypoint “1” and then returns home. The follower RINGS is kept colinear and coaxial relative to the master, at a constant separation distance of 0.8 m, as shown in Figure 14.
Second path following maneuver. The leader RINGS moves 0.4 m from the home position to waypoint “1” and then returns home along the same line. The follower RINGS is kept coaxial relative to the master at a constant separation distance of 0.8 m, as shown in Figure 15.
Figure 16a shows the time domain performance of the first path following maneuver: a 0.3 m pulse command of 6 s of duration is applied on the Y-axis while the X and θ axes are regulated at zero. Figure 16b shows the time domain performance of the second path following maneuver: a 0.4 m pulse command of 12 s duration is applied on the X-axis while the Y axes is regulated at 1.2 m and the θ axes is regulated at zero degrees.
Third path following maneuver. The leader spacecraft follows a predetermined path (Figure 17) from the home position to waypoints “1”, “2”, “3” and back home, while the follower keeps a constant separation distance and zero-degree attitude relative to the leader. The experimental performance is shown in Figure 18a,b.

4. Discussion

The single and dual axis tracking capabilities of a real-time trajectory control system based on SVGS are demonstrated in Figure 11. Figure 13 shows the ability of the SVGS-based LQG-Servo system to reject external disturbances, while Figure 12 illustrates the performance of the SVGS Kalman filter to provide robust velocity estimates in all three axes of motion (X, Y, θ).
The performance of the SVGS-based system in proximity operations and path following maneuvers is shown in Section 3.2 using three basic maneuvers (Figure 1, Figure 14b, Figure 15b and Figure 18a). The X, Y, θ trajectories of both leader and follower spacecraft for all three maneuvers are shown in Figure 16 and Figure 18b. In all three maneuvers, the leader (RINGS-1) shows good tracking of the desired path. The follower (RINGS-2) was also capable of maintaining good overall performance in keeping the desired motion relative to the leader; however, the response of the follower relative to the workspace coordinate frame shows less accurate tracking and overshoot at the edges of the commanded paths compared to the leader, reflecting the fact that the absolute position of the follower is calculated from the position states of the leader: any positioning errors in the leader therefore accumulate and reflect in the absolute position errors of the follower. The overall performance shown in Section 3 underscores the ability of the SVGS-based system to successfully control multi-axis position and attitude in proximity operations. SVGS is particularly well suited for cooperative maneuvers since it provides a direct measurement of the relative position and attitude between two agents within the line of sight of each other, as required in operations such as docking, landing and formation maneuvers. SVGS does not burden the motion control computer with the computation of the position-attitude state estimate since the SVGS algorithm runs on a separate auxiliary system, enabling implementation in real-time at closed loop rates up to 20 updates/s with the hardware used in this study.

5. Conclusions

This paper presents the first demonstration of real-time motion control, proximity operations and formation maneuvers using SVGS as position and attitude sensor. SVGS is a compact, self-contained sensor for relative position and attitude that can be used for a variety of robotic proximity operations (docking, landing, line of sight approach) and not just in space guidance and control, as the Advanced Video Guidance Sensor (AVGS, [13,14,15,16]) has been. The demonstration was implemented on the 3-DOF planar motion platform of two RINGS ground units. Test results on glass table experiments demonstrate the capabilities of the proposed approach to perform 3-axial motion control of a single unit and formation maneuvers of two units using SVGS and the proposed LQG-servo controller. A Kalman filter based on the noise statistics of SVGS was used to provide improved x- and z-velocity estimates, compared to filtered finite difference velocity estimates. The process noise model used in the Kalman filter design provides successful results within the accuracy required in this application. Three different path following maneuvers were implemented to demonstrate performance of SVGS and the proposed LQG-servo controller in providing accurate tracking and regulation in three degrees of freedom.
SVGS has the potential to be used in a variety of robotic applications where proximity operations such as landing, coordination of agents or docking is needed, and can therefore be of potential use to a larger community outside aerospace applications. The error statistics of SVGS enable its incorporation (by synthesis of a Kalman estimator) in advanced motion control systems for navigation and guidance. Future work will investigate the performance of the integrated SVGS with LQG-servo control in the demonstration of electromagnet formation flight (EMFF) of RINGS using SVGS, where reduction in power consumption by the use of electromagnetic motion-assist will be investigated.

Author Contributions

N.H. designed, developed and implemented the 3-DOF ground motion platform for RINGS described in this paper, along with the corresponding system identification and controller design efforts, under the supervision of H.G. R.H. at NASA MSFC was the original developer of the AVGS algorithm (advanced video guidance sensor), later modified by J.R. at NASA MSFC for deployment on a smartphone (SVGS). I.B. at NASA MSFC has been part of several redeployment and assessment studies of SVGS, and provided technical support throughout this effort. All authors have read and agreed to the published version of the manuscript.

Funding

This work was supported by NASA Marshall Space Flight Center, Cooperative Agreements 80MSFC18N0001 and NNM17AA03A, Dual Use Technology Development, 2016–2018.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Valmorbida, A.; Mazzucato, M.; Aboudan, A.; Tronco, S. Test of attitude control maneuvers with a Satellite Formation Flight testbed. In Proceedings of the 2014 IEEE Metrology for Aerospace Conference, Benevento, Italy, 29–30 May 2014; pp. 439–444. [Google Scholar]
  2. Nag, S.; LeMoigne, J.; Miller, D.W.; Weck, O. A framework for orbital performance evaluation in Distributed Space Missions for earth observation. In Proceedings of the 2015 IEEE Aerospace Conference, Big Sky, MT, USA, 7–14 March 2015; pp. 1–20. [Google Scholar]
  3. Burns, R.; McLaughlin, C.; Leitner, J.; Martin, M. Tech Sat 21: Formation design, control, and simulation. In Proceedings of the 2000 IEEE Aerospace Conference, Big Sky, MT, USA, 18–25 March 2000; Volume 7, pp. 19–25. [Google Scholar]
  4. Martin, M.; Klupar, P.; Kilberg, S.; Winter, J. Techsat 21: Revolutionizing Space Missions Using Microsatellites; American Institute of Aeronautics and Astronautics: Reston, VA, USA, 2001. [Google Scholar]
  5. Coulter, D. NASA’s Terrestrial Planet Finder mission: The search for habitable planets. In Proceedings of the Towards Other Planets: 2003 Darwin TPF Conference, Heidelberg, Germany, 22–25 April 2003; pp. 47–54. [Google Scholar]
  6. Mauro, G.D.; Lawn, M.; Bevilacqua, R. Survey on Guidance Navigation and Control Requirements for Spacecraft Formation-Flying Missions. AIAA J. Guid. Control Dyn. 2018, 41, 3. [Google Scholar] [CrossRef]
  7. Sabol, C.; Burns, R.; McLaughlin, C.A. Satellite Formation Flying Design and Evolution. AIAA J. Spacecr. Rocket. 2001, 38, 270–278. [Google Scholar] [CrossRef]
  8. Lane, C.M. Formation Design in Eccentric Orbits Using Linearized Equations of Relative Motion. AIAA J. Guid. Control Dyn. 2006, 29, 146–160. [Google Scholar] [CrossRef]
  9. Lee, D. Guidance, Navigation and Control System for Autonomous Proximity Operations and Docking of Spacecraft. Ph.D. Thesis, Missouri University of Science and Technology, Missouri, MO, USA, 2009. [Google Scholar]
  10. Becker, C.; Howard, R.; Rakoczy, J. Smartphone Video Guidance Sensor for Small Satellites. In Proceedings of the 27th Annual AIAA/USU Conference on Small Satellites, Logan, UT, USA, 10–15 August 2013. [Google Scholar]
  11. Carter, C. Robust Targeting for the Smartphone Video Guidance Sensor; Document ID 20170012383; NASA Marshall Space Flight Center: Huntsville, AL, USA, 2017.
  12. Rakoczy, J. Application of the Photogrammetric Collinearity Equations to the Orbital Express Advanced Video Guidance Sensor Six Degree-of-Freedom Solution; NASA Marshall Space Flight Center: Huntsville, AL, USA, 2003.
  13. Howard, R.T.; Heaton, A.F.; Pinson, R.M.; Carrington, C.K. Orbital Express Advanced Video Guidance Sensor. In Proceedings of the 2008 IEEE Aerospace Conference, Big Sky, MT, USA, 1–8 March 2008. [Google Scholar]
  14. Bryan, T.C.; Howard, R.; Johnson, J.E.; Lee, J.E.; Murphy, L.; Spencer, S.H. Next Generation Advanced Video Guidance Sensor. In Proceedings of the 2008 IEEE Aerospace Conference, Big Sky, MT, USA, 1–8 March 2008. [Google Scholar]
  15. Mullins, L.; Lomas, A. Advanced Video Guidance Sensor Inverse Perspective Algorithm; Technical Memorandum; NASA Marshall Space Flight Center: Huntsville, AL, USA, 2003.
  16. Howard, R.; Bryan, T.; Lee, J.; Robertson, B. Next generation advanced video guidance sensor: Development and test. In Proceedings of the American Astronomical Society Conference, Long Beach, CA, USA, 4–8 January 2009. [Google Scholar]
  17. Howard, R.T.; Bryan, T.C.; Brewster, L.L.; Lee, J.E. Proximity operations and docking sensor development. In Proceedings of the 2009 IEEE Aerospace Conference, Big Sky, MT, USA, 7–14 March 2009. [Google Scholar]
  18. Howard, R.; Book, M.; Bryan, T. Video-based sensor for tracking 3-dimensional targets. In Proceedings of the Atmospheric Propagation, Adaptive Systems, and Laser Radar Technology for Remote Sensing Conference, Barcelona, Spain, 25–28 September 2000; Volume 4167. [Google Scholar]
  19. Na, Y.; Bang, H.; Mok, S. Vision-Based Relative Navigation Using Dual Quaternion for Spacecraft Proximity Operations. Int. J. Aeronaut. Space Sci. 2019, 20, 1010–1023. [Google Scholar] [CrossRef] [Green Version]
  20. Moffitt, F.H.; Mikhail, E.M. Photogrammetry; Harper & Row: New York, NY, USA, 1980. [Google Scholar]
  21. Porter, A.K.; Alinger, D.J.; Sedwick, R.J.; Merk, J.; Opperman, R.A.; Buck, A. Demonstration of Electromagnetic Formation Flight and Wireless Power Transfer. AIAA J. Spacecr. Rocket. 2014, 51, 1914–1923. [Google Scholar] [CrossRef]
  22. Alinger, D. System Analysis and Design for the Resonant Inductive Near-Field Generation System (RINGS). Master’s Thesis, University of Maryland, College Park, MD, USA, 2013. [Google Scholar]
  23. Alinger, D.J.; Porter, A.K.; Sedwick, R.J. Optimization of Resonant Inductive Wireless Power Transfer Using Multilayer Flat Spiral Coils. AIAA J. Spacecr. Rocket. 2015, 52, 560–568. [Google Scholar] [CrossRef]
  24. Miller, D.; Saenz-Otero, A.; Wertz, J.; Chen, A.; Berkowski, G.; Brodel, C. SPHERES: A testbed for long duration satellite formation flying in micro-gravity conditions. In Proceedings of the AAS/AIAA Space Flight Mechanics Meeting, Clearwater, FL, USA, 23–26 January 2000. [Google Scholar]
  25. Greenwood, D.T. Principles of Dynamics, 2nd ed.; Prentice-Hall: Englewood Cliffs, NJ, USA, 1987. [Google Scholar]
  26. Aslanov, V.; Kruglov, G.; Yudintsev, V. Newton–Euler equations of multibody systems with changing structures for space applications. Acta Astronaut. 2011, 68, 2080–2087. [Google Scholar] [CrossRef]
  27. Ljung, L. System Identification: Theory for the User, 2nd ed.; Pearson: Upper Saddle River, NJ, USA, 1999. [Google Scholar]
  28. Huerta, F.; Pizarro, D.; Cobreces, S.; Rodriguez, F.J.; Giron, C.; Rodriguez, A. LQG Servo Controller for the Current Control of Grid-Connected Voltage-Source Converters. IEEE Trans. Ind. Electron. 2012, 59, 4272–4284. [Google Scholar] [CrossRef]
  29. Panigrahi, R.; Subudhi, B.; Panda, P.C. A Robust LQG Servo Control Strategy of Shunt-Active Power Filter for Power Quality Enhancement. IEEE Trans. Power Electron. 2016, 31, 2860–2869. [Google Scholar] [CrossRef]
  30. Chen, J.; Chen, M. Application of LQG controller in antenna servo control system. In Proceedings of the 3rd International IEEE Conference on Information Science and Technology, San Francisco, CA, USA, 6–8 December 2013. [Google Scholar]
  31. Anderson, B.D.O.; Moore, J.B. Optimal Filtering; Dover Publications: Dover, UK, 2005. [Google Scholar]
  32. Chen, S.Y. Kalman Filter for Robot Vision: A Survey. IEEE Trans. Ind. Electron. 2012, 59, 4409–4420. [Google Scholar] [CrossRef]
  33. Auger, F.; Hilairet, M.; Guerrero, J.M.; Monmasson, E.; Orlowska-Kowalska, T.; Katsura, S. Industrial Applications of the Kalman Filter: A Review. IEEE Trans. Ind. Electron. 2013, 60, 5458–5471. [Google Scholar] [CrossRef] [Green Version]
Figure 1. (a) the operational concept of Smartphone Video Guidance Sensor (SVGS) [10]. The target’s 6-DOF state can be transmitted from the SVGS device to the spacecraft’s guidance, navigation and control system (GN&C) (b) The SVGS coordinate system is defined relative to the camera location and orientation within the phone.
Figure 1. (a) the operational concept of Smartphone Video Guidance Sensor (SVGS) [10]. The target’s 6-DOF state can be transmitted from the SVGS device to the spacecraft’s guidance, navigation and control system (GN&C) (b) The SVGS coordinate system is defined relative to the camera location and orientation within the phone.
Robotics 09 00070 g001
Figure 2. SVGS algorithm flow [10].
Figure 2. SVGS algorithm flow [10].
Robotics 09 00070 g002
Figure 3. RINGS ground units with SPHERES.
Figure 3. RINGS ground units with SPHERES.
Robotics 09 00070 g003
Figure 4. (a) Design of the 3-DOF ground motion platform for RINGS, (b) Implementation.
Figure 4. (a) Design of the 3-DOF ground motion platform for RINGS, (b) Implementation.
Robotics 09 00070 g004
Figure 5. (a) Measured and simulated displacement, (b) measured and simulated velocity (x-axis).
Figure 5. (a) Measured and simulated displacement, (b) measured and simulated velocity (x-axis).
Robotics 09 00070 g005
Figure 6. (a) Effect of the state weighting matrix Q, (b) Effect of the control weighting matrix R.
Figure 6. (a) Effect of the state weighting matrix Q, (b) Effect of the control weighting matrix R.
Robotics 09 00070 g006
Figure 7. Linear quadratic (LQ)-servo controller for 3-degree of freedom motion.
Figure 7. Linear quadratic (LQ)-servo controller for 3-degree of freedom motion.
Robotics 09 00070 g007
Figure 8. LQG-servo controller for 3-DOF motion of the RINGS platform.
Figure 8. LQG-servo controller for 3-DOF motion of the RINGS platform.
Robotics 09 00070 g008
Figure 9. SVGS-based path following and formation maneuvers of two RINGS assemblies.
Figure 9. SVGS-based path following and formation maneuvers of two RINGS assemblies.
Robotics 09 00070 g009
Figure 10. Path following formulation based on location of SVGS systems and RINGS assemblies.
Figure 10. Path following formulation based on location of SVGS systems and RINGS assemblies.
Robotics 09 00070 g010
Figure 11. Response of the 3-DOF LQG-servo system using SVGS feedback: (a) response to X-axis pulse command, (b) response to dual-axis pulse command.
Figure 11. Response of the 3-DOF LQG-servo system using SVGS feedback: (a) response to X-axis pulse command, (b) response to dual-axis pulse command.
Robotics 09 00070 g011
Figure 12. Velocity estimates in x- z- and θ-axes by finite differences (SVGS measurements followed by a low pass filter), compared to Kalman velocity estimates.
Figure 12. Velocity estimates in x- z- and θ-axes by finite differences (SVGS measurements followed by a low pass filter), compared to Kalman velocity estimates.
Robotics 09 00070 g012
Figure 13. Disturbance rejection of the 3-DOF LQG-servo system: position hold performance when facing external disturbances. Hold command is shown in red.
Figure 13. Disturbance rejection of the 3-DOF LQG-servo system: position hold performance when facing external disturbances. Hold command is shown in red.
Robotics 09 00070 g013
Figure 14. SVGS-based navigation of RINGS (a) First path following maneuver, (b) x–y plane trajectories in the first path following maneuver.
Figure 14. SVGS-based navigation of RINGS (a) First path following maneuver, (b) x–y plane trajectories in the first path following maneuver.
Robotics 09 00070 g014
Figure 15. SVGS-based navigation of RINGS (a) Second path following maneuver, (b) x–y plane trajectories in the second path following maneuver.
Figure 15. SVGS-based navigation of RINGS (a) Second path following maneuver, (b) x–y plane trajectories in the second path following maneuver.
Robotics 09 00070 g015
Figure 16. Time response of X, Y, θ coordinates of leader (RINGS-1) and follower (RINGS-2), (a) first path following maneuver, (b) second path following maneuver.
Figure 16. Time response of X, Y, θ coordinates of leader (RINGS-1) and follower (RINGS-2), (a) first path following maneuver, (b) second path following maneuver.
Robotics 09 00070 g016
Figure 17. SVGS-based navigation of RINGS. Third path following maneuver (dual square maneuver).
Figure 17. SVGS-based navigation of RINGS. Third path following maneuver (dual square maneuver).
Robotics 09 00070 g017
Figure 18. SVGS-based navigation of RINGS, third path following maneuver: (a) Performance (x–y plane trajectories), (b) Time response of the X, Y, θ coordinates of leader (RINGS-1) and follower (RINGS-2).
Figure 18. SVGS-based navigation of RINGS, third path following maneuver: (a) Performance (x–y plane trajectories), (b) Time response of the X, Y, θ coordinates of leader (RINGS-1) and follower (RINGS-2).
Robotics 09 00070 g018

Share and Cite

MDPI and ACS Style

Hariri, N.; Gutierrez, H.; Rakoczy, J.; Howard, R.; Bertaska, I. Proximity Operations and Three Degree-of-Freedom Maneuvers Using the Smartphone Video Guidance Sensor. Robotics 2020, 9, 70. https://doi.org/10.3390/robotics9030070

AMA Style

Hariri N, Gutierrez H, Rakoczy J, Howard R, Bertaska I. Proximity Operations and Three Degree-of-Freedom Maneuvers Using the Smartphone Video Guidance Sensor. Robotics. 2020; 9(3):70. https://doi.org/10.3390/robotics9030070

Chicago/Turabian Style

Hariri, Nasir, Hector Gutierrez, John Rakoczy, Richard Howard, and Ivan Bertaska. 2020. "Proximity Operations and Three Degree-of-Freedom Maneuvers Using the Smartphone Video Guidance Sensor" Robotics 9, no. 3: 70. https://doi.org/10.3390/robotics9030070

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop