Inhaltsverzeichnis:
- Schritt 1: Lernen Sie das Display kennen
- Schritt 2: Herausforderung 1: Hochspannung
- Schritt 3: Herausforderung 2: Holen Sie sich das Filament mit Strom
- Schritt 4: Schnittstelle mit 5V-Logik
- Schritt 5: Erstellen eines Levelmeters
- Schritt 6: Programmierung des Arduino
- Schritt 7: PCB
Video: Audiopegelmesser von einem Upcycling-VFD - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:17
VFD - Vacuum Fluorescent Displays, eine Art Dinosaurier der Display-Technologie, immer noch hübsch und cool, findet man in vielen veralteten und vernachlässigten Heimelektronikgeräten. Sollen wir sie also entsorgen? Nein, wir können sie immer noch verwenden. Es hat ein wenig Aufwand gekostet, aber das lohnt sich.
Schritt 1: Lernen Sie das Display kennen
Ein VFD besteht aus 3 Hauptteilen
- Filament (blau)
- Tore (grün)
- Mit Phosphor beschichtete Platten (gelb), die beim Auftreffen von Elektronen aufleuchten.
Elektronen wandern vom Filament zu den Platten und passieren die Gates. Dazu muss die Platte etwa 12 bis 50 V positiver sein als der Glühfaden (die negativen Elektronen werden zur positiven Seite gezogen). Die Gates lassen die Elektronen durch, wenn ihre Spannung nahe der der Platten liegt. Andernfalls, wenn Gates eine niedrige oder negative Spannung haben, prallen die Elektronen ab und erreichen die Platten nicht, was zu keinem Licht führt.
Wenn Sie sich das Display genau ansehen, werden Sie feststellen, dass die Gates (die punktierten Metallplatten) mehrere Platten (die Anzeigeelemente dahinter) abdecken, sodass ein Gate mehrere Anzeigeelemente umschaltet. Auch mehrere Platten sind an einem Stift miteinander verbunden. Dies führt zu einer Matrix, die gemultiplext ausgeführt werden muss. Sie schalten jeweils ein Tor ein und schalten auch die Platten ein, die unter diesem Tor aufleuchten sollten, dann schalten Sie das nächste Tor und einige andere Platten ein.
Um das Display zu testen, können Sie nach den Filamentstiften suchen - normalerweise die äußersten - und mit 2 AA-Batterien etwa 3 V daran anlegen. Verwenden Sie keine höhere Spannung, da dies die feinen Filamentdrähte durchbrennen könnte. Dann werden die Drähte als rot leuchtende Streifen sichtbar, Sie haben zu viel Spannung verwendet!
Dann 9/12/18V (2x 9V Batterien) an ein Tor und eine Platte anlegen (einfach ins Display schauen wo die Pins für die Metalltore sind) sollte irgendwo ein Anzeigeelement aufleuchten.
In den Bildern habe ich einfach (fast) alle Gates und Anoden an 12V angeschlossen, das schaltet alles ein.
Machen Sie sich Notizen, welcher Pin welches Displaysegment aufleuchtet! Diese wird für den Anschluss und die Programmierung des Displays benötigt.
Schritt 2: Herausforderung 1: Hochspannung
Wie wir in der Theorie gesehen haben, benötigen die Platten/Gates eine Spannung von 12 bis 50 Volt, um für Elektronen attraktiv zu sein und eine schöne Beleuchtung des Phosphors zu erhalten. Bei Verbrauchergeräten wird diese Spannung normalerweise von einer zusätzlichen Lasche am Haupttransformator abgenommen. Als Heimwerker haben Sie keine Transformatoren mit zusätzlichen Laschen und bevorzugen sowieso einfache 5V-USB-Versorgungen:)
Wenn wir dann ein Multiplex-Matrix-Display betreiben, brauchen wir bei den ~12V aus unserem Test mehr Spannung, da die Displaysegmente nur kurz hintereinander aufleuchten, was zu einem Dimmeffekt führt (PWM-Stil mit einem Verhältnis von 1:NumberOfGates). Wir sollten also 50V anstreben.
Es gibt eine Reihe von Schaltungen, um Spannungen von nur 5 V auf 30 V … 50 V zu erhöhen, aber die meisten liefern nur eine kleine Menge Strom, wie ein paar mA @ 50 V für den Treiber, den ich in den nächsten Schritten zeige, der Pullup-Widerstände verwendet, das ist nicht ausreichend. Am Ende habe ich eine der billigen Spannungsbooster-Schaltungen verwendet, die Sie bei Amazon oder eBay finden (suchen Sie nach "XL6009"). Sie wandelt 5 V in ~ 35 V mit hohem Strom um, was gut genug ist.
Diese XL6009-basierten Geräte können durch Ändern eines Widerstands auf eine Ausgangsspannung von ~50 V gepimpt werden. Der Widerstand ist in den Bildern mit einem roten Pfeil gekennzeichnet. Sie können auch nach einem Datenblatt des XL6009 suchen, das die notwendigen Informationen zur Berechnung der Ausgangsspannung enthält.
Schritt 3: Herausforderung 2: Holen Sie sich das Filament mit Strom
Das Filament sollte mit ca. 3V betrieben werden (abhängig vom Display). Am besten AC und irgendwie in der Mitte auf GND geklebt. Puh, 3 Wünsche in einer Reihe.
Auch bei den Originalgeräten würde dies mit einer Lasche am Transformator und einer Art Z-Dioden-Verbindung zu GND oder an einem noch seltsameren Ort (wie einer -24V-Schiene) erreicht werden.
Einige Experimente später stellte ich fest, dass eine einfache Wechselspannung über GND ausreicht. Gleichspannung, wie 2 AA-Batterien, funktioniert auch, erzeugt jedoch einen Helligkeitsgradienten von einer Seite des VFD zur anderen, einige Beispiele auf Youtube, wenn Sie nach "VFD" suchen.
Meine Lösung
Um eine Wechselspannung zu erhalten, dies ist eine Spannung, die ständig ihre Polarität ändert, kann ich eine H-Brückenschaltung verwenden. Diese sind in der Robotik weit verbreitet, um Gleichstrommotoren zu steuern. Die H-Brücke ermöglicht es, die Richtung (Polarität) und auch die Geschwindigkeit eines Motors zu ändern.
Mein liebster DIY-Elektroniklieferant bietet ein kleines Modul "Pololu DRV8838" an, das genau das macht, was ich will.
Der einzige benötigte Eingang ist Strom und eine Taktquelle, damit das Ding ständig die Polarität umschaltet. Uhr? Es stellte sich heraus, dass ein einfaches RC-Glied zwischen dem negativen Ausgang und dem PHASE-Eingang für dieses Ding wie ein Oszillator wirken kann.
Das Bild zeigt den Anschluss des Motortreibers, um Wechselspannung für das VFD-Filament zu erzeugen.
Schritt 4: Schnittstelle mit 5V-Logik
Jetzt können wir das ganze Display beleuchten, toll. Wie zeigen wir einen einzelnen Punkt/eine Ziffer?
Wir müssen jedes Gate und jede Anode zu einer bestimmten Zeit umschalten. Dies wird Multiplexen genannt. Ich habe hier einige andere Tutorials dazu gesehen. ZB (https://www.instructables.com/id/Seven-Segment-Di…
Unser VFD hat viele Pins, die alle mit unterschiedlichen Werten angesteuert werden müssen, also würde jeder einen Pin am Controller benötigen. Die meisten kleinen Controller haben nicht so viele Pins. Also verwenden wir Schieberegister als Port-Expander. Diese sind mit einer Clock, einer Daten- und einer Select-Leitung mit dem Controller-Chip verbunden (nur 3 Pins) und können kaskadiert werden, um so viele Ausgangspins wie nötig bereitzustellen. Ein Arduino kann seinen SPI verwenden, um Daten effizient an diese Chips zu serialisieren.
Auf der Displayseite befindet sich hierfür ebenfalls ein Chip. Das "TPIC6b595" ist ein Schieberegister mit Open-Drain-Ausgängen, das bis zu 50V verarbeiten kann. Open Drain bedeutet, dass der Ausgang bei TRUE/1/HIGH offen bleibt und ein interner Transistor aktiv auf die Low-Side FALSE/0/LOW schaltet. Beim Hinzufügen eines Widerstands vom Ausgangspin zu V+ (50V) wird der Pin auf diesen Spannungspegel hochgezogen, solange der interne Transistor ihn nicht auf GND herunterzieht.
Die gezeigte Schaltung kaskadiert 3 dieser Schieberegister. Widerstandsarrays werden als Pull-Ups verwendet. Die Schaltung enthält auch den Filament-Power-Switcher (H-Brücke) und einen einfachen Spannungsbooster, der später verworfen und durch die XL6009-Platine ersetzt wurde.
Schritt 5: Erstellen eines Levelmeters
Dazu verwende ich ein Dot-Matrix-Display mit 20 Stellen und 5x12 Pixeln pro Stelle. Es hat 20 Gatter, eines für jede Ziffer und jedes Pixel hat einen Plattenstift. Die Steuerung jedes Pixels würde 60+20 einzelne steuerbare Pins erfordern, z. B. 10x TPIC6b595-Chips.
Ich habe nur 24 steuerbare Pins von 3x TPIC6b595. Also verbinde ich ein paar Pixel mit einem größeren Pixel der Pegelanzeige. Eigentlich kann ich jede Ziffer in 4 teilen, weil ich 20+4 Pins steuern kann. Ich verwende 2x5 Pixel pro Pegelanzeigeschritt. Die Pins für diese Pixel sind zusammengelötet, sieht etwas chaotisch aus aber es funktioniert:)
PS: Habe gerade dieses Projekt gefunden, bei dem diese Anzeige pixelweise gesteuert wird.
Schritt 6: Programmierung des Arduino
Wie bereits erwähnt, wird das Schieberegister mit einem Hardware-SPI verbunden. Im Pinbelegungsdiagramm des Leonardo (Bild von Arduino) heißen die Pins "SCK" und "MOSI" und sehen lila aus. MOSI steht für MasterOutSlaveIn, d. h. dort wird das Datum serialisiert.
Wenn Sie ein anderes Arduino verwenden, suchen Sie im Pinbelegungsdiagramm nach SCK und MOSI und verwenden Sie stattdessen diese Pins. Das RCK-Signal sollte an Pin 2 gehalten werden, dies kann jedoch verschoben werden, wenn dies auch im Code geändert wird.
Der Sketch führt den AD-Wandler an Pin A0 als Interrupt-Dienst aus. So werden die AD-Werte ständig gelesen und zu einer globalen Variablen hinzugefügt. Nach einigen Auslesungen wird ein Flag gesetzt und die Hauptschleife nimmt den Anzeigenwert auf, wandelt ihn um, welcher Pin was macht und verschiebt ihn zum SPI in den TPIC6b und immer wieder mit einer solchen Geschwindigkeit, dass das menschliche Auge es nicht flimmern sieht.
Genau die Art von Job, für die ein Arduino gemacht wurde:)
Hier kommt der Code für mein Levelmeter-Display…
github.com/mariosgit/VFD/tree/master/VFD_T…
Schritt 7: PCB
Ich habe ein paar PCBs für dieses Projekt gemacht, nur um einen schönen und sauberen Build zu haben. Diese Platine enthält einen weiteren Spannungsbooster, der nicht genug Leistung lieferte, daher habe ich ihn hier nicht verwendet und stattdessen die 50V vom XL6009-Booster eingespeist.
Der schwierige Teil ist das Hinzufügen des VFD, da diese alle Arten von Formen haben können. Ich habe versucht, die Leiterplatte im VFD-Steckverbinderteil etwas allgemeiner zu gestalten. Am Ende müssen Sie die Pinbelegung für Ihr Display herausfinden und die Verkabelung irgendwie anschließen und eventuell den Programmcode ein wenig ändern, damit alles zusammenpasst.
Die Platine ist hier verfügbar:
Empfohlen:
Windows 10 auf einem Raspberry Pi zum Laufen bringen – wikiHow
So funktioniert Windows 10 auf einem Raspberry Pi
Heimwerken -- Einen Spinnenroboter herstellen, der mit einem Smartphone mit Arduino Uno gesteuert werden kann – wikiHow
Heimwerken || Wie man einen Spider-Roboter herstellt, der mit einem Smartphone mit Arduino Uno gesteuert werden kann: Während man einen Spider-Roboter baut, kann man so viele Dinge über Robotik lernen. Wie die Herstellung von Robotern ist sowohl unterhaltsam als auch herausfordernd. In diesem Video zeigen wir Ihnen, wie Sie einen Spider-Roboter bauen, den wir mit unserem Smartphone (Androi
MyPhotometrics - Gandalf: Leistungsmessgerät Zur Messung Von Lasern Im Sichtbaren Bereich Auf Basis Von "Sauron": 8 Schritte
MyPhotometrics - Gandalf: Leistungsmessgerät Zur Messung Von Lasern Im Sichtbaren Bereich Auf Basis Von "Sauron": Dieses Werk ist lizenziert unter einer Creative Commons Namensnennung - Weitergabe unter gleichen Bedingungen 4.0 International Lizenz. Eine für Menschen lesbare Zusammenfassung dieser Lizenz findet sich hier.Was ist Gandalf?Gandalf ist eine Stand-A
So nehmen Sie einen Podcast von einem Telefon auf – wikiHow
So nehmen Sie einen Podcast von einem Telefon auf: Wir nehmen eine Reihe von Podcasts auf, um die Wirkung der Konferenz Learning 2005 zu erhöhen. Diese Podcasts sind Aufzeichnungen von Interviews, die Mark Oehlert mit zahlreichen Moderatoren der Konferenz geführt hat. Die folgenden s
So installieren Sie Fedora auf einem SheevaPlug und booten von einer SD-Karte.: 13 Schritte
So installieren Sie Fedora auf einem SheevaPlug und booten von einer SD-Karte.: Ich habe einen Beitrag zum SheevaPlug bei Slashdot und dann in Popular Mechanics gesehen. Es schien ein interessantes Gerät zu sein es läuft @ 2,5w, keine Lüfter, Solid State und kein Monitor erforderlich. Seit Jahren trage ich einen alten CRT-Monitor mit mir herum