Kategorien: Hausautomation, Programmierbare Steuerungen
Anzahl der Ansichten: 28074
Kommentare zum Artikel: 0

Functional Block Diagram Language (FBD) und ihre Anwendung

 

Eine der beliebtesten SPS-Programmiersprachen - speicherprogrammierbare Steuerungen - ist die grafische Sprache von Funktionsblockdiagrammen FBD - Funktionsblockdiagramm. Diese Sprache, zusammen mit anderen Sprachen der IEC 61131-3, wie zum Beispiel Kontaktplanlogiksprache (LD)verwendet in seiner Architektur eine Art elektronische Schaltung.

Ein in dieser Sprache für die Steuerung geschriebenes Programm besteht aus einer bestimmten Liste von Schaltkreisen, die nacheinander von oben nach unten ausgeführt werden. Darüber hinaus besteht die Möglichkeit, einzelnen Ketten Etiketten zuzuweisen. In diesem Fall steht die Verwendung von Anweisungen zum Aufrufen des Etiketts zur Verfügung, um die Reihenfolge der Ausführung von Ketten zu ändern und Bedingungen und Zyklen zu erstellen.

Funktionsblockdiagrammsprache (FBS)

Somit ist ein in der grafischen Sprache FBD geschriebenes Programm ein Satz von Funktionsblöcken, die miteinander verbunden sind und deren Ausgänge und Eingänge durch Kommunikationsleitungen verbunden sind. Kommunikationsleitungen spiegeln bestimmte Programmvariablen wider, über die Daten von Block zu Block ausgetauscht werden.

Ein separater Block hat eine bestimmte Funktion (logisches „und“, „nicht“, Zähler usw.), während ein Block mehrere Ausgänge und Eingänge haben kann. Anfangs werden die Werte der Variablen durch Konstanten oder von speziellen Eingängen eingestellt, und ihre Ausgänge werden weiter mit anderen Programmvariablen oder mit SPS-Ausgängen verbunden.

Die Abbildung zeigt ein Beispielprogramm, das in der Funktionsblockdiagrammsprache FBD geschrieben ist. Wie Sie sehen können, spiegelt ein solches Programmbild den Algorithmus sehr deutlich wider, was diese Sprache für die Entwicklung von SPS-Software recht einfach und bequem macht.

Während der Programmierung in der FBD-Sprache werden sowohl Standardblöcke aus Bibliotheken als auch in FBD oder in anderen Sprachen der Norm IEC 61131-3 geschriebene Blöcke verwendet. Ein Block ist ein Programmelement, eine Art Unterprogramm, ein Funktionsblock oder eine Funktion (logisches „NICHT“, „ODER“, „UND“, Timer, Zähler, Trigger, mathematische Operation, Verarbeitung eines analogen Signals usw.).

Von diesen Blöcken werden die Ausdrücke, die die Ketten bilden, grafisch kompiliert: Der nächste Block wird mit der Ausgabe eines Blocks verbunden, dann eines anderen Blocks, und so werden die Ketten gebildet. Im Verlauf der Schaltung entspricht die Ausführungsreihenfolge der Blöcke der Reihenfolge ihrer Verbindung, und das Ergebnis der Ausführung der Schaltung wird entweder dem SPS-Ausgang zugeführt oder in eine interne Variable geschrieben.

Funktionsbausteine

Betrachten Sie einen Teil des Programms, der in der FBS-Sprache geschrieben ist: Multiplizieren Sie mit 4, dividieren Sie durch A und schreiben Sie das Ergebnis in das variable Ergebnis. Im Pseudocode sieht es folgendermaßen aus: Ergebnis: = B * 4 / A. Es ist auch möglich, den Blöcken spezielle Steuereingänge EN- und ENO-Ausgänge hinzuzufügen, um die Aufrufe einzelner Blöcke zu steuern: Eine an den EN-Eingang angelegte logische Null verhindert den Aufruf dieses Blocks, und der ENO-Ausgang meldet ihn im Fehlerfall und unterbricht dadurch die Ausführung der Schaltung bis zum Ende .


Wie Sie sehen können, ist die FBS-Sprache äußerst visuell, praktisch und daher auch für Anwendungsspezialisten, die keine spezielle Ausbildung in Informatik haben, leicht zu erlernen. Der Code wird sequentiell ausgeführt, die Struktur der Befehle innerhalb des Codes ist einfach, daher wird das Programm sehr schnell gesendet und die Aufgabe wird zuverlässig ausgeführt.

FBD-Programmiersprache

Es gibt verschiedene Modifikationen der FBD-Programmiersprache, die durch bestimmte Einschränkungen oder Erweiterungen gekennzeichnet sind.

Zum Beispiel gibt es eine Art FBC, die die Verwendung nur reiner Funktionen mit einem Ausgang ohne Zwischenvariablen erlaubt - eine Modifikation für die funktionale Programmierung.

Oder eine Modifikation von CFC (Continuous Function Chart), mit der Sie die Reihenfolge der Diagrammausführung nicht nur in einer sequentiellen Kette, sondern nach Ermessen des Softwareentwicklers festlegen können. Mit CFC erhält der Entwickler mehr Freiheit, obwohl der Code länger ist.

Siehe auch zu diesem Thema:SPS-Programmiersprachen und CoDeSys-Automatisierungssoftwareplattform

Siehe auch auf i.electricianexp.com:

  • LD Ladder Language und ihre Anwendung
  • SPS-Programmiersprachen und CoDeSys-Automatisierungssoftwareplattform
  • Motorstartdiagramme in Kontaktplansprache LD für SPS
  • Ein Beispiel für die Modernisierung des Stromkreises eines Lastenaufzugs mit ...
  • Videokurs über die Arbeit mit dem Aries Controller PLC110 in CODESYS2.3

  •