Anleitung Um einen Uhrzeitalarm zu starten, muss der Alarm zuerst eingestellt und dann aktiviert werden. Es gibt drei Möglichkeiten, den Uhrzeitalarm zu bearbeiten.
- Das Stellen und auch das Aktivieren des Uhrzeitalarms wird in der Hardware-Konfiguration vorgenommen. Dadurch wird der Uhrzeitalarm automatisch bei Neustart der CPU eingestellt und zum vorgesehenen Zeitpunkt aktiviert.
- Der Uhrzeitalarm wird in der Hardware-Konfiguration eingestellt. Aktiviert wird der Uhrzeitalarm-OB über die SFC30, die sich in der CPU befindet und vom Anwender ereignisabhängig aufgerufen werden kann.
- Der Uhrzeitalarm wird mit SFC28 gestellt und mit SFC30 aktiviert, ohne dass in HW Konfig Einstellungen vorgenommen wurden.
In den S7-300 und S7-400 CPUs sind die Systemfunktionen "SFC", mit denen die Bearbeitung des Uhrzeitalarm gesteuert werden kann, integriert. Sie belegen beim Aufruf im Anwenderprogramm keinen Speicherplatz.
Fall 1: Uhrzeitalarm mit HW-Konfig einstellen und aktivieren Wählen Sie in Ihrem S7-Projekt die Station an. Daraufhin wird im rechten Fenster das Hardware-Symbol angezeigt. Doppelklicken Sie auf dieses Symbol, woraufhin HW Konfig gestartet wird. Wenn Sie schon eine existierende Station angewählt haben, wird Ihnen das Rack mit den bereits projektierten Baugruppen angezeigt. Nach einem Doppelklick auf das Symbol der CPU in HW Konfig wird ein Fenster mit mehreren Registern ausgegeben. Dort wählen Sie das Register "Uhrzeitalarm" an. In diesem Register stellen Sie z. B. die in Bild 1 eingetragenen Werte ein. Dadurch wird der Uhrzeitalarm OB10 auf den 01.10.03 täglich um 8 Uhr eingestellt. Aktivieren Sie den Uhrzeitalarm durch Anwahl des Kontrollkästchens unter dem Text "AKTIV".

