Ich muss einen Nulldurchgang für einen Softstarter erkennen. Vor langer Zeit habe ich es mit einem 1-Megaohm-Widerstand gemacht, der auf einer Seite direkt mit dem Mikrocontroller und auf der anderen Seite mit Strom verbunden war. Ich war erfolgreich, aber ist es ratsam? wie kann ich das sonst günstig und zuverlässig machen?
Ich habe Softstarter mit den PIC16C74A/F77-Prozessoren entworfen. Der Nulldurchgang kann schwierig sein, wenn Sie auch in lauten Umgebungen arbeiten müssen.
Wenn der Prozessor nicht von der Leitung isoliert werden muss, spricht nichts dagegen, wenn ein paar hochohmige Widerstände einen CPU-Pin speisen. Ich würde ein paar Shottky-Dioden verwenden, um die internen Schutzdioden nur aus Gründen der Robustheit zu verstärken, aber es wird gut funktionieren. Wenn Sie eine Isolierung benötigen, verwenden Sie einen Optoisolator mit Transistorausgang. Achten Sie auf die Schaltgeschwindigkeit des Optos und minimieren Sie den Kollektorstrom des Transistors, um die Schaltgeschwindigkeit zu maximieren.
Kommen wir aber zum Rauschen. Wenn Sie etwas anderes als die Widerstandsheizung phasensteuern, haben Sie mit Rauschen zu kämpfen, was bedeutet, dass Sie sehr wahrscheinlich mit Nulldurchgangsrauschen fertig werden müssen. Machen Sie nicht den Anfängerfehler, den Nulldurchgangseingang einem Interrupt-Pin zuzuführen; das wird Ihre Software in eine rauchende Masse von Gemeinheit verwandeln, wenn der Prozessor versucht, mit einer Unmenge von Interrupts fertig zu werden. (Ich spreche aus Erfahrung.) Das Werfen eines RC- oder fortschrittlicheren Tiefpassfilters auf die Leitung führt nur zu einer Phasenverschiebung. Wenn Sie damit arbeiten können, großartig. Wenn nicht (ich hatte es mit 50/60- und 400-Hz-Systemen zu tun), müssen Sie andere Mittel ausprobieren.
Bei meinem eigenen Design habe ich mich in der Software darum gekümmert, indem ich die Leitung abgefragt und im Wesentlichen eine Abstimmungsroutine erstellt habe, die Transienten ignoriert. Die Phasenverschiebung war innerhalb dessen, was ich handhaben konnte, es war schnell und es würde selbst bei starkem Rauschen nicht scheißen. (Getestet in einer Einrichtung, in der die Filterkappen von einem Induktionsofen entfernt wurden, ich habe noch nie zuvor eine so laute Linie gesehen!) Wenn ich sie umgestalten würde, denke ich, dass ich eine externe Lösung mit einem One-Shot ausprobieren könnte, die " Latch" den Nulldurchgang und dann würde der Mikrocontroller es bestätigen, bevor der nächste Interrupt gesetzt werden könnte.
Alles in allem denke ich, dass das zuverlässige Finden des echten Nulldurchgangs in jeder praktischen Situation einer der kniffligeren Teile des Softstarter-Designs war. Das Schließen des Regelkreises war zweitrangig, aber es war meistens nur Tuning. Es scheint eine kinderleichte Sache zu sein, aber ich habe in dieser Zeit einiges über den Unterschied zwischen Theorie und Praxis gelernt. :-)
bearbeiten, um die "Abstimmungs" -Routine zu beschreiben:
Wenn ich mich richtig erinnere, hatte ich eine E / A-Leitung, die hoch war, wenn die Leitung über Null war, und niedrig, wenn die Leitung unter Null war. Die Abstimmungsroutine hat diese Linie einfach abgefragt, und wenn 2 der letzten 3 Proben gleich waren, akzeptierte ich die Tatsache, dass die Linie Null gekreuzt hatte. Es ist der Abstimmungsschaltung eines UART sehr ähnlich, um Mark und Space zu erkennen. Der Vorteil einer solchen Schaltung besteht darin, dass Ihre Phasenverschiebung fest ist (2 * Abtastrate) und Sie sie auf die Art von Rauschen einstellen können, die Sie erleben. Ich erinnere mich nicht ohne Weiteres, wie schnell die Abfrage war, aber wenn ich raten müsste, würde ich 8 kHz sagen, da mir diese Zahl in Erinnerung bleibt.
Warum nicht einen Optokoppler verwenden? Der SFH6206 von Vishay verfügt über zwei antiparallel geschaltete LEDs, sodass er über den gesamten Zyklus der Netzspannung funktioniert. Ist die Eingangsspannung hoch genug, wird der Ausgangstransistor eingeschaltet und der Kollektor liegt auf Low-Pegel. Um den Nulldurchgang herum ist die Eingangsspannung jedoch zu niedrig, um den Ausgangstransistor zu aktivieren, und sein Kollektor wird hochgezogen. Sie erhalten also bei jedem Nulldurchgang einen positiven Impuls.
Ich hatte Erfolg mit der folgenden Verarbeitungskette:
Es gibt wahrscheinlich viele Möglichkeiten, dies zu tun ... aber wenn ich es tun würde, würde ich für alle Fälle einen kleinen Trenntransformator verwenden. Es ist niemals ratsam, das Stromnetz direkt an einen Mikrocontroller anzuschließen, auch nicht über einen großen Widerstand.
Ich denke, Ihre Optionen bestehen darin, einen großen Widerstandsteiler in einem Mikro oder einen kleinen Transformator zu verwenden, der die Netzpegelspannungen auf den Bereich Ihres Mikros herunterdrückt. Natürlich können Sie auch eine Kombination aus beidem verwenden.
Wenn Sie keinen Mikrocontroller verwenden möchten, können Sie jederzeit einen Komparator verwenden und die Spannung gegen 0 V testen lassen. Der Impuls des Komparators wird kurz sein, aber es gibt auch Möglichkeiten, damit umzugehen.
iamgopal
sternenblau