NEWS
Blockly temperatur schalten
-
Eigentlich hat paul53 das sogar schon mit den gelben Kommentar Blöcken mit ins Script eingebaut
Die erste Objekt ID ist die Temperatur und darauf bezieht sich auch der "Wert" im dunkel Magenta Block. Steuere Objekt ID ist Power vom Sonoff und schon läuft das. Also wirklich sehr einfach.
-
Eigentlich hat paul53 das sogar schon mit den gelben Kommentar Blöcken mit ins Script eingebaut
Die erste Objekt ID ist die Temperatur und darauf bezieht sich auch der "Wert" im dunkel Magenta Block. Steuere Objekt ID ist Power vom Sonoff und schon läuft das. Also wirklich sehr einfach. Die UND Verknüpfung ist eigentlich nicht nötig, da die nur dafür sorgt, dass das Script nur aus und einschaltet, wenn die Zustände nicht gerade eh schon vorherrschen, was nicht wirklich Sinn macht, zumindest für Deine Aufgabenstellung.
-
Die UND Verknüpfung ist eigentlich nicht nötig, da die nur dafür sorgt, dass das Script nur aus und einschaltet, wenn die Zustände nicht gerade eh schon vorherrschen, was nicht wirklich Sinn macht `
Für Sonoff (WLAN) mag das zutreffen, aber für Aktoren im ISM-Band (868 MHz) ist es wegen des Duty cycle sogar erforderlich. -
ok…ich muss das puzzel erst mal zusammen basten. Da bin ich schon am sterben..))
Melde mich wenn ich das Bild geschaft habe dieses nach zu bauen.
-
Die UND Verknüpfung ist eigentlich nicht nötig, da die nur dafür sorgt, dass das Script nur aus und einschaltet, wenn die Zustände nicht gerade eh schon vorherrschen, was nicht wirklich Sinn macht
Für Sonoff (WLAN) mag das zutreffen, aber für Aktoren im ISM-Band (868 MHz) ist es wegen des Duty cycle sogar erforderlich.
Sag ich doch, für das was der TE hat und wünscht, macht es keine Sinn
@Willy
lass die UND Blöcke mal weg, so verstehst schneller was Du da gerade bastelst. Dann vielleicht noch besser 2 falls Blöcke und nicht den falls sonst, denn da machen die UND Blöcke doch Sinn. Bei falls sonst muss man bisschen aufpassen :lol:
-
ich bin zu blöde dafür….siehe den anhang . Links mit dem "Und" das sieht ganz anders aus und ich finde nicht das was auf dem Bild zu sehen ist. so bekomme ich auch das "nicht" und die anderen sachen rein...
Kann ich nicht den Import von dem ganzen haben ? -
Kann ich nicht den Import von dem ganzen haben ? `
Kannst Du, aber dann ist der Lerneffekt gering.! ````
<xml xmlns="http://www.w3.org/1999/xhtml"><block type="comment" id="7MdN0:zgC8k%e7Toq9c{" x="63" y="13"><field name="COMMENT">ID: Aussentemperatur</field>
<next><block type="on" id=":o{:AWb?!yu2Gf*,et,|"><field name="OID">Object ID</field>
<field name="CONDITION">ne</field><statement name="STATEMENT"><block type="controls_if" id="2x+v|A;(se*vK-|];[Xb"><mutation elseif="1"></mutation> <value name="IF0"><block type="logic_operation" id="8fZP,[Ws_4Ef}oPpD~|V" inline="false"><field name="OP">AND</field> <value name="A"><block type="logic_compare" id="+5B/6!tn8y}VfhP)N{LE"><field name="OP">LTE</field> <value name="A"><block type="on_source" id="KIEv~bF{D_L()|h?PTX9"><field name="ATTR">state.val</field></block></value> <value name="B"><block type="math_number" id="UQ.|vvhe|Y@PHfg{eIX}"><field name="NUM">12</field></block></value></block></value> <value name="B"><block type="logic_negate" id="*o{^YF#%+1#w;`9.;zZN"><value name="BOOL"><block type="get_value" id="7(F4H]M#y9SczvrIOvv?"><field name="ATTR">val</field> <field name="OID">ID auswählen</field></block></value></block></value></block></value> <statement name="DO0"><block type="control" id="DgtT]w3Y;)@3UIB8Lpf9"><mutation delay_input="false"></mutation> <field name="OID">Object ID</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="logic_boolean" id="%HWOmnFn@~#H),GKa^/C"><field name="BOOL">TRUE</field></block></value></block></statement> <value name="IF1"><block type="logic_operation" id=",r[!OV]6qDDPtjtSk)%w" inline="false"><field name="OP">AND</field> <value name="A"><block type="logic_compare" id="=#9!JV0*s+,zBt;vCP,5"><field name="OP">GT</field> <value name="A"><block type="on_source" id="zzy?3m@?iI8X+a%?SK7B"><field name="ATTR">state.val</field></block></value> <value name="B"><block type="math_number" id="#xJW%ppUCQ0#YB3(~rME"><field name="NUM">15</field></block></value></block></value> <value name="B"><block type="get_value" id="=Y?|.RxLQw2Q5_`BBlKQ"><field name="ATTR">val</field> <field name="OID">ID auswählen</field></block></value></block></value> <statement name="DO1"><block type="control" id="wDp;n;C*vt75?^==8Awr"><mutation delay_input="false"></mutation> <field name="OID">Object ID</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="logic_boolean" id="^9Kwy?NA2*nvt#.eX~B5"><field name="BOOL">FALSE</field></block></value></block></statement></block></statement></block></next></block>
<block type="comment" id="MD.;;JAa7mpUqKq4MW}@" x="438" y="237"><field name="COMMENT">ID: Schalter</field></block></xml>
Die Datenpunkt-IDs sind noch zuzuweisen: Die Objekt-ID des Triggers ist die des Aussentemperatur-Datenpunktes. Die restllichen 4 IDs sind die des Schalters.
-
Danke…aber ich bekomme das Puzzel einfach nicht zusammen. Mit dem Lernefekt hast du zu 100% recht !
Wenn mir das mal einer zeigen könnte (also von angesicht zu angesicht) , dann würde ich das wohl auch erlernen können.
Bin 59 lenze und das hier zu verstehen ....da sterbe ich bei..))
ABER...Danke dir!!!!!!!
-
Bin 59 lenze `
Jungspund :lol: -
ist das so richtig ?
Im grünen feld ganz oben (actual Temp) ist die temperarturanzeige vom FRITZ!DECT 210.
Alle anderen (paulzwei POWER)ist dann der Sonoff Schalter.
Wenn ich bei der Zahl 12 und oder 15 die werte ändern möchte, brauch ich die nur überschreiben ?
gruss
willy
-
-
Dankeschön…für die Mühe mit mir!
-
Kurz zu den UND Blöcken, die anders aussehen. Mit der Maus ein rechtes Klick auf den Block und "externe Eingänge" wählen, dann sieht der so aus (funktioniert bei anderen Blöcken auch). Hat keine Auswirkung auf die Funktion, macht das ganze aber oft übersichtlicher.
Übrigens ist das Alter kein Grund etwas nicht zu verstehen. OK es dauert ab und zu mal länger, aber das ist ja auch das schöne am Alter, man hat auch bisschen mehr Zeit :lol:
-
schön gesagt..))
-
Hi.
Ich habe gerade ein ähnliches Anliegen/Problem wie der Threadersteller und muß sagen: Blockly sucks. :mrgreen:
Angeblich macht Blockly ja vieles einfacher, worin ja (vermutlich) auch der Grundgedanke liegt. Da die Blöcke aber nicht eindeutig zuzuordnen sind, ist es einfach zu umständlich.
Ich möchte z.B. einfach einen Heizlüfter bei 4°C einschalten und bei 6°C ausschalten. LOGISCH :lol: wäre, wenn man einen Block "WENN Temp. <4°C" mit einem Block "DANN schalte XX EIN" verknüpft. Und dann wieder einen Block "WENN Temp. >6°C" mit einem Block "DANN schalte XX AUS" verknüpft. Wären 4 "Hauptblöcke", in denen man nur noch Werte und ObjctID ändert. Im Bsp.von paul53 sind es - keine Ahnung - 20? Es ist echt zu umständlich aufgebaut.
Mein Sohn (7) "spielt" unter https://code.org/minecraft mit Blockly Minecraft. Für ihn ist es spielen, aber eigentlich programmiert er damit. Jedenfalls haben da die Blöcke eindeutige Namen mit eindeutiger Funktion. So etwas wünscht man sich auch hier. Leider fehlt das. Vermutlich ist es einfacher JAVA(script) zu lernen als Blockly zu begreifen :lol: :lol: .
Andi
PS: Ich habe mir jetzt auch einfach das Bsp. hier aus dem Thread kopiert und schau mal, ob ich das zum laufen bekomme. Momentan löse ich das noch ganz oldschool mit einem devireg330.
-
dann bin ich mal auf deine lösung gespannt , denke doch das du das blockly hier einstellen wirst !
-
Ich möchte z.B. einfach einen Heizlüfter bei 4°C einschalten und bei 6°C ausschalten. LOGISCH :lol: wäre, wenn man einen Block "WENN Temp. <4°C" mit einem Block "DANN schalte XX EIN" verknüpft. Und dann wieder einen Block "WENN Temp. >6°C" mit einem Block "DANN schalte XX AUS" verknüpft. Wären 4 "Hauptblöcke", in denen man nur noch Werte und ObjctID ändert. Im Bsp.von paul53 sind es - keine Ahnung - 20? Es ist echt zu umständlich aufgebaut. `
Da hast doch die Lösung schon geschrieben :lol:
Im Triger den DP mit der Temperatur und bei den FALSS den Power DP von Deinem Heizlüfter eintragen, fertig. Das Ding schaltet kleiner gleich 4°C ein und größer gleich 6°C wieder aus. Also recht einfach
Der Triger startet das Script sobald die Temperatur sich ändert und die FALLS Bedingung macht dann das was DU eben als WENN bezeichnest. Das heit eben in Blockly FALLS. Der Wert im FALLS Block unten bezieht sich auf den Wert des angegebenen Triger, somit ist das auch gleich die Temperatur und muss nicht extra noch mal angegeben werden.
PS Sind eigentlich nur 2 Blöcke, da man die einzelnen FALLS auch beliebig erweitern kann.
-
und obwohl "wert" nicht zugewiesen scheint funzt das ?
-
Wert ist zugewiesen, durch das Objekt im Triger. Habe ich oben aber auch geschrieben
-
thanks,
ja, nur habe ich irgendwo beispiele gesehen das das nochmal zugewiesen werden muss / sollte - dh der wert nur für den trigger gilt …