Calhoun: The NPS Institutional Archive
Faculty and Researcher Publications Faculty and Researcher Publications
2005-07
On-the-ground experiments of
autonomous spacecraft
proximity-navigation using computer
vision and jet actuators
Romano, Marcello
On-the-ground Experiments of Autonomous Spacecraft
Proximity-Navigation using Computer Vision and Jet Actuators
Marcello Romano
Abstract— This paper presents the current status of the
research effort on autonomous proximity-navigation and space-craft docking, which is on-going at the Spacespace-craft Servicing and Robotics Laboratory of the Naval Postgraduate School. An experimental test-bed has been designed and is in the advance integration phase, which can be used for validating analytical and numerical results regarding dynamic models and control laws. The test-bed consists of two spacecraft models floating via air-pads on a flat surface to simulate in two dimensions the weightlessness of the orbital flight. A custom-developed Vision Navigation Sensor is used to determine the relative position and orientation of the two spacecraft. This paper presents an overall description of the test-bed and reports the preliminary experimental results of autonomous navigation of the chaser-spacecraft model in the proximity of the target chaser-spacecraft.
I. INTRODUCTION
The possibility of close monitoring, docking, refuelling and repairing satellites by autonomous robotic vehicles would be of critical value for the design and operation of many space systems. The Hubble Space Telescope provides a clear example.
Moreover, the on-orbit servicing capability and the mas-tery of the relevant technologies are considered to be the prerequisites for the future robotic and human explorations of the bodies of the Solar System, as envisioned by the NASA Project Constellation. Spacecraft rendezvous and docking dates back to the manned US Gemini and Apollo programs and the unmanned Russian Cosmos missions of the late 1960ís [1]. Nowadays, the Russian Soyuz and Progress spacecraft routinely dock with the International Space Sta-tion in a human-supervised autonomous way. Automatic rendezvous and docking capability has been developed and successfully tested in space also by Japan during the mission ETS-VII [2]. Typical sensors used are radar-based for the rendez-vous phase, and optical-based for the last phase of the docking [3].
The concept of autonomous spacecraft servicing has been the subject of a number of articles and one textbook [4]. Nevertheless, spacecraft servicing has been so far conducted exclusively in the framework of manned missions (either the servicing vehicle or the target vehicle were manned). The Ýrst in-space demonstration of autonomous spacecraft servicing is going to be the Orbital Express mission, planned for 2006 [5].
On-the-ground experimentation is a low-risk high-return method for validating dynamic models, control laws and
Marcello Romano (IEEE member) is with Faculty of Mechanical and Astronautical Engineering Department, US Naval Postgraduate School, Monterey, CA 93943 USA. phone: 831-656-2885; fax: 831-656-2238; e-mail: mromano@ nps.edu
space systems technology, complementing analysis and nu-merical simulations. In particular, we exploited the Ðoatation, via air-pads, of spacecraft simulators over a Ðat table, as pre-viously done for different purposes in Ref.[6] and [7]. This method allows for the validation of Guidance, Navigation and Control strategies for the autonomous proximity operation by using the real actuators and sensors and the real vehicle dynamics. The obvious limitation stays in the 2D simulated environment versus the 3D reality.
This paper presents the current status of development of the Autonomous Docking and Spacecraft Servicing Simula-tor (AUDASS) at the Naval Postgraduate School, and details the navigation and control of the chaser-spacecraft, reporting preliminary experimental results.
Section two of the paper introduces the test-bed. The custom developed Vision Navigation Sensor is introduced in section three. Section four focuses on the control and thruster-mapping algorithms. Section Ýve reports the exper-imental results.
II. THEAUTONOMOUSDOCKING ANDSPACECRAFT
SERVICING(AUDASS) TEST-BED
The key elements of the AUDASS system are a chaser-spacecraft and a target-chaser-spacecraft simulators, shown in Fig.1. These vehicles Ðoat on an air-bearing granite table to simu-late a two-dimensional weightlessness condition.
Refence LEDs Camera Target Spacecraft Simulator Chaser Spacecraft Simulator
Fig. 1. The Autonomous Docking and Spacecraft Servicing test-bed at the Spacecraft Servicing and Robotics Laboratory of the Naval Postgraduate School.
In particular, the chaser spacecraft consists of four physical layers. Fig. 2 shows a high-level block diagram of the
Proceedings of the 2005 IEEE/ASME
International Conference on Advanced Intelligent Mechatronics Monterey, California, USA, 24-28 July, 2005
TABLE I
MAIN CHARACTERISTICS OF THE CHASER-VEHICLE SIMULATOR
Parameter Value Unit Size Length Width Height Mass 0.4 0.4 0.9 54 m m m Kg Jets (8) Propellant Operating Pressure Thrust per thruster
Air 7 0.45 ñ Atm N
React. Wheel (1) Max Torque
Max Ang. Mom.
0.056 2.5
Nm Nms
system and Table I lists its main characteristics. The bottom layer hosts two aluminum tanks of compressed air, and the pressure regulators. The second layer contains a reaction wheel (Ball Aerospace, same model currently on-orbit on the GEOS spacecraft), eight jet thrusters, the power regulation electronics and a CMOS camera. The Reaction wheel was not used for the current research.
Each thruster consists of a normally-closed solenoid-valve and a high-efÝciency convergent nozzle. The third layer of the spacecraft simulator hosts two on-board computers. Finally, the fourth layer contains the batteries and a wireless Ethernet router.
CHASER VEHICLE SIMULATOR
O/B Control Computer
H/w: PXI PIII 800 MHz S/w: XPc Target Real-Time OS,
ChaserCtrl (custom dev) Digital Ouptut board
Analog I/O board
Thrusters (8) Reaction Wheel
IMU sensors CMOS Camera O/B Vision Sensor
Computer
H/w: PC104 PIII 800 MHz S/w: Win2000 OS, Matlab 7.0,
AutoNav (custom dev.), CameraMatlab I/F (custom dev.)
FireWire board Wireless Ethernet Router TARGET VEHICLE SIMULATOR Reference I/R Leds Telecommand & Telemetry Computer
H/w: PIV 3GHz
S/w: WinXP, Matlab 7.0, Virtual Network Computing
Wireless Ethernet FLOATING PLANE (UDP) (UDP) (UDP)
Fig. 2. High-level block diagram of the test-bed
III. VISIONNAVIGATION
The Vision Navigation Sensor was custom-developed with the aim of measuring the relative position and attitude of the target-spacecraft simulator with respect to the chaser-spacecraft simulator.
A. Camera Optical Model
According to the ideal camera pinhole model [8], using homogenous coordinates, Z ⎡ ⎣ xy 1 ⎤ ⎦ = ⎡ ⎣ f0 f 00 0 0 0 1 ⎤ ⎦ ⎡ ⎣ 1 0 0 00 1 0 0 0 0 1 0 ⎤ ⎦ ⎡ ⎢ ⎢ ⎣ X Y Z 1 ⎤ ⎥ ⎥ ⎦ (1) or, in compact form, with obvious meaning of the symbols,
Zp = KfΠ0P, (2)
where(X, Y, Z) and (x, y) are the coordinates of a generic world pointP and its projection p on the camera sensor, as
shown in Fig. 3. The coordinates of both points are expressed inmm, and with respect to the camera frame. Moreover f
is the focal length inmm.
In the ideal pinhole model 1 the lens is considered to be perfectly distorsionless. For practical applications, in order to obtain accurate measurements, the pinhole model is usually extended to include the effects of image distortion due to the real compound lens. Following Ref. [9] and [10], the image distortion can be modeled as
xd yd = x y + δx(r) δy(r) + δx(t) δy(t) (3) where δx(r) δy(r) = (ρ1r2+ ρ2r4+ ρ3r6) x y (4) and δx(t) δy(t) = 2τ1xy + τ2(r2+ 2x2) τ1(r2+ 2y2) + 2τ2xy , (5) with (xd, yd) being the distorted projection (i.e. the
pro-jection obtained with the real lens) of the world point P
onto the image sensor, r = x2+ y2, ρi, i = 1, 2, 3 are
the coefÝcients of radial distortion and τi, i = 1, 2 are the
coefÝcients of tangential distortion.
In particular, the terms(δx(r), δy(r)) provide corrections
to the ideal undistorted coordinates (x, y) for the radial lens distortion, that causes the actual image-point to be displaced radially in the image plane. Analogously, the terms(δx(t), δy(t)) provide corrections for the tangential lens
distortion.
Beside the image distortion, a second critical issue for the practical application of the ideal pinhole model, is the accurate knowledge of the parameters of the image sensor.
The coordinates (ud, vd) in unit of pixels, as output by
the camera, of the distorted projection(xd, yd) on the image
sensor can be expressed in the following way ⎡ ⎣ udvd 1 ⎤ ⎦ = Kspd= ⎡ ⎣ Du0 sDuDv ouov 0 0 1 ⎤ ⎦ ⎡ ⎣ xdyd 1 ⎤ ⎦ (6)
where (ou, ov) are the coordinates in unit of pixels of the
image center, and Du and Dv are the numbers of the horizontal and vertical pixels permm, respectively. Finally 1012
the skew factors accounts for the possible non-rectangularity
of the pixels.
The set of quantities {f, ou, ov, Du, Dv, s} are generally called the intrinsic parameters of the camera. Both the intrinsic parameters and the distortion coefÝcients need to be estimated a priori using a camera calibration process.
Once the intrinsic parameters and distortion coefÝcients are determined for a speciÝc camera-lens assembly and focus/shutter adjustment, the compensated image projection (x, y) of a world point can be obtained from the pixel coor-dinates(ud, vd) output by the camera, by using Eq. 3 and 6.
Because of the high degree distortion model, in general this inverse map does not have an algebraic expression and a numerical approach is used.
Camera frame
Image plane
World frame
Fig. 3. Geometry of the camera model and three-points based navigation
B. Three-points Based Navigation
For the purpose of studying the navigation geometry we assume, without loss of generality, that the ideal pinhole camera model is valid and that the undistorted projections of the three reference points onto the image plane are available. Camera calibration and distortion compensation make this statement approximately true also for the real application.
Three reference points are assumed attached to the world reference frame, represented asLi, i = 1, 2, 3 in Fig. 3.
LetLi w, i = 1, 2, 3 be the three known algebraic vectors
of homogeneous coordinates of the reference points ex-pressed in the world reference frame, and letpL i, i = 1, 2, 3
be the corresponding projections on the image plane, which are captured by the camera. It results, by construction,
L1 w= ⎡ ⎣ −a0 0 ⎤ ⎦ ; L2 w= ⎡ ⎣ 00 −b ⎤ ⎦ ; L3 w= ⎡ ⎣ 0a 0 ⎤ ⎦ , (7) wherea and b are positive constant.
Furthermore, lett = [tx, ty, tz]T be the column matrix of
camera coordinates of the vectorOw− Oc, β the angle of
rotation about they direction from the camera frame to the
world frame and
pL i= ⎡ ⎣ pixpiy 1 ⎤ ⎦ i = 1, 2, 3 (8)
the undistorted projections on the image plane.
Then, by considering the pinhole camera model of Eq. 1 and the geometry of the problem of Fig. 3, the navigation solution is found to be tz= 2af (p1y− p3y)2 tx= tz p1x f ty= tz (p3y2f− p1y) α = arctan(p2x f ) β = α + arcsin tx cos(α) − tzsin(α) b . (9) Even though the solution presented is only valid for the planar motion case, the general navigation problem in three-dimensions can still be solved by using a three-points method, see ref. [11], or a Ýve-points method, see ref. [3].
C. Implementation Details
In our application, the core of the Vision Navigation Sensor is a CMOS camera, by Pixelink Inc., mounted on the chaser-vehicle simulator and connected to the on-board Vision Sensor Computer. The camera is monochrome and has 1.3 millions pixels. We chose to use a camera based on CMOS technology, instead of CCD, because of the higher resolution, direct digital image acquisition and lower power consumption. An infrared-pass Ýlter is mounted on the camera lens, in order to reject all the objects in the Ýeld of view but the three reference points, which are infrared LEDs mounted on the target-vehicle simulator.
Previously to the experiments, the calibration of the camera-lens assembly was performed using the method in-troduced in Ref.[12], which is based on the minimization, through the gradient descent method, of the re-projection errors of a set of image-points corresponding to features of a known object (corners of a planar checkerboard). A series of pictures was taken from different positions and orientations of the camera with respect to the object and analyzed together in order to increase the estimation accuracy.
During the experiments, the vision navigation algorithm, running on the O/B Vision Sensor Computer, performs cyclely the following operations :
1) Acquisition of the digital images from the CMOS camera. Each image is acquired as a matrix of 8-bit-deep pixelís intensity values;
2) Image processing;
3) Solution of the three-points based navigation;
4) Transmission of the measurements to the O/B control computer, via UDP connection.
In particular, the Image Processing consists of the follow-ing algorithmic steps:
1) Thresholding the image by neglecting pixels with intensity under a certain level;
2) Quantizing the intensity from 8 to 2 bits;
3) Transforming the full image-matrix into a sparse image-matrix for faster processing;
4) Computing the coordinates in pixels, (ud i, vd i), i =
1, 2, 3, of the centroids of the projection of the three reference-LEDs onto the image sensor;
5) Determine the corresponding compensated centroids (xi, yi), i = 1, 2, 3 as explained in the previous
sec-tion.
The image acquisition, image processing and navigation algorithm were coded in Matlab.
The values of the main performances obtained with the Computer-Vision Navigation Sensor are as follows. The ac-curacy of the determination of the components of the relative distance camera-world frame was∼ 2 mm. The accuracy of the determination of the relative attitude between the camera and the world frames was ∼ 0.2 deg. The sample rate of the overall Computer-Vision Navigation Sensor (image acquisition, image processing, navigation solution) was∼ 5
Hz.
IV. CONTROL
A set of three decoupled PD feedback loops was used to control the chaser-spacecraft simulator along xch, zch and around ych, respectively. See Fig. 4.
A. Thruster mapping
The task of selecting which thrusters to Ýre in order to obtain the desired force and torque required by the control law (thruster mapping) can be rather challenging. Our approach is similar in its general structure to the one proposed in Ref.[13], but is differing from that for the use of a constrained optimization algorithm.
The developed thruster-mapping algorithm consists of the following steps:
1) The forces and torques required by the control law for each DOF are collected in a algebraic vector of
desired actions, in units of N and N m, respectively.
This vector is then bounded according to the maximum values which can be provided by the available jets, and normalized into a column matrix of equivalent desired
actions in units of number of thrusters. In particular,
Camera frame Chaser vehicle Jet 8 Jet 1 Jet 5 Jet 4 Jet 2 Jet 3 Jet 6 Jet 7 I II IV Target vehicle III
Fig. 4. Schematics of the chaser and target spacecraft simulators with details on the jet thrustersí geometry and reference-frames convention. The roman numerals are used to indicate pairs of opposite thruster jets.
each force element is divided by the force per thruster and each torque element is divided by the torque
per thruster (w.r.t. center of mass). This results in a
vector containing the numbers of thrusters, or fractions thereof, required for each DOF. Each axially-paired set of opposite thrusters can be thought of mathematically as a single bidirectional thruster with possible thrust included between a full forward and full reverse. 2) A weighted normalization is applied to the vector
of equivalent desired actions in order to impose the physical limit on the maximum number of thrusters Ýring at the same time. For instance, in our case, this maximum is four, because it is inefÝciently useless to Ýre two opposite thrusters at the same time.
3) The normalized vector of equivalent desired actions (η) is related to the vector of required thrust-level for each thruster (j) through the following linear system:
η = Gj (10) where G is the geometric mapping matrix, which
depends on the thrustersí conÝguration on-board the spacecraft. The linear system 10 is usually underde-termined because of the redundancy of the number of thrusters versus the number of DOF. First, an un-constrained minimum-norm (pseudo-inverse) solution of Eq.10 is tentatively sought. If any elements of the solution are out of the upper or lower thrusting limits (+1 and −1, respectively, in terms of thrust activity) the previous solution is discharged and a constrained minimum-norm solution is applied. In particular we used the iterative interior-point optimization method with box constraints of Ref.[14].
The above algorithm can be directly applied to the general three dimensional case of real spacecraft.
In our application, the vector of desired actions, deter-mined by the control law, includes the force alongxch, the force along zch and the torque along ych. Moreover, the
geometric mapping matrix is, from Fig. 4, G = ⎡ ⎣ 01 01 10 10 −1 1 −1 1 ⎤ ⎦ (11) B. Pulse-width Modulation
The vector j, solution of the thruster-mapping algorithm, consists of real-number elements with values between −1 and 1 for each pair of opposite thrusters, and between 0 and 1 when distributed to each thruster. In particular, the ith element of j gives the thrust-level required for the ith thruster. Since, generally, spacecraft thrusters are on-off
actuators, a suitable modulation is needed in order to obtain on-the-average the same thrust of continuous actuators. For our application, we used a Pulse Width Modulation.
In this application, the Pulse Width Modulation logic is based on equating the impulse of an ideal continuous actuator with the one of the real on-off actuator, as in the following equation i∆t on= Trequired Tmax i ∆tP W M (12)
where the ratio in parentheses is the thrust-level required to theith thruster by the thruster-mapping algorithm,∆tP W M
is the modulation sample-time andi∆ton is the time during
which the thruster is commanded.
For the implementation of the PWM logic the following constraints apply:
∆tP W M = n1∆ts (13)
∆ton = n2∆ts (14)
∆ton > ∆tmin P W (15)
where∆tsis the sample-time of the digital control, n1 and
n2 = 0, 1, 2, ... ≤ n1 are integer factors, and ∆tmin P W is
the minimum pulse-width, which is related to technological limit of the thrustersís solenoid valve. Moreover the PWM frequency (inverse of∆tP W M) has to be considerably larger
than the system bandwidth.
For our experiments we chose∆ts= .01 s and n1= 10.
V. EXPERIMENTALRESULTS
This section reports the results of two preliminary exper-iments conducted with the AUDASS test-bed. The vision navigation sensor, introduced above, was used for the de-termination of the relative position of the chaser spacecraftís center-of-mass with respect to the reference framew attached
to the target (see Fig.1 and 4). The position rate needed for the application of PD control-law was determined by pseudo-differentiate the position measurement.
For the presented experiments, the chaser vehicle was constrained to only translate, either along the direction xch
over the granite table, for the Ýrst experiment, or along the direction zch, for the second one. The rotation around ych
was blocked by using two rulers Ýxed on the granite table along the sides of the chaser-spacecraft simulator. The test-bed conÝguration for these experiments was such that the
0 2 4 6 8 10 12 14 16 18 0.05 0 0.05 0.1 0.15 0.2 0.25 time [s] tx [m]
Fig. 5. Experimental results, regulation-control test along the x direction: relative position of the chaser-spacecraft simulator as measured by the vision sensor 0 2 4 6 8 10 12 14 16 18 1 0.5 0 0.5 1
Jets pair III
0 2 4 6 8 10 12 14 16 18 1 0.5 0 0.5 1 Jets pair IV time [s]
Fig. 6. Experimental results, regulation-control test along the x axis: jet thrustersí activity
chaser and world reference frames (indicated bych and w
in Fig. 4) were parallel.
The controller gains for the translation feedback loops were chosen by imposing a damping ratio of0.7 and a satura-tion error of0.12 m for the second order model representing the translating system.
A regulation control case was Ýrst tested along the x
direction: the reference position was0. m, while the starting position was0.24m. As it is shown in Fig. 5 the commanded position was reached in about10s and then maintained with 1cm accuracy until the end of the test. Fig.6 reports the thrustersí activity during this test.
A second regulation control test was performed along they
direction: the reference position was0.6 m, while the starting position was0.855 m. Fig. 7 and 8 show the results of this test.
The quantization in the position measurements reÐects the sample-time of the Vision Navigation Sensor, while the noise
is mainly due to the UDP transmission. 5 10 15 20 25 0.55 0.6 0.65 0.7 0.75 0.8 0.85 time [s] tz [m]
Fig. 7. Experimental results, regulation-control test along the z direction: relative position of the chaser-spacecraft simulator as measured by the vision sensor 0 5 10 15 20 25 1 0.5 0 0.5 1 Jets pair I 0 5 10 15 20 25 1 0.5 0 0.5 1 Jets pair II time [s]
Fig. 8. Experimental results, regulation-control test along the z axis: jet thrustersí activity
VI. CONCLUSIONS
This paper introduces the Autonomous Docking and Spacecraft Servicing Simulator (AUDASS), which is a re-search facility for the on-the-ground testing of automatic spacecraft proximity-navigation and docking. The test-bed is in development at the Spacecraft Servicing and Robotics Laboratory of the Naval Postgraduate School. In particular, the paper includes details on the custom-developed vision navigation sensor and the control strategy using jet actuators. Results are presented of two preliminary experiments of autonomous navigation of the chaser-spacecraft simulator in the proximity of the target-spacecraft. These experiments were successful in demonstrating the functionality of the overall system and validating the vision navigation and jet-actuators control algorithms. Future developments include
the use of the on-board reaction wheel and the integration of a docking-interface, which has been developed by Starsys Corporation as a prototype unit for the Orbital Express mission [15].
REFERENCES
[1] M. Polites, ìAn assessment of the technology of automated rendezvous and capture in space,î Marshall Space Flight Center, Marshall Space Flight Center, Alabama, Research report NASA/TP-1998-208528, 1998.
[2] I. Kawano, M. Mokuno, T. Kasai, and T. Suzuki, ìResults of au-tonomous rendezvous docking experiment of engineering test satellite-vii,î Journal of Spacecraft and Rockets, vol. 38, no. 1, pp. 105ñ111, 2001.
[3] W. Fehse, Automated Rendezvous and Docking of Spacecraft. Cam-bridge University Press, 2003.
[4] D. Waltz, On-Orbit Servicing of Space Systems. Krieger, 1993. [5] J. Shoemaker and M. Wright, ìOrbital express space operations
architecture program,î in Proceedings of SPIE Spacecraft Platforms
and Infrastructure Symposium, vol. 5419, Orlando, 2004, pp. 57ñ65.
[6] V. Chen and R. Cannon, ìExperiments in nonlinear adaptive control of free-Ðying space robots,î in Proceedings of the IEEE International
Conference on Robotics and Automation, San Diego, CA, 1994, pp.
2213ñ2220.
[7] M. Marchesi, F. Angrilli, and F. Venezia, ìCoordinated control for free-Ðyer space robots,î in Proceedings of IEEE International Conference
on Systems, Man, and Cybernetics, vol. 5, Philadelphia, PA, 2000, pp.
3550ñ3555.
[8] J. P. D.A. Forsyth, Computer Vision: A Modern Approach. Prentice Hall, 2002.
[9] D. Brown, ìLens distortion for close-range photogrammetry,î
Photo-metric Engineering, vol. 37, no. 8, pp. 855ñ866, 1971.
[10] J. Heikkila and O. Silven, ìA four-step camera calibration procedure with implicit image correction,î in Proc. of the IEEE Conference on
Computer Vision and Pattern Recognition, 1997, pp. 1106ñ1112.
[11] O. Yakimenko, I. Kaminer, and W. Lentz, ìA three point algorithm for attitude and range determination using vision,î in Proceedings of
American Control Conference 2000, vol. 3, Chicago, IL, 2000, pp.
1705ñ1709.
[12] J. Bouguet. (2004, Oct.) Camera calibration toolbox for matlab. CALTECH. Pasadena, CA, USA. [Online]. Available: http://www.vision.caltech.edu/bouguetj
[13] M. Ullman, ìExperiments in autonomous navigation and control of multi-manipulator, free-Ðying space robots,î Doctoral thesis, Stanford University, Stanford, April 1993.
[14] M. Adlers, ìSparse least squares problems with box constraints,î Master thesis, Linkping Universitet, Linkping, Sweden, 1998. [15] S. Stamm and P. Motaghedi, ìOrbital express capture system: concept
to reality,î in Proceedings of SPIE Spacecraft Platforms and
Infras-tructure Symposium, vol. 5419, Orlando, 2004, pp. 78ñ91.