ich hab mal wieder was Delikates. Bei meinem letzten Projekt hatte ich eine Beckhoffsteuerung mit CX1020 für EtherCAT. Daran 2 Servo- Umrichter AX200x. Als VISU die Target VISU mit dierkt angeschlossenem Monitor. Die Steuerung hängt an keinem Netzwerk.
Während der Inbetriebnahme reagierte die Steuerung immer seltsamer. Nachdem ich die letzte Änderung vor dem seltsamen Verhalten rückgängig gemacht hatte, ergab sich keine Verbesserung. Es stellte sich heraus, dass die CPU- Auslastung des CX- Systems bei über 80% lag. Weil kein SW-Fehler zu finden war stelle ich den SPS- Task von 8ms auf 12ms. Die CPU-Auslastung sank auf 40% und das Programm lief ohne Störung.
Allerdings sind diese 40% immer noch viel zu hoch, da das Programm noch verhältnismäßig einfach ist und auch keine großen Schleifen enthält.
Der Support hat meine Software bereits getestet und nur eine Auslastung von maximal 10% feststellen können.
Hat von euch schon mal jemand ein ähnliches Problem gehabt?
Wen ja, wie war diese Reaktion zu vermeiden?
Gruß
Chräshe
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
ein Kollege von mir hatte ein ähnliches Problem mit der CX. Soweit ich mich entsinne, hing es mit dem NovRam zusammen. Keine Ahnung was das ist, ich arbeite auf dem CP.
Kann leider nicht rückfragen und noch einmal posten, bin ab morgen auf einer Baustelle.
Gruss Rolf
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Mach ich, sobald ich ihn wieder sehe. Hoffe, dass es am Montag klappt. Bin zur Zeit auf einer Baustelle im Ausland und habe nur sporadisch Kontakt mit der Heimatbasis ...
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
hab' nochmal nachgefragt. Bei meinem Kollegen war es tatsächlich der NovRam, und zwar beim häufigen Beschreiben. Er hatte zyklisch umfangreiche strukturierte Daten auf den Speicher geschrieben (Zykluszeit 3 ms) und damit die CX in die Knie gezwungen. Erst bei NovRam-Zykluszeiten um die 500 ms war die Kiste wieder brauchbar. Gottseidank kann der Beckhoff vier Tasks, so konnte er die kritischen Teile relativ problemlos auslagern.
Hoffe das hilft Dir weiter. Bin ab morgen schon wieder auf der Piste ...
Gruss Rolf
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Zitat:
Eigentlich eine erschreckende Erkenntnis, dass der NovRam die Kiste ausbremst. Er ist doch für das
zyklische schreiben und lesen gedacht!
Ich weiß ja nicht wie das bei Beckhoff ist, aber soweit ich weiß ist ein NonvolatileRam eigentlich etwas um Daten vor Netzausfall zu bewahren, oftmals in Form eines Eeproms und schon gar nicht dafür gedacht dauernd drauf rum zu schreiben, teilweise rechnet man mit 100000 Schreibzyklen und das Ding kann kaputt sein.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
meines Wissens sind EEPROM’s inzwischen eher antik, aber für Flash- Speicher ist deine Aussage zutreffend.
Nur schreibt Beckhoff in ihrem Informations- System folgendes:
Zitat:
Ein Non-Volatile Random Access Memory (im Allgemeinen abgekürzt bezeichnet als NOVRAM, NV-RAM oder NOV-RAM) ist ein spezieller Typ von Speicherbaustein, der prinzipbedingt zyklich beschrieben werden darf, bei dem aber trotzdem, bei auftretendem externen Spannungsausfall, der letztgültige Dateninhalt im internen ROM-Bereich gesichert wird. Ein im NOVRAM integrierter Kondensator liefert hierbei die Energie die nötig ist, um bei Ausfall der extern anglegten Spannung den Inhalt des, jeweils ebenfalls im NOVRAM integrierten, RAM-Bereichs in den ROM-Bereich umzukopieren. Die Applikation (in diesem Fall TwinCAT) schreibt zyklisch nur in den RAM-Bereich des IC's.
…
Zitat:
Eine spezielle Deklaration der Variablen in der SPS ist nicht notwendig (außer das man sie natürlich als lokierte Ausgangsvariablen deklarieren muß, z.B. als AT %Q* ). Speziell eine Deklaration als VAR xxx PERSISTENT oder VAR xxx RETAIN, ist in diesem Fall nicht zulässig!
Letztendlich brauche ich einen Ersatz für die nichtvorhandene Möglichkeit, Variablen als RETAIN und PERSISTENT zu deklarieren. Das muss doch mit dem NOV-RAM möglich sein!?
Sobald ich die Zeit und Möglichkeit habe, werde ich die Sache noch einmal untersuchen.
Gruß
Chräshe
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hallo allerseits,
ich hab mal wieder was Delikates. Bei meinem letzten Projekt hatte ich eine Beckhoffsteuerung mit CX1020 für EtherCAT. Daran 2 Servo- Umrichter AX200x. Als VISU die Target VISU mit dierkt angeschlossenem Monitor. Die Steuerung hängt an keinem Netzwerk.
Während der Inbetriebnahme reagierte die Steuerung immer seltsamer. Nachdem ich die letzte Änderung vor dem seltsamen Verhalten rückgängig gemacht hatte, ergab sich keine Verbesserung. Es stellte sich heraus, dass die CPU- Auslastung des CX- Systems bei über 80% lag. Weil kein SW-Fehler zu finden war stelle ich den SPS- Task von 8ms auf 12ms. Die CPU-Auslastung sank auf 40% und das Programm lief ohne Störung.
Allerdings sind diese 40% immer noch viel zu hoch, da das Programm noch verhältnismäßig einfach ist und auch keine großen Schleifen enthält.
Der Support hat meine Software bereits getestet und nur eine Auslastung von maximal 10% feststellen können.
Hat von euch schon mal jemand ein ähnliches Problem gehabt?
Wen ja, wie war diese Reaktion zu vermeiden?
Gruß
Chräshe
Hallo Cräshe,
ein Kollege von mir hatte ein ähnliches Problem mit der CX. Soweit ich mich entsinne, hing es mit dem NovRam zusammen. Keine Ahnung was das ist, ich arbeite auf dem CP.
Kann leider nicht rückfragen und noch einmal posten, bin ab morgen auf einer Baustelle.
Gruss Rolf
Hallo Rolf,
das ist immerhin eine heiße Spur. Leider ist die Anlage
nicht um die Ecke und vernetzt ist sie natürlich auch nicht.
Zudem: Never fummel am nunning…
Wenn du noch mal bei deinen Kollegen nachfragst,
wäre ich dir sehr dankbar.
Gruß
Chräshe
Mach ich, sobald ich ihn wieder sehe. Hoffe, dass es am Montag klappt. Bin zur Zeit auf einer Baustelle im Ausland und habe nur sporadisch Kontakt mit der Heimatbasis ...
Hallo Cräshe,
hab' nochmal nachgefragt. Bei meinem Kollegen war es tatsächlich der NovRam, und zwar beim häufigen Beschreiben. Er hatte zyklisch umfangreiche strukturierte Daten auf den Speicher geschrieben (Zykluszeit 3 ms) und damit die CX in die Knie gezwungen. Erst bei NovRam-Zykluszeiten um die 500 ms war die Kiste wieder brauchbar. Gottseidank kann der Beckhoff vier Tasks, so konnte er die kritischen Teile relativ problemlos auslagern.
Hoffe das hilft Dir weiter. Bin ab morgen schon wieder auf der Piste ...
Gruss Rolf
Hallo Rolf,
vielen Dank für die Info. Mit an Sicherheit grenzender Wahrscheinlichkeit habe ich dasselbe Problem.
Eigentlich eine erschreckende Erkenntnis, dass der NovRam die Kiste ausbremst. Er ist doch für das
zyklische schreiben und lesen gedacht!
Ein extra Task bringt mir vermutlich nur was, wenn ich meine Daten auf lokalen Speicher umspeichere?
Ich glaub ich lass die Kiste schwitzen, solange sie tut was sie soll.
Beim nächsten Projekt fließt diese Erkenntnis ein.
Was die 4 Task angeht:
4 freie Task
MAIN_TASK
VISU_ TASK (Target Visu)
VISU_INPUT_TASK (Target Visu)
= 1 freier Task
Na ja, einer übrig reicht ja…
Gruß
Chräshe
Ich weiß ja nicht wie das bei Beckhoff ist, aber soweit ich weiß ist ein NonvolatileRam eigentlich etwas um Daten vor Netzausfall zu bewahren, oftmals in Form eines Eeproms und schon gar nicht dafür gedacht dauernd drauf rum zu schreiben, teilweise rechnet man mit 100000 Schreibzyklen und das Ding kann kaputt sein.
Hallo Oberchefe,
meines Wissens sind EEPROM’s inzwischen eher antik, aber für Flash- Speicher ist deine Aussage zutreffend.
Nur schreibt Beckhoff in ihrem Informations- System folgendes:
…
Letztendlich brauche ich einen Ersatz für die nichtvorhandene Möglichkeit, Variablen als RETAIN und PERSISTENT zu deklarieren. Das muss doch mit dem NOV-RAM möglich sein!?
Sobald ich die Zeit und Möglichkeit habe, werde ich die Sache noch einmal untersuchen.
Gruß
Chräshe
Hallo allerseits,
inzwischen hatte ich mal wieder das Vergnügen mit dem NOV-RAM.
Es hat sich herausgestellt, dass die CPU- Belastung ganz maßgeblich
mit der Größe des verbrauchten NOV-RAM- Speichers zusammenhängt.
Inzwischen nutze ich diesen Speicher nur noch für kleine Daten.
Sobald Rezepturen oder etwas größere Arrays notwendig werden,
lege ich diese Daten als Datei auf einem USB- Stick ab. Dieser wird
nach dem Einschalten einmalig gelesen und nur nach Änderung
beschrieben…
Gruß
Chräshe