Siemens 6AV6651-7KA01-3AA4 - S7-1200 + KTP400 Basic Starter Kit 6AV6651-7KA01-3AA4 Manuel D’Utilisation

Codes de produits
6AV6651-7KA01-3AA4
Page de 136
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 
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.