HakoHiro が 2020年05月04日14時27分36秒 に編集
ブロック図修正
本文の変更
# 概要 オレンジ色に光るレトロなニキシー管で時計を作ろうとしています。 - コンセプト - 6Digit表示 hh:mm:ss - ニキシー管不具合品が交換可能な事 - 家庭内wifiネットワークでNTPサーバーから時刻取得可能な事 - 高圧180Vを使用するので、自分利用に限定(従ってソフトもあまり凝らない事) 自分用であっても、安全に注意する。 - スタティック点灯(ダイナミック点灯はにじみ等色々問題発生する可能性あり) ダイナミック点灯でも省配線はさほど期待できない為もある - 直接180Vをスイッチング出来るIC HV5522をSPI通信で制御する # ニキシー管とは 50年~60年くらい前に主流だった表示器です。約170V以上の電圧をかけると電極の周りのガスがオレンジ色に光って、電極の形に応じて数字や文字を表示します。 現在では全て生産停止、1990年代までに生産されたもののデッドストックで旧ソ連製のものが多いです。 今回は、その旧ソ連製の IN-2と言うニキシー管が比較的安かったので、それを6本使いします。 # 部品構成 - ニキシー管: IN-2 ✕ 6 - 180V電源:ニキシー管専用電源キット HVPS_001 (nixie-tube.com) - 12V ACアダプター - スイッチングIC: Supertex HV5522 ✕ 2 カスケード接続 32-Channel Serial to Parallel Converter With Open Drain Outputs - HV5522用 基板withソケット[PLCC44-DIP2P] ✕ 2 aitendo - 4ビット双方向ロジックレベル変換換モジュール 秋月電子通商 - ESP32 DevKitC 秋月電子通商 ## 全体ブロック図


スタンドアロン時は、ESP32の電源は180/5Vユニットから取る。 ## ニキシー管取り付け部  ベニア板と接続PIN取付穴をレーザーでカット アクリルブロックに接続PIN,絶縁ベニア板を組み込む   ## HV5522 HV5522は、180Vを直接スイッチングできるICです。SPI経由でアクセスします。SPIですので、信号線は少なく出来ます。 当初、高圧フォトカプラを考えていたのですが、180V の配線量が多くなるので、本ICにしました。 それでもIN-2のアクセスは1個あたり11本信号線が必要になるので、配線の塊になってしまいました。 プリント基板を起こせばよいのですが、自分利用に限定しているので、このままでまとめようと思います。 # ソフトウェア ESP32のSPI通信を利用、まだプロトタイプ状態ですが、エッセンス部分を紹介します。 ``` /* * HV5522を2個使用 * Nixie#1:Sec #2:Sec*10 #3: min >> HV5522#1 * Nixie#4:min*10 #5:hr #6:Hr*10 >> HV5522#2 * ESP32 VSPI を使用 * SCLK #18 * MOSI #23 * MISO #19 HV5522#1 * これをHV5522#2 MOSIにカスケード接続 * CS(SS) #5 */ #include <Arduino.h> #include <SPI.h> unsigned long numBit[10]; unsigned long dispUpper3; // 4byte unsigned long dispLower3; void setup() { SPI.begin(); SPI.setFrequency(700000); // 7000000では動かない SPI.setDataMode(SPI_MODE2); dispLower3 = 0x00400401; //321 dispUpper3 = 0x00101002; //132 SPI.setHwCs(true); SPI.write32(dispUpper3); // 右3Digit SPI.write32(dispLower3); // 左3Digit SPI.setHwCs(false); } void loop() { } ``` # 今後の課題 - 筐体: この配線の塊をケースに入れなければならない。 幸いにして、レーザーカッターがあるので、シナ合板でケースを作る予定。 - ソフトウェア:まだプロトタイプ状態 - ネットワークにて時刻取得(NTPサーバー: Network Time Protocol) 別プログラムで時刻取得は確認しているので、結合する。 また、スマホからアクセスして調整できるようにする。