LoginSignup
1
2

More than 1 year has passed since last update.

GNSSモジュールを使って、地図上トラッキングに挑戦!・GUI編

Last updated at Posted at 2020-02-04

STマイクロエレクトロニクスの汎用32bitマイコン開発ボード「NUCLEO-F401RE」と、GNSS*測位ICを搭載した機能拡張ボード「X-NUCLEO-GNSS1A1」を使って、地図上のトラッキングを試してみます(*Global Navigation Satellite System : 全地球航法衛星システム)。拡張ボードに搭載されている車載用GNSS測位IC は「Teseo III」と呼ばれ、STのGNSSモジュール「Teseo-LIV3F」 として実装されています。今回は、簡単で細かい設定ができるGUIツールで操作し、マップ上で自分の位置をトラッキング・ログするところまでやってみます。

(ターミナルモニタ編はこちら)

1. まずは、ハードウェアを準備

NUCLEO-F401RE とX-NUCLEO-GNSS1A1を接続。NUCLEO-F401REは、GUIツール内であらかじめ対象アプリケーションが用意されています。また、X-NUCLEO-GNSS1A1に付属のアンテナは動作確認時に接続します(ここでは未接続のままでOK)。
NUCLEO-F401RE
X-NUCLEO-GNSS1A1
1_IMG_20190513_173400.jpg

2. 次にソフトウェアの準備

STM32CubeProgrammerのインストール

(既にインストール済みであればスキップしてください)
初めてパソコンでSTM32NUCLEOボードを使用する場合、STM32CubeProgrammer(旧ツール:ST Link Utility)をインストールしてCOMポート・ドライバなどを入れます(この記事ではSTM32CubeProgrammerは使用しませんが、ドライバなどが必要になります)。

このツールはSTM32のボード上にファームウェア・プログラムを書き込む際に必要です。ダウンロード・ファイルを解凍した後は、実行ファイルを起動して案内にしたがってインストールしてください。すでにSTM32CubeProgrammerをインストール済みの場合はこの作業は不要です。
STM32CubeProgrammer
STM32CubeProg_STweb.png

GUIツールの入手(TESEO-SUITE)

こちらのページからツールのインストール・ファイルを入手し、パソコンにインストールします。
TESEO-SUITE
3_Teseo-suite_download.JPG

3. TESEO-SUITEを起動する

STM32 NUCLEOへファームウェアを書き込み

TESEO-SUITEのインストールが終了したら、STM32 Nucleoボード(+X-NUCLEO-GNSS1)をパソコンにUSB接続した状態でTESEO-SUITEを起動します。
Teseo_icon.JPG
NUCLEO-F4O1REにはまだファームウェアが入ってないので、Teseo-LIV3Fモジュールとパソコン間をUART接続させるため、VirtualCOMportとして動作するファームウェアを次の操作で書き込みます(何か別のファームウェアが入っている場合もここの操作で書き込めます)。
メニューバーの「ツール」より、Tools>X-NUCLEO-GNSS1を選択。
4_0_teseo-suite_tools_x-nucleo.jpg

ポップアップ・ウインドウ内の「Update my STM32-NUCLEO board for X-NUCLEO-GNSS」をクリックします。
4_1_teseo-suite_x-nucleo.jpg

ファームウェアの選択画面にてSTM32_Nucleo64-xxxxx_UARTBridge.binを選択した状態でUploadの箇所のSTM32 Nucleoボードの画像をクリックします(STM32_Nucleo64-xxxxx_I2CBridge.binも選択可。ここでのUART/I2CはGNSSモジュール-STM32間のインタフェースの選択です。どちらでも動作可能です)。
4_2_teseo-suite_x-nucleo_FWselect.jpg
これで書き込みが終わりました。ここでTESEO-SUITEを一度閉じて終了します。

4. 動作確認

ボードをパソコンにUSB接続し、アンテナも接続した状態でTESEO-SUITEを再起動します。正常に動作している場合、TESEO-SUITEは自動認識してSignal LevelウインドウとSky Viewウインドウが表示されます。この2つ以外にも各種情報ウインドウはメニューバー下のアイコンにより表示・非表示できます。

Signal Level:現在補足している衛星の情報を表示。
Sky View:自分を中心として、どの位置にどの衛星がいるのかを天球マップ上に表示。
5_0_teseo-suite_main.JPG
衛星シグナルレベル5_1_teseo-suite_signal.JPG
天球衛星マップ5_2_teseo-suite_Skyview.JPG

地図上で自分の位置を確認・ログ記録

メニューバー下の「Open Map」アイコンをクリックすると、地図ウインドウが表示されます。移動しながらログを記録したい場合、「Start/Stop Recorder Control Port」アイコンを使用します。クリックすると記録がはじまり、もう一度クリックすると記録を停止します。
6_0_teseo-suite_toolbar_map_log.JPG

6_1_map_.jpg

ログファイルはデフォルトでC:\Users(use name)\Documents\ST_Teseo_Suite\Logsにセーブされます。保管場所を変更したい場合メニューバーの「ファイル」から、File>Preferencesを選択します。Preferencesウインドウ内の「NMEA/BINARY/DEBUG log path」で設定が可能です。
6_2_teseo-suite_preference.JPG

地図上でマウスを右クリックし、メニューから「View Settings」を選択すると、地図の右側に設定枠が表示されます。移動した軌跡を表示させたい場合、「History」にチェックしておきます。
6_3_map_setting.jpg
以上のステップで、地図上でのトレースを確認、NMEAログとして記録できます。
セーブしたログファイルはplayerウインドウで再生できます。再生時にマップ・ウインドウを開いておけば軌跡の様子をチェックできます。
7_0_teseo-suite_toolbar_play_.jpg

ビル周辺を歩いてみる

都心のビルの間を歩いてみた時の軌跡です。ここではGPS、GLONASS、QZSSをオンにしてデータを取りました。
7_1_teseo-suite_toolbar_mapview_log.jpg

NMEAメッセージを見てみる

メニューバー下の「View Monitor」アイコンをクリックするとNMEAメッセージを直接モニタできます。デコードされた情報が表示され、緯度経度データなどを直接モニタすることもできます。NMEAコマンドをscriptで書いて送信することも可能です。右側のフィルタ設定画面では、表示させるメッセージをフィルタリングできます。
8_0_teseo-suite_toolbar_viewmonitor.jpg
8_1_teseo-suite_nmea_.jpg

NMEA Commandウインドウからコマンド送信することも可能です。Send commandsアイコンをクリックします。
$PSTMDUMPALMANACコマンドを送信し(メモリ内のアルマナックデータの読み出し)、
$PSTMALMANACメッセージを受信している例
8_2_teseo-suite_nmeacommand_.jpg
8_3_teseo-suite_nmeacommand_.jpg

最後に

いかがでしたか。次回はGNSSモジュール内設定を変更する方法について記載します。
GNSSモジュールを使って、地図上トラッキングに挑戦!・GUI編 (設定変更 1)
GNSSモジュールを使って、地図上トラッキングに挑戦!・GUI編 (設定変更 2)

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2