Sinuswechselrichter 600W

Aus der Mikrocontroller.net Artikelsammlung, mit Beiträgen verschiedener Autoren (siehe Versionsgeschichte)
Wechseln zu: Navigation, Suche

von andreasr

Die Motivation für den Bau des Wechselrichters war der Wunsch in meiner Garage ohne Netzanschluss mal eine Schlagbohrmaschine oder andere Geräte mit Netzanschluss benutzen zu können. Auch kommt es ab und zu vor, dass man im PKW mal ein Gerät mit Netzspannung benutzen will. Gerade für Geräte mit induktiver Last (z.B. Bohrmaschine) ist es wichtig, dass die erzeugte Spannung einen möglichst sinusförmigen Verlauf hat. Die bei meinem Gerät zugrunde gelegte Leistung ist einfach die Nennleistung meiner Bohrmaschine.

Sicherheitshinweis

Obwohl die Schaltung mit Kleinspannung von 12 V betrieben wird, entsteht eine lebensgefährlich hohe Netzspannung von 230 V~ bzw. eine Gleichspannung von 325 V. Es sind also die Regeln für das Arbeiten mit Netzspannung genauso einzuhalten wie für eine Schaltung die direkt mit dem Stromnetz verbunden ist. Weiterhin hat die Schaltung keine galvanische Trennung zwischen Primär-und Sekundärseite (s. Kritikpunkte). Falls die Eingangsspannung also Verbindung zum Erd- bzw. Massepotential (z.B. im Auto) hat, hat die Ausgangsspannung ebenfalls Bezug zum Massepotential. Der Sinuswandler hat also nicht die Eigenschaften eines Trenntrafos!

Weiterhin ist insbesondere bei Verwendung einer Autobatterie auf entsprechende Absicherung zu achten! Brandgefahr!

Features

  • 12 V Eingangsspannung
  • möglichst kompakte Bauform
  • möglichst sinusförmige Ausgangsspannung 50 Hz
  • geregelte Ausgangsspannung
  • möglichst preiswerte und einfach zu beschaffende Komponenten

Technische Details

  • es wird ein Zwischenkreis mit 325 V verwendet
  • die Zwischenkreisspannung wird mittels Ferrit-Übertragers aus den 12 V herauftransformiert
  • der Ferrit-Übertrager wird mit einer Rechteckspannung gespeist, die über eine Vollbrücke aus der Eingangsspannung erzeugt wird
  • die Zwischenkreisspannung wird mittels Mikrocontroller über das Tastverhältnis der Rechteckspannung geregelt
  • die Zwischenkreisspannung wird mittels Elko gepuffert, damit auch bei Geräten mit induktiver Last die Blindleistung pendeln kann
  • aus der Zwischenkreisspannung wird über eine Vollbrücke eine PWM mit sinusförmigem Verlauf erzeugt. Nach der Filterung der PWM bleibt ein Sinus mit 50 Hz über.

Eingangsseite Übertrager

Der Übertrager wird mit einer Rechteckwechselspannung von 40 kHz über eine Vollbrücke gespeist. Es ist sehr wichtig, dass die Rechteckspannung exakt symmetrisch ist, damit der Übertrager keine Gleichspannung „sieht“. Die Symmetrie wird sichergestellt, indem ein D-Flipflop mit einer Frequenz von 80 kHz getoggelt wird. Für die Regelung des Zwischenkreises wird die Rechteckspannung mit einer variablen Pulsbreite versehen. In den Pulspausen wird der Eingang des Übertragers kurzgeschlossen, indem entweder beide Eingänge auf Low oder auf High liegen. Das Steuersignal dazu ist der PWM-Ausgang des Mikrocontrollers. Mit der steigenden Flanke des PWM-Signales wird FFA getoggelt. Mit der fallenden Flanke wird FFB mit dem negierten Ausgang von FFA geladen. An dessen negiertem Ausgang liegt dann also ebenfalls das Ausgangssignal von FFA. Die FF’s werden also beide mit der PWM-Frequenz getoggelt wobei die Phasenverschiebung der FF’s der tEin – Zeit der PWM entspricht:

  • langes tEin: große Phasenverschiebung; Brücke lange gegenphasig; viel Energie wird eingespeist
  • kurzes tEin: kleine Phasenverschiebung; Brücke kurz gegenphasig; wenig Energie wird eingespeist

