ECE 174 Computer Assignment #2 Due Thursday 12/6/2012 GLOBAL POSITIONING SYSTEM (GPS) ALGORITHM

Similar documents
Global Navigation Satellite Systems II

Math 215 Project 1 (25 pts) : Using Linear Algebra to solve GPS problem

Appendix D Brief GPS Overview

Outlier-Robust Estimation of GPS Satellite Clock Offsets

Integrated Navigation System

A Comparison of Particle Swarm Optimization and Gradient Descent in Training Wavelet Neural Network to Predict DGPS Corrections

Lab Assignment #3 ASE 272N/172G Satellite Navigation Prof. G. Lightsey Assigned: October 28, 2003 Due: November 11, 2003 in class

UNIT 1 - introduction to GPS

Principles of. Principles of GPS 9/12/2011

Spoofing GPS Receiver Clock Offset of Phasor Measurement Units 1

Dynamic Model-Based Filtering for Mobile Terminal Location Estimation

Digital Land Surveying and Mapping (DLS and M) Dr. Jayanta Kumar Ghosh Department of Civil Engineering Indian Institute of Technology, Roorkee

(i) Understanding the basic concepts of signal modeling, correlation, maximum likelihood estimation, least squares and iterative numerical methods

Every GNSS receiver processes

Basics of Satellite Navigation an Elementary Introduction Prof. Dr. Bernhard Hofmann-Wellenhof Graz, University of Technology, Austria

Comparison of Various Neural Network Algorithms Used for Location Estimation in Wireless Communication

Some of the proposed GALILEO and modernized GPS frequencies.

Primer on GPS Operations

Satellite Navigation Principle and performance of GPS receivers

ABSOLUTE CALIBRATION OF TIME RECEIVERS WITH DLR'S GPS/GALILEO HW SIMULATOR

Principles of the Global Positioning System Lecture 08

Channel Modeling ETIN10. Wireless Positioning

The topic we are going to see in this unit, the global positioning system, is not directly related with the computer networks we use everyday, but it

Principles of the Global Positioning System Lecture 19

Modelling GPS Observables for Time Transfer

Lecture 8: GIS Data Error & GPS Technology

Ionospheric Estimation using Extended Kriging for a low latitude SBAS

GLOBAL POSITIONING SYSTEMS. Knowing where and when

Mobile Positioning in Wireless Mobile Networks

Chapter 6 GPS Relative Positioning Determination Concepts

Satellite and Inertial Attitude. A presentation by Dan Monroe and Luke Pfister Advised by Drs. In Soo Ahn and Yufeng Lu

36. Global Positioning System

A New Localization Algorithm Based on Taylor Series Expansion for NLOS Environment

A Direct 2D Position Solution for an APNT-System

Localization in Wireless Sensor Networks

Chapter 4 SPEECH ENHANCEMENT

INTRODUCTION TO KALMAN FILTERS

Global Correction Services for GNSS

EXPERIMENTAL ERROR AND DATA ANALYSIS

Performance Analysis of a 1-bit Feedback Beamforming Algorithm

Frequency Hopping Pattern Recognition Algorithms for Wireless Sensor Networks

Applying Multisensor Information Fusion Technology to Develop an UAV Aircraft with Collision Avoidance Model

EVALUATION OF GPS BLOCK IIR TIME KEEPING SYSTEM FOR INTEGRITY MONITORING

PROJECT 5: DESIGNING A VOICE MODEM. Instructor: Amir Asif

Post processing of multiple GPS receivers to enhance baseline accuracy

Differential navigation for UAV platforms with mobile reference station

MOBILE COMPUTING 1/28/18. Location, Location, Location. Overview. CSE 40814/60814 Spring 2018

ECS455: Chapter 4 Multiple Access

t =1 Transmitter #2 Figure 1-1 One Way Ranging Schematic

SPEEDING UP FILTER CONVERGENCE IN HIGH PRECISION, VERY LARGE AREA KINEMATIC NAVIGATION

Global Navigation Satellite Systems (GNSS)Part I EE 570: Location and Navigation

Estimation Method of Ionospheric TEC Distribution using Single Frequency Measurements of GPS Signals

Space Weather and the Ionosphere

User-friendly Matlab tool for easy ADC testing

On the GNSS integer ambiguity success rate

Measurement Level Integration of Multiple Low-Cost GPS Receivers for UAVs

MDPI AG, Kandererstrasse 25, CH-4057 Basel, Switzerland;

