PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : EMV-Probleme durch 3-Phasen Brücke?



ikarus_177
30.11.2012, 13:52
Hallo,

kurz zur Vorgeschichte: ich arbeite an einem Brushlessregler für meinen Quadrocopter (siehe Schaltplan: 23891). Dazu habe ich eine zweiseitige Platine geätzt und bestückt - momentan stecke ich bei der Inbetriebnahme fest.

Ich habe die Schaltung - wegen des größeren Umfangs - in mehrere Teilbereiche eingeteilt; während des Aufbaus habe ich diese dann schrittweise getestet (funktionieren soweit zufriedenstellend): ein dsPIC33 erledigt die ganze Rechnerei und gibt 6 PWM-Signale (je ein highside und lowside Signal für insgesamt 3 Kanäle) mit 3,3V-Pegel aus. Diese Signale werden durch einen Standard-Logikbaustein auf 5V-Pegel für die FET-Treiber umgesetzt. Eine Strommessung ist auf dem Board ebenfalls vorhanden, für mein Anliegen aber nicht von Interesse.

Zum Testen habe ich nun ein kleines Programm auf den dsPIC geladen, welches 3 idente PWM-Signale ausgibt. Sowohl die Ausgabe der Signale, als auch die Wandlung auf 5V-Pegel, als auch die Treiberbausteine für die FETs funktionieren einwandfrei (15V-Gatespannungssignal sieht in Ordnung aus, kein Überschwingen etc.).
Allerdings gibt es große Probleme, sobald die Lastseite der Brücken versorgt wird. Konkret treten Störspitzen im Takt der PWM auf, die den DSP anscheinend zum "ausflippen" bringen (PWM-Peripherieeinheit hört auf zu arbeiten / es wird kein PWM-Signal mehr erzeugt / ein Programm, das eine LED zum Blinken bringt wird aber weiterhin korrekt ausgeführt):
23890
(3,3V-Versorgungsspannung direkt am Controller gemessen ; AC-Kopplung ; 500mV/div ; 10us/div)

Die Spitzen treten immer bei einer Flanke des PWM-Signals (30kHz) auf (nur die Gates der FETs werden angesteuert, die Brücken sind ansonsten unversorgt!). Dass bei diesen Amplituden der Controller den Dienst verweigert, scheint mir noch vernünftig zu sein - allerdings würde mich interessieren, wodurch solche extremen Spitzen entstehen können, wenn nicht mal Querströme auftreten können (da die Brücke ja nicht an der Versorgung hängt). Eine Vergrößerung der Stützkondensatoren brachte leichte Verbesserung (zuvor führte der Controller manchmal sogar einen Brownout-Reset aus).

Wird die Brücke über einen 390Ω-Widerstand mit der nominalen Betriebsspannung von 12V verbunden, vergrößert sich die Amplitude der Störungen nochmals. Wird die Brücke direkt versorgt, so (und das ist meine Vermutung) dürften die Spitzen so hoch werden, dass die PWM-Einheit des Controllers abschaltet. So nebenbei: wenn mit dem Oszi den Spannungsabfall an diesem Widerstand messe, so erhalte ich ein Signal mit großer Ähnlichkeit zu obigem Bild. Es muss also Strom in die Brücke fließen; da keine Last angeschlossen ist und ich Querströme beinahe vollständig ausschließen kann (betrachtet man beide Signale am Oszi, so zeigt sich eine deutliche Totzeit zwischen dem Einschalten des einen und dem Ausschalten des anderen FETs) - könnte dieser Strom der Ladestrom der Bootstrap-Kondensatoren der Treiberbausteine sein?

Habt ihr eine Idee, woher die Störungen kommen könnten bzw. wie ich sie beseitigen könnte (mit der derzeitigen Situation ist natürlich an die Bestromung des Motors gar nicht erst zu denken)? Abschirmung? Drossel in Serie zur Brückenversorgung? "Besseres" Layout?

Ich habe zuvor eine ähnliche Schaltung mit einem ATMega 8 aufgebaut und bilde mir im Nachhinein (die Schaltung habe ich wieder abgebaut) ein, auch dort ähnliche Störungen (über die Amplitude kann ich nichts mehr sagen) gesehen zu haben. Allerdings blieben diese dort ohne sichtbare Auswirkungen.

Bevor ich aber Modifikationen an der Schaltung vornehme, möchte ich zuerst die Ursache des Effekts verstanden haben, um nicht nur "Symptomsbekämpfung" zu erledigen.

