Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. IOBroker Parser Daten auslesen

    NEWS

    • 15. 05. Wartungsarbeiten am ioBroker Forum

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    IOBroker Parser Daten auslesen

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

      @Homoran

      @HenryH

      Ich habe den Firefox Inspektor verwendet, leider kann ich da nur einen Screenshot erzeugen, aber da wird der Wert angezeigt.
      Inspektor.JPG

      Die API hat leider keine Production today: ich habe auch schon versucht die Daten über Prometheus export auszulesen da fehlen aber auch dieser Wert.

      Prometheus export: http://192.168.1.40:9246/metrics

      # HELP go_gc_duration_seconds A summary of the GC invocation durations.
      # TYPE go_gc_duration_seconds summary
      go_gc_duration_seconds{quantile="0"} 0.000202916
      go_gc_duration_seconds{quantile="0.25"} 0.000440885
      go_gc_duration_seconds{quantile="0.5"} 0.000534945
      go_gc_duration_seconds{quantile="0.75"} 0.000700986
      go_gc_duration_seconds{quantile="1"} 0.015456939
      go_gc_duration_seconds_sum 23.252685806
      go_gc_duration_seconds_count 19881
      # HELP go_goroutines Number of goroutines that currently exist.
      # TYPE go_goroutines gauge
      go_goroutines 10
      # HELP go_info Information about the Go environment.
      # TYPE go_info gauge
      go_info{version="go1.9.2"} 1
      # HELP go_memstats_alloc_bytes Number of bytes allocated and still in use.
      # TYPE go_memstats_alloc_bytes gauge
      go_memstats_alloc_bytes 903216
      # HELP go_memstats_alloc_bytes_total Total number of bytes allocated, even if freed.
      # TYPE go_memstats_alloc_bytes_total counter
      go_memstats_alloc_bytes_total 1.4083734376e+10
      # HELP go_memstats_buck_hash_sys_bytes Number of bytes used by the profiling bucket hash table.
      # TYPE go_memstats_buck_hash_sys_bytes gauge
      go_memstats_buck_hash_sys_bytes 761234
      # HELP go_memstats_frees_total Total number of frees.
      # TYPE go_memstats_frees_total counter
      go_memstats_frees_total 6.92664268e+08
      # HELP go_memstats_gc_cpu_fraction The fraction of this program's available CPU time used by the GC since the program started.
      # TYPE go_memstats_gc_cpu_fraction gauge
      go_memstats_gc_cpu_fraction 1.8929979341869276e-05
      # HELP go_memstats_gc_sys_bytes Number of bytes used for garbage collection system metadata.
      # TYPE go_memstats_gc_sys_bytes gauge
      go_memstats_gc_sys_bytes 1.907712e+07
      # HELP go_memstats_heap_alloc_bytes Number of heap bytes allocated and still in use.
      # TYPE go_memstats_heap_alloc_bytes gauge
      go_memstats_heap_alloc_bytes 903216
      # HELP go_memstats_heap_idle_bytes Number of heap bytes waiting to be used.
      # TYPE go_memstats_heap_idle_bytes gauge
      go_memstats_heap_idle_bytes 3.391488e+06
      # HELP go_memstats_heap_inuse_bytes Number of heap bytes that are in use.
      # TYPE go_memstats_heap_inuse_bytes gauge
      go_memstats_heap_inuse_bytes 1.949696e+06
      # HELP go_memstats_heap_objects Number of allocated objects.
      # TYPE go_memstats_heap_objects gauge
      go_memstats_heap_objects 14971
      # HELP go_memstats_heap_released_bytes Number of heap bytes released to OS.
      # TYPE go_memstats_heap_released_bytes gauge
      go_memstats_heap_released_bytes 2.048e+06
      # HELP go_memstats_heap_sys_bytes Number of heap bytes obtained from system.
      # TYPE go_memstats_heap_sys_bytes gauge
      go_memstats_heap_sys_bytes 5.341184e+06
      # HELP go_memstats_last_gc_time_seconds Number of seconds since 1970 of last garbage collection.
      # TYPE go_memstats_last_gc_time_seconds gauge
      go_memstats_last_gc_time_seconds 1.5590502239117749e+09
      # HELP go_memstats_lookups_total Total number of pointer lookups.
      # TYPE go_memstats_lookups_total counter
      go_memstats_lookups_total 2.229676e+06
      # HELP go_memstats_mallocs_total Total number of mallocs.
      # TYPE go_memstats_mallocs_total counter
      go_memstats_mallocs_total 6.92679239e+08
      # HELP go_memstats_mcache_inuse_bytes Number of bytes in use by mcache structures.
      # TYPE go_memstats_mcache_inuse_bytes gauge
      go_memstats_mcache_inuse_bytes 3472
      # HELP go_memstats_mcache_sys_bytes Number of bytes used for mcache structures obtained from system.
      # TYPE go_memstats_mcache_sys_bytes gauge
      go_memstats_mcache_sys_bytes 16384
      # HELP go_memstats_mspan_inuse_bytes Number of bytes in use by mspan structures.
      # TYPE go_memstats_mspan_inuse_bytes gauge
      go_memstats_mspan_inuse_bytes 20884
      # HELP go_memstats_mspan_sys_bytes Number of bytes used for mspan structures obtained from system.
      # TYPE go_memstats_mspan_sys_bytes gauge
      go_memstats_mspan_sys_bytes 49152
      # HELP go_memstats_next_gc_bytes Number of heap bytes when next garbage collection will take place.
      # TYPE go_memstats_next_gc_bytes gauge
      go_memstats_next_gc_bytes 4.194304e+06
      # HELP go_memstats_other_sys_bytes Number of bytes used for other system allocations.
      # TYPE go_memstats_other_sys_bytes gauge
      go_memstats_other_sys_bytes 1.410794e+06
      # HELP go_memstats_stack_inuse_bytes Number of bytes in use by the stack allocator.
      # TYPE go_memstats_stack_inuse_bytes gauge
      go_memstats_stack_inuse_bytes 950272
      # HELP go_memstats_stack_sys_bytes Number of bytes obtained from system for stack allocator.
      # TYPE go_memstats_stack_sys_bytes gauge
      go_memstats_stack_sys_bytes 950272
      # HELP go_memstats_sys_bytes Number of bytes obtained from system.
      # TYPE go_memstats_sys_bytes gauge
      go_memstats_sys_bytes 2.760614e+07
      # HELP go_threads Number of OS threads created.
      # TYPE go_threads gauge
      go_threads 15
      # HELP http_request_duration_microseconds The HTTP request latencies in microseconds.
      # TYPE http_request_duration_microseconds summary
      http_request_duration_microseconds{handler="prometheus",quantile="0.5"} 24824.777
      http_request_duration_microseconds{handler="prometheus",quantile="0.9"} 24824.777
      http_request_duration_microseconds{handler="prometheus",quantile="0.99"} 24824.777
      http_request_duration_microseconds_sum{handler="prometheus"} 291210.45700000005
      http_request_duration_microseconds_count{handler="prometheus"} 5
      # HELP http_request_size_bytes The HTTP request sizes in bytes.
      # TYPE http_request_size_bytes summary
      http_request_size_bytes{handler="prometheus",quantile="0.5"} 300
      http_request_size_bytes{handler="prometheus",quantile="0.9"} 300
      http_request_size_bytes{handler="prometheus",quantile="0.99"} 300
      http_request_size_bytes_sum{handler="prometheus"} 1532
      http_request_size_bytes_count{handler="prometheus"} 5
      # HELP http_requests_total Total number of HTTP requests made.
      # TYPE http_requests_total counter
      http_requests_total{code="200",handler="prometheus",method="get"} 5
      # HELP http_response_size_bytes The HTTP response sizes in bytes.
      # TYPE http_response_size_bytes summary
      http_response_size_bytes{handler="prometheus",quantile="0.5"} 2166
      http_response_size_bytes{handler="prometheus",quantile="0.9"} 2166
      http_response_size_bytes{handler="prometheus",quantile="0.99"} 2166
      http_response_size_bytes_sum{handler="prometheus"} 10785
      http_response_size_bytes_count{handler="prometheus"} 5
      # HELP process_cpu_seconds_total Total user and system CPU time spent in seconds.
      # TYPE process_cpu_seconds_total counter
      process_cpu_seconds_total 21559.23
      # HELP process_max_fds Maximum number of open file descriptors.
      # TYPE process_max_fds gauge
      process_max_fds 1024
      # HELP process_open_fds Number of open file descriptors.
      # TYPE process_open_fds gauge
      process_open_fds 12
      # HELP process_resident_memory_bytes Resident memory size in bytes.
      # TYPE process_resident_memory_bytes gauge
      process_resident_memory_bytes 1.1280384e+07
      # HELP process_start_time_seconds Start time of the process since unix epoch in seconds.
      # TYPE process_start_time_seconds gauge
      process_start_time_seconds 1.55666169412e+09
      # HELP process_virtual_memory_bytes Virtual memory size in bytes.
      # TYPE process_virtual_memory_bytes gauge
      process_virtual_memory_bytes 9.35559168e+08
      # HELP smartpi_active_watts Active Watts
      # TYPE smartpi_active_watts gauge
      smartpi_active_watts{phase="A"} -627.098139
      smartpi_active_watts{phase="B"} -704.090097
      smartpi_active_watts{phase="C"} -461.25288
      # HELP smartpi_amps Line current
      # TYPE smartpi_amps gauge
      smartpi_amps{phase="A"} 2.8728982733314483
      smartpi_amps{phase="B"} 3.0994031262230997
      smartpi_amps{phase="C"} 3.0415257814663175
      smartpi_amps{phase="N"} 2.136357139342743
      # HELP smartpi_apparent_power_volt_amps Line apparent power in volt amps
      # TYPE smartpi_apparent_power_volt_amps gauge
      smartpi_apparent_power_volt_amps{phase="A"} 679.785021
      smartpi_apparent_power_volt_amps{phase="B"} 723.677814
      smartpi_apparent_power_volt_amps{phase="C"} 712.321209
      # HELP smartpi_build_info A metric with a constant '1' value labeled by version, revision, branch, and goversion from which smartpi was built.
      # TYPE smartpi_build_info gauge
      smartpi_build_info{branch="",goversion="go1.9.2",revision="",version=""} 1
      # HELP smartpi_frequency_hertz Line frequency in hertz
      # TYPE smartpi_frequency_hertz gauge
      smartpi_frequency_hertz{phase="A"} 49.98047637641546
      smartpi_frequency_hertz{phase="B"} 49.99023628197617
      smartpi_frequency_hertz{phase="C"} 49.98047637641546
      # HELP smartpi_phase_angle Line voltage phase angle
      # TYPE smartpi_phase_angle gauge
      smartpi_phase_angle{phase="A"} -0.9997823934766707
      smartpi_phase_angle{phase="B"} -0.9990242823004072
      smartpi_phase_angle{phase="C"} -0.7343225094356856
      # HELP smartpi_power_factor_ratio Line power factor ratio
      # TYPE smartpi_power_factor_ratio gauge
      smartpi_power_factor_ratio{phase="A"} -47.51943482438104
      smartpi_power_factor_ratio{phase="B"} -50.117606617687464
      smartpi_power_factor_ratio{phase="C"} -33.355738534523965
      # HELP smartpi_reactive_power_volt_amps Line reactive power in volt amps reactive
      # TYPE smartpi_reactive_power_volt_amps gauge
      smartpi_reactive_power_volt_amps{phase="A"} -1104
      smartpi_reactive_power_volt_amps{phase="B"} -2469
      smartpi_reactive_power_volt_amps{phase="C"} -24768
      # HELP smartpi_volts Line voltage
      # TYPE smartpi_volts gauge
      smartpi_volts{phase="A"} 240.3552
      smartpi_volts{phase="B"} 238.6793
      smartpi_volts{phase="C"} 238.7578
      
      

      API: http://192.168.1.40/api/all/all/now

      {"serial":"smartpi","name":"House","lat":52.3667,"lng":9.7167,"time":"2019-05-28 15:33:57","softwareversion":"","ipaddress":"192.168.1.40","datasets":[{"time":"2019-05-28 15:33:54","phases":[{"phase":1,"name":"phase 1","values":[{"type":"current","unity":"A","info":"","data":2.8374162},{"type":"voltage","unity":"V","info":"","data":240.3186},{"type":"power","unity":"W","info":"","data":-615.93567},{"type":"cosphi","unity":"","info":"","data":-0.9999992},{"type":"frequency","unity":"Hz","info":"","data":49.97072}]},{"phase":2,"name":"phase 2","values":[{"type":"current","unity":"A","info":"","data":3.0533614},{"type":"voltage","unity":"V","info":"","data":239.0356},{"type":"power","unity":"W","info":"","data":-692.0152},{"type":"cosphi","unity":"","info":"","data":-0.99599},{"type":"frequency","unity":"Hz","info":"","data":49.97072}]},{"phase":3,"name":"phase 3","values":[{"type":"current","unity":"A","info":"","data":3.112565},{"type":"voltage","unity":"V","info":"","data":238.7494},{"type":"power","unity":"W","info":"","data":-456.0696},{"type":"cosphi","unity":"","info":"","data":-0.7409511},{"type":"frequency","unity":"Hz","info":"","data":49.97072}]},{"phase":4,"name":"phase 4","values":[{"type":"current","unity":"A","info":"","data":2.1447146}]}]}]}
      
      

      mfg

      Stefan

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

        @w_stefan Möchtest Du wirklich alle Daten haben oder interessiert Dich nur die Leistung der 3 Phasen ? In dem Fall wird die JSON-Rückgabe wesentlich kürzer (übersichtlicher). Was ergibt ?

        http://192.168.1.40/api/all/power/now
        
        W 1 Reply Last reply Reply Quote 0
        • W
          w_stefan @paul53 last edited by w_stefan

          @paul53
          Ich möchte den Wert Production Today: auslesen.
          Die gemessenen Werte lese ich über MQTT aus, leider fehlt da der Wert Prodcution Today:

          mfg

          Stefan

          paul53 G 3 Replies Last reply Reply Quote 0
          • paul53
            paul53 @w_stefan last edited by

            @w_stefan sagte:

            Wert Production Today: auslesen

            Den liefert die API offenbar nicht.

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

              @w_stefan sagte:

              Die gemessenen Werte lese ich über MQTT aus

              Was ist der Wert "Production today" ? Ist es die seit Mitternacht erzeugte Energie ?
              Da die Leistungswerte in Datenpunkten vorhanden sind, kann man die Energie auch daraus per Script ermitteln.

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

                @paul53
                Das ist der Strom der seit Mitternacht ins Netz geliefert wurde.
                Ich habe noch keine Möglichkeit gefunden wie ich an Hand der vorhandenen Daten die kWh errechnen kann die seit 00:00 ins Stromnetz geliefert wurden.

                Also um das Ganze Bild zu bekommen:
                Ich lese zwei Wechselrichter über MODBUS aus und ermittle mir folgende Wert über Blocky scripte,

                • Aktueller erzeugter Strom in Summe und kWh

                Am SmartPi2 ist der Wert Production today: der Strom der seit Mitternacht geliefert also verkauft wurde
                Wenn ich diesen Wert auslesen kann dann kann ich folgendes errechnen

                • Aktueller erzeugter Strom in kWh
                • Aktueller gelieferter Strom in kWh
                • Aktueller Eigenverbrauch in kWh

                Wie ich diese Daten dann noch weiterverwende lasse ich mal so stehen 😉

                mfg Stefan

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

                  @w_stefan sagte:

                  an Hand der vorhandenen Daten die kWh errechnen kann die seit 00:00 ins Stromnetz geliefert wurden.

                  Welche Energiedaten (kWh) hast Du ? Bei zwei Zählern müssen es mindestens 2 sein.

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

                    @w_stefan Habe nochmal in die API-Beschreibung geschaut: Was liefert ?

                    http://192.168.1.40/api/chart/123/energy_neg/from/2019-05-28T00:00:00.000Z/to/2019-05-28T23:59:59.000Z
                    
                    W 1 Reply Last reply Reply Quote 0
                    • W
                      w_stefan @paul53 last edited by

                      @paul53
                      Da bekomme ich eine sehr lange liste ich füge mal ein paar Zeilen davon ein,

                      [{"key":"energy_neg_1","values":[{"time":"2019-05-28T00:00:38+0200","value":0},{"time":"2019-05-28T00:01:38+0200","value":0},{"time":"2019-05-28T00:02:38+0200","value":0},{"time":"2019-05-28T00:03:38+0200","value":0},{"time":"2019-05-28T00:04:38+0200","value":0},{"time":"2019-05-28T00:05:38+0200","value":0},{"time":"2019-05-28T00:06:38+0200","value":0},{"time":"2019-05-28T00:07:38+0200","value":0},{"time":"2019-05-28T00:08:38+0200","value":0},{"time":"2019-05-28T00:09:38+0200","value":0},{"time":"2019-05-28T00:10:38+0200","value":0},{"time":"2019-05-28T00:11:38+0200","value":0},{"time":"2019-05-28T00:12:38+0200","value":0},{"time":"2019-05-28T00:13:38+0200","value":0},{"time":"2019-05-28T00:14:38+0200","value":0},{"time":"2019-05-28T00:15:38+0200","value":0},{"time":"2019-05-28T00:16:38+0200","value":0},{"time":"2019-05-28T00:17:38+0200","value":0},{"time":"2019-05-28T00:18:38+0200","value":0},{"time":"2019-05-28T00:19:38+0200","value":0},{"time":"2019-05-28T00:20:38+0200","value":0},{"time":"2019-05-28T00:21:38+0200","value":0},{"time":"2019-05-28T00:22:38+0200","value":0},{"time":"2019-05-28T00:23:38+0200","value":0},{"time":"2019-05-28T00:24:38+0200","value":0},{"time":"2019-05-28T00:25:38+0200","value":0},{"time":"2019-05-28T00:26:38+0200","value":0},{"time":"2019-05-28T00:27:38+0200","value":0},{"time":"2019-05-28T00:28:38+0200","value":0},{"time":"2019-05-28T00:29:38+0200","value":0},{"time":"2019-05-28T00:30:38+0200","value":0},{"time":"2019-05-28T00:31:38+0200","value":0},{"time":"2019-05-28T00:32:38+0200","value":0},{"time":"2019-05-28T00:33:38+0200","value":0},{"time":"2019-05-28T00:34:38+0200","value":0},{"time":"2019-05-28T00:35:38+0200","value":0},{"time":"2019-05-28T00:36:38+0200","value":0},{"time":"2019-05-28T00:37:38+0200","value":0},{"time":"2019-05-28T00:38:38+0200","value":0},{"time":"2019-05-28T00:39:38+0200","value":0},{"time":"2019-05-28T00:40:38+0200","value":0},{"time":"2019-05-28T00:41:38+0200","value":0},{"time":"2019-05-28T00:42:38+0200","value":0},{"time":"2019-05-28T00:43:38+0200","value":0},
                      ......
                      {"time":"2019-05-28T05:36:38+0200","value":0},{"time":"2019-05-28T05:37:38+0200","value":0.011686},{"time":"2019-05-28T05:38:38+0200","value":0.215463},{"time":"2019-05-28T05:39:38+0200","value":0.320196},{"time":"2019-05-28T05:40:38+0200","value":0.396893},{"time":"2019-05-28T05:41:38+0200","value":0.464893},{"time":"2019-05-28T05:42:38+0200","value":0.548018},{"time":"2019-05-28T05:43:38+0200","value":0.626463},{"time":"2019-05-28T05:44:38+0200","value":0.769812},{"time":"2019-05-28T05:45:38+0200","value":0.879776},{"time":"2019-05-28T05:46:38+0200","value":0.864358},{"time":"2019-05-28T05:47:38+0200","value":0.47255},{"time":"2019-05-28T05:48:38+0200","value":0.508675},{"time":"2019-05-28T05:49:38+0200","value":0.787256},{"time":"2019-05-28T05:50:38+0200","value":0.910286},{"time":"2019-05-28T05:51:38+0200","value":0.971017},{"time":"2019-05-28T05:52:38+0200","value":1.038461},{"time":"2019-05-28T05:53:38+0200","value":1.155311},{"time":"2019-05-28T05:54:38+0200","value":1.259149},{"time":"2019-05-28T05:55:38+0200","value":1.338321},{"time":"2019-05-28T05:56:38+0200","value":1.393945},{"time":"2019-05-28T05:57:38+0200","value":1.410182},{"time":"2019-05-28T05:58:38+0200","value":1.392263},{"time":"2019-05-28T05:59:38+0200","value":1.358365},{"time":"2019-05-28T06:00:38+0200","value":1.279139},{"time":"2019-05-28T06:01:38+0200","value":1.232844},{"time":"2019-05-28T06:02:38+0200","value":1.240933},{"time":"2019-05-28T06:03:38+0200","value":1.221412},{"time":"2019-05-28T06:04:38+0200","value":1.182327},{"time":"2019-05-28T06:05:38+0200","value":1.039863},{"time":"2019-05-28T06:06:38+0200","value":1.025826},{"time":"2019-05-28T06:07:38+0200","value":1.053544},{"time":"2019-05-28T06:08:38+0200","value":1.058505},{"time":"2019-05-28T06:09:38+0200","value":1.203207},{"time":"2019-05-28T06:10:38+0200","value":1.408451},{"time":"2019-05-28T06:11:38+0200","value":1.608653},{"time":"2019-05-28T06:12:38+0200","value":1.814166},{"time":"2019-05-28T06:13:38+0200","value":2.038608},{"time":"2019-05-28T06:14:38+0200","value":2.125416},{"time":"2019-05-28T06:15:38+0200","value":2.137722},
                      ....
                      
                      paul53 1 Reply Last reply Reply Quote 0
                      • W
                        w_stefan @paul53 last edited by

                        @paul53

                        Im IOBroker habe ich die kWh die meine SolarAnlage erzeugt.
                        Am SmartPi2 habe ich Production today: das sind die kWh die Geliefert wurden also,
                        Erzeugte kWh - Eigenverbrauch kWh = Production today

                        Der SMA Wechselrichter zeigt den Tagesertrag in kWH an
                        Der SolarEdge hat nur einen Gesamtertrag in kWh den im mir errechne indem ich den Vortageswert von 00:00 Uhr nehme und den vom aktuellen Gesamtertrag abziehe.

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

                          @w_stefan Da ich keine PV habe, muss ich fragen: Wofür ist der SMA-Wechselrichter und wofür SolarEdge ?

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

                            @w_stefan sagte:

                            Da bekomme ich eine sehr lange liste

                            Was bekommst Du, wenn als Zeitspanne eine Minute angegeben wird ?

                            http://192.168.1.40/api/chart/123/energy_neg/from/2019-05-28T20:09:00.000Z/to/2019-05-28T20:10:00.000Z
                            
                            1 Reply Last reply Reply Quote 0
                            • W
                              w_stefan @paul53 last edited by

                              @paul53
                              Ich habe 5kWp Photovoltaik an einem SMA Wechselrichter und 6.5kWp Photovoltaik an einem SolarEdge Wechselrichter

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

                                @w_stefan Also hast Du für Netzeinspeisung und -bezug nur die Informationen vom Smartpi ?
                                Dann kann man die Energiewerte mit einem Skript aus den Leistungen ermitteln. Als Anfangswerte für createState() bitte die Werte des "echten" Zählers eintragen !

                                const idPower1 = '...';  // Phase 1
                                const idPower2 = '...';  // Phase 2
                                const idPower3 = '...';  // Phase 3
                                const idBezug    = 'Smartpi.Bezug';
                                const idEinspeis = 'Smartpi.Einspeisung';
                                const idEinHeute = 'Smartpi.Einspeisung_heute';
                                const idEin0Uhr  = 'Smartpi.Einspeisung_Mitternacht'; 
                                 
                                // Energie-Datenpunkt erzeugen
                                createState(idBezug, 1.11, {type: 'number', unit: 'kWh'}); // Anfangswert anpassen !
                                createState(idEinspeis, 1.11, {type: 'number', unit: 'kWh'}); // Anfangswert anpassen !
                                createState(idEinHeute, 1.11, {type: 'number', unit: 'kWh'}); // Anfangswert anpassen !
                                createState(idEin0Uhr, 1.11, {type: 'number', unit: 'kWh'}); // Anfangswert anpassen !
                                
                                var e1, e2, e3;
                                var bezug, einspeis, mitternacht;
                                
                                setTimeout(function() {
                                   bezug       = 1000 * getState(idBezug).val; // Wh
                                   einspeis    = 1000 * getState(idEinspeis).val;
                                   mitternacht = 1000 * getState(idEin0Uhr).val;
                                }, 100); // Verzögerung für createState()
                                
                                function calcEnergy() {
                                   var energy = (e1 + e2 + e3) / 3600000; // Wh
                                   if(energy >= 0) {
                                      bezug = bezug + energy;
                                      setState(idBezug, Math.round(bezug) / 1000, true); // kWh mit 3 Nachkommastellen
                                   } else {
                                      einspeis = einspeis - energy; 
                                      setState(idEinspeis, Math.round(einspeis) / 1000, true); // kWh mit 3 Nachkommastellen
                                      setState(idEinHeute, Math.round(einspeis - mitternacht) / 1000, true);
                                   }  
                                }
                                
                                on({id: idPower1}, function(dp) {
                                   e1 = dp.oldState.val * (dp.state.ts - dp.oldState.ts); // mWs
                                   setTimeout(calcEnergy, 500);
                                });
                                
                                on({id: idPower2}, function(dp) {
                                   e2 = dp.oldState.val * (dp.state.ts - dp.oldState.ts); // mWs
                                );
                                
                                on({id: idPower3}, function(dp) {
                                   e3 = dp.oldState.val * (dp.state.ts - dp.oldState.ts); // mWs
                                });
                                
                                schedule('0 0 * * *', function() { // täglich um Mitternacht
                                   mitternacht = einspeis;
                                   setState(idEin0Uhr, Math.round(einspeis) / 1000, true); // kWh mit 3 Nachkommastellen
                                });
                                
                                
                                W 1 Reply Last reply Reply Quote 0
                                • W
                                  w_stefan @paul53 last edited by

                                  @paul53
                                  Danke für den Script ich werde das bei Gelegenheit mal testen.

                                  Ich werde den SmartPi2 mit einen anderen SmartMeter ersetzen welches mir die benötigen Werte und noch mehr über ModBus liefert.
                                  Mit dem SmartPi2 hatte bzw habe ich so einige Problem und ich glaube die Software ist noch nicht dort angekommen wo der Entwickler sie gerne haben möchte.

                                  mfg Stefan

                                  1 Reply Last reply Reply Quote 0
                                  • G
                                    goi @w_stefan last edited by

                                    @w_stefan könntest du einem Neuling beschreiben, wie du die Daten über MQTT vom smartPi auf den ioBroker bekommst? Was muss ich im smartPi und was im IoBroker eintragen?

                                    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

                                    1.0k
                                    Online

                                    31.6k
                                    Users

                                    79.5k
                                    Topics

                                    1.3m
                                    Posts

                                    parser adapter
                                    5
                                    20
                                    2718
                                    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