A Python package for tracking Global Navigation Satellite Systems (GNSS) satellites and analyzing their positions.
- Real-time GNSS satellite tracking
- Satellite position visualization using Cartopy
- TLE (Two-Line Element) data processing
- Rich command-line interface
- Comprehensive satellite data analysis tools
Install the package using pip:
pip install git+https://github.com/alainmuls/gnss_predict.gitThe package requires the following Python libraries:
- ephem
- numpy
- matplotlib
- cartopy
- rich
- pandas
After installation, you can run the GNSS tracking tool from the command line:
± gnss_predict -h
usage: gnss_predict [-h] -g GNSS [-x EXCLUDE] [-i INTERVAL] [-c CUTOFF] [-o OBSERVER] [-d DATE] [-s START] [-e END] [-m MAX_DOP] [-v]
gnss_predict uses NORAD TLE files to predict GNSS orbits
options:
-h, --help show this help message and exit
-g GNSS, --gnss GNSS Name of GNSSs as comma separated list (cfr NORAD naming)
-x EXCLUDE, --exclude EXCLUDE
Comma separated list of satellite PRNs to exclude from DOP calculation (eg. G18,E14,E20)
-i INTERVAL, --interval INTERVAL
Interval in minutes
-c CUTOFF, --cutoff CUTOFF
Cutoff angle in degrees
-o OBSERVER, --observer OBSERVER
Station info "name,latitude,longitude" (units = degrees, defaults to "RMA,50.84402,4.39293")
-d DATE, --date DATE Prediction date (YYYY/MM/DD), defaults to today
-s START, --start START
Start time (hh:mm)
-e END, --end END End time (hh:mm)
-m MAX_DOP, --max-dop MAX_DOP
Maximum xDOP value to display
-v, --verbose Display interactive graphs and increase output verbosityThe package includes:
- GNSS satellite time functions
- TLE (Two-Line Element) files
- Utils utility functions for data processing
- Data files
- Plots
- Fork the repository
- Create your feature branch (git checkout -b feature/amazing-feature)
- Commit your changes (git commit -m 'Add amazing feature')
- Push to the branch (git push origin feature/amazing-feature)
- Open a Pull Request
BSD License.