Herunterladen Diese Seite drucken

Aufrufen Von Unterprogrammen In Interruptprogrammen; Von Der S7-200 Unterstützte Arten Von Interrupts; Zeitgesteuerte Interrupts - Siemens SIMATIC S7-200 Systemhandbuch

Vorschau ausblenden Andere Handbücher für SIMATIC S7-200:

Werbung

Aufrufen von Unterprogrammen in Interruptprogrammen

Sie dürfen Unterprogramme und Interruptprogramme in einer Ebene verschachteln, d.h. Sie dürfen ein
Unterprogramm aus einem Interruptprogramm aufrufen. Wird ein Unterprogramm aus einem
Interruptprogramm aufgerufen, nutzen beide Programme die Akkumulatoren und den logischen Stack
gemeinsam.
Von der S7-200 unterstützte Arten von Interrupts
Die S7-200 unterstützt die folgenden Arten von Interruptprogrammen:
Kommunikationsschnittstellen-Interrupts: Die S7-200 erzeugt Ereignisse, mit denen Ihr Programm die
-
Kommunikationsschnittstelle steuern kann.
E/A-Interrupts: Die S7-200 erzeugt Ereignisse für verschiedene Zustandsänderungen
-
unterschiedlicher E/A. Durch diese Ereignisse kann Ihr Programm auf die schnellen Zähler,
Impulsausgaben und auf steigende oder fallende Flanken an den Eingängen reagieren.
Zeitgesteuerte Interrupts: Die S7-200 erzeugt Ereignisse, mit denen Ihr Programm in bestimmten
-
Zeitabständen reagieren kann.
Kommunikationsschnittstellen-Interrupts:
Die serialle Kommunikationsschnittstelle der S7-200 kann von Ihrem Programm gesteuert werden. Die
Kommunikation über diese Schnittstelle wird frei programmierbare Kommunikation genannt. Bei der frei
programmierbaren Kommunikation definiert Ihr Programm die Baudrate, die Bits pro Zeichen, die Parität und
das Protokoll. Sende- und Empfangsinterrupts erleichtern die programmgesteuerte Kommunikation.
Ausführliche Informationen hierzu finden Sie in dem Abschnitt zu Sende- und Empfangsoperationen.
E/A-Interrupts
Zu den E/A-Interrupts gehören Interrupts bei steigender oder fallender Flanke, Interrupts des schnellen
Zählers und Impulsfolge-Interrupts. Die S7-200 kann bei einer steigenden und/oder fallenden Flanke an
einem Eingang (entweder E0.0, E0.1, E0.2 oder E0.3) einen Interrupt erzeugen. Die Ereignisse Steigende
Flanke und Fallende Flanke können für jeden dieser Eingänge erfasst werden. Mit diesen Ereignissen
können auch Fehlerbedingungen angezeigt werden, die bei Auftreten des Ereignisses sofort beachtet
werden müssen.
Mit den Interrupts der schnellen Zähler können Sie auf folgende Ereignisse reagieren: aktueller Wert gleich
voreingestellter Wert, Zählrichtung wechselt und löst dadurch beispielsweise einen Drehrichtungswechsel
eines Motors aus, Zähler wird extern zurückgesetzt. Mit jedem dieser Ereignisse von schnellen Zählern
können Sie auf schnelle Ereignisse reagieren, die bei den Zyklusraten des Automatisierungssystems nicht
gesteuert werden können.
Die Impulsfolge-Interrupts melden sofort, wenn die angegebene Anzahl Impulse ausgegeben wurde.
Impulsfolgen werden häufig zum Steuern von Schrittmotoren eingesetzt.
Sie können die oben beschriebenen Interrupts freigeben, indem Sie dem entsprechenden E/A-Ereignis ein
Interruptprogramm zuordnen.

Zeitgesteuerte Interrupts

Zeitgesteuerte Interrupts umfassen Interrupts und die Interrupts der Zeiten T32/T96. Sie können Aktionen,
die zyklisch ausgeführt werden sollen, mit einem zeitgesteuerten Interrupt definieren. Die Zykluszeit wird in
Inkrementen von 1 ms zwischen 1 ms und 255 ms gesetzt. Die Zykluszeit für den zeitgesteuerten Interrupt 0
schreiben Sie in SMB34, die Zykluszeit für den zeitgesteuerten Interrupt 1 schreiben Sie in SMB35.
Das zeitgesteuerte Interruptereignis ruft jedesmal, wenn die Zeit abläuft, das entsprechende
Interruptprogramm auf. Sie setzen zeitgesteuerte Interrupts dazu ein, in regelmäßigen Abständen
Analogeingänge abzufragen oder einen PID-Regler auszuführen.
Ein zeitgesteuerter Interrupt wird freigegeben und die Zeit beginnt zu laufen, wenn Sie einem
zeitgesteuerten Interruptereignis ein Interruptprogramm zuordnen. Dabei erfasst das System die Zykluszeit,
damit spätere Änderungen an SMB34 und SMB35 sich nicht auf die Zykluszeit auswirken. Möchten Sie die
Zykluszeit ändern, müssen Sie einen neuen Wert für die Zykluszeit angeben und anschließend das
Interruptprogramm erneut dem zeitgesteuerten Interrupt zuordnen. Beim erneuten Zuordnen löscht die
Funktion den angesammelten Zeitwert der vorherigen Zuordnung, und die Zeit beginnt mit dem neuen Wert
zu laufen.
S7-200 Befehlssatz
Kapitel 6
159
6

Quicklinks ausblenden:

Werbung

loading