前回、HAL9000の外観が完成しました。
しかし、電池を入れるとLEDが点灯するだけの”ハリボテ”状態でした。
今回は、「話す」機能を実装したいと思います。
また、映画のHALの眼に近づける改造を行います。
「話す」機能は、人感センサーを使って人が近づいたら、用意した音声ファイルを再生するようにします。
将来的には、明るさ、音センサで話す音声を変更したいです。

製作開始
人感センサの入手
人感センサを通販で購入しようと探していたら、ダイソーで「センサーライト」を見つけました。
人感センサ、周辺回路と電球色のLEDが8個ついて300円です。これを購入しました。
うまくすれば制御回路も流用できるかもしれません。

センサ・ライトの分解
「センサーライト」を分解します。
ケース上部のスイッチの部品を取ります。

右横の電池入れ部分のネジを外します。

本体裏のマグネットはマイナスドライバーなどで簡単に取り外せます。
その奥にあるネジを外します。

これで、内部をスライドすると基板、内部ケース、レンズ部が出てきます。


音声ファイルの再生機能
マイコンにSDカードをつないで、SDカード内の音声ファイルを状況に応じて再生する形を考えました。
しかし、SDカード・アダプタとアンプを作ることを考えたら、モジュールを購入したほうが早くて安いことが分かりました。
DFPlayer Mini(の互換品)をAmazonから購入します。
私が購入した商品は、4個で1,000円程度(1個200円以内)でした。

「DFPlayer Mini」の動作試験
分解してLEDを取り外した「センサーライト」の基板、取り外した「電球色LED」、「DFPlayer Mini」、ノートパソコンのジャンクから回収済みのスピーカなどをブレッドボードでつないでみます。

音声ファイルの準備
Micro SD カードに入れるmp3ファイルは、試験的に持っている DVD の「2001年宇宙の旅」から録音したものを準備しました。
モジュールのマニュアルには、再生するファイル名は「0001.mp3」から始まる名前にしないと再生しない。と書いてありましたが、他の名前でも試験したら再生はしました。
「DFPlayer Mini」にはアンプが内蔵されているので、音を出すにはスピーカをつなぐだけです。
モジュールの 9 pin にスイッチを追加すると、最初のファイルだけが結構大きな音で再生されます。
ここで問題が発生しました。
人感センサーで「センサーライト」の制御回路はONになるので、人が近づくとLEDは点灯します。
しかし、「DFPlayer Mini」は、色々と設定してみましたが単体では自動で再生されず、人がスイッチを押さないと音声が再生されません
。また、音量は記憶できないので毎回、最大音量になってしまいます。
Arduinoで制御
色々やっても無理だったので、とりあえず人の代わりに Arduino Nano にスイッチのONと音量の調整をさせます。
これで、一応、人が近づくと「HAL9000」が、あの無機質な声で話しかけてくるようになりました。
音量も調整したので良い感じです。

リセットの追加
私が作った Arduino Nano で「DFPlayer Mini」を制御するスケッチが悪いのか、Nano をリセットしないと音声がを再生されません。
しかたがないので、「センサーライト」から電源が供給されると、プログラムで一度リセットするようにしました。
周辺部品の取り付け
今後、機能を追加する予定(明るさと音声センサの追加)なので、ケース下部に3種のセンサを、本体上部に電源スイッチを取り付けました。
また、電源は電池ではなく充電式にしたので、18650 タイプのリチウム電池ケースを3Dプリンタでプリントして、USB ケーブルで充電できるように充電基板も取り付けました。

HAL の眼の改造
前回の製作記でHAL の眼は、赤いフィルタ内蔵式の魚眼レンズの後方から、電球を当てて撮影したらしいと解説しました。

HAL9000の製作記の詳細は、以下をクリック。

確かに、映画をよく見ると中央は赤ではなく黄色に見えます。
そこで、見た目が近づくように改造します。

材料の準備
まず、ダイソーの「B5 暗記用 下敷き 赤」を丸く切り抜きます。

切り抜きには、オルファのラチェット機能付きコンパスカッター(189B)を使用しました。


改造の試運転


まとめ
写真は暗めの部屋で取ったので、中央が飽和しているように映っていますが、実際には良い感じの黄色に見えます。
これで、「HAL9000」は一応の完成とします。
次は、Arduinoを組み込んだので人感センサでONするだけではなく、照度センサで周囲の明るさを検知して、マイクを使って人が話しかけると「DFPlayer Mini」のファイルを切り替えて、それらしい音声を再生するようにしたいですね。
コメント