Motorensteuerungen werden meistens mit DSPs oder Mikrocontrollern realisiert. Sinkende Preise für FPGAs kombiniert mit steigender Rechenleistung machen die programmierbare Logik, insbesondere wenn hohe Schalt- und Regelfrequenzen gefragt sind, zur Technologie der Wahl. Weitere Vorteile von FPGAs sind eine hohe Integrationsdichte, die Langzeitverfügbarkeit und die Möglichkeiten zur zukünftigen Weiterentwicklung, ohne dass eine Überarbeitung der Hardware nötig wird.
Unterschiedliche Anforderungen an Motion-Control-Systeme
Die in Motion-Control-Systemen anfallenden Berechnungen lassen sich in zwei Kategorien einteilen:
- Immer gleichbleibende Berechnungen mit harten Echtzeitanforderungen, die hauptsächlich Additionen, Multiplikationen und Begrenzungen benötigen. Beispiele hierfür sind PID-Regler, feldorientierte Kommutierung für bürstenlose Motoren oder die Rückintegration von Trajektorien.
- Relativ komplexe Algorithmen, die allerdings nicht in Echtzeit berechnet werden müssen. Dazu gehören unter anderem die Bahnplanung, 3D-Interpolation und applikationsspezifische High-Level-Control- sowie Kommunikationsaufgaben, beispielsweise Feldbus-Zugriffe.
Applikationsspezialisten müssen den Prozessor programmieren können
Für alle Echtzeitberechnungen ist es wichtig, dass diese immer genau gleich ablaufen und exakt gleich lange dauern, da Jitter auf dem Regelzeitpunkt und/oder der Verarbeitungszeit die Regelgüte beeinträchtigt. Die Rechenleistung für diese Berechnungen ist aus zwei weiteren Gründen kritisch: Einerseits können mit mehr Rechenleistung höhere Regelraten erzielt werden, andererseits kann die Berechnungszeit verkürzt werden, was die Verzögerung im Regelkreis verkleinert und so die Phasenreserve erhöht: Der Weg zu qualitativ besseren Regelresultaten führt immer über mehr Rechenleistung, wie sie FPGAs mit ihrer inhärent parallelen Architektur bieten.
Bei den Algorithmen, die nicht in Echtzeit ablaufen müssen, ist ein Prozessor meist unabdingbar. Operationen wie das Wurzelziehen oder das numerische Lösen von Gleichungssystemen, die in vielen Regelalgorithmen eine wichtige Rolle spielen, lassen sich anders kaum sinnvoll realisieren. Ausserdem ist ein in C/C++ programmierbarer Prozessor für Spezialisten mit applikationsspezifischem Know-how einfacher zugänglich als die Programmierung eines FPGAs mit VHDL. Nur Applikationsspezialisten können eine hohe Qualität des Endproduktes garantieren. Deshalb ist es wichtig, dass die Implementierung auch von Spezialisten ohne FPGA-Know-how vorgenommen werden kann. Moderne FPGAs lösen dieses Dilemma, indem sie neben der FPGA-Logik auch über einen leistungsfähigen integrierten Prozessor verfügen.
FPGA und ARM: Das Power-Duo für Motion Control
Mit den Xilinx-Zynq-7000- und Altera-Cyclone-V-SoC-Familien bieten die beiden grössten FPGA-Hersteller Bausteine mit einem fest eingebauten, äusserst leistungsfähigen Dual-Core-ARM-Cortex-A9-Prozessorsystem mit einer Taktfrequenz von bis zu 1 GHz an. Sie sind ideale Plattformen, um auch regelungstechnisch anspruchsvolle Aufgaben zu lösen. Diese Chips machen zudem für FPGAs erstmals das riesige ARM-Ecosystem zugänglich, sowie unterschiedliche Betriebssysteme von Android über Linux bis VxWorks, Software Libraries oder Programmiersprachen. Vor allem aber fallen für Software-Entwickler die Hürden der Programmierung in VHDL weg. So kann jeder Programmierer das ihm vertraute Entwicklungstool weiter verwenden und gleichzeitig die hohe Leistungsfähigkeit und Flexibilität der FPGAs nutzen.
FPGA-Module vereinfachen das Hardware-Design
Mithilfe von IP Cores, fertigen Funktionsblöcken für den Logikbereich des FPGAs, wie zum Beispiel Drive-Control-Regelkreisen oder Feldbus-Anbindungen, lässt sich ein FPGA-System mit wenig spezifischem Wissen erstellen. Die Entwicklung der applikationsspezifischen FPGA-Logik kann an ein FPGA-Engineering-Unternehmen ausgelagert werden. Eine solche Zusammenarbeit kann auch dann sinnvoll sein, wenn das System später betriebsintern gewartet und weiterentwickelt werden soll. Durch die enge Zusammenarbeit mit FPGA-Spezialisten können interne Mitarbeiter von einer steilen Lernkurve profitieren und werden wesentlich schneller in der Lage sein, ein FPGA-basiertes Motion-Control-System zu verstehen, zu warten und weiter zu entwickeln, als wenn sie sich alles von Grund auf selbst erarbeiten müssten.
Auf der Hardware-Seite gibt es FPGA-Module, die einfach einsetzbar sind und die technologiespezifische Komplexität kapseln. Damit wird das Hardware-Design sogar wesentlich einfacher, als wenn ein herkömmlicher Mikrocontroller eingesetzt würde. Der Weg über FPGA-Module ist speziell bei kleinen und mittleren Stückzahlen sehr interessant, kann aber auch bei Produkten mit hohen Stückzahlen für den Einsatz während der Prototypenentwicklung mehr als nur eine Überlegung wert sein.
Infoservice
Enclustra GmbH
Technoparkstrasse 1, 8005 Zürich
Tel. 043 343 39 43, Fax 043 343 39 44
info15@enclustra.com, www.enclustra.com