-
Notifications
You must be signed in to change notification settings - Fork 0
Add introductory documentation #61
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
b4bd22d
5c0186c
f2ba6c3
52537f7
a328016
8ff8ab0
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,18 +1,62 @@ | ||
// Copyright (c) 2020-2021 Swift Navigation Inc. | ||
// Contact: Swift Navigation <dev@swiftnav.com> | ||
// | ||
// This source is subject to the license found in the file 'LICENSE' which must | ||
// be be distributed together with this source. All other rights reserved. | ||
// | ||
// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, | ||
// EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED | ||
// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. | ||
//! `swiftnav-rs` is a library that implements GNSS utility functions to perform | ||
//! position estimations. The data used by `swiftnav-rs` typically comes from GNSS | ||
//! receiver chips as raw observation and ephemeris data. `swiftnav-rs` is more of | ||
//! a "bring your own algorithm" library, it provides a bunch of functionality that | ||
//! is useful when processing raw GNSS data, but it provides only limited position | ||
//! estimation capabilities. Each module encompasses a single set of functionality, | ||
//! and they are meant to be pretty self-explanatory for developers familiar with | ||
//! GNSS processing. | ||
//! | ||
//! GNSS systems are used to estimate the location of the receiver by determining | ||
//! the distance between the receiver and several satelites. The satellites send | ||
//! the distance between the receiver and several satellites. The satellites send | ||
//! out precisely timed periodic messages and the receiver measures the delay | ||
//! of those messages. Knowing the location of the satellites at the time of | ||
//! transmission and the delays of the messages the receiver is able to determine | ||
//! the location of itself in relation to the satellites. | ||
//! | ||
//! Libswiftnav is a library that implements GNSS utility functions to perform | ||
//! position estimations. The data used by libswiftnav typically comes from GNSS | ||
//! reciever chips as raw observation and ephemeris data. | ||
//! `swiftnav-rs` does not provide any functionality for communicating with | ||
//! receivers made by Swift Navigation, or any manufacturer. | ||
//! [libsbp](https://github.com/swift-nav/libsbp) is the library to use if you | ||
//! want to communicate with receivers using Swift Binary Protocol (SBP). | ||
//! | ||
//! ## Time | ||
//! Time is a very important aspect of GNSS. `swiftnav-rs` defaults to representing | ||
//! all times as GPS times. It provides the ability to manipulate GPS time stamps, | ||
//! as well as means to convert a GPS time stamp into various other time bases | ||
//! (GLONASS time, UTC, MJD). | ||
Comment on lines
+34
to
+35
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Strictly speaking, this isn't the case yet. I've been slowly working on exposing this conversion functionality. I hope a little lie isn't too much of an issue while I finish the wrapper. |
||
//! | ||
//! ## Coordinates | ||
//! Several different coordinate types have representations and the ability to | ||
//! convert between them. Earth centered earth fixed (ECEF), Latitude longitude and | ||
//! height (both in radians and degrees), and Azimuth and elevation coordinates are | ||
//! available. | ||
//! | ||
//! ## Ephemeris | ||
//! Decoding and evaluation of broadcast ephemeris for all major GNSS constellations | ||
//! is made available. You are able to calculate the satellite position at a | ||
//! particular point in time in several different coordinates. | ||
//! | ||
//! Libswiftnav does not provide any functionality for communicating with Swift | ||
//! Navigation or any other receivers. See [libsbp](https://github.com/swift-nav/libsbp) | ||
//! to communicate with receivers using Swift Binary Protocol (SBP). | ||
//! ## Troposphere and Ionosphere | ||
//! Two major sources of signal error in GNSS are the troposphere and ionosphere. | ||
//! `swiftnav-rs` provides the ability to decode and use the broadcast Klobuchar | ||
//! ionosphere model. An implementation of the UNM3m troposphere model is also | ||
//! provided. | ||
//! | ||
//! ## Single epoch position solver | ||
//! A simple least squares position solver is also included. This allows you to | ||
//! get an approximate position with GNSS measurements from a single point in time. | ||
//! It uses a least squares algorith, so no state is maintained between solves. | ||
//! This can be used to seed your own position estimation algorithm with a rough | ||
//! starting location. | ||
mod c_bindings; | ||
pub mod coords; | ||
|
Uh oh!
There was an error while loading. Please reload this page.