Ich versuche, einen Transistor zum Ein- und Ausschalten eines SSR zu verwenden, der wiederum einen Magneten ein- und ausschaltet. Ich habe ursprünglich einen NPN-Transistor (2N222) verwendet, aber dies verursachte Probleme beim Neustart der MCU, da alle IO-Pins hochgezogen werden . Während ich versuchte (mit meinem sehr begrenzten Wissen auf diesem Gebiet) zu theoretisieren, wie ich einen PNP-Transistor verwenden könnte, um die + 5 V, die zu den NPN-Transistoren gehen, ein- / auszuschalten, kam mir der Gedanke, dass ich einfach einen PNP verwenden könnte, um den SSR anzusteuern direkt. Dies würde das Neustartproblem vermeiden, da der Transistor "ausgeschaltet" würde, während der IO hoch getrieben wird (richtig ...?):
Ist dies eine angemessene Verwendung eines PNP-Transistors? Ist dies eine (wahrscheinlich-offensichtlich-für-die-meisten-aber-clever-für-mich) gültige Lösung?
Basierend auf Russells Antwort denke ich, dass dies nicht der Fall ist (zumindest nicht so, wie es hier gezeichnet wird), da der MCU-Ausgang nur 3,3 V und nicht 5 V beträgt.
Die von Ihnen vorgeschlagene Lösung ist als Basislösung gut genug, solange Sie garantieren können, dass die FEZ-Ausgabe jederzeit hoch bleibt, bis Sie sie niedrig einstellen. Das ist Ihre Aufgabe, das festzustellen.
Fügen Sie einen Widerstand mit hohem [tm]-Wert von +5 V zur PNP-Basis hinzu, um ihn ausgeschaltet zu halten, wenn "FEZ" offen ist. Andernfalls wird es wahrscheinlich zu "Überraschungen" kommen. 10k bis 100k reichen aus.
Beachten Sie, dass FEZ wie gezeigt auf nahe +5 V ansteigen muss, um den Transistor auszuschalten. Bereits 0,5 V unter der Schiene (4,5 V) können zum Einschalten führen. Dies kann je nach Implementierung des Prozessors/der Treiberschaltung ein Problem sein oder auch nicht. Was hier funktioniert, kann woanders scheitern, wenn dies nicht berücksichtigt wird. Wenn Sie die 10k bis 100k oben in eine zB 2k2 Basis zum Emitter ändern, wird die Ansteuerspannung so geteilt, dass Sie eine negativere gping-Spannung benötigen, bevor der Transistor einschaltet. Passendes Design.
Das Solenoid MUSS eine Sperrdiode haben, wenn es mit Gleichstrom betrieben wird, um die reaktive Spitze beim Ausschalten zu minimieren.
Wie gezeigt, hat Ihr SSR eine TRIAC-Ausgangsstufe. Dies kann ein AC-Laufwerk bedeuten oder nur das Symbol sein, das Sie zur Verfügung hatten. Wenn es sich tatsächlich um ein wechselstrombetriebenes Solenoid handelt, müssen Sie es möglicherweise "drosseln", um Blindenergieprobleme wie bei Gleichstrom zu vermeiden.
Wenn der Optokoppler beim Ein- und Ausschalten auf "Nulldurchgang" geschaltet ist, benötigen Sie möglicherweise keinen "Snubber", obwohl bei einer hochreaktiven Last Strom und Spannung um fast 90 Grad phasenverschoben sind und das Ausschalten bei einem Spannungsnulldurchgang immer noch erfolgt führen zu einem induktiven "Kick".
Wenn der Optokoppler nicht nulldurchgangsgeschaltet ist, benötigen Sie einen Snubber, um die Blindenergie abzubauen. Sie können nicht einfach eine Sperrdiode verwenden, da sie bei jeder zweiten Halbwelle leitet (und es würde " Ärger geben! " :-) ). . Ein Verfahren besteht darin, Zenerdioden mit entgegengesetzter Polarität in Reihe zu verwenden, wobei die Zenerspannungen mindestens geringfügig über der Spitzen -AC-Halbwellenspannung liegen. zB für 110 VAC Netzspulenantrieb Vzener >= 110 x 1,414 >= 160- V. Sagen wir 18- V Zener. ( Magnetklemme 1 - Zener 1 Kathode, Zener 1 Anode - Zener 2 Anode, Zener 2 Kathode - Magnetklemme 2.
Powerup-Handhabung
Während das oben Gesagte das Problem wie dargestellt löst, KANN es das Problem nicht lösen, wie es in generischen Fällen der realen Welt der Fall ist, und möglicherweise auch nicht in diesem Fall. Hier haben wir uns von dem, was der Prozessor beim Start tut, "gefangen nehmen" lassen, anstatt zu entwerfen, was passieren soll. Wenn der Prozessor nicht ganz das tut, was wir wollen, sind wir gezwungen, eine andere Problemumgehung zu finden.
Eine Alternative besteht darin, eine Schaltung zu entwerfen, die garantiert richtig startet. Das ist vielleicht nicht ganz die billigste und einfachste Lösung und ob es sich lohnt, hängt von der Anwendung ab. Ich werde nicht ins Detail gehen, da es viele Möglichkeiten gibt, dies zu tun.
Nur ein Beispiel. Es wird ein NPN-Treiber verwendet. Die Transistorbasis ist über eine Diode (möglicherweise eine Schottky-Diode) mit einer Elektrolytkappe verbunden. Der Kondensator wird auch über einen Widerstand von Vcc geladen. Beim Einschalten liegt der Kondensator auf 0 V, sodass die Transistorbasis durch den Kondensator niedrig geklemmt wird und der Transistor nicht einschalten kann. Der Kondensator wird durch den Widerstand von Vcc hoch geladen und nach einer Zeit von wahrscheinlich < 1 Zeitkonstante Vkondensator > 0,6 V (ohne Berücksichtigung des Diodeneffekts) und der Kondensator hat keine Auswirkung mehr auf den Betrieb. Was beim Ausschalten passiert, muss bestimmt werden.
Verschiedene Möglichkeiten sind denkbar. zB könnte der Kondensator stattdessen von einem "Ersatz"-Pin gesteuert werden und eine Anzahl von Treibern auf diese Weise zusammen gesteuert werden. Dies könnte jederzeit als Massen-"Treiberdeaktivierung" zu einem Mehrpreis von einer Schottky-Diode pro Treiber verwendet werden.
Ob sich dieses oder ein anderes Schema lohnt, steht in jedem Fall noch in den Sternen.
Eine Alternative besteht darin, die Versorgung zu schalten, die zur Steuerung von Peripheriegeräten verwendet wird (wie in diesem Fall das SSR). Auch dies könnte mit Pin-Steuerung oder durch eine RC-Verzögerung erfolgen. Viele Möglichkeiten zum Nachdenken und Spielen.
3,3-V-Laufwerk und andere reale Probleme
Die MOC3010-Optokoppler- LED benötigt eine maximale Durchlassspannung von 1,5 V, sodass eine Ansteuerung von 3,3 V in Ordnung ist.
Verbinden Sie den PNP-Emitter mit 3V3 (falls verfügbar) und fahren Sie wie oben beschrieben.
Wenn es auf der Eingabezeile verschiedene Aussetzer gibt, bevor sich die Dinge beruhigen, ist eine meiner Powerup-Ideen oder ähnliches erforderlich, wenn falsche Operationen vermieden werden sollen.
Wenn die Reaktionszeit kein Problem darstellt oder eine Verzögerung von beispielsweise 0,5 s akzeptabel ist, wird der Betrieb durch Hinzufügen eines Kondensators "geeigneter Größe" zur Transistorbasis (ob PNP oder NPN) verlangsamt. Dies verlangsamt auch die Release-Zeit, sodass Sie sich der Gesamteffekte bewusst sein müssen.
Selbst wenn der Betrieb ohne Snubber zu funktionieren scheint, würde ich SEHR DRINGEND empfehlen, einen Snubber zu verwenden, da "Sachen passieren" und Sie früher oder später wahrscheinlich "einfach so" auf die Netzspitzenspannung treffen und eine induktive Spitze von beträchtlicher Größe erleben . In Abwesenheit eines Dämpfers kann der TRIAC selbst entscheiden, die Energie zu erhöhen und zu zerstreuen.Ob er dies destruktiv tut oder sich nur für einen weiteren Halbzyklus einschaltet, ist TBD.Dies ist nicht die Art von Dingen, die Ihre Komponenten bestimmen sollen in Ihrem Namen. Ein zuverlässiges Design ist eines, das (zumindest) entworfen wurde. Wenn Dinge passieren können, für die Sie nicht entworfen haben, können Sie damit rechnen, dass das Unerwartete passieren kann.
Ja, deine Schaltung ist in Ordnung.
Eine Sache jedoch: Aus Gründen der Übersichtlichkeit ist es normalerweise eine gute Idee, Schaltpläne mit von oben nach unten positiven und negativen Versorgungsspannungen zu zeichnen. Mit anderen Worten, Ihre Schaltung ist richtig, aber ich möchte, dass der Transistor vertikal transponiert wird. Emitter oben an +5V-Versorgung angeschlossen, Kollektor nach unten, der das SSR antreibt, und Basis nach links, wie Sie es haben. Meine erste Reaktion war, dass Ihr Stromkreis unterbrochen war, bis ich die 5 V unten bemerkte.
Wenn ich Sie richtig verstehe, ist der Emitter des Transistors mit +5 V verbunden, aber der Mikrocontroller hat 3,3 V.
Generell kann man das nicht. Wenn Sie den Ausgang hoch machen, wird immer noch Strom durch die Basis gezogen: (5 V - 0,7 V - 3,3 V) / 2200 = 450 A, was ausreichen würde, um das SSR einzuschalten. Eine Lösung wäre, den I/O-Pin auf Eingang zu schalten, anstatt ihn zu einem hohen Ausgang zu machen, aber die meisten 3,3-V-Controller sind nicht 5-V-tolerant.
Sie könnten ein paar Volt von der Basis abfallen lassen, indem Sie ein paar Dioden in Reihe schalten, aber diese benötigen Strom, um den Spannungsabfall zu erzeugen, was bedeuten würde, dass Sie einen Widerstand gegen Masse benötigen, und dann haben Sie wieder Ihr ursprüngliches Problem: beim Start Der Pfad Transistor-Dioden-Pulldown leitet und schaltet das SSR ein.
Mein Vorschlag wäre, zurück zur NPN-Lösung zu wechseln und sicherzustellen, dass alle internen Pull-ups deaktiviert sind.
Wenn mein Gedächtnis mir dient, ist das einzige Problem, dass das, was Sie getan haben, den "Sinn" der FEZ-Eingabe umkehrt. Das heißt, um den Transistor "EIN" zu schalten, müssen Sie die Basis des PNP-Transistors auf GND treiben. Abgesehen davon scheint es mir eine vollkommen gültige Lösung zu sein.
B Peter
Markieren
B Peter
Connor Wolf
Markieren