OSQZSS

オープンソース準天頂衛星(QZSS)受信機

GPS信号シミュレータの完成

2015-01-20 21:08:30 | GPS Signal Simulator
ubloxの受信機をパッチアンテナに繋げて,ライブのGPS信号を受信しながら
航法メッセージを眺めていると,サブフレーム4と5のページ番号に51や57など,
明らかに大きな数字が出力されていることに気づきました.

ICDを読み直してみると,サブフレーム4と5には,ページ番号そのものではなく,
それに対応したSV IDというものが挿入されているようです.RTFM!

シミュレータではページ番号を25に固定していますので,この場合のSV IDは
サブフレーム4では63,サブフレーム5では51になります.

また,サブフレーム1の送信時刻は,30秒の整数倍のGPS時刻に揃っているようです.
つまり,サブフレーム1のHOWに含まれるTOWのmodulo 30は,常に6秒となります.

この2つの修正で,30秒ごとの受信機リセットも解消され,LEA-6Tでも
スムーズに測位できるようになりました.



 (クリックで拡大)

まだベースバンド信号ファイルを生成するだけのオフラインのシミュレータですが,
とりあえず動作するものが完成です.

bladeRFにはLE数の大きなFPGAが搭載されているので,これを上手く使って
リアルタイム化したいな.

【追記】fwriteでサンプリング毎にファイルに書き込んでいるのが遅いのかなと
思い,setvbufで内部バッファを大きく取って数十MBをまとめて書き込んだり,
openやwriteなどの低水準関数を使ってみたりしたのですが,まったく改善なし.
どこがネックになっているのだろう?
コメント    この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« 3D FIXの成功 | トップ | OpenMPによる並列化 »
最新の画像もっと見る

コメントを投稿

GPS Signal Simulator」カテゴリの最新記事