Hallo, wer kann mir die Funktionsweise des parasit powersupply mit einem Pull-up-Woderstandes am DS1820 erklären. aus dem Datenblatt werde ich nicht schlau. Danke
Der Pull-Up wird immer gebraucht. Ich habe mit 2,2kOhm gute Erfahrungen gemacht. Bei langen Leitungen ist auch ein 100 Ohm in Reihe mit dem AVR-Pin zu empfehlen, damit die Flanken nicht so steil sind (Überschwingen). Parasite power wird nur während der Wandlung (max 1mA) gebraucht, wenn kein dritter VCC-Draht mitgeführt werden soll. Dazu reicht es beim AVR den Pin als Ausgang und auf 1 zu setzen. Damit können etwa 10 Sensoren gespeist werden. Ansonsten nimmt man einen extra Transistor nach VCC, z.B. den BS250. Den Transistor braucht man immer, wenn der 100 Ohm in Reihe ist (s.o.). Peter
Hi Peter! Du schreibst: >>Den Transistor braucht man immer, wenn der 100 Ohm in Reihe ist (s.o.). Wieso, das sind doch bei 1mA Stromaufnahme nur 100mA Spannungsabfall, damit sollte doch noch genug am DS ankommen? Ansonsten laufen die DS1820 bei mir mit 3k3 Pull-Up schon ganz gut, allerdings an nur 3m Kabel. Sven
Tja Jungs, alles gute Antworten, aber meine Frage nach der Funktionsweise ist noch nicht geklärt. Sorry!
Oh, Tschuldigung. Der PullUp-Widerstand wird für die Datenübertragung im 1-Draht-Protokoll verwendet. Er legt die Datenleitung erstmal auf High-Pegel. Will der Controller den DS ansprechen, zieht er die Leitung über seinen Ausgang (als Open-Collector) auf Masse und der DS bekommt einen Low-Pegel. Gleiches funktioniert auch vom DS zum Controller. Deswegen muß auch der Controller-Pin im Grundzustand Tri-State sein, sonst klappt das Runterziehen von seiten des DS nicht richtig. Zum Protokoll siehe das Datenblatt, es wird immer ein kurzer Synchronisations-Puls gesendet, gefolgt vom Datenbit. Nun braucht der DS noch eine Versorgungsspannung. Die wird entweder über eine dritte Leitung an den noch übrigen Pin geliefert, oder der DS zapft die im Ruhezustand auf High liegende Datenleitung an => Parasite Power. Bei 3k3 PullUp-Widerstand kann er schon bis 100µA ziehen, ohne dass das stört. Wird jetzt vom Controller eine Messung initiiert, braucht der DS aber mehr Strom für die Wandlung. Deswegen muss nach dem Start der Messung die Datenleitung vom Controller an +5V gelegt werden, indem der Controller-Pin als High-Ausgang geschalten wird. Die Spannung muß, glaube ich, 750ms anliegen, steht im Datenblatt. Dann wird der Controller-Ausgang wieder auf TriState geschalten, der PullUp-Widerstand wird wirksam und die Daten können abgefragt werden. So etwa funktioniert's bei mir. Sven
@Sven: Wieso, das sind doch bei 1mA Stromaufnahme nur 100mA Spannungsabfall, damit sollte doch noch genug am DS ankommen? 1. Was ist das für ein widersprüchlicher Satz? 1mA Stromaufnahme und 100mA Spannungsabfall ... hä? Was an dem abfällt ist völlig egal. Zumal die gesamten 5V da abfallen, wo sollen die auch sonst hin (den Pullup jetzt mal außer acht gelassen)? 2. Das eigentlich Problem ist die Speisung aus dem Atmel. Wenn pro DS1820 1mA fließt kommt man irgendwann an die Grenzen.
Hi Ronny! >>1. Was ist das für ein widersprüchlicher Satz? 1mA Stromaufnahme und 100mA Spannungsabfall ... hä? Was an dem abfällt ist völlig egal. Zumal die gesamten 5V da abfallen, wo sollen die auch sonst hin (den Pullup jetzt mal außer acht gelassen)? Nee, nur ein Schreibfuhler, soll natürlich 100mVOLT heißen. Und wenn die gesamten 5V daran abfallen, solltest Du mal die Leitung auf Kurzschluß prüfen. Das 1-Wire-Protokoll nutzt den 3k3-PullUp-Widerstand, der 100R wird nur relevant, wenn der DS während der Wandlung (in der er mehr Strom braucht) über den AVR-Pin mit Spannung versorgt wird. Dann fallen bei 100R und 1mA Stromaufnahme eben 100mV am Widerstand ab, wodurch die Spannung für den DS um eben diesen Betrag nochmal verringert wird, unerheblich. 2. Das eigentlich Problem ist die Speisung aus dem Atmel. Wenn pro DS1820 1mA fließt kommt man irgendwann an die Grenzen. Dann muß die Versorgung eben über den extra Transitor nach +5V realisiert werden, wie Peter schreibt. Den würde ich aber hinter den 100R setzen. Und sicherstellen, dass er niemals geschalten wird, wenn ein DS noch was sagen möchte. Also lieber noch ein Schutzwiderstand. Ganz elegant kann man dem Transitor ja noch eine Strombegrenzung auf 50mA verpassen. Nebenbei, wie sieht es eigentlich mit den Kabelkapazitäten aus? Bis zu welcher Leitungslänge und mit wieviel Sensoren seid ihr so gekommen? Sven
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.