Ich habe bisher einen ziemlich erfolgreichen Versuch unternommen, ein LED-Display mit einem Arduino Mega 2560 anzusteuern. Die Display-Sequenzen funktionieren gut für sich und der Arduino scheint seine Arbeit zu erledigen und die Muster zu senden. Der Teil, mit dem ich zu kämpfen habe, ist, dass ich versuche, die Intensität des Displays mit PWM zu steuern. Ich verwende einen NE555P-Timer, der hauptsächlich auf den Informationen hier basiert: 555 Oscillator Tutorial
Das Endziel besteht darin, POT1 durch einen Drehschalter zu ersetzen, um mehrere vordefinierte Helligkeitseinstellungen über Widerstände auszuwählen, sowie einen Ort für eine Fotozelle, um eine automatische Dimmung zur Anpassung an das Umgebungslicht bereitzustellen. Ich brauche einen externen Oszillator im Gegensatz zum PWM auf dem Arduino-Board, weil ich vorhabe, einen Atmega-Chip anstelle des gesamten Arduino zu verwenden, wenn mehr hergestellt werden.
Das Problem, das ich habe, ist, dass egal wie ich versuche, die PWM zu regulieren, es keinen Einfluss auf die Helligkeit der LEDs hat. Sie bleiben unabhängig von den Timer-Einstellungen mit der gleichen Intensität beleuchtet. Ich habe eine einzelne Anzeige-LED am Timer vor R48 angebracht, die wie erwartet problemlos dimmt. Es ist das LED-Array, das nicht betroffen zu sein scheint und unabhängig vom Oszillator mit der gleichen Intensität ausgegeben wird. Da die gesamte Eingangsspannung durch die Impulse geregelt werden sollte, scheint es mir, dass sie dimmen müssten, es sei denn, sie beziehen Strom von woanders. Scheint das richtig zu sein? Ich habe versucht, den Transistor 17 durch einen FET zu ersetzen, um festzustellen, ob die Schaltgeschwindigkeit des 2N2222 möglicherweise nicht schnell genug war, aber es gab keine Änderung.
Sollte ich besser einen anderen Timer verwenden oder habe ich einfach etwas falsch angeschlossen? Gibt es eine Möglichkeit, die Spannung in das LED-Array besser zu isolieren? Ich bin ziemlich ratlos, warum die LEDs von der PWM nicht betroffen sind. Auf dem Schaltplan wird die Verbindung zum Arduino Mega2560 durch die Beschriftungen "Digital" dargestellt. Jede Eingabe ist willkommen, ich habe versucht, sie umzuschalten, hatte aber keinen Erfolg. !! Update: Ich habe Änderungen am Schaltplan vorgenommen, basierend auf einigen hilfreichen Vorschlägen. An der Helligkeit des Displays ändert sich allerdings noch nichts. Aktualisierung 3:
Probleme beim Einfügen der Bilder...
Es gibt, denke ich, eine Reihe von Problemen. Versuche dies:
Reduzieren Sie C2 auf 0,01 uF und erhöhen Sie R47 auf 10k. Sie geben Ihren Potwert nicht an, aber ich gehe von 1k aus. Erhöhen Sie dies auf 100.000 und schalten Sie eine 1.000 in Reihe damit. So wie Sie es jetzt haben, wird der Pot-Wert viel zu niedrig, als dass die Schaltung richtig funktionieren könnte.
Dann müssen Sie eine größere Änderung an Ihrem Transistorausgang vornehmen. Versuchen Sie so etwas wie
Simulieren Sie diese Schaltung – Mit CircuitLab erstellter Schaltplan
Beachten Sie, dass es 2 LED-Ausgänge gibt. Teilen Sie Ihre LEDs in 2 gleiche Gruppen und treiben Sie jede Gruppe mit einem Ausgang an. Dadurch bleiben die PNP-Strompegel innerhalb der Spezifikation (3906 sind nur für 100 mA ausgelegt).
Alternativ können Sie den Transistor und R48/49 vollständig entfernen. Der Ausgangsstrom für einen 555 beträgt 200 mA, das ist ungefähr das, was Ihre LEDs ziehen werden. R48 und R49 sind so niedrig, dass Sie sich dem sowieso nähern.
Schließlich würde ich vorschlagen, Ihre Basiswiderstände (R17 - R32) auf etwa 1k bis 2k zu reduzieren, nur um sicherzustellen, dass die Transistoren stark angesteuert werden.
Jippie
WasRoughBeast
Andi aka
Hi Weg
Hi Weg
Andi aka