Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Blockly automatische ladeabschaltung Handy / Tablet [gelöst]

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Blockly automatische ladeabschaltung Handy / Tablet [gelöst]

    This topic has been deleted. Only users with topic management privileges can see it.
    • Duffy
      Duffy last edited by Duffy

      Hallo Freunde der Blocklys,

      ich hatte gerade mal wieder einen übermütigen Moment und dachte mir versuche doch mal ein Blockly zu erstellen welches beim Start des ladens eines Geräts eine Meldung an Telegram ausgibt und wenn die Leistung irgendwann unter einen gewissen Wert fällt, die Steckdose abschaltet und ebenfalls eine Meldung bringt.

      (Bis jetzt mache ich das über den device reminder aber wie gesagt, da war der übermütige Moment.)

      Bei mir schaut das so aus und es kommt weder eine Meldung noch schaltet die Steckdose ab.
      Könnte mir bitte jemand bei Gelegenheit helfen und sagen was ich da falsch mache?

      ae166d0d-03e3-47e1-be97-160301ad3631-grafik.png

      Gruß Duffy

      paul53 wendy2702 2 Replies Last reply Reply Quote 0
      • paul53
        paul53 @Duffy last edited by paul53

        @duffy sagte: was ich da falsch mache?

        Du musst Werte vergleichen - keine Objekte.
        Das Abschalten funktioniert so nicht, da auf den Aktor-Zustand getriggert wird, der sich während des Ladens nicht ändert, also auch nicht mehr triggert.

        1 Reply Last reply Reply Quote 0
        • wendy2702
          wendy2702 @Duffy last edited by wendy2702

          @duffy Ändert sich der Trigger überhaupt zwischendurch?

          Da solltest du besser den Akkuladezustand nehmen.

          Läuft so z.B. bei mir

          54bd62a7-64da-4ee3-a878-d8424cbc826b-grafik.png

          <xml xmlns="https://developers.google.com/blockly/xml">
            <variables>
              <variable id="gy#Eb,s7k}%GViOePfPO">level</variable>
              <variable id="Q2+]$P]GG=xFct/ppqvf">switch</variable>
            </variables>
            <block type="on_ext" id="nhC32/-RepWHmw*%I~pm" x="13" y="38">
              <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
              <field name="CONDITION">any</field>
              <field name="ACK_CONDITION"></field>
              <value name="OID0">
                <shadow type="field_oid" id="4%MZp,Z{xZo*M.=-m#-1">
                  <field name="oid">linux-control.0.VIS-EG.VIS_EG_Batterielevel</field>
                </shadow>
              </value>
              <statement name="STATEMENT">
                <block type="debug" id="od5g#C8=:P*#{Yz:hB=B">
                  <field name="Severity">log</field>
                  <value name="TEXT">
                    <shadow type="text" id="e~_8ZzI~$%58HxnE$/Fk">
                      <field name="TEXT">Aktualisiert Batterie Tablet EG</field>
                    </shadow>
                    <block type="text_join" id="DzGnJuT{~6T6PLy!KMWS">
                      <mutation items="2"></mutation>
                      <value name="ADD0">
                        <block type="text" id="0pSN5+ta7-dwZ[HWSphJ">
                          <field name="TEXT">Batterielevel Tablet EG aktualisiert </field>
                        </block>
                      </value>
                      <value name="ADD1">
                        <block type="get_value" id="Oc@8Qct(qP#s3j;U.olw">
                          <field name="ATTR">val</field>
                          <field name="OID">linux-control.0.VIS-EG.VIS_EG_Batterielevel</field>
                        </block>
                      </value>
                    </block>
                  </value>
                  <next>
                    <block type="variables_set" id="2f;:U}fOn?yy6O9hNv8J">
                      <field name="VAR" id="gy#Eb,s7k}%GViOePfPO">level</field>
                      <value name="VALUE">
                        <block type="convert_tonumber" id="`*1~)d2W_}5BYh@N3srx">
                          <value name="VALUE">
                            <block type="on_source" id="Og^2%jj!ha~w])tj=`~$">
                              <field name="ATTR">state.val</field>
                            </block>
                          </value>
                        </block>
                      </value>
                      <next>
                        <block type="controls_if" id="{mJ^K?zCUbPvc6d[%mMz">
                          <mutation elseif="1"></mutation>
                          <value name="IF0">
                            <block type="logic_compare" id="D^ew_g;%U,vW)7K_x|[/">
                              <field name="OP">LTE</field>
                              <value name="A">
                                <block type="variables_get" id="Lkj-r;,z5hIOhEH[!~5y">
                                  <field name="VAR" id="gy#Eb,s7k}%GViOePfPO">level</field>
                                </block>
                              </value>
                              <value name="B">
                                <block type="math_number" id="]PxY+0^pL?;rR?{gqd48">
                                  <field name="NUM">20</field>
                                </block>
                              </value>
                            </block>
                          </value>
                          <statement name="DO0">
                            <block type="debug" id="cczgC]q#ba.x@x1%!2@]">
                              <field name="Severity">log</field>
                              <value name="TEXT">
                                <shadow type="text" id=";X}$:$3x/(!/vMA*@zh7">
                                  <field name="TEXT">Aktor Tablet EG an</field>
                                </shadow>
                              </value>
                              <next>
                                <block type="variables_set" id="_RqefZ[$HOsi#iLoi60Y">
                                  <field name="VAR" id="Q2+]$P]GG=xFct/ppqvf">switch</field>
                                  <value name="VALUE">
                                    <block type="logic_boolean" id="aM`}zW0x:SBMpky4wcdf">
                                      <field name="BOOL">TRUE</field>
                                    </block>
                                  </value>
                                </block>
                              </next>
                            </block>
                          </statement>
                          <value name="IF1">
                            <block type="logic_compare" id="t)@)7.OIVwi4tJh}@eZA">
                              <field name="OP">GTE</field>
                              <value name="A">
                                <block type="variables_get" id="3bq]qHQ1`y6wjx5`_fyq">
                                  <field name="VAR" id="gy#Eb,s7k}%GViOePfPO">level</field>
                                </block>
                              </value>
                              <value name="B">
                                <block type="math_number" id="*M.ZJQuBf#:EauYi9SvO">
                                  <field name="NUM">95</field>
                                </block>
                              </value>
                            </block>
                          </value>
                          <statement name="DO1">
                            <block type="debug" id="fr64KIK^*/D?R1~IZ206">
                              <field name="Severity">log</field>
                              <value name="TEXT">
                                <shadow type="text" id="b44md8J8oGsc2~5MxEjb">
                                  <field name="TEXT">Aktor Tablet EG aus</field>
                                </shadow>
                              </value>
                              <next>
                                <block type="variables_set" id="955|WsT$$ef:U#/=kP(^">
                                  <field name="VAR" id="Q2+]$P]GG=xFct/ppqvf">switch</field>
                                  <value name="VALUE">
                                    <block type="logic_boolean" id="{rNSPk=jO4nw]VXiAnCd">
                                      <field name="BOOL">FALSE</field>
                                    </block>
                                  </value>
                                </block>
                              </next>
                            </block>
                          </statement>
                          <next>
                            <block type="controls_if" id="rTF0lWcJdc]!m#J0CM!j">
                              <value name="IF0">
                                <block type="logic_compare" id="#iFvC8ks5c)zFDV-aZF1">
                                  <field name="OP">NEQ</field>
                                  <value name="A">
                                    <block type="get_value" id="BBgP!#_U9N.VIep{PNrK">
                                      <field name="ATTR">val</field>
                                      <field name="OID">hm-rpc.0.MEQ1740655.1.STATE</field>
                                    </block>
                                  </value>
                                  <value name="B">
                                    <block type="variables_get" id="Ooq|Vmqrzafn~=^BKH:;">
                                      <field name="VAR" id="Q2+]$P]GG=xFct/ppqvf">switch</field>
                                    </block>
                                  </value>
                                </block>
                              </value>
                              <statement name="DO0">
                                <block type="control" id="DQyj3z[Ty:+|#es-}L/W">
                                  <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                  <field name="OID">hm-rpc.0.MEQ1740655.1.STATE</field>
                                  <field name="WITH_DELAY">FALSE</field>
                                  <value name="VALUE">
                                    <block type="variables_get" id="xM^bQ)DCRdUF#wq!x6aw">
                                      <field name="VAR" id="Q2+]$P]GG=xFct/ppqvf">switch</field>
                                    </block>
                                  </value>
                                </block>
                              </statement>
                            </block>
                          </next>
                        </block>
                      </next>
                    </block>
                  </next>
                </block>
              </statement>
            </block>
          </xml>
          

          Duffy paul53 3 Replies Last reply Reply Quote 0
          • Duffy
            Duffy @wendy2702 last edited by Duffy

            @wendy2702

            Vielen Dank für die Anregung.
            Wenn ich das richtig interpretiere ist das Blockly "nur" für ein bestimmtes Gerät, also nicht universal, richtig?

            Denke aber mal darüber nach ob ich das für etwas höherwertige Geräte einführe.

            Danke schön.

            Duffy.

            Edit: ich glaube bis ich das anpassen kann muß ich noch einiges dazu lernen 🙂

            wendy2702 1 Reply Last reply Reply Quote 0
            • paul53
              paul53 @wendy2702 last edited by paul53

              @wendy2702 sagte: besser den Akkuladezustand nehmen.

              @Duffy Falls der Ladezustand nicht verfügbar ist, sondern nur die Leistungsaufnahme, dann kann man es so machen:

              Blockly_temp.JPG

              Duffy 2 Replies Last reply Reply Quote 0
              • wendy2702
                wendy2702 @Duffy last edited by

                @duffy sagte in Blockly automatische ladeabschaltung Handy / Tablet:

                Wenn ich das richtig interpretiere ist das Blockly "nur" für ein bestimmtes Gerät, also nicht universal, richtig?

                Was meinst du mit Universal?

                Ich habe das für 3 Tablets laufen und jeweils die Objekte und die Prozenzwerte angepasst.

                Duffy 1 Reply Last reply Reply Quote 0
                • Duffy
                  Duffy @wendy2702 last edited by

                  @wendy2702

                  Aber mit 3 verschieden Blocklys, oder?

                  wendy2702 1 Reply Last reply Reply Quote 0
                  • wendy2702
                    wendy2702 @Duffy last edited by

                    @duffy Ja.

                    Duffy 1 Reply Last reply Reply Quote 0
                    • Duffy
                      Duffy @paul53 last edited by

                      @paul53

                      Ich habe "mein Blockly" mal so angepasst das es den Wert vergleicht.
                      Jetzt geht es zwar aber es kommt laufend die Meldung weil ja alle paar sek. der Vergleich erfüllt wird. (Ja, grundsätzlich logisch, im nachhinein (hätte es aber auch nicht anders hin bekommen))
                      Nicht umsonst sieht dein Vorschlag ganz anders aus. Ich werde den wohl übernehmen. 😊

                      Trotzdem wieder was gelernt, Werte vergleichen keine Objekte. 👍

                      Danke schön.

                      VG Duffy

                      1 Reply Last reply Reply Quote 0
                      • Duffy
                        Duffy @wendy2702 last edited by

                        @wendy2702

                        OK, danke das wäre jetzt auch verstanden. Bekommst du die Akkuwerte aus der ioBroker Visu? und verwendest du unterschiedliche Steckdosen oder wie bekommt ggf die eine Steckdose mit welches Blockly gerade für welches Gerät genommen werden muss.

                        wendy2702 1 Reply Last reply Reply Quote 0
                        • wendy2702
                          wendy2702 @Duffy last edited by

                          @duffy Die Tablets sind fest immer an den selben Steckdosen.

                          Die Akku Werte einmal über die iobroker app und 2x per ssh aus Linux

                          Duffy 1 Reply Last reply Reply Quote 0
                          • Duffy
                            Duffy @wendy2702 last edited by

                            @wendy2702

                            Ok Danke.

                            1 Reply Last reply Reply Quote 0
                            • Duffy
                              Duffy @paul53 last edited by

                              @paul53

                              Magst du bitte noch mal auf meinen Nachbau schauen?
                              Abschalten tut die Steckdose beim erreichen der vorgebeben Leistung aber ich bekomme keine Telegram Meldung.
                              Weder am start noch am Ende.

                              Ich bin mir auch nicht ganz sicher on der Telegram Baustein richtig ist zumal in der Vorlage unter "prüfe / falls wahr / falls falsch" kein Fensterchen mehr zu sehen ist. Bei mir ist da aber eins. Sollte zwar nichts machen da optional aber wer weis.
                              In anderen Blocklys funktioniert der Telegram Adapter / Baustein, an dem sollte es nicht liegen.
                              1d065ff4-2865-453a-8194-e7df5d4f370e-grafik.png

                              Gruß Duffy

                              V 1 Reply Last reply Reply Quote 0
                              • V
                                vepman @Duffy last edited by vepman

                                @duffy
                                Nimm mal den Baustein "per Telegram anrufen" raus und nimm den Baustein "Telegram".

                                Duffy 1 Reply Last reply Reply Quote 0
                                • Duffy
                                  Duffy @vepman last edited by Duffy

                                  @vepman

                                  Mein Gott wie peinlich. 😞
                                  Extra 5 mal verglichen und prompt das eine Wort (anrufen) übersehen.

                                  Das war es, danke das du mich darauf aufmerksam gemacht hast.

                                  Edit: kleine Einschränkung es kommt nur die Lade-endemeldung nicht aber der Start.
                                  @paul53 der falsche Block ist korrigiert..

                                  paul53 1 Reply Last reply Reply Quote 0
                                  • paul53
                                    paul53 @Duffy last edited by

                                    @duffy sagte: es kommt nur die Lade-endemeldung nicht aber der Start.

                                    Der Telegram-Block ist so (unter dem inneren falls-Block) angeordnet?

                                    Blockly_temp.JPG

                                    Duffy 1 Reply Last reply Reply Quote 0
                                    • Duffy
                                      Duffy @paul53 last edited by Duffy

                                      @paul53

                                      Nachdem ich ja schon mal was übersehen hatte bin mal ganz kleinlaut und zeige mal ein Bild von dem betreffenden Abschnitt von mir:

                                      b3f0b42e-4d7c-42b3-a718-599f7c1512a4-grafik.png

                                      Denke das sollte passen, bzw. gleich sein.

                                      paul53 1 Reply Last reply Reply Quote 0
                                      • paul53
                                        paul53 @Duffy last edited by paul53

                                        @duffy sagte: Denke das sollte passen.

                                        Ja, so muss auch der Start gemeldet werden, wenn das Ladegerät nicht vorher ausgeschaltet war und manuell eingeschaltet wurde.

                                        Sollte manuell eingeschaltet werden, dann mache es so:

                                        Blockly_temp.JPG

                                        Duffy 1 Reply Last reply Reply Quote 0
                                        • Duffy
                                          Duffy @paul53 last edited by Duffy

                                          @paul53

                                          Ich habe es mehrfach versucht.

                                          Mal mit: erst das Gerät angesteckt, dann die Steckdose eingeschaltet

                                          und auch mit:

                                          Erst die Steckdose eingeschaltet und dann das Gerät angesteckt.

                                          und auch verschiedene Geräte versucht.

                                          Bei allen Geräten war die Leitung über 10 Watt.
                                          Das abschalten habe ich über das abstecken der Geräte geprüft, Steckdose schaltet ab und Meldung kommt.

                                          Kann es sein das im Telegram Block der Block "Laden" erst informationen bekommt beim abschalten und keine beim einschalten?

                                          Hier noch mal das komplette Bockly:

                                          c0874e6d-3748-4a03-886f-007af96f3a8a-grafik.png

                                          Muss leider für heute schluss machen. Werde es morgen weiter versuchen.

                                          Schönen Abend und danke für deine Mühe und Geduld.

                                          VG Duffy

                                          Duffy 1 Reply Last reply Reply Quote 0
                                          • Duffy
                                            Duffy @Duffy last edited by

                                            @paul53

                                            Guten Tag Paul53,

                                            es kommt nach wie vor keine Telegram Startmeldung. Deshalb habe ich mal, so weit es mir möglich war, debugs rein gepackt.

                                            dd73e268-ee82-41ee-b6af-158673067bca-grafik.png

                                            Bis Laden 3 gibt es aus:

                                            javascript.0
                                            	2024-02-01 13:17:48.795	info	script.js.Ladegeräte.Laderegler_kopie: false Laden 3
                                            javascript.0
                                            	2024-02-01 13:17:48.794	info	script.js.Ladegeräte.Laderegler_kopie: false Laden 2
                                            javascript.0
                                            	2024-02-01 13:17:18.787	info	script.js.Ladegeräte.Laderegler_kopie: true Laden 1
                                            javascript.0
                                            	2024-02-01 13:17:08.802	info	script.js.Ladegeräte.Laderegler_kopie: true Laden 1
                                            javascript.0
                                            	2024-02-01 13:16:38.828	info	script.js.Ladegeräte.Laderegler_kopie: true Laden 1
                                            javascript.0
                                            	2024-02-01 13:16:18.827	info	script.js.Ladegeräte.Laderegler_kopie: true Laden 1
                                            javascript.0
                                            	2024-02-01 13:15:58.751	info	script.js.Ladegeräte.Laderegler_kopie: true Laden 1
                                            javascript.0
                                            	2024-02-01 13:15:48.772	info	script.js.Ladegeräte.Laderegler_kopie: true Laden 1
                                            javascript.0
                                            	2024-02-01 13:15:38.765	info	script.js.Ladegeräte.Laderegler_kopie: true Laden 1 
                                            

                                            False kommt dann wen ich das zu ladende Gerät ausstecke und dann kommt auch die Telegram fertig Meldung.

                                            Wenn ich es wieder einstecke sieht es so aus: (Es kommt aber wieder keine Telegrammeldung)

                                            javascript.0
                                            	2024-02-01 13:23:48.827	info	script.js.Ladegeräte.Laderegler_kopie: true Laden 1
                                            javascript.0
                                            	2024-02-01 13:23:38.766	info	script.js.Ladegeräte.Laderegler_kopie: true Laden 1
                                            javascript.0
                                            	2024-02-01 13:23:28.856	info	script.js.Ladegeräte.Laderegler_kopie: true Laden 1
                                            javascript.0
                                            	2024-02-01 13:23:18.803	info	script.js.Ladegeräte.Laderegler_kopie: true Laden 1 
                                            

                                            Hilft das weiter zur Fehlerfindung?

                                            Gruß Duffy

                                            paul53 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            635
                                            Online

                                            32.0k
                                            Users

                                            80.4k
                                            Topics

                                            1.3m
                                            Posts

                                            5
                                            37
                                            1331
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo