Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Ergebnis 1 bis 10 von 10

Thema: S7-200 Daten remanent Speichern

  1. #1
    Registriert seit
    03.01.2006
    Ort
    Im sonnigen Süden von Österreich!
    Beiträge
    1.377
    Danke
    227
    Erhielt 183 Danke für 168 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo!

    Ich will ein paar Daten im EEPROM der S7-200 speichern.
    Dazu habe ich mir schon einen Baustein geschrieben mit dem SMB 31 und SMW32.
    Wie kontrolliere ich das am sinnvollsten ob die Speicherung funktioniert hat?
    Das ich die CPU ein paar Tage umliegen lasse für das habe ich leider keine Zeit mehr...

    Wann werden die Daten eigentlich aus dem EEPROM zurückgelesen?
    Nur wenn die CPU merkt das sie einen Speicherfehler beim Neustart hat?
    Oder muss ich mich da Programmtechnisch darum kümmern?

    Wann werden eigentlich die Startwerte vom DB genommen?
    Immer wenn die CPU neu Startet oder wenn nach längerem Ausgeschaltet ein Speicherfehler ist und das Programm aus dem EEPROM geladen wird und die entsprechenden Daten nicht mit SMW32 im EEPROM gespeichert worden sind?

    Für ein paar Tipps währe ich sehr Dankbar!

    godi
    Zitieren Zitieren S7-200 Daten remanent Speichern  

  2. #2
    Registriert seit
    08.08.2007
    Ort
    Dresden
    Beiträge
    9.648
    Danke
    1.059
    Erhielt 2.046 Danke für 1.627 Beiträge

    Standard

    deute ich jetzt alles das, was ich in der letzten stunde dazu gelesen habe richtig, so werden die daten beim start der cpu wiederhergestellt und zwar nach folgendem muster:

    "hochleistungs-akku ok": als remanent gekennzeichnete daten werden aus dem remanenzspeicher geholt, nicht remanente aus dem EEPROM

    "hochleistungs-akku nicht mehr ok": alle daten werden zurückgesetzt, das bit SM0.2 wird gesetzt, variablenspeicher und die ersten 14 bytes der merker wenn diese als remanent gekennzeichnet waren werden vom EEPROM wieder hergestellt

    den akku wirst du wohl nicht so schnell leer bekommen aber, es gibt einen tipp, der auch im handbuch zu finden ist

    Tipp
    Durch Kopieren von Variablenspeicher in den nullspannungsfesten Speicher können Werte
    gespeichert werden, die auf einem HMI--Gerät erstellt und vom Programm im internen EEPROM
    gespeichert werden.
    Um die im internen EEPROM gespeicherten Werte in Ihr STEP 7--Micro/WIN Projekt
    aufzunehmen, müssen Sie den DB aus der CPU laden. Dieser Ladevorgang ist jedoch nur
    möglich, wenn Sie den DB (der eine Variable mit einer gleich hohen oder höheren Adresse als
    die Adresse der in SMW32 gespeicherten Variable enthält) zuvor aus STEP 7--Micro/WIN in die
    CPU geladen haben.
    hätt ich ne 200er, würd ich testen, was die meinen

    aber wie hast du schon so schön gesagt: "nie wieder 200!"
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

  3. #3
    Registriert seit
    17.09.2003
    Ort
    Zell bei Dietfurt a.d. Altmühl
    Beiträge
    357
    Danke
    8
    Erhielt 27 Danke für 25 Beiträge

    Standard

    Hallo godi.

    Du kannst es folgendermaßen teste. Setzt einfach den Variablenspeicher für die Remanenz im Systemdatenbaustein auf 0 (Systemdatenbaustein-> Remanente Bereich) . Danach schaltet du die CPU aus und die Daten werden vom EEPROM geladen. Zum Versuch kann du ja mal bevor du die CPU Spannungslos machst in einen V-Bereich einen Wert schreiben der nicht remanent ist und auch nicht im EEPROM gesichert worden ist. Wenn du anschließend die CPU aus und wieder einschaltest steht in dem V-Bereich wo du einen Wert mit der Variablentabelle geschrieben hast "0" drinnen und in den anderen die du im EEPROM gesichert hast, die Werte die dort gespeichert worden sind. Ich hoffe ich habe dir damit geholfen. Bei Fragen einfach melden. Hier wird die immer geholfen.
    MfG

    Hubert

    \"Never change a running system. \"

  4. Folgender Benutzer sagt Danke zu hubert für den nützlichen Beitrag:

    godi (14.08.2008)

  5. #4
    Avatar von godi
    godi ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    03.01.2006
    Ort
    Im sonnigen Süden von Österreich!
    Beiträge
    1.377
    Danke
    227
    Erhielt 183 Danke für 168 Beiträge

    Böse

    Hallo!

    So habe jetzt herumprobiert in den verschiedensten Variationen.
    Habe es so Probiert mit dem löschen der Remanenz und mit urlöschen der CPU aber es werden immer die Werte geladen vom Datenbaustein bzw wenn ich einen Speicherbereich ausserhalb des Datenbaustein verwende dann wird der immer auf null zurückgesetzt!

    Hier mal der Code mit dem ich versuche die Daten zu Speichern:
    Code:
    SUBROUTINE_BLOCK Daten EEPROM speichern:SBR21
    TITLE=UNTERPROGRAMM-KOMMENTARE
    VAR_INPUT
    Adresse:WORD;    // Adresse welche gespeichert werden soll (Basis VB0)
    Datengröße:BYTE;    // Größe der Daten (01=Byte, 10=Wort, 11=DWort)
    END_VAR
    VAR_IN_OUT
    Speichern:BOOL;    // Speichere Daten
    END_VAR
    BEGIN
    Network 1 // Schreibe Daten zum EEPROM
    LD     L3.0
    UN     SM31.7
    LPS
    MOVB   LB2, SMB31
    MOVW   LW0, SMW32
    UENO
    R      L3.0, 1
    LPP
    S      SM31.7, 1
    END_SUBROUTINE_BLOCK
    godi
    Zitieren Zitieren geht nit! :(  

  6. #5
    Registriert seit
    17.09.2003
    Ort
    Zell bei Dietfurt a.d. Altmühl
    Beiträge
    357
    Danke
    8
    Erhielt 27 Danke für 25 Beiträge

    Standard

    Hallo godi.

    So wie es aussieht hat es ja funktioniert. Der Code für deinen Baustein würde stimmen.
    MfG

    Hubert

    \"Never change a running system. \"

  7. #6
    Avatar von godi
    godi ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    03.01.2006
    Ort
    Im sonnigen Süden von Österreich!
    Beiträge
    1.377
    Danke
    227
    Erhielt 183 Danke für 168 Beiträge

    Böse

    Hallo!

    Leider funktioniert die Remanenz noch immer nicht.
    Wenn die CPU ein paar mal hintereinander Spannungslos geschaltet wird dann gehen die eingestellten Werte verloren bzw in den Default Wert zurück den ich im Datenbaustein hinterlegt habe.
    Auch das MB10 geht verloren obwohl es als remanent eingestellt ist und im Handbuch steht drinnen das die ersten 14Byte bei remanent im EEprom gespeichert werden.
    hat noch jemand eine Idee was da los sein kann das die Daten verloren gehen?
    Das komische ist das manchmal die Werte erhalten bleiben und manchmal gehen sie verloren...

    godi

  8. #7
    Registriert seit
    17.09.2003
    Ort
    Zell bei Dietfurt a.d. Altmühl
    Beiträge
    357
    Danke
    8
    Erhielt 27 Danke für 25 Beiträge

    Standard

    Hallo godi.

    Sorry das ich mich erst jetzt wieder melde (war im Urlaub). Wie sieht es den jetzt aus? Was funktioniert nicht und was geht? Habe das schon einige male gemacht und hat bis jetzt immer funktioniert. Was hast du den im Systemdatenbaustein bei Remanenz alles eingestellt? Wenn du magst kann du mir das Programm mal schicken, dann schau ich es mir mal an, wo es noch hängt. Das Programm einfach an wittmann.hubert@gmx.de schicken.
    MfG

    Hubert

    \"Never change a running system. \"

  9. #8
    Avatar von godi
    godi ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    03.01.2006
    Ort
    Im sonnigen Süden von Österreich!
    Beiträge
    1.377
    Danke
    227
    Erhielt 183 Danke für 168 Beiträge

    Standard

    Hallo Hubert!

    Ich glaube das Problem war das ich einen externen EEPROM eingebaut habe und ich der Meinung war das man mit dem SMB32 auf den externen EEprom schreibt und nicht auf den internen Nullspannungsfesten speicher. Da ist von mir eine Verwechslung vorgelegen.
    Dadurch wurde eben manchmal nach Spannung aus und ein wieder die werte vom EEPROM geladen und die Einstellungen waren dann wieder auf den Defaultwerten vom Datenbaustein eingestellt.
    Leider konnte ich es nicht mehr testen weil ich nicht mehr in der Firma bin aber der Maschinenbauer wird das noch für mich testen und dann bekomme ich bescheid.

    godi

  10. #9
    Registriert seit
    17.09.2003
    Ort
    Zell bei Dietfurt a.d. Altmühl
    Beiträge
    357
    Danke
    8
    Erhielt 27 Danke für 25 Beiträge

    Standard

    Hallo godi.

    Genau mit dem SMB31 und SMW32 schreibst du nur auf das interne EEPROM und nicht auf das externen. Auf das Externe kannst du z.B. das Programm (Programmbaustein, Systemdatenbaustein, Datenbaustein) schreiben ums es zu versenden. Wenn das EEPROM gesteckt ist und es wird ein bestimmt unterschied zwischen Progamm auf der CPU und dem externen EEPROM erkannt, dann werden deine Daten überschrieben und deshalb immer wieder deine Defaultwert. Gibt mir bescheid ob es geklappt hat oder nicht.
    MfG

    Hubert

    \"Never change a running system. \"

  11. Folgender Benutzer sagt Danke zu hubert für den nützlichen Beitrag:

    godi (10.09.2008)

  12. #10
    Avatar von godi
    godi ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    03.01.2006
    Ort
    Im sonnigen Süden von Österreich!
    Beiträge
    1.377
    Danke
    227
    Erhielt 183 Danke für 168 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Ja werde ich bescheid sagen ob es funktioniert hat. Wird aber höchstwahrscheinlich erst am ende nächster Woche sein.

    godi

Ähnliche Themen

  1. SCL: Daten Speichern/Verschieben
    Von zloyduh im Forum Simatic
    Antworten: 1
    Letzter Beitrag: 08.08.2011, 09:38
  2. Merker Remanent Speichern Beckhoff
    Von Rifel im Forum CODESYS und IEC61131
    Antworten: 11
    Letzter Beitrag: 20.02.2009, 14:03
  3. B&R AS: Daten in Datei speichern
    Von fighter im Forum Sonstige Steuerungen
    Antworten: 20
    Letzter Beitrag: 10.10.2008, 21:32
  4. S7 Daten in Exel speichern????????
    Von Anonymous im Forum Simatic
    Antworten: 10
    Letzter Beitrag: 06.11.2005, 14:11
  5. Daten speichern
    Von Sascha77 im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 11.03.2004, 06:33

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •