Skip to content

progate-hackathon-enpower/CollectOraOraData

Repository files navigation

⭐CollectPunchTrainingData⭐

「これは...幽波紋感知システムッ!」

Apple Watchを使用してパンチの加速度センサーとジャイロスコープのデータを収集し、機械学習用のトレーニングデータとして保存するアプリケーションだッ!その威力は計り知れない...貴様のスタンド能力の強さを数値化するのだッ!

🔥 機能

  • 複数のパンチタイプに対応

    • Punch(通常パンチ)- 基本にして最強
    • Idle(休止状態)- 静寂のスタンド
    • Rush(ラッシュ)- 無駄無駄無駄ッ!
    • Uppercut(アッパー)- 天への執行!
    • Hook(フック)- 我が槍の軌跡
  • 高速データ収集

    • 50Hz(0.02秒間隔)でCoreMotionデータを取得
    • ユーザー加速度(x, y, z)とジャイロスコープ(x, y, z)を記録する無駄のない精密さッ!
  • CSVファイル出力

    • 自動的にCSV形式で保存される
    • ファイル名:{PunchType}_{yyyyMMdd}_{HHmmss}.csv
    • 例:Punch_20260219_165930.csv - 時間の結晶化!

セットアップと実行

必要な環境

  • Xcode 15.0以上 - 開発者の銀河脳
  • watchOS 10.0以上 - 時間と空間を支配する力
  • Apple Watch Series 7以上(Series 10推奨)- 最強のスタンド体
  • iPhone(ペアリング用)- パートナーとの絆!

Apple Watchで実機実行する手順

「覚悟はいいか、開発者よ...」

1️⃣ iPhoneをペアリングする

  1. Apple Watchの電源をオンにするッ!
  2. iPhone側で 設定 > Bluetooth を開く
  3. Apple Watchが検出されるまで待機 - 宿命の出会いだ
  4. Apple Watchを選択してペアリング完了 - ついに繋がった!
  5. Apple Watch側で Watch App を開いて設定を完了する

2️⃣ Xcodeで開発者設定を有効にする

  1. Xcode → Preferences → Locations に進め
  2. Command Line Tools を選択する
  3. Xcodeを再起動する - 新たな力が目覚めた...

3️⃣ Apple Watchを接続する

  1. Apple WatchをMacに接続する(Lightning ケーブル使用)
  2. Xcode → Window → Devices and Simulators を開け!
  3. 接続されたApple Watchが表示されることを確認 - 認識した!

4️⃣ アプリをビルドして実行する

  1. Xcode で CollectPunchTrainingData Watch App スキームを選択
  2. デバイス選択で接続されたApple Watchを選択する
  3. 左上の再生ボタン(▶︎)をクリック、または ⌘ + R を押す - GO!
  4. ビルド完了後、Apple Watchにアプリが自動的にインストール
  5. Apple Watch上にアプリが起動する - ついに来たな...!

5️⃣ アプリの使用方法

  1. パンチタイプを選択:画面上部の選択ボタン(P、I、R、U、H)からタイプを選択

    • PPunch(通常パンチ)- 基本にして奥義
    • IIdle(休止状態)- 静なる待機
    • RRush(ラッシュ)- 無駄無駄無駄無駄ッ!
    • UUppercut(アッパー)- 我が神聖なる一撃
    • HHook(フック)- 光速の軌跡よ
  2. 記録を開始:大きなSTARTボタンをタップするッ!

    • ボタンが赤く変わり、経過時間が表示される - 戦闘開始だッ!
  3. パンチの動作を実行:Apple Watchに向かってパンチを行え!

    • 加速度とジャイロスコープのデータが自動的に記録される
    • 貴様のスタンド能力が、数値として記録される...
  4. 記録を停止:STOPボタンをタップする

    • データが自動的にCSV形式で保存される - 完成だッ!
    • ファイル情報がUI下部に表示される

📱 学習データのダウンロード手順

「データを手にした時...貴様の力は無限大だ...」

方法1:Xcodeの Devices and Simulators から直接ダウンロード(推奨)

「このやり方が最速にして最強...」

⚡ステップ1:デバイスウィンドウを開く

  • Xcode のメニューバーから Xcode → Open Developer Tool → Devices and Simulators を選択するッ!
  • または ⌘ + Shift + 2 を押す - 黄金の鍵だッ!

⚡ステップ2:Apple Watchを選択

  1. 左パネルから接続されているApple Watchを選択
  2. 中央パネルで CollectPunchTrainingData Watch App を探す - 見つけたな...

⚡ステップ3:アプリを選択して App Container を確認

  1. アプリをクリックして選択する
  2. ウィンドウ下部の Settings タブをクリック
  3. 詳細情報パネルが表示される - 扉が開いた...

⚡ステップ4:ファイルブラウザを開く

  1. パネル右下の歯車アイコン(⚙︎)をクリックするッ!
  2. ドロップダウンメニューから Download Container... を選択
  3. 保存先フォルダを選択してダウンロード - これだッ!

⚡ステップ5:CSVファイルを抽出

  1. ダウンロードされた .xcappdata ファイルを右クリック
  2. パッケージの内容を表示 を選択する
  3. 以下のパスを開く:
    AppData/Documents/
    
  4. CSVファイル(例:Punch_20260219_165930.csv)をコピーして完成ッ!

方法2:ターミナルから取得(上級者向け)

# Apple Watchの Documents フォルダを確認するッ!
cd ~/Library/Developer/Xcode/DerivedData/

# 正確なパスはデバイスに依存する
# 通常、以下のような形式:
ls -la /path/to/Watch/Documents/

📊 CSVファイルの形式

保存されたCSVファイルは以下の神聖なる形式である:

timestamp,acc_x,acc_y,acc_z,gyro_x,gyro_y,gyro_z
0.0000,0.123456,0.234567,0.345678,0.001234,0.002345,0.003456
0.0200,0.124567,0.235678,0.346789,0.002345,0.003456,0.004567
...

列の説明

  • timestamp:レコード開始からの経過時間(秒)- 時間の軌跡
  • acc_xacc_yacc_z:ユーザー加速度(m/s²)- 貴様の力の矢印
  • gyro_xgyro_ygyro_z:回転速度(rad/s)- 回転の真実

🔧 トラブルシューティング

「無知こそが最大の敵だ...解決策を示してやる」

❌ アプリがApple Watchに表示されない場合

  1. Xcode → Window → Devices and Simulators でApple Watchが認識されているか確認する
  2. Apple Watchを再起動する:Settings > Power Off > Power On - リセットだッ!
  3. Xcodeを再起動してもう一度ビルド - 新たなる力で...

❌ ファイルがダウンロードできない場合

  1. Apple Watchが Xcode に接続されているか確認する - 繋がっているか...?
  2. アプリが前回のセッションで正しく終了したか確認する
  3. Apple Watch の容量が足りないんじゃあないかッ!?(Settings > General > Storage)- 容量不足では何もできん...

❌ データが記録されていない場合

  1. AppleWatchがモーションセンサーを搭載しているか確認する
  2. Watch Appが CoreMotion の権限を持っているか確認する
  3. デバイスを再起動してアプリを再度実行する - 全てをリセットしろ...

About

突きの速さ比べとはッ! 互いに引かれ合ったスタンド同士がッ! ラッシュをぶつけ合う事態を意味するッ!!

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages