■ GPS受信モジュール AE-GYSFDMAXBのデータを表示する ■


 これまでGPSユニットについては、カーナビやGPSロガーなどの製品も多く出ており、自前で製作して使用する用途が無かったので、通販や製作記事を眺めているだけでした。
 秋月電子の、太陽誘電製モジュールGYSFDMAXBを搭載したGPS受信機キット 1PPS出力付き「みちびき」対応 AE-GYSFDMAXB(販売終了)の、「正確な1PPS(1秒)信号を出力します。」を見て興味をそそられ、価格も手頃だったので初めてGPSモジュールを試してみる事にしました。

 このモジュールは、初期状態(工場出荷状態)のボードに5V電源を加えるだけで、1秒間隔で測位したデータをどんどん送って来てくれます。
 基本の設定値でよければ、コマンドを送るような操作は必要ありません。
 衛星を4個以上見つけると、専用の1PPS出力から精度±10ns (10×10-9秒)の1Hz(1秒)信号が出てきます。
 この1Hz信号を使って、周波数カウンターの較正を行うのが一番の目的です。



パソコンとの接続テスト
GPSモジュール基板の裏面に、ボタン電池のホルダーを取り付けます。
ボタン電池を付けるとブレッドボードには刺さりにくくなりますので注意して下さい。
ボタン電池のバックアップにより、2度目の起動から測位が速くなります。
まずは、GPSモジュールとパソコンを接続し、専用の表示ソフトで計測データを見てみます。

ブレッドボードを使い、[USB-シリアル変換モジュール]と並べて差し込むだけで設置完了。
 
このモジュール同士は、ピンが並ぶように設計されています。
電源もUSBから供給されますから、別電源は不要です。
秋月電子のリンクにある「Mini GPS
 
COM番号を選択して、ボーレートを9600にします。
簡易の表示ソフトなので、使い勝手がよくありません。
[Ctrl] + [ALT] + [S] キーを同時に押すなど、特殊な操作をしないと、細かい設定やデータが見られないのが不便です。
 
また、「MiniGPS_V1.7.1」の時点で、高度:(Altitude)が「地球楕円体」から「GPSアンテナ」までの高さの「楕円体高」を表示しているので、現地の高度と大きな相違が出ています。
(おそらく、プログラムのミスだと思われます)
LOCOSYS社製
GPSFox V:0.79b」「GPSFox V:0.79w73_C
 
COM番号を選択して、ボーレートを9600にします。
上記の「Mini GPS」よりも遥かに使いやすいソフトです。
受信位置からJST(日本標準時)の変換(9時間プラス)も行ってくれます。
こちらの高度のデータは、「海抜高度」を表示しているので、GPS特有の測定誤差は大きいですが、15分ほど測定を続けると現地高度に近い値が出ています。
 
