
GPS週ロールオーバー — 1024週で巻き戻る時計の話
前回の学習記事では、GPS時刻とUTC(協定世界時)の「18秒差」を扱いました。今回はGPS時刻のもう一つの癖、GPS週ロールオーバーという「時計が巻き戻る」現象を学びます。
GPS時刻は「週番号」でカウントされている
GPS時刻は1980年1月6日を起点に、そこからの経過時間を「週番号」+「週内の秒数」という形式で管理しています。ところが、従来のGPS航法メッセージ(L1 C/A・LNAV形式)では、この週番号をわずか10ビット(0〜1023)でしか表現していませんでした。10ビットで表現できる範囲は1024週(約19.6年)分しかなく、1024週目の次は再び0に巻き戻ってしまいます。これがGPS週ロールオーバーです。
| 用語 | 内容 |
|---|---|
| 週番号のビット幅(レガシー方式) | 10ビット(0〜1023の範囲、約19.6年分) |
| 直近のロールオーバー | 2019年4月6日 23:59:42(UTC) |
| 次回のロールオーバー(レガシー方式のまま) | 2038年11月20日ごろ |
2019年4月に何が起きたか
直近のロールオーバーは2019年4月6日でした。GPS受信機や測位機器の中には、この巻き戻りを正しく考慮した設計になっていないものがあり、日付が実際より約19.6年古い(あるいはズレた)値を表示するといった不具合が世界各地で報告されました。カーナビの日付が突然大きくズレたり、一部の通信・時刻同期機器で障害が起きたりした事例が知られています。
GPS衛星自体が壊れたわけではなく、あくまで受信機側の週番号の解釈方法の問題です。多くの受信機メーカーは、あらかじめ「基準日以降のどの1024週サイクルにいるか」を内部で補正する仕組みを実装することで、この問題に対処しています。

次のロールオーバーはいつ?
レガシーな週番号(10ビット)を使い続けるC/A信号・LNAV形式の受信機は、次のロールオーバーを2038年11月20日ごろに迎える見込みです。
一方、GPSの近代化信号で使われるCNAV(Civil Navigation)メッセージは週番号を13ビットで表現するよう拡張されており、この形式では次のロールオーバーは2137年ごろまで発生しない計算になります。つまり「ロールオーバー問題そのもの」は、信号形式の近代化によって当面先送りされている、という状況です。
GNSSアプリ・受信機にとっての実務上の意味
GeoDiveExa・GeoConverterPro・GeoPrism JPのようなGNSS関連アプリは、受信機から送られてくる時刻・週番号情報をもとに現在時刻を組み立てています。週ロールオーバーに対する耐性は、突き詰めれば受信機(またはそのファームウェア)側の実装次第というのが実情です。アプリ側で意識すべきポイントとしては、次のようなことが挙げられます。
- 受信機から得られる時刻情報をそのまま「絶対的に正しい」とせず、明らかにおかしな日付(極端に過去・未来)が来た場合の異常値扱いを考慮する
- 長期運用する組み込み機器・過去に製造された受信機を使う場合は、その機種のロールオーバー対応状況を確認しておく
- 前回学んだ「うるう秒によるUTCとの18秒差」とは別の問題であり、両方が独立して時刻の正確さに関わってくる
まとめ
- GPS時刻は「週番号」で管理されており、レガシー形式では週番号がわずか10ビットしかなく、1024週(約19.6年)ごとに0へ巻き戻る「週ロールオーバー」が発生する。
- 直近のロールオーバーは2019年4月6日で、対応が不十分な受信機で日付表示のズレなどの不具合が報告された。
- レガシー形式のまま使い続けた場合、次のロールオーバーは2038年11月20日ごろの見込み。近代化信号のCNAV形式は13ビット化されており、次は2137年ごろまで先送りされている。
- うるう秒によるUTCとの18秒差とは別の問題として、GNSS機器の時刻系には複数の癖があることを押さえておくとよい。
出典
- GPS Week Number Rollover | GPS.gov https://www.gps.gov/news/gps-week-number-rollover
- GPS week number rollover | Wikipedia https://en.wikipedia.org/wiki/GPS_week_number_rollover
- All You Need to Know about the GPS / GNSS Week Number Rollover | Septentrio https://www.septentrio.com/en/learn-more/insights/all-you-need-know-about-gps-gnss-week-number-rollover
関連記事
- うるう秒とGNSS時刻 — UTCとGPS時刻の「18秒差」を学ぶ(GeoPrism JP)
- なぜGNSSは4機以上の衛星が必要なのか — 位置が決まるしくみをビジュアルで学ぶ(GeoPrism JP)
- ITRF2014からITRF2020へ — 電子基準点F5.1解と座標変換の「元期」を整理する(GeoConverterPro)
- 電子基準点「日々の座標値」がF5.1解へ — ITRF2020移行がRTK-GNSS現場に意味すること(GeoDiveExa)
開発者より: アプリ・Kindle本・オープンソースの一覧は GitHub: amru195704 にまとめています。
お願い
本記事の情報は参考目的で掲載しており、正確性・完全性を保証するものではありません。誤記・不正確な情報がございましたら、コメント欄よりご指摘いただければ、確認のうえ修正いたします。
アプリを入手(App Store):GeoConverterPro(座標変換) | GeoPrism JP(測地系の可視化・学習)
コメントを残す