Codebausteine in Step7

Codebausteine in Step7 entsprechen den Programm-Organisationseinheiten POE. Sie unterscheidet sich stark vom Bausteinkonzept der Norm EN 61131-3 ab und jeder SPS-Programmierer sollte sie kennen.

In Codebausteinen ist das Anwenderprogramm enthalten. Zu den Codebausteintypen gehören die Organisationsbausteine OB, die Funktionsbausteine FB und SFB sowie die Funktionen FC und SFC. Die zum Codebaustein gehörenden Daten werden in Datenbausteinen gespeichert.

Die Organisationsbausteine, unter anderem auch OB1 in dem das Programm bzw. die Programmstruktur vorhanden ist, werden vom Betriebssystem aufgerufen. Alle anderen Codebausteine werden vom Anwenderprogramm, insbesondere aus dem OB1 heraus, aufgerufen. Man kann natürlich weitere Codebausteine aus einer Funktion oder einem Funktionsbaustein heraus aufrufen. Es kommt ganz darauf an, wie das Programm aufgebaut ist.

Im unteren Bild sehen Sie einen schematischen Aufbau eines Beispielprogramms. Aus Vereinfachungsgründen haben wir auf den Aufruf von Systemfunktionen SFC und Systemfunktionsbausteinen SFB verzichtet. Diese können wie normale FC's und FB's aufgerufen werden.

Das Betriebssystem startet OB1. Falls irgendwelche besonderen Ereignisse auftreten, unterbrechen andere OB's den Programmablauf in OB1. Im OB1 wird zuerst FC1 aufgerufen.

Im FC1 wird wiederum FC2 aufgerufen und das Programm wird abgearbeitet. Danach wird wieder zu FC1 zurückgekehrt. Als nächstes wird im FC1 wieder ein Baustein aufgerufen. Diesmal FB1 mit dem dazugehörigen DB1. Nachdem das Programm im FB1 abgearbeitet wurde, wird wieder zu FC1 zurückgekehrt. Da die Abarbeitung im FC1 ebenfalls beendet ist, wird mit OB1 weitergemacht.

Als nächstes wird im OB1 der FB2 mit dem dazugehörigen DB2 aufgerufen. Nach der Abarbeitung des Programms im FB2 wird wieder zu OB1 zurückgekehrt. Da das Programm im OB1 zu Ende ist, wird wieder von vorne begonnen.

Auf Gobaldatenbausteine können von allen Codebausteinen aus zugegriffen werden. In unserem Beispiel greifen FB1 und FB2 auf die Daten im Globaldatenbaustein zu.

Codebausteine
Schematische Darstellung einer Programmstruktur mit Codebausteinen und Datenbausteinen