NEWS
Jalousie: Prozent als Zeit steuern Blockly
-
@loverz hey, jetzt sehe ich erst dass du der gleiche User aus dem YAHKA Thread bist und ich dich jetzt wieder mit Noob Fragen bombardiere - sorry dafür!
Also ich habe jetzt mal dein Skript importiert und wollte es mit einem Rollladen bei mir mal ausprobieren.
Meine vorhandenen Datenpunkte beim Rollladenaktor sehen wie folgt aus:
Ich steige leider noch nicht ganz durch.
Ich habe hier bereits den "Positon_anfahren" Datenpunkt erstellt. Welche Datenpunkte muss ich denn noch erstellen?- Position_auf_ab
- Position
- stop
Also bei mir sind mögliche commands: "states": "0:Stop; 1:Up; 2:Down;
Soweit ich das verstehe muss ich dann nach einer gewissen Zeit das commandID Objekt dann wieder mit einem neuen State versehen. Bspw. ich fahre den Rollladen über state "2:Down" runter und setze dann nach bspw. 1Sekunde den State "0:Stop". Funktioniert das bei dir auch so? Die Gesamtlaufzeit der Rollläden in Sekunden liegt mir vor. -
@enoceaneltako hey
Ich helfe gern, wo ich kann!Willst du deine Jalousie über Homekit steuern, oder was hast du vor?
Ich habe diesen Thread gemacht um mit einem Schaltaktor Jalousien zu steuern. Mit einem Jalosieaktor, wie du ihn offenbar hast brauchst du das nicht, da ist alles viel einfacher.
Es sieht bei dir so aus, als müsstest du „Position_anfahren“ mit einer Prozentzahl füttern und anschließend mit dem „cmd“ objekt den Befehl abfeuern, so war das doch auch bei deinen Lampen, wenn ich mich richtig erinnere.
-
@loverz
5eacdcfa-0349-4764-b66a-8955b01ee87c-image.png
So sieht es per Standard ohne das manuelle Hinzufügen des "Position_anfahren" aus.
Wenn ich den Rollladen steuern möchte, muss ich nach meinem Verständnis auf dem CMD Datenpunkt einfach den Wert, 0,1 oder 2 setzen. Der Datenpunkt RT gibt mir dabei nur die gefahrene Zeit zurück, lässt sich quasi aber nicht für die Steuerung nutzen. Ich lasse mir das gerade noch im Adapter Thread bestätigen, vermute aber dass es so geht. -
@enoceaneltako wenn dem so ist, dann steht 0 und 1 wahrscheinlich fürs bewegen und 2 für Stopp.
Dann kannst du kit meinem Script auf jeden Fall was anfangen.Sehr komische Technik hast du da installiert
-
@loverz im Nachhinein ist man immer schlauer.
Ich muss mir das Skript dann nochmal im Detail anschauen.
Benötige ich dann da noch weitere Datenpunkte? So wie ich das verstehe hast du ja noch manuell welche hinzugefügt, oder die waren bei dir entsprechend dabei. -
@enoceaneltako du brauchst nur 2 eigene Datenpunkte. Position Target ind Position Current.
Beide müssen Prozentwerte von 0-100 sein.Mit diesen steuerst du dann deine Rollläden oder zeigst die Position an.
-
@loverz so ich sitze gerade vor dem Skript und versuche mich.
bei mir sieht das jetzt so aus:
<xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable id="xf@sxy2n3lLaMAIA.N]n">Fährt_gerade</variable> <variable id="+vD!@~J]Be=h}8X?P3j;">Fahrtzeit_Total_abwaerts</variable> <variable id="SH9X(aTmm}6oYla.Et?,">Fahrtzeit_Total_aufwaerts</variable> <variable id="2K}6OZ@A3R4`TruGx?+|">Motor_Anlaufverzögerung</variable> <variable id="y9JVRB3.vZ$hLD}SS=`M">Faktor_Fahrtzeitverlängerung</variable> <variable id="mX!WspA(Q^vpY:_?b!6N">Fahrtzeit_Total_abwaerts_verlaengert</variable> <variable id="R(jniBX|0gQGB_rJ/nB_">Fahrtzeit_Total_aufwaerts_verlaengert</variable> <variable type="timeout" id="timeout3">timeout3</variable> <variable type="timeout" id="timeout4">timeout4</variable> <variable id="x[*._zY;OWzGcvD$t;-^">Prozent_Aufwärts</variable> <variable type="timeout" id="timeout5">timeout5</variable> <variable id="vfZto4^tP9L1^_QXr^lf">ms_aufwaerts</variable> <variable id="8bGyP[;j|1PZy!{D3C?m">Prozent_Abwärts</variable> <variable id="CYHQ|24lLbrm35!+^r2(">ms_abwaerts</variable> <variable type="timeout" id="timeout">timeout</variable> <variable type="timeout" id="timeout2">timeout2</variable> </variables> <block type="variables_set" id="Uqx,3pa.qGBFvWPh%Jim" x="737" y="1017"> <field name="VAR" id="xf@sxy2n3lLaMAIA.N]n">Fährt_gerade</field> <value name="VALUE"> <block type="logic_boolean" id="F5~b4G4EnWoYJp6Fwh3`"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="variables_set" id="4uF`[@kE_(VV$2I0%*{_"> <field name="VAR" id="+vD!@~J]Be=h}8X?P3j;">Fahrtzeit_Total_abwaerts</field> <value name="VALUE"> <block type="math_number" id="@)?mUz7a~f_e~2P!NjTg"> <field name="NUM">262</field> </block> </value> <next> <block type="variables_set" id="Zvs|{?;+?Z_Zdwx^4#Zg"> <field name="VAR" id="SH9X(aTmm}6oYla.Et?,">Fahrtzeit_Total_aufwaerts</field> <value name="VALUE"> <block type="math_number" id=",j7?Je+/MWs5J1~Z*%`7"> <field name="NUM">262</field> </block> </value> <next> <block type="variables_set" id="/Ug0BHv:REI9q#C]b*x?"> <field name="VAR" id="2K}6OZ@A3R4`TruGx?+|">Motor_Anlaufverzögerung</field> <value name="VALUE"> <block type="math_number" id="zmP/~bs`k3$s+=YR/r|;"> <field name="NUM">1</field> </block> </value> <next> <block type="variables_set" id="Z!Z)f,|T#D.i4fNK0lq^"> <field name="VAR" id="y9JVRB3.vZ$hLD}SS=`M">Faktor_Fahrtzeitverlängerung</field> <value name="VALUE"> <block type="math_number" id="z_](^p),;Xo6S.L!Mm}n"> <field name="NUM">1</field> </block> </value> <next> <block type="variables_set" id="aKs`1aD3ZmK-=P}rbRe0"> <field name="VAR" id="mX!WspA(Q^vpY:_?b!6N">Fahrtzeit_Total_abwaerts_verlaengert</field> <value name="VALUE"> <block type="math_arithmetic" id="Lx913)W!4lD)D%%+Jm.D"> <field name="OP">MULTIPLY</field> <value name="A"> <shadow type="math_number" id="lb`fC(x8]^IK*6G6v(|j"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="[^n~if0l2B8k0l@Bh[ra"> <field name="VAR" id="+vD!@~J]Be=h}8X?P3j;">Fahrtzeit_Total_abwaerts</field> </block> </value> <value name="B"> <shadow type="math_number" id="#uKW}=D%DkpTcC;^z^[7"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="LQhfV;U1ZU]U$)]E@ijP"> <field name="VAR" id="y9JVRB3.vZ$hLD}SS=`M">Faktor_Fahrtzeitverlängerung</field> </block> </value> </block> </value> <next> <block type="variables_set" id="cCHWuP=e`.$CR`/1esA~"> <field name="VAR" id="R(jniBX|0gQGB_rJ/nB_">Fahrtzeit_Total_aufwaerts_verlaengert</field> <value name="VALUE"> <block type="math_arithmetic" id="h46%%kU#gN|z8h9`N!m="> <field name="OP">MULTIPLY</field> <value name="A"> <shadow type="math_number"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="$~ip8hq00KimV[7r]6]o"> <field name="VAR" id="SH9X(aTmm}6oYla.Et?,">Fahrtzeit_Total_aufwaerts</field> </block> </value> <value name="B"> <shadow type="math_number"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="dbl}gZ,fbK17htxgbh+X"> <field name="VAR" id="y9JVRB3.vZ$hLD}SS=`M">Faktor_Fahrtzeitverlängerung</field> </block> </value> </block> </value> <next> <block type="on_ext" id="r9Jh|`,J2u#%`CdNB|%C"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION">false</field> <value name="OID0"> <shadow type="field_oid" id="?5chF7uHswb!yaUKI[Oe"> <field name="oid">enocean.0.05869d34.Position_Target</field> </shadow> </value> <statement name="STATEMENT"> <block type="timeouts_cleartimeout" id="KUh?c;wJ3M!7BjhDo=IZ"> <field name="NAME">timeout3</field> <next> <block type="timeouts_settimeout" id="AT=RZcB#vu7EqYOk)|3$"> <field name="NAME">timeout3</field> <field name="DELAY">600</field> <field name="UNIT">ms</field> <statement name="STATEMENT"> <block type="comment" id="b[d1i-j,vgk~6^}x/+_l"> <field name="COMMENT">Hoch fahren</field> <next> <block type="controls_if" id="#z{:W@.6+O?32EPz?H[W"> <value name="IF0"> <block type="logic_operation" id="20Oo6q@z4c0dYG4Q:v`M" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="V(Do/%l8SZbu~h3V5hZz"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="EEi^EvekA`.U#8,;SLfW"> <field name="ATTR">val</field> <field name="OID">enocean.0.05869d34.Position_Target</field> </block> </value> <value name="B"> <block type="math_number" id="lW|}GJO)ITbjXGkN7fQU"> <field name="NUM">0</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id=":wLjWOlS|NB]6[q1|E#2"> <field name="OP">NEQ</field> <value name="A"> <block type="get_value" id="p+n7o|bw~itF]Z[d)0o#"> <field name="ATTR">val</field> <field name="OID">enocean.0.05869d34.Position_current</field> </block> </value> <value name="B"> <block type="math_number" id="H!5v0jcY/uJ1MD=6wH0f"> <field name="NUM">0</field> </block> </value> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="AVbE0y+5O%/%*?g4HW2e"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">enocean.0.05869d34.CMD</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="oG6xxmZc9?x-9lLU/4Yy"> <field name="NUM">1</field> </block> </value> <next> <block type="timeouts_cleartimeout" id="lJYI-Xhr#,5`VH(JX`7)"> <field name="NAME">timeout</field> <next> <block type="timeouts_cleartimeout" id="kEBGlXDJuofeHEi,pZlc"> <field name="NAME">timeout2</field> <next> <block type="timeouts_cleartimeout" id="8)RSAFf:Z.C~XAswO~#m"> <field name="NAME">timeout5</field> <next> <block type="timeouts_settimeout" id="k?;WPL*#Z#k$1gqkkA2U"> <field name="NAME">timeout4</field> <field name="DELAY">Fahrtzeit_Total_aufwaerts_verlaengert</field> <field name="UNIT">ms</field> <statement name="STATEMENT"> <block type="control" id="ow6yOPe~5QbdXRwN`MBz"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">enocean.0.05869d34.CMD</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="|@ywavf{qlL1[gsMN%[{"> <field name="NUM">0</field> </block> </value> <next> <block type="variables_set" id="c_(K~PC6b]Okj`x4cQNM"> <field name="VAR" id="xf@sxy2n3lLaMAIA.N]n">Fährt_gerade</field> <value name="VALUE"> <block type="logic_boolean" id="AK/)C(1]_%_N;N3{am9)"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="control" id="G_f?)Kt.m0O]JaaA4)RK"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">enocean.0.05869d34.Position_Target</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="Ykk4BzgQfhxe[XO,+kf`"> <field name="NUM">0</field> </block> </value> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> <next> <block type="comment" id=")I/%8{kz)!67sh*I!G5Z"> <field name="COMMENT">Runter fahren</field> <next> <block type="controls_if" id="mdN^LqxTK=vf[O3G!l`m"> <value name="IF0"> <block type="logic_operation" id="}?n]c$j+fqrpGlv)lJIO" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id=".Fd=iz%=wY[*b3;SROaa"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="*7=mNwn%yOFl76Se|QCC"> <field name="ATTR">val</field> <field name="OID">enocean.0.05869d34.Position_current</field> </block> </value> <value name="B"> <block type="math_number" id="cf6IHX/^c)@JK?m4OI9L"> <field name="NUM">100</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="tKwwEAKD}LPhEZqdXh^d"> <field name="OP">NEQ</field> <value name="A"> <block type="get_value" id="`bc_7wK(Aj`Rz`*;,%8X"> <field name="ATTR">val</field> <field name="OID">enocean.0.05869d34.Position_current</field> </block> </value> <value name="B"> <block type="math_number" id="/KX*e.NAQzGFdSUR0Q`B"> <field name="NUM">100</field> </block> </value> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="rftun!i%(de(P[j/+~]_"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">enocean.0.05869d34.CMD</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="ZD(jXX9AUzjqy-{[@a_%"> <field name="NUM">2</field> </block> </value> <next> <block type="timeouts_cleartimeout" id="]pGC#g4pJP^%:ev}_EX]"> <field name="NAME">timeout</field> <next> <block type="timeouts_cleartimeout" id="TY4r8e%:0{GC,C4qW.uC"> <field name="NAME">timeout2</field> <next> <block type="timeouts_cleartimeout" id="6])1IW4AQ(IP8ZzwF#R4"> <field name="NAME">timeout4</field> <next> <block type="timeouts_settimeout" id="G:eifh)qo]s#_rcmtcei"> <field name="NAME">timeout5</field> <field name="DELAY">Fahrtzeit_Total_abwaerts_verlaengert</field> <field name="UNIT">ms</field> <statement name="STATEMENT"> <block type="control" id="5):rMufrg~=Z/L7),:`4"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">enocean.0.05869d34.CMD</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id=";UiT..l:bG?I-Dq1z+Y/"> <field name="NUM">2</field> </block> </value> <next> <block type="variables_set" id="Z3Ov0{[#^=qb|VqNl0!."> <field name="VAR" id="xf@sxy2n3lLaMAIA.N]n">Fährt_gerade</field> <value name="VALUE"> <block type="logic_boolean" id="i?A?yO*/o[k[7z0d{BOv"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="control" id="KtWUw=7n,s!91O@E1#qn"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">enocean.0.05869d34.Position_current</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="1}:aO2,beD;LR2*mnWg*"> <field name="NUM">100</field> </block> </value> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> <next> <block type="controls_if" id="+B}KAe9#V[dUkD|0p]iJ"> <value name="IF0"> <block type="logic_operation" id="Q%3vyE/=7Q5x@fFCBOPM" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="}1(~#6[@$1KUaE;6[S(G"> <field name="OP">LT</field> <value name="A"> <block type="get_value" id="!57?#D{P;^BJZ}.5y8K]"> <field name="ATTR">val</field> <field name="OID">enocean.0.05869d34.Position_Target</field> </block> </value> <value name="B"> <block type="math_number" id="dpwa.Z#kzaA!-^__{LFz"> <field name="NUM">100</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="om8o^.D1-`U0g1==Mu;~"> <field name="OP">GT</field> <value name="A"> <block type="get_value" id="(Rx!vvjy99ut1Idn)PTW"> <field name="ATTR">val</field> <field name="OID">enocean.0.05869d34.Position_Target</field> </block> </value> <value name="B"> <block type="math_number" id="YbC7?d9AYR5o?!/1VK0h"> <field name="NUM">0</field> </block> </value> </block> </value> </block> </value> <statement name="DO0"> <block type="comment" id="Pon`dZ;8aHDl3Kl7zkH`"> <field name="COMMENT">Prozent Aufwärts</field> <next> <block type="controls_if" id="X-pmLkSiq*DO9asyB=_-"> <value name="IF0"> <block type="logic_compare" id="5#484_pXLr`zE~mFU4C8"> <field name="OP">LT</field> <value name="A"> <block type="get_value" id="wK-`{mP/N2=7ayMABMA~"> <field name="ATTR">val</field> <field name="OID">enocean.0.05869d34.Position_Target</field> </block> </value> <value name="B"> <block type="get_value" id="?#^EDc6n3;GsNC%`WMW|"> <field name="ATTR">val</field> <field name="OID">enocean.0.05869d34.Position_current</field> </block> </value> </block> </value> <statement name="DO0"> <block type="variables_set" id="o^Y^at5]l*L5vLB!r{5a"> <field name="VAR" id="x[*._zY;OWzGcvD$t;-^">Prozent_Aufwärts</field> <value name="VALUE"> <block type="math_arithmetic" id="sDU7}J%bLy1uOGdk#mg!"> <field name="OP">MINUS</field> <value name="A"> <shadow type="math_number" id="6o~f}aN|(WYBCP5H9%bF"> <field name="NUM">1</field> </shadow> <block type="get_value" id="SqQYQR]2l9/6dxpBqvm["> <field name="ATTR">val</field> <field name="OID">enocean.0.05869d34.Position_Target</field> </block> </value> <value name="B"> <shadow type="math_number" id="1cL*,XF@]z.!ThlO|9y|"> <field name="NUM">1</field> </shadow> <block type="get_value" id="uPbu5Pb*2Y`P7BfA2NMu"> <field name="ATTR">val</field> <field name="OID">enocean.0.05869d34.Position_current</field> </block> </value> </block> </value> <next> <block type="variables_set" id="t?q@$)v(kXaMsw:lK:jH"> <field name="VAR" id="vfZto4^tP9L1^_QXr^lf">ms_aufwaerts</field> <value name="VALUE"> <block type="math_arithmetic" id="2U=z8eD-hNh@YI10iT5,"> <field name="OP">ADD</field> <value name="A"> <shadow type="math_number" id="]7,F,gxP^}T^1!wsh2re"> <field name="NUM">1</field> </shadow> <block type="math_arithmetic" id=")G1O:*Ob,_Tv:fJErMZr"> <field name="OP">MULTIPLY</field> <value name="A"> <shadow type="math_number"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="L+T:%4LG6#=e8`Uci-)i"> <field name="VAR" id="x[*._zY;OWzGcvD$t;-^">Prozent_Aufwärts</field> </block> </value> <value name="B"> <shadow type="math_number" id="ayf/uNu1GCZteCoZ0EeF"> <field name="NUM">1</field> </shadow> <block type="math_arithmetic" id="L_YKZiEkLTg[.PO9)_SZ"> <field name="OP">DIVIDE</field> <value name="A"> <shadow type="math_number" id="wGoZ_qG_C:p=naHsn@yf"> <field name="NUM">10</field> </shadow> <block type="variables_get" id="bGh%;u~K|A]/=Yz)_#!6"> <field name="VAR" id="SH9X(aTmm}6oYla.Et?,">Fahrtzeit_Total_aufwaerts</field> </block> </value> <value name="B"> <shadow type="math_number" id="eELt7AAhoKt3PU{x?29b"> <field name="NUM">100</field> </shadow> </value> </block> </value> </block> </value> <value name="B"> <shadow type="math_number" id="tmpV}gL.cM1sQ!aE?cOx"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="9@]kPE{J/a[G}W@,]G3T"> <field name="VAR" id="2K}6OZ@A3R4`TruGx?+|">Motor_Anlaufverzögerung</field> </block> </value> </block> </value> <next> <block type="controls_if" id="@)s`%7vOw,o59!v`$IOe"> <value name="IF0"> <block type="logic_compare" id="fsF3mYkF5-J?Pm6L;1z*"> <field name="OP">EQ</field> <value name="A"> <block type="variables_get" id="#NwYlMkO,hj$~`RCz._v"> <field name="VAR" id="xf@sxy2n3lLaMAIA.N]n">Fährt_gerade</field> </block> </value> <value name="B"> <block type="logic_boolean" id=".wL:`;Y10efZ$c6h97$p"> <field name="BOOL">FALSE</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="#yBB+g6toHW]*HI,~#)S"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">enocean.0.05869d34.CMD</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="^f_vV[i;v0JnX2DLVj83"> <field name="NUM">1</field> </block> </value> <next> <block type="variables_set" id="mA3X1ctI]4YqQ^.daG~Y"> <field name="VAR" id="xf@sxy2n3lLaMAIA.N]n">Fährt_gerade</field> <value name="VALUE"> <block type="logic_boolean" id="}L=b-cl69w_ClwrO0_7s"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="timeouts_settimeout" id="(n--iYgxcP=d0vtLvvLV"> <field name="NAME">timeout</field> <field name="DELAY">ms_aufwaerts</field> <field name="UNIT">ms</field> <statement name="STATEMENT"> <block type="control" id="^6wDk.ufq*PA:P~MX/^^"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">enocean.0.05869d34.CMD</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="|T;zNw5Fiz47r%Pal5uH"> <field name="NUM">1</field> </block> </value> <next> <block type="variables_set" id="O#rIwYNX],F!z@l|U([H"> <field name="VAR" id="xf@sxy2n3lLaMAIA.N]n">Fährt_gerade</field> <value name="VALUE"> <block type="logic_boolean" id=",HxhvdThHOCu7q0^bo:w"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="control" id=":5L0AYLkUbGaB;K%ibSx"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">enocean.0.05869d34.Position_current</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="convert_tonumber" id="W7fMX!CSb3X/@|*Q*!1h"> <value name="VALUE"> <block type="get_value" id="`!mp%66R*$[tj{z18A-m"> <field name="ATTR">val</field> <field name="OID">enocean.0.05869d34.Position_Target</field> </block> </value> </block> </value> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </next> </block> </statement> <next> <block type="comment" id="Lp|]doK4cXOUEQz`GJCp"> <field name="COMMENT">Prozent Abwärts</field> <next> <block type="controls_if" id="Icoq1U1Whv_Dfvm$;-x#"> <value name="IF0"> <block type="logic_compare" id="Pr8Js6u};)Nby.O1:ljq"> <field name="OP">GT</field> <value name="A"> <block type="get_value" id="dY$M3m*e6qaY=!br%u*7"> <field name="ATTR">val</field> <field name="OID">enocean.0.05869d34.Position_Target</field> </block> </value> <value name="B"> <block type="get_value" id="K-a-4/ntn,7o5gR{:{~h"> <field name="ATTR">val</field> <field name="OID">enocean.0.05869d34.Position_current</field> </block> </value> </block> </value> <statement name="DO0"> <block type="variables_set" id="KSE/QQ5$~%#(|RbW5FU0"> <field name="VAR" id="8bGyP[;j|1PZy!{D3C?m">Prozent_Abwärts</field> <value name="VALUE"> <block type="math_arithmetic" id="a,Dn[42KCcamX%=[Ub+6"> <field name="OP">MINUS</field> <value name="A"> <shadow type="math_number"> <field name="NUM">1</field> </shadow> <block type="get_value" id="/lpqmErjjq#h3Jl41CSN"> <field name="ATTR">val</field> <field name="OID">enocean.0.05869d34.Position_Target</field> </block> </value> <value name="B"> <shadow type="math_number"> <field name="NUM">1</field> </shadow> <block type="get_value" id="LU33}6ZotoJ+Y89aq7~I"> <field name="ATTR">val</field> <field name="OID">enocean.0.05869d34.Position_current</field> </block> </value> </block> </value> <next> <block type="variables_set" id=";0F}UMA[h{B+E+lBp2sZ"> <field name="VAR" id="CYHQ|24lLbrm35!+^r2(">ms_abwaerts</field> <value name="VALUE"> <block type="math_arithmetic" id="[EA#z~{31dl*g79b)2Oi"> <field name="OP">ADD</field> <value name="A"> <shadow type="math_number" id=",3Fy.=qA0+!v%D/8RJPm"> <field name="NUM">1000</field> </shadow> <block type="math_arithmetic" id="Vm.3:q^@o;q^eb_=-+ot"> <field name="OP">MULTIPLY</field> <value name="A"> <shadow type="math_number" id="c3i3DG;s@qW~G/v0;-Er"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="sX_C7zzEpyd|x1a.+MpR"> <field name="VAR" id="8bGyP[;j|1PZy!{D3C?m">Prozent_Abwärts</field> </block> </value> <value name="B"> <shadow type="math_number" id="Uxw`I^XAE8@drmL6)2$K"> <field name="NUM">1</field> </shadow> <block type="math_arithmetic" id="360B#P@7lP{bt2L:R6i|"> <field name="OP">DIVIDE</field> <value name="A"> <shadow type="math_number" id="W60+SW%@2pr(@ZFlEf02"> <field name="NUM">10</field> </shadow> <block type="variables_get" id="vj%%9*!+l6m8(3_sZd!c"> <field name="VAR" id="+vD!@~J]Be=h}8X?P3j;">Fahrtzeit_Total_abwaerts</field> </block> </value> <value name="B"> <shadow type="math_number" id="iWw#(e}80#FQziUA)jPX"> <field name="NUM">100</field> </shadow> </value> </block> </value> </block> </value> <value name="B"> <shadow type="math_number" id="iT!#Je:)v^[/j^hSq?$M"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="s3?LV)-Y[4lG)K;C3e{k"> <field name="VAR" id="2K}6OZ@A3R4`TruGx?+|">Motor_Anlaufverzögerung</field> </block> </value> </block> </value> <next> <block type="controls_if" id="m;YlVVLGnqGe%^ZY2M5."> <value name="IF0"> <block type="logic_compare" id="T{~TK**P?Miqhr93/_Bi"> <field name="OP">EQ</field> <value name="A"> <block type="variables_get" id="fnQnmWw60U!0@e[!~!:T"> <field name="VAR" id="xf@sxy2n3lLaMAIA.N]n">Fährt_gerade</field> </block> </value> <value name="B"> <block type="logic_boolean" id="v0D8znv7oAjW4!eM?nN+"> <field name="BOOL">FALSE</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="^l*f@vnOdP[qH;P46.^U"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">enocean.0.05869d34.CMD</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="F_C4.=R^id$3hw^xC8|r"> <field name="NUM">2</field> </block> </value> <next> <block type="variables_set" id="=F/qL/WO,a##E;LrVQ-H"> <field name="VAR" id="xf@sxy2n3lLaMAIA.N]n">Fährt_gerade</field> <value name="VALUE"> <block type="logic_boolean" id="tR!hL[8lQdd{jEuI3FH3"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="timeouts_settimeout" id="k;n.NY5i%aR:w!,![(X5"> <field name="NAME">timeout2</field> <field name="DELAY">ms_abwaerts</field> <field name="UNIT">ms</field> <statement name="STATEMENT"> <block type="control" id="a^nI~b6g-UWsOCu1CbBn"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">enocean.0.05869d34.CMD</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="=5p/Hz*,1uo^A7b5:n0V"> <field name="NUM">2</field> </block> </value> <next> <block type="variables_set" id="0cwjs.t9fczrRP@!q,u#"> <field name="VAR" id="xf@sxy2n3lLaMAIA.N]n">Fährt_gerade</field> <value name="VALUE"> <block type="logic_boolean" id="b6Hz`0XMWJK}aF[PCvUD"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="control" id="C4,0iS^^::cG:Pcz?RpW"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">enocean.0.05869d34.Position_current</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="convert_tonumber" id="h+H:Nxl`$X.v%TbnlS6s"> <value name="VALUE"> <block type="get_value" id="V_g+nU9Z9~yH--$[0]Q,"> <field name="ATTR">val</field> <field name="OID">enocean.0.05869d34.Position_Target</field> </block> </value> </block> </value> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </xml>
Ich kann die Endlage oben über einen Datenpunkt erkennen B0 auf "true" solange der Rollladen fährt lautet der Wert "false":
Die Endlage unten kann ich über den Endpunkt B1 auf "true" ebenfalls erkennen und auch hier solange der Rollladen fährt lautet der Wert "false".
Aber irgendwie fährt der Rollladen aktuell immer komplett hoch bzw. runter. Also das funktioniert schonmal
-
Dein Blockly steuert unten knx.0.OG.Jalousie.Bad_Auf_Ab mit falsch. Was macht das denn?
Mein Datenpunkt um zu Steuern ist der CommandID, den habe ich bei mir auf "1" weil das "auf" bedeutet.
Im unteren Teil, nach dem Timeout hast du noch einen Datenpunkt ...Bad_stop. Hier habe ich bei mir mein CommandID Datenpunkt mit "0" gesetzt, da das "Stop" bedeutet.
Wozu sind denn die timeouts dazwischen und wie lange laufen diese?
-
@enoceaneltako sagte in Jalousie: Prozent als Zeit steuern Blockly:
Dein Blockly steuert unten knx.0.OG.Jalousie.Bad_Auf_Ab mit falsch. Was macht das denn?
das ist bei mir der Befehl zum auf oder abfahren der Jalousie. false aufwärts und true abwärts, so wie bei dir CommandID
Mein Datenpunkt um zu Steuern ist der CommandID, den habe ich bei mir auf "1" weil das "auf" bedeutet.
Im unteren Teil, nach dem Timeout hast du noch einen Datenpunkt ...Bad_stop. Hier habe ich bei mir mein CommandID Datenpunkt mit "0" gesetzt, da das "Stop" bedeutet.
Wozu sind denn die timeouts dazwischen und wie lange laufen diese?
Die Timeouts laufen genau solange wie die Jalousie für die jeweilige Position benötigt.
Angenommen, deine Jalousie benötigt für 0-100% 10 Sekunden, dann sind ja 10% 1 Sekunde, entsprechend müsste die Jalousie 5 Sekunden fahren, bis sie 50% erreicht hat und wird dann gestoppt.
-
@loverz Hey, also irgendwie bekomme ich das nicht gebacken. Hast du mir vllt. noch einen Tipp?
<xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable id="xf@sxy2n3lLaMAIA.N]n">Fährt_gerade</variable> <variable id="+vD!@~J]Be=h}8X?P3j;">Fahrtzeit_Total_abwaerts</variable> <variable id="SH9X(aTmm}6oYla.Et?,">Fahrtzeit_Total_aufwaerts</variable> <variable id="2K}6OZ@A3R4`TruGx?+|">Motor_Anlaufverzögerung</variable> <variable id="y9JVRB3.vZ$hLD}SS=`M">Faktor_Fahrtzeitverlängerung</variable> <variable id="mX!WspA(Q^vpY:_?b!6N">Fahrtzeit_Total_abwaerts_verlaengert</variable> <variable id="R(jniBX|0gQGB_rJ/nB_">Fahrtzeit_Total_aufwaerts_verlaengert</variable> <variable type="timeout" id="timeout3">timeout3</variable> <variable type="timeout" id="timeout4">timeout4</variable> <variable id="x[*._zY;OWzGcvD$t;-^">Prozent_Aufwärts</variable> <variable type="timeout" id="timeout5">timeout5</variable> <variable id="vfZto4^tP9L1^_QXr^lf">ms_aufwaerts</variable> <variable id="8bGyP[;j|1PZy!{D3C?m">Prozent_Abwärts</variable> <variable id="CYHQ|24lLbrm35!+^r2(">ms_abwaerts</variable> <variable type="timeout" id="timeout">timeout</variable> <variable type="timeout" id="timeout2">timeout2</variable> </variables> <block type="variables_set" id="Uqx,3pa.qGBFvWPh%Jim" x="737" y="1017"> <field name="VAR" id="xf@sxy2n3lLaMAIA.N]n">Fährt_gerade</field> <value name="VALUE"> <block type="logic_boolean" id="F5~b4G4EnWoYJp6Fwh3`"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="variables_set" id="4uF`[@kE_(VV$2I0%*{_"> <field name="VAR" id="+vD!@~J]Be=h}8X?P3j;">Fahrtzeit_Total_abwaerts</field> <value name="VALUE"> <block type="math_number" id="@)?mUz7a~f_e~2P!NjTg"> <field name="NUM">262</field> </block> </value> <next> <block type="variables_set" id="Zvs|{?;+?Z_Zdwx^4#Zg"> <field name="VAR" id="SH9X(aTmm}6oYla.Et?,">Fahrtzeit_Total_aufwaerts</field> <value name="VALUE"> <block type="math_number" id=",j7?Je+/MWs5J1~Z*%`7"> <field name="NUM">262</field> </block> </value> <next> <block type="variables_set" id="/Ug0BHv:REI9q#C]b*x?"> <field name="VAR" id="2K}6OZ@A3R4`TruGx?+|">Motor_Anlaufverzögerung</field> <value name="VALUE"> <block type="math_number" id="zmP/~bs`k3$s+=YR/r|;"> <field name="NUM">1</field> </block> </value> <next> <block type="variables_set" id="Z!Z)f,|T#D.i4fNK0lq^"> <field name="VAR" id="y9JVRB3.vZ$hLD}SS=`M">Faktor_Fahrtzeitverlängerung</field> <value name="VALUE"> <block type="math_number" id="z_](^p),;Xo6S.L!Mm}n"> <field name="NUM">1</field> </block> </value> <next> <block type="variables_set" id="aKs`1aD3ZmK-=P}rbRe0"> <field name="VAR" id="mX!WspA(Q^vpY:_?b!6N">Fahrtzeit_Total_abwaerts_verlaengert</field> <value name="VALUE"> <block type="math_arithmetic" id="Lx913)W!4lD)D%%+Jm.D"> <field name="OP">MULTIPLY</field> <value name="A"> <shadow type="math_number" id="lb`fC(x8]^IK*6G6v(|j"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="[^n~if0l2B8k0l@Bh[ra"> <field name="VAR" id="+vD!@~J]Be=h}8X?P3j;">Fahrtzeit_Total_abwaerts</field> </block> </value> <value name="B"> <shadow type="math_number" id="#uKW}=D%DkpTcC;^z^[7"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="LQhfV;U1ZU]U$)]E@ijP"> <field name="VAR" id="y9JVRB3.vZ$hLD}SS=`M">Faktor_Fahrtzeitverlängerung</field> </block> </value> </block> </value> <next> <block type="variables_set" id="cCHWuP=e`.$CR`/1esA~"> <field name="VAR" id="R(jniBX|0gQGB_rJ/nB_">Fahrtzeit_Total_aufwaerts_verlaengert</field> <value name="VALUE"> <block type="math_arithmetic" id="h46%%kU#gN|z8h9`N!m="> <field name="OP">MULTIPLY</field> <value name="A"> <shadow type="math_number"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="$~ip8hq00KimV[7r]6]o"> <field name="VAR" id="SH9X(aTmm}6oYla.Et?,">Fahrtzeit_Total_aufwaerts</field> </block> </value> <value name="B"> <shadow type="math_number"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="dbl}gZ,fbK17htxgbh+X"> <field name="VAR" id="y9JVRB3.vZ$hLD}SS=`M">Faktor_Fahrtzeitverlängerung</field> </block> </value> </block> </value> <next> <block type="on_ext" id="r9Jh|`,J2u#%`CdNB|%C"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION">false</field> <value name="OID0"> <shadow type="field_oid" id="?5chF7uHswb!yaUKI[Oe"> <field name="oid">enocean.0.05869d34.Position_Target</field> </shadow> </value> <statement name="STATEMENT"> <block type="timeouts_cleartimeout" id="KUh?c;wJ3M!7BjhDo=IZ"> <field name="NAME">timeout3</field> <next> <block type="timeouts_settimeout" id="AT=RZcB#vu7EqYOk)|3$"> <field name="NAME">timeout3</field> <field name="DELAY">ms_aufwaerts</field> <field name="UNIT">ms</field> <statement name="STATEMENT"> <block type="comment" id="b[d1i-j,vgk~6^}x/+_l"> <field name="COMMENT">Hoch fahren</field> <next> <block type="controls_if" id="#z{:W@.6+O?32EPz?H[W"> <value name="IF0"> <block type="logic_operation" id="20Oo6q@z4c0dYG4Q:v`M" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="V(Do/%l8SZbu~h3V5hZz"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="EEi^EvekA`.U#8,;SLfW"> <field name="ATTR">val</field> <field name="OID">enocean.0.05869d34.Position_Target</field> </block> </value> <value name="B"> <block type="math_number" id="lW|}GJO)ITbjXGkN7fQU"> <field name="NUM">0</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id=":wLjWOlS|NB]6[q1|E#2"> <field name="OP">NEQ</field> <value name="A"> <block type="get_value" id="p+n7o|bw~itF]Z[d)0o#"> <field name="ATTR">val</field> <field name="OID">enocean.0.05869d34.Position_current</field> </block> </value> <value name="B"> <block type="math_number" id="H!5v0jcY/uJ1MD=6wH0f"> <field name="NUM">0</field> </block> </value> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="AVbE0y+5O%/%*?g4HW2e"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">enocean.0.05869d34.CMD</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="oG6xxmZc9?x-9lLU/4Yy"> <field name="NUM">1</field> </block> </value> <next> <block type="timeouts_cleartimeout" id="lJYI-Xhr#,5`VH(JX`7)"> <field name="NAME">timeout</field> <next> <block type="timeouts_cleartimeout" id="kEBGlXDJuofeHEi,pZlc"> <field name="NAME">timeout2</field> <next> <block type="timeouts_cleartimeout" id="8)RSAFf:Z.C~XAswO~#m"> <field name="NAME">timeout5</field> <next> <block type="timeouts_settimeout" id="k?;WPL*#Z#k$1gqkkA2U"> <field name="NAME">timeout4</field> <field name="DELAY">ms_aufwaerts</field> <field name="UNIT">ms</field> <statement name="STATEMENT"> <block type="control" id="ow6yOPe~5QbdXRwN`MBz"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">enocean.0.05869d34.CMD</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="|@ywavf{qlL1[gsMN%[{"> <field name="NUM">0</field> </block> </value> <next> <block type="variables_set" id="c_(K~PC6b]Okj`x4cQNM"> <field name="VAR" id="xf@sxy2n3lLaMAIA.N]n">Fährt_gerade</field> <value name="VALUE"> <block type="logic_boolean" id="AK/)C(1]_%_N;N3{am9)"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="control" id="G_f?)Kt.m0O]JaaA4)RK"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">enocean.0.05869d34.Position_Target</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="Ykk4BzgQfhxe[XO,+kf`"> <field name="NUM">0</field> </block> </value> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> <next> <block type="comment" id=")I/%8{kz)!67sh*I!G5Z"> <field name="COMMENT">Runter fahren</field> <next> <block type="controls_if" id="mdN^LqxTK=vf[O3G!l`m"> <value name="IF0"> <block type="logic_operation" id="}?n]c$j+fqrpGlv)lJIO" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id=".Fd=iz%=wY[*b3;SROaa"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="*7=mNwn%yOFl76Se|QCC"> <field name="ATTR">val</field> <field name="OID">enocean.0.05869d34.Position_current</field> </block> </value> <value name="B"> <block type="math_number" id="cf6IHX/^c)@JK?m4OI9L"> <field name="NUM">100</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="tKwwEAKD}LPhEZqdXh^d"> <field name="OP">NEQ</field> <value name="A"> <block type="get_value" id="`bc_7wK(Aj`Rz`*;,%8X"> <field name="ATTR">val</field> <field name="OID">enocean.0.05869d34.Position_current</field> </block> </value> <value name="B"> <block type="math_number" id="/KX*e.NAQzGFdSUR0Q`B"> <field name="NUM">100</field> </block> </value> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="rftun!i%(de(P[j/+~]_"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">enocean.0.05869d34.CMD</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="ZD(jXX9AUzjqy-{[@a_%"> <field name="NUM">2</field> </block> </value> <next> <block type="timeouts_cleartimeout" id="]pGC#g4pJP^%:ev}_EX]"> <field name="NAME">timeout</field> <next> <block type="timeouts_cleartimeout" id="TY4r8e%:0{GC,C4qW.uC"> <field name="NAME">timeout2</field> <next> <block type="timeouts_cleartimeout" id="6])1IW4AQ(IP8ZzwF#R4"> <field name="NAME">timeout4</field> <next> <block type="timeouts_settimeout" id="G:eifh)qo]s#_rcmtcei"> <field name="NAME">timeout5</field> <field name="DELAY">Fahrtzeit_Total_abwaerts_verlaengert</field> <field name="UNIT">ms</field> <statement name="STATEMENT"> <block type="control" id="5):rMufrg~=Z/L7),:`4"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">enocean.0.05869d34.CMD</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id=";UiT..l:bG?I-Dq1z+Y/"> <field name="NUM">2</field> </block> </value> <next> <block type="variables_set" id="Z3Ov0{[#^=qb|VqNl0!."> <field name="VAR" id="xf@sxy2n3lLaMAIA.N]n">Fährt_gerade</field> <value name="VALUE"> <block type="logic_boolean" id="i?A?yO*/o[k[7z0d{BOv"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="control" id="KtWUw=7n,s!91O@E1#qn"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">enocean.0.05869d34.Position_current</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="1}:aO2,beD;LR2*mnWg*"> <field name="NUM">100</field> </block> </value> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> <next> <block type="controls_if" id="+B}KAe9#V[dUkD|0p]iJ"> <value name="IF0"> <block type="logic_operation" id="Q%3vyE/=7Q5x@fFCBOPM" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="}1(~#6[@$1KUaE;6[S(G"> <field name="OP">LT</field> <value name="A"> <block type="get_value" id="!57?#D{P;^BJZ}.5y8K]"> <field name="ATTR">val</field> <field name="OID">enocean.0.05869d34.Position_Target</field> </block> </value> <value name="B"> <block type="math_number" id="dpwa.Z#kzaA!-^__{LFz"> <field name="NUM">100</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="om8o^.D1-`U0g1==Mu;~"> <field name="OP">GT</field> <value name="A"> <block type="get_value" id="(Rx!vvjy99ut1Idn)PTW"> <field name="ATTR">val</field> <field name="OID">enocean.0.05869d34.Position_Target</field> </block> </value> <value name="B"> <block type="math_number" id="YbC7?d9AYR5o?!/1VK0h"> <field name="NUM">0</field> </block> </value> </block> </value> </block> </value> <statement name="DO0"> <block type="comment" id="Pon`dZ;8aHDl3Kl7zkH`"> <field name="COMMENT">Prozent Aufwärts</field> <next> <block type="controls_if" id="X-pmLkSiq*DO9asyB=_-"> <value name="IF0"> <block type="logic_compare" id="5#484_pXLr`zE~mFU4C8"> <field name="OP">LT</field> <value name="A"> <block type="get_value" id="wK-`{mP/N2=7ayMABMA~"> <field name="ATTR">val</field> <field name="OID">enocean.0.05869d34.Position_Target</field> </block> </value> <value name="B"> <block type="get_value" id="?#^EDc6n3;GsNC%`WMW|"> <field name="ATTR">val</field> <field name="OID">enocean.0.05869d34.Position_current</field> </block> </value> </block> </value> <statement name="DO0"> <block type="variables_set" id="o^Y^at5]l*L5vLB!r{5a"> <field name="VAR" id="x[*._zY;OWzGcvD$t;-^">Prozent_Aufwärts</field> <value name="VALUE"> <block type="math_arithmetic" id="sDU7}J%bLy1uOGdk#mg!"> <field name="OP">MINUS</field> <value name="A"> <shadow type="math_number" id="6o~f}aN|(WYBCP5H9%bF"> <field name="NUM">1</field> </shadow> <block type="get_value" id="SqQYQR]2l9/6dxpBqvm["> <field name="ATTR">val</field> <field name="OID">enocean.0.05869d34.Position_Target</field> </block> </value> <value name="B"> <shadow type="math_number" id="1cL*,XF@]z.!ThlO|9y|"> <field name="NUM">1</field> </shadow> <block type="get_value" id="uPbu5Pb*2Y`P7BfA2NMu"> <field name="ATTR">val</field> <field name="OID">enocean.0.05869d34.Position_current</field> </block> </value> </block> </value> <next> <block type="variables_set" id="t?q@$)v(kXaMsw:lK:jH"> <field name="VAR" id="vfZto4^tP9L1^_QXr^lf">ms_aufwaerts</field> <value name="VALUE"> <block type="math_arithmetic" id="2U=z8eD-hNh@YI10iT5,"> <field name="OP">ADD</field> <value name="A"> <shadow type="math_number" id="]7,F,gxP^}T^1!wsh2re"> <field name="NUM">1</field> </shadow> <block type="math_arithmetic" id=")G1O:*Ob,_Tv:fJErMZr"> <field name="OP">MULTIPLY</field> <value name="A"> <shadow type="math_number"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="L+T:%4LG6#=e8`Uci-)i"> <field name="VAR" id="x[*._zY;OWzGcvD$t;-^">Prozent_Aufwärts</field> </block> </value> <value name="B"> <shadow type="math_number" id="ayf/uNu1GCZteCoZ0EeF"> <field name="NUM">1</field> </shadow> <block type="math_arithmetic" id="L_YKZiEkLTg[.PO9)_SZ"> <field name="OP">DIVIDE</field> <value name="A"> <shadow type="math_number" id="wGoZ_qG_C:p=naHsn@yf"> <field name="NUM">10</field> </shadow> <block type="variables_get" id="bGh%;u~K|A]/=Yz)_#!6"> <field name="VAR" id="SH9X(aTmm}6oYla.Et?,">Fahrtzeit_Total_aufwaerts</field> </block> </value> <value name="B"> <shadow type="math_number" id="eELt7AAhoKt3PU{x?29b"> <field name="NUM">100</field> </shadow> </value> </block> </value> </block> </value> <value name="B"> <shadow type="math_number" id="tmpV}gL.cM1sQ!aE?cOx"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="9@]kPE{J/a[G}W@,]G3T"> <field name="VAR" id="2K}6OZ@A3R4`TruGx?+|">Motor_Anlaufverzögerung</field> </block> </value> </block> </value> <next> <block type="controls_if" id="@)s`%7vOw,o59!v`$IOe"> <value name="IF0"> <block type="logic_compare" id="fsF3mYkF5-J?Pm6L;1z*"> <field name="OP">EQ</field> <value name="A"> <block type="variables_get" id="#NwYlMkO,hj$~`RCz._v"> <field name="VAR" id="xf@sxy2n3lLaMAIA.N]n">Fährt_gerade</field> </block> </value> <value name="B"> <block type="logic_boolean" id=".wL:`;Y10efZ$c6h97$p"> <field name="BOOL">FALSE</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="#yBB+g6toHW]*HI,~#)S"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">enocean.0.05869d34.CMD</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="^f_vV[i;v0JnX2DLVj83"> <field name="NUM">1</field> </block> </value> <next> <block type="variables_set" id="mA3X1ctI]4YqQ^.daG~Y"> <field name="VAR" id="xf@sxy2n3lLaMAIA.N]n">Fährt_gerade</field> <value name="VALUE"> <block type="logic_boolean" id="}L=b-cl69w_ClwrO0_7s"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="timeouts_settimeout" id="(n--iYgxcP=d0vtLvvLV"> <field name="NAME">timeout</field> <field name="DELAY">ms_aufwaerts</field> <field name="UNIT">ms</field> <statement name="STATEMENT"> <block type="control" id="^6wDk.ufq*PA:P~MX/^^"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">enocean.0.05869d34.CMD</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="|T;zNw5Fiz47r%Pal5uH"> <field name="NUM">0</field> </block> </value> <next> <block type="variables_set" id="O#rIwYNX],F!z@l|U([H"> <field name="VAR" id="xf@sxy2n3lLaMAIA.N]n">Fährt_gerade</field> <value name="VALUE"> <block type="logic_boolean" id=",HxhvdThHOCu7q0^bo:w"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="control" id=":5L0AYLkUbGaB;K%ibSx"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">enocean.0.05869d34.Position_current</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="convert_tonumber" id="W7fMX!CSb3X/@|*Q*!1h"> <value name="VALUE"> <block type="get_value" id="`!mp%66R*$[tj{z18A-m"> <field name="ATTR">val</field> <field name="OID">enocean.0.05869d34.Position_Target</field> </block> </value> </block> </value> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </next> </block> </statement> <next> <block type="comment" id="Lp|]doK4cXOUEQz`GJCp"> <field name="COMMENT">Prozent Abwärts</field> <next> <block type="controls_if" id="Icoq1U1Whv_Dfvm$;-x#"> <value name="IF0"> <block type="logic_compare" id="Pr8Js6u};)Nby.O1:ljq"> <field name="OP">GT</field> <value name="A"> <block type="get_value" id="dY$M3m*e6qaY=!br%u*7"> <field name="ATTR">val</field> <field name="OID">enocean.0.05869d34.Position_Target</field> </block> </value> <value name="B"> <block type="get_value" id="K-a-4/ntn,7o5gR{:{~h"> <field name="ATTR">val</field> <field name="OID">enocean.0.05869d34.Position_current</field> </block> </value> </block> </value> <statement name="DO0"> <block type="variables_set" id="KSE/QQ5$~%#(|RbW5FU0"> <field name="VAR" id="8bGyP[;j|1PZy!{D3C?m">Prozent_Abwärts</field> <value name="VALUE"> <block type="math_arithmetic" id="a,Dn[42KCcamX%=[Ub+6"> <field name="OP">MINUS</field> <value name="A"> <shadow type="math_number"> <field name="NUM">1</field> </shadow> <block type="get_value" id="/lpqmErjjq#h3Jl41CSN"> <field name="ATTR">val</field> <field name="OID">enocean.0.05869d34.Position_Target</field> </block> </value> <value name="B"> <shadow type="math_number"> <field name="NUM">1</field> </shadow> <block type="get_value" id="LU33}6ZotoJ+Y89aq7~I"> <field name="ATTR">val</field> <field name="OID">enocean.0.05869d34.Position_current</field> </block> </value> </block> </value> <next> <block type="variables_set" id=";0F}UMA[h{B+E+lBp2sZ"> <field name="VAR" id="CYHQ|24lLbrm35!+^r2(">ms_abwaerts</field> <value name="VALUE"> <block type="math_arithmetic" id="[EA#z~{31dl*g79b)2Oi"> <field name="OP">ADD</field> <value name="A"> <shadow type="math_number" id=",3Fy.=qA0+!v%D/8RJPm"> <field name="NUM">1000</field> </shadow> <block type="math_arithmetic" id="Vm.3:q^@o;q^eb_=-+ot"> <field name="OP">MULTIPLY</field> <value name="A"> <shadow type="math_number" id="c3i3DG;s@qW~G/v0;-Er"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="sX_C7zzEpyd|x1a.+MpR"> <field name="VAR" id="8bGyP[;j|1PZy!{D3C?m">Prozent_Abwärts</field> </block> </value> <value name="B"> <shadow type="math_number" id="Uxw`I^XAE8@drmL6)2$K"> <field name="NUM">1</field> </shadow> <block type="math_arithmetic" id="360B#P@7lP{bt2L:R6i|"> <field name="OP">DIVIDE</field> <value name="A"> <shadow type="math_number" id="W60+SW%@2pr(@ZFlEf02"> <field name="NUM">10</field> </shadow> <block type="variables_get" id="vj%%9*!+l6m8(3_sZd!c"> <field name="VAR" id="+vD!@~J]Be=h}8X?P3j;">Fahrtzeit_Total_abwaerts</field> </block> </value> <value name="B"> <shadow type="math_number" id="iWw#(e}80#FQziUA)jPX"> <field name="NUM">100</field> </shadow> </value> </block> </value> </block> </value> <value name="B"> <shadow type="math_number" id="iT!#Je:)v^[/j^hSq?$M"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="s3?LV)-Y[4lG)K;C3e{k"> <field name="VAR" id="2K}6OZ@A3R4`TruGx?+|">Motor_Anlaufverzögerung</field> </block> </value> </block> </value> <next> <block type="controls_if" id="m;YlVVLGnqGe%^ZY2M5."> <value name="IF0"> <block type="logic_compare" id="T{~TK**P?Miqhr93/_Bi"> <field name="OP">EQ</field> <value name="A"> <block type="variables_get" id="fnQnmWw60U!0@e[!~!:T"> <field name="VAR" id="xf@sxy2n3lLaMAIA.N]n">Fährt_gerade</field> </block> </value> <value name="B"> <block type="logic_boolean" id="v0D8znv7oAjW4!eM?nN+"> <field name="BOOL">FALSE</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="^l*f@vnOdP[qH;P46.^U"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">enocean.0.05869d34.CMD</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="F_C4.=R^id$3hw^xC8|r"> <field name="NUM">2</field> </block> </value> <next> <block type="variables_set" id="=F/qL/WO,a##E;LrVQ-H"> <field name="VAR" id="xf@sxy2n3lLaMAIA.N]n">Fährt_gerade</field> <value name="VALUE"> <block type="logic_boolean" id="tR!hL[8lQdd{jEuI3FH3"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="timeouts_settimeout" id="k;n.NY5i%aR:w!,![(X5"> <field name="NAME">timeout2</field> <field name="DELAY">ms_abwaerts</field> <field name="UNIT">ms</field> <statement name="STATEMENT"> <block type="control" id="a^nI~b6g-UWsOCu1CbBn"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">enocean.0.05869d34.CMD</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="=5p/Hz*,1uo^A7b5:n0V"> <field name="NUM">0</field> </block> </value> <next> <block type="variables_set" id="0cwjs.t9fczrRP@!q,u#"> <field name="VAR" id="xf@sxy2n3lLaMAIA.N]n">Fährt_gerade</field> <value name="VALUE"> <block type="logic_boolean" id="b6Hz`0XMWJK}aF[PCvUD"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="control" id="C4,0iS^^::cG:Pcz?RpW"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">enocean.0.05869d34.Position_current</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="convert_tonumber" id="h+H:Nxl`$X.v%TbnlS6s"> <value name="VALUE"> <block type="get_value" id="V_g+nU9Z9~yH--$[0]Q,"> <field name="ATTR">val</field> <field name="OID">enocean.0.05869d34.Position_Target</field> </block> </value> </block> </value> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </xml>
Muss ich jetzt in die timeouts, also timeout3 "ms-aufwaerts" den Wert für 26,2 Sekunden eintragen?
-
@enoceaneltako schau mal da:
siehst du wie es funktioniert?
-
Hallo zusammen, ich bin absoluter beginner hier, aber auf der Suche nach einer Lösung, wie man mit an/aus und der Positionsinfo bestimmte Positionen anfahren kann, in dem man einen Prozentwert in ein Feld einträgt.
Versteh ich das Skript hier richtig, dass man genau das damit machen kann? -
@ambo genau, das habe ich so gemacht. Habe zwei Rollladen an einem Schaltaktor, der nur An/Aus kann und entsprechend bedient werden muss. Das Objekt Position anfahren (in Prozent) habe ich selbst erstellt.