Fehlermeldung OP73 von SPS wuittieren

manas

Level-1
Beiträge
128
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Forumexperten,
versuche in WinCC 2005 eine Fehlermeldung OP73 durch die SPS zu quittiren.
Allerdings erscheint eine Fehlermeldung bei der Eingabe der Quittiervariablen. Hab Versucht die als Bit, Byte, Word, Int zu deklarieren.

Hat jemand ne Idee?
Danke
Gruß
manas
 

Anhänge

  • Unbenannt.JPG
    Unbenannt.JPG
    271,9 KB · Aufrufe: 27
Soweit ich mich erinnere muss das Bit für die Quittierung im gleichen Wort wie die zu quittierende Störmeldung liegen.

Also Wenn Bit 0 aus deinem Wort "DB_Stoermeldungen_1_16" die Störung Nummer 1 setzt, dann müsste
zum Beispiel das Bit 8 aus dem Wort "DB_Stoermeldungen_1_16" als Quittiervariable dienen.

Dazu müsstest du bei "Quittiervariable Schreiben" das Wort "DB_Stoermeldungen_1_16" eingeben und Bit 8 auswählen.

So haben wir das beim OP77A immer gemacht und das ist der einzige Weg, den ich kenne.

Gruß smartie
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Fehler HMI

Hallo Smartie,
danke für dein Feedback.
Dumerweise hab ich alle 16 Bit der Triggerwariablen (INT) mit Fehlermeldungen belegt. Deswegen kontte das auch nicht funktioniéren.

Gruß
manas
 

Anhänge

  • quit.jpg
    quit.jpg
    49,5 KB · Aufrufe: 23
Zuviel Werbung?
-> Hier kostenlos registrieren
Fehlermeldungen von der SPS quittieren

Die Fehlermeldungen sind bereits als Bitmeldungen projektiert. Gibt es keine andere Möglichkeit eine Gruppe von Bitmeldingen von der SPS zu quittieren?

Danke
Gruß
manas
 
Also Wenn Bit 0 aus deinem Wort "DB_Stoermeldungen_1_16" die Störung Nummer 1 setzt, dann müsste
zum Beispiel das Bit 8 aus dem Wort "DB_Stoermeldungen_1_16" als Quittiervariable dienen.

Dazu müsstest du bei "Quittiervariable Schreiben" das Wort "DB_Stoermeldungen_1_16" eingeben und Bit 8 auswählen.

So haben wir das beim OP77A immer gemacht und das ist der einzige Weg, den ich kenne.
Also bei mir ist das nicht so! :D
Störungsbit High = Störung erscheint
Störungsbit Low = Störung ist weg
Ich habe keine Quittiervariable.
Frag mich im Moment aber nicht was ich da eingestellt habe, der Teil wird immer kopiert.
 
Also bei mir ist das nicht so! :D
Störungsbit High = Störung erscheint
Störungsbit Low = Störung ist weg
Ich habe keine Quittiervariable.
Frag mich im Moment aber nicht was ich da eingestellt habe, der Teil wird immer kopiert.

Vielleicht sind das bei dir ja nur Betriebsmeldungen.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Vielleicht sind das bei dir ja nur Betriebsmeldungen.
Ne ne, schon richtige Störmeldungen. Ich habe allerdings kein Meldeindikator, nur Störmeldeseite.
Betriebsmeldungen habe ich extra.

Schau hier wurde noch mal ein Thread mit fast demselben Thema gestartet, und der Jan macht da auch so.

http://sps-forum.de/showthread.php?t=34708 Post Nr.6

Ich muss morgen echt mal schauen wie ich das immer mache. ;)
 
Zuletzt bearbeitet:
@manas
Mich würde mal interessieren, warum Du die Meldungen von der SPS quittieren lassen willst.
Sind das eigentlich nur Betriebsmeldungen, die Du nach einer in der SPS programmierten Zeit oder
nach einer festen Zeit von ein paar Sekunden wieder "gehen" lassen willst?

Oder erzeugst Du Meldungen nur dafür, daß sie im Meldepuffer geloggt werden und ist es herzlich
egal, ob der Bediener die Meldungen gesehen hat?
Dann deklariere diese Meldungen als Meldeklasse "Warnungen" oder erstelle eine eigene Meldeklasse
"Betriebsmeldung" (oder wie Du die auch nennen willst) mit der Einstellung "Quittierung: Aus".

Ich verwende "Quittieren durch die SPS" (Quittiervariable Schreiben) nur, wenn ich mehrere Panels
an der SPS habe und bei der Bediener-Quittierung an irgendeinem Panel die Meldung auch für die
anderen Panels quittieren will.

Oder willst Du eigentlich der SPS mitteilen, wann ein Bediener die Meldung gesehen und quittiert
hat, damit die SPS die Meldung wieder deaktivieren kann?
In dem Fall mußt Du die "Quittiervariable Lesen" verwenden.
Dann setzt Dir das Panel das entsprechende Quittierbit, wenn der Bediener die Meldung quittiert.

Ansonsten gibt es in WCCflex noch die Möglichkeit, bei jeder Meldung eine Funktion beim Ereignis
"Quittieren" anzubinden. Da kannst Du z.B. bei allen Meldungen das selbe "Sammelquittierbit"
setzen. Du mußt diese Aktion dann allerdings an jede einzelne Meldung projektieren.

Gruß
Harald
 
