Raspberry Piの時計合わせ

屋外でRaspberry Piを使う場合に、もう1つ問題になることがある。Raspberry PiのSoC(CPUのようなもの)には、バッテリバックアップされた時計がない。電源を切ると時計が止まってしまう。このため、Raspbian(Raspberry PiのOS)では、ネットワークを介して時計を合わせている。ネットワークに接続されていない環境では、時計合わせができない。非ネットワーク環境でも正しい時刻を保つために、別途時計を取り付ける必要がある(屋外に持ち出したときの記録時刻が狂ってもかまわないなら、時計は無視してよい)。

ここでは、秋月電子で売っている「RTC-8564NB」というI2C接続のRTC(時計)モジュールを使った。このモジュールにはバッテリバックアップ機構がないので、簡単に「RTCモジュールを乾電池で動かす」ことにした(きちんとしたバックアップ機構を入れるのは色々と面倒なので)。RTCモジュールの消費電流は極めて少なく、乾電池を使っても数年は動くだろう。I2Cインタフェースについては、本連載第3回を参照してほしい。

追加するパーツ(秋月電子で入手可能)
リアルタイムクロック(RTC)モジュール
電池ボックス 単4×2本用(プラスチック・リード線タイプ)

秋月電子で売っているRTC(時計)モジュール。このモジュールにはバッテリバックアップ機構がない

バックアップ回路を作るのは複雑なので、今回はバッテリ動作にした。単4形乾電池なのは小型化を重視したためで、単3形乾電池でもかまわない

I2Cインタフェースは信号線×2と電源だけなので、複数のデバイスでも並列に接続しておけばよい。ブレッドボードの配線は、前回のものを変更して時計モジュールを追加する。配線は「7本追加」と「1本変更」だ。ちなみにブレッドボードに刺さっているジャンパーワイヤーは、真上に引き上げれば抜ける。

左側は前回と同じ。ただし、配線数が増えたので緑のワイヤーを1つ上に付け直している。青い枠にLPS331(気圧センサー)、緑の枠にRTC-8564NB(時計モジュール)を取り付ける。上の黒い四角枠のどちらかに電池ボックスのマイナス(黒線)、赤い四角枠のどれかに電池ボックスのプラス(赤線)を取り付ける。左下の数字はRaspberry Piと接続

一通りの配線をすませたブレッドボード。電池ボックスのケーブルは外れやすいので、テープで留めておくとよいだろう

参考例。RTC-8564NBを電気二重層コンデンサでバックアップ。この程度でも、電源につながずに数日はカレンダーを保持できた。部品数が増え、はんだ付けが必要な点がネック

ブレッドボードとRaspberry Piをジャンパーワイヤーで接続するときの対応。前回と同じだが、間違えると故障につながるので、ゆっくり確実に配線すること