Direkte Datensicherung und Archivierung von SPS-Daten in eine Datenbank (MySQL)

Zuviel Werbung?
-> Hier kostenlos registrieren
Danke für die Info.

Was heißt OPC-UA Client ? Braucht man da einen OPC-Server oder ist der in Node-Red integriert? Wie komme ich an die Daten in der SPS? Hast du da ein Beispiel dazu?

Danke Tommy

Soweit ich weiß, ist doch in der S7-1500 ein OPC Server integriert. Hier eine kleine Demo auf Youtube. Ist zwar mit einer WAGO SPS aber is eh überall ähnlich https://youtu.be/LaUmhhMdoyY

Und bei dem OPC-UA Contrib iiot node sind auch Beispiele dabei.

Für Node-Red gibt's doch - meines Wissens - auch ne direkte S7-Anbindung (ohne den Umweg über OPC)

Weiß ich leider nicht, S7 interessiert mich net so... ;)
 
So Datenbank mit direkten Zugriff aus der SPS läuft. Node Red mit direkten Zugriff auf S7 läuft auch! Node Red ist genial einfach. Jetzt gibt es sogar einen kleinen Monitor der auf dem Touchpanel und per Webfrontend auf allen PCs den Status der Datenbank des Raspberry und der Maschine anzeigt. Danke für die Infos.

Gruß tommy
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
bist Du bei dem Thema schon weiter gekommen?

Eventuell würde Dir da SQL4automation weiterhelfen (http://www.sql4automation.com). Damit kann man aus der SPS ohne OPC-Schnittstelle und Hochsprachen-Applikation mit einer Datenbank kommunizieren.

Gruss, M74
 
Zuletzt bearbeitet:
Hallo M74,

ja bin ich. Die Datenerfassung und Auswertung läuft zur Probe seit 14 Tagen ohne Probleme. Ich schreibe direkt mit der SPS in die Datenbank (MySQL-Treiber in SCL selbst programmiert). Die Datenbank und Node-Red läuft auf einem Raspberry-Pi3, welcher als Gateway zwischen Maschine und IT fungiert. Node-Red überwacht den Pi und meldet Speicherauslastung und Pi-Daten an die SPS.

Gruß Tommy
 
Ich hab das mal durchgelesen.
In jede Maschine ein Raspi, denks du auch daran, dass das alles gewartet, geupdatet (mind. Sicherheitsupdates) werden muß?
Da kann der Aufwand leicht exponentiell steigen.
Wenn ich nur daran denke, was es mich insgesamt so an Zeit kostet, das komplette Equipement meiner Familie in etwa auf dem Stand zu halten und da habe ich schon maximal vereinheitlicht!
Und nach 3-4 Jahren hat man auch so einiges aus der "alten" Welt nicht mehr auf dem Radar oder der betreuende Kollege zieht nach Timbuktu.
Ansonsten finde ich das rein technisch gar nicht so schlecht, zumindest, um wieder was dazuzulernen. Willst du das Projekt irgendwann öffentlich zugänglich machen?
Der SQL-SCL-Teil würde mich schon mal interessieren, hätte gar nicht gedacht, dass das so ohne weiteres möglich ist.
 
Hallo Ralle,

da es ein internes System ist und eigentlich keine Verbindung zur Außenwelt besteht sehe ich das im Moment eher unkritisch irgendwelche Updates einzupflegen. Ich gebe dir Recht das ist dann schon etwas Aufwand wenn man es tun will oder muß. Im Moment ist es ja im Testbetrieb und sollte es dann in jede Maschine eingebaut werden kann man ja eventuell über eine Zentrale Architektur zur Aktualisierung nachdenken. Aber soweit ist es noch nicht. Um das System am laufen zu halten und bei Ausfall schnell zu reparieren habe ich regelmäßige Backups der Datenbank geplant. Dann einfach nur den Pi oder USB-Stick(Image ist schon komplett aufgespielt) tauschen. Eventuell die IP-Adresse beider Ethernet Ports anpassen, Daten der Datenbank einspielen und es sollte wieder laufen. Für die Nachwelt gibt es ein umfangreiches Word-Dokument, anhand dessen auch weniger Erfahrene das System neu aufsetzen könnten.

So ohne weiteres war es auch nicht möglich! Ich habe viel gelesen und analysiert (Wireshark). Das Grundkonzept habe ich aus dem Siemensforum, dort gibt es einen Englischen Beitrag (Marco Bursic suche nach "tiny SQL Client for logging data"). Das Beispiel hat bei mir nicht funktioniert, da es wohl für eine 1200 SPS war und ich es auf einer 1500 nutzen wollte. Ich habe ewig nach Fehlern im Ablauf gesucht. bis ich es dann neu geschrieben habe. Da ist am Ende nur die Grundidee und die SHA1 Routine zur Verschlüsselung des Passwortes übrig geblieben. Ganz fertig ist das Programm auch noch nicht. Was noch fehlt ist die Möglichkeit Daten aus der Datenbank abzufragen (Abfragen geht, die Daten müssen aber dann noch aus dem Puffer gelesen werden und einzeln aufgesplittet werden). Zu Test reicht es mir das ich alles machen kann was ich will um Daten in der Datenbank abzulegen (Insert, Update, Create usw.). Wenn du Interesse hast dann melde ich per PN bei mir.

Gruß Tommy
 
Zuviel Werbung?
-> Hier kostenlos registrieren
@Ralle
Blätter mal durch die "Fach"-Zeitschriften. In jeder findest du zig von diesen IoT-Boxen, IoT-Gateway und Protokollwandlern.
Fast alle laufen unter Linux und in einem Großteil werkelt ein Raspberry.
So gesehen ist Thommys Lösung absolut zeitkonform :)
Das Thema Updates hast du bei den anderen genauso ... wenn nicht sogar schlimmer.

