Hallo Berthold,
ich glaube eher, dass es sich bei den besagten Datenmengen nach Programmänderungen um Programmcode der geänderten POE bzw. Visualisierung handelt. Je nachdem, wie groß die POE oder Visu ist, kann das schon Ausmaße annehmen. Für eine gewissen Anzahl von Zyklen ist der generierte Code dann doppelt im Gerät vorhanden, da die SPS ja bei Online-Änderungen weiter arbeitet.
Um zu Überprüfen, welche Bibliotheken wirklich benutzt werden, kannst Du nach dem Übersetzen in "Projekt->Optionen->Übersetzungsoptionen" nachschauen. Da gibt es den Button "Objekte ausschließen...". Dort erhältst Du eine Übersicht der Bibliotheken und deren Bausteine. Alle gegraut dargestellten Bausteine werden im Projekt nicht benutzt und können durch Markieren vom Übersetzen ausgeschlossen werden.
Das ganze funktioniert aber nur bei internen Bibliotheken, d.h. solche, die in AWL, ST o.ä. geschrieben sind, wie z.B. SysLibAlarmTrend.lib oder XS40_MoellerFB.lib oder die Regelungstechnik Toolbox! Die meisten Bibliotheken sind aber externe Bibliotheken. d.h. sie sind Bestandteil des Betriebssystems und belasten bis auf einen kleinen Initialisierungscode den Speicher nicht.
Mach Dir mal den Spaß und öffne den Bibliotheksverwalter
("Fenster->Bibliotheksverwaltung"), füge z.B. bei der XC200 die Bibliothek XC200_GetPlcVersion.lib ein, übersetze und schau mal in "Objekte ausschließen..." nach. Die Funktion dieser Lib ist gegraut dargestellt, da sie nicht aufgerufen wird. Man kann diese Lib jetzt getrost im Bibliotheksverwalter wieder entfernen. Ist zwar ein simples Beispiel, verdeutlicht aber, wie man vorgehen kann.
Gruß
Klaus