Auf die Lösung mit den zwei Variablen kam ich auch.... Das funktioniert insoweit ganz gut...

Allerdings hab ich nun daraus wieder ein seltsames Verhalten:

die Variable bMan kontrolliert ob eine Automatik aktiv ist, oder manuelle Steuerung.
Diese ist als Toggle mit einem Schalter in der Visu verknüpft. Ist sie True läuft ein Programmzweig auf Automatik, bei False auf Manuell. Steht diese Variable im normalen Deklarationsteil funktioniert alles wunderbar. Stell ich diese Variable in den persistenten Teil, funktioniert die Umschaltung beim Programm Load auch noch. Trenne ich dann den Strom und starte die Steuerung wieder, werden alle persistenten Variablen geladen, nur die bMan wird nach jedem Zyklus auf FALSE gesetzt. Schiebe ich die Variable wieder zurück in den normalen Deklarationsteil, funktioniert alles wieder.

Im Button ist steht die Variable unter Toggle mit
MAIN.bMan
drin...

Beim klicken wird sie mit

IF bMan_save <> bMan THEN
fPersistent_Write;
bMan_save:=bMan;
END_IF

geschrieben.

Da ist alles noch kein Problem, nur beim nächsten Zyklus wird sie wieder auf FALSE gesetzt. Beim ersten Start des Systems funktioniert die Funktion jedoch noch einwandfrei... Erst nach Neuanlauf nach Stromausfall kommt dieses Verhalten.

Grüße,
Parallax