Go Down

Topic: DS18b20 mit ESP32 wird durch Wifi gestört (Read 8759 times) previous topic - next topic

Wiki_

Moin,

nö, ein bitscope steht mir nicht zur Verfügung, nur ein steinaltes USB-Oszilloskop. Und das reicht nicht, um Signale wirklich lesbar auszuwerten.

Ohne eingeschalteten Webserver sieht der Verlauf der Temperaturabfrage auf der Datenleitung wie im angehängten Bild "ohne Wifi" aus, sobald der Webserver eingeschaltet ist sieht - wenn eine Kommunikation überhaupt durchkommt - so aus wie in Bild "Mit Wifi".

Das Einzige, was ich an der abgebrochenen Kommunikation sehen kann ist, dass die Flanken der Signale nicht so deutlich sind wie während der ungestörten Kommunikation. Das die Flanken der gestörten Signale tw. nicht auf Null zurückgehen, gehe ich von einem Übersprechen durchs Wifi aus.


Wiki_

Moin,

gelobt sei, wer richtig gucken kann.

Mit eingeschaltetem Wifi bricht die Spannung lt. Oszi um ca. 0.05-0,1V ein. Die Beobachtung von ElEspanol sagten ja schon eine Störung auch beim ESP8266 der Kommunikation bei 3,25V Vup aus.

Fazit: bevor ich noch irgendwas sage, wird erstmal ne externe 3,3V Spannungsquelle dazugeschaltet....

ElEspanol

Mach lieber sicherheitshalber 3,5V dran

Wiki_

Moin,

3,5V hab ich im Mmt. nicht so schnell greifbar. Dazu müsste ich in mein "Labor" und da ist es kalt...

Mit 3,3V externer Spannungsversorgung, sowohl parasitär geschaltet als auch nichtparasitär, die externe Spannungsversorgung mit DevBoard zusammengeschaltet als auch rein für die Versorgung de Dallas - das Ergebnis bleibt das Bekannte.

Ich hab mittlerweile auch die von Tommy56 angesprochene nichtblockierende Methode angewandt, hab die Verzögerungen und das Timing von delay() auf millis()-Schleifen umgebaut, um zu verhindern, dass das delay() evtl. im Hintergrund noch abspulende Prozesse blockiert, die Sensoren nur alle 10 und 20 Sekunden angestoßen, hilft alles nix.

@ElEspanol: hast Du den ESP8266 als Wifi-Server (bei mir: WifiServer server(80);) angestoßen oder nur als Wifi-Client? Bei mir geht der Ärger sofort in dem Moment los, wenn ich nach der Definition des WifiServer Wifi.begin(); antrigger. Dabei ist noch kein bit irgendeiner Web-Funktion geflossen. Die greift erst, wenn eine Client-Anfrage kommt.

ElEspanol

#49
Dec 10, 2017, 04:13 pm Last Edit: Dec 10, 2017, 04:15 pm by ElEspanol
Hab gerade kurz die Serverfunktion einprogrammiert. Läuft wie es soll.
Hab sogar noch ein Oled dran, Blynk läuft auch noch paralell, OTA
nodemcu 12E, 3 ds18b20, 1k Pullup, 3,2V kommen aus dem usb-versorgten nodemcu an den Pullup.

P.S. mach mal das WiFi.begin(ssid, password); vor das server.begin()


Wiki_

Moin,

klar ist WiFi.begin(ssid,passwd) vor server.begin(), war vllt. in meinem vorherigen Post etwas missverständlich.

So, nu bin ich an der Stelle, an der ich aufgebe, zumindest für heute. Kein Bock mehr.

Wiki_

Moin,

so, ich bin heute nu durch ne ganze Reihe an Tests. Zwei Dallas DS18B20, parasitär und nicht-parasitär geschaltet, mit externer Spannungsversorgung, mit Versorgung durch DevBoard, Änderung des Aufrufes der Temperaturen, verschiedene Auflösungen, unterschiedlichste Timing-Versionen, verschiedene Pullup-Widerstände, Wifi als Server, Wifi als Client, nicht-blockierende (async) und blockierende Methode, etc, etc.

