Infineon / Antriebsregelung Flexible Designplattform mit XMC1302

Mikrocontroller sind meist auf bestimmte Anwendungsbereiche hin optimiert. Doch allein einen solchen Baustein hinzustellen reicht Entwicklern heute nicht mehr. MCU-Anbieter müssen auch noch entsprechende Entwicklungskits mitliefern. Im Folgenden daher ein Beispiel aus der Antriebsregelung.

von Ivan Dobes, Product Marketing Manager Industrial und Multimarket MCU, und Frederic Zimmer, Senior Applications Engineer, beide bei Infineon Technologies.

Für unterschiedliche Applikationen bieten die auf einem »ARM Cortex-M0« basierenden 32-bit-Mikrocontroller der »XMC1000«-Familie von Infineon zwischen 8 KB und 200 KB Flash-Speicher, recht leistungsfähige PWM-Timer, 12-bit-A/D-Wandler und programmierbare serielle Kommunikationsschnittstellen. Mit vier Produktserien und mehr als hundert Produkten bedient die XMC1000-Familie Lösungen für unterschiedliche Anwendungsbereiche.

Neben zahlreichen XMC1000-Entwicklungskits steht nun eine auf »XMC1302« basierte, skalierbare und flexible Designplattform für dreiphasige Motorantriebe im Leistungsbereich von 20 W bis 300 W zur Verfügung. Dafür gibt es optimierte Peripheriefunktionen (Bild 1). Dadurch lässt sich ein Motor sensorgestützt oder sensorlos feldorientiert regeln (FOC, Field-Oriented Control).

Den A/D-Wandler können Anwender mit Auflösungen von wahlweise 8 bit, 10 bit oder 12 bit konfigurieren. Dadurch lassen sich die Konvertierungszeit und Auflösung für die Anwendung optimieren. Bei allen vier XMC-Serien sind zwei Sample&Hold-Stufen vorhanden, außerdem schnelle Analog-Komparatoren. Weitere hilfreiche Peripheriefunktionen sind ein Pseudo-Zufallszahlengenerator, eine Echzeituhr (RTC) und ein Window-Watchdog-Timer (WDT). Das in den XMC1300/1400-MCUs enthaltene POSIF-Modul unterstützt inkrementelle Winkelsensoren (Drehgeber, Encoder) und Hall-Sensoren.

Für viele Industrieanwendungen, insbesondere aber für effiziente Motorregelungen, stehen schnelle und präzise A/D-Wandler oben auf der Wunschliste. Neben hoher Auflösung und Abtastrate ist jedoch auch die genaue zeitliche Festlegung einer Messung besonders wichtig. So können die Anwender bei den Serien XMC1200/1300/1400 die Abtastzeitpunkte über programmierbare, hardwaregesteuerte Sequenzen entsprechend zu den Schaltmustern definieren. Zusätzlich können mit den beiden Sample&Hold-Stufen zwei Signale gleichzeitig aufgenommen werden. Dies ist zum Beispiel vorteilhaft, wenn verschiedene Motorströme simultan zu messen sind.

Der Math-Coprozessor mit 24 bit Auflösung der XMC1300/1400-Serien eignet sich für die Vektorrotation (Park-Transformation). Er rechnet parallel zur CPU, womit sich leistungsfähige Algorithmen für die feldorientierte Motorregelung recht einfach und präzise implementieren lassen. Die Capture/Compare-Unit 8 (CCU8) ist wichtig für Systeme, die leistungsfähige Timer benötigen, um Signale zu überwachen oder zu verarbeiten sowie um PWM-Signale zu generieren. Damit lassen sich etwa Schaltnetzteile oder USVs einfach implementieren. Mithilfe der Dither-Funktion bleiben selbst langsame Regelschleifen stabil.

Optimiert für feldorientierte Regelung

In Kombination mit dem programmierbaren POSIF-Block lässt sich auch ein Inkrementalgeber auswerten. Für verschiedene Anwendungsfälle kann das POSIF die Genauigkeit steigern und die Software vereinfachen, da sich die entsprechenden Daten gleichzeitig erfassen lassen. Ein Tiefpassfilter unterdrückt Rauschen und Störimpulse des Hall-Sensors oder Drehgebers, die zu falschen Positions- und/oder Geschwindigkeitsangaben führen könnten. Mit der CCU8-Timer-Einheit und dem zusätzlichen Compare-Kanal lassen sich zudem für steigende und fallende Flanken unterschiedliche Totzeiten (Dead Time) definieren und asymmetrische PWM-Signale erzeugen. Der Timerblock unterstützt Applikationen mit komplexerer PWM-Signalerzeugung mittels komplementären Schaltern in Halbbrücken-Konfiguration und mehrphasiger Regelung. Diese Funktionen in Kombination mit einem flexiblen und programmierbaren Schema für die Signalkonditionierung prädestinieren die CCU8 für besonders leistungsfähige Motorsteuerungen sowie Mehrpasen- und Multi-Level-Systeme. Zu typischen Anwendungen, die davon profitieren, zählen dreiphasige Umrichter für Antriebe oder Solarmodule sowie Halbbrückenwandler.