InputLogic.png

Die PWM wird mittels einer PID-Regelung in Software geregelt.
Die Eingangsgröße dafür ist die Zwischenkeisspannung, die möglichst genau 325 V ([math]\displaystyle{ 230 V*\sqrt{2} }[/math]) betragen soll.

Ausgang Sinus-Brücke

Die Zwischenkreisspannung wird über eine zweite Vollbrücke in eine Sinusspannung mit 50 Hz gewandelt. Dazu muss eine PWM erzeugt werden, deren Pulsbreite einem Sinussignal folgt. Da das PWM-Signal auch in der Ausgangsspannung enthalten ist, muss die Ausgangsspannung am Ende noch gefiltert werden. Das erfolgt über ein LC-Glied. Je größer die PWM-Frequenz ist, desto einfacher kann das PWM-Signal herausgefiltert werden (kleinere Induktivität, kleinerer Kondensator). Mit dem verwendeten ATmega ist eine PWM von 20kHz bei 20 MHz Taktfrequenz ein guter Kompromiss. Es bleiben dann 1000 Schritte für das Sinussignal. Nach jeder Halbwelle (10 ms; 200 Schritte bei 20 kHz) muss die Brücke umgepolt werden.

Hardware

Ziel war es, möglichst günstige und einfach zu beschaffende Bauteile zu verwenden. Die Vollbrücken werden über jeweils 2 Treiber IR2184 gesteuert. Dieser Treiber hat eine eingebaute Deadtime von 500 ns zwischen den Umschaltvorgängen. Als Brückentransistoren werden N-Kanal MOSFETS verwendet. Die gesamte Steuerung wird über einen ATmega88 realisiert.

Eingang

Eingangsseitig wir als Brückentransistor der IRF1404 verwendet. Er ist mit einem RDS(on) vom 4mΩ und Maximalstrom von 202 A spezifiziert. Wobei die Beinchen des TO220 Gehäuses diesen Strom nicht lange aushalten dürften. Bei einer Nennleistung von 600 W und 12 V Eingangsspannung müssen die Transistoren dauerhaft 25 A aushalten können (600 W / 12 V / 2). Wichtig ist hier ein entsprechendes Design der Zuleitungen und Anschlüsse. Ich habe das mit kleinen Stromschienen aus 1 mm Kupferblech realisiert.

InputTransistor.png

Die Eingangsspannung muss mit Stützkondensatoren gepuffert werden, da sonst die Spannung während der Schaltvorgänge durch die Induktivität der Zuleitungen einbricht und dadurch Potentialverschiebungen entstehen können, die Brückentransistoren und Treiber zerstören.

InputElkos.png InputKerkos.png
Aktuell werden 3 Elkos á 1000 µF und 8 Kerkos á 100 nF verwendet. Ich fürchte, diese sind zu niedrig dimensioniert, bzw. werden auf Dauer den Ripplestrom nicht aushalten können (Kritikpunkte).

Übertrager

Mit dem Berechnungsprogramm auf schmidt-walter.eit.h-da.de/smps/vgw_smps.html wurde folgendes ermittelt:

Berechnung1.png

Als Zwischenkreisspannung wurde hier 350 V zugrunde gelegt, damit noch etwas Reserve zum Regeln bleibt.

Berechnung2.png

Es wird ein Übertrager vom Typ ETD59 verwendet. Die Primärwicklung hat 2 Windungen, die Sekundärwicklung hat 74 Windungen. Als Material für die Primärwindung dient 0,85 mm Cu-Lackdraht. Dieser hat einen Querschnitt von 0,56 mm2. Bei einer empfohlenen Stromdichte für Trafowicklungen von 3 A/mm2 braucht man also ungefähr 30 Drähte parallel für 50 A. Es hat sich als praktisch erwiesen, für die Einzeldrähte eher einen kleinen Drahtdurchmesser zu wählen (< 1 mm). Dadurch hat man fast so etwas wie Litze. Das lässt sich einfacher wickeln (auch 2 Windungen können schwierig sein!).

Primaer.png

Sekundärseitig wurde ein Cu-Lackdraht von 1 mm Durchmesser verwendet; das entspricht einem Querschnitt von 0,78 mm2. Damit kommt man bei einem Strom von 2 A auf eine Stromdichte von 2,54 A/mm2.

