ラップタイマーあれこれ その5 スマホ+外部GPS機器

前回のポストで、スマホ単体でも十分機能しますということについて書きましたが、今回はスマホ単体での課題「更新頻度1Hz」を解決するための外部GPS連動について。

繰り返しになりますが、スマホ単体だとGPS更新頻度が1Hzのため、軌跡やラップタイムが「1秒」という精度でしか出ません。グラフもかくかくしてます。これを解決するために、外部GPSを導入して、5Hzとか10Hzとかで更新出来るようにします。

例えばこういうGPSが一般的に使われていると思います。

  • BizStation DG-PRO1
  • Dual Electronics XGPS160
  • Qstarz BT-Q818XT
  • Qstarz BL-818GT(BLE), BL-1000GT(BLE)
  • Transystem GL-770 (BLE)

私はここ数年、GL-770と、私の知人が作ったラップタイマーアプリをiPhoneで動かして計測しています(ストアで公開すれば?と言っていますが、まだ完成度が、、、ということで非公開のままもうかれこれ数年経っちゃいました)。

(後日追記)ついに公開されました!しかも無料!!これでようやくiPhoneとGL-770を連携させてラップ記録出来ます。iPhoneユーザーの方、お試し下さい☆ GNSS Circuit Loggerと言います(追記ここまで)

(BLE)と書いているのはBluetooth Low Energyというものなのですが、分かりやすく言えば名前にBluetoothと付いてますが全く別物の通信方式と思って下さい。BLE対応機器はBLE対応アプリが必要ですのでご注意下さい。BLEはBluetooth LEとかBluetooth 4.0とかBluetooth Smart Readyと書かれる場合もあります。これに対してこれまでのBluetooth(ヘッドフォンやキーボードを無線でつなぐやつ)をBluetoothクラシックとか言う場合もあります。

ちょっと外れますが、この手のデバイスはAndroidとの相性が良く、iPhoneだと対応デバイスが少ないです。私も詳しくないので間違ってるかもしれませんが、iPhoneのBluetoothは使えるデータ形式(プロファイル)が限定されていて、10Hzに対応した速いデータ形式を使うためにはいわゆるMFi認証を取る必要があります。世の中に出回っている外部GPS機器がすべてMFi認証を取っているわけではなく、結果として利用出来るデバイスが限られます。Bluetoothの新しい規格でBLEというのもあって、BLEのみ対応している機器もありますが(GL-770がその代表格)、これだとiPhone利用も比較的敷居は低いのですが、BLEって速度が出ない通信方式のため(その代わり消費電力が少ない)、10Hz更新でなくて5Hz更新くらいがmaxとなります。さらにそもそもBLEに対応しているアプリも限定的です。特にこだわりがなければAndroidをオススメします! 中古5年落ちとかでいいので、安い中古で選んで下さい(もちろんお金に余裕あれば新品をどうぞ!) 私は中古のXperia Z5を使ってますが、今だと数千円で売ってます。

というわけで、ここからはAndroidベースで書きます。

まずAndroid単体の場合。有名なアプリはGPS LapsとかRaceChronoです(他にもいっぱいあります)。どちらも基本的な機能は入っていて、どちらもフリー! RaceChronoは有料版だと動画撮影とかデータインポートとかいろんな便利機能がありますが、単にラップ計測やGPSログ解析はフリー版で出来るので、気に入れば有料版を買ってみて下さい。それほど高くないです(2020年10月10日時点で2,120円)。

これは先日筑波を走ったときのログ、アプリはRaceChronoです(Wetで走ったのでめっちゃ遅いです)。 オレンジの軌跡やその下の水色グラフがそれですが、前回の袖ケ浦でのかくかくに比べるとこっちのほうがいかにスムーズかというのがお分かりいただけると思います。前回はGPS Lapsで今回はRaceChronoですが、アプリを変えたのでこうなったのではなく、外部GPS(更新頻度5Hz設定)で取ったのでこういう結果になったということです。これくらいの精度が出てるとより深い分析(最高速、加速のグラフ角度)が出来ると思います。1秒間隔の場合だと、1秒間の間に加速終わってブレーキ開始(185→190→175km/h)とかいう変化を確認出来ませんが、5Hz(0.2秒間隔)だとだいぶ高い精度でこのような変化を確認出来ます。もしもっと!というのであれば10Hz(0.1秒間隔)に設定すればOKです。