Effects of magnetic storms on GPS signals

Guochang Xu GPS. Theory, Algorithms and Applications. Second Edition. With 59 Figures. Sprin ger

Adaptive Correction Method for an OCXO and Investigation of Analytical Cumulative Time Error Upperbound

Bernese GPS Software 4.2

Wednesday AM: (Doug) 2. PS and Long Period Signals

Evaluation of performance of GPS controlled rubidium clocks

Satellite-Induced Multipath Analysis on the Cause of BeiDou Code Pseudorange Bias

CHAPTER 2 GPS GEODESY. Estelar. The science of geodesy is concerned with the earth by quantitatively

Dynamic Two-Way Time Transfer to Moving Platforms W H I T E PA P E R

SPREAD SPECTRUM CHANNEL MEASUREMENT INSTRUMENT

Autonomous Underwater Vehicle Navigation.

Global Positioning System: what it is and how we use it for measuring the earth s movement. May 5, 2009

Challenges and Solutions for GPS Receiver Test

Basics of Satellite Navigation an Elementary Introduction Prof. Dr. Bernhard Hofmann-Wellenhof Graz, University of Technology, Austria

Principles of Global Positioning Systems Spring 2008

A 2 to 4 GHz Instantaneous Frequency Measurement System Using Multiple Band-Pass Filters

Resection. We can measure direction in the real world! Lecture 10: Position Determination. Resection Example: Isola, Slovenia. Professor Keith Clarke

PDHonline Course L105 (12 PDH) GPS Surveying. Instructor: Jan Van Sickle, P.L.S. PDH Online PDH Center

WITH UPLINK COMPENSATION

3. Radio Occultation Principles

Antennas and Propagation. Chapter 6b: Path Models Rayleigh, Rician Fading, MIMO

Analysis of LMS and NLMS Adaptive Beamforming Algorithms

Demonstrations of Multi-Constellation Advanced RAIM for Vertical Guidance using GPS and GLONASS Signals

Relative Navigation, Timing & Data. Communications for CubeSat Clusters. Nestor Voronka, Tyrel Newton

3D-Map Aided Multipath Mitigation for Urban GNSS Positioning

GPS data correction using encoders and INS sensors

SNR Estimation in Nakagami-m Fading With Diversity Combining and Its Application to Turbo Decoding

Blind Spot Monitor Vehicle Blind Spot Monitor

GPS Technical Overview N5TWP NOV08. How Can GPS Mislead

Using GPS to Establish the NAVD88 Elevation on Reilly The A-order HARN Station at NMSU

Coarse-time Positioning without Continuous GPS Signal Tracking

Satellite Navigation (and positioning)

GPS Tutorial Trimble Home > GPS Tutorial > How GPS works? > Triangulating

A Simulation Research on Linear Beam Forming Transmission

IAG School on Reference Systems June 7 June 12, 2010 Aegean University, Department of Geography Mytilene, Lesvos Island, Greece SCHOOL PROGRAM

GPS Accuracies in the Field

A study of the ionospheric effect on GBAS (Ground-Based Augmentation System) using the nation-wide GPS network data in Japan

Vehicle Speed Estimation Using GPS/RISS (Reduced Inertial Sensor System)

CHAPTER 6 BACK PROPAGATED ARTIFICIAL NEURAL NETWORK TRAINED ARHF

TIME TRANSFER USING GEOSTATIONARY SATELLITES : IMPLEMENTATION OF A KALMAN FILTER

THE GPS SATELLITE AND PAYLOAD

Jitter in Digital Communication Systems, Part 2

Characterizing Atmospheric Turbulence and Instrumental Noise Using Two Simultaneously Operating Microwave Radiometers

Transcription:

