TC3: Page Fault bei Online Change und sehr großer Target Visu

Beiträge
5.697
Reaktionspunkte
1.182
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
ich habe hier bei einem Projekt das Problem, dass bei einem Online Change (z.B. auskommentieren einer BOOL-Variable) es zu einem Page Fault kommt. Ursache dafür ist die reltaiv große Target Visu. Lösche ich dort Seiten raus funktioniert der Online Change wieder. Ich denke mal es kommt irgendwo zu einem Speicherüberlauf. Kann man irgendwo etwas zum Thema Speicher für die Visus einstellen? Die beiden "versteckten" Einstellungen im Visualisierungsmanager habe ich schon gefunden, die bringen leider keine Besserung.
 
Hallo,

hast du sicher auf beiden Systemen die gleiche Version bzw. verwendest du den Remote-Manager?

Die Version vom Visualisierungsprofil passt auch?

Gruß
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Version der Viso passt.
Bis zu einem gewissen Umfang der Visu funktioniert ja auch alles. Ich habe praktisch alle Visu Seiten gelöscht und dann schrittweise die Seiten wieder importiert, ab einer bestimmten Größe kam es dann zum Absturz.

Von irgendwas mit Internetzugang gesendet
 
Twincat3. Ein Kernkraftwerk damit programmiert und zisch die Welt wär weg.
SPS = Satire, Polemik, Sarkasmus.
Ich bin halt noch einer von den alten Simatic S5 Leuten, da war eine SPS noch stabil, wenngleich die programmtechnischen Möglichkeiten viel geringer waren. Je komplexer ein System, desto fehlerträchtiger. Kurzlebige Zeiten. Aber so ist es eben. P.S. : bin trotz allem ein CODESYS Fan. :)
 
Zuletzt bearbeitet:
Online Change page faults im Zusammenhang mit der Target Visu kenne ich nur von TC2 unter WinCE, aber dass z. B. Seiten nicht komplett aufgebaut werden oder die Visu abstürzt, kenne ich auch von TC3. Schau mal auf dem Zielsystem in die Datei \TwinCat\3.1\Components\Plc\Tc3PlcHMI\Tc3PlcHMI.ini. Beckhoff verspricht zwar, seit Build 4020 oder 4022 die Visualisierungsmanager-Einstellungen automatisch dort zu speichern, aber wirklich toll funktioniert das nicht. Und die wesentliche Einstellung "PaintBufferSize" ist im Visualisierungsmanager erst gar nicht vorhanden. Ich setze den immer auf min. 200000 und habe dann in der Regel Ruhe. Ausserdem habe ich auch eine ungleiche Einstellung von "Update rate" der Visu und der Zykluszeit der zugehörigen VISU_TASK im Verdacht, Ärger zu machen.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo StructuredTrash,
...Und die wesentliche Einstellung "PaintBufferSize" ist im Visualisierungsmanager erst gar nicht vorhanden.
das meinte ich mit "versteckten" Einstellungen. Die Einstellung wird im Visualisierungsmanager sichtbar, wenn man bei "Extended settings" den Haken bei "Visible" setzt.
Visu_Extended_Settings.png
 
Habe gerade mit den von Dir genannten versteckten Einstellungen herumprobiert. Es gibt noch eine zweite Tc3PLCHmi.ini-Datei im Verzeichnis \Boot\PLC. Ich vermute, dass sie dort neuerdings automatisch angelegt wird. Eine Änderung der Zeichenpuffergrösse im Visualisierungsmanager wird bei mir aber auch in dieser Datei nicht übernommen. Die Frage ist nun, welche der beiden Dateien maßgebend ist.

Wie unfangreich ist denn Deine Visu? Nicht dass wir am Ende Äpfel mit Birnen vergleichen.

Korrektur: Die Änderungen werden nicht beim Aktivieren der Konfig, sondern erst beim anschliessenden Übertragen des PLC-Projektes in die Datei übernommen.
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Wie unfangreich ist denn Deine Visu? Nicht dass wir am Ende Äpfel mit Birnen vergleichen.
Sehr umfangreich. Auf der Hauptseite gibt es Buttons zu vier Visus. Auf einer dieser Visu-Seiten gibt es ein Tab-Control mit fünf Tabs, die ersten drei Tabs enthalten je vier Unter-Visus wobei die Erste Unter-Visu ca. 50 Rechtecke mit Anzeige und/oder Eingabewerten, mehreren Dropdown Menüs und diversen Buttons enthält. Daneben gibt es dann zwei Unter-Visus die auch wiederum je ein Tab-Controls mit 6 Tabs enthält. Auf diesen Visus sind inklusive der Tabs so ca. 60 Rechtecke mit Farbwechsel, ca. 30 Rechtecke wieder mit Anzeige und/oder Eingabewerten, diversen Buttons und Dropdown-Menüs. Der letzte Tab enthält ca. 40 Rechtecke mit Farbwechsel.
 
Die Anzahl der einfachen Elemente wie Rechtecke mit Farbwechsel sollte kein Problem sein, ich habe davon auch schon mal eine vierstellige Anzahl auf einer Seite. Die verschachtelten Frames in den Tab Controls könnten schon eher die Ursache sein. Mit Frames, auch ganz einfachen ohne Frame Switching hatte ich bis Build 4020 viel Ärger, vor allem dass bei einem Visu-Seitenwechsel nicht alle Frames angezeigt wurden. Ich habe dann notgedrungen weitgehend auf Frames verzichtet, was oft erhebliche Mehrarbeit bedeutet. Erst seit Build 4022 habe ich wieder zaghaft begonnen, Frames zu verwenden.