Schöne Grüße & vielen Dank!

PICture
30.11.2012, 14:47
Hallo!

Es ist (fast) unmöglich die Ursache ohne kleiner "Forschung" zu finden. Anhand des Oszibildes würde ich mit Entstörung der VCC vom µC anfangen. Dafür versuche ich zuerst die skizzierte Schaltung mit drei Leitungen in am µC unterbrochene VCC einschleifen und evtl. Besserung beurteilen.

Der Tiefpass LC1 sollte die positive und DC2 die negative Spannungspitzen zumindest senken. ;)



L D L = Spule
___
VCC >---UUU--+->S-+---> VCC vom µC D = Schottky Diode
| |+
C1 --- === C2 C1 = vielschicht
--- /-\ Keramikkondensator
| |
=== === C2 = Elko
GND GND

(created by AACircuit v1.28.6 beta 04/19/05 www.tech-chat.de)

Klebwax
30.11.2012, 19:09
Du hast es dir IMHO an manchen Stellen zu kompliziert gemacht. Die 5V werden nur für deinen 244 gebraucht, dabei kann der IR21812 auch mit 3,3V angesteuert werden. Insbesondere bei deiner hohen Schaltfrequenz hätte ich den Buffer vermieden. Und bei 12V Motorversorgung kann man die auch für die Gatetreiber nehmen, die 3V extra sind den zusätzlichen Aufwand nicht wert. Und da wir gerade bei den Versorgungen sind, wie steif sind deine 15V? Ich sehe da nur 4,7µ, das könnte knapp sein.

Mit deinen Massen habe ich auch so ein Problem. Du hast GND und AGND. Dabei sollte AGND besser PWRGND heißen, den darüber fließt dein Brückenstrom. Da sollte nichts anderes ran, als die Brücke. Du misst zwar die Ströme differentiell, versorgst aber die Messverstärker mit der schlechtesten Masse, die du hast. Obendrein hängt da auch noch dein µC (mit AVSS) dran. Die untere Seite deiner Brückenversorgung ist auch nicht ganz einfach. Der Strom für die A-Brücke muß durch R5 und durch R11. Ist dieser Pfad niederohmig (und niederinduktiv) genug? An einem Shunt fällt imer etwas ab (sonst könnte man nichts messen) aber zwei hintereinander? Am Fuß des Brückenzweigs C hast du außerdem noch die Ströme der beiden anderen Zweige, was dir Rückwirkungen einbringt.

Um die Bootstrap Schaltung zu überprüfen, kannst du dir ja mal die Spannung zwischen z.B. D1 und C2 in Bezug zur Ansteuerung ansehen. Dabei kannst du dann auch schauen, wie sich die Spannungen von AGND bis zu C2 verhalten. Vielleicht fängst du ja mit der Ansteuerung von nur einem Brückenzweig an. So schlecht sich deine Schaltung auch benimt, auf die Störung kann man gut Triggern (auch wenn das ein schwacher Trost ist).

MfG Klebwax

ikarus_177
01.12.2012, 08:50
Hallo!

Danke für die beiden hilfreichen Beiträge! Jede Art von Lösungsvorschlägen / Schaltungskritik ist "greatly appreciated"! ;-)

@PICture: danke für die Schaltung! Werde ich versuchen!