Wir sehen uns auch gerade Node-RED an.
S7 -> Node-RED -> MS SQL-Server
Als Board kommt vielleicht ein Banana PI Router zum Einsatz.

Gruß
Dieter
 
sehr interessant!!

Eventuell paar Screenshots der visualisierten Daten? (gerne auch PN).

Werde mir ebenfalls Node-red mal ansehen.
 
@Ralle
Blätter mal durch die "Fach"-Zeitschriften. In jeder findest du zig von diesen IoT-Boxen, IoT-Gateway und Protokollwandlern.
Fast alle laufen unter Linux und in einem Großteil werkelt ein Raspberry.
So gesehen ist Thommys Lösung absolut zeitkonform :)
Das Thema Updates hast du bei den anderen genauso ... wenn nicht sogar schlimmer.

Wir sehen uns auch gerade Node-RED an.
S7 -> Node-RED -> MS SQL-Server
Als Board kommt vielleicht ein Banana PI Router zum Einsatz.

Gruß
Dieter

Ja, das ist klar, sollte auch niemenden abschrecken.
Ich hab nur so langsam richtig Bauchschmerzen, wenn ich schon sehe, was für Probleme sich mit einer reinen Siemens-Umgebung ergeben, in Bezug auf FW und SW.
Dann noch einige Geräte drumherum, mit spezieller Software und Konfiguration.
Da wird alleine das Einrichten und Warten zum Fulltime-Job.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ja, das ist klar, sollte auch niemenden abschrecken.
Ich hab nur so langsam richtig Bauchschmerzen, wenn ich schon sehe, was für Probleme sich mit einer reinen Siemens-Umgebung ergeben, in Bezug auf FW und SW.
Dann noch einige Geräte drumherum, mit spezieller Software und Konfiguration.
Da wird alleine das Einrichten und Warten zum Fulltime-Job.

Deine Bauchschmerzen sind mehr als nachvollziehbar.
Wenn du erstmal in jeder Anlage irgendwelche IoT-Boxen verbaut hast, dann kommt irgendwann das Gejammere über fehlende Sicherheit.
Also kommt dann eine Hardwarefirewall in jede Anlage. Uns so geht das Spiel weiter.
Auch wenn die Hardware und die Cloud anfangs billig sind, der Reibach wird danach mit dem Service gemacht.
Also was bleibt?
An IoT kommst du nicht mehr vorbei. Dazu schwirren zu Consultants wie die Schmeissfliegen ums Management.
Somit kannst du nur versuchen seriöse Anbieter (so was soll in dem ganzen Verhau noch vereinzet geben) zu finden oder selber KnowHow und Lösungen aufbauen.
Und da sind Lösungen auf Basis eines Raspberry Pi (oder Ähnlichem) und z.B. Node-RED durchaus interessant.

