この記事は約 11分で読めます。
【実験】GPSログの取得元・アップロード先による停止時間の差
GPSログを取得した機器と、アップロードする先のサービスによって、「停止時間」がどのように変わるかを実験しました。
まえがき
ブルベでは、ハンドルに複数個のGPSサイコンを付けている人を良く見かけます。
複数サイコンで走る意味
かく言う私もその一人で、eTrex32xをメインに、別のサイコンを付けていることが多いです。
2つのGPSサイコンを使う理由は、ざっくり言うと次のとおりです。
- eTrex32xはパワーメーターと接続できないので、パワーメーターと接続可能なサイコンを別に付ける必要がある。
- 片方でデータを取り損なった時に備えての予備。
ただ、何事もなく最初から最後まで正常にGPSサイコンが動作した場合、1回のライドで2つのGPSログが取得されることになります。
取得したGPSログは、StravaやGarmin Connectといったサービスにアップして、結果を管理すると思います。
しかし、同じ期間で取得したGPSログのはずなのにデータに差が出るんですよね。
同一期間のログなのに停止時間に差が出る
ログ同士の差分の中で私が気になるのは「停止時間」の差です。
サイコンAで取得したログとサイコンBで取得したログで、停止時間に30分以上の差が出るケースが結構よくあるのです。
上の2つの画像は同じ区間をサイコンAとサイコンBで取得したログです。1時間のライドでStopped Timeが3分も違っています。
さらに、停止時間はアップロードする先のサービスによっても変わってきます。
サイコンAで取得したログをStravaにアップした場合とGarmin Connectにアップした場合では、これまた停止時間が結構違います。
そして停止時間が違うと、走行時の平均時速も変わってくるはずです。
取得元・アップロード先による傾向を実験で確かめる
こちらの記事に書いているように、私は「ムダな停止時間を減らす」ことがロングライドの一つのコツであると考えています。
なので、ライド後に振り返ることは多いわけですが、ログを取ったサイコンやアップするサービスによって違った値が出てしまうのは結構困ります。
そこで、各GPSサイコンと、アップする先のサービスによってどんな傾向があるのかを実験してみることにしました。
実験方法
ブルベやキャノンボールをする場合の状況になるべく近づけるように条件を設定しました。
対象GPSサイコン(ログ取得元)
下記の6機種を対象としました。
- 自転車用: Garmin Edge530
- 自転車用: Garmin Edge840 Solar
- 自転車用: iGPSPORT iGS630
- 自転車用: iGPSPORT iGS320
- 山歩き用: Garmin eTrex 32x
- スマートウォッチ: Garmin Forerunner 255s
自転車用が4台、山歩き用が1台、スマートウォッチが1台です。便宜上、まとめて「GPSサイコン」と呼びます。
対象サービス(アップロード先)
下記の3サービスを対象としました。
- Garmin Connect
- Strava
- Ride with GPS
各GPSサイコンの設定
各サイコンは共通で以下のような設定としています。
- スピードセンサーは接続せず、GPSでの位置情報取得のみで計測。
- 通信する衛星の数は、設定できる中で一番少ないものを選択(マルチバンドGNSSも不使用)。
- オートポーズ(一定速度以下になると計測を中断する)機能はOFF。
各設定はブルベやキャノンボールを意識しています。
通信する衛星の数が多いとその分だけ電池を食います。少しでも動作時間を伸ばすために、衛星の数を絞っています。
また、ブルベもキャノンボールも、スタートからゴールまでのグロスタイムが重要となるので、オートポーズ機能は切っています。
測定方法
合計6個のGPSサイコンを取り付け、1時間ほど走行してGPSログを取得します。
KCNCのブルベマウントを駆使して、自転車側に5個、手首に1個を取り付けました。
以下の手順で測定を行います。
- 全GPSサイコンが衛星との通信を確立した状態で、なるべく同時に計測スタート。
- 信号多めの約17kmのコースを走行する。
- 途中、コンビニで5分間の休憩を入れる。
- 走り終わった時点で、なるべく同時に計測をストップする。
これもブルベやキャノンボールを意識しています。
信号に引っかかることもあれば、コンビニで休憩することもあるはずなので、こういった測定方法としました。
ちなみに、スマートウォッチだけは着用したままコンビニの中を歩いています。
アップロード方法
測定が終わった後、6個のGPSログを3箇所のサービスにそれぞれアップロードします。
私の場合、Garmin製の機器は自動的にGarmin Connectにアップロードされる設定としています。そしてGarmin Connectにアップされたデータは自動的にStravaに連携されるようになっています。
ただし、Stravaはデータ重複の判定を結構厳しくやっているので、複数機器から同一期間のログをアップすると最初の1個以外は拒否されます。拒否されたデータは手動でStravaにアップしました(重複禁止を回避するためにアップしたログは都度消す)。
Ride with GPSは全て手動アップロードです。Garmin Connectからデータをエクスポートしました。Fit形式でデータが取れる場合はFit形式、取れない場合はGPX形式でアップロードしました。
実験結果
実験の結果です。
各サービスの測定値
各サービスでの測定値を示します。
「停止時間」列の右にある数字は、停止時間が少ない順に順位付けをしたものです。
製品名 | 距離 | 全体時間 | 走行時間 | 停止時間 | |
Edge530 | 17.31 | 53:52 | 39:12 | 14:40 | 6 |
Edge840 Solar | 17.63 | 53:55 | 40:19 | 13:36 | 5 |
iGS630 | 17.55 | 53:58 | 42:28 | 11:30 | 3 |
iGS320 | 17.33 | 53:41 | 44:01 | 09:40 | 1 |
eTrex 32x | 17.38 | 53:42 | 42:59 | 10:43 | 2 |
Forerunner 255s | 17.63 | 53:58 | 42:27 | 11:31 | 4 |
製品名 | 距離 | 全体時間 | 走行時間 | 停止時間 | |
Edge530 | 17.30 | 53:52 | 40:10 | 13:42 | 5 |
Edge840 Solar | 17.41 | 53:55 | 46:16 | 07:39 | 2 |
iGS630 | 17.33 | 53:59 | 39:52 | 14:07 | 6 |
iGS320 | 17.34 | 53:41 | 44:01 | 09:40 | 3 |
eTrex 32x | 17.39 | 53:42 | 43:48 | 09:54 | 4 |
Forerunner 255s | 17.63 | 53:58 | 50:59 | 02:59 | 1 |
製品名 | 距離 | 全体時間 | 走行時間 | 停止時間 | |
Edge530 | 17.30 | 53:58 | 38:43 | 15:15 | 6 |
Edge840 Solar | 17.40 | 53:55 | 38:53 | 15:02 | 5 |
iGS630 | 17.60 | 53:58 | 39:22 | 14:36 | 3 |
iGS320 | 17.30 | 53:41 | 42:04 | 11:37 | 1 |
eTrex 32x | 17.40 | 53:42 | 39:48 | 13:54 | 2 |
Forerunner 255s | 17.60 | 53:58 | 39:22 | 14:36 | 3 |
結果の考察
サービスごとにかなり傾向が分かれました。
Garmin Connect
停止時間が一番短かかったのは「iGS320」で9分40秒、一番長かったのは「Edge530」で14分40秒でした。
最短と最長の差は5分です。
Strava
停止時間が一番短かったのは「Forerunner 255s」で2分59秒、一番長かったのは「iGS630」で14分07秒でした。
最短と最長の差はなんと11分。そもそもコンビニで5分停止しているので、どうやっても停止時間は5分以上になるはずなんですが……
コンビニ内部を歩き回った分も律儀にStravaはカウントしているということなのでしょう。
Ride with GPS
停止時間が一番短かかったのは「iGS320」で11分47秒、一番長かったのは「Edge530」で15分15秒でした。
最短と最長の差は3分半です。
最短と最長の組み合わせはGarmin Connectと同じになっています。順位を見てもほぼ同じ。似たアルゴリズムで停止時間を算出しているように思えます。
各サービスの差について
恐らくですが、Garmin ConnectはアップされたGPSログに「速度」「走行時間」といったデータが含まれている場合は、その数字をそのまま使うようにしているように見えます。サイコンの画面上のデータとGarmin Connect上のデータが一致しているからです。「速度」「走行時間」が含まれていない場合は、座標情報から再計算しているはず。
一方、StravaはGPSログに「速度」「走行時間」といったデータが含まれていても完全に無視しているように見えます。必ず位置情報から再計算するアルゴリズム。
その理由は恐らく、Stravaにはセグメント内のランキングが存在するから。不正防止のために都度再計算しているのだと推測します。
そしてその再計算のロジックはGarmin ConnectやRide with GPSとはかなり異なっているように思えます。かなり低速でも「止まっていない」と判定しているように見えるというか。
実際、Stravaにおける停止時間はGarmin Connectの停止時間よりも全機種で短くなっていることが分かります(iGS320だけは変化なし)。停止と判定するしきい値がかなり低い速度であることが想像されます。
Ride with GPSは良く分かりませんが、全体的にGarmin Connectと似たロジックを用いているように思えます。
GPSサイコンごとの差について
当初は「機種の用途ごとに傾向が出るのではないか?」と予想していました。
自転車用は想定速度域が高いはずで、スマートウォッチは想定速度域が低いはず。それによってログにも差が出るのではないかと思っていたのですが……結果を見るとそんなこともなかったです。
Garmin Connect・Ride with GPSともに、停止時間の最短と最長はどちらも自転車用のものでした。
Stravaは最短がスマートウォッチという結果ではありましたが、同じEdgeシリーズで停止時間が6分も違うという結果に。訳が分かりません。
停止時間の最大差
停止時間が最短だったのは「Forerunner255sのデータをStravaにアップした場合」で2分59秒。
停止時間が最長だったのは「Edge530のデータをRide with GPSにアップした場合」で15分15秒。
同じような設定にして、同じ時間に計測を開始して、同じ時間に計測を終了したはずなのに、最大で12分16秒も差が出ることが分かりました。
余談
eTrexとEDGEの停止時間が違う問題、徒歩で並べて検証してみた。
どうもEDGEは時速3km以下で移動したときに移動を検知していない。eTrexはバッチリ検知。 pic.twitter.com/vMMpP187ll
— ばる (@barubaru24) November 17, 2022
eTrexとEDGEではこんな差もありました。
EDGEも速度による自動停止機能はOFFにしているんですが、それでも3km/h以下の速度を検知していないようです。一方でeTrexはしっかり検知。
やはり前提となるアクティビティの速度域に最適化されてるんですかね?
まとめ
明確な傾向というものは読み取れませんでしたが、とりあえずは下記のことが言えそうです。
「GPSログを取得した機器とアップロードした先のサービスによって、”停止時間”は大きく変わってしまう」
今回はGPSサイコンの設定を出来る限り揃えましたが、それも実際は人によって異なります。更に差が大きくなる可能性もあるということです。
よく走るコースがあったとして、自分自身の現在の記録と過去の記録を比較して分析場合を考えてみましょう。
今回の実験結果を見ると、「同一の機器」かつ「同一のサービスにアップロードした」データ同士で比較しないと、あまり意味がないということになります。
また、同じコースを走ったAさと記録を比較する場合でも同様のことが言えます。自分とAさんのサイコンが同じとは限りませんので。
パワーメーターも「同一個体で取ったパワーデータ以外はノイズになる」という話を聞きますが、その他のデータについても同様のことが言えるのかもしれません。
著者情報
年齢: 39歳(執筆時)
身長: 176cm / 体重: 82kg
自転車歴: 2009年~
年間走行距離: 10000~15000km
ライドスタイル: ロングライド, ブルベ, ファストラン, 通勤
普段乗る自転車: BIANCHI OLTRE XR4(カーボン), QUARK ロードバイク(スチール)
私のベスト自転車: LAPIERRE XELIUS(カーボン)
# 乗り手の体格や用途によって同じパーツでも評価は変わると考えているため、参考情報として掲載しています。
# 掲載項目は、road.ccを参考にさせていただきました。