Sekundaer.png

Zwischen die 2 Lagen der Sekundärwicklung wurde eine Isolierung aus Mylarfolie gewickelt da erhebliche Spannungsunterschiede zwischen den Lagen bestehen. Der Lack des Drahtes würde hier früher oder später durchschlagen. Zwischen Sekundär-und Primärwicklung befindet sich ebenfalls eine Isolierung aus mehreren Lagen Folie.

Spannungsmessung

Der ATmega misst die Eingangsspannung und die Zwischenkreisspannung über entsprechende Spannungsteiler.

Strommessung

Der ATmega misst den Eingangsstrom und den Gleichstrom im Zwischenkreis über Shunts im Masse-Zweig. Die Messspannung wird über einen OPV, der als Differenzverstärker arbeitet, verstärkt. Die negative Versorgungsspannung für die OPV’s wird mit einer Ladungspumpe erzeugt. Als Shunt dient ein Konstantandraht von 0,5 mm Durchmesser. Im Primärkreis werden 30 Abschnitte von 1 cm parallelgeschaltet:

Shunt1.png

Zwischenkreis

Die Sekundärspannung wird mit schnellen Siliziumdioden (40 kHz) gleichgerichtet, an einer Drossel geglättet und auf Elkos mit einer Gesamtkapazität von 440 µF gespeist. Diese puffern die Zwischenkreisspannung. Parallel zu den Elkos befinden sich noch ein Folienkondensator und 4 Keramikkondensatoren dicht an den MOSFETS. Ohne diese kam es zu erheblichen EMV-Problemen wenn die Ausgangsstufe eingeschaltet wurde. Die Störungen schlugen bis in den Primärkreis durch und führten z.B. dazu dass der µC sporadisch abstürzte.

Ausgangsschaltung

