Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Praktische Anwendungen (Showcase)
    4. [Linux Shell-Skript] WLAN-Wetterstation

    NEWS

    • 15. 05. Wartungsarbeiten am ioBroker Forum

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    [Linux Shell-Skript] WLAN-Wetterstation

    This topic has been deleted. Only users with topic management privileges can see it.
    • Negalein
      Negalein Global Moderator @a200 last edited by Negalein

      @a200 sagte in [Linux Shell-Skript] WLAN-Wetterstation:

      sudo /home/iobroker/ws_updater.sh

      ja

      Screenshot 2020-12-18 111509.png

      a200 1 Reply Last reply Reply Quote 0
      • a200
        a200 @Negalein last edited by

        @Negalein hast du vorher die Dateien:
        wetterstation.sh
        wetterstation.sub
        ws-updater.sh

        aus der 2.0 Version nach /home/iobroker kopiert? Zur Sicherheit kopiere die Dateien jetzt und führe den ws-updater aus.

        a200 Negalein 2 Replies Last reply Reply Quote 0
        • a200
          a200 @a200 last edited by

          @Negalein poste mal die Ausgabe von:

          head wetterstation.sh wetterstation.sub wetterstation.conf
          
          1 Reply Last reply Reply Quote 0
          • SBorg
            SBorg Forum Testing Most Active @Negalein last edited by

            @Negalein sagte in [Linux Shell-Skript] WLAN-Wetterstation:

            benutzt: V2.0.0 benötigt wird: V1.4.0

            Bedeutet, dass es Version 1.4 ist, mittels Updater aber auf V2.0 geupdated wurde. Falsche sub/sh, bzw. vergessen zu kopieren?

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

              @a200 sagte in [Linux Shell-Skript] WLAN-Wetterstation:

              ühre den ws-updater aus

              dietpi@DietPi:/home/iobroker$ sudo ./ws_updater.sh
              
               'bc' installiert: ✓
               'jq' installiert: ✓
              
              
               Version ist aktuell, nothing to do...
              
              

              head wetterstation.sh wetterstation.sub wetterstation.conf

              dietpi@DietPi:/home/iobroker$ head wetterstation.sh wetterstation.sub wetterstation.conf
              ==> wetterstation.sh <==
              #!/bin/bash
              
              # V2.0.0 - 15.12.2020 (c) 2019-2020 SBorg
              #
              # wertet ein Datenpaket einer WLAN-Wetterstation im Wunderground-Format aus, konvertiert dieses und überträgt
              # die Daten an den ioBroker
              #
              # benötigt den 'Simple RESTful API'-Adapter im ioBroker, 'jq' und 'bc' unter Linux
              #
              # V2.0.0 / 15.12.2020 - + Unterstützung des Gateways und Zusatzsensoren (@a200)
              
              ==> wetterstation.sub <==
              #!/bin/bash
              ### Subroutinen V2.0.0 --------------------------------------------------------
              
              
               #Bezeichnung der Datenpunkte
                DP_TEMP_INNEN=${PRE_DP}.Innentemperatur
                DP_TEMP_AUSSEN=${PRE_DP}.Aussentemperatur
                DP_TAUPUNKT=${PRE_DP}.Taupunkt
                DP_CHILL=${PRE_DP}.Chillfaktor
                DP_FEUCHTE_INNEN=${PRE_DP}.Innenfeuchtigkeit
              
              ==> wetterstation.conf <==
              ### Settings V2.0.0 -----------------------------------------------------------
               #Debuging einschalten [true/false] / default: false / Ausgabe der Messwerte
                debug=false
              
               #ioBroker-IP und Port der Simple-Restful-API [xxx.xxx.xxx.xxx:xxxxx]
                IPP=10.0.1.200:8087
              
               #Protokoll der Wetterstation [1/2] / 1=Wunderground ; 2=Ecowitt / default: 1
                WS_PROTOKOLL=1
              
              dietpi@DietPi:/home/iobroker$
              
              
              a200 1 Reply Last reply Reply Quote 0
              • SBorg
                SBorg Forum Testing Most Active @sonystar last edited by

                @sonystar sagte in [Linux Shell-Skript] WLAN-Wetterstation:

                Hallo,

                bei mir sind schon seit einigen Tagen die Datenpunkte
                "0_userdata.0.Statistik.Wetter.aktueller_Monat.Temperatur_Durchschnitt"
                und
                "0_userdata.0.Statistik.Wetter.VorTag.Temperatur_Durchschnitt"
                identisch miteinander. Sie werden jeden Tag neu beschrieben, aber eben beide immer mit dem selben Wert. Das ist doch so nicht normal oder?

                Hat das noch jemand? Bei mir waren es Vorgestern bspw. 8.4°C, Gestern dann 7.6°C und aktuell ~2°C (halt ohne Statistik).

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

                  @Negalein ok jetzt sollte es mit:

                  sudo /home/iobroker/wetterstation.sh --debug
                  

                  gehen

                  Negalein 2 Replies Last reply Reply Quote 0
                  • Negalein
                    Negalein Global Moderator @a200 last edited by

                    @a200 sagte in [Linux Shell-Skript] WLAN-Wetterstation:

                    sudo /home/iobroker/wetterstation.sh --debug

                    dietpi@DietPi:~$ sudo /home/iobroker/wetterstation.sh --debug
                    Connection to 10.0.1.200 8087 port [tcp/*] succeeded!
                    Listening on [0.0.0.0] (family 2, port 1080)
                    
                    
                    Messwerteblock:
                    
                    
                    Nicht alle Werte werden unterstützt (abhängig vom Modell der Wetterstation und dem verwendeten Protokoll)!
                    
                    Temperatur Innen        :  °C
                    Temperatur Aussen       :  °C
                    Taupunkt                :  °C
                    Chill-Faktor            :  °C
                    Luftfeuchte Innen       :  %
                    Luftfeuchte Aussen      :  %
                    Windgeschwindkeit       :  km/h
                    Windböengeschwindkeit   :  km/h
                    max. Windböe            :  km/h
                    Windrichtung            :  °
                    Windrichtung            :
                    Luftdruck absolut       :  hPa
                    Luftdruck relativ       :  hPa
                    Regenrate               :  mm/h
                    Regenstatus             :
                    Regen seit Regenbeginn  :  mm
                    Regen Stunde            :  mm
                    Regen Tag               :  mm
                    Regen Woche             :  mm
                    Regen Monat             :  mm
                    Regen Jahr              :  mm
                    Regen Gesamt            :  mm
                    Sonnenstrahlung         :  W/m²
                    UV-Index                :
                    Zeitstempel             :
                    Firmware                :
                    Batteriestand:          :
                    Gateway-Modell          :
                    
                    Zusatzsensoren: keine
                    
                    
                    Datenstring für ioBroker:
                    
                    
                    
                    DATA von Wetterstation:
                    
                    
                    
                    Debug VAR:
                    Installationsverzeichnis: /home/iobroker
                    IPP: 10.0.1.200:8087    WS_PORT: 1080           WS_POLL: 16             PRE_DP: javascript.0.Wetterstation
                    WEB: HTTP               WS_PROT: Wunderground   DP50/100: 0 | 0
                    Script-Version: V2.0.0  Config-Version: V2.0.0  Sub-Version: V2.0.0
                    
                    Kommunikationsfehler! Stimmt die WS_ID in der Konfiguration mit der der WS View-App überein?
                    
                    a200 1 Reply Last reply Reply Quote 0
                    • Negalein
                      Negalein Global Moderator @a200 last edited by

                      @a200 sagte in [Linux Shell-Skript] WLAN-Wetterstation:

                      gehen

                      es steht zwar Kommunikationsfehler! Stimmt die WS_ID in der Konfiguration mit der der WS View-App überein?,
                      aber die DP sind wieder aktuell! 🙂

                      1 Reply Last reply Reply Quote 0
                      • a200
                        a200 @Negalein last edited by

                        @Negalein ok. dein Cronjob steuert jetzt. Jetzt müssten alle 2 min deine Werte aktualisiert werden. Problem gelöst?!

                        Was für ein Updateintervall hast du in der WS-App stehen?

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

                          @a200 sagte in [Linux Shell-Skript] WLAN-Wetterstation:

                          ok. dein Cronjob steuert jetzt. Jetzt müssten alle 2 min deine Werte aktualisiert werden.

                          alle 30 Sek.

                          Problem gelöst?!

                          Ja, danke dir

                          Was für ein Updateintervall hast du in der WS-App stehen?

                          16 Sek.

                          a200 1 Reply Last reply Reply Quote 0
                          • a200
                            a200 @Negalein last edited by

                            @Negalein dann viel Spaß noch. Und schön alle Probleme melden, denn nur so können wir die Skripte verbessern. 👍

                            1 Reply Last reply Reply Quote 1
                            • S
                              sonystar @SBorg last edited by

                              @SBorg
                              Die Werte ändern sich auch täglich. Ich kann mir nur schwer vorstellen, dass zufälligerweise jeden Tag die aktuelle Monatsdurchschnittstemperatur immer der Durchschnittstemperatur vom Vortag entspricht.

                              1.png
                              2.png

                              SBorg 1 Reply Last reply Reply Quote 0
                              • SBorg
                                SBorg Forum Testing Most Active @sonystar last edited by

                                @sonystar Danke, jetzt habe ich es auch kapiert 🙂
                                Jepp, die müssen gleich sein. Nicht weil sie es sollen, sondern weil ich auf zwei unterschiedliche Arten das Gleiche berechne... 🤦‍♂️
                                Immerhin komme ich auf das selbe Ergebnis 😎

                                Aber Späßken beiseite, ich habe da eine "Kleinigkeit" übersehen. Die Monatswerte zur Berechnung sind in Wirklichkeit nur die Vortageswerte. Deswegen müssen zumindest beide Berechnungen identisch sein. Leider ist es letztendlich dann doch keine Kleinigkeit, aber ich denke schon eine Lösung dafür parat zu haben. Denn jeden Tag zig tausend Datensätze abzugrasen macht nur auf einem performanten System Spaß: mein 16GB, 3.4GHz Quadcore vs. 3er PI = 5 Sekunden zu ~ 2 Minuten Verarbeitungszeit...

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

                                  @SBorg Kann man dafür nicht mit einem temporären Datenpunkt arbeiten? Jeden Tag wird die Durchschnittstemp des Vortages in einem Datenpunkt hinzuaddiert. Diesen temporären Datenpunkt dann einfach durch die aktuelle Tageszahl im Monat teilen = aktuelle Durchschnittstemp im Monat.

                                  Aber so einfach wie ich es mir vorstelle ist es wahrscheinlich nicht. 😆

                                  SBorg 1 Reply Last reply Reply Quote 0
                                  • SBorg
                                    SBorg Forum Testing Most Active @sonystar last edited by

                                    @sonystar sagte in [Linux Shell-Skript] WLAN-Wetterstation:

                                    Kann man dafür nicht mit einem temporären Datenpunkt arbeiten?

                                    Könnte man, ist aber nicht mal nötig 🙂
                                    Die Berechnung des Tagesdurchschnittes bleibt gleich, denn der funktioniert: alle Werte des Tages addieren und durch die Anzahl teilen.
                                    Meistens (wie auch in diesem JS) nutzt man nur den "state" (=Wert )eines Objekts. Das Zauberwort ist hier Objekts, denn das enthält wesentlich mehr als nur den Wert. ZB. "die letzte Änderung", "die letzte Aktualisierung", "Maßeinheit" ... und auch den "vorherigen Wert". Ich muss also nur den vorherigen Wert (=Vorvortag) + aktuellen Wert (=Vortag) addieren und durch 2 Teilen = korrekter Monatsdurchschnitt

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

                                      @SBorg

                                      Also das verstehe ich nicht. Wenn ich deinen Beitrag richtig verstanden habe meinst du diese Rechnung:

                                      IMG_20201219_121517.jpg

                                      Korrekter Monatsdurchschnitt wären hier 4,67. Nach deiner Rechnung komme ich dann aber nur auf 4,275.

                                      SBorg 1 Reply Last reply Reply Quote 0
                                      • SBorg
                                        SBorg Forum Testing Most Active @sonystar last edited by

                                        @sonystar Gut nochmal darüber gesprochen zu haben 😎
                                        Deine Beispielrechnung "meiner" Berechnungsmethode stimmt so aber auch nicht (ergäbe ~4.4°) 😉

                                        Beispielreihe: 2, 4, 6
                                        Mittelwert: (2+4+6)/3 = 4
                                        "Meine_was_auch_immer": (2+4)/2 = 3; (3+6)/2 = 4.5 [also +0.5 Differenz zum Mittelwert]

                                        Interessant wenn man nun die Beispielreihe ändert: 6, 4, 2
                                        Mittelwert: (6+4+2)/3 = 4
                                        "Meine_was_auch_immer": (6+4)/2 = 5; (5+2)/2 = 3.5 [also -0.5 Differenz zum Mittelwert]

                                        In Relation zum Mittelwert ergibt dies also eher eine Trendberechnung.
                                        Bleibt also leider doch nur der Umweg über einen Hilfsdatenpunkt der die bisherigen Tagesdurchschnitte des Monats enthält...
                                        ...auch nicht einfacher wäre wohl die Tagesdurchschnitte per History/Influx für x Tage zu loggen und diese auszuwerten.
                                        Muss ich mir noch mal in Ruhe überlegen.

                                        Latzi 1 Reply Last reply Reply Quote 0
                                        • Latzi
                                          Latzi @SBorg last edited by Latzi

                                          @SBorg
                                          das Geheimnis ist der gewichtete Mittelwert, man benötigt die Anzahl der Tage aus der der bisherige Mittelwert berechnet wurde.
                                          Zu deinem Beispiel:
                                          Mittelwert aus 2 + 4 = 3, somit nun Anzahl 2 im Mittelwert
                                          Mit (3.2+6.1)/3=4 stimmt der Mittelwert und das gilt auch bei 6, 4, 2:
                                          (6.1+4.1)/2=5
                                          (5.2+2.1)/3=4!
                                          Also benötigt man "nur" die Anzahl der Tage aus die der vergangene Mittelwert besteht und alles ist gut 😉
                                          PS: Der "." soll das Multiplikationszeichen darstellen

                                          SBorg 1 Reply Last reply Reply Quote 1
                                          • SBorg
                                            SBorg Forum Testing Most Active @Latzi last edited by SBorg

                                            @Latzi Komplizierter würde es ja nie werden, da ich ja immer nur mit 2 Werten rechne. Der 1. wäre dann ja bereits vom Vortag korrekt berechnet, den 2. habe ich aktuell ermittelt, bleibt also: (2*bisheriger Wert + aktueller Wert)/3 = neuer aktueller Durchschnitt

                                            *EDIT* Ok, verstanden, geht auch nicht ohne Anzahl der bisherigen Werte (die wir im Grunde nicht haben 😞 )

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            528
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

                                            linux shell-script wetterstation wlan-wetterstation
                                            141
                                            5399
                                            2904604
                                            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