Hallo, für ein kleineres Projekt habe ich 7 DS18B20 Temperatursensoren im normalen Modus (mit 4,7 kOhm Pullup-Widerstand) an einem Arduino Uno hängen und zusätzlich noch 3 Pumpen über eine Darlington-Schaltung an den analogen Pins um diese per Pulsweitenmodulation zu regeln. Anfangs liefen die Sensoren noch normal, aber nachdem ich jetzt wieder einen Test gefahren habe (die Polung ist korrekt, habe es mehrfach überprüft und die Sensoren zeigen auch reale Werte an) fangen diese an sich zu erhitzen ohne erkennbaren Grund. Bereits etwas länger habe ich zudem den Fehler das beim Zuschalten der Pumpen über die PWM-Pins die Sensoren extrem Schwanken und die meiste Zeit eigentlich nicht richtig funktionieren; es schwankt zwischen dem richtigen aktuellen Temperaturwert und den internen Fehlerwerten (-127° und 85°) die laut Hersteller bedeuten das der Sensor keine richtige Stromversorgung mehr hat. Da die Pumpen vorher über eine andere Transistorschaltung mit Glättkondensator betrieben wurden, dachte ich das Problem läge daran das die Schaltung den analogen Pins zuviel Strom absaugt, einerseits durch fehlen eines Basisvorwiderstandes und durch die Stromspitze der an den Kondensatoren beim Ladevorgang entsteht. Um das Problem zu umgehen hatte ich die einfache Transistorschaltung durch eine Darlington-Schaltung ausgetauscht die nur noch maximal 4 mA pro PWM-Pin erhält. Leider tritt das Problem mit den Schwankungen immer noch auf, trotz 2,8 kOhm Vorwiderstandes am PWM-Pin. Hat vielleicht jemand eine Idee woran es liegen könnte oder bereits ähnliche Probleme gehabt mit den Sensoren?
:
Bearbeitet durch User
4,7k pullup ist je nach Leitungslänge zuviel, ich musste nach anfänglichem Erfolg mit 2,2k auch auf 1,5k runter. Sorge für stabile µC Versorgung und ordentlicher PWM Ansteuerung und deren Versorgung. Heiss darf dein DS nie werden, da ist irgendwo ein dicker Fehler, vielleicht fragst du auch zu oft ab, das erhöht die Chiptemperatur, aber NIE zu HEISS
:
Bearbeitet durch User
Schonmal danke für die schnelle Antwort, welche Leitungslänge hattest du bei deiner Anwendung um einen 1,5k Pullup zu benuzten? In meinem Fall dürften das maximal 1,5 Meter sein für den am weitesten entfernten Sensor. Was halt seltsam ist das es erst plötzlich angefangen hat ohne das am Code oder der Hardware der Sensoren was geändert wurde. Die Temperatur steigt auch nicht schlagartig wie bei einem Kurzgeschlossenen Widerstand, sondern schätzungsweise mit 0,3° pro Sekunde langsam an.
Kannst du bitte einen Schaltplan und Bilder vom Aufbau hochladen? Das würde alles viel einfacher machen. Michael M. schrieb: > für ein kleineres Projekt habe ich 7 DS18B20 Temperatursensoren im > normalen Modus (mit 4,7 kOhm Pullup-Widerstand) an einem Arduino Uno > hängen und zusätzlich noch 3 Pumpen über eine Darlington-Schaltung an > den analogen Pins um diese per Pulsweitenmodulation zu regeln Nur um Sicher zu gehen: Unter "normalem Modus" verstehst du, dass die Sensoren mit 5V versorgt werden? Woher kommen die 5V für die Sensoren? Vom Arduino? Werden die Pumpen auch aus diesen 5V Versorgt? Ansonsten wo kommt dafür die Versorgungsspannung her? Wo bekommen die Darlington Schaltungen ihre Versorgung her? Hast du ausreichend Abblockkondensatoren auf der Versorgung? 100nF an jedem DS18B20 ist zu empfehlen. Ich vermute du hast Spannungsspitzen/-einbrüche auf der Versorgung.
Joachim B. schrieb: > vielleicht fragst du auch zu oft ab Den Fehler hatte ich mal gemacht, die Temperatur wurde dann 2 bis 3 Grad nach eingen Minuten zu hoch angezeigt. Aber richtig heiss wurden die Sensoren nicht.
Michael M. schrieb: > Bereits etwas länger habe ich zudem den Fehler das beim Zuschalten der > Pumpen über die PWM-Pins die Sensoren extrem Schwanken und die meiste > Zeit eigentlich nicht richtig funktionieren; es schwankt zwischen dem > richtigen aktuellen Temperaturwert und den internen Fehlerwerten (-127° > und 85°) die laut Hersteller bedeuten das der Sensor keine richtige > Stromversorgung mehr hat. > Da die Pumpen vorher über eine andere Transistorschaltung mit > Glättkondensator betrieben wurden, dachte ich das Problem läge daran das > die Schaltung den analogen Pins zuviel Strom absaugt, einerseits durch > fehlen eines Basisvorwiderstandes und durch die Stromspitze der an den > Kondensatoren beim Ladevorgang entsteht. Glaskugel: Beim Zuschalten der Pumpen gibt es Spannungseinbrüche oder andere Effekte auf der DS1820 Leitung und da Du den CRC nicht abfragst werden Dir die falschen Werte angezeigt. Hier muss ein Bild vom Aufbau her.
Darf man fragen wo genau die Sensoren plaziert wurden? Könnte doch sein, dass die Motoren Heiß werden und somit der Temperatursensor heiß wird. Vorausgesetzt die Sensoren sind nahe der Wicklung am Gehäuse plaziert worden.
Michael M. schrieb: > Da die Pumpen vorher über eine andere Transistorschaltung mit > Glättkondensator betrieben wurden PWM + Kondensatoren sind selten eine Lösung, aber immer das Problem. Da fließen riesen Ladeströme und je nach Leitungsführung mit über die Sensormasse oder bringen das Netzteil zum Ausrasten. Michael M. schrieb: > fangen diese an > sich zu erhitzen ohne erkennbaren Grund. Ja, die haben Überspannung gesehen und sind teilweise durchlegiert. Wegschmeißen. Gönn dem 5V-Regler ne Transzorb, dann opfert die sich zuerst.
Die Sensoren sind weit genug von den Pumpen entfernt, ein Fremderhitzen ist vollkommen ausgeschlossen, man merkt zudem wenn man sie in der Hand hält das sie langsam wärmer werden. Das sie durchgebrannt sind scheint zumindest für das Problem der Selbsterhitzung eine mögliche Lösung zu sein, da mir kurz vorher ein Spannungsimpuls beim Abschalten der Pumpen (hatte die Freilaufdiode vergessen) einen Transistor gebraten hat. Werde heute Abend mal in den Kisten stöbern ob noch irgendwo ein Sensor rumliegt und ihn dann testen. Die Darlington-Schaltung wird über ein Netzteil mit 12V und 150 VA versorgt (Wird vorher über einen Gleichrichter und Kondensator geschickt), nur die Basis des dritten Transistors (werde auch nachher einen Schaltplan hochladen) hängt am Arduino über einen Vorwiderstand. Die Versorgung der Sensoren erfolgt über den Arduino +5V Pin, werde aber nachher noch eine Variante testen indem ich die Sensoren über einen 5V Wandler direkt vom Netzteil versorgen lasse.
Ok nach kurzen Test scheinen die Sensoren einfach kaputt zu sein, zwei andere funktionieren in der Anwendung problemlos und werden nicht warm (also schonmal direkt nachbestellen). Um zu testen ob ich Spannungseinbrüche auf der Versorgungsleitung der Sensoren habe hab ich mal nachgemessen, das Spannungsmessgerät zeigte aber keine an und die Werte waren auf einmal stabil. Nachdem ich noch einen Kondensator Parallel zur Stromversorgung der Sensoren geschaltet habe kommt es auch zu keinen Schwankungen mehr und die Sensoren arbeiten einwandfrei. Anscheinend war schon die interne Kapazität des Messgerätes ausreichend um die Störungen abzuschwächen und das gesamte Problem zu beheben. Danke nochmals für die schnellen und guten Antworten an alle!
Michael M. schrieb: > Schonmal danke für die schnelle Antwort, welche Leitungslänge hattest du > bei deiner Anwendung um einen 1,5k Pullup zu benuzten? In meinem Fall > dürften das maximal 1,5 Meter sein für den am weitesten entfernten > Sensor. 4k7 reichen da locker aus.
Verrecken können die schon mal. An einer zig Meter langen simplen und unverdrillten Leitung gibts einen parasitär betriebenen Sensor, den ich in über 10 Jahren nun schon 2x getauscht habe. Der zog dann in beiden Fällen grad so viel Dauerstrom, dass der High-Pegel der Leitung an der Kante lief.
Michael M. schrieb: > welche Leitungslänge hattest du > bei deiner Anwendung um einen 1,5k Pullup zu benuzten? 72m gemischt Stern/Bus -> 7 Sensoren, parasitär gespeist.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.