TP170B Quittierung

Sydney

Level-1
Beiträge
9
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Leute,
bin noch recht unerfahren in Step7, und brauche Eure Hilfe.

Wie kann ich von der Steuerung CPU-315-2DP die Meldungen im TP170B quittieren und umgekehrt??
Ich hoffe, dass mir jemand helfen kann.

Sydney
 
endlich kann ich´s auch mal sagen! :lol:

KUK INS HANDBUCH :D

nein scherz, dafür gibts bereichszeiger!
wenn du das handbuch nicht parat hast, such auf siemens.de oder in der onlinehilfe.

oder warte bis jemand genaueres erzählen will ;)
steht aber eigentlich alles in der hilfe... denke ich :D
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Die Bereichzeiger kennst du ja wahrscheinlich, da du ja bereits Störmeldungen anzeigst. Dazu legst du noch Bereichzeiger für Quittierung vom OP und Quittierung von der SPS aus an. Mit Ack am OP wird die jeweils angezeigte Störung quittiert, das zugehörige SPS-Quitt-Bit kannst du nutzen, um aus der SPS heraus, oder mit einer Hardwaretaste Störungen zu quittieren.

Hier mal ein FC, den ich zur Störmeldung und zum Quittieren nutze.

Code:
FUNCTION FC 110 : VOID
TITLE =Störmeldung
//
{ S7_language := '7(1) Deutsch (Deutschland)  26.10.2005  13:24:29' }
AUTHOR : Ralle
FAMILY : SYSTEM
NAME : STM_SYS
VERSION : 1.2


VAR_INPUT
  Stoermeldung : BOOL ; //Fehlerbedingung	
  Freigabe : BOOL ;	//Fehler kann zentral gesperrt werden
  Ack : BOOL ;	//Quitt Fehler von SPS
END_VAR
VAR_IN_OUT
  Stoerbit : BOOL ;	//Bit aus Bereichszeiger
  Quittierbit_OP : BOOL ;   //Bit aus Bereichszeiger	
  Quittierbit_SPS : BOOL ;   //Bit aus Bereichszeiger	
END_VAR
BEGIN
NETWORK
TITLE =Funktion zum auswerten der Störungen

      UN    #Freigabe; 
      R     #Stoerbit; 
      R     #Quittierbit_OP; 
      R     #Quittierbit_SPS; 
      BEB   ; 
NETWORK
TITLE =Störung

      U(    ; 
      U(    ; 
      O     #Quittierbit_OP; 
      O     #Quittierbit_SPS; 
      )     ; 
      R     #Stoerbit; 
      U     #Stoermeldung; 
      S     #Stoerbit; 
      U     #Stoerbit; 
      )     ; 
      NOT   ; 
      UN    #Stoermeldung; 
      UN    #Quittierbit_SPS; 
      R     #Quittierbit_OP; 
END_FUNCTION
 

Anhänge

  • bereichszeiger.jpg
    bereichszeiger.jpg
    67,6 KB · Aufrufe: 101
Hallo Ralle,

so einfach...und wer lesen kann ist klar im Vorteil!!!

Aber noch eins: Es heisst, dass dae Bereigszeiger für Quittierung SPS direktt an den Störmeldebereich anschliessen muss.
Warum dann, wie in Deinem Beispiel (und auch in meinem Projekt),
dann erst ab DW64, und nicht ab DW32???
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Das hängt mit der DB-Struktur in Step7 zusammen.
Das 1. Datenwort belegt Byte 0 und 1 (DBW0)
Das 2. Datenwort belegt Byte 2 und 3 (DBW2)
usw.
Bei 32 Datenworten landest du so bei Adresse 64 für das nächste freie DW und das ist dann die Startadresse für den nächsten Bereichszeiger, etwas verwirrend, aber na ja.

Ich häng dir mal den zugehörigen DB mit ran, allerdings nicht mit einer Strukt aufgebaut, sonden ganz simpel mit je einer Var für jedes Bit, da ist der Zugriff mit dem FC symbolisch leicht von einer Störung zur nächsten zu ändern.
 

Anhänge

  • db18.zip
    8,2 KB · Aufrufe: 12
Zurück
Oben