2018年3月9日金曜日

18.3.9 天気予報つき温度・湿度・気圧計


ものづくり教室の教材用に天気予報ができるものを試作してみた。天気は気圧の変化で予測する。センサーはBME280という温度・湿度・気圧のセンサーを使うことにした。表示は電池が長持ちすることを最優先することにして、先日作ったLEDの点滅方式でやることにする。せっかくなので、天気予報のほかに温度・湿度・気圧も表示できるようにした。


表示装置はLED12ヶを時計のように並べたものとした。点滅で天気・温度・湿度・気圧の4つの値を表示する。4拍(1小節)で1つの値を表示し、同じ値を3小節表示し、次の1小節は光らずに休む。これを4回繰り返して4つの値を表示する。


天気は1拍光って3拍休み、湿度は2拍光って2拍休み、温度は3拍光って1拍休み、気圧は4拍全部光る。
表示の順序は、天気->湿度->温度->気圧、とする。点滅を表にすると以下のようになる。


天気は、快晴・晴れ・曇り・雨、の4つのアイコンで表示し、他の値は11ヶのLEDで表示する。湿度は0-100%を10%きざみ、温度は0-30℃を3℃きざみ、気圧は990-1030hPaを4hPaきざみで目盛りを付けてある。
複数回光るものは、隣り合った2つのLEDが点滅して値を表示する。12時と1時の位置のLEDが点滅したときの値は以下のようになる。


電源は単3電池1ヶを3.3Vに昇圧して使う。コンデンサにゆっくり充電した電力で瞬間的にLEDを光らせるようにしてあるので、電源から流れる電流は非常に少ない。これで、電池をきれいに使い切ることができる。CPUは20pinのPIC18F14K22。消費電力を抑えるため、WatchDogTimerで256ms毎にスリープから起こして処理を行い、すぐにまたスリープするようにした。これで約1秒間に4回LEDを点滅させる。無駄な電力を使わないよう、CDSで周囲の明るさを検出し、暗くなったらLEDの点滅をやめるようにしてある。消費電力は非常に少ないので、使いかけの電池でも十分動くし、電池スペーサーを使えば単4電池も使える。


2018年3月8日木曜日

18.3.8 スピーカーボックスのステレオ化とアンプの低音強化


最初の試作で作ったボックスと最終版の試作のボックスを並べてステレオで聴けるようにした。アンプはPAM8012というDクラスアンプのモジュールを使うが、仲間がアンプの入力のフィルタが200Hzあたりから落ちていることを発見。小さなチップ部品にコンデンサを並列にはんだ付けして低音を強化した。


最初の試作は取り外せる前板以外はネジなしでボンドだけで組み立てたが、作業が難航することが判明し、最終版はネジを24本使うことにした。低音の強化に備え、左右の板の中央を棒で接続して振動を抑えるようにした。


アンプの入力のコンデンサは小さなチップ部品なので、追加するコンデンサの片足はアンプモジュールの入力ピンにはんだ付けし、反対側の足をチップコンデンサにはんだ付けした細い線に空中配線ではんだ付けした。細い線で空中配線しているので、となりとショートしたり切れたりする恐れがあり、そっと扱うようにしている。アンプの電源は電池だと面倒なので、USBから5Vを取り出すようにした。
材料費はスピーカーとボックスが1セットあたり1,000円くらいで、アンプはステレオで1,000円くらい、合計で3,000円程度であった
音量を大きめにすると低音もしっかり聴こえてくる。本格的なシステムとは重低音や高音など比較にならないが、BGM用としては音質・音量とも全く問題がなく、iPodやパソコンなどで好きなJazzを鳴らしている。