Arduinoでの電子工作をはじめるときに誰もが最初に行う「Lチカ」。チュートリアルを見ながら自分の手で書いたプログラムが初めて動く瞬間はめちゃめちゃ楽しいですよね。
この感動を友達や恋人、家族に伝えたいところですが、電子工作の空気感がわからないと「なんか…点滅しているねぇ…うん。」って温度差になりがちです。まあ実際そうですから仕方ない。
今回の記事では、電子工作をしたことがない方でも「面白い!」と言わざるを得ない、圧倒的非日常体験を提供するLチカデバイスを作っていこうと思います。
作品名は…「セルフ記者会見セット」です!
「おや…?聞いたことあるぞ…?」と思った方もいらっしゃるでしょう。
そう、Maker Faireでの出展で話題になっていたあの作品です。
マスコミの方々がいなくても、不祥事を起こさなくても、テレビでよく見るあの記者会見のフラッシュとシャッター音を浴びる体験できるというとんでもないデバイスです。
そんなクレイジーなデバイスを作ったのはこちらの4名のメンバー。
井上 康平 | 濵田 佳祐 | 日隈 裕一朗 | 松本 康平 |
今回は作者の皆様にご承諾をいただきまして、セルフ記者会見セットを真似して作らせていただけることになりました!本当にありがとうございます!
(筆者もNEXT+αのメンバーの一人で、いろいろと作品を作っています)
本記事では、Arduinoを使って
- 高輝度LEDを使った記者会見っぽいフラッシュの再現
- MP3モジュールを使ったフラッシュ音の再生
- 距離センサで誠意のこもったお辞儀の検出
を行っていき、解説を交えながら「セルフ記者会見セット」を製作します。
セルフ記者会見セットのレシピ
Arduino UNO | |
MP3モジュール(Grove) | |
超音波センサ(HC-SR04) | |
ACアダプター(9V 2A) | |
カーボン抵抗 3kΩ | |
ユニバーサル基板 Bタイプ | |
自動車用LED(3W) | |
ブレッドボード用DCジャックDIP化キット | |
タクトスイッチ(黒色) | |
Nch パワーMOSFET(R6015KNX) | |
マイクロSDカード | |
スピーカー(USB給電) | |
タブレットスタンド |
今回の記事の流れ
- 高輝度LEDを使った記者会見っぽいフラッシュの再現
- MP3モジュールを使ったフラッシュ音の再生
- 距離センサで誠意のこもったお辞儀の検出
- 全機能を統合して「セルフ記者会見セット」を作る
1. 高輝度LEDを使った記者会見っぽいフラッシュの再現
記者会見の主役と言うと語弊がありますが、セルフ記者会見セットで最も重要となるLEDの点滅です。
LEDの点滅は通常であればArduinoのデジタル出力ポートにLEDと抵抗を直列に接続するだけですが、今回は自動車に使われる3Wの高輝度LEDを使用するため通常よりも高い電圧を加えて、大きな電流(250mA程度)を流す必要があります。
少し大きな電流を制御するときにはバイポーラトランジスタがよく使われます。有名な型番のものだと「2SC1815」というNPN型のトランジスタがいろんなところで使われていますが、2SC1815はコレクタ電流の定格は150mAなので今回の要求となる250mAよりも残念ながら小さいです。そのため、もうちょっと大きな電流を流せるトランジスタを使う必要があります。
そこで今回はLEDのスイッチングには「パワーMOSFET」を使用します。
パワーMOSFETは、Arduinoを使った電子工作においては2SC1815のようなトランジスタと似たような使い方をすることができるスイッチング素子で、モータなどの大電流(数アンペア~数十アンペア級)を必要とするものを動かすときによく使われます。
NchパワーMOSFET R6015KNXは、ドレイン電流15Aまで使うことができる素子なので、今回の用途では明らかにオーバースペックですが、これを持っておけば今回のようなLEDやモータ、ソレノイドなど、いろんなものを動かすことができるのでいくつかストックしておくと便利です。
今回の回路で使う部品と、組み立てる回路の回路図・配線図は以下のとおりです。
- Arduino UNO
- 抵抗器3kΩ
- Nch パワーMOSFET(R6015KNX)
- 自動車用LED
- DCジャック(DC9VのACアダプターを接続)
- ACアダプター(9V 2A)
この回路ではArduinoの8番ポートをHIGHにするとFETのスイッチングがONになりLEDが点灯し、LOWにするとLEDが消灯します。LEDは自動車用なので12Vを加えるのが一般的ですが、実験したところ9Vでも光ったので今回は9Vで点灯させることにしましょう。
このLEDをただLチカさせるだけなら「1秒点灯→1秒消灯」を繰り返せばいいのですが、今回作るのは「セルフ記者会見セット」です。記者会見っぽいフラッシュを作る必要があるのです。
記者会見っぽいフラッシュといえば、オリンピック選手がメダルを笑顔で見せたり、謝罪会見で「申し訳ありませんでした」と頭を下げたりしたときに一斉に焚かれるあの不規則な光の点滅。あれをプログラミングして再現してみましょう。
ソースコードは以下のとおりで、digitalWrite関数によってLEDのON/OFFを繰り返していますが、その点滅間隔のdelay関数の引数にrandom(10,50)を入れています。このrandom関数では10~50の間で整数をランダムに生成するので、delay関数で待機する時間は10ミリ秒~50ミリ秒の間のランダムな値になります。
これを実行してみると、不思議なことに「記者会見っぽいフラッシュ」を再現できるのです。
2. MP3モジュールを使ったフラッシュ音の再生
記者会見っぽいフラッシュは作ることができましたが、より記者会見っぽくするには音も再現したいところです。MP3再生モジュールを使って、「記者会見のシャッター音」の音声データを再生します。
今回の回路で使う部品と、組み立てる回路の配線図は以下のとおりです。
- Arduino UNO
- MP3モジュール(Grove)
- マイクロSDカード(中に再生するMP3ファイルを入れる)
- スピーカー(USB給電)
- タクトスイッチ
まずはMP3モジュールで再生するMP3ファイルを準備します。
今回はフリーの効果音素材を使わせていただきます。下記リンクのウェブサイト「効果音ラボ」より「記者会見のシャッター音」をダウンロードします。
効果音ラボ – https://soundeffect-lab.info/
SDカードにMP3ファイルを保存するとき、ファイル名は「0001.mp3」にします。これによってMP3モジュールでファイルを指定できるようになります。
MP3ファイルをSDカードに保存したら、MP3モジュールとタクトスイッチをArduinoに配線していきましょう。
6番ポートに接続しているタクトスイッチを利用して、「タクトスイッチが押されたら、音声データ0001.mp3を再生する」という動作のプログラムを作成します。MP3モジュールはシリアル通信によって制御することができ、Arduinoのソフトウェアシリアル機能を使って2番・3番ピンに接続して制御を行います。
MP3モジュールにはUSB給電のスピーカーを接続します。
ソースコードは以下のとおりです。
これでMP3ファイルを再生できるようになりました。
3. 距離センサで誠意のこもったお辞儀の検出
記者会見っぽいフラッシュの再現、記者会見のシャッター音の再生はできるようになりました。
しかし記者会見には重要な要素がもう一つあります。
そう、「誠意のこもったお辞儀」です。
記者会見と言いつつ、もうすでに「謝罪会見」にターゲットが絞られてしまっていますが、まあ良しとしましょう。祝福の会見もなんとかすればきっと適応できます。
誠意のこもったお辞儀の検出には「超音波センサ」を使います。超音波センサによってお辞儀をする人の頭とセンサ間の距離を測定し、お辞儀したことを検出することを目指します。
今回の回路で使う部品と、組み立てる回路の配線図は以下のとおりです。
- Arduino UNO
- 超音波センサ HC-SR04
超音波センサHC-SR04はTrig端子にトリガー信号を入力するとセンサから超音波が出力され、それが対象物で反射してセンサに音波が帰ってくるまでの時間を計測することで距離を測定することができます。
以下のソースコードでは、Trig端子へのトリガー信号入力、Echo端子からの音波到達時間(単位:マイクロ秒)の取得を行い、対象物との距離(単位:cm)を算出してシリアルモニタに表示する動作が行われます。
これで物体との距離を計測できることがわかりました。
会見をする人の頭に超音波センサを向ければ、誠意のこもったお辞儀を検出できそうですね。
4. 全機能を統合して「セルフ記者会見セット」を作る
これまでのプロトタイピングを通して以下の3つを試作することができました。
- 高輝度LEDを使った記者会見っぽいフラッシュの再現
- MP3モジュールを使ったフラッシュ音の再生
- 距離センサで誠意のこもったお辞儀の検出
これら3つの機能を統合することで「セルフ記者会見セット」は完成します。
統合する際にそのままブレッドボードを使用しても作ることができますが、今回は写真・動画撮影の都合によりユニバーサル基板に回路や端子の配線を行いました。また、フラッシュの光量を増やすためにLEDも4つ取り付けることにしました。
ソースコードは以下のとおりです。
60cm以内の距離に対象物を検知(誠意のこもったお辞儀を検知)したら、カメラのシャッター音のMP3再生と記者会見っぽいフラッシュを行うようにプログラムしています。
誠意のこもったお辞儀を検出するには超音波センサをうまいこと頭に向ける必要があります。今回は百円ショップ等で購入できるタブレットスタンドを使っていいかんじに設置してみようと思います。
完成した「セルフ記者会見セット」の姿が…
こちらです!
それでは早速、謝罪してみましょう。
謝罪って気が進まないはずなのですが、今は妙にワクワクします。
うまくできましたね!謝罪会見!
誠意のこもったお辞儀の検出もバッチリです。
このセルフ記者会見セットを使って謝罪をすれば、冷蔵庫のプリンを勝手に食べたこともきっと許してもらえるでしょう。