Home

Funktionsblöcke

Funktionsblöcke (FB) sind ein zentrales Konzept in der speicherprogrammierbaren Steuerung (SPS) und in der IEC 61131-3 definierten Programmierwelt. Ein Funktionsblock ist eine wiederverwendbare Softwarekomponente, die Daten (Zustand) und Verhalten kapselt. Die Schnittstelle eines FB besteht aus Eingangsvariablen (IN), Ausgangsvariablen (OUT) und gegebenenfalls IN_OUT-Variablen; zusätzlich können innere Variablen zur Speicherung von Zustand verwendet werden. Die eigentliche Logik wird in einer der IEC-61131-3-Sprachen implementiert, beispielsweise Kontaktplan (FBD), Strukturierten Text (ST) oder Fließdiagramm.

Ausführung und Instanziierung: Aus einem FB-Typ werden Instanzen erzeugt, die jeweils eigenes Speicherbild besitzen. Instanzen lassen

Beispiele und Beziehungen: Zu den bekannten Standard-FBs gehören Timer-Blocktypen wie TON (On-Delay Timer), TOF (Off-Delay Timer)

sich
durch
Verbindungenadern
(Datenleitungen)
zu
anderen
Blöcken
koppeln,
sodass
Datenflussbeziehungen
zwischen
Blöcken
entstehen.
FB-Instanzen
können
wiederverwendet
und
in
Bibliotheken
organisiert
werden,
wodurch
Modularität
und
Wartbarkeit
steigen.
Typische
Anwendungsbereiche
umfassen
wiederkehrende
Steuerungsfunktionen
wie
Timer,
Zähler,
Logik-
und
Kommunikationsblöcke.
und
TP
(Pulse
Timer)
sowie
Zählerblöcke
wie
CTU
und
CTD.
FBs
ermöglichen
eine
objektartige
Herangehensweise
an
die
Programmierung,
da
sie
Zustände
über
Zyklusgrenzen
hinweg
bewahren
und
so
komplexe
Abläufe
in
überschaubare
Bausteine
gliedern.
Im
IEC-Kontext
stehen
FBs
im
Gegensatz
zu
FCs
(Funktionsaufrufen,
die
in
der
Regel
keinen
eigenen
Zustand
halten)
und
bilden
die
Bausteine
des
Funktionsbaustein-Denkens
in
FBD,
ST
und
anderen
Sprachen.
In
weiter
gefassten
Architekturen
wie
IEC
61499
findet
das
Funktionsblockprinzip
eine
ereignisgesteuerte
Weiterentwicklung.