おうちでNTP ST1を運用しているのですが、表示機能がありません。ST1モジュールにLCDや7セグなどを付けて表示する事はできるかもしれませんが、基板のままだと埃まみれになるし、ケースを作るもの面倒なのでやってませんでした。
いろいろ思案して電波時計をそのまま使う方法を試してみました。
NTP ST1で使っているArduino(JJYS)でデコードしているJJY信号を普通の電波時計につっこんでみます。
逆に電波時計からJJY信号を拾うこともできるのですが、受信モジュールはノイズ対策でフォトカプラーでの絶縁を行って、物理的にもデジタル系から離したほうが安定するので、現在稼動しているシステムのデジタル系から信号をもらうことにしました。
電波時計のもともと付いていた受信モジュールを外して何かの基板から剥がした3Vでも動作する74LVC125をつけます。
普通の電波時計は電池の消耗を抑えるため、定期的に受信を行います。受信を行う時はPONをLにしてモジュールを動作させます。
取扱説明書には2時から3時間おきに受信とあるので、2,5,8,11,14,17,20,23時に合わせているようです。
12時や18時は炊事のために電子レンジなどを使っていることがあり、ノイズが出やすい時間なのでそれを外しているのではないかと思われます。クオーツなので6,12時間おきでも十分な気がしますが、合わせてるアピールなのかもしれません。
連続して信号を入れても大丈夫なのかもしれませんが、仕様が不明なので同じようにするため74LVC125を使います。Arduinoは5Vで動作させているので、レベル変換にもなります。
回路はこんなです。74LVC125の未使用回路の入力はGNDに落とします。
こんな風に接続します。
受信モジュールは40K専用になってます。東京では60Kはちょっと厳しいです。
これにArduinoに入れている信号を入れます。
電源入れて5分くらいで現在時刻が拾えました。
フォトカプラーを使って受信モジュールとArudinoを接続していて、信号が反転しているのですが、受信モジュールが反転している信号を出しているので、正しく受けられているようです。
汎用トランジスタの2N3904を使っているのはジャンク袋に大量に入っていたからです。それ以外の理由はありません。自分の世代の汎用トランジスタは2SC945でした。
秋月のキットでは受信モジュール側でトランジスタを二段にしています。これは反転のためで、受け側でも反転することで、元に戻すためのようです。
受信モジュールを外して消費電力小さくなってるはずなので、元通りに単三電池二本で使うことにしました。アダプターにすると損失の方が大きくなるのかもしれません。
ネットを検索すると同じSEIKOのNTPクロックなる商品がありますが、けっこう高価です。SEIKOのNTPクロックはST2以下ですが、これはNTP ST1相当の時計です。
元々ついていたHUAHONGの100uF 6.3Vの電解コンデンサー二つも予防的に交換しました。
電波時計が受信しにくいのは、
- コンクリートなどの遮蔽物で電波が弱い
- ノイズを発生するものがあって電波が壊れる
1の場合は窓際などの電波が入りやすいと思われる場所で試すのと、2の場合はノイズの発生源から遠ざける事が対策になります。パソコンなどはノイズ源になります。1の場合難しいですが、バーアンテナの向きも大切で送信所に直行するように置きます。電波は目に見えないので、やっかいです。AMラジオもほぼほぼ同じ傾向になるので、AMラジオで確認してみるのも良い方法です。
建物がコンクリートで電波が弱くても、ノイズが少なければ受信できるような気がします。
時計本体と受信モジュールを分離する事で、時計の向きを自由に出来るメリットもありましたね。