Les affichages à tubes Nixie sont surtout connus pour les appareils de mesure et les machines à calculer électroniques des années 1960 et 1970. Ce tutoriel montre comment utiliser ces tubes culte pour construire une montre avec affichage de la température intégré.
Le projet
Convient à : des bricoleurs électroniques engagés ayant des connaissances d’Arduino
Coût : (y compris les tubes, les frais de douane et d’expédition) env. 100.-€
Temps nécessaire :
- Assemblage des platines : 2 heures
- Fabrication des platines : 1 heure
- Installation du logiciel : 1 heure
Ce qui est nécessaire :
- les pièces de ce panier reichelt
- en plus : 4 tubes d’affichage IN-12b, K155ID1 décodeur décimal
Outils : fer à souder, tournevis, pince coupante, appareils pour la fabrication des platines (flasheuse, installation de gravure), perceuse de platines
Travailler avec des tensions élevées

La technique d’affichage à tubes Nixie nécessite une tension d’anode de 170 V CC pour permettre l’allumage des tubes. Cela dépasse largement la spécification des tensions non dangereuses, c’est-à-dire que cela peut être potentiellement mortel.
Il y a une séparation galvanique avec le réseau 230 V, mais si vous touchez le générateur de haute tension placé sur l’écran et que vous atteignez deux points sous haute tension, vous le sentirez clairement.
C’est pourquoi il faut faire attention lors de la manipulation du circuit imprimé. Après l’arrêt de l’horloge, une tension supérieure à 60 V persiste sur les composants pendant environ deux minutes. Il ne faut pas toucher à la platine pendant ce temps. Si l’on doit mesurer sur la platine d’affichage, il faut suivre la vieille règle de l’électricien : « Une main sur l’objet à mesurer et l’autre main dans la poche du pantalon ». De cette manière, le courant ne peut pas circuler dans le corps. Il faut donc faire preuve de prudence lorsque l’on travaille sur la platine d’affichage.

Comment obtenir l’heure, la date et la température
Ce projet a vu le jour en raison d’une réception DCF de plus en plus mauvaise : la multitude d’appareils compatibles WLAN dans la maison et dans le voisinage rend la réception du signal à ondes longues sur 77,5 kHz de plus en plus sujette aux interférences. Alors, pourquoi ne pas utiliser l’un de ces perturbateurs et récupérer l’information horaire pour commander l’horloge ? Il en résulte une horloge qui, en plus d’afficher l’heure, indique également la date et la température ambiante.
Le fournisseur de l’heure et de la date est un serveur NTP quelconque sur Internet. Un module ESP8266 (WEMOS D1 Mini) établit la connexion avec Internet et commande les tubes Nixie en même temps. La température est mesurée par un capteur DS18B20.



Alimentation de la montre Nixie
La description du circuit commence par l’alimentation. Comme les tubes Nixie nécessitent une tension d’alimentation assez élevée de 170 V, il est impossible d’utiliser une alimentation standard. La source de tension est un bloc d’alimentation à fiche de 12 V, dont la consommation est de 300 mA. Un régulateur à découpage permet de générer les 5 V nécessaires à la logique TTL. Un convertisseur step-up transforme les 12 V du bloc d’alimentation à fiche en 170 V / 20 mA pour les tubes Nixie.
Attention ! Comme toujours, il faut faire attention à la tension d’alimentation. Comme le courant est si faible, il n’y a pas de danger immédiat de mort. Néanmoins, les 170 V rendent le choc vraiment perceptible.
Le convertisseur step-up est une source potentielle de perturbations HF : il pourrait arriver que le WEMOS D1 Mini perturbe les signaux carrés du convertisseur. C’est pourquoi le convertisseur est placé sur une platine séparée et le WEMOS D1 Mini sur une autre. Les deux platines sont montées en sandwich l’une sur l’autre. Le redresseur à l’entrée de l’alimentation sert de protection contre l’inversion de polarité, car les câbles des blocs d’alimentation enfichables ne sont pas toujours occupés de la même manière.
Platine d’affichage

Comme tube d’affichage, j’ai utilisé le IN-12b, qui est facile à se procurer. Le décodeur TTL BCD à décimale SN74141 n’existe plus depuis longtemps et il est plutôt rare de le trouver sur eBay. Il existe cependant un substitut russe, le K155ID1, également disponible sur eBay.com. Attention toutefois aux prix des tubes, car ils sont indiqués sans droits de douane ni taxe à l’importation. Cependant, ceux qui craignent l’importation directe de l’Est peuvent aussi trouver les deux composants chez des revendeurs de tubes allemands.
Comme le WEMOS D1 Mini ne possède que peu de ports de sortie (20 seraient nécessaires), j’ai opté pour une commande sérielle des décodeurs Nixie. Trois registres à décalage de type 74HC164 convertissent l’information série en une information BCD parallèle. Au total, 24 bits sont émis à chaque processus d’écriture. Toutefois, comme l’environnement ARDUINO ne prend en charge qu’une sortie série de 8 bits, le logiciel a dû être adapté en conséquence. Ainsi, trois ports ont suffi pour la commande de la platine d’affichage ; la génération de haute tension se trouve également sur cette dernière. Un potentiomètre multitours permet de régler avec précision la tension anodique de 170 V.
L’IN-12b doit impérativement être placée dans une douille et ne doit en aucun cas être soudée directement. Les douilles d’origine pour l’IN-12b conviennent à la platine. Celles-ci ne sont en fait pas prévues pour le montage sur platine, mais pour le câblage libre. Cependant, elles peuvent être montées dans la platine grâce à des trous adaptés. J’ai scié les languettes de fixation des douilles afin que la platine ne s’agrandisse pas trop.