@Klebwax: zu meiner Verteidigung muss ich anführen, dass dies mein erstes Projekt ist, das (vielleicht entfernt) mit Leistungselektronik zu tun hat. Ich bin daher in solchen Dingen wie der richtigen Masseführung etc. noch unerfahren. Deswegen habe ich die Schaltung (inklusive der Geschichte mit getrennten Massen) an das "Microchip MCLV Development Board" (Schaltplan hier (http://www.element14.com/community/docs/DOC-40544/l/microchip-user-guide-for-dspicdem-mclv-development-board)) angelehnt bzw. abgeschaut. Unter anderem auch den Buffer zur Pegelwandlung für die IR2181 und welche ICs mit welcher Masse versorgt werden (wie gesagt habe ich keine Erfahrung diesbezüglich).

Die separate 15V-Versorgung habe ich verwendet, weil die 12V aus einem 3s-LiPo-Akku stammen, der im (fast) leeren Zustand eventuell unter die Marke von 10V kommen kann. Der IR2181 braucht aber eine minimale Versorgungsspannung von 10V. Da ich hier keinen Ausfall im fliegenden Betrieb riskieren wollte, also die 15V, die mit einem diskreten Boostregler erzeugt werden. Ich habe die Brückenschaltung etwas abgeändert (IR2184 statt IR2181) bereits getestet gehabt (angesteuert direkt durch einen ATMega 8 und konnte damals keine Probleme feststellen. Eine Vergrößerung der Kondensatoren von 4,7u auf 220u (hatte ich gerade da) hilft aber auch nicht unmittelbar.

Die Leiterbahnen für den Leistungsteil habe ich auf der Platine mit Draht verstärkt, teilweise auch auf Drahtbrücken zurückgegriffen - sollte also niederohmig genug sein. Auch die Shunts sind ja mit 1,5mΩ relativ klein (?).

Die Bootstrap-Schaltung scheint - wie ein Test ergab - zu funktionieren; in einem der Versuche, in dem ich die Brücke über 390Ω mit +12V versorgt hatte und der Controller nicht ausrastete, konnte ich am Oszi eine "gebootstrapte" (oder "bootgestrapte"? :-D) Gatespannung des Highside-FETs beobachten.

Wenn ich also zusammenfasse kann: du würdest die Schaltung wie folgt ändern, dass du nur die Brücke mit AGND (PWRGND) versorgst, alle anderen ICs mit der Logikmasse (beide Massen sind aber auf einer zweiten Platine, auf der alle Spannungsregler beherbergt sind, verbunden)?

Schöne Grüße!

Bumbum
01.12.2012, 10:45
Guten Morgen,


ein Programm, das eine LED zum Blinken bringt wird aber weiterhin korrekt ausgeführt)

auf sowas bin ich auch schon oft hereingefallen. Wenn die LED gleich beim Start des Controllers auch wieder zu blinken anfängt merkt man einen Reset eventuell gar nicht. Abhilfe schafft dabei die LED beim einschalten (nach dem Reset) kurz anders blinken zu lassen, z.B. einfach 2 Sekunden an lassen.
Das habe ich auch hier im Forum gelernt und seitdem immer beibehalten. Das hilft ungemein solche Fehler mit Brown-Out und Störungen zu finden, wenn der Controller ungewollt "resetet".

Viele Grüße
Andreas

ikarus_177
01.12.2012, 11:10
Hallo Andreas,

dieses Schlupfloch habe ich bereits ausgeschlossen, der Controller resettet definitiv nicht mehr (vorher bei kleinem Stückelko gabs den Brown-out Reset); lediglich die PWM-Einheit stellt ihren Dienst ein.

Danke für das Kommentar!
Philipp

Besserwessi
01.12.2012, 17:06
Bei so schnellen Flanken kommt es bei der Masseführung nicht nur auf den Widerstand der Leiterbahnen an, sondern vor allem auf die Induktivität. Da hilft dann einen Verstärkung der Leiterbahnen wenig, sondern nur ein passendes Layout und ggf. etwas breitere Bahnen. Bei den Frequenzen ist auch nicht Kondensator nicht gleich Kondensator - insbesondere die 4,7 µF Elkos an der 15 V Spannung sollten eher Keramik Kondensatoren sein, oder noch welche parallel haben.

Auch wenn das hier eher nicht die Ursache für die Störungen sind gibt es da noch ein paar kleine Punkte in der Schaltung: Für die Treiber wäre ein 74HCT244 besser als 74ACT244 - einfach weil die nicht unnötig schnell sind, und damit weniger Störungen verursachen. Die Kondensatoren C11,C12,C13 sind reichlich klein - da sollte man eher mehr Filtern, so hohen Frequenzen interessieren eher nicht. Die gewählten Dioden an den MOSFETs sind keine große Hilfe: das sind 1 A Dioden parallel zum 140 A MOSFET, und nur unwesentlich schneller. Wenn überhaupt müssten da schon größere Schottkydioden hin, damit es was bringt.

Die Störungen sind eher eine Frage des Layouts, nicht des Schaltplans. Je nach Layout wären noch ein paar mehr Kondensatoren an der 12 V Versorgung hilfreich, z.B. für jede Halbbrücke einen. Der kritische Punkt ist vermutlich die Masse - die Gate Treiber und die MOSFETs sollten eher nicht an verschiedener Masse hängen.

Klebwax
01.12.2012, 20:52
@ikarus

Du mußt dich nicht verteidigen, es ist ganz normal, daß etwas nicht auf Anhieb geht. Da ich jetzt keinen wirklichen Schaltungsfehler sehe, kann ich dir eigentlich nur sagen, wie ich an das Problem rangehen würde. Ich würde das Testprogramm auf eine PWM reduzieren um die Verhältnisse übersichtlich zu halten.

Da die Störungen groß sind, kann man leicht auf sie triggern. Dann mit dem zweiten Kanal des Scopes den ganzen Treiberzweig vom Minuspol der Batterie bis zum Pluspol durchgehen und jeden Spannungsverlauf genau ansehen. Dabei die Scopemasse an den Minuspol der Batterie. Das einzige, was man sehen sollte, ist ein Rechteck am Input und am Output des Treibers. Vor allem auf den Masseleitungen sollte nichts (oder nur sehr wenig) zu sehen sein.

Mehr kann ich aus der Ferne dazu leider nichts sagen

Viel Erfolg

MfG Klebwax

ikarus_177
02.12.2012, 14:30
Hallo!

Ich habe in der Zwischenzeit mal einen 10uF Keramikkondensator parallel zu C3 gelötet. Die Halbbrücke A ist die einzige, die derzeit mit der PWM versorgt wird (dies reduziert erwartungsgemäß die Amplitude der Störungen). Außerdem habe ich zum Bootstrapkondensator dieser Brücke auch einen 10uF KerKo parallel geschaltet.
Die Kondensatoren haben aber eher wenig bis gar nichts an der Situation geändert.

Dann habe ich die Platine, die die nötigen Spannungen per Schaltregler erzeugt, aus dem Aufbau verbannt, und die nötigen Spannungen direkt aus dem Netzteil bzw. Linearregler entnommen (um einen eventuellen Einfluss der Schaltregler auszuschließen) - ohne Veränderung.

Was mich nachdenklich stimmt: wenn ich die Oszimasse mit der Masse auf der einen Platinenseite verbinde, den Tastkopf mit Masse auf der anderen Seite, kann ich trotzdem die Störungen messen (mit gar nicht so kleiner Amplitude). Die beiden Messpunkte trennt (mit dem Multimeter gemessen) ein Widerstand von 0,1Ω. Selbes geschieht, wenn ich die Oszimasse direkt mit dem Tastkopf verbinde und die "Schleife" auf den Aufbau drauf lege.

Vordergründig interessiert mich, woher diese Störungen überhaupt kommen könnten. Meines Wissens muss ja ein sich verändernder Strom fließen, um ein magnetisches Wechselfeld zu erzeugen, das wiederum in einer benachbarten Leitung Spannung induzieren kann. Der einzige Strom, der mir hier einfällt, wäre der Umladestrom der Gatekapazität (5nF).

Schöne Grüße

Besserwessi
02.12.2012, 17:49
Wenn es schnell gehen soll, fließt auch zum Umladen der 5 nF Gate Kapazität schon deutliche Ströme. Weil sich der Strom schnell ändert, reicht das dann auch schon für die kurzen Spannungsspitzen. Das Problem bei der Masse ist nicht so sehr der Widerstand, sondern eher die Induktivität. Die Spannung an verschiedenen Stellen der Masse war eigentlich schon zu erwarten, denn die Quelle der Störungen liegt eher beim Stromkreis mit den 12 V oder 15 V und nicht den 3,3 V für den µC.

Zusätzlich zum Strom für die Gate Kapazität fließt auch noch Strom zum Aufladen der Bootstraping Kondensatoren und ggf. auch ein kurzzeitiger Querstrom im Gate Treiber IC selber.

Ein Bild vom Aufbau bzw. dem Layout um die FETs und Gate Treiber wäre hilfreich.

Klebwax
02.12.2012, 18:49
Was mich nachdenklich stimmt: wenn ich die Oszimasse mit der Masse auf der einen Platinenseite verbinde, den Tastkopf mit Masse auf der anderen Seite, kann ich trotzdem die Störungen messen (mit gar nicht so kleiner Amplitude). Die beiden Messpunkte trennt (mit dem Multimeter gemessen) ein Widerstand von 0,1Ω.

Ich denke, da hast du die Quelle des Übels gefunden. Die Störspannung ist einfach der Spannungsabfall über den 0,1Ω. Leider sind die nicht allein, da wird noch einiges an Induktivität dazu kommen, was den Widerstand und damit die Spannung beim schnellen Schalten weiter erhöht. Wenn ein Strom von 1A (dein Gatetreiber kann mehr und sollte bei 5nF eigentlich eher 5A können) durch 1 Ω (mal geschätzt Ohmscher Anteil plus Induktivität beim Einschalten) fließt, gibt das 1V.

Wenn ich den Schaltplan richtig in Erinnerung habe, taucht diese Störspannung dann auch zwischen Vss und AVss an deinem µC auf und der Ausgleichsstrom fließt dann durch sein Substrat. Lies noch mal, was ich am Anfang zu den Massen geschrieben habe.


Selbes geschieht, wenn ich die Oszimasse direkt mit dem Tastkopf verbinde und die "Schleife" auf den Aufbau drauf lege.

Vordergründig interessiert mich, woher diese Störungen überhaupt kommen könnten. Meines Wissens muss ja ein sich verändernder Strom fließen, um ein magnetisches Wechselfeld zu erzeugen, das wiederum in einer benachbarten Leitung Spannung induzieren kann. Der einzige Strom, der mir hier einfällt, wäre der Umladestrom der Gatekapazität (5nF).

Deine Tastkopfschleife ist so hochohmig, da kannst du eigentlich jeden Wechselstrom "detektieren" aber natürlich nicht "messen".

MfG Klebwax

ikarus_177
02.12.2012, 19:09
Hallo!

@Besserwessi:
hier mal ein Bild vom Layout bei den FETs + Treiber ICs (ich habe die Bauteilbeschriftungen entfernt damits übersichtlicher wird):
23905

Die großen SMD-Bauteile sind übrigens die Shunts, daneben die Tiefpassfilter zur Strommessung mit den Differenzverstärkern.

@Klebwax: Das heißt, die Störungen sind eigentlich unvermeidlich bzw. immer vorhanden; treten in meiner Schaltung aber nur durch nichtoptimales Layout / schlechte Masse so extrem zu Tage? Ich werde also wahrscheinlich um ein neues Layout nicht herumkommen?
Mit welcher Masse würdest du dann die ICs versorgen? Du hast ja schon gesagt, die Treiber sollten dieselbe Masse wie die Brücken haben. Wie sieht es nun mit dem OPV (Differenzverstärker aus)? Sollte dieser an die "saubere" Logikmasse (weil ja sowieso Differenzverstärker ist?)? Wie sieht es mit der Analogmasse des Controllers aus (für ADC)?

Wie sollte man die Masse beim verbesserten Layout gestalten? Möglichst dick und gerade, um eine möglichst kleine Induktivität zu erreichen? Ähnliches gilt dann wohl auch für die anderen Versorgungsleitungen?

Vielen Dank für die hilfreichen Tipps!

Schöne Grüße

Besserwessi
02.12.2012, 21:03
Beim Layout sollte man darauf achten das sich die Strompfade für die beiden Fälle Stufe auf High oder Stufe auf Low nicht so stark unterscheiden. Dabei sind die Kondensatoren an der 12 V Versorgung ein wesentlicher Teil, und genau der fehlt bei dem Ausschnitt hier in dem Teil noch. Das läuft darauf hinaus das der Stromkreis mit Kondensator an 12 V - high side FET - low side FET - Shunt - Kondensator an 12 V möglichst klein ist, also wenig Fläche umschließt und möglichst keine GND Leitung dabei doppelt nutzt.

Bei der Masse sollte man sehen das kein Teil der Masseleitung 2 fach genutzt wird, also z.B. eine Sternförmige Masse, zumindest für den Laststrom und den µC getrennt. Das gibt insbesondere auch für die Kondensatoren an der Versorgung - auch da fließen HF-maßig nennenswerte Ströme durch. Also z.B. von den Akkus zu den FETs, und dann die Masse an den FETs an genau einer Stelle abnehmen und da dann die Spannungsregler und den µC anschließen. Der eine gemeinsame Shunt ist da schon hilfreich den einen Punkt zu definieren - allerdings wird dadurch die Verbindung Gate Treiber - Masse gestört und die 3 Halbbrücken sind nicht mehr getrennt. Den gesamten Strom könnte man auch durch Addition der Spannung an 3 Shunts bekommen. Es wäre ggf. sogar zu überlegen auch den GND Anschluss der Gate Treiber mit über den Shunt zu schicken - allerdings muss man dann aufpassen dass die Gate Treiber kein zu negatives Eingangssignal bekommen, bzw. da den Strom begrenzen. Zumindest brauchen die Gate Treiber eine gute Verbindung zu GND der MOSFETs - egal ob vor oder hinter den Shunt, denn da kann auch rund 1 A (begrenzt durch den Gatewiderstand) fließen.