Beckhoff CX9020 Variablen Speichern

rpetke

Level-1
Beiträge
32
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen ich benutzen ein CX9020 von Beckhoff und würde gern wissen wie man Werte von Variablen beim Stromausfall speichern kann. Also ich habe die Variablen,die ich speichern möchte , als VAR_PERSISTENT deklariert und alles läuft super also es wir schon gespeichert wenn ich ein Reset/Rebuild all mache oder wenn ich auch Twincat (V3) schliesse klappt auch nur wenn ich mal den Strom an das Gerät weg nehmme dann geht meine gespeicherteten Werten auch verloren . wie kann ich des lösen? Danke schön in voraus.
 
Hat Dein CX eine 1 Sekunden USV? Falls nein dürfte das nicht klappen, TC3 legt die Variablen in eine Datei ab und sichert diese nicht wie andere Steuerungen über eine Batterie-Pufferung ab.
 
Zuletzt bearbeitet:
Laut dieser Beschreibung ist da nur TC2 drauf.
Ein solches Problem hatte ich letztens auch auf einem IPC wo häufig die persistenten Daten nach Neustart des Systems weg waren.
Dort hat das Betriebssystem beim Herunterfahren einfach TwinCat abgeschossen. Eine wirkliche Lösung konnte mir Beckhoff auch nicht liefern ausser, dass man regelmäßig oder nach Änderung von Daten mit FB_WritePersistentData das macht, was TwinCat eigentlich automatisch beim Beenden machen sollte.
 
Danke auch Jensemann für deine Reaktion.Also ich habe ein CX9020-0110 also ich habe mit Twincat 3 das programm geschrieben und die I/o von dem Gerät gescant und wie gesagt läuft alles super . nur die Funktion Zähler möchte ich seine Werte speichern beim Stromausfall und da Klappt nicht sonst mit Reset / Rebuild all bleiben die werte gespeichert.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
OK. Beckhoff hinkt gelegentlich mit der Dokumentation dem eigentlichen Stand der Technik hinterher.
Versuchs mal mit dem FB_WritePersistentData und ruf ihn speziell über die Visu auf. Auf einer CX würde sich ein zu häufiger Aufruf negativ auf die Lebensdauer der Speichermedien auswirken.
Überprüf mal, ob die Menge der persistenten Daten auch in den persitenten Speicher passen (bei dem Gerät aus meinem obigen Link waren es nur 128kb)
 
Lies mal den Beitrag hier durch Novram / cx9020 bzw. https://infosys.beckhoff.com/index.php?content=../content/1031/tc3_c/1072415243.html&id=
Der Bereich mit dem Retain-Handler. Brauchst dafür aber das aktuellste Image und den Build 4020.x als XAE.


Gedanken dazu: Es werden im NovRam die letzten und vorletzten Werte abgelegt um sicher ein konsistentes Abbild zu haben. Auch bei einem "absturz" wegen fehlender Energie müsste somit die vorletzten Werte konsistent vorhanden sein.
=> wäre von der Nutzung relativ einfach. Aber bitte den Absturz ein paar mal testen da dies nur meine 5cent an Gehirnschmalz ist.

Guga
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Wenn es nicht allzuviele Variablen sind, kann man die direkt mit dem NOVRAM verlinken. Dann werden die zyklisch in den NOVRAM geschrieben und bei Neustart aus diesem wiederhergestellt.
 
HI Weißnix_ wie tue ich den die VAriable diekt mit dem NOVRAM verlinken ?
Guga ich wollte deine Methode probieren aber bei kompilieren oder wenn ich auf Run Modus gehen möchte kriege ich eine fehler und zwar : Warning 2 18.10.2016 08:55:57 243 ms | 'TCOM Server' (10): INIT to PREOP of 'Device 4 (NOV-DP-RAM)' (0x03010040) failed - 'invalid size' 0x98110705 und des dazu Error 3 18.10.2016 08:55:57 244 ms | 'TcSysSrv' (10000): Sending ams command >> Init10\IO: Create TComObj PREOP >> AdsWarning: 1797 (0x705, NoString) << failed! . wie kann ich des wegmachen .Danke schön in voraus
 
Also Twincat V3.1.4020.0 das ist ich die version die ich benutze und mein CX hat kein intergrierte Twincat vielleicht deshalb oder ?
Gruss Oliver.tonn
 
Korrekt.
Für TC3 hab ich via Google nur einen Deadlink gefunden. Das Verfahren dürfte aber vergleichbar sein.
Ich würde jetzt mal im Systemmanager nach der entsprechenden Checkbox beim NOVRAM suchen.
 
Ich habe mir mal alle Einträge in diesem Thread durchgelesen und bin jetzt etwas verwirrt. Soweit der Code 0110 wirklich stimmt und keiner am CX was aufgespielt hat, hast Du einen CX9020 mit Win 7 aber ohne TwinCAT Runtime, dann dürfte Dein erster Versuch allerdings so wie Du Ihn geschildert hast gar nicht funktionieren. Bist Du sicher, dass Du auf dem CX arbeitest und als Zielsystem nicht vielleicht Lokal ausgewählt ist?
 
Zurück
Oben