Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. [gelöst]WP Skript merkwürdige zeitliche Steuerung ...

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    [gelöst]WP Skript merkwürdige zeitliche Steuerung ...

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

      Ich habe ein neues Thema aufgemacht, da ich glaube, dass das Thema hier in der Rubrik falsch ist.
      verschiedene Zeiten im Log

      Guten Morgen,
      ich bin noch neu im Thema blockly und habe mir die letzten Tage ein Skript für meine WP erstellt.

      Ich hatte Anfangs massive Probleme und habe dann, in dem ich debug output an verschiedenen Stellen eingebaut habe, heraus gefunden, dass die Uhrzeiten unterschiedlich sind:

      2023-04-14 06:23:00.001  - info: javascript.0 (1020) script.js.Wärmepumpe.Anhebung_ab12AT: Test2023.04.14 06:23:00.001
      

      Daraufhin habe ich versucht herauszufinden warum das so ist. Dazu muss ich sagen, dass ich einen NUC mit Proxmox und darauf eine VM mit Ubuntu und iobroker habe.
      Ich habe dann mit timedatectl auf Proxmox und dem Ubuntu von der VM geprüft wie die Zeiten sind und dann festgestellt, dass auf der VW die Zeitzone nicht richtig gewesen ist. Diese habe ich dann geändert und einmal Proxmox neu gestartet. Was leider nicht gereicht hat, die Zeiten waren immer noch unterschiedlich.
      Dann habe ich irgendwo gelesen, dass einem empfohlen wurde, in der Javascript Instanz in den Astroeinstellungen, den Hacken bei "Systemeinstellungen verwenden" raus zunehmen.
      Das habe ich gemacht und habe dann auch gedacht es würde funktionieren, da danach in den logs die Uhrzeit und die von mir über "debug output" ausgegebene Zeit übereinstimmte.

      Danach sind, ich kann nicht mehr 100% sagen ob gleichzeitig oder irgend wann später, plötzlich immer zwei log Ausgaben gekommen, obwohl nur ein "debug output" vorhanden ist.
      Ich habe dann diesen "debug output" Block deaktiviert. Seit dem kommt "nur" noch einer, wo her verstehe ich nicht.
      Das wäre meine erste Frage:

      Wo kommt die Info im log her?

      Heute Morgen wurde dann um 7:00 Uhr die WP eingeschaltet, was genau wieder 2 Stunden früher ist. Auch das verstehe ich nicht und das wäre meine zweite Frage:

      Warum schalte mein skript nicht richtig bzw wie finde ich heraus wo da der Fehler liegt?

      Ich versuche hier jetzt alles anzuhängen, was ich habe und hoffe, dass es nicht zu viel ist. Falls es zu wenig ist bitte Fragen, ich versuche dann die fehlenden Informationen nachzureichen.
      Vielen Dank schonmal für eure Hilfe.
      VG
      Sascha

      ea074e68-45cd-4a96-b428-1b291b07ad18-image.png4d78ab27-5525-45c3-aa30-4efac525b028-image.png6804cd69-3bad-4944-b4ab-48a2eaf02736-image.png

      Hier ein Schnipsel des logs mit den gleichen Zeiten von Heute morgen:

      2023-04-16 05:01:00.001 - warn: javascript.0 (9114) script.js.Wärmepumpe.Anhebung_ab12AT: VLT SOLL/IST Diff.:, -17.5, 2023.04.16 05:01:00.000
      

      Hier noch in Javascript, falls das für den einen oder anderen besser ist:

      schedule('{"time":{"start":"07:00","end":"18:00","mode":"minutes","interval":1},"period":{"days":1}}', async function () {
          if (getState("mqtt.0.panasonic_heat_pump.main.Heatpump_State").val == 1 && getState("mqtt.0.panasonic_heat_pump.main.Outside_Temp").val >= 8 && parseFloat(getState("mqtt.0.panasonic_heat_pump.main.Main_Outlet_Temp").val) - getState("mqtt.0.panasonic_heat_pump.main.Main_Target_Temp").val >= 1.5 && getState("mqtt.0.panasonic_heat_pump.main.Z1_Heat_Request_Temp").val < 5 && getState("mqtt.0.panasonic_heat_pump.main.ThreeWay_Valve_State").val == 0 && getState("mqtt.0.panasonic_heat_pump.main.Compressor_Freq").val <= 20 && getState("mqtt.0.panasonic_heat_pump.main.Compressor_Freq").val > 18) {
              console.warn((['VLT SOLL/IST Diff.:', ', ', parseFloat((parseFloat(getState("mqtt.0.panasonic_heat_pump.main.Main_Outlet_Temp").val) - getState("mqtt.0.panasonic_heat_pump.main.Main_Target_Temp").val))].join('')));
              setState("mqtt.0.panasonic_heat_pump.commands.SetZ1HeatRequestTemperature"/*SetZ1HeatRequestTemperature*/, parseFloat((parseFloat(parseFloat(getState("mqtt.0.panasonic_heat_pump.main.Z1_Heat_Request_Temp").val)) + 1)));
              console.log((['Anhebung:', ', ', parseFloat(getState("mqtt.0.panasonic_heat_pump.main.Z1_Heat_Request_Temp").val)].join('')));
          }
          if (parseFloat(getState("mqtt.0.panasonic_heat_pump.main.Main_Outlet_Temp").val) - getState("mqtt.0.panasonic_heat_pump.main.Main_Target_Temp").val <= -1 && getState("mqtt.0.panasonic_heat_pump.main.Z1_Heat_Request_Temp").val > 0 && getState("mqtt.0.panasonic_heat_pump.main.ThreeWay_Valve_State").val == 0) {
              setState("mqtt.0.panasonic_heat_pump.commands.SetZ1HeatRequestTemperature"/*SetZ1HeatRequestTemperature*/, (parseFloat(getState("mqtt.0.panasonic_heat_pump.main.Z1_Heat_Request_Temp").val) - 1));
              console.log((['Senkung:', ', ', parseFloat(getState("mqtt.0.panasonic_heat_pump.main.Z1_Heat_Request_Temp").val)].join('')));
          }
      });
      schedule('{"time":{"start":"07:00","end":"08:59","mode":"minutes","interval":1},"period":{"days":1}}', async function () {
          console.warn((['PV prüfen:', getState("sma-em.0.3006948198.psurplus").val, ', ', formatDate(new Date(), "JJJJ.MM.TT SS:mm:ss.sss")].join('')));
          if (getState("sma-em.0.3006948198.psurplus").val > 800) {
              setState("mqtt.0.panasonic_heat_pump.commands.SetHeatpump"/*SetHeatpump*/, 1);
          }
      });
      schedule('{"time":{"start":"09:00","exactTime":true},"period":{"days":1}}', async function () {
          if (getState("mqtt.0.panasonic_heat_pump.main.Heatpump_State").val == 0) {
              setState("mqtt.0.panasonic_heat_pump.commands.SetHeatpump"/*SetHeatpump*/, 1);
          }
      });
      schedule('{"time":{"start":"16:00","end":"17:59","mode":"minutes","interval":5},"period":{"days":1}}', async function () {
          if (getState("sma-em.0.3006948198.psurplus").val < 1 && getState("mqtt.0.panasonic_heat_pump.main.ThreeWay_Valve_State").val == 0) {
              setState("mqtt.0.panasonic_heat_pump.commands.SetHeatpump"/*SetHeatpump*/, 0);
          }
      });
      schedule('{"time":{"start":"18:00","exactTime":true},"period":{"days":1}}', async function () {
          if (getState("mqtt.0.panasonic_heat_pump.main.ThreeWay_Valve_State").val == 0) {
              setState("mqtt.0.panasonic_heat_pump.commands.SetHeatpump"/*SetHeatpump*/, 0);
          }
      });
      // Warmwassersteuerung:
      // Mo,Di,Do,Fr,So 43°
      schedule('{"time":{"exactTime":true,"start":"14:00"},"period":{"days":1,"dows":"[0,1,2,4,5]"}}', async function () {
          setState("mqtt.0.panasonic_heat_pump.commands.SetOperationMode"/*SetOperationMode*/, 4);
          setState("mqtt.0.panasonic_heat_pump.commands.SetDHWTemp"/*SetDHWTemp*/, 43);
          console.log((['WW+heizen ', parseFloat(getState("mqtt.0.panasonic_heat_pump.main.Operating_Mode_State").val), ' WW Soll Temp: ', parseFloat(getState("mqtt.0.panasonic_heat_pump.main.DHW_Target_Temp").val)].join('')));
      });
      // Mi,Sa 52°
      schedule('{"time":{"exactTime":true,"start":"14:00"},"period":{"days":1,"dows":"[3,6]"}}', async function () {
          setState("mqtt.0.panasonic_heat_pump.commands.SetOperationMode"/*SetOperationMode*/, 4);
          setState("mqtt.0.panasonic_heat_pump.commands.SetDHWTemp"/*SetDHWTemp*/, 52);
          console.log((['WW+heizen ', parseFloat(getState("mqtt.0.panasonic_heat_pump.main.Operating_Mode_State").val), ' WW Soll Temp: ', parseFloat(getState("mqtt.0.panasonic_heat_pump.main.DHW_Target_Temp").val)].join('')));
      });
      // zurück auf nur Heat
      schedule('{"time":{"exactTime":true,"start":"15:30"},"period":{"days":1,"dows":"[0,1,2,3,4,5,6]"}}', async function () {
          setState("mqtt.0.panasonic_heat_pump.commands.SetOperationMode"/*SetOperationMode*/, 0);
          console.log(('heizen ' + String(parseFloat(getState("mqtt.0.panasonic_heat_pump.main.Operating_Mode_State").val))));
      });
      
      W 1 Reply Last reply Reply Quote 0
      • W
        woupi @woupi last edited by

        PS.:

        Ich habe parallel, während ich oben das geschrieben habe, bei dem Skript rechts über den Schraubenschlüssel erst auf "debugen" gestellt. Daraufhin kam um 9:00 die Fehlermeldung

        javascript.0
        2023-04-16 09:00:00.006	warn	script.js.Wärmepumpe.Anhebung_ab12AT: setForeignState(id=mqtt.0.panasonic_heat_pump.commands.SetHeatpump, state={"val":1,"ack":false,"ts":1681628400006,"q":0,"from":"system.adapter.javascript.0","lc":1681628400006,"c":"script.js.Wärmepumpe.Anhebung_ab12AT"}) - wurde nicht ausgeführt, während der Debug-Modus aktiv ist
        

        Daraufhin habe ich das wieder deaktiviert und gerade, nach dem ich fertig geschrieben habe, nochmal in die logs geschaut.
        Der zweite falsche log Eintrag ist weg.

        Merkwürdig, aber damit hat sich die erste Frage ja eigentlich schon erledigt.

        W 1 Reply Last reply Reply Quote 0
        • W
          woupi @woupi last edited by

          Mir ist gerde im current log noch was aufgefallen:

          2023-04-16 01:50:00.003 - debug: shuttercontrol.0 (10132) calculate astrodata ...
          2023-04-16 01:50:00.003 - debug: shuttercontrol.0 (10132) Sun Azimut: 5.6°
          2023-04-16 01:50:00.003 - debug: shuttercontrol.0 (10132) Sun Elevation: -29.1°
          2023-04-16 01:55:00.002 - debug: shuttercontrol.0 (10132) calculate astrodata ...
          2023-04-16 01:55:00.003 - debug: shuttercontrol.0 (10132) Sun Azimut: 7°
          2023-04-16 01:55:00.003 - debug: shuttercontrol.0 (10132) Sun Elevation: -29°
          2023-04-16 02:00:00.005 - debug: shuttercontrol.0 (10132) calculate astrodata ...
          2023-04-16 02:00:00.006 - debug: shuttercontrol.0 (10132) Sun Azimut: 8.4°
          2023-04-16 02:00:00.006 - debug: shuttercontrol.0 (10132) Sun Elevation: -28.9°
          2023-04-16 00:00:00.031 - info: host.iobroker instance system.adapter.daswetter.0 started with pid 13008
          2023-04-16 02:00:00.882 - info: daswetter.0 (13008) starting. Version 3.1.7 in /opt/iobroker/node_modules/iobroker.daswetter, node: v14.21.2, js-controller: 4.0.24
          2023-04-16 00:00:04.049 - info: host.iobroker instance system.adapter.ical.0 started with pid 13023
          2023-04-16 02:00:05.102 - info: ical.0 (13023) starting. Version 1.13.2 in /opt/iobroker/node_modules/iobroker.ical, node: v14.21.2, js-controller: 4.0.24
          2023-04-16 02:00:06.405 - info: ical.0 (13023) processing URL: Müll https://calendar.google.com/calendar/ical/s.w.bernhard%40gmail.com/private-21faa25aa0eb243313582d9996cb7327/basic.ics
          2023-04-16 02:00:09.810 - info: daswetter.0 (13008) still wrong data structure from server received! repaired...
          2023-04-16 02:00:11.833 - info: ical.0 (13023) Terminated (NO_ERROR): Without reason
          2023-04-16 02:00:11.933 - info: daswetter.0 (13008) Terminated (ADAPTER_REQUESTED_TERMINATION): All data handled, adapter stopped until next scheduled moment
          2023-04-16 00:00:12.345 - info: host.iobroker instance system.adapter.ical.0 terminated with code 0 (NO_ERROR)
          2023-04-16 02:00:12.450 - info: daswetter.0 (13008) cleaned everything up...
          2023-04-16 00:00:12.456 - info: host.iobroker instance system.adapter.daswetter.0 terminated with code 11 (ADAPTER_REQUESTED_TERMINATION)
          

          Ab 2 Uhr, springt die Zeit hin und her zwischen der richtigen und dann wieder 2 Stunden zurück.
          Da wundert mich natürlich nicht, dass auch das Skript so merkwürdige Dinge bezogen auf den Zeittrigger macht.

          Hat da einer eine Idee, oder sollte ich diesbezüglich noch mal explizit danach und in einem anderen Unterordner fragen?

          VG
          Sascha

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

          Support us

          ioBroker
          Community Adapters
          Donate

          798
          Online

          32.0k
          Users

          80.5k
          Topics

          1.3m
          Posts

          1
          3
          147
          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