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

Seite 2 von 2 ErsteErste 12
Ergebnis 11 bis 14 von 14

Thema: Datenbausteine aus AG Abzug wieder verwenden ?

  1. #11
    Registriert seit
    06.10.2003
    Beiträge
    3.413
    Danke
    451
    Erhielt 506 Danke für 408 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo Harald,

    du hast dir aber eine Menge Arbeit gemacht. Ich gebe mal meinen Senf dazu.

    Zum Nachvollziehen:
    1. offline einen DB erstellen mit einer INT-Variable mit Anfangswert 1 und Aktualwert 2 - ok
    2. den DB in die CPU laden --> die Variable hat nun den Wert 2 - ok
    3. per VAT die Variable auf den Wert 3 setzen - ok, 3 steht jetzt als Aktualwert im Arbeitsspeicher
    4. den DB aus der CPU herausladen - wird mit Aktualwert 3 aus dem Arbeitsspeicher von online nach offline gesichert
    5. Urlöschen ausführen --> die Variable wird auf 2 gesetzt - weil die 2 derzeit im Ladespeicher als Aktualwert steht
    6. den gerade herausgeladenen DB wieder in die CPU laden - wird jetzt vom PG mit Aktualwert 3 in den Ladespeicher geladen, im Arbeitsspeicher steht noch die 2
    7. Urlöschen ausführen --> die Variable wird auf 3 gesetzt - wird aus dem Ladespeicher mit Aktualwert 3 in den Arbeitsspeicher geladen

    Also durchaus nachvollziehbar und logisch.
    Hättest du Schritt 3a oder alternativ 3b nicht vergessen, wäre alles mit Aktualwert 3.

    3a. RAM nach ROM kopieren - Aktualwerte werden aus dem Arbeitsspeicher in den Ladespeicher gesichert.
    3b. Spannungsausfall - Aktualwerte werden aus dem Arbeitsspeicher in den Ladespeicher gesichert.


    Gruß, Onkel

    Geändert von Onkel Dagobert (30.05.2013 um 22:27 Uhr)
    Es gibt viel mehr Leute, die freiwillig aufgeben, als solche, die echt scheitern.
    Henry Ford

  2. #12
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.194
    Danke
    925
    Erhielt 3.292 Danke für 2.661 Beiträge

    Standard

    Hallo Onkel,

    ein paar Anmerkungen und Widersprüche von mir.

    6. den gerade herausgeladenen DB wieder in die CPU laden - wird jetzt vom PG mit Aktualwert 3 in den Ladespeicher geladen, im Arbeitsspeicher steht noch die 2
    der Aktualwert im Arbeitsspeicher wird sofort 3

    3a. RAM nach ROM kopieren - Aktualwerte werden aus dem Arbeitsspeicher in den Ladespeicher gesichert.
    Ja, RAM-nach-ROM hat den gleichen Effekt wie herausladen und wieder hineinladen.

    3b. Spannungsausfall - Aktualwerte werden aus dem Arbeitsspeicher in den Ladespeicher gesichert.
    Die Aktualwerte aus dem Arbeitsspeicher werden in einen von außen wahrscheinlich unzugänglichen Bereich auf die MMC geschrieben, aber nicht in den Ladespeicher. Der Aktualwert im Ladespeicher bleibt unverändert, wie man mit einem Urlöschen sehen kann.
    Aktualwerte in DB mit dem non-Retain-Attribut werden beim Spannungsausfall nicht gesichert, sondern beim nächsten bzw. bei jedem Stop/Run-Übergang mit dem Aktualwert aus dem Ladespeicher initialisiert.

    Harald
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  3. #13
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.194
    Danke
    925
    Erhielt 3.292 Danke für 2.661 Beiträge

    Standard

    Kurz gefasst:
    Schreiben in die CPU geht immer in den Ladespeicher und wird dann sofort in den Arbeitsspeicher kopiert.
    Beim Lesen aus der CPU wird immer der Aktualwert aus dem Arbeitsspeicher genommen.

    Direktes Herauslesen des Aktualwertes aus dem Ladespeicher ist offenbar nicht möglich.

    Harald
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  4. #14
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.194
    Danke
    925
    Erhielt 3.292 Danke für 2.661 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von MRose Beitrag anzeigen
    Zitat Zitat von PN/DP Beitrag anzeigen
    ...
    Doch es kommt noch besser: die herausgeladenen DB haben als Aktualwert den aktuellen Wert aus dem Arbeitsspeicher eingetragen, NICHT den Wert, der im Ladespeicher als Aktualwert drinsteht.
    ...
    Ein anderes Verhalten hätte mich jetzt auch erstaunt. Ich will ja beim Rückladen aus der CPU den aktuellen Stand, also die aktuellen Aktualwerte, und nicht irgendwelche alten Aktualwerte.
    Dieses Verhalten ist ja auch richtig so, weil es der Erwartung entspricht. Allerdings ist es dadurch nicht möglich, ein Backup des Ladespeichers zu machen. Die Kopie einer CPU per AG-Abzug verhält sich beim Urlöschen anders als das Original.

    Harald
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

Ähnliche Themen

  1. Datenbausteine auslesen und als csv speichern vom PC aus
    Von masa im Forum Hochsprachen - OPC
    Antworten: 3
    Letzter Beitrag: 28.08.2008, 07:42
  2. Antworten: 13
    Letzter Beitrag: 18.01.2008, 12:47
  3. mit VisualBasic Datenbausteine aus SPS Projekt öffnen
    Von PeterBroggs im Forum Hochsprachen - OPC
    Antworten: 2
    Letzter Beitrag: 20.09.2006, 18:25
  4. Antworten: 3
    Letzter Beitrag: 15.05.2005, 13:18
  5. Antworten: 5
    Letzter Beitrag: 08.04.2004, 10:47

Lesezeichen

Berechtigungen

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