Browse Source
Updated the description of the GnssLogger to include V 2.0.0.0 new features.pull/7/head
mohammedkhider
7 years ago
committed by
GitHub
1 changed files with 126 additions and 1 deletions
@ -1 +1,126 @@ |
|||||||
opensource/README.md |
# GPS Measurement Tools |
||||||
|
|
||||||
|
The GNSS Measurement Tools code is provided for you to: |
||||||
|
|
||||||
|
* read data from GnssLogger App, |
||||||
|
* compute and visualize pseudoranges, |
||||||
|
* compute weighted least squares position and velocity, |
||||||
|
* view and analyze carrier phase (if it is present in the log file). |
||||||
|
|
||||||
|
# Origin |
||||||
|
|
||||||
|
This code is maintained on GitHub at the following link: |
||||||
|
|
||||||
|
https://github.com/google/gps-measurement-tools |
||||||
|
|
||||||
|
# Matlab |
||||||
|
|
||||||
|
## Initial setup: |
||||||
|
|
||||||
|
1. Extract the contents of the zip file to a directory, for example: |
||||||
|
|
||||||
|
~/gpstools/* |
||||||
|
|
||||||
|
and include the directory '~/gpstools/opensource' in your matlab path: |
||||||
|
|
||||||
|
addpath('~/gpstools/opensource'); |
||||||
|
|
||||||
|
(Note: the tilde '~' is a place holder, don't actually use it, fill in |
||||||
|
the actual complete path) |
||||||
|
|
||||||
|
2. Edit ProcessGnssMeasScript.m to add the demoFiles directory, as follows: |
||||||
|
|
||||||
|
dirName = '~/gpstools/opensource/demoFiles' |
||||||
|
|
||||||
|
(again, replace tilde '~' with actual complete path) |
||||||
|
|
||||||
|
3. Run ProcessGnssMeasScript.m, it will run with pre-recorded log files. |
||||||
|
|
||||||
|
### To process a log file you collected from GnssLogger: |
||||||
|
|
||||||
|
1. save the log file in a directory |
||||||
|
2. edit ProcessGpsMeasScript.m, specify the file name and directory path |
||||||
|
3. run ProcessGpsMeasScript.m |
||||||
|
|
||||||
|
The code includes a function (GetNasaHourlyEphemeris.m) to read ephemeris |
||||||
|
files from the NASA's archive of Space Geodesy Data, ftp://cddis.gsfc.nasa.gov |
||||||
|
It will automatically go to the ftp when you have a new log file. |
||||||
|
On some systems you need to use passive mode FTP; if this is required, see |
||||||
|
The Mathworks site for how to do it. |
||||||
|
Or (simpler): get the appropriate ephemeris file 'by hand' from the Nasa ftp |
||||||
|
site (GetNasaHourlyEphemeris.m will tell you the correct url and filename), |
||||||
|
copy the file to the directory where your log file is, |
||||||
|
and GetNasaHourlyEphemeris.m will read it from there. |
||||||
|
|
||||||
|
### For a summary of the open source GNSS Measurements Tools |
||||||
|
|
||||||
|
See ~/gpstools/opensource/Contents.m or type 'help opensource' in matlab |
||||||
|
command window. |
||||||
|
|
||||||
|
## Platform specific notes: |
||||||
|
|
||||||
|
For Windows: use '\' (backslash), instead of '/' for directories. |
||||||
|
|
||||||
|
For Mac: when installing MATLAB. |
||||||
|
System Preferences --> Security & Privacy --> |
||||||
|
Allow Apps to be downloaded from: Mac App Store and identified developers |
||||||
|
|
||||||
|
Uncompress/Unzip utility called from GetNasaHourlyEphemeris.m: |
||||||
|
The ephemeris on the Nasa ftp is Unix-compressed. GetNasaHourlyEphemeris will |
||||||
|
automatically uncompress it, if you have the right uncompress function on your |
||||||
|
computer. If you need to install an unzip utility, see http://www.gpzip.org |
||||||
|
Then search for 'uncompress' in the GetNasaHourlyEphemeris function to find and |
||||||
|
edit the name of the unzip utility: |
||||||
|
|
||||||
|
unzipCommand='uncompress';%edit if your platform uses something different |
||||||
|
|
||||||
|
If you uncompress the file 'by hand' and rerun GetNasaHourlyEphemeris.m, it will |
||||||
|
read the uncompressed file. |
||||||
|
|
||||||
|
# GNSSLogger |
||||||
|
|
||||||
|
Sample App that allows registering for various Android location related measurements, |
||||||
|
log the measurements to the screen and optionally to a text file and as well analyze these |
||||||
|
measurements. |
||||||
|
|
||||||
|
Version 2.0.0.0 of the GnssLogger is enhanced with the following features: |
||||||
|
1. Compatible with Android-O new features like AGC and multi-frequency support |
||||||
|
2. Includes weighted least square position and velocity computations |
||||||
|
3. Includes weighted least square position and velocity uncertainty computations |
||||||
|
4. Compares the computed weighted least squares from raw GPS measurements vs the Kalman Filter position provided by the GPS chipset. |
||||||
|
5. Shows the computed weighted least square position from raw GPS measurements on Google Maps vs the Fused Location Provider reported position. |
||||||
|
6. Has an A-GPS control tab that allows clearing and injecting assistance data |
||||||
|
7. Plots CN0 of visible satellites and as well prints the top 4 visible satellites CN0 and average values |
||||||
|
8. Performs and plots residual analysis for both pseudorange residuals and pseudorange rate residuals |
||||||
|
9. Enhanced Logging both to screen and to files functionalities. |
||||||
|
|
||||||
|
This source code is supplied as an Android Studio project that can be built and run |
||||||
|
with [Android Studio](https://developer.android.com/studio/index.html). |
||||||
|
|
||||||
|
The APK is also provided for convenience. |
||||||
|
|
||||||
|
# Pseudorange Library |
||||||
|
|
||||||
|
Position Solution Engine from Gnss Raw measurements as a dependency android library of |
||||||
|
GnssLogger application. Part of the dependencies concerning communicating with SUPL server |
||||||
|
to retrieve ephemeris info has been packed in Jar for project cleanness. To access the SUPL server |
||||||
|
related code, please visit git repository of Android CTS. |
||||||
|
https://android.googlesource.com/platform/cts/+/master/tests/tests/location/src/android/location/cts |
||||||
|
|
||||||
|
# Copyright Notice |
||||||
|
|
||||||
|
Copyright 2016 Google Inc. |
||||||
|
|
||||||
|
Licensed under the Apache License, Version 2.0 (the "License"); |
||||||
|
you may not use this file except in compliance with the License. |
||||||
|
You may obtain a copy of the License at |
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0 |
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software |
||||||
|
distributed under the License is distributed on an "AS IS" BASIS, |
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||||
|
See the License for the specific language governing permissions and |
||||||
|
limitations under the License. |
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in new issue