Routine zum Zusammenlegen von zwei DB in eine dritte
Moderator: Ulrich
-
- Beiträge: 137
- Registriert: Di 6. Aug 2019, 22:06
- Hat sich bedankt: 4 Mal
- Danksagung erhalten: 7 Mal
Routine zum Zusammenlegen von zwei DB in eine dritte
Hi,
Ende nächste Woche kommt mein 2ter Plenticore
Jetzt möchte deren Daten addiert in eine dritte Datenbank schreiben
Hat dies jemand schon gemacht und kann mir eine Hilfestellung geben
Gibt es da vllt schon eine Routine?
Wie lese ich in einem PHP die Daten aus der DB aus und wie schreibe ich diese weg
Ich habe es zwar geschafft in einer Math zusätzlich Daten in die DB zu schreiben aber hier fehlt mir der Ansatz.
Da die beiden WR identisch sind gibt es vllt auch eine einfache Lösung.
Vllt geht es dann auch mit nur einer DB
Ende nächste Woche kommt mein 2ter Plenticore
Jetzt möchte deren Daten addiert in eine dritte Datenbank schreiben
Hat dies jemand schon gemacht und kann mir eine Hilfestellung geben
Gibt es da vllt schon eine Routine?
Wie lese ich in einem PHP die Daten aus der DB aus und wie schreibe ich diese weg
Ich habe es zwar geschafft in einer Math zusätzlich Daten in die DB zu schreiben aber hier fehlt mir der Ansatz.
Da die beiden WR identisch sind gibt es vllt auch eine einfache Lösung.
Vllt geht es dann auch mit nur einer DB
Cu Gerd
My Coffee is always #000000!
My Coffee is always #000000!
- Ulrich
- Administrator
- Beiträge: 6356
- Registriert: Sa 7. Nov 2015, 10:33
- Wohnort: Essen
- Hat sich bedankt: 163 Mal
- Danksagung erhalten: 936 Mal
Re: Routine zum Zusammenlegen von zwei DB in eine dritte
Das sollte mit einer _math Datei gehen. Vielleicht kann dir einer dabei helfen.
-----------------------------------------------------
Ulrich . . . . . . . . [ Admin ]
Ulrich . . . . . . . . [ Admin ]
-
- Beiträge: 137
- Registriert: Di 6. Aug 2019, 22:06
- Hat sich bedankt: 4 Mal
- Danksagung erhalten: 7 Mal
Re: Routine zum Zusammenlegen von zwei DB in eine dritte
Die Multi Version läuft bereits bei mir
Mir fehlt der Ansatz, wie ich zu den addierten Werten komme
Praktisch ging es auch über Variablen im Dashboard, ist aber nicht wirklich meine präferierte Lösung.
Mir fehlt der Ansatz, wie ich zu den addierten Werten komme
Praktisch ging es auch über Variablen im Dashboard, ist aber nicht wirklich meine präferierte Lösung.
Cu Gerd
My Coffee is always #000000!
My Coffee is always #000000!
-
- Beiträge: 137
- Registriert: Di 6. Aug 2019, 22:06
- Hat sich bedankt: 4 Mal
- Danksagung erhalten: 7 Mal
Re: Routine zum Zusammenlegen von zwei DB in eine dritte
Wie wäre denn der Ansatz, wenn ich den Abfrage- Inhalt der Kostal-Plenticore. PHP kopiere
Dazwischen auf die IP des 2ten Wechselrichter wechsele und dort die Werte mit den Werten des ersten Parts addiere
Wie müsste das aussehen ?
Dazwischen auf die IP des 2ten Wechselrichter wechsele und dort die Werte mit den Werten des ersten Parts addiere
Wie müsste das aussehen ?
Cu Gerd
My Coffee is always #000000!
My Coffee is always #000000!
- Ulrich
- Administrator
- Beiträge: 6356
- Registriert: Sa 7. Nov 2015, 10:33
- Wohnort: Essen
- Hat sich bedankt: 163 Mal
- Danksagung erhalten: 936 Mal
Re: Routine zum Zusammenlegen von zwei DB in eine dritte
Die einfachste Variante ist:
in der _math Datei die Werte des 1. Plenticore auslesen und mit den Werten des 2. Plenticore addieren und dann in ein seperates Measurement des 2. Plenticore zu schreiben.
Da die _math Datei von beiden Plenticore durchlaufen wird muss man in der Datei erst erkennen ob es der 1. oder 2. Plenticore gerade ausgelesen wird.
Ist aber alles machbar.
in der _math Datei die Werte des 1. Plenticore auslesen und mit den Werten des 2. Plenticore addieren und dann in ein seperates Measurement des 2. Plenticore zu schreiben.
Da die _math Datei von beiden Plenticore durchlaufen wird muss man in der Datei erst erkennen ob es der 1. oder 2. Plenticore gerade ausgelesen wird.
Ist aber alles machbar.
-----------------------------------------------------
Ulrich . . . . . . . . [ Admin ]
Ulrich . . . . . . . . [ Admin ]
-
- Beiträge: 137
- Registriert: Di 6. Aug 2019, 22:06
- Hat sich bedankt: 4 Mal
- Danksagung erhalten: 7 Mal
Re: Routine zum Zusammenlegen von zwei DB in eine dritte
Hi,
ich habe jetzt ein lauffähiges PHP, was auch in die richtige DB schreibt
was aber nicht funktioniert ist die addition der Daten
um dies ein wenig anschaulich zu machen, hier ein Auszug
Wo bitte steckt der Fehler
ich habe jetzt ein lauffähiges PHP, was auch in die richtige DB schreibt
was aber nicht funktioniert ist die addition der Daten
um dies ein wenig anschaulich zu machen, hier ein Auszug
Code: Alles auswählen
// Wechselrichter 1 ************************************************************************
$WR_IP = "192.168.178.53";
$WR_Port = "1502";
$WR_Adresse = "71";
$InfluxDBLokal = "db3";
$COM1 = fsockopen($WR_IP, $WR_Port, $errno, $errstr, 5); // 5 = Timeout in Sekunden
if (!is_resource($COM1)) {
$funktionen->log_schreiben("Kein Kontakt zum Wechselrichter ".$WR_IP." Port: ".$WR_Port,"XX ",3);
$funktionen->log_schreiben("Exit.... ","XX ",9);
goto Ausgang;
}
$rc = $funktionen->kostal_register_lesen($COM1,"0140","0002","Float");
$aktuelleDaten["WattstundenGesamt"] = $rc["Wert"];
$rc = $funktionen->kostal_register_lesen($COM1,"0142","0002","Float");
$aktuelleDaten["WattstundenGesamtHeute"] = $rc["Wert"];
$rc = $funktionen->kostal_register_lesen($COM1,"0146","0002","Float");
$aktuelleDaten["WattstundenGesamtMonat"] = $rc["Wert"];
$rc = $funktionen->kostal_register_lesen($COM1,"0144","0002","Float");
$aktuelleDaten["WattstundenGesamtJahr"] = $rc["Wert"];
// Wechselrichter 2 ***********************************************************************************************************************
$WR_IP = "192.168.178.53";
$WR_Port = "1502";
$WR_Adresse = "71";
$InfluxDBLokal = "db3";
$COM1 = fsockopen($WR_IP, $WR_Port, $errno, $errstr, 5); // 5 = Timeout in Sekunden
if (!is_resource($COM1)) {
$funktionen->log_schreiben("Kein Kontakt zum Wechselrichter ".$WR_IP." Port: ".$WR_Port,"XX ",3);
$funktionen->log_schreiben("Exit.... ","XX ",9);
goto Ausgang;
}
// hier soll dann addiert werden, was aber nicht geschieht
$rc = $funktionen->kostal_register_lesen($COM1,"0140","0002","Float");
$aktuelleDaten["WattstundenGesamt"] = ($aktuelleDaten["WattstundenGesamt"] + $rc["Wert"]);
$rc = $funktionen->kostal_register_lesen($COM1,"0142","0002","Float");
$aktuelleDaten["WattstundenGesamtHeute"] = $aktuelleDaten["WattstundenGesamtHeute"] + $rc["Wert"];
$rc = $funktionen->kostal_register_lesen($COM1,"0146","0002","Float");
$aktuelleDaten["WattstundenGesamtMonat"] = $aktuelleDaten["WattstundenGesamtMonat"] + $rc["Wert"];
$rc = $funktionen->kostal_register_lesen($COM1,"0144","0002","Float");
$aktuelleDaten["WattstundenGesamtJahr"] = $aktuelleDaten["WattstundenGesamtJahr"] + $rc["Wert"];
Cu Gerd
My Coffee is always #000000!
My Coffee is always #000000!
Re: Routine zum Zusammenlegen von zwei DB in eine dritte
Ich bin auch gespannt auf die Lösung.Gerd hat geschrieben: ↑Fr 4. Jun 2021, 13:13Hi,
ich habe jetzt ein lauffähiges PHP, was auch in die richtige DB schreibt
was aber nicht funktioniert ist die addition der Daten
um dies ein wenig anschaulich zu machen, hier ein Auszug
Wo bitte steckt der FehlerCode: Alles auswählen
// Wechselrichter 1 ************************************************************************ $WR_IP = "192.168.178.53"; $WR_Port = "1502"; $WR_Adresse = "71"; $InfluxDBLokal = "db3"; $COM1 = fsockopen($WR_IP, $WR_Port, $errno, $errstr, 5); // 5 = Timeout in Sekunden if (!is_resource($COM1)) { $funktionen->log_schreiben("Kein Kontakt zum Wechselrichter ".$WR_IP." Port: ".$WR_Port,"XX ",3); $funktionen->log_schreiben("Exit.... ","XX ",9); goto Ausgang; } $rc = $funktionen->kostal_register_lesen($COM1,"0140","0002","Float"); $aktuelleDaten["WattstundenGesamt"] = $rc["Wert"]; $rc = $funktionen->kostal_register_lesen($COM1,"0142","0002","Float"); $aktuelleDaten["WattstundenGesamtHeute"] = $rc["Wert"]; $rc = $funktionen->kostal_register_lesen($COM1,"0146","0002","Float"); $aktuelleDaten["WattstundenGesamtMonat"] = $rc["Wert"]; $rc = $funktionen->kostal_register_lesen($COM1,"0144","0002","Float"); $aktuelleDaten["WattstundenGesamtJahr"] = $rc["Wert"]; // Wechselrichter 2 *********************************************************************************************************************** $WR_IP = "192.168.178.53"; $WR_Port = "1502"; $WR_Adresse = "71"; $InfluxDBLokal = "db3"; $COM1 = fsockopen($WR_IP, $WR_Port, $errno, $errstr, 5); // 5 = Timeout in Sekunden if (!is_resource($COM1)) { $funktionen->log_schreiben("Kein Kontakt zum Wechselrichter ".$WR_IP." Port: ".$WR_Port,"XX ",3); $funktionen->log_schreiben("Exit.... ","XX ",9); goto Ausgang; } // hier soll dann addiert werden, was aber nicht geschieht $rc = $funktionen->kostal_register_lesen($COM1,"0140","0002","Float"); $aktuelleDaten["WattstundenGesamt"] = ($aktuelleDaten["WattstundenGesamt"] + $rc["Wert"]); $rc = $funktionen->kostal_register_lesen($COM1,"0142","0002","Float"); $aktuelleDaten["WattstundenGesamtHeute"] = $aktuelleDaten["WattstundenGesamtHeute"] + $rc["Wert"]; $rc = $funktionen->kostal_register_lesen($COM1,"0146","0002","Float"); $aktuelleDaten["WattstundenGesamtMonat"] = $aktuelleDaten["WattstundenGesamtMonat"] + $rc["Wert"]; $rc = $funktionen->kostal_register_lesen($COM1,"0144","0002","Float"); $aktuelleDaten["WattstundenGesamtJahr"] = $aktuelleDaten["WattstundenGesamtJahr"] + $rc["Wert"];
Mein laienhaftes Wisen würde sagen: "Bis dato liest Du nur aus"
Ich vermisse die Querrys zur DB
Wer ist online?
Mitglieder in diesem Forum: 0 Mitglieder und 0 Gäste