Finde den Fehler nicht

Homematic-, TCL- und Shell-Script, Toolchain, C, etc.

Moderator: Co-Administratoren

Antworten
Robert2522
Beiträge: 33
Registriert: 26.08.2013, 13:38

Finde den Fehler nicht

Beitrag von Robert2522 » 20.02.2019, 14:36

Ich bin ein Neuling im Bereich Script Programierung und habe da ein Problem.
Das Programm soll 3 Systemvariablen füllen mit:

> Leistungsanzeige Echtzeit
> Gesamtverbrauch in KW
> Energiekosten

Warum zum Geier ist Gesamtleistung und Kosten immer gleich ??? :(

Danke im voraus für Eure Hilfe :D

Code: Alles auswählen

! Daten holen
var Leistung = dom.GetObject("BidCos-RF.OEQ0947360:2.POWER").Value();
var Leistung_Gesamt = dom.GetObject("svEnergyCounter_64434_OEQ0947360:2").Value();
! Da 2 Phasen gleich viel Strom ziehen, wird nur eine überwacht und dann mal 2 gerechnet
Leistung = (Leistung * 2).ToString(2);
! Umrechnung von Watt in Kilowatt
Leistung_Gesamt = ((Leistung_Gesamt * 2) / 1000).ToString(2);
! Gesamt Verbrauch mal Stomkosten pro KW in Euro
var Kosten = (Leistung_Gesamt * 0.16).ToString(2);
! Zum Schluss werden die Variablen in Systemvariablen geschrieben
dom.GetObject("eGolf_Watt").State(Leistung);
dom.GetObject("eGolf_Watt_Gesamt").State(Leistung_Gesamt);
dom.GetObject("eGolf_Kosten").State(Kosten);
! zum Testen
! WriteLine(Leistung_Gesamt);
! WriteLine(Kosten);

gzi
Beiträge: 450
Registriert: 12.01.2015, 23:37
System: CCU
Hat sich bedankt: 15 Mal
Danksagung erhalten: 15 Mal

Re: Finde den Fehler nicht

Beitrag von gzi » 21.02.2019, 20:42

Hallo Robert, ich würde mal die ToString Umwandlungen rausnehmen.
gzi
Lichtsteuerung, Heizungssteuerung, Überwachung (Feuer, Wasser, Einbruch, Stromausfall, Heizungsausfall, Wetter, Kamera), Alarmierung (optisch, akustisch, mail, SMS, voice call) - CCU, diverse HM- und HMIP Aktoren und Sensoren, Rauchmeldeanlage, UPS, GSM-Alarmwähler, Zugriff aus dem Internet via HTTPS und htdigest authentication, kein Datenkraken-Interface (Google, Amazon, China-Cloud, BND, NSA...) - HomeMatic Sicherheits-Kompendium - Checkliste für Auswahl von IP Kameras - Vergleich aktueller HomeMatic Zentralen - und alle Antworten für das gesamte Universum und den Rest

Robert2522
Beiträge: 33
Registriert: 26.08.2013, 13:38

Re: Finde den Fehler nicht

Beitrag von Robert2522 » 22.02.2019, 10:29

gzi hat geschrieben:
21.02.2019, 20:42
Hallo Robert, ich würde mal die ToString Umwandlungen rausnehmen.
gzi
Super, Danke für die Hilfe :D :D

Das Problem ist in dieser Zeile:
> Leistung_Gesamt = ((Leistung_Gesamt * 2) / 1000).ToString(2);
Mit dem "ToString(2)" am Ende kann die nachfolgende Zeile nichts anfangen, warum auch immer... :? .
> var Kosten = (Leistung_Gesamt * 0.16).ToString(2);

alchy
Beiträge: 10754
Registriert: 24.02.2011, 01:34
System: CCU
Hat sich bedankt: 65 Mal
Danksagung erhalten: 673 Mal

Re: Finde den Fehler nicht

Beitrag von alchy » 22.02.2019, 13:36

Robert2522 hat geschrieben:
22.02.2019, 10:29
warum auch immer... :? .
Das Problem ist, das man mit Zeichenketten eben nicht rechnen kann und die Rega dir das nicht konsequent genug um die Ohren haut.

Alchy

Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.

© Sandra Pulsfort (*1974)

Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.

Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.

Antworten

Zurück zu „Softwareentwicklung für die HomeMatic CCU“