OSQZSS

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

GPS信号シミュレータでRTK

2015-07-02 11:26:52 | GPS Signal Simulator
gps-sdr-simでこれまでゼロに初期化していた搬送波位相ですが,
実験的に初期化ルーチンを追加しました.

ユーザモーションとして,時速30kmほどで半径100mの円を描くroverと,
その中心に置かれたbaseを準備します.

GitHub: osqzss / gps-sdr-sim / rtk

これらのシナリオを別々にシミュレータで実行して,roverとbaseの
RAWデータを取得します.

RTKLIBでキネマティック測位をしてみると,なんとかFIXしてくれました.

 (クリックで拡大)

 (クリックで拡大)

 (クリックで拡大)

いろいろと不満な点は残りますが,手始めとしてはまずまずの結果です.
コメント

nanoblock スペースシャトル

2015-06-28 11:01:59 | 雑記
空いた時間を見つけては,オービターの続きを組み立て.





どう見ても,ゴーヤです.





ロケットブースターをタンクに取り付けて…



完成!



オフィスに飾ってみました.
nksk研GPSグループの皆様,素敵な餞別をありがとうございます.
コメント

User motionの生成

2015-06-27 15:24:08 | GPS Signal Simulator
gps-sdr-simでユーザの動きを定義するuser motionファイルが
簡単に生成できる方法はないものかと探していたら,
こんなソフトウェアを発見.

LabSat: Free GPS NMEA Simulator Software

商用のGPS信号シミュレータであるLabSatに入力するための
サンプリングファイルを生成するSatGenは有償だけれども,
NMEAを生成するだけのこのツールはなんと無料.

早速,試してみました.

まず,Google Earthにpathを描きます.

 (クリックで拡大)

それをkmlファイルにセーブします.

 (クリックで拡大)

セーブしたkmlファイルを無料版のSatGenで読み込みます.

 (クリックで拡大)

SatGenはGoogle Earthで描いたpathから,自動的に速度プロファイルを
生成してくれます.素晴らしい!

Outputレートを10Hzに設定して,NMEAファイルを生成します.

gps-sdr-simは,いまのところNMEAファイルをそのまま読み込めないので,
user motionファイルに変換するツールを用意しました.

GitHub: osqzss / gps-sdr-sim / tools

nmea2umは,NMEAの緯度,経度,高度データを,user motionファイルの
ECEF座標系に変換します.

これをbladeRFで再生すると,みごとにその通りの測位結果が得られます.

 (クリックで拡大)

信号のQiが不安定なところが気になりますが,それを差し引いても,
とても便利です.

【追記】SatGenで生成される軌道は,一見スムーズだけれども,
実はかなり不連続だ.おかげで,加速度でかすぎ.

 (クリックで拡大)

信号のQiが不安定なのは,これが原因.
やっぱり自分で組むしかないのか.
コメント

GPS Spoofing

2015-06-25 08:23:33 | GPS Signal Simulator
gps-sdr-simを使って,スマートフォンのGPSをspoofingしているユーザを発見.



https://twitter.com/kaback/status/613826981424050176

HackRFの方がアクティブなユーザが多いな.
楽しんでくれているようで,何よりです.
コメント

nanoblock オービター

2015-06-21 19:11:41 | 雑記
雨降りなので,インドアで週末を過ごす.





コメント

HackRFでシミュレーション

2015-06-19 17:28:57 | GPS Signal Simulator
HackRFで再生できるGPS信号ファイルをgps-sdr-simで生成してみました.

HackRFのUSB 2.0のインターフェイスでは,4MHzのサンプリングレートは
厳しそうなので,2.6MHzに変更.

量子化ビットも,bladeRFの12ビットから8ビットに変更.

bladeRFでは,12ビットの信号を各2バイトでI,Qの順番に読み込んでいます.
HackRFでは,8ビットの信号を1バイトで読んでいるので,こちらも変更.

