TIA Daten aus der CPU in eine Exceltabelle schreiben

Maxf

Level-1
Beiträge
8
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Guten Tag miteinander,

ich habe folgendes Problem:
Unsere CPU (S7-1500 1513f) ist mitlerweile sehr voll mit Daten, wodurch die Zykluszeit eventuell bald darunter leiden wird.
Jetzt wollen wir die ganzen kundenbezogenen Daten, wie Produktparameter und Gut-/Schlechtteileinformation dort rausziehen und extern Lagern, sodass diese Daten abgerufen werden können.

Ich habe mir gedacht das geht am besten über eine Exceltabelle, da zum einen so gut wie jeder Exceltabellen anschauen kann, und zum anderen auf einem Computer viel mehr Speicher durch SSD oder notfalls HDD zur verfügung stehen.

Nun habe ich die Foren etwas durchsucht und gesehen, dass man dafür einen OPC-Server auf dem Computer ( die CPU hat das ja anscheinend vom Werk aus schon ) benötigt.
Zudem muss Excel in VisualBasic dann programmiert werden um zu sagen welche Daten von der CPU ausgelesen werden sollen.
Am besten wäre es noch wenn man jede Stunde (Zeit einstellbar) diese Daten auslesen kann, und diese Exceltabellen dann in "Tagesordnern" speichert, die der Kunde sich dann einfach per USB-Stick vom Computer runterziehen kann.

Nun bin ich leider ein blutiger Anfänger (3tes Semester duales Studium Elektrotechnik/Automation) und habe keinerlei vorwissen von OPC-servern oder VisualBasic (haben an der Hochschule nur C++ gelernt) und auch beim TIA Portal kann ich die Grundfunktionen in SCL programmieren und dann hört mein Wissen auch schon auf.

Hätte jemand von euch vielleicht eine leicht verständliche Anleitung für so eine Laien wie mich?:roll:

Vielen Dank schonmal für eure Hilfe,

Max:D
 
Zuletzt bearbeitet:
Ich meine die 1500er hat Bausteine um Datenbausteine als CSV-Datei auf der Speicherkarte abzulegen.
Diese könnten dann z.B. über den Webbrowser direkt von der Steuerung abgeholt werden -> ganz ohne PC als "Middleware".
Das wäre mein erster Ansatz.

Mein zweiter wäre die Daten ggf. über ein Siemens HMI (Falls Vorhanden) auf einen USB-Stick zu schieben.

Und erst wenn die beiden Möglichkeiten nicht in Betracht kommen -> PC mit Software (OPC, Modbus TCP, Libnodave, ...)

Grüße

Marcel
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Das Problem dabei ist , dass die Speicherkarte dafür lange nicht die kapazitäten besitzt die wahrscheinlich gebraucht werden.

Wir müssen zu jedem Produkt dass in der Maschine produziert wird, eigene Nummern, Paramter, sogar mehrer Kamerabilder ablgene können, das wird auf dauer sehr viel Speicher in anspruch nehmen und daher habe ich an den PC gedacht, weil man dort eben Notfalls noch SSDs dran packen kann um den Speicher zu erweitern.

Die Speicherkarte der CPU wäre zu schnell voll.

Und ich sage mal nachdem ein Ordner älter als 10 Tage ist kann er ja wieder gelöscht werden.

Und es ist auch keine Option jede Stunde einen Mitarbeiter ans HMI-zu schicken um die Daten auf einen USB-Stick zuziehen.

Grüße

Max
 
Unsere CPU (S7-1500 1513f) ist mitlerweile sehr voll mit Daten, wodurch die Zykluszeit eventuell bald darunter leiden wird.
Wie viele Daten auf einer CPU herumliegen beeinflusst normalerweise nicht die Zykluszeit. Nur wenn die CPU mit immer mehr werdenden Daten arbeitet...
(Wie können die Daten überhaupt immer mehr werden?)
Soll durch das Daten-Auslesen die Menge der Daten in der SPS irgendwie wieder reduziert werden?

Mit OPC kenne ich mich nicht aus.

Es gibt fertige Tools zum Auslesen der DB, z.B. ACCON-EasyLog oder SPSDataBackup oder Buddy-for-S7 oder ... Ob die auch mit S7-1500 funktionieren weiß ich nicht.

Wenn Du über Excel gehen willst, dann wirst Du selber in VBA programmieren müssen und brauchst eine Kommunikationsbibliothek, die die DB aus der S7-SPS lesen kann, wie z.B. ACCON-AGLink oder Snap7 oder Sharp7 oder ... Wenn die DB nicht optimiert sind, dann geht auch das kostenlose Libnodave (Beispiel: FAQ Excel + Libnodave)

In das SPS-Programm sollst/darfst Du nicht eingreifen? Sonst gäbe es auch noch Möglichkeiten wo die SPS selber ihre Daten an Archiv-Server sendet/auslagert.
Hat die SPS ein HMI/Visu, wo vielleicht schon das Auslesen der Daten und extern speichern (z.B. als Rezepturen) realisiert ist? Das HMI könnte auch Daten auf eine Freigabe/Storage im Netzwerk speichern.

Harald
 
Zuletzt bearbeitet:
Wie viele Daten auf einer CPU herumliegen beeinflusst normalerweise nicht die Zykluszeit. Nur wenn die CPU mit immer mehr werdenden Daten arbeitet...
(Wie können die Daten überhaupt immer mehr werden?)
Soll durch das Daten-Auslesen die Menge der Daten in der SPS irgendwie wieder reduziert werden?

Harald