室内の受信でもこれだけの衛星が見つかるほど、感度のいいモジュールです。
「みちびき」もいます。
 1号機 : 衛星番号193番
 2号機 : 衛星番号194番
 4号機 : 衛星番号195番
 3号機 : 衛星番号199番 (このモジュールでは受信不可
1PPS (1Hz) 出力

電源を入れてから衛星を4個以上測位すると、専用の1PPS出力から精度±10ns (10×10-9秒)の1Hz(1秒)信号が出てきます。
 
小数点以下の周波数まで計れるレシプロ周波数カウンターでこの信号を測定すれば、カウンター内の基準となる水晶発振器を較正する事ができます。
当ページの「精度アップ AVR レシプロカル周波数カウンター[3]」の場合は、30分以上通電した後にモジュールの1PPS出力を測定し、カウンターの表示が1Hz(1sec)に近づくように、12.8MHzクリスタル発振モジュールのトリマー・コンデンサーを回して調整します。



AVRトレーニング・ボードでスタンドアローン表示
パソコンを使わずに、単独でGPSのデータを表示します。
当ページに掲載のAVR & BASCOM-AVR トレーニング・ボードを使用ます。
もちろん、各種のAVRを選択することもできます。
 
トレーニング・ボードの5V電源と、AVR内蔵のUSARTを使用して通信を行います。
GPSモジュール側は3.3V電源で動作しているため、トレーニング・ボードからのTXD信号は、疑似オープンドレインで電圧レベル変換を行っています。

回 路 図 PDF版 Atb_AE-GYSFDMAXB_Cir.pdf

 
プログラム
 
・GPSモジュールに5V電源が入ると、衛星の測位が開始されます。
・GPSモジュールの初期値(工場出荷状態)では、1秒間隔で測位したデータがASCII文字列でシリアル送信されてきますので、単純に受信を繰り返します。
・通信の設定は、9,600ボー、パリティー無し、データ・ビット 8、ストップビット 1。
・シリアルデータをAVR内蔵のUSARTの割り込みで受信します。
・行の末尾にはチェックサムが添えられているので、受信内容を計算してエラーのチェックを行います。
・センテンスという行単位で、時刻、位置、高度、対地移動方向、対地移動速度、衛星の測位状態などの情報が得られます。
・受信データ例。
 $GPGGA,094848.000,35xx.xxxx,N,136xx.xxxx,E,1,9,0.96,8.3,M,36.4,M,,*56
 $GPGLL,35xx.xxxx,N,136xx.xxxx,E,094848.000,A,A*5F
 $GPGSA,A,3,01,11,16,08,07,28,27,30,10,,,,1.25,0.96,0.81*06
 $GPGSV,4,1,13,11,77,284,29,01,66,220,23,08,54,044,34,07,40,245,28*7F
 $GPGSV,4,2,13,193,37,167,16,30,36,284,23,22,28,150,,27,27,071,20*46
 $GPGSV,4,3,13,28,18,316,19,16,16,130,17,10,14,047,34,03,10,173,*70
 $GPGSV,4,4,13,40,05,259,*44
 $GPRMC,094848.000,A,35xx.xxxx,N,136xx.xxxx,E,0.23,170.70,020516,,,A*68
 $GPVTG,170.70,T,,M,0.23,N,0.42,K,A*3B
 $GPZDA,094848.000,02,05,2016,,*5D
 
・センテンス文字列の内容に付いては、「NMEA 0183プロトコル仕様書」や「NMEA-0183」でネット検索すると、詳しい解説のページを見つける事ができます。
・受信したセンテンス行ごとにデータを解析してLCDに表示します。
・トレーニング・ボードのスイッチにより、表示項目が変更できます。(下記の操作方法を参照)
・時刻表示については、GPSが正確な時刻を受信してもシリアル送信に時間がかかるため、LCDに秒が表示されるときには数百msの遅れが生じます。
 
プログラム  テキスト形式 ソースファイル  ATB_AE-GYSFDMAXB_001.TXT
 BASCOM用 ソースファイル
 (BASCOM-AVR(製品版)が必要です)
 ATB_AE-GYSFDMAXB_001.bas
 インテルHEX形式 ファイル  ATB_AE-GYSFDMAXB_001.HEX
 
注意! 著作権は放棄しておりませんので、販売や配布目的での使用は絶対にしないで下さい。
       (記事の無断転載を除き、個人での使用は可能です。 改変、自作品の掲載、展示、リンクもご自由に。)

 
操作方法
 
・[SW4]を押したまま電源を入れる、または[リセット]ボタンを押すと、GPSモジュールを初期値(工場出荷状態)に戻します。
[SW1]と[SW2]はTXDとRXDにつながっていますから、押さないで下さい。



 GPSの測位情報
 [*]: 定期間隔(初期値は1秒)のデータを受信完了時に
    マークを表示します。
 上段の2文字目は、測位している衛星の数。
 下段の1,2文字目は、2D:2次元モード , 3D:3次元モード。
              [--]の場合は、未測位状態。
 下段の3文字目は、測位の品質、[-]:未測位。
             [S]:単独測位 - 誤差10m程度。
             [D]:DGPS - 誤差2m程度。

[SW3]を押すと、表示モードが変わります。
 時刻表示。 JST (日本標準時)
  上段: 年/月/日 , 曜日。
  下段: 時:分:秒。
 位置表示。
  上段: 緯度。
  下段: 経度。
 方向・速度・高度 表示。
  上段: 真北に対する進行方向 / 高度。
  下段: 対地速度。

[SW4]を押すと、表示項目が変わります。
 時刻表示 24時間制 表示
 時刻表示 12時間制 表示

 位置表示。
  上段: 緯度。 [度°分’] 表示
  下段: 経度。 [度°分’] 表示
 位置表示。
  上段: 緯度。 [度°分’ 秒”] 表示
  下段: 経度。 [度°分’ 秒”] 表示
 位置表示。
  上段: 緯度。 [度°(10進)] 表示
  下段: 経度。 [度°(10進)] 表示

 方向(真北が0°で時計回りの角度)・速度 表示。
  上段: 真北に対する進行方向。
  下段: 対地速度 (km/h)。
 方向(真北が0°で時計回りの角度)・速度 表示。
  上段: 真北に対する進行方向。
  下段: 対地速度 (ノット)。
 高度・速度 表示。
  上段: 海抜高度。
  下段: 速度 (km/h)。







GPS AE-GYSFDMAXB 高精度1Hz出力 & 周波数カウンターの製作

この製作では、GPSから送られてくる位置などの各種情報をLCDに表示する機能に加えて、同じくGPSモジュールから出力される正確な1Hz(1秒)信号を用いた周波数カウンターを搭載します。




   電子工作の部屋 Top へ 前のページへ戻る