sammmlow / LEOGPS

:earth_asia: :satellite: :earth_asia: :satellite: LEOGPS - Satellite Navigation with GPS on Python!
MIT License
63 stars 15 forks source link

To-Fix: GPS Antenna Offsets 📡📡 📡 #6

Open sammmlow opened 2 years ago

sammmlow commented 2 years ago

⚠️⚠️⚠️ Caution: Do not apply GPS antenna offsets as of v1.3 (pre-release). ⚠️⚠️⚠️

GPS antenna offsets should be done in the spacecraft body frame. However, currently as LEOGPS has no feature to read in spacecraft attitude coordinates, it will not be able to tell the orientation of the spacecraft and thus applying GPS antenna offsets using XYZ coordinates in the orbit frame is erroneous. For now, this has been (conveniently) cast to future work, and users are advised not to set any non-zero offsets. The input box in the GUI has also been closed. Thus, all coordinates computed in LEOGPS of the spacecraft(s) are not of the spacecraft center of mass, but of the GPS antenna phase center.

AmirAllahvirdi commented 2 years ago

Hi @sammmlow.

The attitude of the LEO satellite based on quaternion values should be applied here. These quaternions are the output of the star trackers and have different output structures for different LEO missions. I have implemented them in my own software (written in Matlab), but to have practice in Python, I will apply it for GRACE-FO and send a pull request!

sammmlow commented 2 years ago

Hi Amir! Thank you for your kind message! Would love to have your contribution, I am actually a bit cautious about implementing this because as you said, the attitudes can be implemented differently for different missions (scalar first, scalar last, or even different attitude coordinates) so I've been holding off on this for awhile although I have written a quaternion class for Python to do this...

AmirAllahvirdi commented 2 years ago

Thank you, I guess the only option is to add one by one mission. Let's start with GRACE-FO! It is good if you publish the quaternion class. 👍