さて、じゃあどの外部GPS機器を選ぶかがポイントなのですが、これがなかなかのくせ者で、いろいろあってどれを買って良いかよく分からん! 海外では有名だけど日本では買えないとかいうのもいろいろあって、方式もBluetoothやらBLEやらいろいろあって、かつアプリもいっぱいあって困ります。

結論から言うと、どうやらたいていのGPS機器(BLEではなくてBlueotoothのほう)とAndroidだとだいたいいけるっぽいです。なんだこのゆるい書き方は?と我ながら思いますが(笑)、たぶんいけるっぽいです。(決まり文句ですが最終ご判断は自己責任でお願いします!)

というのもAndroidには「外部GPSを内部GPSとして見せかける」という「仮の現在地情報」という設定が可能なんです。つまりGPSを必要としているアプリに対し、外部GPSからの情報を「これは内部GPSで取りました」と見せかけて情報を受け渡し出来る機能があって、これを使えばたいていのGPSアプリで動作するようになります。(設定→開発者向けオプション→仮の現在地情報アプリを選択)

一方「この方式を受け付けない」というアプリもあって、ポケモンGOなどの位置ゲーでは使えないとのこと。ただ私が確認したレベルですが、だいたいのGPSラップタイマーアプリでは受け取れる設定になっているので、この方法が使えます。iOSにはこんな機能なくて、Androidのほうがいろいろ融通効くというのはこういうわけ。

設定は各アプリによりますが、ラップタイマーアプリからBluetoothで接続した機器を選択するか、「内部GPSを利用」として先ほどの「仮の現在地情報」設定を変更します。この設定を使う場合は外部GPSデータを受け渡ししてくれるアプリが必要です。有名なところだBluetooth GPSDrogger GPSあたりどちらも無料アプリです。

私の環境だと、RaceChronoは直接機器を選択しています。GPSLapsだとBluetooth GPSを使って「仮の現在地情報」を利用しています(Bluetooth GPS側で機器を選択しています)。

さて、だいたいいけそうということも分かったところで、じゃあ実際にどのGPS機器を購入すっかなあということですが、どれも微妙に高いんですよねぇ。1万円後半~2万円くらいします。選ぶポイントとしては、みちびきという新しい衛星に対応しているかどうか。たいていの最近の機器なら対応していますが、Garmin GLOは対応していないのだとか。

新しめの機器となるとDG-PRO1あたりかなーとも思いますが、これでも1万円後半。万が一「あちゃーうまく連携出来ない」とかなっても我慢出来る金額、とは言えないかな。例えばRaceChronoはBLEに対応していますが、同じくBLEのGL-770の組み合わせだと、機器の認識はするのですがデータが渡らず機能しません

そしてもう一つ、外部GPS機器との接続でBluetoothのペアリングをするんですが、個人的にはこれが結構手間だなー。時々うまくペアリングしないときがあって、走行後にデータ見ようかなと思ってアプリを見てみると全く取れてない!!とかいうのもたまにあるので、ペアリングってどうしても不安が残る要素ではあります。

「○○と××という組み合わせで完璧に動くよ~」とかいう情報が少ないので(いずれ「このアプリとこのデバイスで連携確認済み」とかいう表を作りたいなー)、1万数千円払って、人柱になったつもりで投資しないとなあというのもあるので、なかなか買う気にならないというのが個人的な所感。

じゃあ、いっちょ作っちゃうか??

というわけで、次回は外部GPS機器を自作しちゃおう! というのを書きたいと思います。

補足:中古のスマホってSIM入れなくてもラップ計測できるの?

これはアプリによります。基本的には入れておいた方がいいです。またはモバイルWifiルーターとか、他のスマホ持ってるならテザリングしておくといいと思いますが、GPS Lapsだと通信出来ない状態でも適切にログ記録してくれました。RaceChronoは最初は通信出来ないとダメみたいで(おそらく最初にサーキットの情報を通信して取得してるんだと思います)、一度計測が始まるとあとは通信出来なくてもいいみたい。


シェアする

コメントを残す

メールアドレスが公開されることはありません。

コメントする