Hardwarelösung zum Ein- und Ausschalten der LED mit digitalem Ausgang

11

Ich möchte eine hardwarebasierte Lösung finden, mit der LEDs von digitalen Pins ausgeblendet werden können. dh anstatt ein- / auszuschalten, wird langsam (500 ms) in die volle Helligkeit ein- und ausgeblendet. Ich kann mir nicht vorstellen, dass ein kleiner Kondensator eine halbe Sekunde braucht, um sich zu entladen ... Idealerweise befindet er sich in einem schönen DIP16-Gehäuse, sodass ich eine Reihe von verblassenden LEDs erhalten kann. Existiert meine Traumkomponente?

Rom
quelle
Eine LED von einem Dreieckwellenoszillator ansteuern?
Bitrex
1
Wenn ich einen Mikrocontroller dafür programmiere, meine eigene Teilenummer auf das Paket setze und sie dann an Sie verkaufe, zählt das als Hardwarelösung?
Gbarry
1
Ich weiß zu schätzen, dass Sie sich die Zeit nehmen würden, mir ein PWM-Skript zu verkaufen, aber ich habe mich wirklich gefragt, ob es eine Komponente gibt, die ein digitales Signal über 500 ms ohne irgendeine Art von Schwingung abrunden kann.
Vom
Nur theoretisch. Ich ging die gleichen Gedanken durch und erkannte schließlich, dass ein Chip auf einer bestimmten Ebene ein Chip ist. Sie möchten jedoch keine Schwingungen, sodass die Frage eingegrenzt wird.
Gbarry
Warum ohne Schwingung?
Starblue

Antworten:

14

Der übliche Weg, dies zu tun, ist die Verwendung von PWM (Pulse Width Modulation).

Nahezu jeder moderne Mikrocontroller verfügt über ein PWM-Peripheriegerät, das für diesen Zweck eingerichtet werden kann. Wenn Sie keinen Mikrocontroller verwenden möchten, kann ein dedizierter PWM-IC oder ein Timer-IC wie der allgegenwärtige 555 verwendet werden.