Carte processeur


Même si la carte processeur est trop grande, elle correspond exactement à la taille de la carte d’affichage, ce qui permet aux deux cartes de se superposer proprement. J’ai utilisé l’espace libre pour un champ d’expérimentation ; il reste finalement trois ports libres (1xAnalog, 2xDigital) qui peuvent être utilisés librement selon les besoins.
Lorsque j’ai conçu le circuit, je pensais pouvoir utiliser le WEMOS D1 mini pour commander directement les registres à décalage. Malheureusement, le niveau de sortie du module WLAN était réglé trop bas, ce qui faisait que les registres à décalage donnaient des résultats arbitraires lorsqu’ils étaient commandés par les 3,3 V du WEMOS D1 mini. Ce problème a été éliminé grâce à un circuit intégré de déclenchement de Schmitt : le CD40106 contient six inverseurs de déclenchement de Schmitt qui ont transformé les signaux en véritables signaux TTL. Deux d’entre eux ont toujours été connectés en série afin d’éviter que les signaux n’arrivent pas inversés aux registres à décalage.
On trouve sur la face inférieure de la platine deux LED, deux boutons-poussoirs et le capteur DS18B20. L’un des boutons permet de réinitialiser l’appareil et l’autre de passer le logiciel en mode de configuration WLAN. Le mode de configuration est indiqué par une LED. La deuxième LED indique que la montre a réussi à se connecter au réseau WLAN.
La carte WEMOS est équipée d’une LED bleue qui ne peut pas être désactivée et qui clignote à chaque transmission de données aux registres à décalage. Pour éviter toute irritation, il est possible de retirer la LED de la platine sans problème.

Logiciel
Le logiciel de l’horloge Nixie est entièrement programmé dans l’environnement Arduino, y compris les bibliothèques utilisées. En raison de leur qualité, il a fallu accorder une attention particulière aux sources d’erreurs possibles et les documenter avec des liens. Ces liens ont permis à l’horloge de fonctionner correctement.
Pour éviter les erreurs dans les différentes bibliothèques, il a fallu les reprogrammer en conséquence : pour le contact avec le serveur NTP, il fallait utiliser une bibliothèque qui ne calcule pas la date, tandis que pour le calcul de la date, il fallait utiliser une autre bibliothèque qui ne pouvait pas établir de contact avec le serveur NTP.
Il est important de savoir : Les serveurs NTP ne fournissent pas de données absolues sur la date ou l’heure. Ils représentent uniquement le nombre de secondes écoulées depuis le 1^(er) janvier 1970, ce que l’on appelle le temps UNIX (UTC). La date et l’heure correctes doivent encore être calculées à partir de ce chiffre.
Mais comme l’UTC ne connaît pas l’heure d’été et l’heure d’hiver, et que les années bissextiles sont mal calculées, ces facteurs doivent également être pris en compte dans une programmation appropriée.
Un autre problème était le capteur de température, dont la bibliothèque ne semblait pas prendre en charge la boucle Do/While standard de l’environnement ARDUINO. Il s’en est suivi deux valeurs nulles et un plantage complet du système. Ces expériences seront épargnées aux éventuels reconstructeurs, car toutes les erreurs ont été trouvées et contournées au cours de ce tutoriel, de sorte que le logiciel devrait désormais fonctionner avec les librairies documentées dans le code source. Ce logiciel est mis à disposition dans sa version complète à l’adresse :
Utilisation de la montre Nixie
Comment mettre en service l’horloge Nixie ? Pour que l’horloge reçoive son heure UTC, elle doit être connectée à Internet. Cela signifie qu’il faut établir une connexion avec un routeur WLAN. Mais pour cela, l’horloge doit connaître le SSID et le mot de passe du réseau WLAN souhaité.
Pour cela, un terminal déjà connecté au réseau (PC, tablette ou smartphone) est nécessaire : Lorsque la montre est allumée, il faut maintenir la touche Config déjà mentionnée enfoncée pour démarrer le serveur web dans la montre. Si l’on ouvre les paramètres WLAN du terminal, on y trouve ce même serveur web avec son point d’accès WLAN.

Lorsque l’on sélectionne l’horloge, un mot de passe nous est demandé. Ce mot de passe se trouve à la ligne 86 du code source du logiciel : wifiManager.autoConnect(“Nixie-Uhr”, “Nixie-IN12b”);
Le nom du réseau wifi de la montre est d’abord indiqué, puis le mot de passe. Celui-ci doit comporter au moins 8 chiffres.
Après avoir saisi le mot de passe correct et cliqué sur le bouton « Suivant », le terminal est couplé à la montre. Le navigateur web standard du terminal est alors lancé et une page de configuration s’affiche. Toutefois, aucun autre navigateur ne doit être ouvert pendant cette opération, sinon la page de configuration ne peut pas être affichée.

Si l’option « Configure WiFi » est sélectionnée, l’environnement WLAN complet est scanné et tous les réseaux trouvés sont affichés.

Il ne reste plus qu’à choisir le réseau approprié, à l’enregistrer en saisissant le mot de passe et en cliquant sur « Save ». La montre se connecte ensuite au réseau WLAN sélectionné. Si cette opération est réussie, la LED WLAN rouge reste allumée en permanence. Il est possible que le serveur web de la montre se mette à jour : la connexion WLAN précédemment en cours est redémarrée. Ce processus dure jusqu’à une minute, puis les premières données s’affichent sur la montre.
La montre Nixie est ainsi établie. Mais ceux qui ne peuvent pas se réjouir de ce chronomètre sans boîtier n’ont pas les mains liées pour offrir une touche esthétique à leur chronomètre.