Siemens 6AV6651-7KA01-3AA4 - S7-1200 + KTP400 Basic Starter Kit 6AV6651-7KA01-3AA4 Manual Do Utilizador
Códigos do produto
6AV6651-7KA01-3AA4
SPS-Grundlagen leicht gemacht
4.4 Ausführung des Anwenderprogramms
Easy Book
40
Gerätehandbuch, 11/2009, A5E02486775-01
4.4
Ausführung des Anwenderprogramms
Die CPU unterstützt die folgenden Bausteinarten für den Aufbau einer geeigneten Struktur
Ihres Anwenderprogramms:
● Ein Organisationsbaustein (OB) ist ein Codebaustein, der normalerweise den Hauptteil
● Ein Organisationsbaustein (OB) ist ein Codebaustein, der normalerweise den Hauptteil
der Programmlogik enthält. Der OB reagiert auf ein bestimmtes Ereignis in der CPU und
kann die Ausführung des Anwenderprogramms unterbrechen. Der Standardbaustein für
die zyklische Ausführung des Anwenderprogramms (OB 1) stellt die Grundstruktur für Ihr
Anwenderprogramm bereit und ist der einzige Codebaustein, der für das
Anwenderprogramm erforderlich ist. Die anderen OBs führen bestimmte Funktionen aus,
z. B. beim Anlaufen, für die Interrupt- und Fehlerbearbeitung oder für die Ausführung
eines bestimmten Programmcodes in bestimmten Abständen.
● Ein Funktionsbaustein (FB) ist ein Unterprogramm, das ausgeführt wird, wenn es aus
einem anderen Codebaustein (OB, FB oder FC) heraus aufgerufen wird. Der aufrufende
Baustein übergibt dem FB die Parameter und definiert einen bestimmten Datenbaustein
(DB), der die Daten für diesen Aufruf oder diese Instanz des FBs speichert. Wird der
Instanz-DB geändert, so kann ein allgemeiner FB den Betrieb einer Gerätegruppe
steuern. Beispielsweise kann ein FB mehrere Pumpen oder Ventile mit unterschiedlichen
Instanz-DBs steuern, die die speziellen Betriebsparameter jeder Pumpe bzw. jedes
Ventils enthalten. Der Instanz-DB speichert die Werte des FB zwischen verschiedenen
oder aufeinander folgenden Aufrufen des FB, z. B. um asynchrone Kommunikation zu
unterstützen.
● Eine Funktion (FC) ist eine Unterprogramm, das ausgeführt wird, wenn es aus einem
anderen Codebaustein (OB, FB oder FC) heraus aufgerufen wird. Einer FC ist kein
Instanz-DB zugeordnet. Der aufrufende Baustein übergibt der FC die Parameter. Die
Ausgangswerte der FC müssen in eine Speicheradresse oder in einen globalen DB
geschrieben werden, wenn andere Komponenten des Anwenderprogramms diese Werte
benötigen.
Die Größe des Anwenderprogramms, der Daten und der Konfiguration ist durch den
verfügbaren Ladespeicher und den Arbeitsspeicher in der CPU begrenzt. Die Anzahl
unterstützter Bausteine ist nicht begrenzt, einziger Grenzwert ist der freie Speicherplatz.
OBs zur Ereignisbearbeitung verwenden
Die Bearbeitung des CPU-Zyklus wird durch Ereignisse gesteuert. Das Standardereignis ist
ein Programmzyklusereignis, das die Ausführung des Programmzyklus-OBs startet. (Die
Verwendung eines Programmzyklus-OBs in Ihrem Programm ist nicht obligatorisch. Wenn
Sie jedoch nicht über einen Programmzyklus-OB verfügen, finden keine normalen E/A-
Aktualisierungen statt. In diesem Fall müssen Sie zum Lesen der bzw. Schreiben in die E/A
das Prozessbild verwenden.) Andere Ereignisse können bei Bedarf aktiviert werden. Einige
Ereignisse, z. B. zyklische Ereignisse, werden während der Konfiguration aktiviert. Andere
Ereignisse, z. B. Zeitverzögerungsereignisse, werden zur Laufzeit aktiviert. Ein aktiviertes
Ereignis ist mit einem zugehörigen OB verknüpft. (Die Programmzyklus- und
Anlaufereignisse können jeweils mit mehreren OBs verknüpft werden.) Tritt ein Ereignis ein,
so wird die Ausführung des entsprechenden Unterprogramms für die Ereignisbearbeitung, d.
h. des zugewiesenen OBs und anderer, aus dem OB aufgerufener Funktionen, gestartet. In
welcher Reihenfolge diese Unterprogramme bearbeitet werden, kann durch das Einrichten
von Prioritäten, Prioritätsgruppen und Warteschlangen festgelegt werden.