Raspberry Pi でゼルダのエフェクトーンつくってみる

http://www.bpnavi.jp/kuji/item/1987/13994

ゼルダのエフェクトーンいいなぁ、欲しいなぁ。
でもくじ運に自信ないなぁ…。
そうだ、僕らには Raspberry Pi がある\(^o^)/

用意するものは Raspberry Pi 一式のほか、以下。

  • タクトスイッチ
  • ブレッドボード
  • 各種ケーブル

本物が何センサーを使っているかはわからないけど、とりあえず手元にあったタクトスイッチを使って実装してみた。
仕組みは簡単で、スイッチがOFFになったら音を鳴らすだけだ。
Pythonスクリプトで組んでみた。

配線

ブレッドボード。fritzingの使い方も電子回路もド素人なんで勘弁。
(先の動画ではスイッチ部分をユニバーサル基板に実装)

回路図のつもり。

RaspberryPi GPIO の 3V からタクトスイッチの片方に入る。
タクトスイッチのもう片方から、GPIOの24と、抵抗をはさんでGNDへ。
大電流が流れないようにする抵抗らしい。よくわかってない。残念。

コード

コードの解説

今回はドアに設置するので、ドアが閉まっているときはタクトスイッチが押されており、ドアが開くとスイッチがOFFになるようにした。
ということで、初期値は current、prev どちらもON(GPIO.HIGH)だ。

0.1秒間隔でスイッチの状態をチェックし、ON→OFFになったら音を鳴らすようにした。
簡易的ではあるが前回の値(prev)と今回チェック値(current)が不一致のときだけ音を鳴らす。
音は nazo.ogg でスクリプトと同じ階層に準備しておく。

音はひとつだけでは芸がないので、配列にした。
好きなだけ配列に append すれば、ランダムに choice されて再生される。

SUPER+C のキーボード割り込みで終了。

設置

前述の通り、ドアでボタンを押しておき、離れるとOFFになるようにする。
タクトスイッチをこういう使い方すると職人に怒られそうなので、他のセンサーを使ったほうがいいかもしれないw

Raspberry Pi でゼルダのエフェクトーンつくってみる」への2件のフィードバック

  1. 栁井康毅

    こんにちは。とある大学で情報系を専攻しています。現在夏休みで何かを作ろうと思い、エフェクトーんを作ろうと考え、このサイトを見つけて参考にさせていただいています。質問なのですが、掲載されている商品でエフェクトーンを作ることは可能なのでしょうか。またその他にも必要な商品はあるのでしょうか。是非回答お願いします。(素人質問ですいません)

    返信
    1. manspace man 投稿作成者

      ほんまもんは「センサーが離れると音が鳴る」ようなので、正直別物ですね!
      回路やpythonコードは応用できると思います。

      返信

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です