ECE 174 Computer Assignment #2 Due Thursday 12/6/2012 GLOBAL POSITIONING SYSTEM (GPS) ALGORITHM Overview By utilizing measurements of the so-called pseudorange between an object and each of several earth orbiting GPS satellites, the object can be very accurately located in space. A general description of GPS can be found in the article [1], which you should read thoroughly, and in the detailed Web site [2]. Additional technical information can be found in [3] and other articles in [4]. Using your knowledge of the nonlinear least-squares problem you will solve the problem of locating an object given GPS pseudorange data. A self-contained technical development, sufficient for you to perform this task, can be found in the appendix to this assignment and in the class lecture supplement on gradient descent GPS algorithms [5]. Signals are sent from earth orbiting satellites to a receiver located on the surface of the earth. In principle, utilizing timing information and knowledge of the satellite orbit, the true range (the receiver-to-satellite distance) to each satellite can be measured. In practice the range measurement is errorful due to a systematic error caused by an inaccurate receiver clock (to keep the cost of commercial GPS units low) and random errors due to atmospheric distortion, communication channel noise, sensor noise, etc. The errorful range measurement is known as a pseudorange in order to distinguish it from the unknown true range (see the Appendix below). Because of the speed of light; the non-relativistic speeds of the satellites and receiver; and the close proximity of the satellites and object, it is assumed that during the time period needed to collect all the pseudorange information the satellites and receiver are motionless. Notation and Problem Statement All locations are given with respect to a fixed-earth (geostationary) reference coordinate system located at the center of the earth. Distances are given in units of Earth Radii (ER) (using an average value of 1ER = 6,370km). Note that according to [1], GPS satellites are located at about 4.14ER from the center of the earth (20,000km above the earth s surface). Use the notation S l = (x l, y l, z l ) T = position of l th Satellite, l = 1, 4; S = (x, y, z) T = position of receiver (the Station to be tracked); R l = true range to the receiver located at S from the satellite located at S l ; and S l = S S l = satellite-to-receiver distance vector. For fixed satellite location, S l, the true range, R l, is a nonlinear function of the receiver location, S, and is given by, R l (S) = S S l = S l = ( S l ) T S l, l = 1,, 4. The pseudorange measurements are denoted by y l, and modeled as 1 1 See the attached appendix. y l = R l (S) + b + ν l, l = 1,, 4, (1) 1

where the random noise term ν l is i.i.d. with p.d.f. N(0, σ 2 ). Further discussion of this model is given in the lecture supplement [5]. The (constant) systematic clock bias error b is caused by an inaccurate clock in the GPS receiver. The number of range measurements taken to each satellite, m, is the same for each satellite. Knowing the satellite locations, S l, l = 1,, 4, and having m pseudorange measurements, y l, to each of the l satellites, you are to estimate the receiver location, S, and the clock bias, b, using the Gradient Descent and Gauss methods for solving nonlinear least squares problems. Simulation Parameter Values. For the purposes of generating synthetic data, the receiver position, S, and the satellite positions, S l, are taken to be as follows (in ER units): S = (1.000000000, 0.000000000, 0.000000000) T S 1 = (3.585200000, 2.070000000, 0.000000000) T S 2 = (2.927400000, 2.927400000, 0.000000000) T S 3 = (2.661200000, 0.000000000, 3.171200000) T S 4 = (1.415900000, 0.000000000, 3.890400000) T. The receiver is assumed to be at mean sea level. The clock bias error, b, is taken to be b = 2.354788068 10 3 ER, which is equivalent to b = 15 km, or approximately 0.05 millisecond. 2 As discussed in the appendix, b > 0 corresponds to the clock on the receiver running fast compared to the clocks on the satellites. Note the degree of numerical round-off precision required to locate an object to well within a kilometer (1km = 1.569858713 10 4 ER). By default Matlab uses double precision to minimize numerical round-off error, which should be adequate for our problem. Procedure 1. Linearization. Assume a nominal receiver location, Ŝ, and clock bias b and linearize the pseudorange equation (1) about the nominal values. Discuss whether the linearized approximation gets better or worse as the true range increases. 2. Algorithm Development. Formulate the Steepest Descent and Gauss methods, explicitly showing the actual equations you will use. Identify the step size you will use. Identify your termination criteria. Remember that, in general, it is assumed that m pseudorange measurements have been taken to each satellite. To accomplish this step, you will need to carefully read and understand the material presented in Lecture Supplements 2 and 3. 2 Using c = 299, 792.458 km/sec. The specified value of b, then, is the instantaneous clock accuracy needed to locate an object to within 15 kilometers. Note that to attain the accuracy needed to locate an object to within 10 meters requires that we reduce this clock imprecision by a factor of at least 1/1, 500. 2

