Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Dateien innerhalb eines Ordner-Baum verschieben ?

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Dateien innerhalb eines Ordner-Baum verschieben ?

    This topic has been deleted. Only users with topic management privileges can see it.
    • liv-in-sky
      liv-in-sky @dogfight76 last edited by

      @dogfight76 sagte in Dateien innerhalb eines Ordner-Baum verschieben ?:

      @homoran

      So sieht das Heizkurven-Script als Bild aus:

      script1.jpg
      script2.jpg
      script3.jpg

      Es passt leider nicht auf einen Screenshot

      wichtig ist ganz oben der punkt dp_erzeugen - diesen inhalt solltest du posten

      dogfight76 paul53 2 Replies Last reply Reply Quote 0
      • dogfight76
        dogfight76 @liv-in-sky last edited by

        @liv-in-sky

        Der Inhalt des dp_erzeugen.txt

        <xml xmlns="https://developers.google.com/blockly/xml">
          <variables>
            <variable id="TL/E#8hy`b_}U4U-w[%g">id</variable>
            <variable id="sqg^|Z.GyD~YS?p3T10l">init</variable>
            <variable id="*0;c)eXr/x0WRn.^V8d(">Wert</variable>
          </variables>
          <block type="procedures_defcustomnoreturn" id="?t`}5-SE@H9y4^U,*Ww[" x="-12" y="-287">
            <mutation statements="false">
              <arg name="id" varid="TL/E#8hy`b_}U4U-w[%g"></arg>
              <arg name="init" varid="sqg^|Z.GyD~YS?p3T10l"></arg>
            </mutation>
            <field name="NAME">DP_erzeugen</field>
            <field name="SCRIPT">Y3JlYXRlU3RhdGUoaWQsIGluaXQsIHt0eXBlOidudW1iZXInLCB1bml0OicnLCByZWFkOnRydWUsIHdyaXRlOnRydWUsIHJvbGU6J3ZhbHVlJ30pOw==</field>
            <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
          </block>
          <block type="variables_set" id="${U8`4UaX-wU!(F_s471" x="-12" y="-212">
            <field name="VAR" id="*0;c)eXr/x0WRn.^V8d(">Wert</field>
            <value name="VALUE">
              <block type="math_number" id="gO2*h5u|}gK%}S_!FU]s">
                <field name="NUM">-15</field>
              </block>
            </value>
            <next>
              <block type="controls_repeat_ext" id="noCas$0mJ3.Y|j^zgH9*">
                <value name="TIMES">
                  <shadow type="math_number" id="o6$xNg?pFggkNPhbt`tw">
                    <field name="NUM">36</field>
                  </shadow>
                </value>
                <statement name="DO">
                  <block type="procedures_callcustomnoreturn" id="#gC-4%]TcgN?R(gS5{j7">
                    <mutation name="DP_erzeugen">
                      <arg name="id"></arg>
                      <arg name="init"></arg>
                    </mutation>
                    <value name="ARG0">
                      <block type="text_join" id="~^R9i17@7@RZvVgEst~^">
                        <mutation items="2"></mutation>
                        <value name="ADD0">
                          <block type="text" id="`5ZJgtc()Rtl5:-Mm*E;">
                            <field name="TEXT">0_userdata.0.Waermepumpe.Heizkurve.Temperaturverschiebung.</field>
                          </block>
                        </value>
                        <value name="ADD1">
                          <block type="variables_get" id="m8qNyh_a?L-Fj!gECj]%">
                            <field name="VAR" id="*0;c)eXr/x0WRn.^V8d(">Wert</field>
                          </block>
                        </value>
                      </block>
                    </value>
                    <value name="ARG1">
                      <block type="math_number" id="_+^:eB}}8~[pqh2YuJC2">
                        <field name="NUM">0</field>
                      </block>
                    </value>
                    <next>
                      <block type="math_change" id="%|fC7x^?*u@Atq/`Db;d">
                        <field name="VAR" id="*0;c)eXr/x0WRn.^V8d(">Wert</field>
                        <value name="DELTA">
                          <shadow type="math_number" id="{ajkVzlIC78r;,C~fSYt">
                            <field name="NUM">1</field>
                          </shadow>
                        </value>
                      </block>
                    </next>
                  </block>
                </statement>
              </block>
            </next>
          </block>
          <block type="text_join" id="-8Gfz;`.(w5qRAV3wx*N" x="222" y="3111">
            <mutation items="3"></mutation>
            <value name="ADD0">
              <block type="text" id="wc5vD5d]]aT2YdVAySG=">
                <field name="TEXT">javascript.0.scriptEnabled.Meine_Geraete.Heizung.javascript.0.scriptEnabled.Meine_Geraete.Heizung.COP_rechnen</field>
              </block>
            </value>
          </block>
          <block type="procedures_callcustomnoreturn" id="rIyvxxTE#Yqz*E[OtOew" x="16" y="3725">
            <mutation name="DP_erzeugen">
              <arg name="id"></arg>
              <arg name="init"></arg>
            </mutation>
            <value name="ARG0">
              <block type="text_join" id="p{ZF/9x9*Vj(#1oYKm@.">
                <mutation items="3"></mutation>
                <value name="ADD0">
                  <block type="text" id="bb(wUigHqy4Q_`WsrM]Q">
                    <field name="TEXT">javascript.0.scriptEnabled.Meine_Geraete.Heizung.javascript.0.scriptEnabled.Meine_Geraete.Heizung.Warmwassertimer</field>
                  </block>
                </value>
              </block>
            </value>
            <value name="ARG1">
              <block type="logic_boolean" id="oZWX`8RLt6?|!TjphZ5t">
                <field name="BOOL">FALSE</field>
              </block>
            </value>
          </block>
        </xml>
        
        paul53 1 Reply Last reply Reply Quote 0
        • dogfight76
          dogfight76 @Homoran last edited by

          Die Datenpunkte sind unter 0_userdata auch angelegt und zeigen die korrekten Zustände an.
          Heute morgen war, bis auf die Log-Einträge, auch alles korrekt gestartet nach dem Ende der Nachtabsenkung. Die Heizklurve steuert auch wie gewünscht die Temperatur.

          Datenpunkte.jpg

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

            @dogfight76 sagte: Der Inhalt des dp_erzeugen.txt

            Lösche mal die überflüssigen Blöcke (weit unten) raus:

            Blockly_temp.JPG

            ['javascript.0.scriptEnabled.Meine_Geraete.Heizung.javascript.0.scriptEnabled.Meine_Geraete.Heizung.COP_rechnen','',''].join('');
            
            await DP_erzeugen(['javascript.0.scriptEnabled.Meine_Geraete.Heizung.javascript.0.scriptEnabled.Meine_Geraete.Heizung.Warmwassertimer','',''].join(''), false);
            

            EDIT: Nach Erstellung der Datenpunkte kann das komplette Skript gelöscht werden

            @dogfight76 sagte in Dateien innerhalb eines Ordner-Baum verschieben ?:

            unter 0_userdata

            Was befindet sich im Ordner "Heizkurve.VL_Temp"?

            dogfight76 2 Replies Last reply Reply Quote 0
            • paul53
              paul53 @liv-in-sky last edited by paul53

              @dogfight76 sagte: So sieht das Heizkurven-Script als Bild aus:

              Man verwendet nicht so viele Datenpunkte zum Triggern, da es viele Ressourcen verschwendet.

              Meine Lösung für die Heizkurve:

              Blockly_temp.JPG

              Es wird der VLT-Sollwert in Abhängigkeit von der Außentemperatur und dem Raumtemperatur-Sollwert (= Fußpunkt der Heizkurve) berechnet.

              Zur Erimttlung der Steilheit siehe hier. Mit deinen Daten:

              const ATA = -15;
              const FP  = 20;
              const VTA = 46;
              const HE = 1.05; // Fußbodenheizung
              const s = (VTA - FP) / Math.pow(FP - ATA, 1/HE);
              
              log(Math.round(s * 100) / 100); // Ergebnis: 0.88
              

              oder

              const ATA = -15;
              const FP  = 20;
              const VTA = 46;
              const HE = 1.3; // Radiatorenheizung
              const s = (VTA - FP) / Math.pow(FP - ATA, 1/HE);
              
              log(Math.round(s * 100) / 100); // Ergebnis: 1.69
              
              dogfight76 1 Reply Last reply Reply Quote 1
              • dogfight76
                dogfight76 @paul53 last edited by

                @paul53
                Liegen die vielen Datenpunkte in dem Script nicht weil diese Ansicht im VIS zum einstellen der Heizkurve benötigt werden ?
                Heizkurve.jpg

                Oder hat das nichts zu tun mit dem View-Ansicht in der VIS ?
                Weil ich dort ja direkt die Werte einstellen kann. Auch die einzelenen Datenpunkte innerhalb des Diagramm

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

                  @paul53 said in Dateien innerhalb eines Ordner-Baum verschieben ?:

                  Was befindet sich im Ordner "Heizkurve.VL_Temp"?

                  Dort sind diese Werte hinterlegt:
                  VL_Temp.jpg

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

                    @paul53 said in Dateien innerhalb eines Ordner-Baum verschieben ?:

                    Lösche mal die überflüssigen Blöcke (weit unten) raus:

                    Nur der Block den ich in rote Klammern gesetzt habe ,, oder was noch ?

                    löschen.jpg

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

                      @dogfight76 sagte: oder was noch ?

                      Nein, in diesem Skript weit unten.

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

                        @dogfight76 sagte: weil diese Ansicht im VIS zum einstellen der Heizkurve benötigt werden ?

                        Die 36 Datenpunkte werden also für die Visualisierung der Heizkurve erzeugt und aktualisiert.

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

                          @paul53
                          Das SAcript ist ja gar nicht mehr im ioBroker drin. Nur einmal laufen gelassen worden um die Datenpunkte zu erzeugen und dann wieder deinstalliert/gelöscht.

                          Muss ich das löschen und dann nochmal laufen lassen ? Oder wie würdesr das jetzt machen ?

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

                            @dogfight76 sagte: dann wieder deinstalliert/gelöscht.

                            Dann hat sich das erledigt, denn dieses Skript hat das verursacht:
                            @dogfight76 sagte: Ich weiß nicht warum der ganz Baum ab "Javascript" einfach nochmal angelegt wurde.

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

                              @paul53

                              Das hier ? Und bis wohin ? Was soll da raus ?
                              dp_erzeugen.jpg

                              Und dann einfach nochmal laufen lassen ?
                              Bereinigt das den komplettem Datenbaum ?

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

                                @dogfight76 sagte: Und dann einfach nochmal laufen lassen ?

                                Auf keinen Fall!

                                @dogfight76 sagte in Dateien innerhalb eines Ordner-Baum verschieben ?:

                                Bereinigt das den komplettem Datenbaum ?

                                Nein, das musst du manuell machen. Die Skripte befinden sich auch unter "javascript.0.scriptEnabled.Meine_Geraete.Heizung"? Dann kann der "javascript"-Ordner darunter gelöscht werden.

                                EDIT: Nach diesem Bild müssen die Skript-Freigaben unter "javascript.0.scriptEnabled.common.Meine_Geraete.Heizung" liegen. Dann solltest du den kompletten Ordner "Meine_Geraete" unter "javascript.0.scriptEnabled" löschen können.

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

                                  @paul53

                                  Ok, nur um ganz sicher zu sein. Unterm Strich muss ich jetzt nicht mehr machen als auf den den "Mülleimer" zu drücken den ich auf dem Screenshot eingekreis´t habe. Richtig ?
                                  Meine_geraete löschen.jpg

                                  Dann bin schon fertig und der Eintrag aus dem Log verschwindet.

                                  Das Script "dp_erzeugen" ist ja überhaupt nicht mehr auf dem PI vorhanden.
                                  Ich lösche den markierten Ordner und mache ein ioBroker internes Backup und lösche alle vorherigen Backups, weil dort der GFehler ja drin ist. FERTIG ?

                                  Gruß

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

                                    @dogfight76 sagte: den den "Mülleimer" zu drücken den ich auf dem Screenshot eingekreis´t habe. Richtig ?

                                    Ja, wenn die Bedingung erfüllt ist:
                                    @paul53 sagte in Dateien innerhalb eines Ordner-Baum verschieben ?:

                                    Skript-Freigaben unter "javascript.0.scriptEnabled.common.Meine_Geraete.Heizung" liegen

                                    @dogfight76 sagte in Dateien innerhalb eines Ordner-Baum verschieben ?:

                                    Eintrag aus dem Log verschwindet.

                                    Nach dem Löschen die Javascript-Instanz neu starten.

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

                                      @dogfight76 sagte: Ansicht im VIS zum einstellen der Heizkurve

                                      Es genügt, die Heizkurve bei Änderung des Fußpunktes der Kurve neu zu berechnen.

                                      Blockly_temp.JPG

                                      Die anderen Werte sind normalerweise konstant und können nach Änderung und Neuberechnung der Steilheit durch Skriptneustart berücksichtigt werden.

                                      Anmerkung: Anstelle der aktuellen Außentemperatur verwendet man zur Steuerung der VL-Temperatur besser eine gemischte Außentemperatur.

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

                                        @paul53 said in Dateien innerhalb eines Ordner-Baum verschieben ?:

                                        EDIT: Nach diesem Bild müssen die Skript-Freigaben unter "javascript.0.scriptEnabled.common.Meine_Geraete.Heizung" liegen. Dann solltest du den kompletten Ordner "Meine_Geraete" unter "javascript.0.scriptEnabled" löschen können.

                                        Oh Mann, ich will da jetzt nichts falsch machen !!!

                                        Das liegt unter dem Pfad:
                                        "javascript.0.scriptEnabled.common.Meine_Geraete.Heizung"
                                        javascript.0.scriptEnabled.common.Meine_Geraete.Heizung.jpg

                                        Dort liegen Dateien die alle so heißen wie die Scripte unter "Skripte". OK.
                                        Da ist die Heizkurve aber deaktiviert, sehe ich richtig oder ?

                                        Aber kann ich dann hier auf dem Bild den Mülleimer drücken und es läuft trotzdem alles weiter ?
                                        Löschen.jpg

                                        Ich frage nur nochmal weil ich nicht meine Stuerung zerschießen möchte.

                                        Danke für eure Hilfe

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

                                          @paul53 said in Dateien innerhalb eines Ordner-Baum verschieben ?:

                                          Es genügt, die Heizkurve bei Änderung des Fußpunktes der Kurve neu zu berechnen.

                                          Danke, das kommt wenn ich mit dem bereinigen fertig bin.

                                          Hast du das Blockly eventuell so für mich ?
                                          Und ich pausiere und lösche dann einfach das alte Heizkurven-Script.

                                          Und dein neues einfach Starten. Passt das es trotzdem noch mit der View im VIS ?
                                          Diese View und deren Steuerung
                                          Heizkurve.jpg

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

                                            @dogfight76 sagte: kann ich dann hier auf dem Bild den Mülleimer drücken und es läuft trotzdem alles weiter ?

                                            So sollte es sein.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            904
                                            Online

                                            31.8k
                                            Users

                                            80.0k
                                            Topics

                                            1.3m
                                            Posts

                                            7
                                            50
                                            1953
                                            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