Daten direkt in eine mysql schreiben
Einklappen
X
-
hismastersvoice Wofür meinst du?Hilfe für die Menschen der Ukraine: https://www.loxforum.com/forum/proje...Cr-die-ukraine -
Hallo,
lasst mal beide. Ich stelle dann meinen kompletten Code inklusive Grafik Aufbereitung online, als erstes für die Energieflüsse. Dauert aber noch eine Woche, damit auch Daten da sind und man was sehen kann.
Gruss Uwe
Loxone für Wärmepumpe, Grundofen und Thermieanlage (Wasserbetrieb): 1 x Miniserver, 1 x 1-Wire
Loxone für Haus: 1 x Miniserver, 4 x Extension, 1 x 1-Wire, 1 x Dimmer, 1 x Enocean, 6 x Smart Socket Air, 2 x IrTrans
KNX: 4 x MDT 12fach Strommessaktor, 3 x MDT Taster, 2 x 3phasige Stromzähler, 7 x Wärmemengenzähler, 1 x Wasserzähler
PV-Anlage 11,78 mit EV, 6,3 Volleinspeisung, Batterie 10,7 kWh nutzbare Kapazität, SMA-EnergyMeter mit PI-UDPKommentar
-
Ich würde ein kleines PicoC Programm dazu machen, welches alle Werte sammelt und dann per UDP Stream verschickt. Jedes mal einen virtuellen Ausgang öffnen mit dem ganzen Overhead (http, tcp acks ...) statt einmal udp sollte langsamer sein.
Haus: Neubau Start 22.11.15, EG/OG, 2 Pers./Kind/Hund, Massivhaus, Heizlast 7,52 KW
Loxone: 1x MS, 2x Ext, 1x DMX
KNX: 2x 8er & 8x 4er MDT Glastaster (mit Temp), Rollläden MDT AKU-1616.01, MDT AMI-1216.01 True RMS Steckdosen, MDT Wetter, MDT SCN-P360K4.01 Präsenzmelder
Licht: DMX LED Beleuchtung (24V/230V)
Heizung: LWWP Waterkotte Basic BS 7010.5, Webinterface Modbus TCP
Projektseite: https://www.loxforum.com/forum/mein-...neubau-2015-16Kommentar
-
Hallo Martin,
Für die erste Sache, naemlich die Energieflüsse, reicht die Variante mit den Ausgangsverbindern aus, da die Werte nur einmal am Tage gesammelt werden müssen. Das ist nicht der Aufwand.
Gruss Uwe
Loxone für Wärmepumpe, Grundofen und Thermieanlage (Wasserbetrieb): 1 x Miniserver, 1 x 1-Wire
Loxone für Haus: 1 x Miniserver, 4 x Extension, 1 x 1-Wire, 1 x Dimmer, 1 x Enocean, 6 x Smart Socket Air, 2 x IrTrans
KNX: 4 x MDT 12fach Strommessaktor, 3 x MDT Taster, 2 x 3phasige Stromzähler, 7 x Wärmemengenzähler, 1 x Wasserzähler
PV-Anlage 11,78 mit EV, 6,3 Volleinspeisung, Batterie 10,7 kWh nutzbare Kapazität, SMA-EnergyMeter mit PI-UDPKommentar
-
Hallo Martin,
die Minutenwerte sind ein zweites Thema, das ist schon korrekt so mit über 50 Werten. Hast Du PHP Erfahrung? Oder würdest Du das mit PicoC nur machen? Ich halte von PicoC nichts, da man nie weiss, ob dadurch nicht irgendwelche Probleme bei dem einen oder anderen Benutzer dann auftreten können. -
Ich bin noch rel. neu im Loxone Umfeld und kann daher nichts zu PicoC Problemen sagen. Für mein Verständnis sollte aber ein Programm das sicher läuft (keinen Zugriff auf freigegebene Variablen, keine Memleaks usw) auch woanders vernünftig laufen. Vorausgesetzt es gibt keine Deadlocks aufgrund von z.B. Speichermangel. PHP ist nicht so mein Fall. Ich würde auf dem Rasp eher Windows 10 IOT installieren und dann in C# programmieren. Da bin ich zu Hause. Aber das ist ein anderes Thema.
-
Hallo,
also mal als Zwischenstand:
1.Variante mit den Virtuellen Ausgangsverbindern würde funktionieren, wenn man auf Serverseite die Daten nochmals aufbereitet und
mit den in der Datenbank vorhandenen Daten abgleicht.
Problem: Normalerweise sollen die ja den Wert senden, wenn er sich verändert. Das scheint zu 90% zu klappen. Aber wenn dann auf einmal Werte 23.24 in die Datenbank kommen, die da noch nichts zu suchen habe, frage ich mich, was das soll.
Verbrauchszähler: Wert des Vortages
Dieser Wert sollte um Mitternacht aktualisiert werden. Das wird er im Livesystem auch. Trotzdem wird der Wert bereits vor 24.00 Uhr mal gesendet, natuerlich mit dem falschen Wert.
Konsequenz: 1. Variante ist unbrauchbar.
Ich werde das ganze mal für die 24-Stunden Werte mit der REST Variante programmieren. Dann sehen wir weiter, Variante 3 steht dann hintenan.
Gruss Uwe
Loxone für Wärmepumpe, Grundofen und Thermieanlage (Wasserbetrieb): 1 x Miniserver, 1 x 1-Wire
Loxone für Haus: 1 x Miniserver, 4 x Extension, 1 x 1-Wire, 1 x Dimmer, 1 x Enocean, 6 x Smart Socket Air, 2 x IrTrans
KNX: 4 x MDT 12fach Strommessaktor, 3 x MDT Taster, 2 x 3phasige Stromzähler, 7 x Wärmemengenzähler, 1 x Wasserzähler
PV-Anlage 11,78 mit EV, 6,3 Volleinspeisung, Batterie 10,7 kWh nutzbare Kapazität, SMA-EnergyMeter mit PI-UDPKommentar
-
Hallo,
nur zu meinem besseren Verständnis: Loxstats erledigt doch u.a. genau die Anforderung, Daten in eine SQL-Datenbank zu schreiben, richtig?
Wie sind denn die Erfahrungen mit der Software? Das Thema wurde hier bereits angesprochen, die große Verbreitung scheint es jedoch nicht zu haben.
Gruß,
Leo-Kommentar
-
Hallo Leo,
ich habe meinem Bruder für seine Umgebung LoxStats förmlich "aufgezwungen" wegen der tollen Screenshots, ich bin aber sehr enttäuscht.
Es ist unglaublich langsam. Der Import von ein paar Statistikdaten eines Monats dauert EWIG (im Tagebereich).
Dadurch ist es auch kein Echtzeit-Statistik-Tool. Es gibt Pollerintervalle (z.B. täglich), die ENDLOS dauern (wenn es überhaupt durchläuft). Das heißt, du kannst dir bestenfalls die Werte von gestern anschauen.
Und - habe ich schon erwähnt? Es ist so LAAANGSAM. Ich habe das Tool jetzt 3x installiert, und es bis jetzt noch nie fertig gebracht, die gesamten Statistiken des Miniservers zu importieren. Gerade schaue ich seit geraumer Zeit wieder drauf, und die Statistik hört auf am 18. November.
Das Benutzerinterface ist nicht Mobilgeräte-tauglich.
Es kommen irgendwelche Popups, dass ich Preise definieren soll für meine Raumtemperaturen?? Die Meldungen lassen sich nicht abschalten.
Es gab seit meiner Erstinstallation vor einem Jahr kein einziges Update.
Aus meiner Sicht ist das Produkt tot. Mein Bruder, der die Software bezahlt hat, hat die Webseite noch nie aufgemacht.
lg, Christian
Hilfe für die Menschen der Ukraine: https://www.loxforum.com/forum/proje...Cr-die-ukraineKommentar
-
Hallo Leo,
deshalb bisher von mir kein Kommentar. Ich habe vor Jahren WIIPS programmiert, sowas stelle ich mir jetzt in besserer Form noch fuer Loxone vor. Ihr werdet das aber alle nicht kennen, das ist zu lange her, war eine Grafik-Auswertung mit Implementierung in IPSYMCON. Daher auch mein etwas anderer Ansatz wie Loxstats.
Gruss Uwe
Loxone für Wärmepumpe, Grundofen und Thermieanlage (Wasserbetrieb): 1 x Miniserver, 1 x 1-Wire
Loxone für Haus: 1 x Miniserver, 4 x Extension, 1 x 1-Wire, 1 x Dimmer, 1 x Enocean, 6 x Smart Socket Air, 2 x IrTrans
KNX: 4 x MDT 12fach Strommessaktor, 3 x MDT Taster, 2 x 3phasige Stromzähler, 7 x Wärmemengenzähler, 1 x Wasserzähler
PV-Anlage 11,78 mit EV, 6,3 Volleinspeisung, Batterie 10,7 kWh nutzbare Kapazität, SMA-EnergyMeter mit PI-UDPKommentar
-
In einer grösseren Umgebung schreibe ich von 6 Miniservern per Virtuellen Ausgang die Infos in eine MS SQL DB. Alles ohne irgend welche perf. Probleme.
Das Problem bei Digitalen Werten, dass man nur bei Ein eine Wiederholung senden kann (kann aber anders gelöst werden). Das ganze wird in einer eigenen Web Applikation verwaltet und ausgewertet und es kann auch darüber gesteuert werden. In erster Linie wird es aber für Auswertung und Alarmierung verwendet.
Hier einen Auszug von der Wärmeverteilung. Wenn mehr Infos gewünscht sind kann ich diese gerne geben.1 BildKommentar
-
Zitat von RetoIn einer grösseren Umgebung schreibe ich von 6 Miniservern per Virtuellen Ausgang die Infos in eine MS SQL DB. Alles ohne irgend welche perf. Probleme.
Das Problem bei Digitalen Werten, dass man nur bei Ein eine Wiederholung senden kann (kann aber anders gelöst werden). Das ganze wird in einer eigenen Web Applikation verwaltet und ausgewertet und es kann auch darüber gesteuert werden. In erster Linie wird es aber für Auswertung und Alarmierung verwendet.
Hier einen Auszug von der Wärmeverteilung. Wenn mehr Infos gewünscht sind kann ich diese gerne geben.
Könntest Du vielleicht anhand eines Beispiels aufzeigen, wie man einen Wert via VA in eine mysql Datenbank bekommt?
Interessant wäre ein Sreendump des VA und der php quellcode dazu.
Vielen Dank und schöne Grüße,
Andi
Gesendet von meinem ALE-L21 mit Tapatalk
Kommentar
-
Hallo Reto,
das wäre wirklich sehr interessant. Ich habe auch eine große Menge Werte, die ich gerne in meine mysql eintragen würde. Die Idee mit der Grafik ist auch genial.
Wäre nett, wenn du da nähere Infos zu geben könntest, wie es funktioniert. Mit Loxstats komme ich gar nicht klar und will die Daten unbedingt aus dem MS raushaben.
Vielen Dank und einen schönen Abend noch.
JogiKommentar
-
Hallo zusammen,
ich wende folgendes Skript auf einem Raspberry Pi an.
PHP-Code:<?php $servername = "localhost"; $username = "xxx"; $password = "xxx"; $dbname = "xxx"; $hum= $_GET["hum"]; $temp= $_GET["temp"]; $date = date_create(); $zeit= date('Y-m-d G:i:s'); $location= $_GET["location"]; // Create connection $conn = new mysqli($servername, $username, $password, $dbname); // Check connection if ($conn->connect_error) { die("Connection failed: " . $conn->connect_error); } $sql = "INSERT INTO data (hum,temp, timestamp, location) VALUES ('$hum','$temp','$zeit','$location')"; if ($conn->query($sql) === TRUE) { echo "New record created successfully"; } else { echo "Error: " . $sql . "<br>" . $conn->error; } $conn->close(); ?>
Kommentar
-
Eigentlich schon lustig. Jeder hat die gleichen Ideen und Wünsche...aber es gibt nichts auf dem Markt.
D.h. das Grundbedürfnis ist doch, die Langzeit-Datenhaltung (die historischen Werte/Statistiken) extern zu halten und zu visualisieren.
(Wieso: weil der MS nicht der richtige Ort ist, die Statistiken der letzen 10 Jahre aufzubewahren...nicht weil er es nicht könnte?!?)
Ich mache es so: MacMini ist 24h als Server im Betrieb. Darauf läuft u.a. ein Python-Skript, das die Statistik-Daten zwei, drei Mal am Tag Client herunterlädt (http://<miniserver>/stats/ -> Xml-Dareien), diese anschliessend in ein CSV-Format mittels XSLT-Transfomiert und anschliessend in eine Applikation mit DB (Visualisierung und Bearbeitung der Daten) importiert. Das Python-Skript löscht auch schön brav mittels FTP-Verbindung die Statistikdateien, die älter als x Monate sind um wieder Platz im MS zu schaffen.
Ich habe mir schon überlegt: Eigentlich müsste ein Rasperry oder Arduino Yun auch ausreichen für den (Python)Job die statistischen Daten abzuholen. Laufen ja auf Linux und haben netterweise auch Python integriert. D.h. dann müsste der MacMini nicht andauernd laufen. Was dann noch obsolet wäre, wäre eine gute (Web)Applikation auf dem Ding, dass die Daten visualisieren, verwalten und bearbeiten kann. Backup müsste ja dann auch noch irgendwie gemacht werden. Etc.
Lustigerweise erlebe ich dieses Bedürfnis nicht immer nur beim MS, sonder z.B. auch bei diversen Wetterstationen, bei denen man z.T. nur Manuel per USB-Kabel historische Daten sammeln kann. Zu beobachten gilt jedoch bei diesen Anwendungen, das in Zukunft wahrscheinlich viel in der Cloud gelöst werden wird. Danken wir nur an Fronuis...der Wechselrichter sendet Daten minimal alle 5 Minuten Daten in die "Fronius"-Cloud (wenn man will, das Fronuis weiss ob man gerade zu Hause ist ;-)... bei Smartmetering macht man aber ein Theater ;-) )Kommentar
-
Hallo Zusammen,
Vor ein paar Monaten habe ich hier auch schon einmal Hilfe zu diesem Thema gesucht.
Leider bin ich mit den Infos und Lösungsansätzen hier nicht wirklich weitergekommen.
Darum habe ich mir dann selber eine Lösung entwickelt.
Warum will ich Loxone-Daten in eine MySQL-Datenbank speichern?
- Umsetzung einer kompletten Heizungssteuerung mit Loxone
- Externe Langzeit-Datenhaltung aller Heizungs-Werte
- SD Karte des Miniservers schonen (ständige Schreib-Lese-Zugriffe für Statistik-Aufzeichnung und -Visualisierung vermeiden)
- Freiheit bei der Daten-Auswertung und Visualisierung (Vergleich von Daten, überlagerte Multicharts)
- Datensicherheit
Mein Lösungsansatz:
- Hardware: Selbstbau NAS (HP Proliant Microserver) mit Linux (Debian)
- Apache/MySQL auf NAS installiert
- MySQL-Datenbank mit 2 Tabellen (messpunkte, messwerte)
- cronjob: alle 5 Minuten wird ein php-script ausgeführt, dass die Daten vom Miniserver abholt, parst und in die DB schreibt
- Visualisierung der MySQL-Daten mit Highcharts
Aktueller Stand der Umsetzung:
Die Lösung läuft bei mir seit ca. 2 Monaten.
Etwas Finetunig bei der Visualisierung ist noch notwendig. Aber alles in Allem bin ich bis jetzt sehr zufrieden mit dem Ergebnis.
Wie bin ich dabei vorgegangen:
Zuerst habe ich mich mit dem Abholen der Daten vom Miniserver via http-request auseinandergesetzt.
Dabei hilft die Loxone-Doku: https://www.loxone.com/dede/kb/webservices/.
Inspiration und Musterdateien habe ich hier gefunden: http://www.nikolaus-lueneburg.de/201...isualisierung/
Wenn man von einem größeren Baustein, wie z.B. der "Intelligenten Raumregelung" mittels /all Werte anfordert muss man den jeweiligen Wert noch parsen um ihn verarbeiten zu können.
Die Werte habe ich in einem Heizungsschema und einem Grundriss (php-Seite) live visualisiert:
Danach habe ich auf Basis der o.a. Erkenntnisse ein php-script geschrieben, welches das Abholen und Schreiben der Loxone-Werte in die Datenbank erledigt.
Dieses Script wird nun per cronjob alle 5 Minuten auf dem NAS ausgeführt und schreibt damit alle 5 Minuten die ausgelesenen Werte in die DB.
Nun ging es an die Visualisierung via Highcharts.
Einen guten Ansatz für die Visualisierung von MySQL-Daten mit Highcharts habe ich hier gefunden:
http://fluuux.de/2013/02/mit-highcha...visualisieren/
Das Ergebnis der Hichcharts sieht in meinem Fall dann so aus:
Dokumentation:
Ich persönlich freue mich auch immer über gute HowTo's.
Das Thema ist aber doch etwas komplex.
Ein komplettes Howto zu diesem Thema zu schreiben ist ein riesen Aufwand. Die Zeit dafür habe ich aktuell leider nicht.
Ich wäre aber bereit meine Scripte hier komplett zu Verfügung zu stellen, falls jemand daran interessiert ist.
(Ich habe schon so viel in dieser Community bekommen, da wird es höchste Zeit, dass ich auch mal etwas zurückgebe :-)
Schöne Grüße,
AndiZuletzt geändert von Gast; 21.12.2016, 00:34.Kommentar
Kommentar