Posts by dr.lan

    Du baust eine .html-Seite, die aus dem Netzwerk abrufbar ist. Dein RPi 400 ist im selben Netzwerk?


    Generiere zusätzlich zur .html noch eine .csv, in der die jeweils aktuellen Rohdaten stehen, leg sie neben die .html und rufe sie regelmäßig über HTTP ab. Zur Synchronisierung zwischen den Geräten kannst Du den Zeitstempel in die .csv legen und damit die Abrufe so timen, dass Du immer halbwegs aktuelle Daten hast.

    Diesen Ansatz werde ich erst einmal verfolgen. Sicher nicht der eleganteste Ansatz, aber das sollte ohne großen Aufwand und mit meinen Programmierkenntnissen einigermaßen machbar sein.
    Die Ausgabe der aktuellen Werte in eine csv-Datei funktioniert schon, diese ist auch im lokalen Netz abrufbar. Jetzt fehlt nur noch das Einlesen auf dem Zielrechner inkl. Verarbeitung und Visualisierung.

    Hallo zusammen,


    für folgende Problemstellung bräuchte ich mal einen Denkanstoß:


    Im Rahmen meines noch laufenden Projekts "YAWST - yet another weather station" dient ein Raspberry Pi 4 als Wetterstation.

    Dieser misst alle 5 min Temperatur, Luftfeuchte und Luftdruck (das zugrundeliegende Python-Programm wird mittels cronjob aufgerufen). Die Messwerte werden lokal mittels RRDtool in einem Round-Robin-Archiv gespeichert (aus dem RRDtool heraus werden dann diverse Diagramme erzeugt).

    Neben der Messwerterfassung alle 5 min wird in dem Python-Programm auch jedesmal eine statische html-Datei ("index.html") erzeugt, welche über einen lokalen Webserver im lokalen Netzwerk aufrufbar ist. Dort sind dann alle aktuellen Messwerte zusammengefasst, inkl. Verlinkungen auf die Diagramme aus dem RRDtool.

    Das läuft alles fehlerfrei, zuverlässig und gut.


    Nun zu meinem Problem:

    An meinem anderen RPi 400 auf meinem Schreibtisch ist ein I²C-LC-Display angeschlossen.

    Auf diesem Display würde ich gerne auch alle 5 min die neusten Wetterdaten ausgeben lassen, die der Wetterstation-RPi4 (YAWST) misst. Quasi immer das aktuelle Wetter im Blick, ohne den Monitor einzuschalten und die Webseite aufzurufen.

    Die (Text-)Ausgabe auf dem Display an sich stellt kein Problem dar, das bekomme ich hin.


    Nur wie bekomme ich die Messwerte von einem RPi auf den anderen RPi ? Über welches Interface kann man gehen bzw. wie würde man den zyklischen Datenaustausch zwischen zwei RPis am besten konzeptionell angehen ?


    Ich bin gespannt auf Eure Ideen.

    Danke für die Rückmeldung, ich habe jetzt alle 5 Sensoren mit dem Pi verbunden und auch einen mal über ein 15 Meter Kabel angeschlossen gehabt. Also bei mir funktioniert es ohne Probleme.

    Liebe Grüße

    Was mich interessieren würde: Hast du tatsächlich 5 DHT22 angeschlossen, die zuverlässig funktionieren ?

    Ich habe das Problem, dass ich meinen DHT22-Sensor (nur einen !) zwar verbinden und auch auslesen kann. Das geht aber max. nur bis ca. 1-2 h, danach kommt nur noch ein Default-Wert von 80 % Luftfeuchte, was auf einen Kommunikationsfehler schließen lässt. Nach einem Neustart des Sensors (d.h. Kabel-Verbindung trennen und wiederherstellen) geht es meist wieder, aber wieder nur für 1-2 h.


    Ich würde gerne herausfinden, woran es liegt, und ich hatte bisher den DHT22 generell in Verdacht, dass dieser durch ungeeignete Ansteuerung, Stromversorgung, etc. sich irgendwie "aufhängt". Ähnliche Posts hier im Forum lassen da auf einen systematischen Fehler dieser Sensoren schließen.

    Brainstorming zu möglichen Einflussfaktoren, nicht abschließend:

    - Anzahl der gerade verfügbaren Satelliten

    - Dämpfung durch Wetter, Gebäude, Gelände

    - Störung durch andere elektromagnetische Wellen

    - künstliche Signalverfälschung

    - Größe der Antenne / Antennenwirkfläche / Gewinn

    - Qualität der Signalerfassung und Aufbereitung (Verstärkung, Güte, Bandweite, ...)

    - ggf. auch der zugrundeliegende Algorithmus (?)

    Gibt es jemanden hier der etwas Ähnliches schon hatte oder etwas über die Verarbeitung vom Pi 400 sagen kann ?

    Bisher hatte ich noch keine Probleme.

    Mein ungutes Gefühl war aber von Anfang an, das die geringe mechanische Stabilität der Buchse im Gegensatz zum wuchtigen und unflexiblen Kabel hier auf Dauer die Schwachstelle sein wird. Sprich, am besten die mechanische Belastung und auch die An- und Absteckvorgänge so gering wie möglich halten.

    Spannung: Kann mittels A/D-Wandler erfasst werden. Diesen bringt der RPi aber nicht standardmäßig mit, müsste extern angebunden werden.

    Temperatur: Kann mittels Temperatursensor (analog oder digital) erfasst werden. Wobei ein "extern" angebrachter Sensor noch lange nicht die Zelltemperatur widerspiegeln muss. D.h. die thermische Kopplung wäre hier ggf. ein Problem. Vielleicht gibt es aber auch Batterien, die Ihre Zelltemperatur über ein digitales Interface bereitstellen.

    Strom: Kann auch mittels A/D-Wandler erfasst werden, nach vorheriger Wandlung des Stroms über Shunt-Widerstand.

    BT-Interface: Wäre sicher auch möglich.


    Vielleicht gibt es hier jemand, der mir dabei helfen kann so ein Teil zu bauen (natürlich nicht kostenlos)! :)

    Wenn Du ernsthaft Interesse an dem Thema hast, dann machst Du das selbst.

    Wenn nicht, wäre wohl eine Fertiglösung eher etwas für Dich.

    verstehe ich dich richtig, dass das Programm alle 5 Minuten aufgerufen wird oder wird es einmal aufgerufen und misst dann alle 5 Minuten?

    Hi,

    das Programm wird alle 5 Minuten aufgerufen.

    Wenn ersteres, dann könntest du dein Programm in zweiteres umschreiben.

    Wie geht das ? Wie kann ich - sinnvoll - eine Timer-Funktion realisieren, die dann alle 5 min misst ?
    Die Ansteuerung der LED wäre damit wohl auch kein Thema mehr, da das Programm ja dann auch nicht mehr verlassen wird.


    Gibt es - davon ab - Routinen, die einen Ausgang dauerhaft ein- oder ausschalten können (d.h. auch nach Verlassen des Programms) ?

    Hallo zusammen,


    meine Frage erscheint trivial, jedoch komme ich gerade nicht weiter.


    An meinem RPI4 habe ich zwei LEDs angeschlossen (GPIO20, 21).

    Die LEDs werden über die Bibliothek gpiozero angesteuert:

    Python
    #Bibliothek für den Zugriff auf die GPIOs importieren
    from gpiozero import LED
    #LED für Anzeige der laufenden Messung = GPIO 20 = LED gelb
    led_sample = LED(20)
    #LED für Anzeige Störung = GPIO 21 = LED rot
    led_error = LED(21)
    #Schalte die LED ein, da aktuell eine Messung läuft
    led_sample.on()


    Per Cronjob rufe ich das Programm auf, welches alle 5 min die Temperatur / Luftdruck / Luftfeuchte misst.


    Sobald die Messung der Luftfeuchte mittels Sensor DHT22 fehlschlägt, fange ich die Fehlermeldung ab und schalte eine der beiden LEDs ein (GPIO21):

    Code
    try:
        humidity = round(sensor_h.sample(samples=1)['humidity'],1)
        led_error.off()
    except TimeoutError as error:
        print("ERROR: DHT22 nicht erreichbar.")
        print("Default-Wert für humidity=80 wird gesetzt.")
        print()
        humidity = 80
        led_error.on()

    Sobald das Programm durchgelaufen ist, erlischt die LED allerdings wieder.


    Wie schaffe ich es, dass die LED dauerhaft an bleibt (nämlich so lange, bis wieder die nächste erfolgreiche Messung über den DHT22 gelaufen ist) ?

    Hallo,

    ich suche eine Möglichkeit, die Zeit eines Pi mittels DCF77 oder GPS zu synchronisieren. Was ist hier einfacher und günstiger umzusetzen: Per Zeitsignal DCF77 oder GPS?

    Für die reine Uhrzeit halte ich GPS für absolut überdimensioniert.

    DCF77 ist m.E. definitiv einfacher.

    Hier kann man sogar die Decodierung des empfangenen Signals selbst programmieren, das ist relativ simpel.
    Der Empfänger kostet dich als Modul knapp einen 10er.


    Auch von den Signaleigenschaften halte ich DCF77 mit 77,5 kHz für potentiell besser empfangbar als das GPS-Signal mit > 1 GHz.

    Status 2021-03-14:

    - Alle 3 Sensoren (DS1820, DHT22, BMP280) sind nun integriert und funktionieren.


    - Von meinem Pi 400 + Breadboard habe ich die Elektronik nun auf den letztendlichen Raspberry Pi 4 im Hutschienengehäuse portiert.
    Weiterhin wurden 3 Status LEDs (Power, Messung aktiv, Reserve) in das Gehäuse integriert. Auch die Buchse für die Anbindung des Außensensors hat ihren Platz gefunden.

    - Die Außensensoren haben ein Gehäuse bekommen und sind nun über ein ca. 5 m langes Kabel angebunden. Erstmal nur "Testweise". Da das Ganze aber auf Anhieb gut funktioniert, muss ich das Kabel und die Stecker noch final konfektionieren.

    - NEU: Für den Luftdruck wird nun auch die Tendenz ermittelt. Basis dafür ist das Delta zwischen dem aktuellen Luftdruck und dem Luftdruck -3 h.


    - Das LC-Display wurde - vorerst - aus Platzgründen verworfen.

    Als nächstes gibt es ein paar Bilder von der Hardware um mal einen Eindruck vom Projekt zu vermitteln.

    Hallo,

    das wäre echt nett danke.

    Bin schon auf das Ergebnis gespannt.

    LG

    Es hat nun doch alles etwas länger gedauert, aber das Ergebnis möchte ich nicht vorenthalten.


    Zwischen meinem Raspberry Pi 4 und den Sensoren DS1820 / DHT22 habe ich nun ca. 5 m Ethernet-Kabel.

    Das geht ohne Probleme.


    Für den DS1820 habe ich jedoch den Pullup von ursprünglich 4,7 k auf 2,2 k reduziert.


    Eine längere Leitung werde ich wahrscheinlich nicht testen, da ich nun doch keine 10 - 15 m Strecke habe, sondern max. 5 m.

    Im Gegensatz zu meinem bisherigen 0-Kanal-Oszilloskop ist das schon mal ein enormer Fortschritt ;)


    Mal im Ernst: 4-Kanal ist natürlich schon eine feine Sache, ganz klar.


    Ich möchte erst einmal wieder in die Praxis reinkommen - alles irgendwann mal im Studium gelernt.

    Danach die Messungen meist "machen lassen" anstatt selbst gemessen.


    Auch wenn die Preise von Rigol verdammt günstig sind, reicht mir das wahrscheinlich Erstmal.

    Abisolierung in der Elektroinstallation ? --> Jokari No. 15


    Abisolierung Elektronik --> Seitenschneider von Knipex, verschiedene Größen und Stärken


    Reicht für meine Bedürfnisse völlig aus.


    Abisolierzange ? Kann man nehmen, muss man aber nicht. Habe diverse "Billig"-Erzeugnisse in meinem Besitz, überzeugen aber alle nicht auf Anhieb.

    Gehst Du jetzt komplett auf die Raspberry Schiene ? Soweit ich mich erinnere, hattest Du doch von einer anderen Hardware gesprochen, oder werden es jetzt zwei Microcontroller sein ?

    Hi,


    ja, das Projekt wird komplett durch einen Raspberry Pi realisiert. Ohne zusätzliche Controller.

    Der Raspi ist quasi ideal dafür - er bietet alles für einen erfolgreichen und schnellen Start. Alle Funktionen sollten sich mit einem Minimum an externer Hardware und Peripherie lösen lassen.


    Ich habe in der Vergangenheit immer mal wieder mit ATMEL Mikrocontroller experimentiert; das war auch sehr interessant. Was mich jedoch größtenteils gestört hat war die Tatsache, dass man teilweise mehr Zeit mit der Fehlersuche den µC überhaupt erfolgreich flashen zu können verbracht hat als mit dem eigentlichen Projekt ...


    Status 2021-03-03:

    - Die Hardware-Lieferung ist - bis auf den Raspberry Pi - nun endlich da. Es kann also losgehen.

    Ernüchterung macht sich breit: Das Hutschienen-Gehäuse ist nun deutlich kompakter als angenommen ... d.h. das 16X2 LCD-Modul findet dort definitiv keinen Platz. Ggf. werde ich eine externe Schnittstelle vorsehen, um das System durch ein Display zu ergänzen. War eigentlich anders vorgesehen, aber egal.


    - Zweifel kommen auf - die Hardware-Gesamtkosten übersteigen die Kosten einer mittelmäßigen, komplett betriebsbereiten Wetterstation um einiges ... Aber egal: Der Weg ist das Ziel ! Und es hat ja auch niemand gesagt, dass es einfach oder billig wird ... ;)


    - Was auch noch ansteht: Organisation einer Internet-Domain, Webspace, Einrichtung etc.

    Hallo zusammen,

    teilweise muss ich meine Kritik wieder entkräften:

    Da habe ich doch heute die Benachrichtigung bekommen, dass der Raspberry Pi 4 2 GB auf dem Weg ist !


    Die Hauptlieferung ist heute angekommen. Da hätte man man auf den Raspi doch noch warten können ...


    Verstehe das, wer will :rolleyes:


    Alles in allem sind aber 3 Wochen von der Bestellung bis zur Auslieferung nicht akzeptabel. Das dauert mir einfach zu lange, so dass ich in Zukunft sicher mal Alternativen (wie von Euch vorgeschlagen) testen werde.

    Status 2021-03-03:

    - Zu den "Astronomischen Daten" ist noch die Berechnung und Anzeige der aktuellen Mondphase hinzugekommen.


    - Es gibt nun zwei Status-LEDs: Eine Power-LED (hart gegen die 3,3 V des PI geschaltet), sowie eine LED für "Messung aktiv".


    - In der Zwischenzeit gab es Probleme mit dem 1-Wire-Bus. Dieser wurde von heute auf morgen an Pin 4 nicht mehr erkannt. Seltsam war, dass der Bus an einem anderen GPIO (21) weiterhin ohne Probleme lief und alle Temperatursensoren erkannt wurden. Also ging die Fehlersuche los ... Letztlich scheint der äußerst fragile Aufbau auf einem Breadboard und ungeschirmter 2-Drahtleitung hier schuld zu sein. Den 1-Wire-Bus habe ich bisher parasitär mit 4,7 k als Pullup gegen 3,3 V betrieben. Nach einer Reduzierung des Pullup-Widerstands auf 3,5 k geht alles wieder an GPIO 4. Jedenfalls die letzten 24 h stabil.


    Ich hatte schon Angst das ich mir den GPIO 4 zerschossen habe, was aber eigentlich nicht sein kann, da ich nur 3,3 V und GND benutze.


    Ich bin gespannt, wie stabil das Ganze hinterher dann an einer 5 m Ethernet-Leitung läuft ;)


    Letztlich hat es mir gezeigt, dass ich Fehler oder Ausfälle in der Kommunikation zu den Sensoren in einer sinnvollen Art und Weise noch abfangen muss.


    - Im Hintergrund arbeite ich an einem optisch schöneren HTML-Frontend für die letztendliche Website.


    - Mein derzeit größtes Problem: Die Lieferung der Hardware verzögert sich immer noch ... Insbesondere wird der vorgesehene Raspberry Pi 4 2 GB nicht zeitig eintreffen bzw. muss ich mich nach alternativen Wegen umsehen.

    Danke für die Antworten und Tipps.

    Ich werde mich da in Zukunft mal umsehen.


    Kleiner Funfact am Rande:

    Meine Bestellung bei Reichelt habe ich Mitte 02/2021 aufgegeben, insgesamt ca. 30 Posten.

    Davon war 1 Gehäuse erst Anfang März lieferbar - bis dahin würde man mit der Auslieferung warten, der Rest war vorrätig.


    Das Gehäuse an sich hatte ich nur auf Verdacht bestellt, eigentlich gar nicht so wichtig ...


    Heute (Anfang 03/2021) wurde die Bestellung endlich (!) versendet, inkl. dem besagten Gehäuse - aber ohne den Raspberry Pi 4 2 GB, da dieser jetzt plötzlich nicht lieferbar ist :wallbash:


    Damit ist die Bestellung größtenteils sinnlos, da das Herzstück meines Projekts jetzt fehlt ... :thumbdown: