SSブログ

「トランジスタ技術」2019年2月号 執筆記事の補足 [GNSS]

少し前になりますが、CQ出版社の雑誌「トランジスタ技術」2019年2月号で、恒例のGPS特集が組まれました。
みちびき×GPS! 世界最強1cmナビ体験DVD
cover_2019-02.jpg
実は、このGPS特集の中で、記事をひとつ執筆させていただいています。
82~87ページ Appendix
サブメータ補強サービス信号「L1S」を受信! Arduino ARMマイコン「SPRESENSE」

SONY製のコンピュータボード「SPRESENSE」とそのサンプルプログラムを使ってGNSS測位を行う記事になりますが、その後のArduinoライブラリの更新によってサンプルプログラムに変更が生じたため、記事の内容に実情と少し異なる部分が出てきました。ここでは、その差異の部分について、以下のとおり補足説明させていただきます。

--------------------
トランジスタ技術 2019年2月号 84~85ページ
「ステップ4:サンプル・スケッチの改造」の内容変更について

記事の中で説明しているサンプル・スケッチ「gnss.ino」は,記事執筆時点(2018年11月)でのSPRESENSE Arduino Library最新版(v1.1.0)に同梱されているものを使用しています.
その後,上記ライブラリが数回更新され,2019年1月16日にv1.1.3がリリースされました.
(2019年7月4日時点での最新版はv1.3.0)
その際に上記サンプル・スケッチ「gnss.ino」にも修正が加えられ,内部の構造が若干変更されたために,スケッチの改造についても,記事とは異なる方法を取る必要があります.

(1) 受信衛星システムの選択
v1.1.2以前のサンプル・スケッチでは,GPSは常に受信し,その他の衛星システム(GLONASS/QZSS/SBAS)については,関数Gnss.select()にて個別に追加する方式を取っていました.記事中のリスト1は,QZSS(L1C/A),QZSS(L1S)およびGLONASSを追加する例になっています。
新しいV1.1.3以降でのスケッチでは,この部分の構造が変更され,下記引用のように,使用する衛星システムの7通りの組み合わせがあらかじめ列挙型変数に割り当てられる方式になりました.
---------- gnss.ino (v1.1.3以降) 41~56行目 引用 ----------
/**
 * @enum ParamSat
 * @brief Satellite system
 */
enum ParamSat {
  eSatGps,            /**< GPS                     World wide coverage  */
  eSatGlonass,        /**< GLONASS                 World wide coverage  */
  eSatGpsSbas,        /**< GPS+SBAS                North America        */
  eSatGpsGlonass,     /**< GPS+Glonass             World wide coverage  */
  eSatGpsQz1c,        /**< GPS+QZSS_L1CA           East Asia & Oceania  */
  eSatGpsGlonassQz1c, /**< GPS+Glonass+QZSS_L1CA   East Asia & Oceania  */
  eSatGpsQz1cQz1S,    /**< GPS+QZSS_L1CA+QZSS_L1S  Japan                */
};

/* Set this parameter depending on your current region. */
static enum ParamSat satType =  eSatGps;

--------------------- 引用終わり ---------------------

上記7通りの組み合わせの中から1つ選択し,その変数を56行目に設定します.上記ではGPSのみ(eSatGps)ですが,例えば,GPS+QZSS(L1C/A)+QZSS(L1S)を受信する場合には次のように記述します.

static enum ParamSat satType =  eSatGpsQz1cQz1S;


(参考)
上記受信衛星システムの組み合わせを使用した場合のそれぞれの測位誤差(参考値)が,SPRESENSE公式サポート・サイト(下記URL)に記載されています.
Select positioning and augmentation satellite systems
各衛星組合せでの測位誤差(95%)
GPS: <5m
GPS + QZSS(L1C/A): <5m
GPS + GLONASS: 7.8m
GPS + QZSS(L1C/A) + QZSS(L1S): <2m

(2) 衛星の受信状況を1秒おきに出力させる
こちらの改造方法については,変更がありません.記事中のリスト2のとおりに修正します.
ただし,該当箇所の行番号が変わりましたので,85ページの記載は以下のように読み替えてください.
288行目 ⇒ 347行目
291行目 ⇒ 350行目

以上です.
nice!(0)  コメント(0) 

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。