Mikrocontroller Digitale Leistungswandlung mit dem XMC4000

Höhere Wirkungsgrade und geringere Kosten treiben die Entwickler von Stromversorgungen, Umrichtern oder Energiespeichern um. Für viele Anwendungen wurden bisher Zwei-Chip-Lösungen z.B. mit einem DSP und einem FPGA eingesetzt. Die Timer-Einheiten und hochauflösende PWM des XMC4000 können zusätzliche Bauelemente in den meisten Fällen ersetzen.

Bei Standard-Anwendungen wie der Stromversorgung eines PC kommt ein ASIC zum Einsatz - hohe Stückzahlen, gleichbleibende Lastbedingungen und geringstmögliche Kosten sprechen für den Einsatz eines solchen Chips. Anders sieht es jedoch z.B. bei Solarumrichtern aus: Die verfügbaren Topologien wie Abwärtswandler, Aufwärtswandler, Ab-Aufwärtswandler, SEPIC-Wandler (Step-down/up-Converter), Flyback-Wandler, Halbbrücken, Vollbrücken, LLC-Wandler usw. brauchen nicht nur ohnehin schon unterschiedliche PWMs und Regelstrategien; sie werden mittlerweile u.a. aus patentrechtlichen Gründen in teilweise abenteuerlichen Kombinationen zusammengeschraubt (z.B. Aufwärtswandler plus LLC-Wandler plus DC/AC-Stufe), von denen jede unterschiedliche Pulsmuster der PWM und Regelalgorithmen benötigt. Zudem möchte man ja mit einer möglichst hohen Schaltfrequenz arbeiten, um u.a. die passive Elemente (Spulen und Kondensatoren) möglichst klein halten zu können.

Wenn man nun - z.B. auf Grund des preislichen Drucks z.B. in der Solar-industrie: Hersteller, die das FPGA rauswerfen können, haben einen Preisvorteil - die Kombination DSP (Regelung) plus FPGA (Pulsmustererzeugung) durch einen Mikrocontroller ersetzen möchte, muss dieser entsprechend leistungsfähige und flexible Peripherie-Elemente enthalten. Für Motorsteuerungs-Applikationen reicht es in der Regel, symmetrische und periodische Pulse zu erzeugen, weshalb dies quasi alle MCUs mit PWM-Erzeugung unterstützen. Bei asymmetrischen und periodischen Pulsen wird es schon schwieriger; wir schätzen, dass dies nur noch rund 50 % aller MCUs können. Besonders kompliziert sind asymmetrische, aperiodische und Einzel-/Burst-Pulse zu generieren. Dafür wurden die Timer-Einheiten CCU4 und CCU8 des XMC4000 entwickelt.

Damit verfügt der Schaltnetzteil-Entwickler über eine standardisierte, Cortex-basierte MCU und braucht nicht auf DSPs wie den C2000 von Texas Instruments zurückzugreifen. Die ARM-basierten Stellaris-MCUs von TI können dies nicht.

Relevant sind diese komplexen Pulsmuster z.B. für Schaltnetzteile beim Übergang vom Continuous-Modus (dabei wird während des normalen Betriebes der Stromfluss durch die Speicherdrossel des Wandlers bzw. durch den Speichertransformator eines Sperrwandlers nie zu Null, es liegt also kein lückender Betrieb vor) in den Discontinuous- Modus (der Strom in der Speicherdrossel geht innerhalb eines Schaltzyklus bis auf Null zurück) oder beim Abschalten in einen definierten Zustand im Fall einer Überstrom-erkennung - dazu gleich mehr.

Zuvor noch ein Wort zu 3-Punkt-Wechselrichtern: Die Vorteile sind unbestritten (u.a. Einsatz von leistungsfähigere IGBTs durch Halbierung der Durchbruchspannung und “weichere” Sinus-Kurve); baut man jedoch z.B. eine Halbbrücke mit 4 Transistoren auf, benötigt man 3×4=12 PWM- Signale. Daran scheitern MCUs in aller Regel; mit der CCU8 ist es jedoch möglich, genau dies zu tun.

Bild 1 zeigt die Problematik beim sicheren Ausschalten eines 3-Punkt-Wechselrichters: Um zu verhindern, dass ein Schalttransistor die doppelte Spannung sieht und kaputt geht (Szenario in Bild 1 oben), muss man sowohl das Schalten von Transistor S1 als auch von S2 auf Null verzögern, wie es in Bild 1 unten dargestellt wird.

