@liv-in-sky
Ja, das kommt schon sehr gut hin. Stellst du mir das zur Verfügung?
NEWS
Latest posts made by nightdoom
-
RE: Wählscheibe als Widget gesucht
-
RE: Wählscheibe als Widget gesucht
@homoran
Wie die Slotmaschine die du oben als Anzeige für den KM Stand gezeigt nur eben zum Ändern der Werte und Schreiben in einen Datenpunkt. Nur Anzeige bringt mir hier leider nichts -
RE: Wählscheibe als Widget gesucht
@liv-in-sky
Ok, schade. Das ist aber notwendig. Mal schauen. Wenn es so etwas nicht gibt dann eventuell doch drop-down werte -
RE: Wählscheibe als Widget gesucht
Hallo,
das sieht mal sehr gut aus. Das Widget ist brauchbar. Kann ich den Bereich der gültigen Eingaben noch irgendwo eingrenzen? An mein Termostat soll keiner 80°C oder so einstellen. Texte wären auch gut wenn die wo reinpassen. -
RE: Wählscheibe als Widget gesucht
@liv-in-sky
Genau so etwas würde ich suchen. Drop-down würde als Alternative auch gehen -
Wählscheibe als Widget gesucht
Hallo zusammen,
bin seid einiger Zeit dabei nur eine Bis zu bauen. Suche jetzt verzweifelt ein Widget in Form einer Wählscheibe wie bei einer Slotmaschine mit festen von - bis Werten, der aktuelle Wert wird im Auswahlfenster angezeigt. Standpunkte alle vorhanden. -
RE: Script Ladesteuerung PV Wallbox
@glasfaser
Habe das nun geändert. War das der einzige Fehler? Bei Goingelectric (da ist das angepasste her) habe ich nach was einfachem geschaut aber nix gefunden. Das genannte scheint ja noch komplizierter zu sein.schedule("*/30 * * * * *", function () { if (getState("modbus.0.coils.400_Ladefreigabe").val == false) { setState("modbus.0.coils.400_Ladefreigabe"/*Ladefreigabe*/, true); setStateDelayed("modbus.0.coils.400_Ladefreigabe"/*Ladefreigabe*/, true, 3000, false); } // Aktuellen Ladestrom in Variable schreiben Ladestrom_verfuegbar = 0; Ladestrom_verfuegbar = getState("modbus.1.inputRegisters.52_Ladestrom").val; Aktueller_Ladestrom = getState("modbus.0.inputRegisters.100_Strom").val; // Den neuen LS kennen wir noch nicht -> 0 Neuer_Ladestrom = 0; if (Ladestrom_verfuegbar <= 1610) { if (Ladestrom_verfuegbar >= 1000 && Ladestrom_verfuegbar <= 1610) { // 6A ist Minimum, und da wir immer ein bisschen übrig haben wollen, gehen wir bis unter die Grenze von 7A hoch (1610W) Neuer_Ladestrom = 6; } else if (false) { } } else if (Ladestrom_verfuegbar >= 1611 && Ladestrom_verfuegbar <= 1840) { Neuer_Ladestrom = 7; } else if (Ladestrom_verfuegbar >= 1841 && Ladestrom_verfuegbar <= 2070) { Neuer_Ladestrom = 8; } else if (Ladestrom_verfuegbar >= 2071 && Ladestrom_verfuegbar <= 2300) { Neuer_Ladestrom = 9; } else if (Ladestrom_verfuegbar >= 2301 && Ladestrom_verfuegbar <= 2530) { Neuer_Ladestrom = 10; } else if (Ladestrom_verfuegbar >= 2531 && Ladestrom_verfuegbar <= 2760) { Neuer_Ladestrom = 11; } else if (Ladestrom_verfuegbar >= 2761 && Ladestrom_verfuegbar <= 2990) { Neuer_Ladestrom = 12; } else if (Ladestrom_verfuegbar >= 2991 && Ladestrom_verfuegbar <= 3220) { Neuer_Ladestrom = 13; } else if (Ladestrom_verfuegbar >= 3221 && Ladestrom_verfuegbar <= 3450) { Neuer_Ladestrom = 14; } else if (Ladestrom_verfuegbar >= 3451 && Ladestrom_verfuegbar <= 3680) { Neuer_Ladestrom = 15; } else if (Ladestrom_verfuegbar >= 3681 && Ladestrom_verfuegbar <= 3910) { Neuer_Ladestrom = 16; } else if (Ladestrom_verfuegbar >= 3911 && Ladestrom_verfuegbar <= 4140) { Neuer_Ladestrom = 17; } else if (Ladestrom_verfuegbar >= 4141 && Ladestrom_verfuegbar <= 4370) { Neuer_Ladestrom = 18; } else if (Ladestrom_verfuegbar >= 4371 && Ladestrom_verfuegbar <= 4600) { Neuer_Ladestrom = 19; } else if (Ladestrom_verfuegbar >= 4601) { Neuer_Ladestrom = 20; } // Jetzt wissen wir den neuen Ladestrom! Alt=neu? if (Aktueller_Ladestrom != Neuer_Ladestrom) { // Oh, was Neues! Gleich an PV_Ladestrom geben! console.log((['Ladestrom verändert, wird von ',Aktueller_Ladestrom,' verändert auf ',Neuer_Ladestrom].join(''))); setState("modbus.0.holdingRegisters.300_Ladestromstaerke", Neuer_Ladestrom); } else { // Nix Neues, nix zu tun console.log((['Ladestrom gleichgeblieben, bleibt bei ',Aktueller_Ladestrom,' (neu wäre ',Neuer_Ladestrom,' gewesen)'].join(''))); } } else { // Minimalerzeugung nicht erreicht, also wird nicht nach PV-Überschuss geladen! if (getState("modbus.0.coils.400_Ladefreigabe").val == true) { setState("modbus.0.coils.400_Ladefreigabe"/*Ladefreigabe*/, false); setStateDelayed("modbus.0.coils.400_Ladefreigabe"/*Ladefreigabe*/, false, 3000, false); } } } else { // Wir sind nicht im AUTO Modus des Ladereglers, nix zu tun } } else { // Wechselrichter schläft, nix zu tun. } });
-
Script Ladesteuerung PV Wallbox
Hallo zusammen,
habe ein Skript gefunden für die Ladesteuerung vom E-Auto (Überschussladen). Alles läuft im Iobroker über Modbus. Modbus 0 ist die Ladesteuerung (Phonix Contact EV Charge Control) und der Stromzähler ist über Modbus 1 angeschlossen. Werte von Ihm bekomme ich rein (Überschuss) und der Controller für das Auto ist auch da inkl. richtiger Werte. Allerdings habe ich zwei Probleme:- Im Register 300 (diskreter Ausgang) versuche ich immer den Wert des Überschusses in Ampere zu übermitteln. Es wird auch der richtige Wert übermittelt (z.B. 6), er springt aber immer wieder auf 5 zurück (unter 6 keine Ladung). Keine Ahnung warum. Über Webif des Controllers klappt es ohne Probleme.
- Die Auswertung des Datenpunktes vom Stromzähler klappt nicht obwohl dort der richtige Wert ist und übertragen wird. Scheinbar immer=0.
Hier das angepasst Skript für JavaSkript noch dazu:
schedule("*/30 * * * * *", function () {
if (getState("modbus.0.coils.400Ladefreigabe").val == false) {
setState("modbus.0.coils.400_Ladefreigabe"/Ladefreigabe/, true);
setStateDelayed("modbus.0.coils.400_Ladefreigabe"/Ladefreigabe/, true, 3000, false);
}
// Aktuellen Ladestrom in Variable schreiben
Ladestrom_verfuegbar = 0;
Ladestrom_verfuegbar = getState("modbus.1.inputRegisters.52_Ladestrom").val;
Aktueller_Ladestrom = getState("modbus.0.inputRegisters.100_Strom").val;
// Den neuen LS kennen wir noch nicht -> 0
Neuer_Ladestrom = 0;
if (Ladestrom_verfuegbar <= 1610) {
if (Ladestrom_verfuegbar >= 1000 && Ladestrom_verfuegbar <= 1610) {
// 6A ist Minimum, und da wir immer ein bisschen übrig haben wollen, gehen wir bis unter die Grenze von 7A hoch (1610W)
Neuer_Ladestrom = 6;
} else if (false) {
}
} else if (Ladestrom_verfuegbar >= 1611 && Ladestrom_verfuegbar <= 1840) {
Neuer_Ladestrom = 7;
} else if (Ladestrom_verfuegbar >= 1841 && Ladestrom_verfuegbar <= 2070) {
Neuer_Ladestrom = 8;
} else if (Ladestrom_verfuegbar >= 2071 && Ladestrom_verfuegbar <= 2300) {
Neuer_Ladestrom = 9;
} else if (Ladestrom_verfuegbar >= 2301 && Ladestrom_verfuegbar <= 2530) {
Neuer_Ladestrom = 10;
} else if (Ladestrom_verfuegbar >= 2531 && Ladestrom_verfuegbar <= 2760) {
Neuer_Ladestrom = 11;
} else if (Ladestrom_verfuegbar >= 2761 && Ladestrom_verfuegbar <= 2990) {
Neuer_Ladestrom = 12;
} else if (Ladestrom_verfuegbar >= 2991 && Ladestrom_verfuegbar <= 3220) {
Neuer_Ladestrom = 13;
} else if (Ladestrom_verfuegbar >= 3221 && Ladestrom_verfuegbar <= 3450) {
Neuer_Ladestrom = 14;
} else if (Ladestrom_verfuegbar >= 3451 && Ladestrom_verfuegbar <= 3680) {
Neuer_Ladestrom = 15;
} else if (Ladestrom_verfuegbar >= 3681 && Ladestrom_verfuegbar <= 3910) {
Neuer_Ladestrom = 16;
} else if (Ladestrom_verfuegbar >= 3911 && Ladestrom_verfuegbar <= 4140) {
Neuer_Ladestrom = 17;
} else if (Ladestrom_verfuegbar >= 4141 && Ladestrom_verfuegbar <= 4370) {
Neuer_Ladestrom = 18;
} else if (Ladestrom_verfuegbar >= 4371 && Ladestrom_verfuegbar <= 4600) {
Neuer_Ladestrom = 19;
} else if (Ladestrom_verfuegbar >= 4601) {
Neuer_Ladestrom = 20;
}
// Jetzt wissen wir den neuen Ladestrom! Alt=neu?
if (Aktueller_Ladestrom != Neuer_Ladestrom) {
// Oh, was Neues! Gleich an PV_Ladestrom geben!
console.log((['Ladestrom verändert, wird von ',Aktueller_Ladestrom,' verändert auf ',Neuer_Ladestrom].join('')));
setState("modbus.0.holdingRegisters.300_Ladestromstaerke", Neuer_Ladestrom);
} else {
// Nix Neues, nix zu tun
console.log((['Ladestrom gleichgeblieben, bleibt bei ',Aktueller_Ladestrom,' (neu wäre ',Neuer_Ladestrom,' gewesen)'].join('')));
}
} else {
// Minimalerzeugung nicht erreicht, also wird nicht nach PV-Überschuss geladen!
if (getState("modbus.0.coils.400_Ladefreigabe").val == true) {
setState("modbus.0.coils.400_Ladefreigabe"/Ladefreigabe/, false);
setStateDelayed("modbus.0.coils.400_Ladefreigabe"/Ladefreigabe/, false, 3000, false);
}
}
} else {
// Wir sind nicht im AUTO Modus des Ladereglers, nix zu tun
}
} else {
// Wechselrichter schläft, nix zu tun.
}
});
Eventuell kann hier mir jemand helfen. Sitze da ratlos davor und finde den Fehler nicht.
Danke
-
RE: Goolge home Geräte über IoBroker steuern
@meister-mopper
Ja richtig. Ich will den umgekehrten Weg gehen. Über 1 Oberfläche alles steuern. IOBroker nach Google Home läuft auch wenn das nicht mein erhoffter Weg wäre -
RE: Goolge home Geräte über IoBroker steuern
@meister-mopper
War auch nicht so ganz der Tip. Habe nun meinen IoBroker Sensor auf Google Home integriert, wollte aber die GH Geräte in ioBroker haben. Die habe ich aber leider nicht drin, keines. Verbindung scheint ja da zu sein