NEWS
[Gelöst] Fragen zu Blockly
-
Hatte ich auch überlegt. Hatte es aber nicht umgesetzt, da es mal wieder am Wissen gescheitert ist. Wie kann ich das darstellen?
Hab grad schon probiert, hab den passenden Baustein nicht gefunden. `
gib mal kurz export von dem block
-
gib mal kurz export von dem block
`
! <xml 1999/xmlns="<URL url=" http:/www.w3.org/xhtml"="">http://www.w3.org/1999/xhtml">
! <block type="on" id="dE({Ufz==CGiWXmY%Lgj" x="-663" y="-42"><field name="OID">hm-rpc.0.MEQ1651240.1.TEMPERATURE</field>
! <field name="CONDITION">ne</field>
! <statement name="STATEMENT"><block type="comment" id="x^V6-6XQ:=pDWJI.n@Y?"><field name="COMMENT">Überprüfen ob die Temperatur kleiner 12 Grad beträgt</field>
! <next><block type="controls_if" id=";%ijSa!;s_Y+|6x_;/gm"><mutation else="1"></mutation>
! <value name="IF0"><block type="logic_compare" id="G@9_PW:,dbZhN,CNfI6a"><field name="OP">LT</field>
! <value name="A"><block type="get_value" id="4GO0u[([F:Nj(Yl(vFw*"><field name="ATTR">val</field>
! <field name="OID">hm-rpc.0.MEQ1651240.1.TEMPERATURE</field></block></value>
! <value name="B"><block type="text" id="Wo4)+BB#{2#c!ATkZi10"><field name="TEXT">12.0</field></block></value></block></value>
! <statement name="DO0"><block type="comment" id="Ayuyx~6A}R=s*qKt}5C"><field name="COMMENT">Ist < 12 Grad, wird Heizung Innenraum eingeschaltet</field> ! <next><block type="control" id="BsUeaH=)k=Z|t0m%:{f."><mutation delay_input="false"></mutation> ! <field name="OID">hm-rpc.0.MEQ1898345.1.STATE</field> ! <field name="WITH_DELAY">FALSE</field> ! <value name="VALUE"><block type="logic_boolean" id="([d|LWzo,qTOdz*;F@XP"><field name="BOOL">TRUE</field></block></value></block></next></block></statement> ! <statement name="ELSE"><block type="comment" id="2i*
Pj_j~)O,[miFe!!"><field name="COMMENT">Ist >= 12 Grad, wird die Heizung Innenraum ausgeschaltet</field> ! <next><block type="control" id="8!I7g0vzXKTu|gE/R(0X"><mutation delay_input="false"></mutation> ! <field name="OID">hm-rpc.0.MEQ1898345.1.STATE</field> ! <field name="WITH_DELAY">FALSE</field> ! <value name="VALUE"><block type="logic_boolean" id="u00cns;LbiATH-h1u*ev"><field name="BOOL">FALSE</field></block></value></block></next></block></statement> ! <next><block type="controls_if" id="LfwsZ(8LHDM2t~[if+Lp"><mutation else="1"></mutation> ! <value name="IF0"><block type="logic_compare" id="-v^Sk2.Aec8#0(R*O3jV"><field name="OP">LT</field> ! <value name="A"><block type="get_value" id="i)epc0Z*
@mC*h4sggJD"><field name="ATTR">val</field>
! <field name="OID">hm-rpc.0.MEQ1651240.1.TEMPERATURE</field></block></value>
! <value name="B"><block type="text" id="Pmt@VQ_.]Rvs3G{H/OL"><field name="TEXT">5.0</field></block></value></block></value> ! <statement name="DO0"><block type="comment" id="!M[ZSpa^y8M)}vWLj;oV"><field name="COMMENT">Ist < 5 Grad, wird Heizung Nahrung eingeschaltet</field> ! <next><block type="control" id="f]XQjw3cPr/6W!*-s@f/"><mutation delay_input="false"></mutation> ! <field name="OID">hm-rpc.0.MEQ1898434.1.STATE</field> ! <field name="WITH_DELAY">FALSE</field> ! <value name="VALUE"><block type="logic_boolean" id="Mf|v^sw7V[)kCO}Gd0:|"><field name="BOOL">TRUE</field></block></value></block></next></block></statement> ! <statement name="ELSE"><block type="comment" id="gxo-MvYBgJKL%t+X|vNZ"><field name="COMMENT">Ist >= 5 Grad, wird die Heizung Nahrung ausgeschaltet</field> ! <next><block type="control" id="(;|0~zl://s2CTuS?0:Y"><mutation delay_input="false"></mutation> ! <field name="OID">hm-rpc.0.MEQ1898434.1.STATE</field> ! <field name="WITH_DELAY">FALSE</field> ! <value name="VALUE"><block type="logic_boolean" id="Y/Asb+=h
;g?dg~q[(f9"><field name="BOOL">FALSE</field></block></value></block></next></block></statement></block></next></block></next></block></statement></block></xml>Stefan
-
Würde es nicht reichen, einfach statt "sonst" "sonst falls" (da dann wieder die Temperatur, größer als rein) einzustellen und da dann die Hysterese einzustellen?
Enrico
-
Würde es nicht reichen, einfach statt "sonst" "sonst falls" (da dann wieder die Temperatur, größer als rein) einzustellen und da dann die Hysterese einzustellen?
Enrico `
Jup nur dan sollte man bei sonst fall halt auch nen schwellenwert einbauen, siehe hier meine idee dazu die werte kannst du natuerlich noch besser definieren wen notieg ich habe jetzt 0.5 grad als unterschiedsfactor genommen:
! ````
<block xmlns="http://www.w3.org/1999/xhtml" type="on" id="dE({Ufz==CGiWXmY%Lgj" x="37.15997314453125" y="-62.79999923706055"><field name="OID">hm-rpc.0.MEQ1651240.1.TEMPERATURE</field>
<field name="CONDITION">ne</field><statement name="STATEMENT"><block type="comment" id="x^V6-6XQ:=pDWJI.n@Y?"><field name="COMMENT">Überprüfen ob die Temperatur kleiner 12 Grad beträgt</field>
<next><block type="controls_if" id=";%ijSa!;s_Y+|6x_;/gm"><mutation elseif="1"></mutation>
<value name="IF0"><block type="logic_compare" id="G@9_PW:,dbZhN,CNfI6a"><field name="OP">LT</field>
<value name="A"><block type="get_value" id="4GO0u[([F:Nj(Yl(vFw*"><field name="ATTR">val</field>
<field name="OID">hm-rpc.0.MEQ1651240.1.TEMPERATURE</field></block></value>
<value name="B"><block type="text" id="Wo4)+BB#{2#c!ATkZi10"><field name="TEXT">11.8</field></block></value></block></value>
<statement name="DO0"><block type="comment" id="Ayuyx~6A}R=s*qKt}5C"><field name="COMMENT">Ist < 12 Grad, wird Heizung Innenraum eingeschaltet</field> <next><block type="control" id="BsUeaH=)k=Z|t0m%:{f."><mutation delay_input="false"></mutation> <field name="OID">hm-rpc.0.MEQ1898345.1.STATE</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="logic_boolean" id="([d|LWzo,qTOdz*;F@XP"><field name="BOOL">TRUE</field></block></value></block></next></block></statement> <value name="IF1"><block type="logic_compare" id="x+yf.;_/66TPYSKY(B,)"><field name="OP">GT</field> <value name="A"><block type="get_value" id="v5[~|%RY8bS-
!w(2@A1"><field name="ATTR">val</field>
<field name="OID">hm-rpc.0.MEQ1651240.1.TEMPERATURE</field></block></value>
<value name="B"><block type="text" id="n5@CKY?:ycAa]hh,0wTl"><field name="TEXT">12.3</field></block></value></block></value>
<statement name="DO1"><block type="comment" id="2i*Pj_j~)O,[miFe!
!"><field name="COMMENT">Ist >= 12 Grad, wird die Heizung Innenraum ausgeschaltet</field>
<next><block type="control" id="8!I7g0vzXKTu|gE/R(0X"><mutation delay_input="false"></mutation>
<field name="OID">hm-rpc.0.MEQ1898345.1.STATE</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE"><block type="logic_boolean" id="u00cns;LbiATH-h1uev"><field name="BOOL">FALSE</field></block></value></block></next></block></statement>
<next><block type="controls_if" id="LfwsZ(8LHDM2t~[if+Lp"><mutation elseif="1"></mutation>
<value name="IF0"><block type="logic_compare" id="-v^Sk2.Aec8#0(RO3jV"><field name="OP">LT</field>
<value name="A"><block type="get_value" id="i)epc0Z*@mC*h4sggJD"><field name="ATTR">val</field> <field name="OID">hm-rpc.0.MEQ1651240.1.TEMPERATURE</field></block></value> <value name="B"><block type="text" id="Pmt@VQ_.]Rvs
3G{H/OL"><field name="TEXT">4.8</field></block></value></block></value>
<statement name="DO0"><block type="comment" id="!M[ZSpa^y8M)}vWLj;oV"><field name="COMMENT">Ist < 5 Grad, wird Heizung Nahrung eingeschaltet</field>
<next><block type="control" id="f]XQjw3cPr/6W!-s@f/"><mutation delay_input="false"></mutation>
<field name="OID">hm-rpc.0.MEQ1898434.1.STATE</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE"><block type="logic_boolean" id="Mf|v^sw7V[)kCO}Gd0:|"><field name="BOOL">TRUE</field></block></value></block></next></block></statement>
<value name="IF1"><block type="logic_compare" id=":6-K..1Q#b0}VA2m+R?H"><field name="OP">GT</field>
<value name="A"><block type="get_value" id="5m(uHspjm|4E)7CZ(]8J"><field name="ATTR">val</field>
<field name="OID">hm-rpc.0.MEQ1651240.1.TEMPERATURE</field></block></value>
<value name="B"><block type="text" id="_%zGpl(N5Wy0%?5T0R:"><field name="TEXT">5.2</field></block></value></block></value>
<statement name="DO1"><block type="comment" id="gxo-MvYBgJKL%t+X|vNZ"><field name="COMMENT">Ist >= 5 Grad, wird die Heizung Nahrung ausgeschaltet</field>
<next><block type="control" id="(;|0~zl://s2CTuS?0:Y"><mutation delay_input="false"></mutation>
<field name="OID">hm-rpc.0.MEQ1898434.1.STATE</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE"><block type="logic_boolean" id="Y/Asb+=h`;g?dg~q[(f9"><field name="BOOL">FALSE</field></block></value></block></next></block></statement></block></next></block></next></block></statement></block>! ````
PS: bite angewoehnen blockly exports in [ spoiler ] UND [ code ] zue setzen
-
Würde es nicht reichen, einfach statt "sonst" "sonst falls" (da dann wieder die Temperatur, größer als rein) einzustellen und da dann die Hysterese einzustellen?
Enrico `
So etwa:
! ````
<xml xmlns="http://www.w3.org/1999/xhtml"><block id="dE({Ufz==CGiWXmY%Lgj" type="on" y="-42" x="-663"><field name="OID">hm-rpc.0.MEQ1651240.1.TEMPERATURE</field>
<field name="CONDITION">ne</field><statement name="STATEMENT"><block id="x^V6-6XQ:=pDWJI.n@Y?" type="comment"><field name="COMMENT">Überprüfen ob die Temperatur kleiner 12 Grad beträgt</field> <next><block id=";%ijSa!;s_Y+|6x_;/gm" type="controls_if"><mutation elseif="1"></mutation> <value name="IF0"><block id="G@9_PW:,dbZhN,CNfI6a" type="logic_compare"><field name="OP">LT</field> <value name="A"><block id="4GO0u[([F:Nj(Yl(vFw*" type="get_value"><field name="ATTR">val</field> <field name="OID">hm-rpc.0.MEQ1651240.1.TEMPERATURE</field></block></value> <value name="B"><block id="Wo4)+BB#{2#c!ATkZi10" type="text"><field name="TEXT">12.0</field></block></value></block></value> <statement name="DO0"><block id="Ayuyx~6A}`R=s*qKt}5C" type="comment"><field name="COMMENT">Ist < 12 Grad, wird Heizung Innenraum eingeschaltet</field> <next><block id="BsUeaH=)k=Z|t0m%:{f." type="control"><mutation delay_input="false"></mutation> <field name="OID">hm-rpc.0.MEQ1898345.1.STATE</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block id="([d|LWzo,qTOdz*;F@XP" type="logic_boolean"><field name="BOOL">TRUE</field></block></value></block></next></block></statement> <value name="IF1"><block id="dA,:6J0l.]PYx%oln-,@" type="logic_compare"><field name="OP">GTE</field> <value name="A"><block id="nIt@DSw6A%hy:WLz(gs3" type="get_value"><field name="ATTR">val</field> <field name="OID">hm-rpc.0.MEQ1651240.1.TEMPERATURE</field></block></value> <value name="B"><block id="[L[R3Y;-+jGCxW}#4pmu" type="text"><field name="TEXT">13</field></block></value></block></value> <statement name="DO1"><block id="2i*`Pj_j~)O,[miFe!`!" type="comment"><field name="COMMENT">Ist >= 12 Grad, wird die Heizung Innenraum ausgeschaltet</field> <next><block id="8!I7g0vzXKTu|gE/R(0X" type="control"><mutation delay_input="false"></mutation> <field name="OID">hm-rpc.0.MEQ1898345.1.STATE</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block id="u00cns;LbiATH-h1u*ev" type="logic_boolean"><field name="BOOL">FALSE</field></block></value></block></next></block></statement> <next><block id="LfwsZ(8LHDM2t~[if+Lp" type="controls_if"><mutation elseif="1"></mutation> <value name="IF0"><block id="-v^Sk2.Aec8#0(R*O3jV" type="logic_compare"><field name="OP">LT</field> <value name="A"><block id="i)epc0Z*`@mC*h4sggJD" type="get_value"><field name="ATTR">val</field> <field name="OID">hm-rpc.0.MEQ1651240.1.TEMPERATURE</field></block></value> <value name="B"><block id="Pmt@VQ_.]Rvs`3G{H/OL" type="text"><field name="TEXT">5.0</field></block></value></block></value> <statement name="DO0"><block id="!M[ZSpa^y8M)}vWLj;oV" type="comment"><field name="COMMENT">Ist < 5 Grad, wird Heizung Nahrung eingeschaltet</field> <next><block id="f]XQjw3cPr/6W!*-s@f/" type="control"><mutation delay_input="false"></mutation> <field name="OID">hm-rpc.0.MEQ1898434.1.STATE</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block id="Mf|v^sw7V[)kCO}Gd0:|" type="logic_boolean"><field name="BOOL">TRUE</field></block></value></block></next></block></statement> <value name="IF1"><block id=";?I(/[6/{GzG]wAa}(O4" type="logic_compare"><field name="OP">GTE</field> <value name="A"><block id="4v0[FqM@t(T97,bbr6[}" type="get_value"><field name="ATTR">val</field> <field name="OID">hm-rpc.0.MEQ1651240.1.TEMPERATURE</field></block></value> <value name="B"><block id="iUJynajAU-pjBmzVC^:`" type="text"><field name="TEXT">6.0</field></block></value></block></value> <statement name="DO1"><block id="gxo-MvYBgJKL%t+X|vNZ" type="comment"><field name="COMMENT">Ist >= 5 Grad, wird die Heizung Nahrung ausgeschaltet</field> <next><block id="(;|0~zl://s2CTuS?0:Y" type="control"><mutation delay_input="false"></mutation> <field name="OID">hm-rpc.0.MEQ1898434.1.STATE</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block id="Y/Asb+=h`;g?dg~q[(f9" type="logic_boolean"><field name="BOOL">FALSE</field></block></value></block></next></block></statement></block></next></block></next></block></statement></block></xml>
Enrico Mal sehen, was dutchman dazu vorschlägt. :) Er war schneller und ich hatte die gleiche Idee! :D
-
Mal sehen, was dutchman dazu vorschlägt.
Er war schneller und ich hatte die gleiche Idee!
`
Sehr schoen !!! dan haben wir ja inzwischen schon wieder 2 blockly experten dazu im forum RappiRN & Stefan1984 :mrgreen: :mrgreen: :mrgreen: :lol: :lol: :lol: :mrgreen: :mrgreen: :mrgreen:
-
Ihr seid klasse. Ohne euch hätte ich viel rätseln müssen.
Ich mache gerade noch andere Anpassungen. Probiere das Temperaturskript danach gleich aus.
Danke.
Grüße,
Stefan
-
:lol: :lol: :lol:
-
Ich mache gerade noch andere Anpassungen. `
Ich bin auch grad dabei, die Programme der CCU alle in den Javascript-Adapter zu übernehmen, weil ja jede Änderung in der CCU zu unerwünschten Nebeneffekten führen kann. :roll: Z.B. habe ich ja ständig meine Jalousien erweitert und irgendwann war es dann soweit, dass fast alle, bis auf eine sofort zum Sonnenaufgang aufgehen und eine nur so, wie es eigentlich sein soll erst 15 min später! :roll:
Enrico
-
Ich bin auch grad dabei, die Programme der CCU alle in den Javascript-Adapter zu übernehmen, weil ja jede Änderung in der CCU zu unerwünschten Nebeneffekten führen kann. `
Pass aber auf das kan auch beim JS passieren, immer wen ich auf der arbeit misst mit dne regeln haben sagen meine college: die server sind nicht dumm aber da sitzt mal wieder ein depp nach schweren wochenend an der tastatur :lol:
Scherz beiseite, darum ist es wichtig sich die logik und reihenfolge gut durch zu denken eventueel einfach mal auf nem papier schreiben/zeichnen.
Mit den sachen welche wir momentan machen geht es noch, wen man aber spaeter auf unterschiedliche variabelen mit abfragen events haben moechte kan das schon mal in die hose gehen.
z.b. wie hier lampen an wenn anwesend und nach sonnenuntergang, sonst nicht. Aber wen ich jetzt im winter nach 8 uhr nach hause kommen da bin ich doch da lampe geht aber nicht an weil zum sonnenuntergang keiner zuhause war.
Um mal ein beispiel zu geben, ich habe bei mir meine heizungssteuerung jetzt so realisiert (in holland mit gasheizung usw….) wobei ich per variabelen pro zimmer noch angeben ob er wohl oder nicht heizen soll.
Letztentlich alles auch in functionene zusammengefasst und laueft jetzt eins A, nur da gingen am anfang auch so einige sachen schieg :lol: :lol: :lol:
-
Ich kann es zwar nicht lesen, aber Hammer. Riesenprogramm. :shock:
Da bin ich noch lange nicht.
Grüße,
Stefan
-
Das Bild ist leider zu klein da ist nicht viel drauf zu erkennen.
Wegen der Anwesenheit hatte ich ja bei Stefan nachgefragt, ob denn bei beginnender Anwesenheit auch noch eingschaltet werden soll,bei mir müsste das dann so!
Ich bin da auch viel am probieren, manchmal eben auch ohne die Lösung selbst zu finden, aber dann kann man ja im Forum lesen, oder eben nachfragen. Ich würde mich auch gern in Javascript mehr zurechtfinden, aber Blockly ist mir schon eine riesen Hilfe!
Enrico
-
Um mal ein beispiel zu geben, ich habe bei mir meine heizungssteuerung jetzt so realisiert (in holland mit gasheizung usw….) wobei ich per variabelen pro zimmer noch angeben ob er wohl oder nicht heizen soll. `
Ich habe das auch, bisher nur in einem Kinderzimmer, das bei Abwesenheit, dieses Kindes die Solltemperatur abgesenkt wird. Irgendwie müssen ja die Kinder dazu gezwungen werden ihre Anwesenheit per Handy preiszugeben! :lol:
Enrico
-
Wegen der Anwesenheit hatte ich ja bei Stefan nachgefragt, ob denn bei beginnender Anwesenheit auch noch eingschaltet werden soll,bei mir müsste das dann so!
`
Bei mir auch, ich habe da so eine steuerung der lampen im wohnzimmer gleiche geschichte…
Ich bin da auch viel am probieren, manchmal eben auch ohne die Lösung selbst zu finden, aber dann kann man ja im Forum lesen, oder eben nachfragen. `
Dafuer ist es ja da
Ich würde mich auch gern in Javascript mehr zurechtfinden, aber Blockly ist mir schon eine riesen Hilfe! `
kommt drauf an was man erreichen will, im blockly geht viel ich hatte aber letztens ein problem das ich z.b. einen trigger haben wollte der reagiert auf alle temperatur aenderungen das ist in JS einfacher/schneller als blockly zusammen zu klicken troztdem is blockly eine Super loesung.
Bisschen offtopic aber tip: wen du mehr vom JS verstehen/lernen moechtest lohnt es sich immer den code an zu schauen welchen du met blockly gemacht hast.
Damit faengt man an die logic/aufbau zu verstehen und das zusammen mit der documentation bring einem schon weiter.
Aber wie gesagt, immer abhaengig von der situation, erfahrung und was man erreichen moechte.
-
Wegen der Anwesenheit hatte ich ja bei Stefan nachgefragt, ob denn bei beginnender Anwesenheit auch noch eingschaltet werden soll,bei mir müsste das dann so!
Enrico `
Ach … so meintest Du das. Werde ich noch anpassen.
Worauf man nicht alles achten muss.
Grüße,
Stefan
-
Ach … so meintest Du das. Werde ich noch anpassen.
Worauf man nicht alles achten muss. `
Du hättest das auch noch selbst bemerkt, wenn ihr abends nach Hause kommt und nicht die Lampen leuchten, die du gern hättest! :lol:
Enrico
-
Ach … so meintest Du das. Werde ich noch anpassen.
Worauf man nicht alles achten muss. `
Jup, das kannst du aber noch mit einem neuen trigger loesen der halt auf anwesenheit reagiert, dazu die abfrage zeit zwischen xx und xx.
Der naeste schritt ist dan auch noch dass du anwesenheit mit geofancy usw auf GPS steuerst (oder IFTTT, so mach ich es) anstatte variabelen zu setzen :mrgreen:
Du hättest das auch noch selbst bemerkt, wenn ihr abends nach Hause kommt und nicht die Lampen leuchten, die du gern hättest! :lol: `
und auch dazu jup, nur dan leidet der WAFF doch ordentlich an der spielerei
-
Jetzt ist nur noch zu klären, wer ist WAFF? :?:
-
Jetzt ist nur noch zu klären, wer ist WAFF? :?: `
Du verarschst mich oder 8-) , das ist die wichtigste variabelen bei allen technischen spielereien (ups ein F zuviel):
W = Woman
A = Acceptance
F = Factor
-
Bisschen offtopic aber tip: wen du mehr vom JS verstehen/lernen moechtest lohnt es sich immer den code an zu schauen welchen du met blockly gemacht hast.Damit faengt man an die logic/aufbau zu verstehen und das zusammen mit der documentation bring einem schon weiter. `
Das habe ich mir auch schon angesehen, man kann ja auf diese Weise auch ein Blockly als "normales" Script weitergeben. Ich habe auch schon ein paar normale Scripte am laufen, je nachdem wie das im Forum verfügbar war.
Tiefer einsteigen werde ich wohl erst können/müssen wenn Blockly für mich an irgendwelche Grenzen stößt, momentan sitzt diese Grenze vor dem Bildschirm! :lol:
WAF= weiblicher Akzeptanz Faktor (ganz wichtig für die Freigabe der Finanzen!) :lol:
Enrico