Solange hier niemand schreiben kann, er hat den ESP32 mit DS18B20 und zusammen mit Wifi stabil am Laufen sage ich: Geht nicht stabil. Max. beste Erfolgsrate der Dallas-Abfrage war bei mir 62 korrekte Messwerte bei 200 Versuchen in der Kombination externe Spannugsversorgung mit 3,4 Volt, 1kOhm Pullup, 12bit Auflösung, Wifi als Server gestartet (Erfolgsrate geht merkwürdigerweise mit geringerer Auflösung runter, bei Wifi als Client fast identisch).

Ohne Wifi 100% Erfolgsrate.

Der ESP32 liest sich in der Theorie auf dem Papier hervorragend, Umsetzung mehr als mangelhaft. Punkt.

Wiki_

Moin,

hhhmmm, das hört sich für mich aber eher nach nem umgreifenden "China Bashing" an, gehört hier nicht zum Thema und ist der Problemlösung so richtig nicht förderlich.

Mit nem ATMega256 hab ich das Ganze erfolgreich angefangen, nen Wifi-Shield war in der Fortführung für mich allerdings keine Option. Der ESP8266 hat nur einen A/D-Wandler - schade. So kam der ESP32 ins Spiel.

Egal, für mein Projekt kann ich mit den Unwägbarkeiten leben, ist halt zeitunkritisch. Wär nur zu schön gewesen....

Wiki_

Moin,

OK, missverstanden....

Ne, ich werd die Hardware so klein und übersichtlich wie irgend möglich halten. Von 200 Abfragen 60 korrekt beantwortet reichen für meine Belange an dieser Stelle vorerst aus, Danke für die Ideen.

Vielleicht taucht ja irgendwann mal irgendwo eine Lösung auf.

postmaster-ino

Hi

Danke für den ausgiebigen Test und die erhaltenen Resultate!

MfG

Wiki_

Moin,

nach einiger Zeit nen Nachtrag:

Alle Versuche, mit dem ESP32 die Batterieüberwachung stabil und akkurat zu verwirklichen sind gescheitert.

Ich bin jetzt umgeschwenkt und hab gewechselt auf den Wemos D1 mini. Funktioniert perfekt, als Ersatz für die fehlenden A/D-Wandler kommen jetzt INA219 zum Einsatz.

Was lange währt wird gut.....

postmaster-ino

Hi

Auch Das ist durchaus interessant und Dir gebührt mein Dank - sind nicht Viele unterwegs, Die Ihren alten Thread mit neuen Infos füllen.

Zum INA219 (ich dachte noch: ist doch ein Stromsensor ...) - nutzt Du einen Widerstand o.Ä., damit Du die Spannung der Batterie (durch den Strom durch den Widerling) erfassen kannst?

Ich habe hier vier INA219 rumfliegen, Die einen anderen Offset haben (... chinesische Massenqualität ... oder so ... zumindest sind Die vom fC) - Deine laufen 'nach Datenblatt'?

MfG

Wiki_

Moin,

daß die INAs ein übles Thema bezgl. Spannungsmessung sein können, wenn der Strom über den internen Shunt (resp. der entsprechende Spannungsabfall über nen externen Shunt) weniger als 10 uA beträgt, ist mir durch Zufall "zu Ohren" gekommen.

Die Energieversorgung der Schaltung ziehe ich so oder so aus der zu überwachenden Batterie. Also nicht faul, die Versorgung des Spannungswandlers über den Eingang des INA geschleift. Da die Schaltung im Mittel so umme 25-30 mA auf der 12V-Seite benötigt, bin ich im sicheren Bereich und bekomme vernünftige Messwerte der Batteriespannung. Auch meine INAs stammen aus Chinesien - bin absolut zufrieden.

Ach ja, und dass die Meisten im Kommunikations-Nirwana verschwinden, sobald sie für sich eine Lösung - oder auch nicht - gefunden haben, ist wohl Alltag im Netz. Schade eigentlich, denn offene Info-Würmer sind nicht schön und helfen der Community eigentlich nicht so richtig.

Aber das gehört eher zum Thema Recht-/Groß-/Kleinschreibung, Absätze, Formatierung usw.

Go Up