Seite 1 von 1

Prozent Wert Übergabe

Verfasst: 10.06.2019, 22:50
von Gmundner
Grüß Euch,

ich hoffe es kann mir jemand helfen oder den Bug ausbessern.
Wenn ich eine Variablen (Format Zahl 0 -100 Maßeinheit %) mit einem Programm an einen Rolladenaktor schicke, stimmen die Kommerstellen nicht.

Wenn ich in die Variable 80% schreibe fährt der Aktor auf 100% ich muß 0,80% eingeben dann fährt der Aktor auf 80%

Ich hoffe das es halbwegs verständlich beschrieben ist.

Beste Grüße Alfred

Re: Prozent Wert Übergabe

Verfasst: 10.06.2019, 23:23
von robbi77
Beispiele und Screenshots wären gut.
Ansonsten gilt:
1.0 = 100%
0.5 = 50%

Und ein , kennt die ccu glaube ich nicht einen . wohl schon

Re: Prozent Wert Übergabe

Verfasst: 11.06.2019, 01:16
von Gmundner
Danke für die schnelle Antwort

Die Homematic setzt das Komma ja selber, aber wird wohl so sein das 100% 1.00 ergibt.
Screenshot_2019-06-11 HomeMatic WebUI.png
Screenshot_2019-06-11 HomeMatic WebUI.png (23.59 KiB) 1540 mal betrachtet

Re: Prozent Wert Übergabe

Verfasst: 11.06.2019, 14:34
von Gmundner
Ok es funktioniert jetzt, ich habe ja die Werte mit IOBroker Javascript übertragen, da müssen die Werte aber vor der Übertragung in Zahlen konvertiert werden.

Gruß Alfred

Re: Prozent Wert Übergabe

Verfasst: 11.06.2019, 14:44
von 66er
Hallo Alfred,

hört sich nach Shelly 2.5 an. Korrekt?

Re: Prozent Wert Übergabe

Verfasst: 15.06.2019, 22:55
von Gmundner
Grüß Euch

Zu früh gefreut, hat nur funktioniert weil ich den Wert direkt zum Rolladen Aktor übertragen habe, über die Systemvariable der CCU funktionierts nur wenn ich den Wert /100 dividieren lasse.
Shelly 2.5 hmm kenn ich nicht. :)
Screenshot_2019-06-15 HomeMatic WebUI2.png
Screenshot_2019-06-15 HomeMatic WebUI2.png (10.88 KiB) 1383 mal betrachtet
Screenshot_2019-06-15 HomeMatic WebUI.png
Screenshot_2019-06-15 HomeMatic WebUI.png (6.32 KiB) 1383 mal betrachtet

Re: Prozent Wert Übergabe

Verfasst: 15.06.2019, 23:07
von Black
der Wert level des Rollandenaktors ist ein Float.
Sein Wertebereich ist immer 0..1 (die Werte, die unter EnumMetaData mit Min 0.000000 und Max 1.000000 definiert sind)

IObroker rechnet dieses intern um, so das dessen Common Wert von 0 bis 100% Scaliert

"common": {
"name": "SB_RolloAtelierFenster:1.LEVEL",
"type": "number",
"unit": "%",
"role": "level.blind",
"workingID": "WORKING",
"wrapper": "javascript.1.WRAPPER.ROLLO.AtelierFenster.LEVEL",
"def": 0,
"min": 0,
"max": 100,

"read": true,
"write": true
},
"native": {
"CONTROL": "BLIND.LEVEL",
"ID": "LEVEL",
"TYPE": "FLOAT",
"UNIT": "100%",
"DEFAULT": 0,
"FLAGS": 1,
"MAX": 1,
"MIN": 0,

"OPERATIONS": 7,
"TAB_ORDER": 0
},

Eine Systemvariable hat dieses interne Umrechnen natürlich nicht. Hier musst du natürlich den Bereich 0..1 übergeben.


Gruss, Black

Re: Prozent Wert Übergabe

Verfasst: 15.06.2019, 23:28
von Gmundner
Hallo Black,
Danke für die schnelle Antwort, dann wird´s ja endlich verständlich.

BG
Alfred