In Bild 2 ist schematisch die Lösung gezeigt, nämlich die programmierbare Einheit ERU1 (Event Request Unit) auf dem XMC4000 in Verbindung mit den Timer-Einheiten. In der ERU1 können interne und externe Signale und Ereignisse über Gatter logisch verknüpft und Interrupts erzeugt werden.

 Die hochauflösende PWM für höchste Genauigkeit

Es gibt Anwendungen, bei denen eine maximale Abweichung der Ausgangsspannung von 1 % oder noch weniger gefordert wird - beispielsweise für 1,8-V-Hilfsspannungen oder Mikro-Umrichter. Ein industrielle Stromversorgung wie z.B. Sitop PSA100E von Siemens ist mit 3 % Abweichung über den gesamten Bereich spezifiziert, dabei wird jedoch eine Welligkeit von 150 mV bei 24 V im statischen Betrieb (also keine Lastsprünge oder Eingangsschwankungen) an- gegeben - das sind sogar nur 0,625 % Abweichung vom Sollwert. Auch andere Produkte wie die TDR2-Familie von Traco oder Quint PS von Phoenix fordern maximale Abweichungen von nur 1 %.

Wenn man sich das schematische Bild einer Regelschleife anschaut (Bild 3), ergeben sich daraus folgende Anforderungen: Auf Grund der Quantisierungsfehler bei der digitalen Regelung darf die Abweichung des A/D-Wandlers nur die Hälfte der erlaubten Toleranz,  d.h. 0,5 % betragen, was 200 Digitalwerten entspricht. Um die Messfehler zu kompensieren, muss die PWM diese mindestens verdoppeln, d.h. die Genauigkeit muss 0,25 % oder 400 Werte betragen.

Bei Motorsteuerungs-Anwendungen rechnet man mit Schaltfrequenzen von 20 kHz, was nach 20 kHz × 400 = 8 MHz eine nahezu lächerliche Anforderung an eine mit 80 oder mehr MHz getaktete MCU ist.

Selbst beim zehnfachen Wert, also 200 kHz, kann man nach 200 kHz × 400 = 80 MHz noch ohne Zusatztricks eine PWM erzeugen, es sei denn, die MCU gehört zu den Vertretern, die diese maximal mit f/2 oder f/4 (mit der Kernfrequenz f) generieren können - und davon gibt es genug Vertreter am Markt. Kritisch wird es jedoch, wenn Schaltfrequenzen von 500 kHz oder sogar 1 MHz oder mehr gefordert sind. Bei 1,5 MHz würde bereits eine Genauigkeit der PWM von 1500 kHz × 400 = 600 MHz benötigt, die mit dem Kerntakt alleine nicht erzielt werden kann.

Um das Ganze auf die Spitze zu treiben, soll angenommen werden, dass die Last am Ausgang nur noch 10 % der Maximallast beträgt. In diesem Fall würde die Regelung ja nur noch im Bereich von 0 bis 10 % erfolgen, so dass sich die Anzahl der Werte verzehnfachen würde. Der A/D-Wandler müsste 2.000 statt 200 Werte verarbeiten (was einer geforderten Auflösung von 11 bit entspricht) und die PWM deren 4.000 erzeugen. In diesem Fall würde schon eine Schaltfrequenz von 200 kHz einen hochauflösenden PWM-Block (200 kHz × 4.000 = 800 MHz) erfordern; bei 1,5 MHz käme man sogar auf 1.500 kHz × 4.000 = 6 GHz, d.h. die Intervalldauer schrumpft auf 1/6 GHz = 167 ps zusammen. Mit der hochauflösenden PWM des XMC4000 kommt man bis auf 150 ps herunter, was in diesem Beispiel (10 % Last, 1 % maximale Abweichung der Ausgangsspannung vom Sollwert) zu einer maximalen Schaltfrequenz von 6,67 GHz/4.000 = 1.667 kHz führt.

Der Block für die hochauflösende PWM wird den CCU4- bzw. CCU8-Timern nachgeschaltet und teilt einen Referenztakt in rund 55 kleinere (bei 120 MHz Kerntaktfrequenz dauert ein Taktzyklus ja 8,33 ns), 150 ps lange Einheiten auf - man kann also sagen, die PWM der CCUs wird verfeinert.