Die Embedded-SPS

FPGA und SPS – zwei „Welten“ einer gemeinsamen Fachrichtung, der Elektrotechnik, wie sie scheinbar gegensätzlicher nicht sein können. Dass sich beide Ansätze durchaus ergänzen können, zeigt das Projekt „Embedded Automation Systems“ des Steinbeis Transferzentrums für Signalverarbeitungssysteme.

FPGA und SPS – zwei „Welten“ einer gemeinsamen Fachrichtung, der Elektrotechnik, wie sie scheinbar gegensätzlicher nicht sein können. Dass sich beide Ansätze durchaus ergänzen können, zeigt das Projekt „Embedded Automation Systems“ des Steinbeis Transferzentrums für Signalverarbeitungssysteme.

Die Rollen sind auf den ersten Blick klar verteilt: Auf der einen Seite steht das Field-Programmable-Gate-Array (FPGA) mit seiner parallelen Signalverarbeitung zur schnellen Verarbeitung und Berechnung tausender paralleler Daten; mit der Speicherprogrammierbaren Steuerung (SPS) auf der anderen Seite ein System, welches seine Aufgaben mittels rein sequenzieller Abarbeitung und per Kommunikation mit einem oder mehreren Feldbus-Netzen beziehungsweise in Zusammenarbeit mit zig Feldgeräten erfüllt. Ein weiterer markanter Unterschied: FPGAs sind zum Teil winzige Chips in einem eingebetteten System zur Steuerung von Funktionen, die im Allgemeinen nicht als „Rechnersystem“ wahrgenommen werden. Speicherprogrammierbare Steuerungen hingegen dienen der Automatisierung von meist ausgedehnten Industrie-Anlagen. Trotz dieser klar erscheinenden Aufgabenverteilung drängt sich die Frage auf: Lässt sich ein gemeinsamer Schnittpunkt dieser Technologien finden, mit dem Ziel, Synergien zu schaffen und dabei die Schwächen der einzelnen Systeme zu eliminieren?

Als klare Vorteile der SPS gelten deren Kommunikationsschnittstellen zu Feldbussen wie CAN, Profibus, I2C-Bus beziehungsweise Ethernet, sowie ihr modularer Aufbau mit vielfältigen Erweiterungsmöglichkeiten. Der Nachteil dieser Steuerungs-Art liegt jedoch in der sequenziellen Abarbeitung. Mit steigender Programmkomplexität und Anzahl der zu steuernden Feldgeräte steigt bei dieser Methode die Zykluszeit des Programmablaufs an. Resultat ist, dass das Programm immer langsamer wird und unter Umständen nicht mehr echtzeitfähig auf sicherheitskritische Ereignisse reagieren kann.

An dieser Stelle kann ein FPGA punkten: Mit ihm ist im Gegensatz zu Prozessoren mit Multithreading-Technologie, welche scheinbar parallel arbeiten, eine „echte“ parallele Signalverarbeitung realisierbar. Das heißt: Selbst bei gleichzeitiger Kommunikation mit mehren Peripheriegeräten kann die Verarbeitung aller Signale und insbesondere der Interrupts gewährleistet werden. Ein weiterer Vorteil ist, dass FPGAs mit Modulen – den so genannten IP-Cores – aus eigener Entwicklung oder aus Zukäufen konfigurierbar sind, und somit eine schnelle, modulare Anpassung eines FPGA an die verschiedensten Anforderungen möglich ist.

Die Hardwaremodule der Motorsteuerungen nehmen schließlich die Ansteuerung der Robotermotoren vor. Die Verarbeitung der Endschalter und Inkrementalgeber je Motor geschieht bereits in Hardware auf dem FPGA. Dies bedeutet, dass die jeweiligen Motoren nur gestartet werden, wenn eine Freigabe von der CPU vorliegt und keine sicherheitskritischen Eingänge vom Roboter aktiv sind. Außerdem kann die interne InkrementalgeberÜberwachung den Motorstart verhindern, falls sich die Werte außerhalb des programmierbaren Fensters befinden. Außerdem besteht die Möglichkeit, über einen weiteren Steuereingang je Modul ein zusätzliches Steuersignal zu überwachen. Dies könnte beispielsweise eine Überstrom-Überwachung sein. Bisher sind zwei unterschiedliche Motorsteuereinheiten vorhanden: Typ I überwacht zwei Endschalter, Typ II einen Inkrementaldrehgeber sowie einen Endschalter zur Kalibrierung.

Die Entwicklungsumgebung von Altera stellt die Programmiermöglichkeit des Prozessors in C/C++ zur Verfügung. Zur Integration in die Automatisierungstechnik bieten einige SPS-Toolhersteller die Möglichkeit, aus IEC-61131-3-konformem Code einen ausführbaren Maschinencode für den NIOS-Prozessor zu erzeugen. Dies schafft die Voraussetzung für eine unkomplizierte Integration von bestehenden SPS-Modulen in die neue Technologie.

Aktuell geplante Weiterentwicklungen des EAS bestehen darin, einen Vektor-Controller zu integrieren. Dieser soll in der Lage sein, den Greifer durch Angabe einer 3D-Koordinate zum gewünschten Ziel zu steuern, wobei die Steuerung selbstständig alle Bahnparameter und Rückmeldungen beachtet. Zudem lassen sich dabei Sperrbereiche und verbotene Winkelkombinationen vorgeben. gh

Nähere Informationen:

info@stz-svs.de