Sfc 107

Maddin_86

Level-1
Beiträge
12
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

Ich habe ein Problem mit der SFC 107. Ich möchte sie benutzen um einen Zeitstempel an eine Meldung zu hängen.
Bei der Auswertung des Returnvalues erhalte ich immer folgenden Fehler:

8084 Beim aktuellen und beim vorangegangenen SFC 107-/SFC-108- Aufruf hat das meldungsauslösende Signal SIG denselben Wert.

Wäre echt super wenn mir jemand erklären könnte wie ich den Fehler umgehe (oder Grundlagen, wie man mit diesem Baustein umgeht).

MfG

Maddin
 
tya, dann würde ich einfach mal ohne den baustein zu kennen behaupten das dein trigger ein statisches signal ist, bzw länger als einen zyklus ansteht.
versuch doch mal nach dem aufruf des bausteines deinen trigger zurückzusetzen.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Das habe Ich auch schon probiert.

Code:
 CALL  "ALARM_DQ"
       SIG    :=M10.0
       ID     :=W#16#EEEE
       EV_ID  :=#EV_ID1
       CMP_ID :=DW#16#1
       SD     :="Meldungen".count
       RET_VAL:="Meldungen".Fehler_1

      R     M     10.0

Außerdem macht es für mich weniger Sinn ein Signal, das aufgrund eines Fehlers möglicherweise länger ansteht direkt zurück zu setzen.
 
Danke...aber genau nach dieser Anleitung bin ich vorgegangen.
Trotzdem habe ich den Fehler bekommen.

Aber an der CPU (CPU 315-2DP) kann es ja eigentlich nicht liegen, oder?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
o.k. das mit dem rücksetzen des meldesignals ist vielleicht wirklich nicht optimal.
villeicht bringt es etwas wenn du nach dem aufruf des sfc 107 so lange bis das triggersignal ansteht den aufruf überspringst.
 
ich muss mich leider korrigieren...es hat doch nicht funktioniert.

ich hab jetzt mal eine mail an die step7 hotline geschireben.vielleicht können die mir weiterhelfen.
 
ich hab bei der beschreibung eines anderen alarm-bausteins einen guten hinweis gefunden

Hinweis:
Sie müssen darauf achten, dass Sie die Systemfunktionen SFC 17/SFC 18 nur dann aufrufen, wenn der Wert des meldungsauslösenden Signals "SIG" gegenüber dem letzten Aufruf invertiert ist. Ist dies nicht der Fall, so wird Ihnen dies über "RET_VAL" mitgeteilt, und es wird keine Meldung gesendet. Beim aller ersten Aufruf der Systemfunktionen SFC 17/SFC 18 müssen Sie dafür sorgen, dass am Eingang SIG eine "1" anliegt. Ansonsten bekommen Sie über "RET_VAL" eine Fehlerinformation und es wird keine Meldung gesendet.

Meine Lösung(vielleicht ein bißchen umständlich ;))
Code:
 O(    
      U     M     10.0
      UN    #M1_alt
      )     
      O(    
      UN    M     10.0
      U     #M1_alt
      )     
      SPB   call
      BEA   
call: NOP   0
      CALL  "ALARM_DQ"
       SIG    :=M10.0
       ID     :=W#16#EEEE
       EV_ID  :=#EV_ID1
       CMP_ID :=DW#16#1
       SD     :="Meldungen".count
       RET_VAL:="Meldungen".Fehler_1
      U     M     10.0
      S     #M1_alt
      UN    M     10.0
      R     #M1_alt
 
Meine Lösung(vielleicht ein bißchen umständlich ;))
Code:
 O(    
      U     M     10.0
      UN    #M1_alt
      )     
      O(    
      UN    M     10.0
      U     #M1_alt
      )     
      SPB   call
      BEA   
call: NOP   0
      CALL  "ALARM_DQ"
       SIG    :=M10.0
       ID     :=W#16#EEEE
       EV_ID  :=#EV_ID1
       CMP_ID :=DW#16#1
       SD     :="Meldungen".count
       RET_VAL:="Meldungen".Fehler_1
      U     M     10.0
      S     #M1_alt
      UN    M     10.0
      R     #M1_alt

...:sb5:...
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

ich hab noch ein problem mit SFC 107. momentan erhalte ich immer folgenden fehler:

8085 Für die angegebene EV_ID liegt keine Anmeldung vor.

kann mir jemand erklären, warum ich diesen fehler erhalte (und wie man ihn beheben kann) ?
 
Zurück
Oben