箏で遊べる音ゲーKotomaniaの作り方(ハードウェア編)

Kotomania って?

実物のお箏を使って遊ぶ音ゲーリズムゲーム)です。太鼓の達人の箏バージョンだと思えばわかりやすいかも。

箏にゲーム画面を投影して、実際に弦を弾いて操作します。弦を弾いたことは、弦を支える琴柱に振動センサーを貼って検出しています。

この投稿では、ハードウェアのセットアップに必要な機材について説明します。必要な機材については前回の記事 に書きました。ソフトウェアのセットアップ方法については、また日を改めて投稿します。

ハードウェアのセットアップについて

振動センサの準備

振動センサのケーブル延長

振動センサ(ピエゾピックアップ)Arduino に差し込める形のケーブルではないので、両端にピンヘッダ(オス)をつける必要があります。また、そのままだと短いので40~50cm延長します。銅線にピンヘッダを圧着してもいいんですが、26本作らないといけないので、ジャンパーワイヤー 50cm の片方のピンヘッダの部分を切り落として、振動センサの線と結合させるほうが楽です。結合は私はハンダでやりましたが、圧着でもいけるかもしれません。振動センサの線が細いので、ワンタッチ接続できる接続コネクターは使えませんでした。

琴柱への貼付け

琴柱(箏の弦を支える柱)に振動センサを貼り付けます。ピエゾピックアップの金属側の中央付近に両面テープを貼って、琴柱に貼り付けます。このとき、よく文具で使う薄い両面テープだと接着が不安定になりやすいので、厚手の両面テープを使ったほうがいいです。ただし、厚手の両面テープは接着が強いものが多く、剥がすときに苦労します。接着の強さを売りにしているものは避けたほうがいいかもしれません。

振動センサを琴柱に貼り付けたもの

ブレッドボードの準備

以下の回路を弦ごとに作ります。

回路図

ブレッドボードの配線例です。図には Arduino UNO が書いてありますが、実際にはアナログ入力の数が足りないので Arduino Mega を使っています。またピエゾピックアップの記号がなかったので、ピエゾスピーカーを代わりに使っています。

ブレッドボード配線図

これを Arduino Mega につないで準備完了です。一の弦につないだセンサを A15 (Analog input 15) の穴に、二の弦を A14 に、と繋いでいって、巾の弦をA3 につないでください。(Arduino 側の処理の都合上、弦の番号とは逆順につなぎます)

箏で遊べる音ゲーKotomaniaの作り方

Kotomania って?

実物のお箏を使って遊ぶ音ゲーリズムゲーム)です。太鼓の達人の箏バージョンだと思えばわかりやすいかも。

箏にゲーム画面を投影して、実際に弦を弾いて操作します。弦を弾いたことは、弦を支える琴柱に振動センサーを貼って検出しています。

この投稿では、Kotomania のセットアップに必要な機材について説明します。ハードウェアとソフトウェアのセットアップ方法については、また日を改めて投稿します。

必要なもの

必要なものは以下の通りです。それぞれについての詳細は以下の項目で説明します。

  • 箏(13弦)
  • 箏スタンド(必要なら)
  • プロジェクター
  • プロジェクター台
  • 振動センサー
  • Arduino Mega
  • 両面テープ
  • 防振ゴム
  • 電気回路素子(抵抗、コンデンサダイオード
  • ブレッドボード
  • Windows PC

通常の13弦箏が必要です。定価で買うと20万円くらいかかりますが、中古だとかなり安く購入できる場合があります。私はジモティーで5000円で入手しました。

箏スタンド

箏を地面に置いて弾く場合は不要ですが、正座ではなく椅子に座って弾きたい場合は箏を浮かせるための台が必要です。ちゃんとしたものは「箏 立奏台」などで検索すると出てきますが、見栄えを気にしなければダンボール箱などでも十分です。箏は意外と軽いので、段ボール箱でも支えられます。

プロジェクター台

プロジェクターを固定するための台です。これの選定によってプロジェクターと箏の配置が決まるので、とても大事です。私はDMM.make のディスプレイスタンド G2 (Amazon) を使っています。キャスター付きで移動させやすく、高さも調節しやすいので便利ですが、足の部分が長く、意外と面積を取ります。ニトリのスチールラック (楽天) を使ってプロジェクタを固定されている例 (よしたけなつき@Natsuki00714さん) もあり、こちらの方が使い勝手がよさそうです。

プロジェクター

プロジェクターの選定は重要です。特に投影距離に注意しましょう。普通のプロジェクターは投影距離が 1~2メートル 以上ないとピントが合いません。箏とプロジェクターの間の距離が数十cmしか確保できない場合、短焦点型のプロジェクター(高価)を選ぶ必要があります。私は上記のプロジェクター台を使っており、プロジェクターと箏の間が約40cmしかないため、短焦点型のプロジェクターである EPSON の EB-435W を使っています(販売終了)。プロジェクターの固定方法によってプロジェクターと箏の配置が決まります。まずプロジェクターと箏の配置を決めてから、どのプロジェクターを使うか決めるべきでしょう。

振動センサー

ピエゾピックアップ(Amazon) を使っています。15個入なので、13本の弦 + 予備となってちょうどよく、価格も安いです。根本は折れやすいので、あまり動かさないように注意しましょう。

Arduino Mega

Arduino Mega, もしくはその互換機。アナログ入力の数が 13 個以上必要なので、Mega じゃないと足りません。私は ELEGOO 2560R(Amazon) を使っています。

両面テープ

振動センサーを琴柱に貼り付けるのに使います。薄い両面テープだと張り付き方にムラができたり、剥がれやすいため、厚みのあるタイプを使ったほうがいいです。

防振ゴム

たまに弦の振動が隣の弦の振動センサーに伝わってしまうことがあります。そういうときに、琴柱の下に防振ゴムを敷いておくと、そのような弦の間の相互作用を抑えることができます。運が良ければ使わなくてもよくなります。琴柱がゴムの厚みの分だけ持ち上がるため、できるだけ薄手のものを選んだほうが差し込みやすいです。

電気回路素子(抵抗、コンデンサダイオード

以下のものが13個ずつ必要です。

ブレッドボード

スイッチサイエンス 普通のブレッドボード を使っています。これの両側の±のラインを取り除くと、Arduino Mega の中央にすっぽり収まるので、配置しやすいです。私は Arduino Mega 用汎用シールド(Amazon) を使って台座を作って、その上にブレッドボードを置いていますが、ダンボールや厚紙でもいいかもしれません。

Windows PC

ゲームを動かすための PC。そんなに高い性能は必要ありません。5年くらい前のノートPCでも普通に動きました。

次回は、ハードウェアのセットアップについて説明します。

お箏で遊べる音ゲー Kotomania を作りました!

箏で遊べる音ゲー Kotomania

先日、Maker Faire Kyoto 2023 で、お箏で遊べる音ゲー「Kotomania」を出展しました。

お箏にプロジェクタでゲーム画面を投影して、琴柱のところに貼り付けた振動センサーで弦を弾いたことを検出しています。 図で書くとこんな感じ。

構成図

コードを整理したら、ゲーム本体とセットアップの仕方を公開する予定です。