Ich habe eine Windflügel-/Flip-Uhr mit 4 Ziffern erhalten, aber der Controller ist schon lange weg. Ich plane, die Uhr mit einem Raspberry Pi und den üblichen Relaisplatinen zu steuern, die Sie dafür bekommen - ich habe schon einmal etwas Ähnliches gemacht und weiß, dass das funktioniert.
Da die Relais jedoch jede Minute arbeiten müssten, bezweifle ich, dass sie lange halten würden, bevor sie ausgetauscht werden müssten. Ich suche daher nach einer Möglichkeit, die Uhr auf die gleiche Weise zu betreiben, jedoch ohne Relais. Hat jemand irgendwelche Ideen?
Unten finden Sie weitere Informationen zur Funktionsweise der Relay-Lösung.
An jeder Ziffer hat jedes Segment Common (C), Reset (R) und Display (D) Anschlüsse. Auf jeder Ziffer sind die Segment-Commons miteinander verbunden, um eine Ziffer Common zu bilden.
Um also ein Segment anzuzeigen, würden Sie +12 V an die Ziffer Common und -12 V an den Anzeigeanschluss des Segments anlegen. Um es zurückzusetzen, würden die -12 V stattdessen zum Reset-Anschluss gehen.
Es gibt vier Ziffern auf der Uhr, und die Segmente von jedem sind miteinander verbunden, sodass das R von Segment A auf der ersten Ziffer mit dem R von Segment A auf der zweiten Ziffer verbunden ist usw. Das R von Segment B ist mit dem R von verbunden Segment B auf der zweiten Ziffer und so weiter. Gleiches gilt für die D-Anschlüsse.
Es gibt also vierzehn Relais für die Segmente (7 zum Anzeigen + 7 zum Rücksetzen).
Jede Ziffer hat ihr eigenes Relais für die gemeinsame Ziffer (es gibt also 4-stellige gemeinsame Relais).
Um also '0123' auf den vier Ziffern anzuzeigen, würden Sie Folgendes tun:
Jedes Segment benötigt 280 mA für den Betrieb, sodass die maximale Stromaufnahme zu jedem Zeitpunkt 1.960 mA (280 mA x 7) betragen würde.
Anstelle von Relais könnten Sie die Verwendung von MOSFETs in Betracht ziehen, es gibt viele, die sowohl Eingänge mit Logikpegel als auch 280 mA an den Ausgängen unterstützen können.
Keine beweglichen Teile, also nichts, was sich abnutzen könnte.
Klingt so, als könnten Sie jede Ziffer mit zwei ULN2003A -Chips steuern. Sie enthalten Darlington-Treiber und Fangdioden für jeden Ausgang.
Ich nehme an, Sie würden jede Spule kurz (50 ms?) Pulsen, um das Segment umzudrehen, das sich ändern muss.
Natürlich müssen Sie die 14 x 4 Eingänge irgendwie bereitstellen (vielleicht einige Schieberegister).
Sie könnten auch die Verwendung von stromadressierbaren Latches wie TPIC6A259 in Betracht ziehen , die weniger Teile erfordern, aber teurer sind und möglicherweise bessere Erdungsverbindungen erfordern.
Möglicherweise möchten Sie Hardware hinzufügen, um die Dauer der Impulse zu begrenzen, anstatt von der Firmware abzuhängen, da ich bezweifle, dass sie dem Dauerstrom lange standhalten, ohne auszubrennen.
Der Ersatz für Relais sind MOSFETs oder BJTs, wie andere Poster besprochen haben, aber das Problem hier ist, dass Sie versuchen, eine 12-V-Last mit einem 3,3-V-Logikpegelausgang hochseitig (und niedrigseitig für die Ziffernauswahl) zu schalten. Ich hatte einen Schaltplan mit Open-Drain-Wechselrichtern erstellt, die PMOS-Transistoren ansteuern, aber warum das Rad neu erfinden? Wenn Sie nach High-Side-Load-Treibern suchen, gibt es viele, die 3,3-V-Logikeingänge aufnehmen und Lasten von 20 V+ steuern, und viele haben eingebaute Klemmdioden für die (ich nehme an) Solenoide, die die Ziffern betätigen. Sie können sogar einzelne Chips wie den TBD62783APG finden, die 8 unabhängige Schaltkreise eingebaut haben.
Wenn Sie die Anzahl der erforderlichen E/A reduzieren möchten, können Sie einen Inverter verwenden, um die DISPLAY- und RESET-Treiber für ein einzelnes Segment von einem einzelnen Logikeingang ablaufen zu lassen. Die Möglichkeit, beide Spulen gleichzeitig zu aktivieren, während die Treiber den Status ändern, ist fraglich, wenn Sie jedes Segmentsignal einstellen und dann nach einer sehr kurzen (Mikrosekunden) Einrichtungszeit die Ziffernauswahl (die ein beliebiger geeigneter NMOS-Logikpegel sein kann) abtasten.
Hier ist eine ziemlich anständige Beschreibung der Steuerung einer mehrstelligen Flügelanzeige: https://easternstargeek.blogspot.com/2011/08/nifty-electromechanical-vane-display.html
Die Zusammenfassung lautet: Verwenden Sie ein 14x4-Matrix-Laufwerk, und Sie müssen die Spulen mit Dioden isolieren, um "Ghosting" zu verhindern.
Wenn die Relaisplatinen für Sie einfacher sind, spricht nichts dagegen, wenn die Relais ein- oder zweimal pro Minute schalten. Die meisten von ihnen sind gut für eine Million Zyklen. Achten Sie nur darauf, schützende Flyback-Dioden für die Taktspulen zu verwenden.
Apropos Stromversorgung: Sie müssen nicht alle Segmente in einer Ziffer auf einmal schalten. Schalten Sie sie nacheinander um und Sie erhalten einen maximalen Strom von 280 mA. Im schlimmsten Fall sehen Sie, wie sich die Ziffer für eine halbe Sekunde verändert. Dies verleiht dem Look noch mehr Vintage und vereinfacht die Wahl des oberen Treibers (die +12-V-Schiene zu den C-Anschlüssen des Displays).
Hast du genug GPIO-Pins auf deinem Controller? Sie benötigen etwa 18, um das Display zu steuern. Andernfalls benötigen Sie externe Decoder, Schieberegister oder adressierbare Treiber. Im einfachsten Fall benötigen Sie 14 Open-Drain- (N-MOS) oder Open-Collector- (NPN) Treiber für die S/R- und 4 der P-MOS / PNP-Variante für die C-Seite. Sie benötigen außerdem 4 Pegelumsetzer, die nur weitere 4 N-MOS/NPN-Treiber sein können, die umfunktioniert werden.
Vir
TLW