Step 7 DB Aktualwerte exportieren

Wolfhunter

Level-1
Beiträge
52
Reaktionspunkte
1
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Zusammen,

gibt es eine Möglichkeit die Aktualwerte aus den Datenbausteinen nach Excel zu exportieren.
Ich habe eine S7-315 2DP.

Die Standardwerte kann man ja über den Weg "Quelle exportieren" und dann als AWL speichern,
aber ich benötige die Aktualwerte. Oder kann man da eventuell die Aktualwerte in die Standardwerte zurück kopieren
und dann über den Weg " Quelle exportieren" ausgeben?

Mit freundlichen Grüßen

Dennis
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Neee das ist nicht das was ich meine,

ich will nicht mit Excel meine Werte in Step 7 kopieren, sondern die Werte von der S7 DB XY
nach Excel bringen.

Dein Link beschreibt ja den Weg wie ich aus einer Excel Tabelle einen Datenbaustein erstellen kann.
 
Zuletzt bearbeitet:
,
Da gibt es z.B. LibnoDave.

Und zu diesem Stichwort gibt die Suchfunktion
hier im Forum (oben rechts) einiges her ;)
 
...., sondern die Werte von der S7 DB XY
nach Excel bringen.

Dein Link beschreibt ja den Weg wie ich aus einer Excel Tabelle einen Datenbaustein erstellen kann.

Ja und wo bitte ist das Problem????

Die nachstehende Tabelle erläutert Ihnen die Vorgehensweise, was Sie beim Importieren und Exportieren der AWL-Quelle und beim Speichern in Excel beachten müssen

Als erstes wird doch der Baustein in Excel gespeichert und dann erst wieder in die Steuerung geschrieben.

Excel.jpg
 
Zuviel Werbung?
-> Hier kostenlos registrieren
He, Du arbeitest unter Windows - da sollte man doch einfach mal auf die Idee kommen zu probieren, ob Copy & Paste funktioniert ...

Also:
- DB öffnen (aus Projekt oder von Online)
- Ansicht > Datensicht
- (alle) Zeilen des DB markieren (erste gewünschte Zeile anklicken, dann mit Umschalt zusammen die letzte gewünschte Zeile anklicken)
- Bearbeiten > Kopieren
- in Excel wechseln
- Bearbeiten > Einfügen
- mach damit was Du willst ... z.B. kopiere die Spalte mit den Aktualdaten irgendwohin

Kleiner Fallstrick bei REAL: vor dem Einfügen in Excel das Dezimaltrennzeichen für Excel auf '.' (Punkt) einstellen.

Harald
 
Morgen,

@Nordischerjung: Wenn ich das so mache bekomme ich aber nicht in der Quelle die Aktualwerte sondern nur die Startwerte der DB´s

@PN/DP: Das Kopieren würde bei ein paar Daten Sinn ergeben, allerdings habe ich ca. 400 und da ich nicht die ganze Spalte makieren kann
ist das nicht praktisch.

@SoftMachine: Danke, das klingt interresant. Werde ich mir mal anschauen.



Danke für die Hilfe.
 
Hallo zusammen,

ich versuche gerade die Aktualwerte in die Startwerte zu kopieren.
Kann ich das dann nur mit der LibnoDave Variante schaffen?

Vielen Dank schonmal :)
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Du kannst bei Tia in den Db´s eine Aufnahme der Aktualwerte machen, und anschließend diese Werte als Startwert benutzen. Falls es das ist was du möchtest.
 
ich versuche gerade die Aktualwerte in die Startwerte zu kopieren.
Kann ich das dann nur mit der LibnoDave Variante schaffen?
Wozu? Was genau willst Du machen?
Welche CPU genau hast Du?
Welches Step7 verwendest Du?
(hier in diesem Thread geht es um eine S7-300 und Step7 "classic" V5.x)

Die DB-Startwerte ("Anfangswert") werden nur offline im Step7-Projekt verwendet, z.B. wenn die DB-Aktualwerte "initialisiert" werden.

Wenn die Aktualwerte als Startwerte bei Urlöschen/Remanzverlust in der CPU verwendet werden sollen, dann müssen die Aktualwerte aus dem Arbeitsspeicher in den Ladespeicher geschrieben/kopiert werden. Das kann man bei S7-300 mit MMC einfach mit dem Simatic Manager machen, indem man den DB aus der CPU herauslädt/kopiert (liest die Aktualwerte aus dem Arbeitsspeicher) und wieder in die CPU hineinlädt (schreibt die Aktualwerte in den Ladespeicher + Arbeitsspeicher). Man kann das auch im SPS-Programm mit SFC84 WRIT_DBL machen (wenn die CPU den SFC84 hat).

Was für eine Lösung mit Libnodave meinst Du? Libnodave kann nicht im Step7-Projekt die Werte aus der Spalte "Aktualwert" in die Spalte "Anfangswert" kopieren. Und schreiben in den Ladespeicher der CPU geht mit Libnodave nur als ganzer Baustein.

Im Step7-Projekt die Werte aus der Spalte "Aktualwert" in die Spalte "Anfangswert" kopieren macht man am einfachsten mit Excel oder händisch.

Harald
 