Also ich habe definitive keine Quittier-Variable.
Ich habe eine Quittier-Taste im Panel die ich direkt der SPS übergebe.
Die SPS entscheidet nun ob die Störung quittiert werden kann oder noch nicht.
Wenn ja da wird einfach das Störungsbit weggenommen und dadurch rutscht die Störung im Panel automatisch ins Störmeldearchiv.
Anbei ein paar Bilder die meine Einstellungen zeigen. Das Triggerereignis ist auch das Störmeldebit.
 

Anhänge

  • ST_01.bmp
    200,5 KB · Aufrufe: 18
  • ST_02.bmp
    165 KB · Aufrufe: 11
  • ST_03.bmp
    251,3 KB · Aufrufe: 12
Zuviel Werbung?
-> Hier kostenlos registrieren
Fehlermeldungen

Hallo PN/DP! Danke für Dein Feedback.
Für den Bediener ist es zu VIEL Anstrengung die Fehlermeldungen am OP und danach noch mit einer Taste am Bedienpult zu quittieren. Deswegen müssen sie mit der Taste "Fehler quittieren" am Hauptbedienpult quittieret werden. Mit dieser Taste werden die Meldungen auch in der SPS gleichzeitig zurückgesetzt.
Also, ich lege am besten ein UDT 16 Bit. Dafon 8 Bit für Fehlermeldungen und 8 Bit für entsprechende Quittiervariablen
 
Quittieren

Das müssen schon Fehlermeldungen sein, die explizit durch Betätigund einer Taste am BP quittiert werden müssen.
Bei Quittierung in WCC durch "Quittervariable schreiben" muss das Quittierbit und das Fehlermeldebit in einer Variablen sein (Word, DWord). Eine größere Struktur kann in WinCC als Variable nicht deklariert werden.
Hier aber eine Lösung von Siemens.
Anscheinend ist die Variable doch größer als DWord. (Bit 32, 33....)
Wie haben die das hingekriegt?
Gruß
manas
 

Anhänge

  • untitled.bmp
    121,1 KB · Aufrufe: 12
Quittieren

Danke Paule,
aber wie verbinde ich dieses ARRAY mit einer WinCC-Variablen?
Die zulässigen Datentypen in WinCC siehe Abbildung
Grúß
manas
 

Anhänge

  • Unbenannt.bmp
    72,2 KB · Aufrufe: 6
Danke Paule,
aber wie verbinde ich dieses ARRAY mit einer WinCC-Variablen?
Die zulässigen Datentypen in WinCC siehe Abbildung
Grúß
manas
Ich mache das folgendermaßen:
In der Steuerung möchte ich ja die einzelnen Bits haben.
In WinCCFlex möchte ich aber ein Array of Word haben.
Also kopiere ich am Ende meiner Störungszuweisung den ganzen Bereich auf das Array:
Code:
[COLOR=black][FONT=Verdana]Call SFC20[/FONT][/COLOR]
[COLOR=black][FONT=Verdana]       SRCBLK := Störungen (DB mit den einzelnen Bits) [/FONT][/COLOR]
[COLOR=black][FONT=Verdana]       RET_VAL:= RET_V[/FONT][/COLOR]
[COLOR=black][FONT=Verdana]       DSTBLK := Störungen_OP (Array of Word)[/FONT][/COLOR]
In Deinem Fall wäre der Störbereich P#Mx.x Byte x
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Quittieren

Hallo PN /DP,
danke für Dein Feedback und den Link
http://support.automation.siemens.c...lib.csinfo&lang=de&objid=24638486&caller=view.

Wenn ich das richtig verstehe, ist die Variable "Meldungen.Message" vom Typ ARRAY of WORD. Dieses ARRAY ist in einem DB in der SPS deklariert. Anschenend ist das ARRAY 8 Byte groß (4 Byte Meldungen und entsprechend 4 Byte Quttierbits).
Wie erfolgt denn die Einbindung von diesem ARRAY in WinCC? Nach Siemens Angaben muss das Meldebit und das Quittierbit in EINER Variablen liegen.

So ein Problem!!! Da wird zu diesem Thema so oft diskutiert! Hätte man das einfach machen können: Meldegruppe anlegen, eine Quittiervariable der Gruppe zuordnen. Fertig. Geht leider nicht. Zumindest bei OP73 ist mir nicht bekannt

Gruß
manas
 
Quiitieren

Hallo Paule. Und wie Greifst Du in WinCC auf die einzelnen Bits von "Störungen_OP" zu?
Danke
Gruß
manas

Ich mache das folgendermaßen:
In der Steuerung möchte ich ja die einzelnen Bits haben.
In WinCCFlex möchte ich aber ein Array of Word haben.
Also kopiere ich am Ende meiner Störungszuweisung den ganzen Bereich auf das Array:
Code:
[COLOR=black][FONT=Verdana]Call SFC20[/FONT][/COLOR]
[COLOR=black][FONT=Verdana]      SRCBLK := Störungen (DB mit den einzelnen Bits) [/FONT][/COLOR]
[COLOR=black][FONT=Verdana]      RET_VAL:= RET_V[/FONT][/COLOR]
[COLOR=black][FONT=Verdana]      DSTBLK := Störungen_OP (Array of Word)[/FONT][/COLOR]
In Deinem Fall wäre der Störbereich P#Mx.x Byte x
 
Zurück
Oben