でんかのブログ

テクニカル系ネタをメインに、つれづれなるままに書いていきます。

電波時計同期装置の作り方 まとめ

f:id:denkas:20150330002242j:plain

前回の日記で書いた、1年越しで完成したNTPによる電波時計同期装置の作り方をまとめておきます。(`・ω・´)

ハードウェア編

材料

  • 1/4W炭素皮膜抵抗 100円/100本くらい
    1kΩ × 4
    15kΩ × 1
    1MΩ × 1
    20MΩ × 1
  • セメント抵抗 30円/本くらい
    5W1Ω × 1
  • ダイオード 200円/50本くらい
    1SS270A × 2
  • セラミックコンデンサ 10円/本くらい
    10pF × 2
  • クリスタル(水晶発振子)100円/本@秋月
    40kHz × 1
  • トランジスタ 200円/20個くらい
    2SC2120-Y × 1
  • 電界効果トランジスタ(FET) 100円/1個くらい
    パワーMOSFET 2SK2232 × 1(2SK4017でも可)
  • LED 300円/100本くらい
    緑色LED × 1
    赤色LED × 1
  • ロジックIC 40円/個くらい
    74HCU04 × 1
  • ICソケット 60円/個くらい
    ICソケット14ピン × 1
  • フェライト棒 250円/本くらい
    10mm径14cmフェライト棒 × 4本
  • エナメル線
    0.35mm径 50m
  • ユニバーサル基板
    適当なサイズを1枚
  • ピンソケット 20円/本くらい
    40ピン分くらいを1本
  • FT245RL USBパラレル変換モジュール 980円@秋月

必要な道具

  • ハンダゴテとハンダ
  • テスター

あると便利な道具

製作手順

  1. コイル製作
    フェライト棒をテープや接着剤で繋げてコイルをひたすら巻く
  2. 以下の回路図と実体配線図を参考に部品を取り付け配線する
    f:id:denkas:20150330002248j:plainf:id:denkas:20150330002250j:plain
    ICソケットやピンソケットなど、壊れにくいモノからがオススメ(`・ω・´)
    FT245RLは直接ハンダ付けせず、ソケット経由で取り付け(;´∀`)
  3. 配線確認
    テスターで配線を念入りに確認する
    特にVCCとGNDがショートしていないコトを確認
  4. 動作確認
    PCのUSB端子に接続し、緑色のLEDが点灯すればとりあえず動作OK

ソフトウェア編

動作環境

  • NTP設定済でUSBが使えるPC
    当たり前ですが…(´・ω・`)
  • libusbが使えるLinuxデュストリビュージョンの環境
    僕はCentOS6を使いました(´・ω・`)

インストール手順

  1. ライブラリのインストール
    以下のサイトからlibftdiのsourceをダウンロードしてコンパイル
    libFTDI » FTDI driver download - Open Source
    CentOS6だとimake関連でハマりました…(´д`)
    エラーで文句言ってきた内容を無理やり回避するとコンパイルできましたが…
    CentOS7だと問題無いです(´・ω・`)

  2. 制御ソフトウェアのインストール
    以下のサイトから制御ソフトウェアをダウンロードしてコンパイル
    http://www.hi-ho.ne.jp/denkas/library/jjyd.zip
    コンパイルコマンドラインは以下の通り

     # gcc -o usb_jjy -I. -lftdi1 usb_jjy.c  
     # cp usb_jjy /usr/local/sbin/  
    

    ちなみにアーカイブにはCentOS6用のコンパイル済バイナリが入ってます。

  3. サービス登録 アーカイブの/etc/init.dに入っているjjydをコピーして登録

     # cp jjyd /etc/init.d/  
     # chmod +x /etc/jjyd  
     # chkconfig --add jjyd  
    
  4. 起動 コイルを基板に接続してからjjydサービス起動

     # service jjyd start
    

    0秒から赤色LEDが点滅し始めたら完成!(≧∀≦)
    電波時計を受信モードにしてみましょう(゚∀゚)
    f:id:denkas:20150330002244j:plain