NEWS
Shuttercontrol Vis für Abschattung
-
Hallo,
hat jemand eine Anzeige in Vis, wenn die Abschattungen aktiv sind und wenn ja, wie habt Ihr das gelöst?
Bei mir haben die Abschattungsprogramme entsprechende Variable auf true/false gesetzt.
Sieht so aus:Ich habe das jetzt mit Blockly und Prüfung auf Rollobehanghöhe sowie Azimutprüfung gelöst. Aber vielleicht gibt es da ja eine bessere Lösung.
-
Hallo, @MartyBr ,
ich triggere auf das Azimut mit Änderung. In der Bedingung frage ich dann den Azimutwert zwischen z.B. 130° und 132° ab und prüfe zusätzlich über eine und-Verknüpfung die Behanghöhe der Rollos, die an der jeweiligen Himmelsrichtung "beteiligt" sind. Habe mir unter 0_userdata.0 drei Logikwerte angelegt (Abschattung_Ost, Abschattung_Sued und Abschattung_West). Die werden dann durch die zugehörigen Blocklys gesetzt. In der VIS habe ich dann meine Anzeige über Signalbilder gesteuert (grün für true und rot für false).
Ich stelle hier mal mein Blockly für die Südseite rein. Kannst es Dir ja mal importieren. Vielleicht finden wir für den Trigger ja etwas besseres.<block xmlns="http://www.w3.org/1999/xhtml" type="on" id="W^6p1=n/iqO145@4p_0l" x="-1037" y="-487"> <field name="OID">shuttercontrol.0.info.Azimut</field> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <statement name="STATEMENT"> <block type="controls_if" id="uT7B9h}1-R4Ba``=_*jP"> <mutation elseif="1"></mutation> <value name="IF0"> <block type="logic_operation" id="qXo;Ex),+$OksSP#i7fI" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_operation" id="|g;?*mE_/hCoaj6Ht9i$"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="z]?M:ur={8b3a6uT0%2v"> <field name="OP">GTE</field> <value name="A"> <block type="get_value" id="Y|P7,3?^8PLka)O:,*zS"> <field name="ATTR">val</field> <field name="OID">shuttercontrol.0.info.Azimut</field> </block> </value> <value name="B"> <block type="math_number" id="],0r%Dn5E+!nOfTi%!m_"> <field name="NUM">130</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="PpMHe~1Sph1Tig2AsZ=7"> <field name="OP">LTE</field> <value name="A"> <block type="get_value" id="N4{,vq#o9uF_Yz?s3{m%"> <field name="ATTR">val</field> <field name="OID">shuttercontrol.0.info.Azimut</field> </block> </value> <value name="B"> <block type="math_number" id="x.-PK=U39~2NCLRf6B)b"> <field name="NUM">132</field> </block> </value> </block> </value> </block> </value> <value name="B"> <block type="logic_operation" id=";Rr,r5){L8s[Vy5%w%w@" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_operation" id=".P^R`)]jF8=gz{`aQQ0r" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="#?mp-=)8$hQ?nW=Htw[L"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="==7^toH}VfbUR1t,R@H*"> <field name="ATTR">val</field> <field name="OID">hm-rpc.1.OEQ1314418.1.LEVEL</field> </block> </value> <value name="B"> <block type="math_number" id="!~}+_%($$KAXAn%,9gjY"> <field name="NUM">50</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id=":vZ9JsH4rQBeVX|HPV=h"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="L[(~3i3jA@G_x=xvEa#|"> <field name="ATTR">val</field> <field name="OID">hm-rpc.1.PEQ0012029.1.LEVEL</field> </block> </value> <value name="B"> <block type="math_number" id="6ZG)C_7K)K~xE!K_UCa9"> <field name="NUM">50</field> </block> </value> </block> </value> </block> </value> <value name="B"> <block type="logic_operation" id="tIQ)Wat*5$G4YjBlCtBd" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="EKjF(SV;:JHPEuPmLC5J"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="^ozkSdeukMTYcy551._i"> <field name="ATTR">val</field> <field name="OID">hm-rpc.1.PEQ0011956.1.LEVEL</field> </block> </value> <value name="B"> <block type="math_number" id="m=FsHz59DUQ]btN3Vxo("> <field name="NUM">50</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="Uu.=-8T^hC2!p#ATY{YT"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id=":-w8Tg.}(zCq}KYGe^H#"> <field name="ATTR">val</field> <field name="OID">hm-rpc.1.OEQ1314513.1.LEVEL</field> </block> </value> <value name="B"> <block type="math_number" id="L-Z([W?xYCgdoKqF]z/*"> <field name="NUM">50</field> </block> </value> </block> </value> </block> </value> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="EF]93l,0:L)vl,5bM]V-"> <mutation delay_input="false"></mutation> <field name="OID">0_userdata.0.Abschattung_Sued</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="H8%EMb_8B~~,w?Je+|0v"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="pushover" id="Xxd}0++#rSZKERDeg)S;"> <field name="INSTANCE"></field> <field name="SOUND"></field> <field name="PRIORITY">0</field> <field name="LOG"></field> <value name="MESSAGE"> <shadow type="text" id="=]cLOEoCfh]MSn~e)j?n"> <field name="TEXT">Rollladen Abschattung Süd Beginn</field> </shadow> </value> </block> </next> </block> </statement> <value name="IF1"> <block type="logic_operation" id="n)b;OjDP6p,st34T?_bh" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_operation" id="SUAFPWZUjh@:DQ,~crn["> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="lZ|A((F[K@Hno|%h}D,I"> <field name="OP">GTE</field> <value name="A"> <block type="get_value" id="I#qjI+=*,oop/e2ZTnCp"> <field name="ATTR">val</field> <field name="OID">shuttercontrol.0.info.Azimut</field> </block> </value> <value name="B"> <block type="math_number" id="e[h](8`$V0kJNyW$=$Rp"> <field name="NUM">230</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="3#:^f%GK48Pwg(Rf9W_z"> <field name="OP">LTE</field> <value name="A"> <block type="get_value" id="]:qd58U11xE;g/kLXSg4"> <field name="ATTR">val</field> <field name="OID">shuttercontrol.0.info.Azimut</field> </block> </value> <value name="B"> <block type="math_number" id="hT;i/=aizjB]5;d6GUND"> <field name="NUM">232</field> </block> </value> </block> </value> </block> </value> <value name="B"> <block type="logic_operation" id=":kDgS~5Df8G.Lqi$Envn" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_operation" id="w02.,V)OE)0Y!:KEM?i{" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="M,rd]+c=Cm^}W+M,^BjA"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="A+)ss~(D~WI0fKH+Zplr"> <field name="ATTR">val</field> <field name="OID">hm-rpc.1.OEQ1314418.1.LEVEL</field> </block> </value> <value name="B"> <block type="math_number" id="KDQzNB}dXd91LS}~jpjg"> <field name="NUM">100</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="Nb_S=V.0P|ld%?U{xH{-"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="~}D?:Z#Ey!xL5F2`nK5f"> <field name="ATTR">val</field> <field name="OID">hm-rpc.1.PEQ0012029.1.LEVEL</field> </block> </value> <value name="B"> <block type="math_number" id="J[BSxrqu#MkdR(8?_zqC"> <field name="NUM">100</field> </block> </value> </block> </value> </block> </value> <value name="B"> <block type="logic_operation" id="T{U7%vZE(beYL#4HyHyt" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="._UVJ:o@EzKa3Nq#)r3:"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="a`LvqUkw=3Yxnja[!7/9"> <field name="ATTR">val</field> <field name="OID">hm-rpc.1.PEQ0011956.1.LEVEL</field> </block> </value> <value name="B"> <block type="math_number" id="/xNL+[ntlc:w5_(|%hlM"> <field name="NUM">100</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="p-OyT?;wpQ91?fvy(hs5"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="rQpHwh!ur-wN9M[eZg)D"> <field name="ATTR">val</field> <field name="OID">hm-rpc.1.OEQ1314513.1.LEVEL</field> </block> </value> <value name="B"> <block type="math_number" id="}NDg$vD-1x3@AYShKdZ:"> <field name="NUM">100</field> </block> </value> </block> </value> </block> </value> </block> </value> </block> </value> <statement name="DO1"> <block type="control" id="?5M=}ZDnS9}3uBNbfDnD"> <mutation delay_input="false"></mutation> <field name="OID">0_userdata.0.Abschattung_Sued</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="%aHrchb1|W0Li:e/a/KG"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="pushover" id="-SfdsfRA|%T~_U%Hi1^y"> <field name="INSTANCE"></field> <field name="SOUND"></field> <field name="PRIORITY">0</field> <field name="LOG"></field> <value name="MESSAGE"> <shadow type="text" id="3z^0p/fD(1fE21YbcDO@"> <field name="TEXT">Rollladen Abschattung Süd Ende</field> </shadow> </value> </block> </next> </block> </statement> </block> </statement> </block>
Zusätzlich schicke ich noch Pushovernachrichten, das kannst Du aber löschen, wenn Du es nicht brauchst.
Ist mal der erste Versuch, das über iobroker abzubilden. Besser wären natürlich DP im Adapter selber, aber das ist nice to have. -
@opossum
Ich mache es ähnlich. Ich habe 4 Skripte (Ost, Süd, West und HWR), wo ich die Beschattungswerte setze (HWR weil ich dort rigoroser Beschatte).
Ich benutze hier Azimut, Differenztemperatur in Abhängigkeit zur Außentemperatur und Innentemperatur. Das Ganze dann "und"-Verknüpft. Ich bekomme es nur leider nicht dem Adapter untergeschoben.@simatec
Gibt es eine Möglichkeit, einen Datenpunkt als Trigger für die Beschattung zu nutzen? Vielleicht in einer nächsten Version?
Oder könnenalle Auswahlmöglichkeiten im Sonnenschutz "und"-Verknüpft werden? Das ist für mich die letzte Lücke im Adapter. -
@MartyBr sagte in Shuttercontrol Vis für Abschattung:
Oder könnenalle Auswahlmöglichkeiten im Sonnenschutz "und"-Verknüpft werden?
Ab Version 0.6.0 sind Lichtsensor und Außentemperatur "und verknüpft"
Der Rest war es schon ...Oder was meinst du genau mit "und Verknüpft"?
-
@simatec
Genau das meine ich. Sehr gut, dann muss ich nur noch auf die Sonne warten.
Vielen Dank.P.S.
Ich habe nun auf deinen Adapter umgestellt und meine eigene Programmierung deaktiviert. -
-
@negalein
Ich bin auf Grund der Probleme mit der Beschattung (Level schaltet auf manuell, obwohl nicht manuell betätigt) wieder auf meine Eigenprogrammierung in Homematic umgestiegen.
Ich kann dir aber heute Abend eine View hochladen. Die basiert auf sigi234. -
@martybr sagte in Shuttercontrol Vis für Abschattung:
Level schaltet auf manuell, obwohl nicht manuell betätigt
Ja, dieses Problem hatte ich auch. Wurde aber mittlerweile im Adapter gelöst.
Ich kann dir aber heute Abend eine View hochladen
Danke
-
Hallo, @negalein,
ich habe den Adapter bei mir nicht im Einsatz, weil bei mir die Abschattung nicht zu 100% funktionierte. Habe daher auch noch keine VIS gebaut. Ich würde den Adapter aber gern einsetzen, da er sehr flexibel ist. Ich würde mich noch einmal mit dem Adapter auseinandersetzen, wenn er dann sauber funktioniert, würde ich mich an eine VIS machen.
Die lade ich dann natürlich auch hier hoch. Ich melde mich, wird aber ein wenig dauern. -
@negalein
Hier meine VIS:
Arbeitstag heute, Arbeitstag morgen, Urlaub, Wochenende triggern die Zeiten, Gäste das Gästezimmer.
Hinter den Fenster Widget liegt noch das Rollo Widget. Die Höhe der Rollos wird farblich hervorgehoben. -
@martybr sagte in Shuttercontrol Vis für Abschattung:
Hier meine VIS:
Danke, schaut cool aus!
Urlaub
mit einer eigenen Ical-Instanz und dort trägst du nur die Urlaube ein?
-
@negalein
Der Wert kommt aus der Homematic. Ich habe da ein Programm, wo ist den Urlaub eintrage und das setzt dann jeden Tage die Werte.
Die anderen Werte kommen aus iCal. Ich habe noch nicht alle Programme auf den ioBroker migriert. Das dauert noch etwas.