Bild 01
Fall 2: Uhrzeitalarm mit HW Konfig einstellen und mit SFC30 aktivieren Wie unter Fall 1 beschrieben, wählen Sie in HW-KONFIG die CPU an, um so die Parametrierung der CPU durchführen zu können. Im Register "Uhrzeitalarm" stellen Sie z. B. die in der Tabelle 1 aufgeführten Werte ein.
|
OB-Nummer |
Priorität |
Aktiv |
Ausführung |
Startdatum |
Uhrzeit |
|
OB10 |
2 |
"AUS" |
Täglich |
01.10.03 |
08:00:00 |
Einstellungen im Register Uhrzeitalarme
Dadurch wird der Uhrzeitalarm-OB10 auf das Startdatum 01.10.03 und die Startuhrzeit auf 8 Uhr eingestellt. Das Intervall ist auf jeden Tag eingestellt. Das Kontrollkästchen unter dem Text "AKTIV" darf nicht angewählt sei - d.h. der eingestellte Uhrzeitalarm wird nicht aktiviert, er ist nur eingestellt
Mit dem Aufruf der Systemfunktion SFC30 "ACT_TINT" können Sie dann z. B. ereignisabhängig den Baustein aufrufen, um so den Uhrzeitalarm zu aktivieren. Die Parameter des Bausteins sind hier anhand einer Beispielparametrierung für den Uhrzeit_OB10 aufgeführt.
|
U E 1.0 |
|
Wenn der Digitaleingang E 1.0 "1" führt, soll der Uhrzeitalarm-OB10 aktiviert werden. |
| |
SPBN Nein |
|
|
| |
Call SFC30"ACT_TINT" |
|
|
|
OB_Nr: |
=10 |
Nummer des OBs, der aktiviert werden soll. |
|
RET_VAL: |
MW 30 |
Tritt während der Bearbeitung des SFC ein Fehler auf, dann wird hier ein Fehlercode eingetragen der mittels ONLINE-Hilfe ausgewertet werden kann. |
|
Nein: |
NOP 0 |
|
|
Beispielprogramm 1: Aktivieren des Uhrzeitalarms mit SFC30 "AKT_TINT"
Fall 3: Uhrzeitalarm einstellen und aktivieren über SFC28 bis SFC31 Im Fall 3 wird bei der Parametrierung der CPU in HW Konfig im Register "Uhrzeitalarm" für den entsprechenden Zeitalarm-OB ( z.B OB10) keine Eintragung vorgenommen. Es wird also kein Uhrzeitalarm eingestellt und auch kein Uhrzeitalarm bezüglich des Zeit-OB ( z.B. OB10) aktiviert.
|
Uhrzeitalarm-OB |
Funktion |
|
SFC28 "SET_TINT" |
Uhrzeitalarm stellen |
|
SFC30 "ACT_TINT" |
Uhrzeitalarm aktivieren |
|
SFC29 "CAN_TINT" |
Uhrzeitalarm stornieren |
|
SFC31 "QRY_TINT" |
Uhrzeitalarm abfragen |
Übersicht der SFCs zur Bearbeitung des Uhrzeitalarms
Das Einstellen des Startdatums, der Startuhrzeit und der Art des Uhrzeitalarms (einmal, minütlich, stündlich, täglich, wöchentlich, monatlich, jährlich oder am Monatsende) wird im Anwenderprogramm mit Aufruf und Parametrierung des SFC28 "SET_TINT" umgesetzt. Die Parameter des Bausteins sind in der Tabelle aufgeführt und anhand eines Beispiels für den OB10 erläutert. Der SFC28 ist - wie alle SFCs - in der CPU integriert und benötigt keinen zusätzlichen Speicherplatz im Anwenderprogramm.
|
Call SFC28"SET_TINT" |
- |
Uhrzeit und Datum stellen |
|
OB_Nr: |
=10 |
Es soll der OB10 eingestellt werden |
|
SDT: |
#zeitpunkt1 |
Hier das Startdatum und Startuhrzeit eingeben; aber nicht als DT-Format sondern über eine Variable, die im aufrufenden Baustein definiert werden muss und vom Typ "DT" ist |
|
PERIOD: |
W#16#1001 |
Täglich ab Startdatum und Startuhrzeit soll der OB10 aktiviert werden |
|
RET_VAL: |
MEW23 |
Tritt während der Bearbeitung des SFC ein Fehler auf, so wird hier ein Fehlercode eingetragen, der mittels ONLINE-Hilfe ausgewertet werden kann |
Beispielprogramm 2: Aufruf der SFC28 "SET_TINT"
Nachdem Sie das Startdatum und die Startuhrzeit sowie die Wiederholungsmöglichkeit des Bearbeitens ab Startdatum programmiert haben, können Sie den Uhrzeitalarm durch Aufruf des SFC30 "ACT_TINT", wie im Beispielprogramm 1 angegeben, aktivieren.
Achtung:
Wenn Sie für den Wiederholungszeitraum "monatlich" einstellen, dürfen Sie beim Startdatum nur einen Tag zwischen dem 1. und 28. angeben. Die Tage 29 bis 31 dürfen nicht parametriert werden, da z.B. im Februar kein Prozessalarm aufgerufen würde. Falls Sie am Ende eines jeden Monats den Uhrzeitalarm auslösen möchten, nutzen Sie die Funktion "Monatsletzter".
Zusätzlich ist es möglich, die Bearbeitung des Uhrzeitalarms mit Bausteinen aus dem Systemfunktionsbereich zu überwachen und auch zu löschen.
Mit SFC29 "CAN_TINT" (Cancel Time-of-Day Interrupt) können Sie im Programm abhängig von Ereignissen die Einstelldaten eines schon eingestellten Zeitalarms wieder löschen.
|
Call SFC29"CAN_TINT" |
- |
Uhrzeit und Datum stornieren (löschen) |
|
OB_Nr: |
=10 |
Nummer des Zeitalarm-OBs, dessen Startdatum und Startuhrzeit gelöscht werden soll |
|
RET_VAL: |
MW 23 |
Tritt während der Bearbeitung des SFC ein Fehler auf, so wird hier ein Fehlercode eingetragen der mittels ONLINE-Hilfe ausgewertet werden kann |
Beispielprogramm 3: Aufruf der SFC29 "CAN_TINT"
Mit dem SFC31 "QRY_TINT" (Query Time-of-Day Interrupt) können Sie im Programm absolut oder abhängig von Ereignissen den Status eines Uhrzeitalarms anzeigen lassen. Die Parameter des Bausteins sind anhand des Zeit-OBs 10 beschaltet.
|
Call SFC31"QRY_TINT" |
- |
Status des Uhrzeitalarms anzeigen |
|
OB_Nr: |
=10 |
Nummer des Zeitalarm-OBs, dessen Startdatum und Startuhrzeit gelöscht werden soll. |
|
RET_VAL: |
MW 23 |
Tritt während der Bearbeitung der SFC ein Fehler auf, dann wird hier ein Fehlercode eingetragen der mittels ONLINE-Hilfe ausgewertet werden kann. |
|
STATUS: |
MW 30 |
Status des Uhrzeitalarms
Bit 0=0, Uhrzeitalarm ist vom Betriebssystem freigegeben
Bit 1=0, neue Uhrzeitalarme werden nicht verworfen
Bit 2=0, Uhrzeitalarm ist nicht aktiviert oder ist abgelaufen
Bit 3=0, keine Bedeutung
Bit 4=0, Uhrzeitalarm-OB ist nicht geladen
Bit5=0, die Ausführung des Uhrzeitalarm-OB ist durch eine laufende Testfunktion gesperrt. |
Beispielprogramm 4: Aufruf der SFC31 "QRY_TINT"
|