WT9011DCL をクラブのグリップエンド(キャップ)に固定し、Bluetooth で接続します。アドレスの構えを基準に、トップとインパクトでクラブのフェースがどれだけ開閉したか、シャフトがどれだけ傾いたかを測ります。センサーで正確に測れるのは向き(角度)だけなので、ヘッドの位置と軌道は推定です。
右打ち専用です。AndroidのChrome、またはパソコンのChrome/Edgeで、HTTPSのページとして開いてください(iOSのSafariは非対応)。
通常はオフのまま。機器一覧に出てこない場合だけオンにして、名前が WT901BLE で始まるものを選んでください。
フェースの開閉の推移(スイングプレーン基準、+が開き)。線が束になるほど再現性が高い状態です。
×1(実時間)〜×1/60。−/+ で1コマ(1サンプル=約5ms)ずつ送れます(長押しで連続、パソコンは ← → キー)。再生は今の位置から始まります。
1.0=バックスイングと同じ道を戻る(手元の推定が往復対称)。大きいほど、同じクラブ角でも手元が先にインパクト寄りに下りている=タメが深い想定になり、ダウンの軌道が内側・下側に描かれます。これは手元の位置の仮定であって計測値ではありません(センサーで測れるのはシャフトとフェースの向きだけで、シャフトの向き自体は往復でほぼ同じ面に乗っています)。
実寸(×1)だとアイアンのヘッドは幅8.5cmで小さく見えるので、拡大して描いています。3Dを拡大するほど実寸に近づきます。
手元(黄色丸=センサー位置)から実測のシャフト方向を1コマずつ放射状に重ねます。テークバック(青)とダウン(橙)で扇が分かれるほど、往路と復路で軌道が違うということです。オフにするとヘッドの推定軌道とクラブを描きます。「正面」ビューが見やすいです。
オン=加速度から手元(センサー)の位置を復元し、手元が動く扇+手元の軌道(破線)を描きます。テークバックとダウンが別の面を通っていれば、扇が2枚に大きく分かれます。手元位置は数〜10cm級の推定で、往復のプレーン差(傾き)は安定して出ますが「何cm内側か」は参考値です。ダウンの終わりは、ヘッドがアドレスのヘッド位置(ボール)に来るように合わせています(インパクトで手元がアドレスに戻る仮定ではなく、当たる位置=ボールだけを合わせる)。インパクト直前のコック解放でヘッドが走るのは、実測のシャフト角がそのまま表します。オフ=手元を1点に固定し、シャフトの向きの差だけを確実に見ます。
描いているもの シャフト(グリップエンド→ヘッド)とヘッドの軌道。シャフト上の左手の位置に、シャフトに直交する2本の線:水平線(トウ〜ヒール方向、フェース面内)と垂直線(フェース法線方向、長い側がフェースの向き)。同じ点に重ねた白い点線はアドレス相当の向きで、実線との開きがシャフトのねじれ(+開き/−閉じ、スイングプレーン基準)。弧と数値もその場に出ます。点線のクラブはアドレス時、点線の長い線は目標線。ヘッドは番手の種類(ウッド/UT/アイアン)とロフトに合わせた形(見やすいように拡大して描画。倍率は下のスライダー)で、フェース面はこちらを向くほど明るくなります。ヘッドが地面から30cm以内にあるときは、地面にフェースの向き(水平)と目標線の角度を弧と数値で描きます(+開き/−閉じ。結果の「フェースの開閉」と同じ値)。青い半透明の円盤はスイングプレーン。
シャフトとフェースの向きは実測、ヘッドの位置は推定です(左腕はスイングプレーン上をクラブの回転の約55%だけ回ると仮定。残りは手首のコック。ダウンスイングは下の「タメ」の分だけ手元が先行する仮定)。1本指のドラッグで回転、2本指で拡大縮小と上下左右の移動(マウスはホイールで拡大、右ドラッグで移動)。
接続時に自動で実行します。センサーの設定(帯域・レンジ・レート)と、電池・温度・地磁気を読み取り、帯域 256Hz/加速度 ±16g/角速度 ±2000°/s/出力 200Hz に合わせて本体に保存します。帯域の初期値は 20Hz で、このままだと速い動きが鈍って出ます。重力整合は静止時に3°以内なら正常です。
このアプリは方位にセンサーの角度出力を使わないので計測結果は変わりません。デバッグ表示の「センサー方位とのずれ」を、地磁気の乱れ抜きで比べたいときにオンにします(次回の確認・最適化で反映)。
センサーはキャップにどの向きで貼っても構いません。次の2つの姿勢で静止してからボタンを押すと、センサーの座標をクラブの座標(シャフト軸・トウ方向・フェース法線)に合わせ込みます。一度校正すれば、付けたままなら再校正は不要です。
②はリーディングエッジが垂直になる持ち方です(フェースが真横を向く)。①と②が直交から大きく外れていると記録されません。
初期値は男性用スチールシャフトの一般的な値です。ヘッドまでの距離はクラブ長をそのまま使います(センサーはキャップ上なのでほぼ同じ)。
3Dでねじれの十字線を置く位置です。
素振りが検出されないなら「ゆっくり」、構えの微動で反応してしまうなら「速い」へ。
構えてからこの時間だけ静止するとアドレス確定。ワッグルの途中で確定してしまうなら長くしてください。
クラブはスイングプレーン上を回るので、仰角はプレーンの傾き(おおむね50〜60°)が上限です。届かないまま最高点を過ぎたら、最高点で終了します。
符号の確認:構えて「ゼロにする」を押し、フェースを開く(ヘッドを右に回す)と開閉がプラス、グリップエンドを持ち上げてシャフトを立てると傾きがプラス、手元を目標側に出すと左右がプラスになれば正しい設定です。
クラブの3軸を世界座標のまま描いています。Y シャフト軸(グリップエンド方向)/Z フェースの向き(法線)/X トウ方向。点線は「ゼロにする」を押した時点の軸。
–
校正(①②それぞれの加速度の全サンプル、平均した向き、結果の行列、直交誤差)を、失敗した試行も含めて書き出します。スイングのCSV/JSONにも、そのとき使っていた行列と番手の寸法が入ります。
直前のスイング計測、または「記録開始」〜「記録停止」の間の全サンプルを書き出します。CSVは表計算で目視確認用、JSONは完全な再現用です。このファイルをチャットに送れば、解析して読み方の正しさを確認できます。
北を向いて構え(目標は西)、バックスイングで東へ上げる右打ちのスイングを合成して検出器に流します。3Dで右打ちに見え、フェースが「+2°」前後で出れば座標系は正しく動いています。
流れ/接続 → ①②で校正 → 番手を選ぶ → START。構えて静止すると「アドレス確定」と鳴ります。アドレスではフェースを目標に合わせて構えている前提で、この瞬間のフェースの向き(水平成分)を目標方向とし、以後の開閉はすべてこれを基準にします。自分のタイミングで始動してください。フォローでクラブが水平より指定の角度上を向いた瞬間に1回分の計測が終わります。アドレスの近くまで戻すと次を待ちます。
フェースの開閉(主役の数値)/インパクトでフェースの向き(法線の水平成分)が目標方向から何度ずれたか。+は開き(目標より右)、−は閉じ(目標より左)。
シャフトの傾き/アドレスよりシャフトが立ったか寝たか。+は立った(トゥアップ方向)、−は寝た(トゥダウン方向)。
シャフトの左右/手元の水平方向のずれ。+は目標側(ハンドファースト)、−は反対。
推移のグラフと3Dではスイングプレーン基準のフェースを使います(シャフトがアドレスから大きく回ると、アドレス基準の回転角は一意に決まらないため)。クラブがプレーン上を回るだけなら0°のままで、フェースを返したり開いたりした分だけ変わります。
インパクトの定義/スイングプレーン上のクラブの角度がアドレスの角度に戻った瞬間。サンプル間を線形補間して1ms以下の精度で決めます。インパクト付近ではフェースが毎秒1000°以上の速さで閉じているので、5msの時刻のずれでフェースが約7°変わります。結果には回転速度と、この感度も出します。
ばらつき(σ)が主役です。平均がどれだけ良くても毎回バラバラなら再現性はありません。目安は 2°以内で良好、4°超は安定していない状態です。
センサーの情報の使い方/角速度は姿勢の主役(台形則で積分、静止時にずれを推定)。加速度は静止時に傾きの補正と校正、スイング中は手元の速度・ヘッド速度・遠心力ピーク・回転中心の推定に使います。角度出力は接続直後の初期姿勢だけ。地磁気・温度・電池・設定は接続時にレジスタから読みます(200Hz中は読めないので一時的に50Hzに落として読み、200Hzに戻して保存)。
限界/このセンサーで正確に測れるのは向き(角度)だけです。グリップエンドの位置は測れないので(加速度の2回積分は1秒で数十cmずれる)、ヘッドの軌道は「シャフトの向き=実測、手元の位置=腕のモデル」で描いた推定です。角速度は±2000°/sで飽和するので、速いスイングでは軸ごとに飽和を警告します。方位はセンサーの地磁気補正を使わず、ジャイロの積分だけで追っています(スチールシャフトで地磁気が乱れるため)。