FRAGE:
Wie kann ich unter Verwendung der Systemfunktion SFC12 "D_ACT_DP"
eine Übersicht aller aktivierten bzw. deaktivierten DP Slaves
erhalten?
ANTWORT: Mit der Systemfunktion SFC12 "D_ACT_DP"
haben Sie die Möglichkeit, unter Angabe einer logischen Adresse am
Parameter "LADDR" und der Auftragskennung 0 am Parameter "MODE" den
Zustand eines DP Slaves zu ermitteln. Um alle DP Slaves des
Mastersystems zu überwachen, müssten Sie diese Systemfunktion für
jeden DP Slave ausführen.
Es ist vorteilhafter, wenn Sie für diese Aufgabe die
Systemfunktion SFC51 "RDSYSST" verwenden. Mit dieser Systemfunktion
können Sie den Status aller Slaves eines DP Mastersystems mit einem
Aufruf ermitteln. Die dafür notwendige Parameterversorgung der
SFC51 finden Sie in der nachfolgenden Tabelle.
|
I/O-Typ |
Parameter |
Wert |
Typ |
Bedeutung |
| I |
REQ |
True |
BOOL |
Anstoß der Bearbeitung mit TRUE |
| I |
SZL_ID |
W#16#0692 |
WORD |
OK Zustand aller DP-Slaves |
| I |
INDEX |
B#16#1 |
WORD |
Nummer der Mastersystems, z.B. 1 |
| O |
RET_VAL |
|
INT |
Rückgabewert |
| O |
BUSY |
|
BOOL |
Bearbeitung ist noch aktiv |
| O |
SZL_HEADER |
|
STRUCT |
|
| O |
DR |
|
ANY |
Zielbereich für die ermittelten
Daten |
Tabelle 1: Parameterversorgung der Systemfunktion SFC51
Anmerkungen zu den Parametern in Tabelle 1:
REQ:
Die Systemfunktion SFC51 ist eine asynchron ablaufende Funktion.
D.h., die Dauer der Bearbeitung kann sich über mehrere Zyklen
erstrecken. Werten Sie daher vor einem erneuten Aufruf der Funktion
den BUSY-Parameter aus. Nur wenn dieser nicht mehr gesetzt ist,
können Sie einen erneuten Auftrag starten.
SZL_ID:
Der in Tabelle 1 angegebene Wert gilt nur für Mastersysteme an
integrierten DP-Anschaltungen. Für externe DP-Anschaltungen (z.B.
CP443-5 Ext.) müssen Sie den Wert W#16#4692 verwenden.
INDEX:
Den Wert für diesen Parameter erhalten Sie aus der HW Konfig
(PROFIBUS(x); DP-Mastersystem(1)).
SZL_HEADER:
Dieser Parameter wird nicht benötigt, Sie müssen ihn jedoch
deklarieren. Die an diesem Parameter zu übergebende STRUCT-Variable
besteht aus zwei WORD Variablen.
DR:
Geben Sie an diesem Parameter die Variable für die ermittelten
Daten an. In diesem Anwendungsfall muss die Variable ein ARRAY OF
BYTE [1...16] sein. Für jeden DP-Slave ist in diesem ARRAY ein Bit
reserviert (16 x 8 = 128). Der Status des DP-Slaves mit der Adresse
1 befindet sich im Bit 0 des ersten Bytes. Ist dieses Bit gesetzt,
dann ist dieser DP-Slave gestört oder deaktiviert.
Hinweis:
Ausführliche Informationen zur Systemfunktion SFC51 finden Sie in
der STEP 7 ONLINE-Hilfe oder unter Start > SIMATIC >
DOKUMENTATION im Handbuch "SIMATIC Systemsoftware für
S7-300/400 System- und Standardfunktionen". Das Handbuch steht
Ihnen auch unter Beitrags-ID: 1214574 zur Verfügung.
|