自作GPSラップタイマーの開発&作成のNO3です。
なぜ既製品やスマホアプリとして存在するGPSラップタイマー
を使わずに、わざわざ自作するのかと言えば、
ラップタイム情報などをピットのPCへ送信したい
という要求を満たすためです。
この通信機能を搭載しているものが見つからないので、
自前開発&作成しよう!!ということです。
このへんは、過去記事を参照下さい。
今回は、
・M5Stack FIRE
・M5Stack用GPSモジュールV2
を入手したので、今後のプログラム開発工程について
考えてみます。
STEP1.ストップウォッチ機能実装
最初に、M5Stack FIRE(以下M5)内で機能するものを
実装します。
実装しますというよりは、単純にネット上にシェアされている
プログラムを実際にM5で動作することを確認する、
という内容です。
(貴重な情報をシェアしてくださっている皆さん、本当に
ありがとうございます。感謝!!です)
この工程で、M5で何かしらのプログラムを動作させるまで
の方法を習得することを目標とします。
プログラムの開発環境としては、Arduino用のものを
使うこととしており、それをM5用として使うための
準備というのも含めて本工程で実践します。
STEP2.GPS位置情報入力機能実装
GPSセンサをM5に接続し、GPSから位置情報を入力し、
それをM5画面に表示させます。
これもネット上でシェアされているものをありがたく
使わせていただきます。
本当にありがたいですね。
STEP3.WiFi経由でファイル保存機能実装
M5にはMicroSDカードスロットがあります。
これに保存すれば、走行後にデータを解析することは
できるでしょう。
が、今回は走行中にピットのPCでデータを確認する
ことができるようにしたいというのがあります。
通信機能が必要であり、現時点ではWiFi経由で
ネット上のサーバーにデータを保存するという
ことを考えています。
何かしらの都合でWiFiがNGとなれば、モバイルデータ
通信を使うということになると考えています。
その場合は、M5単体では不可能なので、何かしら
手段を考えます。
まずは、建物内のWiFi環境でWiFi経由でデータを
保存できることを確認します。
そして、それをPCで読み込む、と。
その後にサーキットという環境でWiFi経由でデータを
保存するということの確認です。
現時点のイメージとしては、屋外用のWiFi中継器を
使ってピット前のストレート走行中にWiFi経由で
データを保存するという方式です。
一旦、WiFi通信が途絶(という表現が適切かわかりませんが)
した状態から、通信可能という状態に回復したら
すぐにファイルを保存する、ということをWiFi通信が
可能な短時間(10秒くらいというイメージ)で実行しないと
いけません。
ストレートは車速が高いので、時間をかせぐために
車速が落ちているコーナー区間で通信するという
ことになることもサブシナリオとして考えています。
そうならないようにするために、通信可能距離が大きく
ほどほどのコストで販売されているものを見つけないと
いけません。
モバイルデータ通信を使うというなら、スマホの方が
M5より敷居が低いでしょうね。
STEP4.スプリットタイム計測機能実装
サーキットにおいてライン上を通過した時に
ストップウォッチで言う所のスプリットボタンを
押した状態を再現するプログラムを実装します。
これが今回の開発のヤマ場になるであろうと
想定しています。
はい、戦々恐々というやつです(笑)
磁石によって検知するという方式もあり、そちらの
方がタイム計測においては精度が高いのですが、
今のところタイム計測の精度はそれほど高い
要求水準では無いということもあり、GPSセンサを
使うことにしています。
将来的に、精度を求めて磁力検知方式にすることも
視野には入れています。
ラインをクロスしたという判定ロジックは、
直前(または数サンプリング前)の位置情報と
現在の位置情報を比較し、ラップタイム計測用の
ラインをクロスしたのかを判断するということになります。
GPSの位置情報から描いたラインが計測用ラインと
クロスしたらスプリットタイム、というのを想定
していますが、その「クロスした」という判定が
連続して発生しないようなロジックとするのか、
連続発生してもそれを除外するロジックとするのか・・・。
こういうのを考えるのは嫌いでは無いのですが、
ロジック&プログラム作成とデバッグに時間が必要ですよね~。
ネット上でシェアしてくださっているものを必死こいて(笑)
検索しているところです・・・。
今後の予定
通信機能までをしっかり実装した状態で臨みたい本番の
レースは22年の夏というイメージをしていたのですが、
22年早々に使いたいな~というレースがあるということ
なので、それに間に合わせるべく進行させるように
考えています。
22年早々のレースで、少なくともピットのPCでデータを
確認できるようにしたい、というのが現時点でのイメージ。
PCで確認するための便利ソフトは、またいずれ(笑)という
ことで・・・。
まあ、このへんは未だ打ち合わせをしていないので未定です。
最後までお読みいただき、ありがとうございました。