前回に引き続いてATmega328をArduinoから取り外して動作させます。 今回は3.3 V, 8 MHzで動作させることで、 低消費電力かつ低価格のデータロガー(電圧などをSDカードに保存する)を作製します。
まずは周波数と基準電圧の設定を決めます。 Arduino UNOへのスケッチの書き込みでは 「tool→board→Arduino UNO」と設定しています。 この時には周波数と基準電圧は16 MHz, 5 Vとなっています。 今回は8 MHzと3.3 Vで動作させるため、 この設定を「tool→board→Arduino Pro 3.3 V, 8 MHz」として スケッチを書き込みます。Arduinoから取り外さずに使った場合には 100msec設定→実際は50msecのように2倍の速度で動きます。
前回同様に9,10番端子に水晶発振子を接続します。8 MHzです。 7(Vcc),20(AVcc)番端子には3.3 Vの電源を入力します。 今回は電源として秋月電子の 昇圧型DC-DCコンバーターを用いました。単三電池一本でも動作します。
まず点滅の周期を1000 ミリ秒(1秒)として、 基準周波数が8 MHzに変更されているか、3.3 Vでの 動作が可能かを確認いたしました。
ここからは上記のシステムを用いて、 アナログ電圧の計測値を連続してSDカードへ保存するシステムを試作します。
データを保存するためのSDカードとして、 前回と同様にマイクロSDカードを用いました。 近くの家電量販店でSDカードへの変換アダプタとセットになって 売られておりましたので、この変換アダプタに はんだ付けをしてマイクロSDカードの差し込み口として使用することにいたしました。 コネクタの作製や SDカードの端子番号に関して他のサイトで勉強させていただきました。
SDカードへ保存するためのシステム全体の回路図を示します。 3.3 VをATmega328とSDカードの両方に供給する、GNDを共通とする、 SDカードの端子番号を間違えない(特にブランクのB番端子)、 点が間違いやすいところでしょうか。
プレッドボード上で組み立てた回路を示します。
スケッチはこちらからダウンロードできます。 このプログラムではアナログ入力端子0番(AI0)の電圧を3.3 Vを基準として読み取っています。 動作確認のため、SDカードへのアクセス時にD9番ピンをHIGHとしました。
動作試験では電源として用いている単三電池2本の電圧が、 測定時間に伴ってどのように減っていくかを測定いたしました。
実際の測定データです。ATmega328単独での消費電流は 8 MHz, 5V時に5 mA程度ですので3.3 V時には3 mA程度だと思われます。 SDカードの消費電力はわかりませんが、いずれにせよトータルで20 mA以下ではないかと 思います。電池は一本2000 mAh程度ですので 100 時間程度の連続測定が可能と予想されます。
ここで公開するアイデア/装置は安全性を保障しておりません。 用途に応じた設計を行い、十分な安全検査を行ってからご利用ください。 本サイトの情報の営利目的での利用はご遠慮ください。 本サイトの内容の無断転載を禁じます。© 2011 TYK