Follow-up zu dieser Frage . Ich habe eine Schaltung mit drei Instanzen dieses Impulsdetektors:
simulieren Sie diese Schaltung - Schema erstellt mit CircuitLab
C1 / C2 noch nicht vorhanden - daher der 0F-Wert. R2 variiert von Stromkreis zu Stromkreis (20K-120K), um eine andere Auslösespannung zu erhalten.
Nehmen wir zunächst an, dass die Eingänge Rechteckwellen sind, der niedrige Pegel bei 0 V und der hohe Pegel je nach Schaltung zwischen 12 V und 50 V variiert. Die Ausgänge sind mit den GPIO-Pins eines SAMD21 verbunden.
Die Schaltung ist viel instabiler als ich erwartet hatte. Das einfache Berühren der Basis von Q1 - entweder mit einem Finger oder einem isolierten, nicht verbundenen Kabel - reicht aus, um eine Impulserkennung im Mikrocontroller zu bewirken. Impulse können auch in benachbarten Schaltkreisen eine Erkennung verursachen: Kanal 1 am Ausgang des ersten Schaltkreises (R1 = 20k). Sein Eingang empfängt eine nicht entprellte 30V. Kanal 2 am Ausgang des zweiten Stromkreises (R1 = 120k). Keine Eingabe angewendet.
Welche Möglichkeiten gibt es hier?
- Das Reduzieren von Widerständen um eine Größenordnung würde helfen, aber ich würde es vorziehen, eine hohe Eingangsimpedanz beizubehalten.
- Das Hinzufügen von C1 würde ebenfalls helfen, aber einen langsameren Übergang der Ausgabe verursachen, wie in der Antwort auf die oben aufgeführte Frage sehr gut dokumentiert. Es gibt Möglichkeiten, dies zu kompensieren, aber ich möchte sie nach Möglichkeit vermeiden. Ich habe simuliert, dass C1 bis 1nF die Leistung nicht zu stark zu beeinträchtigen scheint, aber wäre es groß genug, um die Rauschprobleme zu lösen?
- Würde das Hinzufügen von C2 helfen?
- Welche andere Option fehlt mir?
Hauptbearbeitung.
Also ... Die bisherigen Antworten sagen mir, dass meine ursprüngliche Frage zweierlei war:
- wie man das Design für die Störfestigkeit optimiert - was der Titel sagt. Ich glaube, dass die beiden Antworten von analogsystemsrf und jonk ausgezeichnet sind und diesen Punkt gut abdecken. Danke euch beiden.
- wie man diese Schaltung im wirklichen Leben zum Laufen bringt, denn selbst wenn es so sein sollte, tut es das nicht. Dies ist noch eine offene Frage, und Ihre Kommentare sagen mir, dass ich nicht genügend Informationen für eine korrekte Analyse bereitgestellt habe.
Das ist es, worüber wir sprechen: Der Stapel besteht normalerweise aus 4 Brettern. Von oben nach unten:
- Karte Nr. 1 und Nr. 2 sind Zwillinge, die jeweils um einen analogen 8-zu-2-Multiplexer-IC MAX4618 herum aufgebaut sind .
- Board Nr. 3 (in Foto und Tests entfernt) ist ein Adafruit- Mikrocontroller-Board auf SAMD21-Basis .
- Karte Nr. 4 enthält die ursprünglich beschriebene Schaltung. Es basiert auf einem Adafruit Feather Prototyping Board.
Die zuvor diskutierte Schaltung war tatsächlich unvollständig. Der Hauptunterschied besteht darin, dass die auf Impulse überwachten Schaltungen auch auf Durchschnittsspannung überwacht werden. Hier ist die vollständige Version: Die Komponenten der oberen Hälfte befinden sich an Bord Nr. 4. Die untere Hälfte (ohne die Quellen) befindet sich an Bord Nr. 1.
In weiteren Details:
- Die Verbindung von Karte Nr. 3 zu Karte Nr. 4 besteht nicht aus normalen Headern, sondern aus ungeschnittenen Widerstandsstiften. Der Kontakt ist gering (Stiftdurchmesser ist zu klein).
- Versorgung und Masse werden durch Platine Nr. 2 durch den 3-poligen Header eingespeist, der im Vordergrund zu sehen ist. Der gleiche Stift wird als Bereichsreferenz verwendet.
- Das 1Meg / 20K-Verhältnis der oberen linken Schaltung wird so gewählt, dass Q1 beginnt, um 30 V zu leiten. Das 1Meg / 120K-Verhältnis der oberen rechten Schaltung wird so gewählt, dass Q2 beginnt, um 6 V zu leiten.
- Die Ausgänge der oberen Schaltkreise würden in digitale E / A-Pins von SAMD21 eingespeist. Da die SAMD21-Karte nicht vorhanden ist, haben sie keine zusätzliche Last - außer Oszilloskopsonden (dazu später mehr).
- Die Ausgänge der unteren Schaltkreise werden in den MAX4218 eingespeist, dessen ENABLE-Pin hoch ist - alle seine Eingänge sind hochohmig.
- Mein erster Beitrag besagte, dass es drei Kopien der Schaltung gab. Der dritte ist ein exakter Klon der rechten Hälfte des Schaltplans. Es ist nicht an dieser Diskussion beteiligt - vergessen wir es.
- Das 30-V-Testsignal wird durch Berühren des entsprechenden Stifts auf der DB25-Breakout-Karte erzeugt.
- Der Screenshot oben hatte Kanal 1 am Kollektor von Q1 und Kanal 2 am Kollektor von Q2.
- Um das Bild zu vervollständigen, hier ein weiterer Screenshot des Scopes, diesmal mit Kanal 1 auf der linken Seite von R3 und Kanal 2 auf dem Kollektor von Q1. Wie von jonk vorgeschlagen, treten verrauschte Bereiche auf, wenn der Eingang hoch dv / dt ist. Ich vermute, dass der langsame Rücklauf auf Kanal 1 durch C1 verursacht wird.
Der Gesamtstromverbrauch des Moduls beträgt im eingeschwungenen Zustand ~ 200 uA. Mit dem angelegten 30-V-Signal hat sich das kaum geändert - ich habe gerade festgestellt, dass Q1 noch nicht vollständig geleitet ist. Mit 40 V Eingang ist Q1 voll leitend und der gesamte Modulverbrauch beträgt ~ 400uA. Die Genauigkeit des Messgeräts ist wahrscheinlich nicht so groß. Das Laden / Entladen aller Kappen wird durch Widerstände von 10 k oder mehr begrenzt. Ich kann ein Daisy-Chain-Grundproblem nicht ausschließen, aber ich bezweifle etwas, dass es das ist.
Über die Sonden: Es handelt sich um 10x Sonden, tatsächlich im Bereich von 10 Mohm, 10-20 pF. Wenn die Sonde angebracht und der Stromkreis im eingeschwungenen Zustand ist und kein Eingang angelegt ist, hat das Messgerät eine geringfügig negative Versorgung gemessen. Ein weiterer Beweis dafür, dass die Sonden einen signifikanten Einfluss auf die Schaltung haben. Das Problem wurde jedoch ursprünglich erkannt, weil der Mikrocontroller Impulse an Pins meldete, die kein Signal empfingen. Die Sonden können es also noch schlimmer machen, aber es ist trotzdem vorhanden.
Endeffekt
Ich stimme zu, dass bei einer besseren Konstruktion das Problem von selbst verschwinden kann. Ich möchte jedoch eine Lösung für dieses Übersprechproblem im aktuellen Setup finden und die Verstärkung, die durch eine bessere Konstruktion (PCB, alle Platinen zusammenführen) und Hysterese erzielt wird, als zusätzlichen Spielraum verwenden. Irgendeine Idee, wie man das behebt?
Eine weitere Bearbeitung
Es ist Zeit, das Übersprechopfer etwas genauer zu beschreiben - die 1Meg / 120K-Schaltung in der oberen rechten Ecke des vorherigen Schaltplans. Der normale Eingang dieser Schaltung ist eine 0-14 V Rechteckwelle. Das gewünschte Verhalten besteht darin, zu erkennen, wann sich der Pegel ändert. Der Sinuswelleneingang dient nur zur Veranschaulichung des 6-V-Wendepunkts, den ich in Kommentaren beschrieben habe, als ich sagte, dass ich mindestens 6 V Rauschen benötige, um einen Impuls am Ausgang dieser Schaltung zu sehen.
Noch eine Bearbeitung
Basierend auf der Idee von sstobbe, dass das Rauschen durch kapazitive Kopplung im Flachbandkabel verursacht werden könnte, habe ich meinem letzten Schaltplan C3 hinzugefügt, um es zu modellieren: Hier ist die Simulationsausgabe. Rot ist der angetriebene Ausgang, Grün ist der parasitär getriebene Ausgang: Das ist richtig. Eine parasitäre Kapazität von 2 pF von Leitung zu Leitung reicht aus, um eine Änderung des Störpegels auf dem anderen Kanal zu verursachen. Ich habe mit der Quellanstiegszeit von 1 ns bis 1us mit ähnlichen Ergebnissen simuliert.
Es ist verlockend, diese mit den Screenshots des Oszilloskops zu vergleichen, sowohl in Bezug auf die Wellenform als auch in Bezug auf das Timing, aber wir haben bereits festgestellt, dass das Oszilloskop die Schaltung beeinflusst. Der obige 2pF-Wert im Vergleich zur 10-20pF-Sondenkapazität ist ein weiterer Beweis.
Zur Behebung habe ich versucht, Kondensatoren an den BE-Übergängen der einzelnen Transistoren hinzuzufügen. Mit C4 = C5 = 1nF verschwindet der Fehler. Als ich versuchte herauszufinden, wie viel Spielraum ich habe, begann ich, C3 zu erhöhen. Hier ist die Ausgabe mit C3 = 40pF: Das ist vielleicht genug, um es mit Hardware zu versuchen, aber es ist immer noch ein sehr dünner Rand. Ich werde wahrscheinlich zuerst versuchen, die Hystereseschaltungen zu simulieren.
Es kann aber auch längst vorbei sein, die Transistoren loszuwerden und auf einen Operationsverstärker umzusteigen. Ich muss nur herausfinden, wie ich es entwerfen soll - die meisten 3,3-V-Operationsverstärker sind nicht offiziell für den Empfang von Spitzen von mehr als 30 Volt zugelassen.
Letztes Update (wahrscheinlich)
D'oh ... Manchmal ist die Wahrheit in aller Deutlichkeit verborgen.
In meinem letzten Schaltplan gibt es eine massive Lücke - die Signalquelle für den rechten halben Teil. Denn im wirklichen Leben wird es einen geben, auch wenn es in meinem Testfall keinen gab. Die niedrige Ausgangsimpedanz dieser Quelle ist das beste Rauschfilter, von dem ich träumen kann.
Also habe ich es gerade im Fahrzeug getestet, und obwohl es Geräusche / Übersprechen gibt, die eine falsche Erkennung verursachen, ist es viel weniger schwerwiegend als von Simulationen oder Bench-Tests vorgeschlagen. Ich bin ziemlich zuversichtlich, dass das Filtern mit kleinen Kappen am BE jedes Transistors und das Einstellen der Leitungspunkte (und das gleichzeitige Hinzufügen der Hysterese) dies vollständig erledigen wird.
Es ist Zeit, dieses zu schließen, es hat seinen vollen Lauf genommen. Ich habe wirklich Probleme, eine "beste" Antwort zu finden. Sie alle drei waren enorm hilfreich.
Antworten:
Wenn Sie sich Ihre Oszilloskopanzeige ansehen, halte ich das Hinzufügen von Hysterese für eine sehr gute Idee. Es sollte helfen, wie analogsystemsrf vorgeschlagen hat. Er schlug auch einen Entkopplungskondensator für die3.3V. Schiene. Ich denke, das macht auch Sinn. Es lohnt sich zu tun. Trotzdem habe ich ein kleines Problem damit, wie er die Dinge eingerichtet hat.
Der Injektor ist im Grunde (wie ich es verstehe) eine Spule (mit einem kleinen inhärenten Widerstand), die von einem Darlington geschaltet wird, dessen Emitter durch einen kleinen Stromerfassungswiderstand gegen Masse geht. Ich nehme an, es ist nicht ungewöhnlich, dass auch ein Zener über den Kollektor geerdet ist, mit einem Wert zwischen 36 und 39 V (oder mehr). (Dies bedeutet jedoch nicht, dass Sie keine sehr hohen Spitzen sehen können.)
Dies bedeutet, dass ich wahrscheinlich solide auslösen möchte, wenn die Spannung über etwa steigt32 - 35V. und auch fest in die andere Richtung, wenn die Spannung unter fällt 15 - 16V. . Die Art und Weise, wie ich dies erreichen möchte, indem ich Ihre Gedanken über a behalte1M Ω Eingangswiderstand soll die beiden Hystereseleitungen auf einstellen 34μ A. (aufsteigend) und 15μA (herunterfallen.)
simulieren Sie diese Schaltung - Schema erstellt mit CircuitLab
Jedes kleine Signal NPN BJT mit einer Beta über 140 oder so sollte gut funktionieren. 2N3904, PN2222A usw.
Ich empfehle Ihnen, zuerst das analogsystemsrf-Design auszuprobieren. Wenn das für Sie funktioniert, verwenden Sie es und sparen Sie sich einen Widerstand. Vergessen Sie in keinem Fall, die Bypass-Kappe anzubringen.
Die Grundidee in der obigen Schaltung ist ziemlich einfach. Beide BJT-Schaltkreise sind "symmetrisch" (derselbe Widerstand zieht ihre Basen nach oben, symmetrisch in dem Maße, in dem die Widerstandswerte und BJTs gleich sind). Beide können sich als Steuerung des anderen einschalten (ein BJT-Kollektor kann sich ausschalten das gegnerische BJT - aber nur, wenn das gegnerische BJT es nicht im Gegenzug ausschaltet .) Welches es ist, ist nicht vorhersehbar, ohne das Hinzufügen vonR1 zur Schaltung. R1 Ungleichgewicht dieser Schaltung und stellt sicher, dass Q1 schaltet sich aus wie aus , was erlaubtQ2 an der Macht nach oben wie auf .
Nun ist der Knoten beiQ1 Die Basis wird da sein 670[±20]mV wann Q1 ist an und es muss an oder weit darunter sein600mV Wenn ausgeschaltet (Änderung des Kollektorstroms um mehr als den Faktor 10). Es gibt keinen großen Unterschied zwischen diesem Wertepaar im Vergleich zu Ihrem "Signal", das übersteigt40V . So können wir leicht einen Strom berechnen, der von geliefert wirdR2 . Es wird ungefähr seinVZ−0.5VR2 , worum es geht 12μA wann VZ≈12.4V und ist ≥40μA wann VZ≥40V .
Beachten Sie, dass mitR3=R4=150kΩ bedeutet, dass mit einem +3.3V Stromversorgungsschiene, die Sie sehen werden 3.3V−0.5VR3+R5≈18μA .
WennQ1 gehalten wird ausgeschaltet durchQ2 , dann haben Sie ungefähr R1||R3≈19.2kΩ an seiner Basis nach unten ziehen. Es wird eine Strömung von ungefähr dauern34−36μA um das bis zu dem Punkt zu fahren, an dem es erforderlich ist Q1 ist an . Dies ist in der Nähe meines Ziels von etwa40μA . Sicherlich nah genug für eine solche Strecke.
WennQ1 ist stattdessen an , dann gibt es schon18μA Ankunft durch R3 und R5 , was zu jedem durchströmenden Strom beiträgt R2 . Die Spannung wird untergehen600mV und starten Sie den Prozess, der es schnell nach unten bewegt 500mV , wenn der Strom durch R2 fällt unter etwa 12μA (für eine kombinierte 30μA durch die Thevenin-Impedanz von 19.2kΩ .)
Das ist also ein sehr einfacher Ansatz. Es sagt Ihnen nicht, wie Sie die Werte für finden sollenR3 und R5 an erster Stelle. Aber Versuch und Irrtum würden Sie trotzdem schnell zu den richtigen Werten führen. Ich verwende dazu eine geschlossene Gleichung, die von einer Vielzahl von BJT-Parameterstatistiken gespeist wird. Aber das ist nur für die Robustheit. Für ein einfaches Design bieten die obigen Details genug, um das eigene Design zu berücksichtigen.
quelle
Fügen Sie Ihrer 3,3-V-Schiene 100 uF hinzu. Diese Schaltkreise sollten nicht interagieren, es sei denn, ihre Masse ist verkettet.
UND ---- 20% Hysterese hinzufügen
simulieren Sie diese Schaltung - Schema erstellt mit CircuitLab
Bitte beachten Sie, dass ich nach einigen mentalen Modellen der Auslösepunkte in der Hysterese den R4 als Vorschlag von 20.000 auf 100.000 erhöht habe. Es wurden keine Sims ausgeführt.
quelle
Diese Antwort bezieht sich auf das Übersprechen.
Ohne Filterkondensator am Eingang ist nicht viel Ladung erforderlich, um eine Jellybeans der Klasse 2n3904 oder einer ähnlichen Klasse mit einer einzuschaltenft von 200 MHz - 400 MHz.
Das Herunterziehen eines 10k-Pull-Ups an einer 3V3-Versorgung beträgt 330 uA.
Die Verarmungskapazität über vbe beträgt ungefähr 11 pF. Die Diffusionskapazität aufgrund der Leitung beträgt
Also insgesamt während der LeitungCbe beträgt 15 pF. Das Laden einer 15-pF-Kappe auf 0,7 Volt in einer Umgebung mit 50-Volt-Schwankungen erfordert nicht viel Streukapazität. 200 fF Streukapazität von einer in Q1 eingespeisten 50-V-Schwingung würden ausreichen, um eine vollständige Leitung zu bewirken.
Ich schätze, Ihr Flachbandkabel hat eine Streukapazität von 10 pF zwischen den Leitern, genug, um einen benachbarten Kanal auszulösen.
Es ist auch erwähnenswert, dass eine 10-pF-Kappe eine Impedanz von 1 MegOhm bei 16 kHz hat.
quelle