Gruß
Blockmove
 
Ich möchte auch Daten sammeln. Daten in einen DB zu schreiben ist nicht das Problem. Mir fehlt allerdings das know how auf der PC Seite. Welche Software benötige ich und welche Protokolle übertragen die Daten.

Hat jemand was konkretes?
 
Hallo Assurbaipal,

es wird bestimmt wieder Leute geben die mir vorwerfen werden, ich würde Schleichwerbung machen :D. Ich kann Dir einfach schreiben was wir in unseren Projekte einsetzen, da ich von der Einfachheit und Flexiblität der Lösung sehr überzeugt bin.

http://www.sql4automation.com

Dieses Framework ist sehr offen, weil SQL-Kommandos direkt aus der SPS-Steuerung zur Datenbank geschickt werden können. Damit beschränkt sich die Anwendung nicht nur auf das Sammeln von Daten... Du kannst Dir auch eine Rezepturverwaltung vorstellen, bei welcher die Fertigungsparameter bei einem Typenwechsel von der Datenbank in die Steuerung geladen werden.

In Deinem Fall könnte das so aussehen:
- Deine Daten liegen in einem Datenbaustein oder in einer Struktur in der SPS.
- Du definiert einen Trigger zum Senden der Daten zur Datenbank. Dies könnte beispielsweise zyklisch über einen Timer erfolgen oder aufgrund einer Änderung Deiner Daten...
- Mit der positiven Flanke des Triggers würde man nun einen Baustein aufrufen, welcher Deine Daten in der SPS in einen SQL-Befehl verpackt, welcher diese speichert.
(Zum Erstellen des SQL-Befehls wirst Du von den Datenbank-Tools gut unterstützt. Es tönt vielleicht komplizierter als es ist.)

Dann ist die Sache für Dich erledigt, denn das SQL4automation-Framework sendet diesen Befehl über ein Protokoll zur Datenbank. Die Datenbank schickt ein Telegramm zurück, damit in der SPS geprüft werden kann, ob das Kommando fehlerfrei durchgeführt werden konnte...

Auf der PC-Seite brauchst Du nichts zu programmieren. Man muss nur einen Dienst installieren und eine Verbindung zur Datenbank konfigurieren. Daher musst Du Dir auch über die Protokolle keine Gedanken machen.

Schau Dir das doch mal an. Wenn Du Fragen hast kannst Du mich auch über PN anschreiben.

Schönen Abend. Gruss, M74
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Gleich vorweg, ja es ist Eigenwerbung, dennoch könnte eine Lösung für o.g. Fragen dabei sein. Fragen Sie einfach über u.g. Homepage an. Gern auch hier im Forum diskutieren. Die Datenbank läuft auf einem PC (so ist es evtl. bereits bei Ihnen) und es braucht KEINE weitere Hardware. Ich stehe da ganz bei @Ralle!
Die genannten Lösungen sind für den einen oder anderen gut. Der erfahrene Programmierer möchte aber aus diversen Gründen keine Drittanbietersoftware einsetzen. Daher ist eine Kommunikation direkt aus der SPS zur SQL Datenbank interessanter. Es ist auch der effektivste Weg, um Daten zwischen einer SPS und einer Datenbank auszutauschen. Durch Wegfall von Kommunikationsstellen, wie ein Gateway, wird ein sehr schneller Austausch von Daten möglich. Durch die zahlreichen Anbieter von SPS und SQL-Datenbanken kann kein allgemeiner Softwarebaustein verwendet werden. Hier übernehmen die SQL oder mySQL SPS Bausteine die Verbindung und den Datenaustausch. Bei uns können Sie zwischen einer kleinsten Variante (nur SPS Bausteine), über komplette Datenanbindung (mit SQL Server), bis hin zu einer ausgewachsenen Betriebsdatenerfassung wählen. Sie wollen langfristig unabhängig von Drittanbietern bleiben und Sie haben kompetentes Personal? Dann bringen wir Ihnen unser Wissen bei und Sie gehen den Weg zur Lösung allein weiter. Sie möchten Support vor Ort oder auch per Fernwartung?
Christian
 
Zurück
Oben