Sidebar |
【DIY修理】Tripmate 850 GPS ロールオーバー
執筆:2019.10.24
編集:2019.10.24 2019年4月7日に「GPS週数ロールオーバー」と呼ばれる事象が発生いたしました。 「GPS週数ロールオーバー」は一定の周期で発生する仕様上の現象です。 そして、GPSモジュールが故意に「GPS週数ロールオーバー」に対応していなかったため GPSモジュールにおいて、年月日が間違った情報を返し、正常に利用できなくなりました。 ログを見ると
GPSの日付 99年 は (19)99年を指しているのに対し、Tripmateは 2099年と解釈しているため 2099年となります。 GPSの日付は10bit情報なので、1024週分だけ日付を足してあげればいいことになります。 手順
$date = new DateTime('1999-08-22');既存のログを修正する場合は、 $GPRMCの行を修正することになります。 GPSモジュールレベルで修理する場合
1.サポートが終了しているためファームウェアレベルでのアップデートは無理でしょう。 2.GPSモジュールを交換する 交換できそうなGPSモジュールがあれば、交換します (TripmateのGPSモジュール端子を解析していないので今後に期待) 3.GPSモジュールの信号を変換する マイコン ATTINY85-20SUR、ATMEGA328P-AU あたりで、モジュールレベルの日付変換器を作れば正常な値になりそう。 フローチャート:GPSモジュール(データ)IO ⇔ マイコンIO ⇔ 本体IO マイコンの要件:1行分のデータをバッファできる。日付計算変換するだけのプログラム容量がある。IOが4つある。 (TripmateのGPSモジュール端子を解析していないので今後に期待) 収容する場所が極めて小さいため、 ATMEGA328P-AUを採用する可能性あり。 » 続きを読む |
Sidebar |