Seite 1 von 1

Systemvariablen nach Stromunterbrechung

Verfasst: 02.03.2018, 18:10
von chrauch
Fährt das System herunter, werden Systemvariablen gespeichert. Kommt es aber zum Stromausfall, werden die Variablen beim Neustart auf 'falsch' gesetzt.
Der Work-around mit CCU Neustart als Variable funktioniert nicht, da ja alle Variablen dann auf 'falsch' stehen.

Kann man einige wichtige Variablen auf Karte speichern oder gibt es einen andere Lösung?

Re: Systemvariablen nach Stromunterbrechung

Verfasst: 02.03.2018, 20:01
von Jeeper.at
Also entweder ich verstehe deine Frage nicht oder du liegst falsch.
Die Systemvariablem überleben auch einen Stromausfall.
Das einzige was man verliert sind Programmänderungen der letzten Zeit weil die noch nicht gespeichert sind.

Re: Systemvariablen nach Stromunterbrechung

Verfasst: 03.03.2018, 09:36
von Black
da musste dich glaub ich etwas vertun.

die Sysvars überleben einen Stromausfall, wenn -vorher eine Speicherung stattgefunden hat-

wenn du auf die Werte angewiesen bist: akku pufferung, bei Stromausfall kontrolliertes herunterfahren, damit biste 100 % ig.

Black

Re: Systemvariablen nach Stromunterbrechung

Verfasst: 27.03.2018, 22:32
von chrauch
Die o.g. Bemerkungen stimmen. Ich habe mitlerweile ein Skript geschrieben, dass den aktuellen Zustand speichert und auf die Systemvariable CCU_saved ausgibt.
Wird einne kritische Variable in einem Program geändert, so habe ich in den Programmen auch das Skript eingefügt, damit die neue Variable auf jeden Fall gespeichert wird.

string SystemSaved = system.Date("%c");
dom.GetObject("CCU_saved").State(SystemSaved);
system.Save();

Re: Systemvariablen nach Stromunterbrechung

Verfasst: 28.03.2018, 08:23
von Sven_A
Ich würde das system.Save() vielleicht als erstes Ausführen, und erst hinterher die Variable setzen. Sonst besteht immernoch die minimale Möglichkeit...

Re: Systemvariablen nach Stromunterbrechung

Verfasst: 28.03.2018, 08:31
von Familienvater
Hi,

das ist zwar ein gangbarer Weg, aber man sollte damit "sparsam" umgehen, Flash leidet unter jedem schreibvorgang, und die Rega kann schon eine gewisse Größe haben. Auf einer CCU2 frisst das außerdem massiv CPU-Ressourcen, bei einem Raspi fällt das vielleicht weniger ins Gewicht.
Aber: Das beste ist für eine unterbrechungsfreie Stromversorgung zu sorgen, je öfter die Rega gesichert wird, desto wahrscheinlicher wird es, das dabei der Strom ausfallen kann, und dann hat man verloren, weil dann ist nur die halbe Rega geschrieben, und damit die Änderung doch nicht persistiert.

Der Familienvater

Re: Systemvariablen nach Stromunterbrechung

Verfasst: 28.03.2018, 08:49
von Black
also regelmäßig schreiben ins flash würde ich mir überlegen, dazu kommt dann noch, dass das System.Save, wie mein vorposter auch schon anmerkte, nicht unerheblich Systemrecourcen frisst.

Wenn deine Steuerung auf einem Raspi läuft, wirklich mal überlegen, da auch z.B. eine S.USV drauvzusetzen. Puffert einen Stromausfall bei mir ca 20 Minuten und fährt dann kontrolliert herrunter (mit gesicherter Regadom).

Ich benutze das Speichern für Fensterkontakte, so dass ich nach einem reboot wieder den letzten bekannten Status in den Kontakten hab und nicht überall geschlossen. Dafür brauchts aber auch einen kontrollierten Shutdown und keine PowerInterrupt.

Gruss, Black