DHT22 und Spannungsversorgung/Netzteil - Probleme

Begonnen von DJFS, 13 Dezember 2023, 15:29:44

Vorheriges Thema - Nächstes Thema

DJFS

Hallo,

seit dem ich mir das original Netzteil (5,1V/2,5A) für das Raspberry 3B+ gekauft habe, habe ich nur noch Probleme mit meinen DHT22 Sensoren.
Vorher hatte mein Raspberry ca. 4,5V Spannungsversorgung (Altes USB Netzteil) -> nun 5,1V Original.
Sei dem ich das getauscht habe bekomme ich von 3-4 Sensoren (leitungslänge ca. 2m - 7m) immer falsche Messwerte (solche in etwa: -11,0°C , 3302,9%)
Nun weis ich nicht mehr was ich noch machen kann,
-Widerstände zwischen 4k7 und 10k probiert,
- 5V und 3,3V Spannung versucht
- 5V Spannung und pullup zu 3,3V
- beides 5V
- Sensoren gewechselt

Nichts bringt was.
Habt ihr noch eine Idee?

Netzteil Brauche ich weil ich sonst Probleme mit dem USB-Stick und Nano-CUL habe.


Ich möchte noch hinzufügen ich Nutze AdafruitDHT schon immer.
LolDHT habe ich auch versucht, LolDHT geht jedoch nur bei einen Sensor der sonst nicht ging, und der Temperaturwert ist denke nicht korrekt (ca. 31°C im Zimmer, es sind aber ca. 22°C)

RalfRog

Hallo DJFS

Das klingt ja nach wilden Aktivitäten  :o  - da ist man am Ende immer ratlos.

Ich kenn mich mit den DHT's nicht aus aber sinnvollerweise solltest du nicht planlos in Aktionismus verfallen. Hast Du denn ausschließlich das Netzteil gewechselt oder noch mehr gemacht?

=> als erstes wäre meine Frage, ob dein Setup mit den Sensoren denn funktioniert wenn der "alte Zustand" wieder hersgestellt ist?

Grundsätzlich fallen mir folgende Dinge in deiner Beschreibung auf:
  • altes Netzteil 4,5V  -> das klingt eigentlich schon bisher nach Problemen mit UnderVoltage am PI. Die beschriebenen Probleme: "sonst Probleme mit dem USB-Stick und Nano-CUL habe" zeigen das ja auch
  • der PI arbeitet mit 3,3V und ist offiziell am GPIO nicht 5V-fest (ob er das in der Praxis vielleicht verträgt kann ich nicht sagen)
  • ich hoffe im alten Setup läuft es, dann ist vermutlich nichts kaputt gegangen (hoffentlich auch nicht vorgeschädigt)
  • die DHT sollten daher nur mit 3,3V versorgt werden (es sei denn die Datenleitung des DHT geht nur gegen GND bzw. wird hochohmig)
  • der PullUp der Datenleitung sollte nur gegen 3,3V gehen
  • da es ja funktioniert hat gehe ich davon aus, dass jeder deiner Sensoren an einem eigenen GPIO hängt (kein 1Wire)

Du hast ja scheinbar Sensoren zum Testen.
  • dann versuch im alten Zustand mit kurzen Leitungen ob es läuft
  • im nächsten Schritt das neue Netzteil verwenden
  • dann die Sensoren mit den vorgesehenen Kabeln anschließen
  • zum Schluss die USB Teile anschließen - eventuell produzieren sie Störungen mit ihrer Funktechnik / mit einer USB Leitung etwas auf Abstand bringen

Gruß Ralf
FHEM auf Raspi 2B mit nanoCUL, HM-MOD-RPI-PCB und über LAN MAX!Cube mit a-culFW (Stack 868 + 433)
HM- Fensterkontakte, UP-Schalter, Bewegungsmelder und ein Rauchmelder

Adimarantis

Falls du noch eine Alternative Software für die DHTs probieren willst, kannst du auch das RPI_1Wire Modul plus beschriebener Erweiterung nutzen:
https://wiki.fhem.de/wiki/RPI_1Wire#Einbindung_von_DHT11/DHT12_Sensoren

Hier nicht verwirren lassen. Das ist kein 1Wire sondern geht nach dem üblichen 1 DHT pro GPIO Prinzip, nutzt aber das 1Wire FHEM Modul als Verbindung zu FHEM.
Ein Beispiel für die Verdrahtung findest du hier:
https://github.com/bublath/ESP8266_FastLED_Effects
Das ist zwar ein Projekt mit ESP8266 das auch eine Lichterkette anbindet, aber die dort skizzierte Anbindung des DHT an eine GPIO ist bei Raspi identisch.
Raspberry 4 + HM-MOD-RPI-PCB (pivCCU) + RfxTrx433XL + 2xRaspberry 1
Module: 50_Signalbot, 52_I2C_ADS1x1x , 58_RPI_1Wire, (50_SPI_MAX31865)

xenos1984

Ich hatte ein ähnliches Problem mit DHT22 Sensoren an einer längeren Leitung. Die Werte hatten Bitfehler und sind ziemlich daneben gelegen. Das Problem war, dass das Signal am Empfänger (in meinem Fall ein Arduino) durch die Leitungskapazität eine längere Anstiegs- bzw. Abfallzeit hatte. Dadurch hat sich die Zeitspanne, in der für den Arduino logisch 0 bzw. 1 anliegt, in der also die entsprechende Schwellenspannung drüber oder drunter liegt, verändert. Diese Pulsbreite (langer vs. kurzer Puls) kodiert aber die Daten des DHT22. Und die Veränderung war groß genug, dass der Wert, der in der benutzten Bibliothek auf dem Arduino fest eingestellt war, nicht mehr zuverlässig erreicht wurde, und so einige Pulse falsch gelesen wurden.

Um das Problem zu entdecken, hatte ich das Signal am Arduino gemessen und dann die Pulsbreite bestimmt. Als Lösung hatte ich dann den festen Wert in der Bibliothek verändert und neu kompiliert, damit die Pulse sicher erkannt werden. Seitdem läuft es.

Da es mit dem Erreichen der Spannung zwischen 0 / 1 zu tun hat, könnte es sein, dass sich wie in deinem Fall die Versorgungspannung darauf auswirkt.

betateilchen

Alternative: ein ordentliches Kabel für den Anschluß verwenden und nicht irgendwelche Klingeldrähte.

Zum Beispiel ein Koaxkabel für Videoübertragung mit zusätzlich vorhandener Spannungsversorgung.

https://amzn.eu/d/fdDX7V8
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!