FRAGE:
Wie kann - unter Umgehung der PG-Funktionalität - ein Aktualwert eines DB als Initialwert übernommen werden?
ANTWORT:
Im SIMATIC Manager kann mit der Funktion "Zielsystem > RAM nach ROM kopieren" ein Datenbaustein aus dem Arbeitsspeicher in den Ladespeicher geschrieben werden. Damit stehen geänderte Parameter in diesem Datenbaustein - z.B. auch nach Netz-Aus - wieder zur Verfügung. Um Parameter aus einem DB ohne PC/PG mit STEP 7 - z.B. durch OP-Bedienung - in den Ladespeicher zu transferieren, kann bei CPUs mit Micro Memory Card (MMC) die Systemfunktion SFC 84 "WRIT_DBL" verwendet werden. Mit dem folgenden Beispielaufruf werden 10 Bytes aus DB1 (im Arbeitsspeicher) in DB2 (im Ladespeicher) geschrieben
(Der Datenbaustein DB2 muss im Beispiel als "Unlinked" deklariert werden, da er sonst im Arbeitsspeicher steht. Diese Einstellung kann beim Einfügen des Datenbausteins im Feld "Eigenschaft - Datenbaustein" unter dem Register "Allgemein-Teil 2" vorgenommen werden.):
CALL "WRIT_DBL"
REQ := M10.0 // REQ = 1: Schreibanforderung
SRCBLK := P#DB1.DBX 0.0 BYTE 10 // Zeiger auf Quellbereich
RET_VAL MW20 // Fehlercode
BUSY :=M10.1 // BUSY = 1: Schreibvorgang noch nicht beendet
DSTBLK :=P#DB2.DBX 0.0 BYTE 10 // Zeiger auf Zielbereich
Um Anlaufwerte über OP-Bedienung netzausfallsicher bzw. urlöschsicher zu ändern, kann folgende, prinzipielle Vorgehensweise realisiert werden:
Parameter über OP-Bedienung ändern.
Geänderte, für den Anlauf relevante Parameter über OP-Bedienung in einen DB im Ladespeicher schreiben (auch Parameter aus verschiedenen DBs möglich).
Im OB100 Anlaufwerte mit SFC 83 "READ_DBL" aus dem Ladespeicher auslesen und in den ursprünglichen DB zurückschreiben. Durch Setzen eines Flags kann die Bearbeitung des Anwenderprogramms verzögert werden, bis alle Anlaufwerte in die entsprechenden DBs geschrieben wurden.
Wichtig:
Der Quellbereich darf aus Konsistenzgründen während der Bearbeitung der SFC 84 nicht verändert werden. Weiterhin wird die SFC 84 asynchron bearbeitet, d. h. die Bearbeitung kann über mehrere SFC-Aufrufe erfolgen. Aus diesen Gründen sollte die Bearbeitung des Anwenderprogramms während der Ausführung der SFC 84 ausgesetzt werden, um die Datenkonsistenz zu gewährleisten.
Hinweis:
Schreibzugriffe mit SFC 84 sollten immer nur im notwendigen Umfang durchgeführt werden, da der Ladespeicher nicht für häufige Schreibzugriffe vorgesehen ist.
Glaub das war gesucht