Hallo allerseits.
Ich hätte grosses Interesse an Bausteinen, die SQL-Befehle und Funktionen integrieren würden.
Auf diese Weise könnte man zum Beispiel Daten aus Steuerungen per Ethernet in (MS- / Sybase- /My-)SQL-Datenbanken schreiben, bzw. auch lesend aus den Steuerungen auf Datenbanken (Rezepturen etc.) zugreifen.
Ich bin der Meinung das wäre nützlich.
Ist das für noch mehr Personen interessant?
Gibt es so was schon offen/proprietär?
Wo??
Gruss
McNugget
Dass was du machen möchtest, ist problemlos mit Steuerungen von Phoenix Contact möglich
Hier gibt einen Bibliothek mit der man direkt mit MS-SQL und MySQL kommunizieren kann.
(Siehe File im Anhang)
[gelöscht durch Administrator]
Danke peewit.
Interessant.
Nun kommt die nächste Frage, gibt es das auch offen, so dass man es Herstellerunabhängig einsetzen kann?
Gruss
McNugget
die bibliothek gibt es nicht offen, da hier viel arbeit drinnen steckt, und das sonst keiner in dieser form bislang kann.
Alles klar..
Das war die Frage. :(
Ist wohl so etwas angedacht, mal SQL-bezogene Funktionenn in die OSCAT.lib zu implementieren?
Gruss
McNugget
ich habe schon daran einmal gedacht, das problem ist halt wie immer die zeit
technisch wäre es kein problem (die interne funktionsweise des direkten datenbankzugriffs ist mir bekannt)
es hätte sowieso erst das dann wirklich sinn, wenn die vorhandene oscat-network-lib (referenz-code existiert auf pcworx-basis) auch auf codesys und step7 portiert worden ist.
wir brauchen dazu nähmlich eine hardwareneutrale baustein-basis ,damit der ethernet-zugriff auch auf jeden system gleich funktioniert.
Hallo Peewit.
Sage mal, hat sich in der Zwischenzeit schon mal was Neues mit SQL ergeben??
Weiss irgendwer sonst noch neueres?
Wie kann ich mit einem Wago-Controller möglichst Open-Source in eine Sybase oder MS-SQL-Datenbank schreiben?
Gruss
McNugget
bezüglich SQL-Zugriff hat sich nichts getan (keine Zeit)
das wichtigste dabei ist, das man sich informiert, mit welcher Schnittstelle / Protokoll man man einfachsten den zugriff realisieren kann
und das man an die protokoll-doku herankommt
Hallo,
ich bin zwar neu hier, aber mich würde dieses Thema auch brennend
interessieren. Mal eine Frage vorweg, hat sich seit dem letzten Post
etwas an dem Zustand geändert ?
Wie könnte ich denn einfach testen, ob ich eine Verbindung von
Codesys auf eine SQL-Datenbank bekomme.
Gruß Vippy
zustand relativ unveraendert (aber nicht hoffnungslos)
ich habe schon ein wenig basisarbeit gemacht
es kann sein das in den naechsten monaten noch eine loesung fuer mysql kommen wird
jedoch nur fuer daten schreiben
das kann man dann einfach in kombination mit dem datalogger benutzen
das datenlesen ist noch mehr arbeit, und kommt eventuell spaeter
Moin,
Ich bin gerade in der Planung mir mit PHP und MySQL eine Visu zu bauen.
Mein Synology-NAS unterstützt beides und da fehlt mir nur noch die Schnittstelle zur Wago.
Hat sich schon mal jemand mit der WagoLibMySQL_03.lib beschäftigt?
Schicken Tach noch...
mit der lib kannst du genau das direkt tun ....
Super... dann bin ich ja auf dem richtigen Weg ;D
DANKE
Hey,
hab mich die letzten Tage da mal reingekniet und bei mir scheint es zu funktionieren.
Zwar hab ich noch eine Schnittstelle dazwischen die am Ende nicht mehr sein soll, aber
bekomme es hin Daten an eine SQL Datenbank zu schicken und diese dort einzutragen.
Das ganze mache ich über Visulisierung in Codesys und schreibe die Daten an ein PHP
Skript, das ich mir geschrieben habe. Das Eintragen ist dann nur noch eine Kleinigkeit
gewesen.
Werde mir jetzt aber auch mal die "WagoLibMySQL_03.lib" näher führen. Mal schauen was
die so kann ;D
hallo
unsere nächste lösung wird sein:
datalogger kann direkt in eine mysql datenbank schreiben
mit optionalen automatischen löschen von daten die ein gewissen alter überschritten haben
Ich habe mal eine Frage und zwar weiss jemand zufällig,
wie die Syntax ist um sich auf dem MySql Server zu verbinden.
Also einen Socket habe ich geöffnet, aber jetzt stehe ich vor dem
Problem mich mit der Datenbank zu authoriesieren mit Benutzername
und Passwort.
Wie könnte ich es denn herausfinden welche Daten und wie ich diese
Daten senden muss ? Habe es mir mit Wireshark angeschaut, wie die
gesendeten Daten aussehen, aber bekomme immer die Fehlermeldung
"Response Error 1156" das heisst das die Daten nicht in der richtigen
Reihenfolge gesendet werden.
Wäre super hilfreich, wenn ihr mir helfen könntet
hallo vippy
die ganze geschichte ist nicht ganz so einfach wie du denkst
alleine die anmeldung bei mysql 4.1 ist nicht so einfach, da du hier sha1-encryption für das passwort anwenden musst.
wenn du kein fortgeschrittener programmierer bist, dann solltest du die sache lassen
bis das wir eine oscat-lösung haben, empfehle ich dir die wago_sql bibliothek
eine beschreibung des protokolls findest du auf der homepage von mysql
Ja Mahlzeit,
ich bin jetzt seit ein paar tagen dabei die Wago_mysql03 in mein Projekt einzubinden, nur leider schein da noch etwas anderes zu fehlen.
Der Kompiler bricht immer mit der Meldung:"unbekannter Typ 'SHA1_Context' ", das ist eine Schnittstelle vom MYSQL_Scamble Baustein.
Weiß zufällig jemand, welche LIB ich dafür noch gebrauchen könnte?
Schicken Sonntag noch...
Der Schwenn
ganz einfach
du brauchst die WagoLibMySQL_03.lib und WagoLibSHA1.lib
DANKESCHÖN!
Funktioniert Super!
Dann werd' ich mal versuchen, ob ich auch ein paar Daten auf der MySQL ablegen kann.
;) ;)
kann mir jemand sagen, ob diewagosql lib auch auf einem beckhoff Controller funktioniert?
Danke!
das läuft nicht, da es keinen einheitlichen zugriff auf ethernet gibt
jeder hersteller hat eine andere schnittstelle bzw. bibliothek die inkompatibel zueinander sind.
keine chance
aber .......
es wird sowas mit oscat network geben
ich bin gerade am programmieren
es wird eine lösung in verbindung mit unseren data_logger paket geben
ich habe eine ansich schon funktionierende version am testen , und muss noch ein wenig herumschrauben
allerdings momentan nur das speichern von daten
die datenabfrage aus einer datenbank mache ich erst später
was willst du denn genau machen ?
ich möchte Messwerte, Zugriffsdaten, und allgemein Benutzungsdaten in eine Datenbank schreiben.
Z.B. wer ist wann wo hineingegangen (eKey), wann hat wo wie lange das Licht gebrannt, Stromverbrauch (Messklemme), Wasserverbrauch und dann natürlich Temperaturen der Heizung, Lüftung, ...
Ich wäre ja schon mit einem file zufrieden, aber bis jetzt habe ich nicht herausgefunden, wie ich ein file auf ein Netzwerklaufwerk schreiben und modifizieren kann:
- File erstellen nach bestimmten Schlüssel
- File öffnen
- Datensatz (Zeile) anhängen
- File schreiben
geht das?
im prinzip ja
schau dir doch mal in der network.lib das kapitel data_logger an
alles das was man hier machen kann, also daten aufzeichnen das kannst du dann auch in eine mysql datenbank schreiben
file zugriff
auch das kannst du in einem gewissen rahmen mit dem datalogger paket machen (DLOG_FILE_CSV)
die erzeugten dateien kannst du dann automatisch auf einen ftp-server übertragen oder per email versenden
Habe mir das jetzt mal durchgelesen.
Nur zum Verständnis: Die csv Datei bleibt im Arbeitsspeicher und wird nicht auf das Filesystem meines CX Controllers geschrieben, richtig?
Da die Schreibzyklen auf dem CX9010 ja begrenzt sindmöchte ich das nicht. Und den CF-Karten-Slot habe ich nicht. Nicht hanz klar ist mir allerdings, warum beim Filenamen D:/ steht...
Prozessdaten: Es steht, es können bis zu 255 Prozessdaten in eine csv gespeichert werden.
Muss ich da auf etwas aufpassen, wenn ich z.b. 255 String-Daten mit je z.B. 100 Byte schreiben will, oder gibt's da ein Limit?
Ist #R die einzige Variable im Dateinamen, oder kann ich den komplett dynamisch gestalten. Ich würde die Dateien gerne mit einem Präfix und dann Datum & Uhrzeit benennen.
schreiben auf filesystem
du schreibst ja nicht 100.000 mal auf den selben sektor
dem kannst du ja auch noch entgegenwirken, indem du verschiedenen dateien nutzt die du im kreisverum immer wieder überschreibst
mach dir keine sorgen..... das ist kein wirkliches problem !
wir haben projekte am laufen ,wo alle 15 minuten eine datei neu erzeugt wird
und in summe bis zu 3000 dateien gleichzeitig existieren
es ist hier noch nie ein flash-speicher defekt worden !
d:/ steht deswegen drinnen , weil ich das auf einen winxp (Twincat soft-plc getestet habe, und man da alle laufwerke frei nutzen kann
c:/ d:/ usw...
bei einer klassischen sps musst du das laufwerk einfach weglassen, das es nur ein stanarddrive gibt
-----------------------------------------
die daten beim datenlogger musst du dir wie eine excel-tabelle vorstellen
die spalten sind die verschiedenen werte die du zu einem bestimmten zeitpunkt speicherst, und es können maximal 255 spalten verwendet werden
das ist mehr als überhaupt sinnvoll ist.
und es können dann im prinzip unendlich viele (solange speicher vorhanden ist) zeilen (momentaufnahme der prozesswerte) hinzugeüfgt werden
-----------------------------------------
präfix datum / uhrzeit geht natürlich
den dateinamen kannst du frei gestelten , du hast alle freiheiten die die der baustein DT_TO_STRF gibt (in doku nachlesen !)
-----------------------------------------
hallo peewit
vielen dank für deine Antworten.
Hab gerade gemerkt, dass ich für all diese Funktionen den TCP/IP Server vom Hersteller brauche.... (cx9010)
naja, jetzt muss ich erst mal sehen, wie ich an den rankomme....
Hey b.b.
ich hab da mal eine Frage zu Deinem eKey.
Wenn nix dazwischenkommt, wann wird nächste Woche meine neue Haustür geliefert und eingebaut.
Wir haben uns auch für den eKey Fingerprint ab Werk entschieden.
Wie hast Du das System an Deine Steuerung angebunden, bzw. wie bekommst Du die Daten von dem eKey System in Deine Steuerung?
Ich wünsche noch ein schönes SONNIGES Wochenende
Der Schwenn
hallo schwenn
ich habe das neue UP- System mit dem ekel Multi REG
ich habe vier Sensoren an ein Steuergerät (Multi) anschliessen und an das Steuergerät 4 Relais.
Jetzt habe ich an das Steuergerät SPS-Eingänge gelegt und schalte damit Haustüre, Nebeneingangstüre und die beiden Garagentore.
In ca. 2 Monaten gibt es dann von ekel einen UDP Umsetzer, der alle meine (4) Sensoren auswerten kann. Der schickt mir dann bei jedem Scanvorgang ein Telegramm an die Steuerung.
Mit dem Multi Steuergerät kann ich also die Finger meiner Lieben einfach verwalten. So oft ändert sich da ja nichts....
Und mit dem UDP Teil Finger- und Sensorspezifisch Aktionen triggern.
Somit muss weder ein externer PC laufen (ekey net) noch muss man die Template Verwaltung in der SPS programmieren. Und da das Protokoll proprietär ist, ist das gar nicht so einfach.
Der einzige Nachteil, der mir soweit aufgefallen ist ist dass ich die LED im Sensor nicht nach belieben anzünden kann, sondern diese angeht, wenn ein Finger erkannt wurde und eine Regel positiv ausgeführt wurde (Relais). Das heisst aber noch nicht, dass ich dann auch in der SPS etwas mit dem Signal tue.
Aber da lass ich mir auch noch was einfallen.
Jetzt haben wir diesen Thread ordentlich gehijacked, vielleicht kann man(n) das ja auftrennen.
beste grüße
Guten Morgen,
da ich die vollintegrierte Variante des Zugangssystems bekomme, werde ich nicht all zu viele Informationen vom System bekommen, aber mal sehen... irgendetwas fällt mir dann sicherlich auch noch an Spielerei ein ;)
Schicken Sonntag an ALLE
hello Peewit,
Thanks to the team for the awesome OSCAT library! I am very interested in the SQL function as part of the DLOG_FILE_TO using SQL. You mentioned above that it was being worked on. Is there a Library function for using the datalogger to send to SQL database?
My intention is to send my datalogs using DLOG to SQL from a M258 Schneider PLC.
Thanks!
http://www.oscat.de/community/index.php/topic,1872.msg9862.html#msg9862
with data logging to a MySQL database
Thanks peewit!
I hope this is not a dumb question. How do I open ".lib" files in somachine? Typically I have been finding ".library" files, and they work great! Are you able to point me to where the ".library" version exists?
wmoulton,
I updated my post for version 1.30. Use link below for the updated code.
http://www.oscat.de/community/index.php/topic,1784.0.html
I have successfully downloaded the library. I am trying to implement the DLOG_STORE_MYSQL. I can use the blocks from the library. I am having issues with the proper implementation, so I tried to use the demo files, but they will not open in somachine. Do you have an updated documentation PDF? I have searched for it for Network 1.3, but I have not found it.
Thank you for all of your help!
hi
here you can download the latest network 1.30 beta lib and the dokumentation.zip (only in german available)
http://www.oscat.de/community/index.php/topic,1872.0.html
Hallo zusammen,
ich soll grade ein Projekt mit dem Raspi in der Codesys Umgebung realisieren.
Dazu benötigen wir eine Anbindung an eine Datenbank.
Wir würden das gerne mit mySql machen.
Gibt es dazu schon weitere Infos.
Hat schon jemand was mit ODBC realisiert?
Bin über jede Hilfe dankbar.
Vielen Dank schon mal.
GZ
hallo
so wie es aussieht ist schon weihnachten für dich !
genau das was du haben willst habe ich schon vor langer zeit mal programmiert !
die sps kommuniziert direkt mit dem mysql server
http://www.oscat.de/community/index.php/topic,1872.msg9862.html#msg9862
Einige User haben das mit Raspi und linux + mysql als datenlogger praktisch im einsatz
Siehe doku - >kapitel datalogger
hallo peewit,
vielen dank schon mal...ich probier das die tage gleich mal aus...:-)
auf jeden fall wollte ich euch immer schon mal sagen, dass ich die oscat libs prima finde und ich euch für die tolle arbeit danke.
herzliche grüße
GZ
Hey Leute,
ich habe mir hier alles mal durch gelesen und auch die Codesys_Network_130.lib heruntergeladen und versucht die MySQL Verbindung aufzubauen. Nur habe ich einen Fehler in der Bibliothek und zwar, dass mir die Basic 3.33 Library fehlen würde und dadurch könnten die anderen 184 Fehler zustande kommen. Hab dann versuch die Library Basic 3.33 Manual hinzuzufügen, aber dann kommt die Fehlermeldung Namenbaum Konflikt, dass ist ja auch natürlich, da die Name dann zwei mal in der Bibliothek vorhanden ist. Habt ihr für mich einen Tipp wie ich das beheben könnte, oder fehlt mir noch irgendeine Datei? Ich möchte gerne mit dem Raspberry Pi 2 über Codesys in einer Datenbank die Daten auslesen, perfekt wäre auch wenn ich in die Datenbank was schreiben könnte, aber lesen reicht mir auch vollkommend aus. Ich hoffe ihr könnt mir da irgendwie weiter helfen ;)
Lieben Gruß
Geräte Information
- Raspberry Pi 2 mit Codesys 3.5.6.20
- Codesys V3.5 SP6 Patch 3
[gelöscht durch Administrator]
Wollt euch bescheid geben, das ich den Fehler beheben konnte. Dank des neuen Patches von Codesys kann man jetzt besser die Library bearbeiten. Ich musste erstmal alle OSCAT Library löschen und dann die Library nach und nach wieder einbinden angefangen mit OSCAT_BASIC 3.33 und dann OSCAT_NETWORK_1.30.
Lieben Gruß
Hallo zusammen!
Ich bin momentan auf der Suche mit der codesys HMI 3.5.8 auf eine MySQL Datenbank sowohl lesend wie auch schreibend zuzugreifen. Jetzt bin ich hier im Forum auf die OSCAT_NETWORK_1.30 gestoßen, und die sieht sehr vielversprechend aus. Hat denn jemand bereits Fortschritte gemacht beim SQL Lesezugriff?
Konkret möchte ich die Alarmlisten aus mehreren Controllern in einer SQL-Datenbank zusammenführen und in der HMI auswerten. Später dann auch Trends.
Ich bin für jede Anregung dankbar!
Viele Grüße
mysql zugriff ist vorhanden (network.lib 1.30) getestet aber nur mit codesys 2.x, twincat 2.x und pcworx
mittels der datalogger bausteine ist ein sehr einfaches aufzeichnen von werten in mysql möglich
lesen ist zwar auch prinzipiell möglich, aber dazu habe ich keinen einfachen baustein gemacht
da es keine universelle lösung gibt um daten zu lesen