2008:118
M A S T E R ' S T H E S I S
Autonomous Navigation System for MRoSA2 with Focus on Mobility and Localization
Vicky Wong
Luleå University of Technology Master Thesis, Continuation Courses
Space Science and Technology Department of Space Science, Kiruna
2008:118 - ISSN: 1653-0187 - ISRN: LTU-PB-EX--08/118--SE
AB
TEKNILLINEN KORKEAKOULUFaculty of Electronics, Communications and Automation Department of Automation and Systems Technology
Vicky Wong
Autonomous Navigation System for MRoSA2 with Focus on Mobility and Localization
Thesis submitted in partial fulllment of the requirements for the degree of Master of Science in Technology
Espoo August 12, 2008
Supervisors:
Professor Aarne Halme Professor Kalevi Hyyppä Helsinki University of Technology Luleå University of Technology
Instructor:
Pekka Forsman
Helsinki University of Technology
Preface
This thesis focuses primarily on the software development of an autonomous navigation system for MRoSA2 and has been completed as part of the Erasmus Mundus SpaceMaster Programme. The work detailed in this thesis was built upon the hardware and preliminary software provided by the Laboratory of Automation Technology at Helsinki University of Technology.
I would like to thank my instructor, Dr. Pekka Forsman for the excellent discussions and insightful comments, which have helped in shaping this thesis.
I would also like to express my gratitude to Prof. Aarne Halme and Prof.
Kalevi Hyyppä for their valuable feedbacks and guidance.
I also wish to thank Mikko Elomaa for providing continuous hardware support on ROSA throughout the course of the project; Tomi Ylikorpi and Anja Hänninen for their intensive support and guidance throughout my year in Finland in both academic and non-academic matters.
As the two-year Masters program draws to a close, I would like to extend my sincere gratitude to all my fellow classmates for the wonderful times at Würzburg, Kiruna and Helsinki. Special thanks go to Richard Bui, Martin Giacomelli, Masaki Nagai, Pipe Uthaicharoenpong and Jan Hakenberg for the laughter and care as well as academic support over the past two years.
Finally, I wish to express my greatest thanks to my family and friends for their constant patience, encouragement and support, especially my per- sonal trainer Mr. LMG for helping me in keeping a balanced work-life, my sister Venus Wong for keeping me informed about all family businesses and my parents for their unwavering love and support.
Espoo, August 12, 2008
Vicky Wong
ii
Helsinki University of Technology Abstract of the Master's Thesis
Author: Vicky Wong
Title of the thesis: Autonomous Navigation System for MRoSA2 with Focus on Mobility and Localization
Date: August 12, 2008 Number of pages: 124
Faculty: Faculty of Electronics, Communications and Automation Department: Automation and System Technology
Program: Master's Degree Programme in Space Science and Technology Professorship: Automation Technology (Aut-84)
Supervisors: Professor Aarne Halme (TKK) Professor Kalevi Hyyppä (LTU) Instructor: Pekka Forsman
Autonomous navigation is important for robots operating in unstructured environ- ments, particularly in planetary exploration missions where communication delay is also an issue. The design of an autonomous navigation system is not a trivial problem, particularly for tracked vehicles. Despite their ability in oering better traction for mobile robots on unknown terrains, the complex dynamics resulting from the skid-steering principle in tracked vehicles have made this type of locomotion an atypical choice for planetary rovers which requires accurate motion control. In this study, a mobility library for European Space Agency (ESA)'s tracked rover ROSA is developed. Based on a strictly kinematic model analogous to that of a dierential wheeled vehicle, slippage and track-soil interaction of the tracked rover are partially accounted for in the driving commands. Using a 3D tracking technique with on-rover beacons and stereo images from the stationary lander, the accuracy of the mobility system can be investigated. The stereo images from the lander would also be used as a platform for designating sites of interest, whose 3D spatial coordinates would be reconstructed by stereopsis. Navigational guidance in reaching target locations could then be provided by the user in the form of waypoints from which a smooth path would be generated and translated by the control software into a series of motion commands for the rover.
Keywords: Planetary exploration, autonomous navigation, skid-steering, lander guided navigation, ROSA.
iii
Contents
1 Introduction 1
1.1 Evolution of Planetary Rovers . . . . 2
1.2 Micro Robots for Scientic Applications 2 (MRoSA2) . . . . 7
1.3 Thesis Overview . . . . 9
2 Literature Review: Autonomous Navigation 10 2.1 Tasks of an Autonomous Navigation System . . . 11
2.2 Rover Mobility . . . 12
2.2.1 Locomotion Concepts . . . 13
2.2.2 Steering Concepts . . . 15
2.3 Rover Localization . . . 19
2.3.1 Relative localization . . . 20
2.3.2 Absolute localization . . . 21
2.3.3 Sensor fusion . . . 22
2.4 Rover Autonomy . . . 23
2.4.1 Teleoperated Robots . . . 23
2.4.2 Semi-autonomous Robots . . . 24
2.4.3 Completely autonomous Robots . . . 26
2.5 Autonomous Navigation Systems of Successful Mars Rovers . . . 26
2.5.1 Sojourner . . . 26
2.5.2 Mars Exploration Rover (MER) . . . 29
3 Navigation System for MRoSA2 33 3.1 Hardware Description of Rover . . . 34
3.2 Hardware Description of Lander . . . 39
3.3 Navigation System Architecture for MRoSA2 . . . 42
4 Mobility System of MRoSA2 46
iv
4.1 Driving Algorithms for MRoSA2 . . . 47
4.1.1 Track Velocity Calculation . . . 52
4.1.2 Rover Velocity Calculation . . . 54
4.1.3 Position Update based on encoder data . . . 54
4.1.4 Turning radius based on two dened points . . . 58
4.2 Mobility Library for MRoSA2 . . . 60
4.2.1 Low level motion commands . . . 61
4.2.2 Medium level motion commands . . . 61
4.2.3 High level motion commands . . . 62
4.2.4 Limitations of the Mobility Library . . . 64
5 Lander based localization 67 5.1 Basics of Stereo Vision . . . 68
5.1.1 Camera model . . . 68
5.1.2 Epipolar Geometry . . . 71
5.1.3 Reconstruction . . . 73
5.2 Stereo Localization for MRoSA2 . . . 74
6 Integrating Rover with Lander 80 6.1 System Architecture for MRoSA2 . . . 80
6.2 Ground Station Software . . . 84
6.2.1 Combined rover/lander operations . . . 86
7 Testing and Results 90 7.1 Development Testing . . . 90
7.1.1 Free Track Testing . . . 90
7.1.2 Preliminary Ground Test . . . 93
7.1.3 Lander Pre-integration Test . . . 93
7.2 Performance Testing . . . 97
7.2.1 Rover Ground Test with goStraight and goTurn . . . 97
7.2.2 Performance testing of lander software with rover mobility100 7.2.3 Integrated lander and rover driving . . . 110
8 Conclusions and future work 118 8.0.4 Future work . . . 119
References 121
v
List of Figures
1.1 Former Soviet Union's Lunokhod (Vniitransmash, 2002) . . . . . 3
1.2 Prop-M Micro Mars Rover (Vniitransmash, 2002) . . . . 4
1.3 Mars Pathnder's rover: Sojourner (Shirley and Matijevic, 1995) 5 1.4 Graphical Depiction of NASA's MER (JPL, 2007) . . . . 6
1.5 Comparison of National Aeronautics and Space Administration (NASA)'s Mars Science Laboratory (MSL), MER and Sojourner in rover size and their obstacle avoidance capabilities (Muirhead, 2004) . . . . 7
1.6 Rover Functional Mock-Up (RFMU) of MRoSA2 (Suomela et al., 2002) . . . . 8
2.1 Skid-steering of a wheeled vehicle (left)Wide Turn: Instanta- neous Center of Rotation (ICR) is outside the vehicle (right)Point Turn: ICR is at the center of the dotted circle (Shamah, 1999) . 16 2.2 ICR of a skid-steered wheeled vehicle undergoing a wide turn (Mu- ralidhar, 2007) . . . 17
2.3 Explicit steering of a wheeled vehicle (left)Wide Turn: ICR is outside the vehicle (right)Point Turn: ICR is at the center of the dotted circle (Shamah, 1999) . . . 18
2.4 Ackerman steering of a 4-wheeled vehicle in a wide turn . . . 18
2.5 All wheel steering of a 4-wheeled vehicle in a wide turn . . . 19
2.6 Rocker-bogie of Sojourner (NASA, 2007) . . . 27
2.7 (a) Main Rover Control Workstation program window display- ing the available command sequences (b) Reconstructed 3D ter- rain model displayed on Rover Control Workstation (NASA, 2007) 28 2.8 Rocker-bogie system of MER in deployed conguration (NASA, 2007) . . . 30
2.9 Multiple presentations of rover images shown on Science Activ- ity Planner (SAP) (Norris, 2005) . . . 31
vi
3.1 Mechanical Structure of RFMU (ROSA) (adapted from (Suomela
et al., 2002)) . . . 35
3.2 Mechanical Drawing of Actuator Box (Adapted from (Levomäki, 2000)) . . . 35
3.3 Side view of MRoSA2 . . . 36
3.4 MRoSA2 track mechanical drawing (Levomäki, 2000) . . . 37
3.5 Payload cab layout . . . 38
3.6 Prototype of lander stereo system . . . 40
3.7 Marker board layout . . . 41
3.8 Navigation System Architecture . . . 43
4.1 Forces acting on a tracked vehicle during a turn at (a) low speed and (b) high speed (Wong, 2001) . . . 48
4.2 Instantaneous centers of rotation on a plane for a tracked vehi- cle (Martinez, 2004) . . . 49
4.3 Instantaneous centers of rotation for (a) a tracked vehicle and (b) a dierential drive vehicle (Martinez, 2004) . . . 50
4.4 Local reference frame and heading convention . . . 52
4.5 Rover completing a counter-clockwise turn . . . 53
4.6 Rover completing a counter-clockwise turn with dened track velocities . . . 55
4.7 Reference frames for a rover completing a clockwise turn . . . . 56
4.8 Rover going along an arc towards target . . . 58
4.9 Command Set Hierarchy . . . 60
5.1 Coordinate frames for a single imaging device . . . 69
5.2 Epipolar geometry (Trucco and Verri, 1998) . . . 71
5.3 Rectication of a stereo pair . . . 73
5.4 Triangulation based on disparity . . . 73
5.5 Triangulation with non-intersecting rays . . . 74
5.6 Coordinate transformation before sorting and matching . . . 77
5.7 Architecture of stereo localization software . . . 78
5.8 Denition of (a) coordinate frames for the stereo system (b) heading θ and inclination α . . . 79
6.1 Data ow in mission scenario . . . 81
vii
6.2 Revised data ow for MRoSA2 . . . 82
6.3 System interface . . . 82
6.4 Ground Station User interface . . . 85
6.5 Determination of deviation from path . . . 88
7.1 Location of marker board as determined by manual and camera measurements . . . 94
7.2 Stereo camera images (left)rectied image pair with marker matches (right)Detected markers projected onto image . . . 95
7.3 Rover trajectory for going straight . . . 98
7.4 Rover trajectory for turning on the spot . . . 98
7.5 Rover trajectory for going straight . . . 99
7.6 Distance limit for camera detection at various rover speeds . . . 101
7.7 Dierential images of the rover taken by the lander at dierent speeds (Top) left camera images (Bottom) right camera images . 103 7.8 Actual angles turned by rover during CCW 90
◦turns at various angular velocities . . . 105
7.9 Comparison of lander measured angles with encoder computed angles for CCW 90
◦turns at dierent velocities . . . 105
7.10 Actual angles turned by rover during CW 90
◦turns at various angular velocities . . . 106
7.11 Comparison of lander measured angles with encoder computed angles for CW 90
◦turns at dierent velocities . . . 106
7.12 Comparison of straight line motion as measured by rover, lander and visual odometry . . . 108
7.13 Position of Rover's CG during a turning maneuver as detected by lander . . . 108
7.14 Change in rover as detected by lander vs time . . . 109
7.15 Selected targets displayed on the left and right camera images . 111 7.16 Trajectory to all 5 targets using only rover's goAlongArc function112 7.17 Trajectory to all 5 targets using lander-assisted driving along arc function . . . 112
7.18 Trajectories to the targets using lander-assisted driving along arc function . . . 113
viii
7.19 Trajectory to all 5 targets using only rover's goFacePoint and goAlongArc functions . . . 115 7.20 Trajectory to all 5 targets using lander-assisted go to point func-
tion . . . 115 7.21 Trajectories to the targets using lander-assisted go to point func-
tion . . . 116
ix
Symbols and Abbreviations
mlm millilumen, unit for luminous ux rpm revolution per minute
α slip angle
α skew coecient, camera tilt angle, rover inclination θ change in heading, sweep angle, angle to be traversed θ
fnal heading
θ
langle formed by the left wheel axles at ICR θ
rangle formed by the right wheel axles at ICR θ
oinitial rover heading
ξ angle between vector from CG
ito target and rover's local x-axis ω angular velocity at which the track sprocket turns
Ω
z, ~ Ω
zrover's angular velocity
b track baseline, baseline of stereo system c image center or principal point
c
limage center of left camera c
rimage center of right camera
(c
x, c
y) pixel coordinates of principal point c CG
irover's CG at the initial position CG
iCG
fchord formed by CG
iand CG
fCG
→iCG
fvector formed by CG
iand CG
f∠CGiCGfICR
angle formed by the two lines CG
iCG
fand CG
fICR CG
frover's CG at the nal position
CG
fivector to nal CG from initial CG expressed in ~ F
iCG
fxix-coordinate of nal CG expressed in ~ F
iCG
fyiy-coordinate of nal CG expressed in ~ F
i(CGfx ,CGfy ) ~Fi
CG
fiexpressed in x and y coordinateas of ~ F
ix
(CGfx ,CGfy ) ~Fg