WAGO- Retain oder Persistente Variabeln?

berc

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

Für ein Schulprojekt an der technikerschule habe ich eine Lichtsignalanlage mit Visualisierung programmiert/gebaut (Modell).
Für jedes Lichtsignal habe ich nun einen Betriebsstundenzähler (s/min/h) implementiert. Für den Schaltschrankventi natürlich auch.

Das Problem ist nun folgendes: nach jedem Neustart sind alle Betriebsdaten wieder weg..

Ich habe die Variablen welche gesichert werden sollen, in einer sepparaten Globalen Variablenliste deklariert:

PHP:
VAR_GLOBAL PERSISTENT 

(*Betriebsstundenzaehler*)
    Zaehler_1_Sekundenvariable    :INT;    (*Ampel rechts rot*)
    Zaehler_1_Minutenvariable        :INT;
    Zaehler_1_Stundenvariable        :INT;
    Reset_Zaehler_1                    :BOOL;

    Zaehler_2_Sekundenvariable    :INT    ;    (*Ampel rechts Orang*)
    Zaehler_2_Minutenvariable        :INT    ;
    Zaehler_2_Stundenvariable        :INT    ;
    Reset_Zaehler_2                    :BOOL;

    Zaehler_3_Sekundenvariable    :INT    ;    (*Ampel rechts gruen*)
    Zaehler_3_Minutenvariable        :INT    ;
    Zaehler_3_Stundenvariable        :INT    ;
    Reset_Zaehler_3                    :BOOL;

Eigendlich setze ich die Werte anfangs immer auf =0; aber das hat auch nicht funktioniert.

Codesys ist 2.3.9.30
SPS: 750-841 FW> 12

Ist wahrscheinlich irgend ein "Häckchen" welches ich nicht finde

Wäre über eine Antwort sehr dankbar
 
Hallo,

wie machst du den Neustart? Ausschalten - Einschalten? Reset cold - Reset warm?
Du kannst auch Var_Global Retain Persistent schreiben.
Retain = behält Wert bei Spannungsausfall

Gruß
Silke
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

Neustart --> Stecker raus, Stecker rein

Ich habe noch eine zweite variablenliste welche Retain sein sollte. Aber auch diese ist nach dem Neustart wieder weg.

Gruss
berc
 
Hallo,

mit VAR_GLOBAL RETAIN PERSISTENT muss es funktionieren - die Retain Variablen behalten ihren Wert nach dem Reset genauso wie nach dem unkontrolliertem Beenden, die Persistent Variablen behalten ihren Wert nach dem Ladevorgang oder bei einem OnlineChange. Die Retain Persistenten sind demzufolge eine Kombination aus beiden.

Was meinst Du mit "Eigendlich setze ich die Werte anfangs immer auf =0;" Initialisierst Du sie hiermit und überschreibst du den gespeicherten Retain-Wert wohl? Dann wäre klar dass die gespeicherten Werte weg sind.

Gruß SPS-Fuzzi
 
Heeey,

Vielen Dank für den Tipp!
Also ich hatte die Globalen Variablen von anfang an richtig mit Retain und Presistent versehen.

--> Das Problem lag bei den lokalen Variabeln.

Die Betriebsstundenzähler arbeiten mit lokalen Variabeln und übergeben diese Werte dann den Globalen, welche dann in der Visu angezeigt werden.

Nun nach einem Reset waren die lokalen Variablen wieder auf 0 gesetzt und übergaben als erstes den Wert '0' den korrekten globalen..

Konnte den Fehler nun beheben und meine Projektarbeit ist abgeschlossen.

Gruss berc
 
Zurück
Oben