Top Page Index About Link Mail Form このページの応用機器製作します

WiFiモジュールで NTP補正をする時計

2015.10.12


概要

時刻を自動補正する時計を自作する場合、時刻の取得方法は次のようなものが考えられます。

  1. 電波時計(NICTの日本標準時電波を受信する)
  2. GPSの時刻情報を使う
  3. インターネット上の NTPサーバから時刻データを取得

1の電波時計方式はいくつか作りましたが、最近はノイズ源が増えて同期がとれない場合も多くなってきました。2のGPSモジュールからその時刻情報だけ使う方法もありますが、窓際など空が見える場所でないと安定して電波が受信できません。3のネットにつなぐ方法は、以前は回路やソフトウェアが大掛かりになるので採用しませんでした。

最近、ESP8266を使った安価な WiFiモジュールが出てきました。ATコマンドで比較的簡単に TCP/IP, UDP接続ができます。これを使ってHTTPサーバ内蔵・赤外線リモコンタイマーというのを作ってみました。なかなか具合が良かったので、この回路から時計部分だけ取り出してまとめてみました。一日二回、内蔵した WiFiでインターネット上の NTPサーバから時刻情報を取得して自動補正します。

NTP Clock システム図

単位 RTC内蔵マイコンと WiFiモジュール、あとは 7SEG LED表示器があるだけです。シリアルフラッシュROMも内蔵していますが、直接時計には関与していません。

→回路図(PDF)

→プログラムソース

一応プログラムソースも公開しますが、当然無保証です。あまり褒められたコーディングをしておりませんし、無駄な部分も多いです。ATコマンドや NTPで時刻取得する方法などの参考に。

動作中の基板。7SEGは時、分、秒の6桁にしてみました。青色は飽きたのでオーソドックスな緑色。画像だとピュアグリーンに見えますが、実際は黄緑色です。

WiFiモジュールは一日二回の時刻補正以外はスリープさせています。

内部その2。