Zählwertvorgabe aus Visualisierung setzen

Sonstige Fragen, die nicht passend sind zu den anderen Themen.

Moderatoren: Matthias, Weiss_MHJ

Antworten
Benutzeravatar
peterb
SPSTreff-User
Beiträge: 1
Registriert: 15 Jul 2010, 13:28
Wohnort: Röbel /Müritz

Zählwertvorgabe aus Visualisierung setzen

Beitrag von peterb »

Hallo, ich lasse einen Zählwert (ZV/ZR) über ein DBW an WinCC auf ein E/A-Feld ausgeben, nun möchte ich von WinCC über ein zweites E/A-Feld (oder geht es über das selbe?) eienen Zählerwert auf einem anderen DBW vorgeben und mit einem DBX über den ZW vorgeben und mit einem DBX über S laden. Wenn ich in "Variabelen Beobauchten" alles ausführe werden die Werte auch übergeben. Weise ich jedoch das DBW der Vorgabe dem Zähler an ZW zu, geht die CPU in Stopp (BCD Wandelfehler)??? Wenn ich den DB beobachte, werden die Werte doch in hex dargestellt.Als was muss ich das Wertvorgabeword deklarierenn (word,int???)und wenn ja wie wandeln?
Beste Grüße peterb :?: :?: :?: :?
..."carpe diem"...

Benutzeravatar
Matthias
SPSTreff-Profi User
Beiträge: 288
Registriert: 19 Jun 2010, 11:16
Wohnort: Bretten
Kontaktdaten:

Beitrag von Matthias »

Hallo,

einen Zähler kann man nur mit einer BCD-Zahl auf einen bestimmten Zählerstand setzen.

Angenommen der Integerwert von (0-999 dezimal) aus dem DB10 Datenwort 20 soll in den Z10 hineingeschrieben werden,
dann kann man so vorgehen:

Code: Alles auswählen

       U    DB10.DBX   10.0      //Wenn Bit
       L    DB10.DBW   20        //Integer laden (0 - 999 dezimal)
       ITB                       //Integer zu BCD wandeln
       S    Z        10          //Zähler setzen bei Hi-Flanke
Wenn ein Zähler mit einer Konstanten BCD-Zahl gesetzt werden soll,
dann kann man schreiben:

Code: Alles auswählen

       U    DB10.DBX   10.0      //Wenn Bit
       L    C#123                //BCD-Zahl laden
       S    Z        10          //Zähler setzen bei Hi-Flanke
Wenn die S7-CPU eine BCD-Zahl erwartet und eine ungültige BCD-Zahl zu Gesicht bekommt,
dann reagiert Sie mit AG-STOP, oder es wird der Fehler OB (OB85) aufgerufen, wenn dieser existiert.

Antworten