電波時計の時刻同期2015年01月25日

Arduinoで電波時計の時刻を合わせる

居間にある電波時計の時刻合わせが行われなくなった。JJYの電波が出ていないのかと思ったらそうではないようです。ネットで調べたらちゃんと送信されていました。関東地方は福島のおおたかどや山標準電波送信所から受信できます。ということは電波時計が老朽化して受信感度が低下したのか、電波受信部分の故障が考えられるわけでArduinoを使ってJJYシュミレーターを作成し、確認することにしました。
東北地震、福島原発事故の時、福島のJJY送信所が停波していて時計が合わせられない事態になった時に作製したArduinoスケッチをまた引っ張り出してきました。このArduinoスケッチはNTPサーバーから正確な時間を取得して40KHzのJJY信号を発生させることが出来ます。受信感度が低下だけならば時刻合わせができるはずです。詳細はこちらのサイトこちらのサイトで紹介されています。この回路は250mAぐらい電流を食いますのでUSBバスパワーではなくACアダプターを使用するほうがよいでしょう。
使用するものはArduinoまたはArduinoクローンとEthnetシールド(または互換品、私は互換品のWIZ812MJです)、LCD、LEDとループアンテナ(単線を4,5回巻いたもの)です。D3 PIN→LED→ループアンテナ→グランドと接続します。LCDはNTP通信の確認用ですのでパラレルで接続しても、I2C接続でも、LCDなしでもOKです。IPアドレスなどネットワーク情報はDHCPサーバー(BBルーター)から自動取得しますので電源を入れて数秒でLCDに正確な時刻が表示さればArduinoはNTPサーバーに時刻同期されています。その後、10分間隔でNTPサーバーと同期を行います。JJY信号はループアンテナのLEDが点滅していれば出力されています。電波時計を近くに持ってきて強制受信ボタンを押ししばらく(5分~10分程度)待ちます。
結果、時刻合わせが出来たので電波時計の受信感度が低下したという結論です。大型文字のデジタル時計はあまり気に入ったデザインのものがありません。故障ではないのでまだまだ使用できそうです。居間では電波条件が良くないことは知っていましたが大型液晶TVなどによりさらに悪化したのかもしれません。