Der Vorgang ist einfach, die Pulsfrequenz wird schnell genug eingestellt, damit das menschliche Auge kein Flimmern erkennen kann (normalerweise über 25 Hz - siehe Persistenz des Sehens ), und die Zeit zwischen Einschalten und Ausschalten variiert zwischen 100% Ein (volle Helligkeit) und 50% Ein 50% aus (halbe Helligkeit) bis 0% ein (aus)
Beachten Sie, dass dies leicht für ein Array verwendet werden kann. Sie versorgen einfach alle LED-Treibertransistoren mit PWM (stellen Sie sicher, dass der Basisstrom für bipolare Werte ausreichend ist, oder verwenden Sie MOSFETs Die Wahl des Designs hängt davon ab, welche Art von LED Sie ansteuern (hoher / niedriger Strom).

Suchen Sie im Internet nach "555 LED Fade" und Sie sollten viele Ergebnisse erhalten. Hier ist eine, die zufällig von hier ausgewählt wurde (ich habe sie nicht überprüft, daher kann ich nicht bestätigen, dass sie richtig funktioniert):

LED verblassen

Wenn die absolute Genauigkeit des Timings nicht so wichtig ist, besteht eine einfache Option darin, ein RC-Filter und einen Transistorschalter zu verwenden. Auf diese Weise muss die Kappe nicht den LED-Strom liefern, sondern nur den Basisstrom. Etwas wie das:

Fade Circuit

Simulation:

Fade Circuit Simulation

Jeder Allzweck-NPN sollte funktionieren, und Sie können die R- und C-Werte entsprechend anpassen.

Diese Option kann durch Hinzufügen eines Operationsverstärkers problemlos auf ein aktuelles Spiegelarray erweitert werden. Diese Schaltung sollte gut funktionieren, solange alle Transistoren vom gleichen Typ sind (die verwendete Versorgung beträgt +5 V):

LED Fade Array

Simulation:

LED Fade Array Simulation

Wenn Sie eine ausreichend hohe Versorgungsspannung haben, können die LEDs wie folgt in Reihe geschaltet werden (die hier verwendete Versorgung beträgt +10 V):

Opamp LED Fade Serie

Simulation:

Opamp LED Fade Series Simulation

Wenn Sie eine niedrige Versorgungsspannung haben, aber die LEDs in Reihe schalten möchten, gibt es alternativ viele günstige Boost-ICs wie den CAT4238 . Dieser Teil kann die LEDs mit PWM oder einer variierenden Gleichspannung dimmen (Details finden Sie im Datenblatt).

LED Boost IC

Oli Glaser
quelle
Umfassende Antwort, danke. Das RC-Setup kommt dem, was ich suche, am nächsten, aber LEDs, die mit ungeraden Helligkeitsstufen nicht mehr synchron sind, klingen nicht vielversprechend. Wenn ich das richtig verstanden habe, wäre es dann nicht möglich, einen in sich geschlossenen IC mit variablem Widerstand herzustellen, um den RC-Wert zu ändern und letztendlich die Fading-Zeit anzupassen?
Vom
1
@rom - Solange die Transistoren vom gleichen Typ sind und ziemlich gut zusammenpassen, sollte die Schaltung in Ordnung funktionieren. Wenn Sie sich darüber jedoch Sorgen machen, geben Sie mir eine Weile Zeit und ich werde eine ähnliche Option veröffentlichen, die nicht unter diesem Problem leidet und von einem variablen Widerstand für die Überblendzeit gesteuert wird (wir können die Überblendung auch linear machen).
Oli Glaser
1
@rom - Ich habe die Schaltkreise für stabilere Versionen geändert. Jedes davon sollte geeignet sein. Die Serienoptionen sind die beste Option, wenn Sie über einen ausreichenden Headroom für die Versorgung verfügen. Die parallele Stromquelle ist jedoch in Ordnung, solange Sie dieselben Transistoren verwenden. Die Verstärkungen stimmen ziemlich gut überein (wenn Sie einen Transistortester haben, können Sie diese von Hand auswählen, wenn Sie wünschen, aber der aktuelle Unterschied wird ohnehin gering sein und wahrscheinlich nicht ausreichen, um sichtbar zu sein.) Ich habe ein IC-Beispiel hinzugefügt - vielleicht möchten Sie auch alle anderen Optionen durchsehen.
Oli Glaser
10

Wie ist das?

Der FAN5646 ist eine flexible und kompakte Lösung für eine blinkende / verblassende LED.

typische Anwendungsschaltung

FAN5646 Datenblatt

dext0rb
quelle
Das ist ein interessanter Chip. Ich werde das probieren müssen. Süßer Fund dextorb
Passant
3

Sie können eine kleine Kappe + einen großen Widerstand verwenden, um eine schöne lange Ladungscharakteristik (t = RC) zu erzeugen, diese dann in die Basis eines Transistors einspeisen und von dort aus die LED ansteuern.

Dies ermöglicht einen größeren Widerstand, da der Strom durch die LED nicht durch die Widerstandsgröße begrenzt ist und Sie dann eine kleine Kappe verwenden können.

Es wäre notwendig, den Transistor so vorzuspannen, dass er als Verstärker verwendet wird (wenn er auf Sättigung trifft, bleibt die LED einfach an).

Stanri
quelle
1

Wenn Sie über einen digitalen Pin einen Ausgang eines Prozessortyps verwenden, können Sie die Helligkeit der Firmware ändern. Wenn Sie den Arbeitszyklus des Stifts ändern, wirkt das Auge wie ein Filter und nimmt eine kürzere Zeitspanne als eine Verringerung der Helligkeit wahr.

1 - Verwenden Sie einen PWM-Pin-Ausgang anstelle eines digitalen GPIO-Pins. Durch Ändern einiger Register können Sie die Einschaltzeit der LED und damit die Helligkeit ändern.

2 - Verwenden Sie einen Timer (abgefragt oder unterbrochen), um den Status Ihres Pins zu ändern.

3 - Verwenden Sie externe Schieberegister-ICs, um die Ein / Aus-Zeiten von n LEDs zu speichern. Dies erfordert zwar mehr Programmieraufwand, ist jedoch erweiterbar und verwendet weniger GPIO-Pins als (1) und (2).

Speer
quelle
0

PWM-LED-Treiber. Sie müssen jedoch von einem Mikrocontroller konfiguriert werden. 555 Timer + einige Widerstände und Kappen können dasselbe, keine Software erforderlich.

Passant
quelle