Ich denke mal dass durch jedes neue Produkt das produziert wird, schon die Daten erheblich steigen und das die CPU enomr belastet, daher der Gedanke die Daten auf ein viel größeres Speichermedium (PC) übertragen und dann bei der CPU diese daten überschreiben lasse.

Ich gehe mal davon aus das pro Produktionszyklus z.B. 20 Teile Produziert wird, mit eigener Teilenummer, dann den ganzen Produktionsparameter (temperatur der Spritzgussmaschine zu dem Zeitpunkt usw. , muss ja alles später nachvollziehbar sein wenn es Probleme bei Teilen später beim Kunden gab) und die werden dann pro Produktionszyklus abgespeichert, und dort dann abgreifen damit die alten daten (nachdem ich sie in der Exceltabelle gespeichert habe) wieder überschrieben werden können, anstatt 100 mal die selben Daten zu haben bloß für jedes Produkt abgeändert (ich hoffe sie verstehen wo ich hinaus will, tut mir leid dass es so undeutlich ist)

In das SPS-Programm sollst/darfst Du nicht eingreifen? Sonst gäbe es auch noch Möglichkeiten wo die SPS selber ihre Daten an Archiv-Server sendet/auslagert.
Hat die SPS ein HMI/Visu, wo vielleicht schon das Auslesen der Daten und extern speichern (z.B. als Rezepturen) realisiert ist? Das HMI könnte auch Daten auf eine Freigabe/Storage im Netzwerk speichern.

Harald

in das Programm sollte ich wenn dann nur minimal eingreifen. Was für Archiv-Server sind das ? Davon habe ich so jetzt noch nichts gehört , eventuell auch ein Ansatz das Problem zu lösen.

Ja die hat eine Visu, nur könne für unsere Visus, zumindest bei den TP1200 Comfort 12 Zoll um die 500 Rezepte maximal gespeichert werden, und diese dann über einen Programmeingriff immer wieder zulöschen, können wir den Kunden nicht zumuten. Daher ist das wohl auch eher keine Option.

Wenn Du über Excel gehen willst, dann wirst Du selber in VBA programmieren müssen und brauchst eine Kommunikationsbibliothek, die die DB aus der S7-SPS lesen kann, wie z.B. ACCON-AGLink oder Snap7 oder Sharp7 oder ... Wenn die DB nicht optimiert sind, dann geht auch das kostenlose Libnodave (Beispiel: FAQ Excel + Libnodave)

Harald

Diesen Beitrag habe ich mir auch schon durchgelsen, ist aber für mich noch ziemlich unverstendlich ^^

Gruß

Max
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Auf so Progamme würde ich gerne erst zugreife wenn es keinen anderen Ausweg gibt, der günstiger vielleicht sogar kostenlos ist :D

Wie bereits weiter oben erwähnt wurde, gibt es für Deine Aufgabenstellung eigentlich nur 2 Möglichkeiten: Entweder sich in die Programmierung mit den diversen Bibliotheken einlesen und alles selbst programmieren (das ist nicht ohne Zeiteinsatz und Ausdauer möglich). Oder ein Produkt kaufen, wie z.B. unseren SPSDataReader, der oben bereits erwähnt wurde. Wir bieten auch günstige akademische Lizenzen an ;-)
 
hallo Freunde

ich versuche gerade mit Excel auf den OPC Server einer 1500er zuzugreifen.
ich gehe nach dieser Anleitung von Siemens vor
https://support.industry.siemens.co...nt-library-für-microsoft-excel?dti=0&lc=de-DE

aber leider bekomme ich eine Fehlermeldung wenn ich mit der Eingabeaufforderung versuche die OPC UA Client Library zu registrieren
(in der Siemens-Anleitung Seite 7/18)

im Anhang seht ihr meine Versuche

hat jemand einen Tipp für mich was ich falsch mache?Snap 2020-06-07 at 13.26.30.jpg


[Edit] oder mal anders gefragt: was ist die einfachste schnellste Variantedamit ein Kunde Daten aus einem DB irgendwie in eine Excel Tabelle kopieren kann?
ich hab gerade mal den Webserver aktiviert und da eine Beobachtungstabelle angezeigt. das kann man dann ja manuell auch in eine Excel kopieren aber das ist das Layout dann ein bischen doof
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
oder mal anders gefragt: was ist die einfachste schnellste Variantedamit ein Kunde Daten aus einem DB irgendwie in eine Excel Tabelle kopieren kann?
ich hab gerade mal den Webserver aktiviert und da eine Beobachtungstabelle angezeigt. das kann man dann ja manuell auch in eine Excel kopieren aber das ist das Layout dann ein bischen doof

Ich nutze für sowas Node RED. Ist quasi mein Universaltool für sowas. Egal ob S7, Wago, Ecxel oder SQL-Server
 
Es gibt fertige Tools zum Auslesen der DB, z.B. ACCON-EasyLog oder SPSDataBackup oder Buddy-for-S7 oder ... Ob die auch mit S7-1500 funktionieren weiß ich nicht.
Ich wurde nach ACCON Easylog tendieren.
Es supportiert S7-1500 inkl. Symbolik. Und meines wissesn funktioniert es mit optimierte Bausteine und ohne PUT/GET Freischaltung.
Für 310€ kostet es so viel wie ein halben Tags Arbeit. Selber etwas "kostenloses" zu basteln lohnt sich einfach nicht.
 
Hello "PlcProgram".

There is a forum section for advertising here:

As DeltaMikeAir is pointing out, when you have a website for selling stuff, including software, in Germany you are required to inform at least this:
Full firm name and address of the Company;
names of the managing directors of the company or the representatives;
telephone number,
fax number and email address of the company;
the responsible court of registration and company registration number;
VAT identification number.
 
Zurück
Oben