スマートフォンには加速度や回転、端末の向きを取得できるセンサーが入っています。専用の計測器ほどの精度はありませんが、机の複数地点で振動を比べる、モーターの近くと離れた場所で揺れ方を見る、衝撃がどの順番で届いたかを確認するといった簡易実験には使えます。

複数台で比較するときに難しいのは、単に数値を集めることよりも、端末ごとの時刻をそろえ、同じ条件で固定し、サンプルレートの違いを理解して結果を読むことです。Wireless Sensorは最大4台のスマホをWebRTCでPCへ直接接続し、同期タイムライン上で記録・比較・解析できます。ここでは測定の組み方と結果を見るときの注意点を整理します。

スマホのモーションセンサーで何を測れるか

ブラウザから取得できる代表的な値は、重力を除いた加速度、重力を含む加速度、回転速度、端末の向きです。振動を見たいときは重力を除いた加速度の大きさ、傾きを見たいときは端末の向き、回転の速さを見たいときは回転速度というように、目的に合わせて見る値を変えます。

ただし、センサーの種類、内部フィルタ、最大サンプルレート、軸の向きの扱いは端末・OS・ブラウザによって異なります。同じ現象を比較する場合でも、機種が違えば絶対値が揃うとは限りません。まずは「どちらの方が大きく揺れたか」「同じ周期が見えるか」といった相対比較から始める方が扱いやすいです。

複数台を比べるなら、時刻合わせと固定方法が重要

複数地点を同時に測る場合、各スマホの時刻が少しずれているだけで、衝撃の到達順や波形の比較が分かりにくくなります。Wireless SensorではWebRTC DataChannel上の往復時間を使って端末ごとの時計ずれとドリフトを推定し、受信側の共通タイムラインへ補正します。同期の不確かさも表示されるため、数ミリ秒単位の差を読むときはその値も一緒に確認します。

もう1つ重要なのが固定方法です。スマホを手で持つと人の動きがそのまま混ざるため、机や床、機械の筐体などへできるだけ動かないように固定します。X/Y/Z軸を直接比較するなら端末の向きもそろえます。機種が混在して軸方向の差が気になる場合は、3軸から計算した加速度の大きさを使うと比較しやすくなります。

振動・衝撃・周波数は、同じグラフでも見る場所が違う

持続する振動を比べたいときは、瞬間的な1点だけではなく、一定区間のRMS、ピーク、レンジを見ると傾向をつかみやすくなります。たとえばモーターの近くと遠くへスマホを置き、RMSがどの程度変わるかを見ると、振動の強さを位置ごとに比較できます。

机を叩くような短い衝撃では、しきい値を超えたタイミングを端末ごとに検出し、どのスマホへ何ミリ秒遅れて届いたかを見ます。周期的な揺れではFFTを使うと支配的な周波数を確認できます。ただしFFTで見られる上限周波数は実際のサンプルレートに制約されるため、スマホの取得レート以上の高周波振動まで測れるわけではありません。

記録を残して、あとから比較できる形にする

測定中に「モーターON」「ブレーキ」「机を叩いた」などのマーカーを入れておくと、あとから波形を見返したときに何が起きた場面か分かりやすくなります。センサー名やXYZ位置も記録しておけば、単なるSensor 1 / Sensor 2ではなく、測定場所と結果を結び付けられます。

数値を別ソフトで解析したいならCSV、同じ解析画面をあとで開き直したいならセッションJSON、他の人へ結果を渡したいなら自己完結HTMLレポートというように保存形式を使い分けます。測定データは受信側ブラウザ内で処理され、Browser Kittyの計測サーバーへアップロードする構成ではありません。長時間・複数台の記録はメモリ使用量が増えるため、必要なら区切って保存します。

手順

  1. PCまたはタブレットと、センサーに使うスマホを同じWi-Fi / LANへ接続し、両方でWireless Sensorを開きます。ゲストWi-Fi、VPN、端末分離が有効なネットワークは避けます。
  2. PC側を受信側、スマホ側をセンサーとして選び、QRコードまたは接続コードでペアリングします。必要に応じて最大4台まで追加します。
  3. スマホでモーションセンサー権限を許可し、測定目的に合わせて衝撃伝播、振動比較、傾き比較などの実験プリセット、または測定モードを選びます。
  4. 各スマホを測りたい位置へしっかり固定し、必要ならセンサー名とXYZ位置を入力します。軸を直接比べる場合は端末の向きもそろえます。
  5. 記録を開始し、イベントが起きた瞬間にマーカーを追加します。振動ではRMS/ピーク、衝撃では到達時間差、周期的な揺れではFFTを確認します。
  6. 停止後に同期状態と結果を見直し、用途に応じてCSV、セッションJSON、または自己完結HTMLレポートとして保存します。
Browser Kittyで試す

Wireless Sensor

最大4台のスマホをワイヤレス動きセンサーとしてPCへ接続し、同期記録・比較・衝撃検出・FFT解析を行います。

ツールの詳細を見る

注意点

  • 初めて使うスマホでは、先にDevice CheckでモーションセンサーAPIが利用できるか確認しておくと切り分けが楽です。
  • 絶対値の精度より比較を重視するなら、できれば同じ機種・同じブラウザ・同じ送信設定でそろえると条件差を減らせます。
  • 柔らかいケースや手持ちは高周波成分を変えたり余計な揺れを加えたりするため、固定方法を実験条件として扱います。
  • 長時間計測ではスマホの画面ロックやバックグラウンド化でセンサーイベントが止まることがあるため、画面状態と電源管理にも注意します。

よくある質問

測定値はBrowser Kittyのサーバーへ送られますか?

いいえ。PCとスマホの接続情報はQRコードまたはコピー&ペーストで直接受け渡し、センサー値はWebRTC DataChannelで接続端末へ送ります。シグナリング、STUN、TURNサーバーも使用しません。

スマホだけで正確な振動計測ができますか?

比較や教育用途、簡易実験には使えますが、校正済みの加速度計や振動計の代替ではありません。端末ごとにセンサー精度、内部処理、サンプルレートが異なるため、絶対値を精密測定として扱わない方が安全です。

PCとスマホは同じWi-Fiに接続する必要がありますか?

同一LANでの利用を主な対象にしています。STUN/TURNを使わないため、異なるネットワーク越しの接続は対象外です。同じWi-Fiでもゲストネットワークや端末分離が有効だと接続できない場合があります。

衝撃が伝わる速度まで測れますか?

各センサーのXYZ位置を入力すると、端末間の直線距離と検出時間差から見かけの伝播速度を確認できます。ただし、センサーのサンプル間隔、固定方法、時刻同期の不確かさが結果へ影響するため、精密な材料試験ではなく比較・簡易実験向けです。

FFTでどのくらい高い周波数まで見られますか?

上限は実際に取得できているセンサーのサンプルレートで決まります。たとえば約30 Hzで取得している場合、意味のある周波数範囲は概ね15 Hz以下です。端末によってサンプルレートは異なるため、FFT結果と一緒に取得条件も確認します。