mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Pull-up am DS1812


Autor: Martin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Sven (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Martin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Tja Jungs, alles gute Antworten, aber meine Frage nach der
Funktionsweise ist noch nicht geklärt. Sorry!

Autor: Sven (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Martin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke !!!
Das ist was ich wissen wollte.

Autor: Ronny Schulz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@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.

Autor: Sven (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.