Langzeitprojekt: Digitaluhr the hard way mit Transistoren und Nixie-Röhren (abgeschlossen)

  • Für den kommenden Winter habe ich mir ein neues Bastelprojekt ausgedacht: Ich werde eine Uhr bauen und Mexiko wird sie bezahlen! Damit mache ich Transistor GREAT AGAIN!

    Die Uhr wird kompromisslos nur aus Logikschaltungen bestehen, die aus einzelnen Transistoren, Dioden, Widerständen und Kondensatoren aufgebaut sind. Es sollen keine Schaltkreise verwendet werden.

    Damit möchte ich aufzeigen, daß selbst komplexeste digitale Systeme sich auf einfachste Dinge zurückführen lassen.

    Ein grober, schematischer Überblick:

    230 V --> 5 V & 170 V stabilisiert--> Batteriepuffer --> Quarzoszillator (exakt 32768 Hz) --> Rechteckformer (Schmitt-Trigger, durch übersteuerten Verstärker ersetzt) --> 15x durch 2 teilen (1 Hz) --> Zählstufen & Stellwerk --> Binärdekoder, Dekadenzähler --> Verknüpfen --> Nixietreiber & Helligkeitsregler--> Zeitausgabe

    Die Grundlage der Uhr ist die bistabile Kippstufe, auch "Flipflop" genannt. Weitere Schaltglieder sind NAND, NOR und NICHT.

    Ich habe mir schon ein paar Skizzen erarbeitet und so ein paar grundlegende Gedanken gemacht, wie die Uhr zu realisieren ist.

    Als Besonderheiten sind eine adaptive Helligkeit, eine zeitbedingte Abschaltung der Nixies (bei mir hat sich eine Abschaltung zwischen 21 und 4 Uhr als praktisch erwiesen), ein Durchschalten aller Ziffern aller Röhren bei voller Stunde ("Slotmaschinen-Effekt") und während der Nacht eine auf Knopfdruck aktivierbare Anzeige der Zeit geplant.

    Im Laufe der Zeit werde ich hier immer wieder mal posten, um den Fortschritt zu dokumentieren. Es lohnt sich also, immer mal im Thread zu lesen, wenn man an solchen Dingen interessiert ist.

    Bereits funktionierende Baugruppen:

    - Quarzoszillator, siehe Beitrag #24

    - 1er Sekundenzähler, siehe Beitrag #41

    - 10er Sekundenzähler, siehe Beitrag #57

    - 1er Minutenzähler, siehe Beitrag #57

    - 10er Minutenzähler, siehe Beitrag #61

    - 1er Stundenzähler, siehe Beitrag #61

    - 10er Stundenzähler, siehe Beitrag #61

    - Stromversorgung, siehe Beitrag #57

    - Stromversorgung Version 2, siehe Beitrag #60

    - Steuerungseinheit inkl. adaptive Helligkeitsregelung per PWM, siehe Beitrag #58

    Funktionstest bestanden. Die Uhr lief mehrere Tage durch, damit sie gut durchgewärmt war. Es erfolgte ein nochmaliges Kalibrieren der Uhr, damit die höhste Ganggenauigkeit erreicht werden kann. Laut Messgerät und etwas Mathematik geht die Uhr jetzt pro Tag um etwa 0,007 Sekunden falsch. Ich denke, das ist ausreichend genau.

    Die Lade- und Pufferschaltung zum Überbrücken von Stromausfällen ist auch fertig.

    "Du bist und bleibst a Mensch und du kannst eben net deine menschlichkeit überwinden."

    Dennis_50300

    10 Mal editiert, zuletzt von CryptonNite (28. Juni 2020 um 00:13)

  • ? Weil ?

    -> Uhrzeit

    :topmodel:

    Permanent aufgebaut:
    A7V133, Athlon 1,4GHz, 512MB, GeForce3 Ti200 128MB, SB Live! X-Gamer
    Für die LAN:
    TUSL2-C, PIII-S 1,4GHz, 512MB, GeForce2 GTS 32MB, 2x Monster II 12M, SB Live!
    TUSL2-C, PIII-S 1,4GHz, 512MB, GeForce2 GTS 32MB, 2x Monster II 12M, SB Live!
    CUSL2-C, PIII 933MHz, 512MB, G400 Max 32MB AGP, 2x 3D Blaster Voodoo² 12MB, SB Live!
    CUSL2-C, PIII 933MHz, 512MB, G400 Max 32MB AGP, 2x Monster II 8MB, SB Live!

  • Ganz einfach:

    Es zeigt, wie einfach solche Dinge sind. In der Schaltung steckt die Grundlage eines jeden Rechners drin.:spitze:

    Außerdem: Nen Schaltkreis kann ja jeder nehmen:spitze:

    "Du bist und bleibst a Mensch und du kannst eben net deine menschlichkeit überwinden."

    Dennis_50300

  • Ich habe auch eingekauft:

    - 100x Metallfilmwiderstand 100 kOhm

    - 100x Metallfilmwiderstand 10 kOhm

    - 50x Folienkondensator 100 nF / 63 V

    - 60x Elektrolytkondensator 10 µF / 63 V

    - 30x Elektrolytkondensator 220 µF / 63 V

    - 300x Siliziumdiode 1N4007, 1000 V / 1 A

    - 100x NPN-Transistor MPSA42, 300 V

    - 300x NPN-Transistor BC546A, 60 V

    - 40x Vielschichtkondensator 150 pF, 100 V

    - Abstandsbolzen

    - Lochrasterplatinen

    Das klingt erstmal nach unheimlich viel, aber da jedes Glied der Kette aus Einzelteilen besteht, wird auch viel verbraucht werden. Schon allein der Taktgenerator benötigt mindestens 33 Transistoren (1x für Oszillator nach Colpitts, 2x für Schmitt-Trigger zur Rechteckformung und jeweils 2x für jedes einzelne der 15 Flipflops). Das Ansteuern der Nixies wird rund 60 HV-Transistoren fressen. :topmodel:

    Eventuelle spätere Schaltpläne werden dann nur noch die üblichen Symbole für digitale Funktionseinheiten haben. Das macht den Plan besser lesbar.

    "Du bist und bleibst a Mensch und du kannst eben net deine menschlichkeit überwinden."

    Dennis_50300

    5 Mal editiert, zuletzt von CryptonNite (7. Januar 2020 um 04:20)

  • -> Uhrzeit

    Permanent aufgebaut:
    A7V133, Athlon 1,4GHz, 512MB, GeForce3 Ti200 128MB, SB Live! X-Gamer
    Für die LAN:
    TUSL2-C, PIII-S 1,4GHz, 512MB, GeForce2 GTS 32MB, 2x Monster II 12M, SB Live!
    TUSL2-C, PIII-S 1,4GHz, 512MB, GeForce2 GTS 32MB, 2x Monster II 12M, SB Live!
    CUSL2-C, PIII 933MHz, 512MB, G400 Max 32MB AGP, 2x 3D Blaster Voodoo² 12MB, SB Live!
    CUSL2-C, PIII 933MHz, 512MB, G400 Max 32MB AGP, 2x Monster II 8MB, SB Live!

  • -> Uhrzeit

    Und du kannst auch sagen, wie die funktioniert?

    Ja, einfach den Link anklicken und die Zeit genießen.

    Permanent aufgebaut:
    A7V133, Athlon 1,4GHz, 512MB, GeForce3 Ti200 128MB, SB Live! X-Gamer
    Für die LAN:
    TUSL2-C, PIII-S 1,4GHz, 512MB, GeForce2 GTS 32MB, 2x Monster II 12M, SB Live!
    TUSL2-C, PIII-S 1,4GHz, 512MB, GeForce2 GTS 32MB, 2x Monster II 12M, SB Live!
    CUSL2-C, PIII 933MHz, 512MB, G400 Max 32MB AGP, 2x 3D Blaster Voodoo² 12MB, SB Live!
    CUSL2-C, PIII 933MHz, 512MB, G400 Max 32MB AGP, 2x Monster II 8MB, SB Live!

  • Du hast den gleichen Humor wie ich.:spitze:

    Mir fällt dazu nur ein humoristisch gemeintes A... ein:topmodel:

    "Du bist und bleibst a Mensch und du kannst eben net deine menschlichkeit überwinden."

    Dennis_50300

  • CryptonNite 9. September 2019 um 08:28

    Hat den Titel des Themas von „Langzeitprojekt: Digitaluhr the hard way in TTL mit Transistoren und Anzeigeröhren (Planungsphase)“ zu „Langzeitprojekt: Digitaluhr the hard way mit Transistoren und Anzeigeröhren (Planungsphase)“ geändert.
  • Bis 10d Zählen:

    Wie zählt man binär bis 10d und vor allem wie verknüpft man das möglichst ökonomisch?

    Mal binär zählen...

    1 Bit sind 2 Zustände, L und H

    2 Bit sind 4 Zustände, L, H, HL und HH

    3 Bit sind 8 Zustände, L, H, HL, HH, HLL, HLH, HHL und HHH

    4 Bit sind 16 Zustände und die liste ich nicht auf ;)

    Da man mit 3 Bit nur bis 8d zählen kann, werden 4 Bit gebraucht, wovon 6 Zustände nie aktiv sind. Alles größer als 10d fällt weg und aus 10d wird quasi gleich wieder 0d. (d=dezimal)

    Die 8d ist HLLL, die 9d HLLH und die 10d HLHL. Das bedeutet, daß man die 10d eindeutig identifizieren kann, wenn Bit 2 UND Bit 4 HIGH-Pegel haben. Das heißt, man kann mit einer einfachen AND, bzw. NAND-Verknüpfung die 10d auslesen und den Zähler zurücksetzen, sodaß er wieder bei 0d anfängt. Alle anderen Zahlen größer als 10d kommen somit niemals vor. Das ganze muss dann im Prinzip nur noch dekadisch ausgewertet werden, damit pro Zahl genau eine Kathode der Nixies leuchtet.

    Bis 60d zählen:

    Dies stellt eine einfache Erweiterung dar: Bei jedem Reset, der beim Erreichen von 10d ausgelöst wird, soll die nächsthöhere Stelle um 1d vergrößert werden. Man macht einen einfachen Übertrag des Signals zum nächsten Zähler.

    Die Uhr wird einen Sekundenzeiger haben, denn meine russischen Nixies haben einen Punkt. Den kann man einfach mit dem Taktsignal ansteuern, vielleicht auch mit 2 Hz. Mal sehen, was besser aussieht.

    "Du bist und bleibst a Mensch und du kannst eben net deine menschlichkeit überwinden."

    Dennis_50300

  • Ganz wunderbare Idee.

    Es erinnert mich am mein UKW Radio Projekt, wo ich einen 80-115MHz FM Radio nur aus Transistoren als Superhet aufgebaut habe. Das Ding läuft heute noch.

    Absolute Spitze - Deine Idee. Ich kann mir vorstellen das sich so manche Schule dafür interessieren könnte.

    Als ich damals meine "Blue Seven" entwickelte und die Pläne veröffentlichte haben mich Schulen angeschrieben ob sie die Uhr zur Ausbildung ihrer Schüler bauen dürfen. (Wen es interessiert: LINK zu meiner Blue Seven Uhr / Webseite)

    Ein Minimal-C-Mos Projekt.

    Du hast Dir ganz ordentlich was vorgenommen. Insbesondere die Dekadenzähler.

    Idee: Könntest Die Uhr auch als Synchron-Uhr aufbauen. Dann brauchst keinen Quarz usw... sondern die Uhr läuft Netz-Synchron.

    Hach ja - es gibt so viele Ideen und schöne sachen die man bauen kann.

    Viel Erfolg :)

  • Danke:)

    Die Idee mit der Netzfrequenz hatte ich auch schon. Das Problem ist dabei aber, daß die Uhr nach einem Ausfall wieder gestellt werden muss und ich dazu einfach zu faul bin.

    Daher baue ich einen Quarzoszillator auf, den ich mit einer Batterie zumindest für ein paar Stunden puffern kann. Die Röhren müssen in diesem Zustand ja nicht arbeiten, es reicht, wenn die Uhr weiterläuft.

    Ich freue mich dann schon auf den Aufbau. Alles mit disketen Bauteilen, auch die Stromversorgung. Ist so nen bisschen wie die ersten Computer aus Halbleitern.

    "Du bist und bleibst a Mensch und du kannst eben net deine menschlichkeit überwinden."

    Dennis_50300

    Einmal editiert, zuletzt von CryptonNite (4. Oktober 2019 um 01:06)

  • Das sind sogenannte "Kopffüßler". IN12b heißen die. Sockel habe ich auch dazu.

    Edit:

    Jo, die Bezeichnung stimmt.

    "Du bist und bleibst a Mensch und du kannst eben net deine menschlichkeit überwinden."

    Dennis_50300

    Einmal editiert, zuletzt von CryptonNite (9. September 2019 um 22:59)

  • So. Ich dürfte so ziemlich alles haben.

    Für die Umsetzung des Dekadenzählers werde ich mich an gängigen Treiber-ICs für Nixies orientieren.

    Ich habe auch beschlossen, Debug-LEDs am Ausgang jeder Logikschaltung zu verbauen. Sollte eine Fehlfunktion auftreten, und ich gehe davon auch aus, dann macht sich die Fehlersuche viel einfacher.

    "Du bist und bleibst a Mensch und du kannst eben net deine menschlichkeit überwinden."

    Dennis_50300

    Einmal editiert, zuletzt von CryptonNite (12. September 2019 um 12:24)

  • Treiber IC's brauchst Du nicht. Das wäre doch Stilbruch. Als Nixie Treiber Kannst Du den klassischen NPN Typ "MPSA42" Transistor nehmen.

    Falls Du mit Schmitt Trigger und Monoflop eine PWM Erzeugen möchtest um die Anodenspannung zu Steuern, z.B. für Anpassung der Nixie Helligkeit an die Umgebunsbeleuchtung, dann den PNP Typ MPSA92 - oder MJE350 für mehr Strom.

    Bei meiner ersten Nixie Uhr habe ich, auch tatsächlich Analog, ein Fade-In und Fade-Out für alle Ziffern gebaut. Dann blendet eine Ziffer aus währen die nächste Ziffer einblendet. Das sieht sehr geil aus.

    Was mir gerade einfällt, bei Deinem Binär-Gedankenmodell: Der Dekadenzähler (CMOS) hat ja ein Carry Out Flag bei 6. Daran ist zu denken weil Du ja nur bis 6 Zählst in den Sekunden und Minuten Zehnern.

    Geht Du den Weg über den Gedanken "Schieberegister" wird es viel einfacher, dann ist jeders Bit also S/O tauglich und gültig für Carry und Reset. Und Du kannst das Schieberegister gleich mit den MPSA Transistoren realisieren und sparst Dir so die Treiberstufen.

    Bei diskret aufgebauten Schieberegistern ist die Analogie in der Grundschaltung für ein Lauflicht sehr Hilfreich. (bzw. In Analogie zum Eimerkettenspeicher nur einfacher)

    Viel Erfolg weiterhin...

    :)

    Edith:

    Hast Du schon einen Schaltplanentwurf - tät' mich ja mal interessieren. ;)

  • Nee, kein Schaltkreis. Ich orientiere mich nur an seiner internen Logik. Man muss ja das Rad nicht neu erfinden.

    An nen Schieberegister habe ich auch schon gedacht. Könnte ich auch machen. Das würde die automatische Dunkelschaltung einfacher machen. Mal sehen.

    Jupp, die Helligkeit wird am Ende mit ner PWM erzeugt. Das ist aber noch entfernte Zukunft. Diese Funktion hat ja mit der Uhr ansich nicht viel zutun. Hab irgendwo noch nen MOSFET dazu rumliegen. Vielleicht mache ich das auch bipolar. Weiß ich noch nicht.

    MPSA42 hab ich da. 100 Stück. :D

    Hab sogar PNP da (MPSA92, glaube ich).

    60 werde ich brauchen, sind ja 10 Ziffern in 6 Röhren. Ein weiterer wird den Sekundenpunkt ansteuern.

    Das ganze Projekt wird ziemlich Hardcore, aber ich freue mich schon darauf.

    Am Wochenende werde ich mich mit dem Sekundentakt beschäftigen. Ich leihe mir dafür nen ziemlich genauen Frequenzzähler aus dem Betrieb aus, damit ich die maximale Genauigkeit erreichen kann. Daher habe ich auch einen Quarz vorgesehen. Mit einer Pufferbatterie kann ich auch Netzausfälle überbrücken.

    "Du bist und bleibst a Mensch und du kannst eben net deine menschlichkeit überwinden."

    Dennis_50300

    2 Mal editiert, zuletzt von CryptonNite (12. September 2019 um 23:38)

  • Hihi - nee ;)

    Brauchst nur 45 Transistoren.

    30 für alle Einer-Stellen

    12 für Sekunden und Minuten Zehner-Stellan

    3 Für Stunden Zehner-Stellen (mit führender Null)

    By The Way: Die Erzeugung von 170V Anodenspannung (mit 33K-OHM auf Anode), wie machst Du die?

    Auch mit Transistoren? Mit Lastregelung? Echt ne Aufgabe. Damals hatte ich das mit einem NE555 gemacht. Der geht irgendwie für alles. :D


    Kennst Du die Lösung mit einem UJT Transistor? Das ist so simpel, das es wieder genial ist. Das ist nur eben von mir schnell hingemalt, aber das ist die Grundschaltung. Beu "out" dann Puffern und Stromverstärkung machen. Hab damit mal über 1000V erzeugt.


    Aber ich will nicht "rumklugscheißen". Ich liebe solche Projekte und Du hast das sicher gepostet für Beteiligung. ;)

    - Backfire -

  • Ich kenne den Kippschwinger mit Unijunction-Transistor. Eine ähnliche Schaltung kann man auch mit einer Glimmlampe bauen, wenn ich mich richtig erinnere.

    Also, die Uhr wird ein richtiges Netzteil haben. Ich habe zwar nur einen Trafo mit 2x 12 V, dafür kann ich jedoch seitenverkehrt einen mit 20 V nachschalten. 230 : 20 = 11,5 und 11,5 x 12 = 138. Das ganze mal 1,414 und ich habe rund 195 V Spitze. Da sollte ein Längsregler genügen. So zumindest die Theorie und der erste Ansatz. Wahrscheinlich muss ich dann hier und da Änderungen vornehmen.

    Auch wenn ich nicht alle Ziffern der sechs Nixies brauche, ansteuern werde ich sie trotzdem. Es geht um die Kathodenvergiftung. Die nie benötigten Kathoden werden mit der Zeit taub. Die Uhr werde ich so schalten, daß zu jeder vollen Stunde einmal alle Ziffern durchlaufen. Das ist theoretisch gar nicht mal so schwer.

    "Du bist und bleibst a Mensch und du kannst eben net deine menschlichkeit überwinden."

    Dennis_50300

  • Ah ok, alle paar Monate stecke ich die IN18 meiner Uhr um. So haben alle Röhren das gleiche zu tun. Über die Jahre hatte ich erst einen Ausfall.

    Längsregler für die Hochspannung brauchst nicht. Einfach nur gleichrichten und Hochvolt Elko. 12k bis 100K als Anodenwiderstand pro Nixie genügt, die Röhre bestimmt den Strom. So ist es auch gleich galvanisch getrennt. Der Klassiker :) Durch die niedrige Frequenz ist das halt groß mit Trafo und Elko aber als Transistor Uhr wird das ohnehin größer. Bin gespannt.

    In Jogis Röhrenbude hat mal einer eine Uhr nur mit Röhren gebaut. Extrem.