Variablen auf "Werkseinstellung" zurücksetzen

Imholze
2011-06-22
2011-06-22
  • Imholze - 2011-06-22

    Hallo.

    Ich habe ein Problem.
    Ich programmiere gerade an einem EATON Micro Panel XV-102 mit integrierter SPS auf Codesys Basis.

    Ich habe in meinem Projekt sehr viele RETAIN Variablen um nach Spannungsausfall meine Daten zu behalten.
    Das funktioniert auch sehr gut, jetzt möchte ich aber aus der Steuerung heraus, die Variablen auf "Werkseinstellung" zurücksetzen, sprich alle Varialen auf ihren Initialisierungswert zurücksetzen.
    Eigentlich die Funktionen Online Reset(kalt) und danach Online Start.

    Habe schon diverse Foren und Anleitungen gewälzt aber leider keine Lösung für mein Problem gefunden, vielleicht kann mir hier jemand helfen.

     
  • Anonymous - 2011-06-22

    Originally created by: jl

    Hallo!

    Die einfachste für Ihr Problem ist einfach wenn ein Reset auf TRUE ist die Variablen auf den Werkseinstellungswert setzen

    Bsp:

    IF reset THEN
    reset := FALSE;
    var1 := 1;
    var2 := 234;
    var3 := xy;
    usw......
    END_IF

    Wenn das Zielsystem die Funktionalität mit Filesystem zu arbeiten unterstützt (Biblio "SysLibFile") und es sich um sehr viele Variablen handelt, dann empfielt es sich vieleicht eine Structurvariable anzulegen und
    1. die Variablen nullspannungssicher auf dem FLASH speichern (hat den Vorteil, dass auch bei leerer Batterie die Werte
    erhalten bleiben), allerdings darf der Flash speicher nicht dauernd beschrieben werden d.h. Speichern nur bei Bedarf
    2. ein File anzulegen, in dem die Vorgabewerte gespeichert sind und diese bei Bedarf auszulesen und der
    entsprechenden Variablenstructur zuweisen

    Sehr hilfreich in diesem Zusammenhang sind auch die Funktionen der Bibliothek "SysLibMem"

     
  • Imholze - 2011-06-22

    Vielen dank für die schnelle Antwort.

    Habe mich für den ersten Lösungsweg entschieden, ausprobiert und getestet. hat wunderbar funktioniert.
    Danke nochmal

     

Log in to post a comment.