2022.5.10
前回はランタンの点灯確認はできたのですが、すぐにLEDが消灯してしまいました。
その対策を考えるので、今回は記事は、工作より考えることがメインになります。
不具合の要因を考えてみます。使っている基板(とソフト)はろうそく制御用で、LEDを消すためには・・・
- 電池がなくなる
- プログラムの暴走
- マイクに息を吹きかける
と言った方法しかありません。
この中で1番と2番は考えにくいため、3番が有力です。
なのでマイクの入力レベル処理に問題があることが分かります。
ハッキリとした原因を突き止めないといけないのですが、それを書いていくと長くなるので、ザックリと分かっていることだけ・・・
- もともとの設計では電池2本増。今回は3本なので電圧が上がった。
- マイクの入力感度が高すぎる。
- マイクレベルの検出方法に問題がある。
以上の3点です。そして、結論としては3番を対策すれば良いことが分かりました。
マイクの入力レベルと言うのは「0V~電池の電圧」です。今回使用したマイコンでは、最大値を「電源電圧」としているので電池の電圧と等しいです。
つまり電池の本数が変わっても最大値は変わりません。パーセントで考えると分かりやすいですね。
電池1本なら1.5Vで100%、2本なら3Vで100%。マイク入力の最大値は100%なので、電池の本数(電圧)は関係ありません。
マイクの入力感度ですが、基板には調整する箇所が無いので、ソフトで調整しますが・・・
音は波になっているので「これくらいの音量」って決めるのは難しいです。
と言ってたら何も進みません。難しい数学を使えば上手くいくのでしょうけど、そんなの分かりません。
なので、一定の間隔でマイクレベルを取得し、平均値を出すことにしました。
(ここで平均値ってゼロじゃない?って疑問は無視してくださいm(__)m)
音声を感知するとマイクレベルは大きく動きます(波が大きくなる)
この変動がある値を超えたら、息を吹きかけられたと判断することにしました。
(今までは「マイクレベルが一定値を超えたら」と判断していた)
このようにソフトを直していたら、見つけちゃいました「バグ」です。いや「ミス」です。
左の表の意味は分からなくてもいいのですが、灰色の部分は「やってはいけません」な意味で、
見事にそれをやっていました。ちゃんと説明書は見ましょう。
そんなこんなでソフトを直して、試験運転したら見事成功。
念のため冷蔵庫に入れて、温度が変わっても問題ないことを確認しました。(これ結構重要)
これで完成・・・とならないのが人間の欲深いところ。
ゲームセンターの景品とは言え、面白いギミック?と言うか、ランタンの再現がされていて、
意味もなく(?)ガラス部分が開閉します。
「なんかコレ使いたい」と思ってしまった。何に使うか?と言われたら、
せっかくランタンとして再現されているのだから、
当然「扉を開けて、火を付ける、火を消す」でしょう。
なんのひねりもありません。「ランタンを目指」すそれだけ。
火を消すのは、ろうそくと同じでマイクを使います。火を付けるのは、赤外線受光器を使います。
実は、すでにアイテムは揃っていて、黒いのが赤外線受光器です。
では、赤外線受光器とはどのような物か?と言いますと、その名の通り赤外線を受け取るものです。
それだけでは分かりにくいので、赤外線受光器(黒い部品)に向けて赤外線を照射します。
赤外線はテレビリモコンを使います。
下の写真のようにテレビリモコンを操作するとテスターの数値が変わりましたね。
赤外線を受けると電気が流れる部品です。目には見えませんが、デジタルカメラで撮影すると紫色っぽく見える場合があります。
さて面倒なことになってきました。欲を出さなければ、部品を詰め込んで完成だったのに・・・
白いランタンに黒い部品を付けるので、見た目が悪くなるのは想像できますが、再現性・機能重視で進めます。
次は穴あけ加工かなー



