profile-photo

エクササイズ・ウォーキング用タイマー

題名は物々しいが、実は3分毎にピーッと鳴るだけのアラーム


「エクササイズウォーク」、ただひたすら歩くのではない。3分早めに歩いたら、次の3分はゆっくり歩く。緩急のリズムとメリハリが大切らしい。
時計やストップウォッチなど時間を計るものは色々あるけど、歩く時はそちらに専念したい。
そこで、アラーム・ブザーの登場と、いうわけであります。また、運動の邪魔にならないよう、軽く小さく、電池は長持ちで…と、要求も多い。
なので、消費電力を下げて、音量を大きくするのに苦労した。
CPUにはAttiny13Aを使った。そして、ウォッチドッグタイマー割り込みを使用して、常時はスリープさせている。
CPUの動作クロックは1.2MHz。Tiny13Aは内部に128kHzのウォッチドッグタイマ用の発振器を内蔵している。このクロックをカウンタで512K分周して4秒の割り込みを発生させている。
直接3分の割り込みを作らないのは、内蔵カウンタでは1024K分周しかできないからだ。4秒毎に起動して、この起動回数をプログラムでカウントすることで3分を得ている。
 「3分=180秒←180÷4=45」
なので、45回おきにブザーを鳴らせば3分間アラームになる。
ただ、これでは動いているか分からないので、4分の割り込み時についでに、クリック音(「カチッ」と言う音)を出すようにしてみた。

気になる消費電力は、
スリープ時  5.6uA
Beep発振時  5mA
tictac発振時 43uA
ということになった。
電源は、3.7V/40mA(Li-Poバッテリー)なので、計算上は4,000時間(=160日)程連続運転できることになる。実際に連続動作のテストはしていないが、
「かなり長いな〜」
と言う印象はある(^_^;

 

100

実装基板。
CPUは一番小さい、AtTiny13A-SSUだ。
回路は、CPUの1つのポートを使っているだけで、殆どの配線は、プログラム描き込み用のICSPコネクタ用だ。
圧電サウンダー用の回路(トランジスターと抵抗1個)が回路らしいと言えば言える(^_^;

200

今回初めて、配線ルールを6milにしてみた。
今までは怖くて、20milでやっていたが、ピン間にどうしても配線を通したくて、6milにしてみた。
エッチッングはかなり厳しかったが、何とかなったので、今後6〜10milあたりを使っていきたいと思った。
部品で一番大きいのが、ステップアップコイル。
実はこのためにケースも作り直すことになった。

300

部品は基本的に表面実装なので、部品面にあるのはコネクタやスピーカーなど。

400

ケースに収めたところ。
バッテリーは40mAHのリチウム・ポリマー電池。
まだ余裕なので、もう少し小さくすることもできそうだ。

500

最終的な外観。
3Dプリンタで印刷しているので、これ位小さいと積層痕が目立つ(^_^;

P10

プロトタイプの基板。
ユニバーサル基板を使用。
圧電ブザーは、Tiny13Aに直接繋いでいた。

P20

実装する部品の全て。
バッテリーは、150mAHのLi-Po電池を使っていた。

P30

プロトタイプの実装例。
ブザーと同時にLEDを点灯していた。

ウォッチドッグタイマ

そのまま訳せば、『番犬タイマ』。
通常は、時々タイマーのリセットを掛けておくようプログラムする。
番犬であるウォッチドッグタイマがタイムアップしたら、動作に異常があったとして、CPUにリセットを掛けるようにして使うのが本来の用途だ。
即ち、プログラムが何かのトラブルで永久ループに陥ったりなどした時に、このタイマーで再起動をかけ、異常に対処するのだ。産業用のコンピューター・システム等には必ずと言って良い程実装されている。
AtTinyは、こんな小さなチップだが、こう言ったメカニズムを持っているのが凄い!
今回は、これをスリープからの起動に使って、消費電力を下げるようにした。

圧電ブザーの大音量化

実は、最初は出力ポートに圧電ブザーを直接繋いでいた。
そうしたら、本機の依頼元(家族!)から、
「音が小さすぎて聞こえない。」と、クレームが付いた。
しばらく悩んだが、WEBを検索してDAISOの『防犯ブザー』が、小型で大きな音を出すことを知った。
そこで早速買ってきて、分解し、昇圧コイルをいただいた。
これで十分な大音量化を果たした。
回路は、回路図の中に一緒に掲載したので、ご覧ください。


参考までにハードウェア・ソフトウェアの情報を。ただしこれらは僕の覚えであり、正確に改版を反映していない可能性があります。この通り作って動かないからと、怒らないで欲しい。