3. Simulation. Generate synthetic data and test and compare the Steepest Descent and Gauss Methods. For your initial estimate of the vehicle location, Ŝ(0), use Ŝ(0) = (0.93310, 0.25000, 0.258819) T ER. (The initial estimate Ŝ(0) corresponds to a location which is about 0.5km above sea level and about 2,330km off of the actual location, S. Note that this is a very crude initial guess as a comparison, the distance between San Diego and Los Angeles is less than 200km.) For your initial estimate of the clock bias use b(0) = 0. You will need to generate pseudorange measurements for three different noise levels: σ = 0.00000 (no noise); σ = 0.00040 (a range error standard deviation of about 2.5km); σ = 0.00400 (standard deviation of about 25km). Using this data you should: (a) Apply the Steepest Descent Algorithm to locate the vehicle for the three different noise cases. For the no-noise case do this for m = 1. For the two nonzero noise cases, do this for m = 1, 4, 16, and 256. Show the error in your position estimates using units of meters. (b) Repeat step (a) for the Gauss-Newton method. Again, use units of meters in the error analysis. For the two nonzero noise cases, compare the error (in meters) in your estimates to the predicted (from the linearized dynamics) error standard deviations (in meters) given from Var{ X X} = ( H( X) T Σ 1 H( X)) 1, where X = (S T b) T R 4 as described in the lecture supplement [5]. 4. Discussion. Write up your results using our standard format. Show and discuss the results of Steps 1 3 in some detail, including the observed convergence rates of steepest descent versus the Gauss-Newton method. Present plots showing the loss function l(k), receiver position estimate error Ŝ(k) S in units of meters, and clock bias estimate error b(k) b also in units of meters, as a function of iteration step, k. References [1] The Global Positioning System, Thomas A. Herring, Scientific American, Vol. 274, No. 2, February 1996, pp. 44-50. Available from UCSD S&E Library Electronic Archives. [2] GPS: Global Positioning System Overview, Peter H. Dana, Department of Geology, UT Austin, located at http://www.colorado.edu/geography/gcraft/notes/gps/gps.html [3] GPS Performance in Navigation, P. Misra, B.P. Burke, and M.M. Pratt, in reference [4], pp. 65 85. 3

[4] Special Issue on GPS: The Global Positioning System, Proceedings of the IEEE, January 1999, Vol. 87, No. 1. Available from IEEE Xplore at http://ieeexplore.ieee.org/xplore/dynhome.jsp [5] Gradient Descent GPS Algorithms, ECE174 Class Lecture Supplement, K. Kreutz- Delgado, ECE Department, UCSD. APPENDIX: The Pseudorange Equation. Let us focus on a single satellite (say the l-th one). At time t l the satellite transmits to the receiver its precise location in space, S l, and the time, t l, of transmission. The clocks on the satellites are very expensive atomic clocks of the highest accuracy. Because of the quality of the atomic clocks on the satellites, we assume that they all agree and are error free. Because of the finite (albeit extremely high) speed of light, the signal from satellite l is received at a slightly later time t > t l. The true elapsed time of propagation of the signal is therefore t t l. Denoting the speed of light by c, we can determine the range, R l, between the satellite and the receiver from R l = c(t t l ), (2) assuming that c is constant along the communication path and that the path is a straight line. (In fact, atmospheric and other propagation effects can affect this assumption.) Unfortunately from a modeling perspective (but fortunately for the consumer!), the clock located at the receiver is not an expensive atomic clock, but rather an affordable clock chosen to keep the cost of the receiver down. Thus, in general the receiver believes that it receives the signal at a time t t. The receiver clock synchronization error can be defined as t = t t. If t = t t > 0, the receiver clock is fast (i.e., it ticks too fast), while if t = t t < 0, the receiver clock is slow. The pseudo-elapsed time is given by t t l > 0 (which we assume is positive) and corresponds to the time of transit of the signal as determined by the receiver clock. Thus the receiver calculates the range (erroneously) as where c(t t l ) = c(t t l ) + c(t t) = R l + c(t t) = R l + b, (3) b = c(t t) = c t (4) is the range error due to the clock bias. Note that b has units of length. Also note that once a good estimate of b is available, we can determine the clock synchronization error in units of time as t = c 1 b. Because of the possibility of unmodeled signal propagation effects and signal processing errors (e.g., round-off errors), instead of directly using equation (3) as our model for the pseudorange we add a random noise component, ν l, to the right hand side of (3) arriving at the pseudorange measurement model y l = c(t t l ) = R l + b + ν l, 4

which was earlier presented in (1). Notice that the information sent from satellite l (namely t l and S l ) enables us to compute the pseudorange y l = c(t t l ) and construct the functions R l (S) S needed to perform the least squares estimation. = S S S l = (S Sl ) S T (S S l ) 5