Amazon等で¥2000程度で比較的安価にUSB‐GPSレシーバーが入手できるので、自動車のサーキット走行分析に活用するべく、NMEAフォーマットのログの取得方法について共有します。
NMEAフォーマットのログをもとに筑波サーキットのラップタイムを計測するスクリプトもpythonで作成してみたので、ご興味あれば、
https://github.com/qoosen/MakeKmlGpsLog
も覗いてみてください。
1.USB-GPSレシーバー設定ソフトのダウンロードとインストール
ubloxのホームページから、”u-center”をダウンロードしてインストール。
https://www.u-blox.com/en/product/u-center
この時、u-center2ではなく"u-center,v22.07"('23/2時点)の方を選択すること。
2.USB-GPSレシーバーのデバイス設定
デバイスマネージャーを開きポート(COMとLPT)を確認したのち、USB-GPSレシーバーをPCにUSB接続する。
デバイス認識されたのち増えたデバイスを確認する(この場合COM6)。
3.GPSレシーバーをu-centerに接続する
u-centerを開く。うまくすると自動的に接続されるが、(下記、赤矢印部が緑になる。)
うまく接続できない場合は、[Receiver] - [Connection] から、2.で確認したポートを選択する。(この場合はCOM6)
4.GPSレシーバーの設定
メニューバー [View] ‐ [Configration View]で設定ウィンドウを開く。
4‐1.ポート設定
転送速度を設定する。4‐2.受信周波数設定で10HzとするとBoudrate:9600では間に合わなくなるため
①PRT(ports)を選択
②Target : 1 ‐ UART1 を選択
③Protcol out : 1 ‐ NMEA を選択
④Boudrate : 115200 を選択
⑤Sendを押下して送信する(、、、忘れがち)
さらに、USBからNMEAだけを出力するようにする。
①PRT(ports) を選択、、、すでに選択されてますよね。
②Target : 3 ‐ USB を選択
③Protcol out : 1 ‐ NMEAを選択
④Sendを押下して送信する(、、、忘れがち)
4-2.受信周波数設定
デフォルトでは1Hz(1000ms/回)だと、サーキット走行用途では遅すぎるので10Hz(100ms/回)とする。
①RATE(Rates)を選択
②100[ms]を入力
③Sendを押下して送信する(、、、忘れがち)
4-3.設定の保存
4-1. ~ 4-2.の内容をUSB-GPSレシーバーに保存するのだが、なぜか私のレシーバは保存ができないので、毎回 4-1. ~ 4-2.の内容を繰り返すことになる。
①CFG(Configration)を選択
②Save current configrationを選択
③0‐EBR ⁺ 1‐FLASHを選択 もし、1つしか選択されていない場合は"Shift"+左クリックで2つ選択できる。
④Sendを押下して送信する(、、、忘れがち)
これで、サーキットにおける、NMEAフォーマットログ取得の準備は完了です。
5.ログの取得
ログの取得方法には、主に下記2つの方法がある。
a.そのままu-centerを使う
b.ターミナルソフト(TeraTerm等)を使う
私は、GPSデータ以外にもUSBを通じてGセンサーやCANデータの取得しているため、軽量なb.の方法を使用しているが、ここでは簡単なa.の方法を紹介する。
①を押下すると、ログファイルをどこにどんな名前で保存するかのウィンドウが表示されるので、適当な名前を付けてログの取得を開始する。
~サーキットを走行する~
②を押下すると、ログファイルの記録を終了する。
以上、Enjoy your driving by qoosen 2023/05/08