Arduinoで作ったRTC機能付SDシリアルデータロガー

※記事内に商品プロモーションを含む場合があります

前回作った、データロガーをベースにArduinoのユニバーサルプロトシールド
に作り直しました。

Arduinoで作ったRTC機能付SDシリアルデータロガーでロギンク中

SDシリアルデータロガーのハード

ハードは以下の構成です。
SPI接続のSDカード
I2C接続のリアルタイムクロックIC(RTC-8564NB)
デジタル9番ピンに接続したLED

今回もSDカードソケットが無かったのでマイクロSDからSDに変換する
アダプタを使用しました。

SDシリアルデータロガーのソフト

ソフトは前回の物をベースに、RTCが付いたのでRTC関連機能の追加と
RTCの時計を合わせる必要があるのでシリアルUART経由で
時刻合わせなどが出来るコマンドも実装しました。

今回はRTCが付いたので、データの前に時刻を入れる様にして
初期化時には日時を入れる様にしました。

また、SDへの記録はデフォルトでは10秒おきに記録されます。
この記録周期(タイマーインターバル)もシリアルから1秒~99秒の範囲で
設定できる様にしました。

LEDはほとんど光りません。

SDやRTCの初期化に失敗すると常点、LEDが光りっぱなしになります。
リセットボタンを押すか、電源を再投入するまで動作しなくなります。

また、シリアルデータ受信時やSD記録時と一瞬光ります。

記録データはSDカード内のDATALOG.TXTに保存され
ヘッダー(日時など)以外はCSV形式となっているので
エクセルなどで扱いやすいです。

まとめ

今回のロガーのスケッチすでに改造してしまった為、非公開とします。
Arduinoで動作させると消費電力が50mAと高めで大きいので小さな基板に
移植しましたのでスケッチは次回紹介したいと思います。