衝動買いしたM9N到着して、さっそく通電して、25Hz動作を確認しました。
とりあえず車のダッシュボードに乗せて、F9Pと比較してみました。
M9NのhaccがSBASでも50cm~2mくらいでした。仕様が2m精度なので、基板上のチップアンテナでも仕様内にはおさまってました。=>チップアンテナのGPSとは思えないほど精度(2m以内)でてます。RTKほど精度が欲しくないけど、複雑でかさ張るGPSは嫌だと言う方にはいいかもしれませんがお勧めはしません。多分買って損したと思います。
●結局ドップラーを積分して使う場合、M9N使えなかった。
速度が20-30kmh以上でないとノイズが多くて積分しても精度がでないので、低速での動きが測定できないです。低速度だったらIMUと変わらない精度しかでません。低速度だと20%以上位置誤差がでます。
メリット=>搬送波測位のように外乱に弱い方式でなく、電波の周波数のカウントなので、
外乱に強いので精度が出ます。ドップラーの原理から速度速いほど、ノイズ比率が減ります。
時速30kmh以上で使えます。
デメリット=>速度が20kmh以下で、ノイズ比率が上がって精度が落ちます。
※SBAS CLASなど単独測位は時代に逆行した技術なのでお勧めしません。
単独測位とは、衛星電波だけで、自己位置を測位する方式ですが、原理的に一般のGPSと原理が同じですので、現在のGPS精度5mが20cm-2mに改善するだけです。一方相対測位であるRTKは、絶対位置が判っている基準局からの衛星電波情報をインターネット経由で受信して、受信電波の補正を行って、サブミリ精度で基準局との3次元距離を算出することで現在位置を±3cm(3σ)で測位出来る技術です。
日本国内での基準局は、DOCOMO、ソフトバンク各社の携帯基地局3千局以上でRTK基準局を設置してあるので、日本中どの地点でも±3cmで現在位置が得られる相対測位環境が整ってます。ですので、今更、精度が悪い単独測位をお金をかけて、体験するのは、時代遅れの無駄な行為です。単独測位が必要なのは、基準局50km以内にない地域ですので、国内でなく外洋とか上空で航空機、船舶には必須の方式ですが、人口カバー率の高い地域で測位するなら、相対測位で当たり前に3cm精度がえられるので、単独測位で精度を追求する意味はないです。単独測位で搬送波測定する技術で、CLASという技術がありますが、10-20cm精度まででますが、
RTKに対して、決定的な違いが単独測位でしかもみちびき専用技術なので、世界中で使えないガラパゴス方式ですので、世界に普及できる規格ではないので、量産化をする企業が居ないので、売れない技術として終わると思います。
コード測位 | 搬送波測位 | |
単独測位の方式 | 一般のGPS L1C/Aコード測位 (3-5m精度) |
普及してない方式 PPP,PPP-RTK(みちびきCLAS)(10-20cm精度) |
相対測位の方式 | 普及してない方式 DGPS、SBAS (10cm~1m精度) |
高精度測位で最も普及している RTK (3cm精度) |
※2023年5月追記
M9Nの計測は、速度が20kmh以上でないと速度ベクトルのノイズが多くて精度が劣ります。試験治具が手回しの回転治具なので高速度にはならないので高速回転機構作れるようになるまで中断してます。自動車など高速な移動体だと精度良いのですが、低速な人間の動作などでは精度が落ちます。2023年からは、IMU BNO055を使ってRTKの補間にトライしてます.BNO055は、フィルター処理内蔵なので磁気センサのYAW角がそれなりの精度ででてきますが、RTK Heading角には及びません、定期的にRTK heading角でリセットすることでBNOのYAW角が使えるか検証実験中です。補間なので、何等かの位置パラメータがあれば組み合わせて推定できればいいので、M9Nの速度ベクトル以外でもIMUの角度、Linear加速度などをヒントにして補間にトライしてます。精度は、RTKのタイミングでリセットするという手法が基本でリセット間でのIMU精度がどの程度でるかで決まります。単独測位で、搬送波計測する技術としてCLASがあって、10cm程度
※2022年6月22日追記 速度精度(sAcc)とヘッディング精度(headAcc)をF9PとM9Nで比較しました。
位置精度では、RTKのF9Pが数cmで、M9は、1-2mと完全に負けてますが、いざ、速度ベクトルとなると
F9Pの精度の2倍程度の精度が出てます。F9P8Hz、M9N25Hzですので、速度ベクトルとしては優秀な精度だと
思います。MEMS IMUでは、ここまで出ないです。
■速度精度がいいので、積分して距離をだしてF9Pの距離と比較したら数cmレベルまで得られそうです。
これから、M9Nの評価を始めるにあたって、評価システムを
作っていく過程をその1~その4くらいまで備忘録していきます。
IMUの代わりになるかと、F9Pの補間ができるかを確認する評価システムです。自撮り棒に3種類とりつけます。
■M9Nネタの予定(6月いっぱいでシステム制作完了したいです)
その1 M9N仕様とSBASの学習と軽く動作させてみた感触。 本記事
その2 M9N+IMU+F9P接続とSDログとBlueTooth無線出力システム の予定
その3 M9N評価システム試運転(M9NとF9PとIMU速度ベクトル比較) の予定
その4 DR(DeadReckoning)システムの検討 の予定
●M9Nの仕様書類をダウンロード(衝動買いしたのでろくに読んでません)
製品ページ: https://www.u-blox.com/en/product/neo-m9n-module
A:製品の位置づけ
Product Summary: https://content.u-blox.com/sites/default/files/NEO-M9N_ProductSummary_UBX-19027207.pdf
B:製品仕様書
M9N data sheet: https://content.u-blox.com/sites/default/files/NEO-M9N-00B_DataSheet_UBX-19014285.pdf
C:インテグレーションマニュアル 機能説明
Integration Manual: https://content.u-blox.com/sites/default/files/NEO-M9N_Integrationmanual_UBX-19014286.pdf
D:インターフェース 記述マニュアル 出力コードの内容説明
Interface Description: https://content.u-blox.com/sites/default/files/u-blox-M9-SPG-4.04_InterfaceDescription_UBX-21022436.pdf
E:Ublox アンテナ解説書
https://content.u-blox.com/sites/default/files/products/documents/GNSS-Antennas_AppNote_%28UBX-15030289%29.pdf
●SBAS
①ProductSummaryでは、SBAS精度を謳ってます。
SBAS 1.5m SBAS無2m SBASは自動でかかっているので、1m前後が普通に出て見晴らしがよいと50cmまでいきます。SBAS無にセットしようとしましたが、自動で戻ってしまいました。SBASで50cm-1.5mになる感じです。
●SBAS調査
ENRI(電子航法研究所)のプレゼン資料が判り易いです。
https://www.enri.go.jp/~sakai/pub/demae_070723_sbas.ppt
補強情報=衛星故障情報、軌道情報、衛星クロック誤差、電離層遅延量誤差(緯度経度5度毎)
補強情報を地上の監視局から統制局へ集めて補強情報を衛星へ送って、衛星からユーザーへ放送する仕組み
=>RTKは、数km圏内の補正情報だが、SBASは、5度(550km)メッシュの大雑把な電離層情報であるので、余り効果はない。
●最近は、2周波SBASというのもあるらしい https://qbic-gnss.org/wp-content/uploads/2021/02/21_wg3_06-4.pdf
●何故RTKでなく、単独測位を研究されているかは、ENRIの役割は、航空機の安全の研究なので、RTKの基準局が全世界の空をカバーしているわけではないので、単独測位で精度のでる信頼性のある技術を研究開発する必要があるのだと理解しました。
●M9N触り初めのTIPS
ーーーーーーーーーーーーー文鎮化修理メモーーーーーーーーーーーーーーーーー
※2022年6月18日 デバッグ中にM9Nファーム壊れました
=>UcenterからUSB経由で書き込みが効かなくなりました。
修理の仕方は、F9P SimpleRTK2B lite と同じでした。ただし、USBシリアル基板を用意してUART1に接続しないとSafe Bootできないのです。ファームが書き終わるまでSafeBootでずっと、GNDにショートさせておかないといけません、ファームは、M9N専用ではなく、ublox第九世代共通のファームです。ここにあります。
https://content.u-blox.com/sites/default/files/JU_EXT_404.907640e53126add7de4708d754b575ef.bin?_ga=2.234670166.912783100.1655655179-306519847.1655655178
これをUSBシリアル基板経由で9600bpsで書き込むので20分くらいかかりました。
ファーム書き終わると、デフォルトに戻るので、ようやく、M9NのUSBポートが生き返りました。
=>回復したかどうかの確認は、窓際に置いて20-30分放置しておくと、ようやくうごきだしました。
フラッシュが空っぽなので、情報を収集して動作するまで相当時間がかかります。屋外で見晴らしの良い場所
ならもっと早く動作しますが、文鎮化修理は部屋で行うので、窓際で確認する機会が多いので、20分待つか
屋外に持ち出すかのどちらかしないと、回復したか判りません。
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
TIPS0:Ucenterでメッセージの選択する場合、F9PならメッセージViewで右クリックenableとかにセットしてSENDすればメッセージ登録できるのですが、M9Nは融通が効かなくて正規のメッセージ指定のやり方(NAV-CFG-MESで細かなコンボボックスでチェックをポート毎にいれていく面倒な操作が必要です。F9Pに比べて明らかに不便なダウングレード品です。
TIPS1:25Hz設定は、NAV-CFG-RATEで行うが、100msec以下になるとピンクコーションが出て入力できないかと
思ったが、40msecと入力するとSENDできたので、25Hzになりました。ただし、25Hzで出てくるのは
NAV-PVTだけです。NAV-PVTがあれば、位置と速度ベクトルが判るので大抵の用途はこれでOKです。
TIPS2:電源オンで赤LEDが点灯して、しばらくすると青LEDが点滅します。
青LEDはTimePulseですが、TimePulseが出る前からitowは出てます。
TIPS3:FIXは、3DFIXでFIXなので、数十秒ででます。SBASが効く場合は、FIX DGNSSと出てきますが、これは即は出てきません。時々消えたりしますので、安定して出てくるのかこれから評価してみます。FIXは、PVTのflagsで見ますが、3DFix=1、DGNSS Fix=3となります。 Carrier Phase Solution は、RTKでないと出ません。
TIPS4:SparkFunボードについているQwiikコネクタはI2Cしか対応してませんが、1m以上伸ばすと、クロックにノイズが入って使えなくなったり、配線がノイズをかぶって不通になることがあったので、私はUARTで使ってます。
TIPS5:SparkFun Ublox libraryがあるのですが、サンプルプログラムが大量にあるのですが、単機能すぎて、
とてもシステム構成に使えないお試し用です。単純なことをするのに、大げさなコードになっていて
自分で作ったほうが早いです。 https://github.com/sparkfun/SparkFun_u-blox_SARA-R5_Arduino_Library
TIPS6:F9Pより全体的に遅いクロックで動いている感じがします。データ出力周期のばらつきも大きいです。
TIPS7:チップアンテナ版だとデバッグを窓際で行わないといけません、南面が開けた窓際室内でも、hacc90cmくらいがでますので、システムのデバッグ作業ができます。RTKより、電波受信精度うるさくありあません。
アンテナ版なら、外部アンテナをだして、デバッグできるので、窓際でなくて済みますので、ご自分のデバッグ
作業の場所で、アンテナ版かチップアンテナ版か選択することも大事です。
TIPS8:チップアンテナでもPDOP1.5~1.9になります。RTKだと1.3前後ですが、チップだと1.3は出ません。
●試し測定
ダッシュボードに車載してM9NとF9Pで速度差velNとvelEをみてみました。
まだM9Nの設定誤差の見方できてないので、データにはなりません。
少しの速度差が方向の大きな差になるので、方向がどこまでばらつくのかがもんだいです。
感想としては、F9Pは、統計処理済みの滑らかな出出力でM9Nは、ノイズが多いガタガタした波形でした。