Nixie-Röhren-Uhr-Shield NCS314 für Arduino UNO/MEGA – Kompatibilität mit IN‑14/IN‑12
Komponenten und Zubehör
| Komponente | Menge | Hinweis |
|---|---|---|
| Nixie-Röhren-Shield IN-14 NCS314 für Arduino | 1 | Shield für Nixie-Röhren IN-14 |
| Nixie-Röhren-Uhr-Shield IN-12 NCS312 für UdSSR-Nixie-Röhren | 1 | |
| Arduino UNO | 1 | Shield unterstützt Arduino UNO/Genuino oder Arduino MEGA |
| Arduino Mega 2560 | 1 | Shield unterstützt Arduino UNO/Genuino oder Arduino MEGA |
| Netzteil 12 V 1 A | 1 | |
| Acrylgehäuse für Shield NCS314 (Modell ACNS314) | 1 | Vollständig kompatibel mit Hardware-Versionen v1.X – 2.X |
Apps und Online-Dienste
- Arduino IDE
Projektbeschreibung
Überblick
Nachdem wir Zugang zu einer fast unerschöpflichen Quelle hochwertiger sowjetischer Nixie-Röhren (IN-12, IN-14, IN-18) hatten, entstand die Idee, ein einfaches Display als Shield für Arduino zu bauen. Damals wussten wir noch nichts über den Umgang mit solchen Röhren.
Schnell fanden wir im Internet eine Schaltung zum Betrieb der Röhren:

Das Ergebnis war beeindruckend – ein kleines Wunder. Sofort begann die Fotosession:

Entwicklungsentscheidungen
Am nächsten Tag diskutierten wir das Konzept: Um Kosten zu sparen, war zunächst ein dynamisches Multiplexing geplant. Später entschieden wir uns jedoch für einen vollständig statischen Anzeigemodus. Bei IN-14-Röhren ist der visuelle Unterschied kaum wahrnehmbar, aber bei IN-18-Röhren führt der dynamische Modus zu einem sichtbaren Helligkeitsverlust und dem sogenannten „Blue-Spots“-Effekt:

Im dynamischen Modus leuchtet jeweils nur eine Röhre (oder eine kleine Gruppe) zur gleichen Zeit. Beim statischen Modus sind alle Röhren dauerhaft aktiv.
Weiterhin sollte das Shield Daten vom PC empfangen können, um Enthusiasten die Erstellung eigener Anzeigen (z. B. ungelesene Nachrichten, Spielrunden in Fallout) zu ermöglichen.
Hardware-Auswahl
Für das Schalten der Kathoden (Ziffern) wählten wir Schieberegister mit SPI-Schnittstelle, um Mikrocontroller-Pins zu sparen. Aufgrund der hohen Anodenspannung (bis 200 V) kamen nur wenige ICs in Frage: HV513, HV5812, HV5122. Wir testeten alle und entschieden uns für den HV5812 (in neueren Shield-Versionen NCS314 V2.X und NCS312 V1.X wird der HV5122 verwendet). Dieser 20-Bit-Schieberegister kann zwei Röhren gleichzeitig steuern.
Für sechs Röhren werden drei dieser ICs in Reihe geschaltet. Ein einzelner SPI-Datensatz genügt, um alle Anzeigen zu aktualisieren; der Mikrocontroller kann währenddessen andere Aufgaben erledigen oder schlafen.
SPI-Datenübertragung
Der Arduino überträgt pro SPI-Transfer 8 Bit. Für 60 Bit (6 Röhren × 10 Kathoden) ist das nächstgrößere Vielfache von 8 die 64 Bit. Daher wird eine 64-Bit-Variable (unsigned long long) gebildet und durch Rechtshifts in acht 8-Bit-Blöcke zerlegt:
SPI.transfer(var64);
SPI.transfer(var64 >> 48);
SPI.transfer(var64 >> 40);
SPI.transfer(var64 >> 32);
SPI.transfer(var64 >> 24);
SPI.transfer(var64 >> 16);
SPI.transfer(var64 >> 8);
SPI.transfer(iTmp);
Realisierte Funktionen

- Statische Anzeige über Schieberegister
- Slot-Machine-Effekt (verhindert Kathodenvergiftung)
- Standard-Uhrfunktionen: Uhrzeit, Datum, Wecker
- Echtzeituhr (RTC) mit Pufferbatterie CR1220 (ab Version V1.2‑2.X: hochpräziser DS3231)
- Temperaturmessung mit DS18B20 (°C oder °F)
- Infrarot-Fernbedienung über TSOP4836 (nur Arduino Mega, getestet mit Sony RM-X151, 36 kHz)
- Zeitsynchronisation per externem GPS (nur Mega)
- Einfaches Menü
- Separate Steuerung der Doppelpunkte (oberer/unterer Punkt)
- RGB-Hintergrundbeleuchtung mit sanften Farbübergängen
- RTTTL-Klingelton für Wecker (Ring Tone Transfer Language)
- Slot-Machine zum Schutz der Anzeigen
- Selbsttest (alle Ziffern 0‑9, LEDs, Farbwechsel, Sound)
Nicht vollständig realisierte Aufgaben
- Lichtsensor







Quellcode
Der vollständige Arduino-Sketch (C/C++) ist auf GitHub verfügbar:
https://github.com/afch/NixeTubesShieldNCS314/
Der Code umfasst Initialisierung, SPI-Kommunikation, Menüsteuerung, RTC-Handling, Temperaturmessung, IR- und GPS-Synchronisation, RGB-LED-Effekte, RTTTL-Player sowie Selbsttest-Routinen.
Schaltpläne



Herstellungsprozess
- Arduino POV-Uhr: Persistence-of-Vision LED-Display selbst bauen
- Web-gesteuertes DMX-Lichtsystem – Arduino Master Controller
- DIY Arduino Word Clock – Elegante Wortuhr mit RTC & Schieberegistern
- Arduino Echtzeituhr für islamische Gebetszeiten bauen
- Bluetooth-gesteuerter Arduino-Spybot bauen – Überwachungsroboter mit IP-Kamera
- Einen eigenen LED-Master-Clock mit Alarm bauen – aus 12 Metern Entfernung ablesbar
- Elegante Nixie-Röhren-Uhr im maßgefertigten MDF-Holzgehäuse mit Arduino bauen
- Präzise 7-Segment-Uhr mit Arduino Pro Mini & DS1302 RTC – Selbstbau
- Drahtloses Arduino-Programmier-Shield mit HC-05 Bluetooth – Kein USB-Kabel nötig
- Zuverlässigen Wecker mit DS1302 RTC und Arduino UNO bauen