とりあえず,生成したファイルをHackRFで送信してみます.
再生の手順は,Record & Playbackのときと同じです.



ubloxのLEA-6Tで受信すると,問題なく測位できました.

 (クリックで拡大)

ただし,HackRFに搭載されている基準クロックは,温度補償されていない
水晶発振器なので,GPS信号としては周波数が不安定.

そのため,信号のQiが5〜6とやや低めです.

一度は挫折した外部クロックをまた設計してみるか.
多分,バッファを入れれば,ドライブできるはず.

【追記】jitterが気になるので,とりあえずクロックバッファを選ぶ.
これとか,どうかな?

CDCLVC1102: Low Jitter, 1:2 LVCMOS Fan-out Clock Buffer
コメント

GPS-SDR-SIMの公開

2015-06-15 14:12:40 | GPS Signal Simulator
SDRを使ったGPS信号シミュレータを試してみたいという要望が
何件かあったので,ソースコードをGitHubに公開してみました.

GitHub: osqzss / gps-sdr-sim

このソフトウェアは,ephemerisファイルとユーザの動きを定義した
ファイルから,GPS L1 C/Aのベースバンド信号ファイルを生成します.
それをSDRプラットフォームで,RF信号にアップコンバートします.

ターゲットとしているSDRプラットフォームはbladeRFになりますが,
簡単な変更でhackRFやUSRPにも読み込ませることができます.

時速30kmで半径100mの円を描くモーションファイルが,例として
付いています.

ubloxの受信機に接続してu-centerでモニタしてみると,こんな感じ.

 (クリックで拡大)

とりあえず測位は出来るのですが,制約もいくつかあります.

1. シミュレーションの長さは最大5分間
2. 可視衛星の切り替えはなし
3. 受信強度が固定ですべての衛星で同じ
4. 電離層遅延,対流圏遅延なし

次はリアルタイム化したいな.

【追記】GitHub for Windowsを使ったリポジトリの公開は,
この記事を参考にさせていただきました.

GitHub for Windowsを使ってGitの基本タスクを実行してみる(GUI編&PowerShell編)
コメント

平塚沖総合実験タワー

2015-06-11 19:05:38 | GNSS-R
実験機材をバックパックに詰め込み



船に乗って



平塚沖総合実験タワーを目指します.



GNSS海面反射波による海洋リモートセンシングの定点観測のために,
実験タワーに観測機器を設置していただく予定です.



今日はタワーの見学と設置場所の事前調整.
持ち込んだ機材で,予備実験もしてきました.

これで積み機材の出番がやってくる!
コメント

ParallellaでSDR

2015-06-10 07:20:16 | 雑記
メモ

Parallellaで何ができるのか,まださっぱり判らないけれど,
多チャンネルのGNSS信号には並列処理が向いている気がする.

MONOist: "名刺サイズスパコン"「Parallella Board」を作った男の話
コメント

ZenFone 2でGNSS

2015-05-30 22:09:37 | 雑記
ZenFone 2で受信したGNSS衛星のスカイプロットがメーリングリストに流れてきた.

 (クリックで拡大)

これは良い眺めだ.

【追記】ZenFone 2のチップセットは何を使っているのだろうか?

情報が少なくて判らないけれど,少なくともアプリケーションプロセッサは
Atomなので,モデム統合型SoCのベースバンドチップではない.

上位機種にはQualcommのチップを使っていると書かれている記事が多いので,
ベースバンドプロセッサはGobiなのかな?

検索してみると,こんなニュースがある.

ここで紹介されているGobi 9x45はGNSSに対応しているし,dual SIMなのも
ZenFone 2っぽい.

しかし去年の11月のプレスリリースか.さすがに半年で製品にはならない?

【追記2】分解記事を発見.

MyFixGuide: Asus ZenFone 2 Teardown

通信系はばらばらで,全然統合されていない.
GNSSチップは,BroadcomのBCM47531A1のようだ.

Qualcommのチップ,急速充電だけじゃないか…
コメント