Funktionsblöcke und ihr Einsatz am Beispiel Profinet CBA

Der Bereich der Automationsbereich ist fast unübersichtlich breit gefächert. Zahlreiche Komponenten spielen eine entscheidende Rolle, sodass auch viele Prinzipien, Festlegungen und Richtlinien erforderlich sind. Zudem variieren die System-und Netzwerkbestandteile nach dem Einsatzort, an welchem sie ihre Funktionalität anwenden sollen. Aufgrund der Vielfältigkeit und unterschiedlichen Anforderungen haben sich besonders solche Komponenten durchgesetzt, die sich bei unterschiedlichen Geräten anwenden und mehrfach einsetzen lassen. Hierzu zählt auch der Funktionsblock, ein Modell, welches sich bei der Automatisierung von Anlagen bewiesen hat. Dieses Modell kann auch am Beispiel von Profinet CBA veranschaulicht werden, bei welchem es sich um eine Erweiterung des Standards PROFINET handelt, der für das industrielle Ethernet genutzt wird, echtzeitfähig ist und die Einbindung von feldbusgebundenen Systemen erlaubt.

 

Die PROFINET Variante CBA

 

Profinet CBA, was für „Component Based Automation“ steht, ist eine Komponentenmodell was der Automatisierung von Prozessen innerhalb von Systemen und Netzwerken dient. Dabei ist eine Komponente die Gesamtheit aller mechanischen, elektrischen und informationstechnischen Größen. Damit sich die Komponente beschreiben lässt, wird eine entsprechende Datei erstellt, deren Planungswerkzeuge die Beschreibungen laden kann und anschließend eine Erlaubnis zur Erstellung von logischen Verbindungen zwischen den einzelnen Komponenten erteilt. Dies dient dann der Realisierung der Anlage. Der Grundgedanke des Modells wird durch die Möglichkeit geprägt, dass sich autonom arbeitende Teilanlagen, die in ihrer Beschaffenheit überschaubar gestaltet sind, untergliedern lassen. So ist es beispielsweise machbar, dass ein Aufbau und eine gewisse Funktionalität in verschiedenen Anlagen vertreten sein können. Die PROFINET Komponenten lassen sich durch ein paar wenige Eingangssignale steuern, wobei der Anwender ein geschriebenes Steuerprogramm für die notwendige Funktionalität ausführt und die entsprechenden Ausgangssignale an eine weitere Steuerung übermittelt. Dieser Vorgang lässt sich herstellerunabhängig durchführen und die Kommunikation wird nicht programmiert, sondern durchläuft eine Projektierung.

 

Definition von Funktionsblöcken

Der Funktionsblock ist innerhalb eines Systems eine Komponente aus der Anlagensoftware. Dabei handelt es sich exakter gesagt um ein Modell, welches auf einem Hardware-Design basiert. Die Komponente wird hier ein einziges Mal definiert und kann anschließend in unterschiedlichen Anlagen so oft wie nötig verwendet werden. Die Hauptaufgabe des Funktionsblocks liegt in der Kapselung von Algorithmen und netzinternen Daten. Der Algorithmus festigt dabei die Art und Weise wie die gesammelten Eingangsdaten zu den Daten der Ausgänge verarbeitet werden sollen. Dabei werden die lokalen Daten mitberücksichtigt und ein Funktionsblock oder die Anordnung aus mehreren Blöcken bildet ein gesamtes Programm, welches zur Automatisierung eingesetzt werden kann.

 

Vorhandene Paradigmen bei Funktionsblöcken

 

Damit ein Funktionsblock richtig funktionieren kann, müssen seine Bestandteile klar definiert sein, sodass auch das Vorhandensein von Paradigmen erforderlich wird. Hier werden zwei wesentliche Kategorien unterschieden:

 

  • Typendeklaration – die Schnittstellen und Algorithmen des Funktionsblockes werden in der Typendeklaration beschrieben. Zu den Schnittstellen zählen dabei alle Größen und die Bedeutungen der Ein-und Ausgangsdaten.

 

  • Instanz – innerhalb eines Funktionsblocks existieren lokale Daten. Zusätzlich werden die Typen der Blöcke in einer Bibliothek abgelegt, auf welche zu einem späteren Zeitpunkt je nach Bedarf zugegriffen werden kann. Wird ein Funktionsblock eingesetzt, wird der Speicher der lokalen Daten reserviert und es kommt zur Entstehung einer Instanz. Mittels des Speichers und der Typenbeschreibung vom Funktionsblock gilt die Instanz als vollständig und eindeutig definiert

 

 

Der hauptsächliche Einsatz von Funktionsblöcken

 

Funktionsblöcke können entweder durch einen Anlagenbauer eingesetzt werden, der diese zur Beschreibung und Programmierung von Automatisierungsfunktionen verwendet, oder von den Herstellern der Geräte und den Gremien zur Normenfestlegung von Funktionen eines Feldgerätes.

Wird ein Funktionsblock von einem Anlagenbauer verwendet, so soll im Idealfall erreicht werden, dass sich alle Blöcke innerhalb einer gemeinsamen Bibliothek befinden. Besteht diese Ausgangssituation nicht, müssen die Funktionsblöcke immer weiter zerlegt werden, bis sie sich auf die bereits vorhandenen Blöcke programmieren oder zurückführen lassen.  Im Bereich der Motion Control Funktionen wurden entsprechende Festlegungen für die Blöcke getroffen, sodass die in den Bibliotheken vorhandenen Funktionsblöcke untereinander vergleichbar sind, auch wenn diese von unterschiedlichen Herstellern stammen. Des weiteren lassen sich hierdurch auch die Anlagenplanung und der Vorgang der Programmierung für den Anwender vereinfacht.

 

Weitere Einsatzmöglichkeiten von Funktionsblöcken

 

Bei Funktionsblöcken muss zusätzlich eine Festlegung des Ortes erfolgen, an welchem die Funktionen genau ausgeführt werden sollen. Im Normalfall ist stets eine Steuerung vorhanden, die entweder durch eine Speicherprogrammierbare Steuerung oder eine Steuerung welche auf der Basis eines industriellen PCs konzipiert ist, gestellt wird. Allerdings gibt es auch bei modernen Feldgeräten in gewisser Weise immer eine Prozessorleistung, sodass eine Kommunikation zu einer Steuerung sowie zwischen den einzelnen Steuerungen über ein digitales Netzwerk möglich ist und die Funktionsblöcke bearbeitet werden können. Zusätzlich bedarf es für das Bedienen und Beobachten SCADA-Systeme. Letztlich lassen sich die Blöcke auch innerhalb eines Prozessleitsystems ausführen, was die Möglichkeiten der Einsatzbereiche abschließt.