Was mich aber noch stutzig macht ist, dass die Visu bei einem Online Change mit Speicherverschiebung von Variablen nicht automatisch beendet wird. Ich kriege einen Online Change ohne Visu-Exit nur bei sehr geringfügigen Änderungen hin, z. B. wenn ich einer Variablen einen anderen Wert zuweise.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Die Visu beendet sich auch und startet neu.

Sie startet von selbst?
Und wann kommt der Page fault?
Ich frage eher aus Interesse als PlcHmi-Leidensgenosse, weniger in der Hoffnung, Dir helfen zu können. Ich fürchte, Du wirst die Visu umbauen müssen, z. B. die Tab controls durch Buttons und einen normalen Frame ersetzen, oder sogar durch statische Gruppierungen, die Du mit der Switch-Variablen unsichtbar schaltest. Oder Du schickst das Projekt dem Beckhoff-Support, wenn Du genug Zeit hast.
 
Warum keine professionelle Visu nehmen? Für kleinere Sachen ist der Kram ok, ansonsten Zenon, Inosoft Visiwin oder WinCC verwenden.
 
Warum keine professionelle Visu nehmen? Für kleinere Sachen ist der Kram ok, ansonsten Zenon, Inosoft Visiwin oder WinCC verwenden.
Visiwin wäre mein Favorit. Hat mir vor Jahren, noch mit VB6, sehr gut gefallen. Aber die genannten Visus bringen neben der eigentlichen Visualisierung auch jede Menge andere Dinge im Bereich Datenlogging, Rezeptverwaltung, Meldesystem etc. mit, für die ich bezahlen muss, andererseits aber seit Langem maßgeschneiderte eigene Lösungen habe. Was ich brauche, ist ein einfacher Anzeigeknecht. Dafür ist die PlcHmi an sich gut geeignet. Ich brauche mir keine Gedanken um die Anzahl der Datenpunkte machen, sie ist in TC3 auch recht flott, und die Beckhoff-PCs haben genügend Leistung, um die Visu dort mitlaufen zu lassen. Dafür muss ich Schwächen nicht nur in der Laufzeit, sondern auch in der Entwicklungsumgebung hinnehmen, die sich mit zunehmendem Umfang der Visus immer stärker bemerkbar machen. Die Schmerzgrenze wurde in den vergangenen Jahren zwar kontinuierlich nach oben verschoben, aber sie ist noch da, und ich bin gefühlt nur knapp darunter.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Sie startet von selbst?
Und wann kommt der Page fault?
Das war vielleicht etwas missverständlich die TargetHMI Anwendung beendet sich wird aber nicht von selbst wieder gestartet.
Nachdem ich Online Change gewählt habe kommt irgendwann die Warnmeldung bezüglich eines unvorhersehbaren Verhaltens, nach Bestätigung dieser Meldung kommt dann nach einiger zeit der Page Fault.
Oder Du schickst das Projekt dem Beckhoff-Support, wenn Du genug Zeit hast.
Ist auch schon angetriggert und die haben es an das Stammhaus (O-Ton Beckhoff) weitergeleitet, ich denke damit wollten Sie mir durch die Blume mitteilen, dass sie den Ball an 3S abgespielt haben.
Ich hatte gehofft hier im Forum hätte jemand auch schon das Problem gehabt und eine Lösung für mich parat.
 
Twincat3. Ein Kernkraftwerk damit programmiert und zisch die Welt wär weg.
SPS = Satire, Polemik, Sarkasmus.
Ich bin halt noch einer von den alten Simatic S5 Leuten, da war eine SPS noch stabil, wenngleich die programmtechnischen Möglichkeiten viel geringer waren. Je komplexer ein System, desto fehlerträchtiger. Kurzlebige Zeiten. Aber so ist es eben. P.S. : bin trotz allem ein CODESYS Fan. :)

...und früher sind die Leute noch mit der Pferdekutsche gefahren .. und oh wunder .. es gab weniger Verkehrstote...
 
Zuviel Werbung?
-> Hier kostenlos registrieren
... aber die Maschinen liefen 10..15 Jahre, man konnte danach immer noch Änderungen machen bzw. Programm mitder Maschine vergleichen.
Heutzutage gibt es alle 3 Monate ne neue Version der Entwicklungsumgebung mit unvorhersehbaren Folgen.
Möchte das der Programmierer / Endkunde?

Bananenprodukte, reifen so langsam...

In grösseren Firmen hat man eine Baselineplanung, da werden Versionen für ca. 2..5 Jahre "eingefroren", um sich Kosten / Frust zu sparen.

War nur ein Rad gebrochen, so herrschte Fröhlichkeit, mitunter brachen auch die Knochen, oh gute alte Zeit.

immer die KISS Regel beachten : Keep It Simple and Stupid. :rolleyes::rolleyes::rolleyes:

P.S.: so sieht eine meiner visus aus :
wollvieh.JPG
 
Zuletzt bearbeitet:
Zurück
Oben