Meine Frage ist ob bei dem Upgrade das S7-Projekt in der CPU gelöscht wird (urlöschen der CPU)?
ja, das wird gelöscht
Ein
Backup habe ich erstellt, es wäre aber cool wenn ich es nicht brauchen würde.
Du brauchst auf jeden Fall ein geeignetes Backup und am besten das aktuelle original-S7-Projekt.
Möglicherweise nützt Dir Dein Backup auch nicht viel, wenn es falsch erstellt wurde.
Bei den 300er ist es ja so dass man einfach das Update durchführt und die CPU danach normal startet.
Wenn das bisher immer problemlos funktioniert hat, dann hast Du wohl mehr Glück als Verstand gehabt. Auch bei S7-300 wird das Programm dabei aus dem Arbeitsspeicher gelöscht und danach wieder vom Ladespeicher in den Arbeitsspeicher geladen, wodurch zumindest die DB-Aktualwerte und sonstigen Variablen-Aktualwerte verloren gehen.
Ist das bei den 400er auch so?
Bei S7-400 muß man in der Regel sehr genau wissen und verstehen was man tut. Oder man muß sehr viel Glück haben, daß das Programm sehr simpel gestrickt ist und unbedarftes laienhaftes Vorgehen "verzeiht".
Ich würde ebenfalls das Firmware-Update nur machen, wenn zwingender Bedarf besteht. Und dann muß man damit rechnen, daß eventuell das Wiederherstellen der Arbeitsfähigkeit des Programms mehrere Stunden dauern kann, selbst wenn man ein Backup der DB-Aktualdaten hat.
Ich würde das mit einer Austausch-CPU machen (zumindest vorher testen), ohne die originale CPU anzufassen.
DB-Aktualdaten: Bei der S7-400 kann man meistens nicht einfach ein Backup der DB machen und später die DB wieder in die CPU laden, weil der Ladespeicher RAM ( 1 MB ? ) viel kleiner als der Arbeitsspeicher für Daten ( 8 MB ? )ist. Wenn z.B. bei den Programmen Deiner CPU mehr als 1 MB Datenbausteine vorhanden sind und keine RAM-Speicherkarte verwendet wird, dann können die DB nicht mehr komplett in die CPU geladen werden, sondern müssten auf die FLASH-Speicherkarte geladen werden (Step7 classic: Zielsystem > Anwenderprogramm laden auf Memory Card). Dabei werden aber die Aktualwerte zu Initialwerten, wodurch das Programm aber nicht mehr das gleiche ist wie vor dem Firmwareupdate bzw. Urlöschen. Bei Fremd-Programmen kann man nicht davon ausgehen, daß dem Programm egal ist, wenn einige DB-Initialwerte nach Neustart <> 0 sind. Vielleicht hat da der Programmierer eine spezielle Behandlung/Initialisierung bei Neustart oder Kaltstart programmiert, die nicht mehr funktioniert, wenn die DB mit abgezogenen Aktualwerten als Initialwerte auf der FLASH-Speicherkarte sind.
Welche CPU genau hast Du? (Artikelnummer 6ES7.......?)
Sind die CPU mit Step7 classic V5.x oder TIA (welche Version?) programmiert? Von Dir selbst oder von einem fremden Programmierer?
Was für Speicherkarten stecken in den CPU?
Sind die Programme auf den Speicherkarten jeweils aktuell? Sind alle Bausteine im Arbeitsspeicher aus dem EPROM (also von der FLASH-Speicherkarte) oder wurden Bausteine direkt in die CPU geladen (ins RAM), ohne über die Speicherkarte zu gehen?
Wie genau hast Du das Backup der DB-Aktualwerte bzw. aller Variablen (Merker, Zähler, Timer) gemacht? Wenn man ein Programm nicht genau kennt und deshalb vorsichtshalber wirklich eine exakte Kopie braucht, dann muß man die CPU in STOP schalten, dann Schnappschüsse der Aktualwerte mit Beobachtungstabellen machen, dann ein komplettes Backup aller Bausteine inkl. Systemdaten, dann Urlöschen, und direkt danach nochmal ein Backup aller Bausteine inkl. Systemdaten, um an die Bausteine und Initialwerte von der Speicherkarte zu kommen. Zum wieder Laden des Programms Urlöschen ausführen, danach alle OB/FB/FC/Systemdaten vergleichen, dann CPU kurz in RUN und wieder in STOP schalten, dann alle DB-Aktualwerte und ggf. Merker/Zähler/...-Variablenwerte mit Hilfe der Beobachtungstabellen/Schnappschüsse im Arbeitsspeicher wiederherstellen.
Es kann auch passieren, daß nach dem Firmware-Update die CPU die Systemdaten oder andere Bausteine ablehnt und nicht mehr laden will (wegen diversen Kompatibilitätsproblemen). Bei meiner letzten ähnlichen Aktion mit einer S7-400 wollte die CPU nicht mehr die Systemdaten laden, und die HW Konfig musste neu übersetzt werden, wodurch sich zum Glück nur unwichtige Profibus-Parameter änderten. Es können aber auch Fehler in der HW Konfig vorhanden sein, die in älteren Step7-Versionen toleriert wurden und mit der aktuellen Step7-Version nicht mehr, oder nun einfach anders übersetzt werden.
Harald