Es wird eine Vollbrücke bestehend aus 4 MOSFETS IRFP 450 verwendet. VDDS ist mit 500 V angegeben. Vom Controller werden 2 Signale geliefert: Sinus-PWM und Polarität. Diese Signale werden durch eine Logikschaltung verknüpft.
OutputLogic.png
Eine Brücke ist fest auf Low und die andere gibt das PWM-Signal aus. Beim Wechsel des Polaritätssignales kehrt sich die Funktion der Brücken um. Die erzeugte Sinus-PWM wird über 2 Drosseln und einen Kondensator gefiltert. Die Drosseln machten hier einige Probleme (Erwärmung des Kerns). Durch ein Kernmaterial höherer Güte (Farbe Grau) und einen kleinen Lüfter :-( konnte ich die Erwärmung in den Griff bekommen.

Aufbau

Ein erster Aufbau auf Lochraster zeigte ziemliche EMV-Probleme. Besonders das Einschalten des Ausgangskreises erzeugte massiv Störungen auf der Eingangsseite und auch auf der Spannungsversorgung des µC. Deshalb entschloss ich mich, Platinen ätzen zu lassen. Die Schaltung ist in den Leistungs- und in den Controllerteil unterteilt. Beide sind mittels eines kurzen Flachbandkabels verbunden. Durch meine EAGLE-Lizenz ist die Platinengröße auf Euroformat begrenzt, was ziemlich knapp für die Leistungsseite ist. Den hohen Strom in der Eingangsseite leite ich über „Stromschienen“ aus 1 mm Kupferblech, welche auf die Platine montiert sind. Dafür habe ich eigens Eagle-Bauteile definiert. So werden auch die Transistoren im Eingangskreis mit einem entsprechenden Kupferquerschnitt versorgt. Die Leistungstransistoren sind zur Kühlung mit dem Alu-Gehäuse verbunden. Es ist zu beachten, dass die Drain-Anschlüsse intern mit den Kühlfahnen verbunden sind. Entsprechende Isolierungen aus Glimmerfolie (ggf. doppelt für die 230 V-Seite) sind unbedingt notwendig!

Bedienung

Der WR wird über ein 3-Tasten-Menü eingestellt. Ein LCD dient der Ausgabe wichtiger Parameter. Man kann eine Begrenzung des Eingangsstromes einstellen, damit der WR z.B. an einer mit nur 20 A abgesicherten Steckdose im Auto betrieben werden kann.

Software

Als Controller kommt wie gesagt ein ATmega88 mit 20 MHz Clock zum Einsatz. Die Software ist in C / C++ geschrieben. Bei der Implementierung der Menü-Funktionen erleichtert die Verwendung von Klassen, Vererbung und virtuellen Methoden die Arbeit sehr. Wenn man es mit der Verwendung von C++ - Features nicht übertreibt (keine STL-Klassen!), bleibt der erzeugte Code sehr kompakt - aktuell findet das Programm immer noch in einen ATmega88 Platz! Als Entwicklungsumgebung kommt Atmel Studio zum Einsatz.
Timer0 erzeugt eine 8-Bit PWM für die Eingangsbrücke.
Timer1 ist für die 16-Bit Sinus-PWM der Ausgangs-Brücke zuständig. Die Zwischenkreisspannung wird über eine PID-Regelung konstant gehalten, die die PWM für die Eingangsbrücke beeinflusst. Die Regler-Parameter wurden aus der Sprungantwort ermittelt und empirisch optimiert. Eine gute Erklärung findet sich hier: rn-wissen.de/wiki/index.php/Regelungstechnik Es werden periodisch 4 Analogwerte mit verschiedenen Abtastraten gemessen: Zwischenkreisspannung, Eingangsspannung, Eingangsstrom, Zwischenkreisstrom. Die Zwischenkreisspannung wird mit der höchsten Abtastrate von 2 ms gemessen. Entsprechend läuft die Regelschleife im 2 ms- Zyklus.
Die Sinus-Werte wurden mit Excel berechnet und werden als Tabelle in die Software includiert (eine Halbwelle). Der ATmega hat die "Besonderheit", dass auch beim PWM-Registerwert von 0 ein kurzer Spike ausgegeben wird. Um das zu verhindern, wird die PWM invertiert betrieben: der Max.-Wert stellt das Low-Signal dar. In Excel werden die Werte gleich entsprechend berechnet, so dass der Controller die Werte direkt verwenden kann. In jedem Timer1-Overflow-Interrupt wird der nächste Wert aus der Sinustabelle ins PWM-Register geladen. Nachdem eine komplette Halbwelle ausgegeben wurde erfolgt die Polaritätsumschaltung über einen Controller-Pin der auf die Treiberlogik wirkt.

Tests

Zum Testen der Funktion ist ein Oszilloskop von großem Vorteil. Insbesondere der Signalverlauf an den Gates für die Brückentransistoren muss sauber sein; sonst ist ein früher Tod der Leistungshalbleiter sehr wahrscheinlich. Ich habe mir selbst einige IRF1404 zerstört weil ein Gate unbemerkt offen war. Zum Messen habe ich die Schaltung mit einer ohmschen Last von 150 W betrieben (gut wenn man noch ein paar Glühbirnen in der Schublade hat :-)). Als Spannungsquelle diente ein PC-Netzteil (12 V). Als alles sauber lief (verzerrungsfreier Sinus auf Oszilloskop) habe ich meine Bohrmaschine über Autobatterie angeschlossen - Funktioniert!

Kritikpunkte / Verbesserungsvorschläge

  • Galvanische Verbindung Eingang Ausgang
  • Eingangselkos evtl. zu klein dimensioniert; Rippleströme?
  • Spannungsfestigkeit Treiber IR2184: Zwischen den Pins 5 und 6 liegt die volle Netzspannung an. Die Mindestkriechstrecke wird nicht eingehalten! Abhilfe: anderer Treiber mit anderem PIN-Layout?
  • EMV-Probleme beim Einschalten des Ausgangstreibers. Bessere Abblockung der Zwischenkreisspannung? Evtl. würde auch eine Verbesserung durch die galvan. Trennung (Punkt 1) erreicht.
  • Messung Wechselspannung/-Strom, Berechnung Wirkungsgrad, cosinus phi

Links und Downloads

roboternetz.de Sinuswechselrichter-12V-230V

Ein Sinusgenerator mit AVR-Timer

Sourcecode: Datei:Source Sinuswandler.zip

Schaltplan: Datei:Eagle Sinuswandler.zip

Sinuswechselrichter1.png

Sinuswechselrichter2.png


Link für Nachricht an den Autor: Andreas Richter