Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. [Vorlage] Betriebsstundenzähler & Verbrauchsrechner

    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

    [Vorlage] Betriebsstundenzähler & Verbrauchsrechner

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

      Hallo,

      bin auch rel. neu auf dem Gebiet, habe mir jetzt einen Gaszähler "Ableser" zusammengebaut und wollte den mit diesem Skript auswerten aber irgendwas hab ich nicht verstanden. Es werden bei mir keine Werte akkumuliert und den offset Wert des Gaszählers hätte ich bei special add2 hinzugezählt

      Der Gaszähler ist in m³ angegeben, ein Impuls sind 0,1m³, Offset wäre 19456m³, der Reed Kontakt arbeitet soweit so gut, die Daten werden auch aufgezeichnet, soweit so gut aber bei jeden Impuls zählt der Zähler zweimal und die Summe wird nicht erhöht. Im Bild zu sehen bei Zählerstand Switch 26 und Zählerstand Calc 19456.1 (woher das .1 kommt keine Ahnung 😉 sollte aber schon bei 19458.6 sein), wenn der reed Kontakt einmal anzieht zählt er zwei dazu, eben getestet mit externen Magnet.

      hier mal die Config

      //              1.Homematic ID,                    2.Feldname(no spaces)                    3.History  4.DAY  5.Week  6.Month 7.Year  8.Switch   9 - 18 Status to log                                                         19.stop 20.Loesch
      Gruppen[0] = ['rpi2.0.gpio.22.state'            ,'Gaszaehler'                           ,true  ,true   ,true   ,true   ,true   ,true   ,'calc' ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,false ,false]; // Schneckenzeit 
      
      //              Stat1           Stat2       Stat3       Stat4               Stat5       Stat6       Stat7       Stat8   Stat9   Stat10
      logname[0]  =   ['Zählerstand',''         ,''         ,''                 ,''         ,''         ,''         ,''     ,''     ,''];
      
      //             1.Round 2.add1   3.Faktor                4\. Divisor  5.add2  6.Individuallogik  7: DELTA(M)Grenze    8.Frei  9.Durchschnitt - 10.Zaehlschwelle     11 Schedule    12\. Min/MAX     13\. MehrfachStatus  14\. Selektives Logging
      special[0]  =  ['1'     ,''     ,'0.1'                 ,''         ,'19456'     ,''                 ,''                 ,''                         ,''             ,''             ,''                 ,''             ,''                 ,'true'  ]; // Schneckenzeit in Sekunden
      
      

      Vielelicht kann man es am Bild erkennen. Bitte um Hilfe was ich übersehen/vergessen/nicht behirnt habe, danke!

      Weiters würde ich gern den Verbrauch im FLOT anzeigen lassen, hierfür ist aber die zeit zwischen zwei inputs relevant da sich durch 0,1m³/Zeit der Verbrauch ausrechenn läßt und dann im Flot könnte man die Grafik dann anpassen, so hätte man dann eine auswertmöglichkeit wieviel Zeit die Gastherme im Teil bzw. Vollastbetrieb läuft.

      danke schonmal fürs lesen und ggf. Antwort schreiben 😉

      mfg Martin
      17434_iobroker-gpio22-gaszaehler.png

      1 Reply Last reply Reply Quote 0
      • M
        mazga last edited by

        @Georgius:

        Danke für die Arbeit.

        Bin nur eher ein Neuling. Wie installiert man das? Einfach einen neuen JS aufmachen und das txt reinkopieren? `

        Hab ich mich huete auch gefragt, geh aufs Admin Interface -> dann auf Skripte -> dann klickst auf common -> dann klickst auf das new script icon -> dann klickst auf JS udn dann fügst du das Skript von der ersten Seite ein und adaptierst deine Werte, speichern und fertig.

        mfg Martin

        1 Reply Last reply Reply Quote 0
        • S
          SkeeveKlah last edited by

          @Martin,

          das doppelte Zählen kommt evtl. direkt vom Reed. Hatte ich auch, im ESPEasy war bei mir "CHANGE" als default für einen Impulse eingetragen.

          Ich bin jetzt nur noch auf "FALLING", bei "RAISNG" habe ich immer komische Werte.

          1 Reply Last reply Reply Quote 0
          • M
            mazga last edited by

            @SkeeveKlah:

            das doppelte Zählen kommt evtl. direkt vom Reed. Hatte ich auch, im ESPEasy war bei mir "CHANGE" als default für einen Impulse eingetragen.

            Ich bin jetzt nur noch auf "FALLING", bei "RAISNG" habe ich immer komische Werte. `

            Lese es ja am RPi aus, der State wandelt ja nur von true -> false -> true, kann nur sein das die Logik vom BSZ true als "ist" ansieht und deswegen zweimal zählt?

            Ich kann den Reed Kontakt auch umbauen das default false ist und nur wenn er anzieht lvl up auf true geht. Ist derzeit ja nur auf einem Steckbord (Breadbord?) aufgebaut 😉

            mfg Martin

            1 Reply Last reply Reply Quote 0
            • L
              looxer01 last edited by

              Hi Martin,

              das ist ein Problem, dass Anfangs mit HM Geräten auftrat, weil ioBroker 2 x getriggert wurde.

              Einmal beim update vor dem Senden an HM (unbestätigt)

              und dann bei der Rückmeldung von HM (bestätigt)

              könnte es sein, dass es eine Rückmeldung vom Geräte gibt ? und wenn ja, kann man die Unterdrücken ?

              vG Looxer

              1 Reply Last reply Reply Quote 0
              • M
                mazga last edited by

                Hallo Looxer,

                also ich habs extra mal genau beobachtet, der gechaltene GPIO wandert nur einmal von true nach false wenn beim Gaszähler der magnet vorbeiwander und dann wieder auf true, ich werds aber umbauen. Wüsste nicht wo ich beim RPi im Iobroker da sonst was umstellen könnte ist ja wirklich onboard.

                wegen den anderen Sachen konntest du kurz über die cfg drüberschaun ob das so passen würde und hast du eine idee wie ich den Gasverbrauch im Flot angeben könnte also den verbrauch von 0,1m³/Zeiteinheit zwischen zwei trigger. naja und das Summieren geht gar nicht irgendwie also auch wenn doppelt gezählt wird wird derzeit nichts summiert.

                mfg Martin

                1 Reply Last reply Reply Quote 0
                • S
                  smooty1970 last edited by

                  Hallo Looxer.

                  Ersteinmal Danke und Lob für dein Script gen. BSZ. Mit meinen elektrischen Heizungen (IR) funktioniert das alles wunderbar.
                  Meine Frage nun. Wir bekommen zwar irgendwann demnächst smarte Stromzähler, aber ob die in den iobroker einbindbar sein werden, bleibt abzuwarten.
                  Ich habe bisher immer mtl. Wasser und Tag/Nachtstromzähler seit 2013 am Monatsende dokumentiert.
                  Bekomme ich irgendwie diese Daten in einen Zähler, der nach Eingabe des Ablesewerte die mtl. und jährlichen Verbräuche ausrechnet? Ich dachte, einen DP manuell anzulegen und hier am Monatsende den Zählerstand einzutragen, diesen DP durch dein Script beobachten zu lassen. Zweite Frage, die bisherigen Zählerstände - kann man die irgendwie nacherfassen?
                  Danke

                  1 Reply Last reply Reply Quote 0
                  • A
                    ahfreezer last edited by

                    Hi Loxxer,

                    versuche zum 3. Mal das Skript ans Laufen zu bekommen. Außer zig Fehlermeldungen passiert haber nichts.

                    Ich nutze ein HM Türsensor um den Gasverbrauch zu messen.
                    Den Sensor habe ich wie folgt im Skript hinterlegt.

                    Mehr Daten habe ich im Skript nicht geändert.

                    var Gruppen = [];
                    //              1.Homematic ID,                    2.Thema(no spaces)                    3.History  4.DAY  5.Week  6.Month 7.Year  8.Switch   9 - 18 Status to log                                                         19.stop 20.Loesch
                    Gruppen[ 0]  = ['hm-rpc.0.NEQ1678963'                    ,'HM_Gas_ping'                      ,true  ,true  ,true  ,true    ,true  ,true      ,''      ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,false ,false]; //
                    
                    
                    var logname = [];
                    //              Stat1           Stat2       Stat3       Stat4               Stat5       Stat6       Stat7       Stat8   Stat9   Stat10
                    logname[0]  =   ['Zaehler'      ,''         ,''         ,''                 ,''         ,''         ,''         ,''     ,''     ,''];
                    
                    var special = [];
                    //             1.Round 2.add1   3.Faktor                4. Divisor  5.add2  6.Individuallogik  7: DELTA(M)Grenze    8.Warten auf Bestaetigung  9.Durchschnitt - 10.Zaehlschwelle     11 Schedule    12. Min/MAX     13. MehrfachStatus  14. Selektives Logging
                    special[0]  =   ['2'     ,''     ,''                     ,''         ,''     ,''                 ,''                 ,''                         ,''             ,''             ,''                 ,''             ,''                 , ''     ]; 
                    
                    

                    Ich bekomme folgende Fehlermeldung wenn ich das Skript starte:

                    18.3.2019, 08:19:59.930	[info ]: javascript.0 Stop script script.js.common.Testskripte.Betriebsstundenzähler
                    18.3.2019, 08:20:04.207	[info ]: javascript.0 Start javascript script.js.common.Testskripte.Betriebsstundenzähler
                    18.3.2019, 08:20:04.208	[error]: javascript.0 script.js.common.Testskripte.Betriebsstundenzähler compile failed:
                    at script.js.common.Testskripte.Betriebsstundenzähler:293
                    

                    Mein Log von ioBroker überschlägt sich dann

                    javascript.0	2019-03-18 08:24:27.948	error	at TCP.onread (net.js:559:20)
                    javascript.0	2019-03-18 08:24:27.947	error	at Socket.Readable.push (_stream_readable.js:134:10)
                    javascript.0	2019-03-18 08:24:27.947	error	at readableAddChunk (_stream_readable.js:176:18)
                    javascript.0	2019-03-18 08:24:27.947	error	at Socket.emit (events.js:188:7)
                    javascript.0	2019-03-18 08:24:27.946	error	at emitOne (events.js:96:13)
                    javascript.0	2019-03-18 08:24:27.946	error	at Socket.realHandler (/opt/iobroker/node_modules/ws/lib/WebSocket.js:825:20)
                    javascript.0	2019-03-18 08:24:27.946	error	at Receiver.add (/opt/iobroker/node_modules/ws/lib/Receiver.js:103:24)
                    javascript.0	2019-03-18 08:24:27.945	error	at Receiver.expectHandler (/opt/iobroker/node_modules/ws/lib/Receiver.js:499:31)
                    javascript.0	2019-03-18 08:24:27.945	error	at Receiver.finish (/opt/iobroker/node_modules/ws/lib/Receiver.js:541:12)
                    javascript.0	2019-03-18 08:24:27.944	error	at Receiver.flush (/opt/iobroker/node_modules/ws/lib/Receiver.js:347:3)
                    javascript.0	2019-03-18 08:24:27.944	error	at /opt/iobroker/node_modules/ws/lib/Receiver.js:508:14
                    javascript.0	2019-03-18 08:24:27.943	error	at Receiver.applyExtensions (/opt/iobroker/node_modules/ws/lib/Receiver.js:371:5)
                    javascript.0	2019-03-18 08:24:27.943	error	at /opt/iobroker/node_modules/ws/lib/Receiver.js:536:18
                    javascript.0	2019-03-18 08:24:27.942	error	at Receiver.ontext (/opt/iobroker/node_modules/ws/lib/WebSocket.js:841:10)
                    javascript.0	2019-03-18 08:24:27.942	error	at WebSocket.emit (events.js:191:7)
                    javascript.0	2019-03-18 08:24:27.942	error	at emitTwo (events.js:106:13)
                    javascript.0	2019-03-18 08:24:27.941	error	at WebSocket.onMessage (/opt/iobroker/node_modules/ws/lib/WebSocket.js:442:14)
                    javascript.0	2019-03-18 08:24:27.941	error	at WebSocket.ws.onmessage (/opt/iobroker/node_modules/engine.io-client/lib/transports/websocket.js:146:10)
                    javascript.0	2019-03-18 08:24:27.940	error	at WS.Transport.onData (/opt/iobroker/node_modules/engine.io-client/lib/transport.js:137:8)
                    javascript.0	2019-03-18 08:24:27.940	error	at WS.Transport.onPacket (/opt/iobroker/node_modules/engine.io-client/lib/transport.js:145:8)
                    javascript.0	2019-03-18 08:24:27.939	error	at WS.Emitter.emit (/opt/iobroker/node_modules/engine.io-client/node_modules/component-emitter/index.js:133:20)
                    javascript.0	2019-03-18 08:24:27.939	error	at WS.<anonymous> (/opt/iobroker/node_modules/engine.io-client/lib/socket.js:268:10)
                    javascript.0	2019-03-18 08:24:27.938	error	at Socket.onPacket (/opt/iobroker/node_modules/engine.io-client/lib/socket.js:451:14)
                    javascript.0	2019-03-18 08:24:27.938	error	at Socket.Emitter.emit (/opt/iobroker/node_modules/engine.io-client/node_modules/component-emitter/index.js:133:20)
                    javascript.0	2019-03-18 08:24:27.937	error	at Socket.<anonymous> (/opt/iobroker/node_modules/component-bind/index.js:21:15)
                    javascript.0	2019-03-18 08:24:27.937	error	at Manager.ondata (/opt/iobroker/node_modules/socket.io-client/lib/manager.js:322:16)
                    javascript.0	2019-03-18 08:24:27.936	error	at Decoder.add (/opt/iobroker/node_modules/socket.io-parser/index.js:246:12)
                    javascript.0	2019-03-18 08:24:27.936	error	at Decoder.Emitter.emit (/opt/iobroker/node_modules/component-emitter/index.js:134:20)
                    javascript.0	2019-03-18 08:24:27.935	error	at Decoder.<anonymous> (/opt/iobroker/node_modules/component-bind/index.js:21:15)
                    javascript.0	2019-03-18 08:24:27.935	error	at Manager.ondecoded (/opt/iobroker/node_modules/socket.io-client/lib/manager.js:332:8)
                    javascript.0	2019-03-18 08:24:27.935	error	at Manager.Emitter.emit (/opt/iobroker/node_modules/socket.io-client/node_modules/component-emitter/index.js:133:20)
                    javascript.0	2019-03-18 08:24:27.934	error	at Manager.<anonymous> (/opt/iobroker/node_modules/component-bind/index.js:21:15)
                    javascript.0	2019-03-18 08:24:27.934	error	at Socket.onpacket (/opt/iobroker/node_modules/socket.io-client/lib/socket.js:236:12)
                    javascript.0	2019-03-18 08:24:27.933	error	at Socket.onack (/opt/iobroker/node_modules/socket.io-client/lib/socket.js:312:9)
                    javascript.0	2019-03-18 08:24:27.933	error	at Socket.adapter.getForeignState (/opt/iobroker/node_modules/iobroker.javascript/main.js:745:17)
                    javascript.0	2019-03-18 08:24:27.932	error	at createProblemObject (/opt/iobroker/node_modules/iobroker.javascript/main.js:1123:17)
                    javascript.0	2019-03-18 08:24:27.932	error	at prepareScript (/opt/iobroker/node_modules/iobroker.javascript/main.js:1070:37)
                    javascript.0	2019-03-18 08:24:27.931	error	at compile (/opt/iobroker/node_modules/iobroker.javascript/main.js:878:28)
                    javascript.0	2019-03-18 08:24:27.931	error	at Object.createScript (vm.js:56:10)
                    javascript.0	2019-03-18 08:24:27.931	error	SyntaxError: Unexpected token ;
                    javascript.0	2019-03-18 08:24:27.930	error	zaehler &lt; zaehler_array; zaehler++) { // addiere eins für jeden Druchgang zaehler2 = addZero(zaehler).zero2; // fuehrende Null // zusammenbauen von // /BSZ/SYSTEM/GRP00KUM = Kumuliert
                    javascript.0	2019-03-18 08:24:27.929	error	at script.js.common.Testskripte.Betriebsstundenzaehler:293
                    javascript.0	2019-03-18 08:24:27.929	error	script.js.common.Testskripte.Betriebsstundenzaehler compile failed:
                    

                    Kannst du mir weiterhelfen? Ich würde vermuten, es ist ne Kleinigkeit die ich hier falsch mache...ich komme nur leider nicht drauf.

                    Gruß
                    André

                    A K 2 Replies Last reply Reply Quote 0
                    • A
                      ahfreezer @ahfreezer last edited by

                      @ahfreezer sagte in [Vorlage] Generischer Betriebsstundenzähler und Verbrauchsrechner - Script:

                      Hi Loxxer,

                      versuche zum 3. Mal das Skript ans Laufen zu bekommen. Außer zig Fehlermeldungen passiert haber nichts.

                      Ich nutze ein HM Türsensor um den Gasverbrauch zu messen.
                      Den Sensor habe ich wie folgt im Skript hinterlegt.

                      Mehr Daten habe ich im Skript nicht geändert.

                      var Gruppen = [];
                      //              1.Homematic ID,                    2.Thema(no spaces)                    3.History  4.DAY  5.Week  6.Month 7.Year  8.Switch   9 - 18 Status to log                                                         19.stop 20.Loesch
                      Gruppen[ 0]  = ['hm-rpc.0.NEQ1678963'                    ,'HM_Gas_ping'                      ,true  ,true  ,true  ,true    ,true  ,true      ,''      ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,false ,false]; //
                      
                      
                      var logname = [];
                      //              Stat1           Stat2       Stat3       Stat4               Stat5       Stat6       Stat7       Stat8   Stat9   Stat10
                      logname[0]  =   ['Zaehler'      ,''         ,''         ,''                 ,''         ,''         ,''         ,''     ,''     ,''];
                      
                      var special = [];
                      //             1.Round 2.add1   3.Faktor                4. Divisor  5.add2  6.Individuallogik  7: DELTA(M)Grenze    8.Warten auf Bestaetigung  9.Durchschnitt - 10.Zaehlschwelle     11 Schedule    12. Min/MAX     13. MehrfachStatus  14. Selektives Logging
                      special[0]  =   ['2'     ,''     ,''                     ,''         ,''     ,''                 ,''                 ,''                         ,''             ,''             ,''                 ,''             ,''                 , ''     ]; 
                      
                      

                      Ich bekomme folgende Fehlermeldung wenn ich das Skript starte:

                      18.3.2019, 08:19:59.930	[info ]: javascript.0 Stop script script.js.common.Testskripte.Betriebsstundenzähler
                      18.3.2019, 08:20:04.207	[info ]: javascript.0 Start javascript script.js.common.Testskripte.Betriebsstundenzähler
                      18.3.2019, 08:20:04.208	[error]: javascript.0 script.js.common.Testskripte.Betriebsstundenzähler compile failed:
                      at script.js.common.Testskripte.Betriebsstundenzähler:293
                      

                      Mein Log von ioBroker überschlägt sich dann

                      javascript.0	2019-03-18 08:24:27.948	error	at TCP.onread (net.js:559:20)
                      javascript.0	2019-03-18 08:24:27.947	error	at Socket.Readable.push (_stream_readable.js:134:10)
                      javascript.0	2019-03-18 08:24:27.947	error	at readableAddChunk (_stream_readable.js:176:18)
                      javascript.0	2019-03-18 08:24:27.947	error	at Socket.emit (events.js:188:7)
                      javascript.0	2019-03-18 08:24:27.946	error	at emitOne (events.js:96:13)
                      javascript.0	2019-03-18 08:24:27.946	error	at Socket.realHandler (/opt/iobroker/node_modules/ws/lib/WebSocket.js:825:20)
                      javascript.0	2019-03-18 08:24:27.946	error	at Receiver.add (/opt/iobroker/node_modules/ws/lib/Receiver.js:103:24)
                      javascript.0	2019-03-18 08:24:27.945	error	at Receiver.expectHandler (/opt/iobroker/node_modules/ws/lib/Receiver.js:499:31)
                      javascript.0	2019-03-18 08:24:27.945	error	at Receiver.finish (/opt/iobroker/node_modules/ws/lib/Receiver.js:541:12)
                      javascript.0	2019-03-18 08:24:27.944	error	at Receiver.flush (/opt/iobroker/node_modules/ws/lib/Receiver.js:347:3)
                      javascript.0	2019-03-18 08:24:27.944	error	at /opt/iobroker/node_modules/ws/lib/Receiver.js:508:14
                      javascript.0	2019-03-18 08:24:27.943	error	at Receiver.applyExtensions (/opt/iobroker/node_modules/ws/lib/Receiver.js:371:5)
                      javascript.0	2019-03-18 08:24:27.943	error	at /opt/iobroker/node_modules/ws/lib/Receiver.js:536:18
                      javascript.0	2019-03-18 08:24:27.942	error	at Receiver.ontext (/opt/iobroker/node_modules/ws/lib/WebSocket.js:841:10)
                      javascript.0	2019-03-18 08:24:27.942	error	at WebSocket.emit (events.js:191:7)
                      javascript.0	2019-03-18 08:24:27.942	error	at emitTwo (events.js:106:13)
                      javascript.0	2019-03-18 08:24:27.941	error	at WebSocket.onMessage (/opt/iobroker/node_modules/ws/lib/WebSocket.js:442:14)
                      javascript.0	2019-03-18 08:24:27.941	error	at WebSocket.ws.onmessage (/opt/iobroker/node_modules/engine.io-client/lib/transports/websocket.js:146:10)
                      javascript.0	2019-03-18 08:24:27.940	error	at WS.Transport.onData (/opt/iobroker/node_modules/engine.io-client/lib/transport.js:137:8)
                      javascript.0	2019-03-18 08:24:27.940	error	at WS.Transport.onPacket (/opt/iobroker/node_modules/engine.io-client/lib/transport.js:145:8)
                      javascript.0	2019-03-18 08:24:27.939	error	at WS.Emitter.emit (/opt/iobroker/node_modules/engine.io-client/node_modules/component-emitter/index.js:133:20)
                      javascript.0	2019-03-18 08:24:27.939	error	at WS.<anonymous> (/opt/iobroker/node_modules/engine.io-client/lib/socket.js:268:10)
                      javascript.0	2019-03-18 08:24:27.938	error	at Socket.onPacket (/opt/iobroker/node_modules/engine.io-client/lib/socket.js:451:14)
                      javascript.0	2019-03-18 08:24:27.938	error	at Socket.Emitter.emit (/opt/iobroker/node_modules/engine.io-client/node_modules/component-emitter/index.js:133:20)
                      javascript.0	2019-03-18 08:24:27.937	error	at Socket.<anonymous> (/opt/iobroker/node_modules/component-bind/index.js:21:15)
                      javascript.0	2019-03-18 08:24:27.937	error	at Manager.ondata (/opt/iobroker/node_modules/socket.io-client/lib/manager.js:322:16)
                      javascript.0	2019-03-18 08:24:27.936	error	at Decoder.add (/opt/iobroker/node_modules/socket.io-parser/index.js:246:12)
                      javascript.0	2019-03-18 08:24:27.936	error	at Decoder.Emitter.emit (/opt/iobroker/node_modules/component-emitter/index.js:134:20)
                      javascript.0	2019-03-18 08:24:27.935	error	at Decoder.<anonymous> (/opt/iobroker/node_modules/component-bind/index.js:21:15)
                      javascript.0	2019-03-18 08:24:27.935	error	at Manager.ondecoded (/opt/iobroker/node_modules/socket.io-client/lib/manager.js:332:8)
                      javascript.0	2019-03-18 08:24:27.935	error	at Manager.Emitter.emit (/opt/iobroker/node_modules/socket.io-client/node_modules/component-emitter/index.js:133:20)
                      javascript.0	2019-03-18 08:24:27.934	error	at Manager.<anonymous> (/opt/iobroker/node_modules/component-bind/index.js:21:15)
                      javascript.0	2019-03-18 08:24:27.934	error	at Socket.onpacket (/opt/iobroker/node_modules/socket.io-client/lib/socket.js:236:12)
                      javascript.0	2019-03-18 08:24:27.933	error	at Socket.onack (/opt/iobroker/node_modules/socket.io-client/lib/socket.js:312:9)
                      javascript.0	2019-03-18 08:24:27.933	error	at Socket.adapter.getForeignState (/opt/iobroker/node_modules/iobroker.javascript/main.js:745:17)
                      javascript.0	2019-03-18 08:24:27.932	error	at createProblemObject (/opt/iobroker/node_modules/iobroker.javascript/main.js:1123:17)
                      javascript.0	2019-03-18 08:24:27.932	error	at prepareScript (/opt/iobroker/node_modules/iobroker.javascript/main.js:1070:37)
                      javascript.0	2019-03-18 08:24:27.931	error	at compile (/opt/iobroker/node_modules/iobroker.javascript/main.js:878:28)
                      javascript.0	2019-03-18 08:24:27.931	error	at Object.createScript (vm.js:56:10)
                      javascript.0	2019-03-18 08:24:27.931	error	SyntaxError: Unexpected token ;
                      javascript.0	2019-03-18 08:24:27.930	error	zaehler &lt; zaehler_array; zaehler++) { // addiere eins für jeden Druchgang zaehler2 = addZero(zaehler).zero2; // fuehrende Null // zusammenbauen von // /BSZ/SYSTEM/GRP00KUM = Kumuliert
                      javascript.0	2019-03-18 08:24:27.929	error	at script.js.common.Testskripte.Betriebsstundenzaehler:293
                      javascript.0	2019-03-18 08:24:27.929	error	script.js.common.Testskripte.Betriebsstundenzaehler compile failed:
                      

                      Kannst du mir weiterhelfen? Ich würde vermuten, es ist ne Kleinigkeit die ich hier falsch mache...ich komme nur leider nicht drauf.

                      Gruß
                      André

                      @looxer01 : kleiner Ping hier im Thread. Vlt. eine Idee an welcher Stelle ich den Betriebsstundenzähler falsch konfiguriert habe?

                      VG

                      dsiggi 1 Reply Last reply Reply Quote 0
                      • S
                        steinkuhl last edited by

                        Hallo alle miteinander,

                        dieses Script ist genau das, was mir viele Aufgaben gleichzeitig abnimmt, super !!!

                        Ich möchte folgendes realisieren:

                        es werden s0-Impulse vom Strom-Verbrauchszähler (75 Imp./KWh), PV-Erzeugungszähler (600 Imp./KWh), Wasserverbrauchszähler (1 Imp./L) und vom Gasverbrauchszähler (100 Imp./qbm) von einer SPS erfasst und per Modbus-TCP an IOBroker übertragen.

                        Ich habe die Möglichkeit, jeden Impuls von jedem Zähler direkt zu übertragen oder die Umrechnung auf die jeweilige Wertigkeit direkt in der SPS zu machen.

                        Meine Frage ist: welche Methode ist die für das Script die bessere ? Und wie trage ich die Impulswertigkeit (bei Übertragung der Direktimpulse) in das Script ein ?

                        Ich hänge meine Eintragungen mal an:

                        var Gruppen = [];
                        //              1.Homematic ID,                    2.Feldname(no spaces)                    3.History  4.DAY  5.Week  6.Month 7.Year  8.Switch   9 - 18 Status to log                                                         19.stop 20.Loesch
                        Gruppen[0] = ['modbus.6.holdingRegisters.40400_X11_1' ,'Strom-Bezug'                          ,true  ,true   ,true   ,true   ,true   ,true   ,'delta' ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,false ,false]; // Stromverbrauchserfassung 
                        Gruppen[1] = ['modbus.6.holdingRegisters.40401_X11_2' ,'Strom-Lieferung'                      ,true   ,true   ,true   ,true   ,true   ,true  ,'delta' ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,false ,false]; // Stromlieferungserfassung
                        Gruppen[2] = ['modbus.6.holdingRegisters.40402_X11_3' ,'Wasser-Verbrauch'                     ,true   ,true   ,true   ,true   ,true   ,true  ,'delta' ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,false ,false]; // Wasserverbrauchserfassung
                        Gruppen[3] = ['modbus.6.holdingRegisters.40403_X11_4' ,'Gas-Verbrauch'                        ,true  ,true  ,true  ,true  ,true  ,true  ,'delta' ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,false ,false]; // Gasverbrauchserfassung
                        
                        var logname = [];
                        //              Stat1           Stat2       Stat3       Stat4               Stat5       Stat6       Stat7       Stat8   Stat9   Stat10
                        logname[0]  =   ['Stromverbrauch' ,''        ,''         ,''                 ,''         ,''         ,''         ,''     ,''     ,''];
                        logname[1]  =   ['Stromlieferung' ,''        ,''         ,''                 ,''         ,''         ,''         ,''     ,''     ,''];
                        logname[2]  =   ['Wasserverbrauch' ,''       ,''         ,''                 ,''         ,''         ,''         ,''     ,''     ,''];
                        logname[3]  =   ['Gasverbrauch'  ,''         ,''         ,''                 ,''         ,''         ,''         ,''     ,''     ,''];
                        
                        var special = [];
                        
                        //             1.Round 2.add1   3.Faktor                4. Divisor  5.add2  6.Individuallogik  7: DELTA(M)Grenze    8.Frei  9.Durchschnitt - 10.Zaehlschwelle     11 Schedule    12. Min/MAX     13. MehrfachStatus  14. Selektives Logging
                        special[0]  =  ['3'     ,''     ,'75'                        ,''       ,''     ,''                 ,''                 ,''                         ,''             ,''             ,''                 ,''             ,''                 ,'true'  ]; // Stromverbrauch in KWh
                        special[1]  =  ['3'     ,''    ,'600'                        ,''      ,''     ,''                 ,''                 ,''                         ,''             ,''             ,''                 ,''             ,''                 ,'true'  ]; // Stromlieferung in KWh
                        special[2]  =  ['3'    ,''     ,'1000'                        ,''     ,''     ,''                 ,''                 ,''                         ,''             ,''             ,''                 ,''             ,''                 ,'true'      ]; // Wasserverbrauch in L
                        special[3]  =  ['3'    ,''     ,'0.01'                        ,''        ,''     ,''                 ,''                 ,''                         ,''             ,''             ,''                 ,''             ,''                 ,'true'      ]; // Gasverbrauch in QBM
                        

                        Vielen Dank im voraus !

                        S 1 Reply Last reply Reply Quote 0
                        • S
                          steinkuhl @steinkuhl last edited by

                          @steinkuhl HAllo alle miteinander,

                          ich habe es selber zum funktionieren gebracht, die Parameter der Zähler müssen bei Divisor hinein, nicht bei Faktor, jetzt läufts, super Sache.

                          Gruß Rainer

                          1 Reply Last reply Reply Quote 0
                          • K
                            Kalle @ahfreezer last edited by

                            @ahfreezer Moin, hast du zu diesem Problem eine Lösung gefunden? Habe diese Fehlermeldung und sehr ähnliche Logeinträge seit gestern bei allen Scripten?
                            LG Marcel

                            1 Reply Last reply Reply Quote 0
                            • dsiggi
                              dsiggi @ahfreezer last edited by dsiggi

                              @ahfreezer @Kalle

                              Ich denke ihr habt vergessen im Array "Gruppen" etwas für den Status zu setzten. Hier muss mindestens eines der Felder 9-18 befüllt sein. Im Biespiel von @ahfreezer müsste die Zeile so aussehen:

                              var Gruppen = [];
                              //              1.Homematic ID,                    2.Thema(no spaces)                    3.History  4.DAY  5.Week  6.Month 7.Year  8.Switch   9 - 18 Status to log                                                         19.stop 20.Loesch
                              Gruppen[ 0]  = ['hm-rpc.0.NEQ1678963'                    ,'HM_Gas_ping'                      ,true  ,true  ,true  ,true    ,true  ,true      ,'true'      ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,false ,false]; //
                              

                              Wo bei das true natürlich passend ersetzt werden muss. (Siehe die Beschreibung des Punktes)

                              Gruß,
                              dsiggi

                              1 Reply Last reply Reply Quote 0
                              • M
                                Mischa @looxer01 last edited by

                                @looxer01
                                Hallo,

                                ich habe heute iobroker auf einem Raspberry Pi 4 neu installiert und bin verzweifelt auf der Suche wie ich die historischen Daten des BSZ übertragen kann.
                                Hat jemand eine Ahnung in welcher Datei diese Daten zu finden sind?

                                Danke vorab!

                                1 Reply Last reply Reply Quote 0
                                • etv
                                  etv last edited by

                                  Liebe Leute,

                                  eine Frage hab ich zu dem Pfad der Daten. Die liegen ja unter javascript.0. und dann die Pfade die man ja eintragen kann.

                                  Wie bekomm' ich meine Objekte in den Ordner "0_userdata.0."??

                                  Dort liegen bei meiner neuen Installation alle selbst generierten Infos drinnen und da würde ich auch gerne die BSZ Daten drinnen haben, nur bekomm' ich den Pfad nicht von javascript.0. weg....

                                  Liebe Grüße
                                  Tom

                                  A 1 Reply Last reply Reply Quote 0
                                  • A
                                    andi2055 @etv last edited by

                                    @etv
                                    falls noch nicht bekannt: mit JS >=4.6.1 funktioniert es. Habe ich gerade getestet
                                    var sysLocation = "0_userdata.0.BSZ.System";

                                    etv 1 Reply Last reply Reply Quote 1
                                    • etv
                                      etv @andi2055 last edited by

                                      @andi2055 , ja danke dir hab ich gelesen.

                                      Ich hab mich in der Zwischenzeit daran "gewöhnt", dass diese Werte wo anders zu finden sind 😊

                                      Liebe Grüße
                                      Tom

                                      1 Reply Last reply Reply Quote 0
                                      • Negalein
                                        Negalein Global Moderator last edited by Negalein

                                        Da es mit dem BSZ unteranderem das WEEK.BEFORE gibt, hab ich mal das Script mit der Anleitung umzusetzen versucht.

                                        EDIT: Problem gelöst 😊

                                        1 Reply Last reply Reply Quote 0
                                        • K
                                          Kampfratte last edited by

                                          Hallo

                                          Seit dem Update auf Script-Engine 4.10.1 bekomme ich folgende Fehlermeldungen. Mit der vorigen Version lief alles noch.

                                          Unbenannt.png

                                          ? 1 Reply Last reply Reply Quote 0
                                          • ?
                                            A Former User @Kampfratte last edited by

                                            @Kampfratte ja, das ist bei mir auch.
                                            Hab zum Glück nur noch ein Datenpunkt drin, den ich mittlerweile anders auswerte...

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            904
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            javascript
                                            51
                                            333
                                            79035
                                            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