最近gps.conf
、ディレクトリ内のファイルについて知りました/system/etc/
。NTP_SERVER の値を通常の場所に近い NTP サーバーに微調整すると、TTFF が改善されるようです。
クラスのソースコードを読むLocationProvider
と、起動時にNTPサーバーから時間が取得され、計算に「注入」されているようです。知る限り、各 GPS 衛星には非常に正確な原子時計が搭載されており、星座内のすべての衛星はいわゆる「GPS 時間」に同期しています。受信機が 4 つ以上の衛星を取得すると、次の 4 つの未知数がある方程式を (何らかの方法で) 解きます。ここで、(x,y,z) は受信機の位置、b は受信機の内部クロックと (正しい) GPS 時間との時間差です。修正が完了すると、受信機の時計が正しい時刻に同期されます。(私が間違っている場合は修正してください)。
これまでのところ、NTP タイム インジェクションの仕組みについていくつか質問があります。
- GPS 時間は、おおよそ TAI (国際原子時) にオフセットを加えたものです。これらの 2 つの時間は地球の自転に依存しませんが、UTC には依存します。NTP サーバーが UTC 時間を返す場合、UTC 時間から GPS 時間を推測することは可能ですか?
- より近いサーバーから NTP 時間を取得すると、GPS 時間の概算の「品質」がどのように向上しますか?
- GPS 時刻の初期値 (何らかの形で NTP 時刻から推測) があると仮定すると、インジェクションとは何ですか? この時間値は、x、y、z のみを未知数として方程式を解くのに正しいと見なされますか? もしそうなら、最初の修正も単なる概算ですよね?
- GPS 時間のより高品質な初期近似はどのように TTFF を改善しますか? 低品質の NTP 時間では、最初の修正が受け入れられないと見なされ、破棄されるためですか?
- おおよその初期位置を持つことは、次の正しい修正を取得するのに役立ちますか (sats のサブセットのみを聞くなど)?