ニキシー管時計の製作

目次

作ったもの

概要

ニキシー管時計を製作した。2021年頃に完成させたものなので今更ではあるが、製作時のメモから主要な内容を記事にまとめておく。

複数の作例や、そこで使用されていた各ICのデータシート、アプリケーションノート等を参考に回路を設計した。ダイナミック点灯方式を採用し、ニキシー管の制御にはアノード・カソードともにシフトレジスタを用いることでArduino Nanoのピン数に収まるようにした。時刻の取得にはRTCモジュールではなく、その他の数字を表示することも考慮してRaspberry Pi Zero Wを使用した。
回路設計が完了した後はプリント基板の設計をした。制御用の回路は部品点数が多くなったため、自動配線ツールを利用した。PCBWayで注文したプリント基板に各部品を実装し、最後に基板底面のサイズに合わせたケースを3Dプリンタで出力した。

困った点

製作時に困った点とその対応を以下にまとめた。

昇圧されない

最初はNPN型のトランジスタを使用していたが、PNP型に変更した。また同一のICが使用された昇圧回路キットと自作の回路を比較し、分圧回路の抵抗値を変更した。

明るさが安定しない

シフトレジスタをストレージレジスタ内蔵の74HC595に変更した。

ゴーストの出現

ニキシー管のアノード側の接地抵抗の値を大きくした。また下記の制御順に設定し、それを切り替える時間を調整した。
切り替えの時間については「人の目の時間分解能は約50msから100ms程度(wiki)」であることから、ダイナミック点灯の1ループが50ms未満となれば良いはず。時間が短すぎると電荷を逃しきれずゴーストが発生する一方、長すぎるとちらついて見えるため、調整が必要となる。

【制御順】

  1. カソード(数字)の指定
  2. アノード(点灯管)の指定 -> 点灯
  3. アノードのリセット -> 消灯
  4. カソードのリセット

ラズパイによるニキシー管の制御

表示する数字の指定とニキシー管の制御をラズパイに集約しようとしたが、綺麗に点灯しなかった。Arduinoと比較してラズパイのsleepの精度が低かったため、ニキシー管の明るさが安定しなかったと思われる。一方で明るさを安定させるためにsleepの時間を長くするとゴーストが出現してしまうため、以下のように機能を分担させた。

【機能の分担】

ラズパイからArduinoへの通信ができない

ラズパイとArduinoのGNDを共通化できていなかったため修正した。また、通信の方法をソフトウェアシリアルからハードウェアシリアルに変更した。

資料まとめ

回路図

制御用

マウント用

PCB

制御用

マウント用

コード

Arduino

Raspberry Pi 以前は新型コロナウイルス感染症の新規陽性者数(日別)を表示していたが、データ集計が終わっていた。 そこで、ビットコインの最終取引価格を表示する機能に変更した。

その他画像

回路の仮組み

部品の配置確認 部品が干渉するなどの問題がないかを実際に並べてみた様子。
激落ちくんの上に印刷した紙を貼り付けて確認した。

到着した基板

リンクまとめ

参考

利用ツール等