工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Manufacturing Technology >> 製造プロセス

ArduinoでChrome恐竜ゲームを実機操作 – ジャンプ/しゃがみを身体でコントロール

必要な部品と材料

部品数量備考
Arduino MKR Zero1Keyboardライブラリ対応ボードならLeonardo, Esplora, Zero, Due, MKRファミリーも可
ブレッドボード(汎用)1
圧力センサー(FSR:Force Sensing Resistor)1ジャンプ検知用
ストレッチセンサー(導電性ゴムコード)1しゃがみ検知用
抵抗 10kΩ2
ジャンパーワイヤー1式

使用ツール

プロジェクト概要

概要と動画

Chromeの恐竜ゲーム(オフライン時に遊べる隠しゲーム)は、障害物をジャンプやしゃがみで避けるシンプルなゲームです。このデバイスを使うと、実際に身体を動かしてジャンプ・しゃがみをすると、ゲーム内の恐竜も同じアクションをとるようになります。

圧力センサー(FSR)でジャンプを、ストレッチセンサー(導電性ゴムコード)でしゃがみを検知し、Keyboardライブラリ対応のArduino MKRボードでキーボード入力(スペースキー/下矢印)をエミュレートします。

作り方

  1. 回路図(Schematics参照)に従ってブレッドボード上に回路を組む
  2. 下記コードをArduino IDEでアップロード
  3. コードの3〜4行目の閾値(stretchThreshold, forceThreshold)を環境に合わせて調整
  4. (任意)3Dプリントしたベルトクリップをブレッドボード背面に接着してウェアラブル化
  5. デバイスをPCに接続、インターネットを切断、Chromeを開いてゲーム開始!終わったらネットを戻すのを忘れずに

回路図

ArduinoでChrome恐竜ゲームを実機操作 – ジャンプ/しゃがみを身体でコントロール

ソースコード

#include <Keyboard.h>

int stretchThreshold = 990;  // しゃがみ検知閾値(要調整)
int forceThreshold   = 1000; // ジャンプ検知閾値(要調整)

void setup() {
  Keyboard.begin();
  pinMode(A1, INPUT);   // ストレッチセンサー
  pinMode(A2, INPUT);   // 圧力センサー
  pinMode(LED_BUILTIN, OUTPUT);
  Serial.begin(9600);
}

void loop() {
  int stretchValue = analogRead(A1);
  int forceValue   = analogRead(A2);

  Serial.print("stretch: ");
  Serial.print(stretchValue);
  Serial.print(" force: ");
  Serial.println(forceValue);

  // しゃがみ検知 → 下矢印キー送信
  if (stretchValue < stretchThreshold) {
    digitalWrite(LED_BUILTIN, HIGH);
    Keyboard.press(KEY_DOWN_ARROW);
    delay(200);
    digitalWrite(LED_BUILTIN, LOW);
  }

  // ジャンプ検知 → スペースキー送信
  if (forceValue < forceThreshold) {
    digitalWrite(LED_BUILTIN, HIGH);
    Keyboard.press(' ');
    delay(200);
    digitalWrite(LED_BUILTIN, LOW);
  }

  Keyboard.releaseAll();
}

カスタムパーツ・エンクロージャ

ベルトクリップの3Dモデルデータ(STL等)を用意すれば、ウェアラブルデバイスとして腰に装着してプレイできます。

製造プロセス

  1. Bluetooth 制御 Raspberry Pi ロボットに音声フィードバックを追加して構築
  2. Arduino UNOとOLEDディスプレイでクラシックPongゲームを自作:ステップバイステップチュートリアル
  3. DIY Arduino USBゲームコントローラー - 高性能ゲームパッドを自作
  4. Arduinoタッチブレークアウトゲーム:2.4インチTFT LCDでクラシックアーケードを再現
  5. 古いラジコンカーをXboxコントローラーで操作可能に - ArduinoとUSBホストシールドで実現
  6. Arduinoベースのヌンチャク操作6自由度ロボットアームキット
  7. Arduino Nanoで音声制御ロボットを自作
  8. Pixel Chaser: Arduino Nanoで作るワンタップLEDゲーム
  9. PiBot:Arduino駆動の精密ピアノ演奏ロボット
  10. Arduinoで自動化するChrome恐竜ゲーム – LDRとPythonで障害物を検知してジャンプ
  11. Arduino UNOで作る静電容量式タッチLEDスイッチ - 簡単DIY