CCU Batteriekapazität

Hallo,

Frage an die HomeMatic Spezialisten:

Wie kann ich in IPS Batteriekapazität + Netzteilzustand + Batterie OK anzeigen lassen?

Ich hatte erst gedacht das diese Infos als Systemvariablen auf der CCU vorliegen, damit liege ich scheinbar falsch

Andreas

Hallo,

das sind Systeminterne Kanäle.
In der CCU sind es
System:1 (Netzteil, Batt.)
System:2 (Sabotagekontakt)

Hab grade versucht das als Instanz in IPS einzubinden.
IPS lässt aber System:1 nicht zu :frowning:
Anscheinend gehen nur Bidcos-RF und Bidcos-Wir…
Und die System dürften werder das eine noch andere sein…

Vielleicht kann da Paresy was machen…

Nachdem auch das Skript für die HM-Deviceabfrage nichts findet gibt es da vielleicht gar keinen Datenpunkt.

Man kann das - etwas mühsam zwar - aber trotzdem auswerten. Das Zentralennetzteil ist über Programme auf der CCU auswertbar, unter anderem auch die Batteriekapazität.

Ich habe daher ein Programm auf der CCU liegen welches den Status abfragt und in einer Systemvariablen speichert. Allerdings nur in 10% Schritten da ich nicht weiss wie man den absoluten Wert der Kapazität per Skript auslesen kann. Also habe ich einfach Bedingungen erstellt wie „wenn Kapazität grösser 80 und kleiner 90 Prozent dann setze Systemvariable auf 80%“. Und das dann für 10, 20, 30,…100%. Und wie CCU-Systemvariablen in IPS übernommen werden können ist hier im Forum ja schon dokumentiert.

Ähnliches wäre dann auch für den Netzteilstatus usw. möglich.

Noch was:Wenn jemand weiss wie man in einem TCL-Skript an die Werte direkt ran kommt wäre ich sehr an dieser Info interessiert. Ich kann mit der jetzigen Lösung zwar leben, ein Skript wäre aber natürlich die elegantere Lösung.

Hallo kronos,

deine Lösung würde mir auch langen. Will eigentlich nur wissen wie gut die Batterien sind und ob die CCU mit Strom versorgt wird, da keine Leitung zur USV vorhanden ist.

Andreas

PS

Hatte danach schon gegoogelt aber nichts zur Estellung von den Programmen gefunden

Laut EQ3 sollen vernünftige Batterien die CCU bis zu 10 Stunden am leben erhalten können.

Nur auf die Schnelle.

Die CCU ist eine richtige Wundertüte. Kaum sucht man etwas kommt auch schon was raus:

  • Lege auf der CCU eine neue Systemvariable mit dem Namen „Batteriekapazitaet“ an.

  • Neues Programm auf der CCU anlegen welches getriggert wird durch Geräteauswahl/Zentralennetzteil/Batteriekapazität. Du musst die virtuellen Kanäle einblenden sonst taucht das Gerät nicht auf. Ich habe mir zusätzlich noch einen Zeittrigger mit 5 Minuten-Zyklus eingerichtet.

  • Als Aktivität dieses TCL-Skript einbauen:


var BatLevel = dom.GetObject("System.System:1.BAT_LEVEL").Value()*100;

var SysVariable = dom.GetObject("Batteriekapazitaet");

SysVariable.State(BatLevel.State());

Kombiniert mir dem Ausleseskript für CCU-Variablen hast Du immer den genauen aktuellen Füllstand der Batterie ohne die umständlichen Prozent-Rasterungen. Vielleicht baue ich die anderen Netzteilstati auch noch ein.

Grüsse.

Ein Traum Nachbar :slight_smile:

Und der Rest:


var BatLevel = dom.GetObject("System.System:1.BAT_LEVEL").Value()*100;
var SysVariable = dom.GetObject("Batteriekapazitaet");
SysVariable.State(BatLevel.State());

var LowBat = dom.GetObject("System.System:1.LOWBAT").Value();
var SysVariable = dom.GetObject("Batterie Status");
SysVariable.State(LowBat.State());

var PowerSupply = dom.GetObject("System.System:1.U_SOURCE_FAIL").Value();
var SysVariable = dom.GetObject("Netzteil Status");
SysVariable.State(PowerSupply.State());

Auf der CCU noch zwei Booleans für LOWBAT und SOURCE_FAIL erzeugen. Namen gehen aus TCL-Skript hervor. Status FALSE = OK, TRUE = Fehlerstatus. Bei Bedarf entsprechende Trigger auf die hinzugekommenen Stati hinzufügen.

Grüsse.

Kannst Du mal bitte das genauer bezüglich der Zusatzangaben beschreiben.
Ein Screenshot der Variablendefinition reicht.

Ich habe noch nicht wirklich was auf der CCU gemacht.

Aber gerne doch.

Danke Dir.
Man sollte sich wirklich mal mit der CCU beschäftigen. Da liegt offensichtlich noch viel Potential. :slight_smile:

Hallo Kronos,

vielen Dank für die ausführliche Beschreibung. Werde ich am Wochenende ausprobieren.

Geht mir wie Boui - bisher noch nichts auf der CCU gemacht.

Andreas

Eine kleine Änderung für das CCU-Skript. Es funktioniert zwar nach wie vor einwandfrei, erzeugt aber (bei mir) unregelmäßig Fehlermeldungen im LOG-File der CCU. Warum und seit wann kann ich nicht nachvollziehen. Ich tippe mal auf eine Firmwareänderung da sich sonst nichts geändert hat.

Diese Version funktioniert erzeugt die Fehler nicht mehr:


boolean LowBat = 0;
LowBat = dom.GetObject("System.System:1.LOWBAT").Value();
dom.GetObject("Batterie Status").State(LowBat);

boolean PowerSupply = 0;
PowerSupply = dom.GetObject("System.System:1.U_SOURCE_FAIL").Value();
dom.GetObject("Netzteil Status").State(PowerSupply);

var BatLevel = 0;
BatLevel = dom.GetObject("System.System:1.BAT_LEVEL").Value()*100;
dom.GetObject("Batteriekapazitaet").State(BatLevel);

Hallo,

kannst du mir kurz erklären, wie man die Werte dann in IPS bekommt, da werde ich nicht ganz schlau raus.

Danke im Voraus

Grüsse

Thomas

Schau mal hier: Klick.

Danke.

Schon installiert und sieht gut aus