映画「バック・トゥ・ザ・フューチャー」に出てくるタイムマシン「デロリアン」を作る企画の11回目です。
今回は、台座に Arduino Nano と DFPlayer Mini を組み込んで LED の点滅制御と映画のテーマソングを再生します。
(互換品の DFPlayer Mini(HW-247A)の使い方も紹介します。)
前回のデロリアンの部品の改造については、以下のリンクをご覧ください。
今回の最終形です。台座を含んだ「タイムマシン・デロリアン」が完成しました。
USB から電源を入れると、ボディに光が流れて映画音楽も再生します!
製作の詳細は、以下の記事をご覧ください。



台座の製作
最初に、台座を 3D プリンタでプリントアウトして塗装します。
しかし、オリジナルの台座は電源配線が2本しか接続できません。
そこで、台座部品に配線が4本通るように改修します。
台座の下部分です。

こちらが、配線が4本通るように改修した Fusion で設計した台座の上部分です。
こちらは透明な材料でプリントアウトしました。

デロリアンより目立たないように、つや消し黒で塗装しました。(車体を支える軸部分は、マスキングテープを張って透明にします。)

USB-C コネクタで給電できるようにコネクタ取り付け部を追加します。
今回はリチウム電池を使う充電式は採用しませんでした。
USB コネクタは、これを使います。

USB コネクタ固定具です。Fusion で設計しました。

これを 3D プリンタで出力して台座に接着します。
これで台座側の準備が出来ました。

制御回路
LED テープの制御には Arduino Nano(互換機)を使います。
そして、映画のテーマソングの mp3 の再生は Arduino の D/A 変換では辛いので DFPlayer Mini(互換機)で実現します。

接続図です。(それぞれの部品の図は販売店の HP より引用)

出来上がった制御回路を台座に置いてみます。
スピーカは破棄したノートパソコンから回収しておいたものを使用しました。
ちゃんと設計したみたいにジャストフィットです。(この後、絶縁して固定しました。)

DFPlayer Mini 互換機の使い方
純正の DFPlayer Mini なら動作に問題ありませんが、部品箱で見つけたのは購入時期が不明な互換機です。
表面には「HW-247A」と記載があります。
(遠い記憶で、「2001年宇宙の旅」に出てくる HAL9000 用に買ったような・・・)

この互換機は、単体での試運転には問題がなかったのですが、Arduino で制御しようとすると非常に不安定でした。
そのため、当時の知識では、ちゃんと使えていなかったようです。
しかし、当時から3年以上が経過して Arduino IDE の使い方も多少は慣れてきたので再挑戦です。
色々と試してみようと思っていたら、ネットで情報が見つかりました。
「@umidachi」さんの「DFPlayerMini互換品の扱いかた(DFPlayer hw247a,MP3-TF-16P)」です。
このブログの情報では、正規品は Arduino IDE のライブラリ・マネージャで出てくる「DFRobotDFPlayerMini」を使って正常動作するけれど、互換機はダメみたいです。
ライブラリは GitHub にある「DFPlayer」を使用して、設定もいじらないと動作しません。
1 HW-247A を使うには、シリアルラインのタイムアウトを「350」(又は500)にする。
2 初期化は、mp3.begin(mp3Serial, MP3_SERIAL_TIMEOUT, DFPLAYER_HW_247A, false) と記載する。
これを守れば互換品(HW-247A)でも正常動作を確認できました。
実際のスケッチは、「void setup()」内で設定を行った後に、
mp3.setVolume(10); // 音量は抑える
mp3.playTrack(1); // 1曲目(0001.mp3)を最後まで再生
の2行を足しただけです。
SD カード内には「mp3」フォルダを作って、「0001.mp3」とリネームした映画のテーマソングのファイルを入れておきます。
LED テープの制御
LED テープは、ラジオペンチさんのスケッチを利用することで簡単に制御できます。
このスケッチを使えば、フルカラーの LED を好みの色で点滅させたり、虹色でフラッシャーしたりと自由自在に扱えます。
今回は、タイムマシン・デロリアンが時間旅行するギミックを再現するので、試験では白色1色の機能だけを使いました。
しかし、映画のシーンを見直すと、発光している部分は青白い光です。

この青白い感じを LED テープで試験してみます。
ラジオペンチさんのブログ「RGBテープLED(WS2812B)でスノーフォールライトを作る(ソフト解説編)」にアップされているスケッチを参照してください。
最初は、ラジオペンチさんのスケッチの「// 高輝度固定8色の定義」に色指定がある「青色(0x0000F0)」です。
下のコードの「colH[7];」を、青色の「colH[4];」と書き換えます。
void snowFall_simple(int cy) { // 全ストリップ同じ位置で白を落とす
for (int i = 0; i < STRIP_N; i++) { // 落下位置メモリを初期化
fallPos[i] = 0; // 場所は先頭
fallCol[i] = colH[7]; // 色は白
}
写真では良い感じに見えますが、肉眼では濃い目の青色に感じます。

青系の色見本を見ながら、名前が良さそうな「アクアマリン(0x006F86)」を試してみます。
下のコードの白色の下に色を追加して8番目の色を指定します。
// 高輝度固定8色の定義
uint32_t colH[] = {
0x000000, // 0 黒
0xF00000, // 1 赤
0x00F000, // 2 緑
0xF08000, // 3 黄
0x0000F0, // 4 青
0xF000F0, // 5 ピンク
0x00F0F0, // 6 水色
0xF0F0F0 // 7 白
};
今度は色味が薄すぎました。

次は「スチールブルー(0x4682B4)」です。
色を戻すことを考えて、9番目に追加しました。
写真では違いが分かりませんが、映画のデロリアンの色に一番近いと感じました。
この色を採用にします。

ちなみに、青系の色見本は、「カラーサイト.com」さんの「青系統の色」を参照しました。
デロリアン側の配線
デロリアン内部の LED と LED テープの配線をまとめてつなぎます。
最終的には、土台からつながる電源2本と制御線1本を1つの 3P コネクタにまとめました。

こんな感じに出来ました。

点灯試験
青白い光の流れに設定変更したタイムマシン・デロリアンです。
タキオン粒子が流れている風になったように感じます。

側面です。

斜め後ろはメカと発光が多いです。

下側から裏面を撮りました。(ちょっとピントが甘いです。)

動画を編集中ですが、短めの物を上げておきます。
次回の予定
次回は、長かったデロリアンを作る企画の最終回(予定)です。
「おまけ」回として、オプションの展示用看板と第2作で大活躍した(3作目の最後でも)「ホバーボード」を作ります。






コメント