@Pivo: Ja das ist es was ich machen möchte nur habe ich leider kein TIA.

@PN/DP: Sorry die Infos waren etwas dürtig. :sad: Also...

Ich habe Step7 classic V5.5 mit einer 300er CPU (inkl. SFC84).
Ich will mir den aktuellen Stand der Anlage sichern, damit ich falls Daten verloren gehen genau dieser Stand resetet wird.
Mit der Quellen/Excel Variante habe ich es versucht und wenn ich nur INTs/ BOOLs etc habe geht das auch wunderbar. Ich habe allerdings auch einen DB mit STRINGs und ARRAYs.
Aus der Hilfe von dem SFC84 wurde ich nicht ganz schlau. Ich habe dann versucht von dem DB wieder auf den DB zu schreiben, das hat aber leider nicht funktioniert.
Wie muss ich das genau mit dem Ladespeicher machen und was muss ich bei der Memorycard beachten?

Bisher habe ich mich noch nicht mit Libnodave beschäftigt. Mit meiner ursprünglichen FRage wollte ich wissen ob es noch eine andere Möglichkeit gibt. Da es auf den ersten Blick zu umständlich ausgesehen hatte.

Vielen Dank für die schnelle Antwort :smile:
 
Ich habe Step7 classic V5.5 mit einer 300er CPU (inkl. SFC84).
Geht die Angabe "mit einer 300er CPU" auch genauer? Falls Du eine 318 CPU mit FLASH/EEPROM-MC hast, mußt Du nämlich anders vorgehen...

Wenn der SFC84 für Dich Neuland ist, dann ist diese SFC84-Geschichte für Dich vermutlich auch nicht relevant. Du willst ja VOR einer Programmänderung das Programm und Daten sichern.

Ich will mir den aktuellen Stand der Anlage sichern, damit ich falls Daten verloren gehen genau dieser Stand resetet wird.
In der Theorie ist das Sichern einfach, praktisch lauern da aber so einige Stellen, wo man nicht wieder gut zu machende Fehler machen kann.

Hat die Maschine/Anlage vielleicht schon eine Funktion, um die wichtigen Werte zu sichern und wieder einzuspielen? Dann zunächst diese Funktion nutzen.

Hast Du die SPS programmiert? Hast Du das originale Step7-Projekt? Kennst Du die genaue Arbeitsweise des SPS-Programms?
Wenn nicht, dann müsstest Du um ganz sicher zu gehen, zweimal alle DB-Werte herausladen/sichern:
(1) die Aktualwerte aus dem Arbeitsspeicher
(2) die "anfänglichen" Aktualwerte aus dem Ladespeicher (Speicherkarte)

Dazu zuerst die Maschine in einen sicheren/bewegungslosen/leeren Zustand bringen (am besten Not-Aus), dann CPU in STOP setzen, danach (1) ALLE DB-Aktualwerte per Variablentabelle (VAT, am besten lückenlos als DWORD) oder z.B. Libnodave oder Buddy-for-S7 herauslesen und speichern (um sie später auf diesem Weg in den Arbeitsspeicher zurückspeichern zu können) (*), und danach (2) die CPU in STOP setzen und Urlöschen durchführen und dann die DBs herausladen - so bekommt man die "anfänglichen" Aktualwerte aus dem Ladespeicher (der Speicherkarte) (**) Auf keinen Fall zwischendurch in RUN gehen!

Das zweimalige Sichern ist nötig, weil bei manchen Programmen nicht alle Aktualdaten in den Ladespeicher geschrieben werden dürfen, weil da vielleicht absichtlich eine Erkennung des Remanzverlustes/Urlöschens programmiert ist oder (häufiger) die Programmierer sich gar keine Gedanken gemacht haben, was nach einem Kaltstart mit unpassend initialisierten Aktualwerten passiert...

(*) fürs erste reicht auch einfaches Herausladen der DB mit den Aktualdaten, das Herstellen der VAT kann man bei Bedarf auch später mit PLCSIM machen
(**) man kann auch die Speicherkarte aus der CPU nehmen und im PG sichern

(3) Werden in dem Programm vielleicht auch (un-/absichtlich?) remanente Merker und S7-Zähler verwendet? Die kann man nur per VAT oder Libnodave oder mit anderen Drittprogrammen sichern. Normalerweise sichert die niemand (und das Sichern der DB-Aktualwerte macht auch kaum jemand so aufwendig) und meistens geht es gut. Doch je nach "Programmierkunst" des/der Programmierer kann es sich auch herausstellen, daß die mittlerweile veränderten Werte wichtig gewesen wären und dann ist es zu spät... Gerade bei SPS schadet es nicht, wenn man Ahnung hat von dem was man da tut ;)

(4) Zum Sichern des aktuellen Standes der SPS gehört auch, daß man sich die "Systemdaten" aus der CPU (und ggf. aus CP und anderen Baugruppen) sichert/herauskopiert. Damit man die im Notfall unverändert wieder in die SPS-Baugruppen laden kann. Es kann sein, daß eine Step7-Version andere Systemdaten erzeugt oder erzwingt als die ursprünglich verwendete Step7-Version, und die SPS/Anlage läuft nicht mit den neu erzeugten Systemdaten.

Harald
 
Zurück
Oben