Ich arbeite an einer DIY-Wechselstrom-Dimmerschaltung mit Arduino. Dieses Projekt ist Teil der hier erwähnten AC-Dimmerschaltung
Seitdem steckte ich fest und dachte daran, meine Schritte zurückzuverfolgen und jeden Teil der Schaltung zu überprüfen und mich dann nur weiter zu bewegen (zum Triac-Teil).
Es stellt sich heraus, dass ich nicht einmal eine Nulldurchgangserkennung durchführen kann.
Mein Code in Arduino:
int led_to_glow = 12;
void setup()
{
pinMode(LED_BUILTIN, OUTPUT);
attachInterrupt(digitalPinToInterrupt(2), zero_crosss_int, RISING); // Choose the zero cross interrupt # from the table above
}
//the interrupt function must take no parameters and return nothing
void zero_crosss_int(){
digitalWrite(led_to_glow, HIGH);
delayMicroseconds(10);
digitalWrite(led_to_glow, LOW);
delayMicroseconds(10);
}
void loop() {
}
Jetzt bin ich ein Neuling in DIY-Projekten und da diese Schaltung nicht so funktionierte, dachte ich, ich würde meine Steckbrettschaltung auch hier posten.
(Ich habe die irrelevanten Teile der Schaltung gelöscht)
Der gelbe Überbrückungsdraht von wird als Interrupt an den digitalen Pin 2PC 817
des Arduino gesendet (wie im Diagramm zu sehen).
Das Arduino erkennt das RISING-Signal darauf und ruft die ISR auf. Ich habe die Ausgabe an den Pins von PC 817 überprüft, die zum Arduino gehen (mit einem Multimeter), es gibt ~ 10 V.
Ich habe eine gemeinsame Masse und VCC von arduino hinzugefügt, da sie später in der AC-Dimmer-Schaltung verwendet wird (und ich verstehe, dass überall dort, wo VCC von arduino ist, gnd auch von arduino sein muss und nicht von woanders, oder?) .
Danke. Sizu
Ich habe PC 817 auf 4N25 geändert (wie ich später herausfand, dass ich diese Komponente hatte)
Ich habe dem Eingang von 4n25 einen Widerstand hinzugefügt, der 2 V eingibt (ich erwäge einen höheren Widerstand, da die maximale Durchlassspannung für 4n25 1,5 V beträgt).
YELLOW Wire ist direkt mit Arduino Digital Pin 2 verbunden (dh INT0)
Wie sich herausstellt, beträgt der Spannungsabfall zwischen dem gelben Draht (Interrupt-Pin) und GND von Arduino 5 V DC, wenn AC ausgeschaltet ist, während er bei eingeschaltetem AC 0,54-0,55 V beträgt. Gibt es einen Grund dafür?
Ich habe es auch versucht
attachInterrupt(digitalPinToInterrupt(2), zero_crosss_int, FALLING); // Choose the zero cross interrupt # from the table above
Ich habe RISING in FALLING geändert , es hat immer noch nicht funktioniert.
Ich muss die LED leuchten lassen, ich habe vergessen, den LED-Pin als Ausgangspin im Arduino-Code zu definieren, aber dann leuchtet er auch sehr schwach und selbst das Multimeter kann den potenziellen Abfall über der LED nicht finden
Der neue Code sieht also so aus:
pinMode(12, OUTPUT);
attachInterrupt(0, ledBlink, FALLING); // Choose the zero cross interrupt # from the table above
}
Falling / RISING / CHANGE (alle 3 funktionierten, aber ich denke, FALLING sollte wegen des Pull-up-Widerstands verwendet werden)
Die von Ihnen entworfene Nulldurchgangsschaltung ist konzeptionell korrekt, jedoch nicht richtig dimensioniert. Genau, die Widerstände, die Sie aus der ursprünglichen Schaltung entfernt haben, haben nicht nur die Funktion, die Spannung zu reduzieren, die an die geht Optokoppler ( Typ 4N25 ) auf ein zerstörungsfreies Niveau, sondern begrenzen auch seinen Eingangsanodenstrom . Ohne sie wird die Eingangsfotodiode von wird wahrscheinlich beim Einschalten zerstört. Daher sollten Sie der Sekundärwicklung des Transformators zwei weitere Widerstände in Reihe schalten, um den Maximalwert von zu begrenzen .
Bearbeiten . Auch wenn das Problem wahrscheinlich durch die richtige Einstellung des Pins der Arduino-Platine gelöst werden kann, hat das OP um Rat gefragt, wie der Eingangswiderstand des Optokopplers richtig dimensioniert werden kann, also habe ich beschlossen, die folgenden Hinweise hinzuzufügen. Betrachten wir zunächst die folgende Optokoppler-Standardschaltung mit BJT-Ausgang:
Simulieren Sie diese Schaltung – Mit CircuitLab erstellter Schaltplan
Wo ist der Ausgangskollektor-(Pull-up-)Widerstand und ist der Eingangsvorspannungswiderstand.
So legen Sie den Eingangswiderstand richtig aus ? Unter der Annahme, dass der maximale Kollektorstrom von Ist
Überlegungen zur Anstiegs-/Abfallzeit der Kollektorspannung von . Optokoppler sind nicht gerade die schnellsten auf dem Markt erhältlichen Bauelemente, aufgrund der inhärenten Akkumulation von optisch erzeugten Minoritätsträgern, die nicht schnell entfernbar sind, und ihrer langsamen Erzeugung in ihrem BC-Bereich. Der Einschaltvorgang ist jedoch normalerweise schneller, da gespeicherte Ladungen nicht entfernt werden. Wenn Sie also "steile", gut definierte Flanken als Eingangssignale benötigen , wählen Sie die fallende .
Rokta
Sizu Taylorventuresllc