Mehrere Sensoren an 1-Wire machen Probleme

  • Du solltest die 3V3 nicht vom RasPi nicht nehmen. Eine sehr ausführliche Begründung hat jar mal dazu geschrieben. Leider finde ich den Link auf die Schnelle nicht.

    Besser wäre es, dafür einen separaten Spannungswandler zu nutzen. Ich habe vor einiger Zeit mal etwas passendes Kompaktes gebaut:

    Dualspannung: 5V und 3V3 auf einer Platine

    Aber die Teile gibt es auch als "Single"-Version für kleines Geld beim freundlichen Chinesen.


    Für den Probebetrieb ist die gezeigte Platine ganz gut. Sie passt auf ein Breadboard und versorgt es passend. Du musst nur aufpassen, auch die korrekte Spannung einzustellen. Wichtig ist, dass Du die Masse dieses Gerätes mit der Masse des RasPi verbindest.

  • tig ist, dass Du die Masse dieses Gerätes mit der Masse des RasPi verbindest.

    Danke danach hätte ich noch suchen müssen, denn irgendwie deuchte mir, dass die Datenleitung vom Pi nicht ausreicht ... der Strom muss ja fließen können. Beschäftige ich mich nachher mit.


    Aber wenn wir schon dabei sind:

    1. 3,3V von der USB-Stromversorgung an den Sensor und an den 4,7 KOhm-Widerstand
    2. DATA-Leitung vom RasPi an Sensor und 4,7 KOhm-Widerstand
    3. GRND von der Platine an den Sensor und auf GRND vom RasPi

    Ok?

    Edited once, last by didgejo ().

  • Danke für die ausführliche Darstellung des Hubs.



    Quote from KKoPi

    Bei mir auch [Die DS18B20 sind fest mit 3m dreiadrigem Kabel verbunden und wasserdicht verkapselt.] , daran sind dann die restlichen 4-6 m 4-adriges Kabel dran.


    Diese 4-6m Verlängerungen sind bei mir nicht nötig. Deswegen glaube ich auch, dass ich das 4-adrige Kabel nicht benötige. Wenn ich mir Deine Hin- und Rückleitung Data +/- zum Hub ansehe, ist das doch letztendlich nicht in Reihe sondern auch parallel (Und wie gesagt, diese Verlängerung brauche ich gar nicht.


    So sieht es bei Dir aus:

    Das ist bei meinem Hub eine Drahtbrücke:


    So bei mir:




    Lässt man bei Dir das 4-adrige Verlängerungskabel weg, kommt das gleiche raus: Sensoren hängen alle parallel sowohl an GRND, 3,3V und GPIO/DATA-Leitung. Und eine Brücke brauche ich daher bei ausgesöpselten Sensor auch nicht. Ich freue mich immer, wenn ich etwas durchschaut habe ... kann aber auch falsch liegen und nehme konstruktive Denkanstöße gerne auf.


    Was bei Dir anders ist: 5V (ich 3,3V), 4,7 KOhm (ich 10 KOhm) und dann hast Du noch eine Schottky-Diode (deren Funktion ich noch nicht kenne) dabei.


    Richtig ... oder wenigstens fast richtig?

  • Hi an alle;

    Bei mir laufen schon seeeehr lange 8 Sensoren an seeeeehr langen Kabeln in seeehr chaotischer Verknüfung.

    Ihr habt bis jetzt alle Beispiele für parasitäre Versorgung der Sensoren mit 3,3V gezeigt, es gibt aber auch die Möglichkeit; sie mit guten 5V zu betreiben:

    Die 5 Volt versorgen den Sensor.

    Die Datenleitung, die an den GPIO geklemmt wird, wird über den Widerstand mit den 3,3 Volt "hochgezogen" und so bekommt der Pin auch nur 3,3 V ab.

    Aber wie schon hier erwähnt wurde, musste Ich auch feststellen, dass nach Anschließen eines zusätzlichen Sensors nix mehr lief -der Widerstand musste reduziert werden und alles war wieder ok.

    Deshalb glaube Ich nicht, dass es so einfach mit Ein- und Ausstöpseln getan ist.

    (Poti???)


    rasray

    Edited once, last by rasray: parasitär ist was anderes ().

  • Also entweder habe ich den grundsätzlichen Unterschied zwischen dem parasitären Betrieb (DQ + GND) und dem Betrieb incl. Vdd nicht verstanden oder Du hast Dich extrem unglücklich ausgedrückt. Ich kann jedenfalls nirgendwo ein Beispiel für den Anschluss im parasitären Betrieb sehen.


    Welche Spannung gibt DQ denn aus, wenn Vdd bei 5V liegt? Was passiert mit der Differenz zu 3V3, die über einen Widerstand an DQ angelegt werden? Fragen über Fragen...


    Ein Poti allein ist eine denkbar schlechte Wahl, denn es kann auf 0 Ohm gedreht werden. Ein Poti sollte nur in Verbindung mit dem in serie geschalteten Minimalwiderstand eingesetzt werden.

  • Fachleute weggehört:

    Parasitär heißt so ungefähr: Die Elektronik des Sensors wird mit den 3,3 Volt (gegen Null) versorgt und die Datenleitung wird ebenfalls über diese Leitung auf 3,3 Volt gezogen.

    Es gibt aber auch die Möglichkeit, die Elektronik des Sensors mit 5 Volt (gegen Null) zu versorgen. (Mehr Spannung --> auch am längeren Kabel kommt noch was an)

    Die Datenleitung wird über den Widerstand im Ruhezustand auf 3,3 Volt gehalten. (Hat keine Berührung mit den 5 Volt)

    Wenn der Sensor dem Pi jetzt was erzählen will, schließt die Elektronik im Inneren diese Datenleitung quasi gegen Gnd, der Pin bekommt also jetzt "low" als Signal. Und so morst der Sensor also Nullen und Einsen...

    ... So verstehe Ich das jedenfalls


    Edith:

    KKoPi: Wenn Ich es in deinem Schaltbild richtig sehe, hast Du allerdings 5V über den Widerstand an DQ geklemmt

    -Darf man doch nicht am Pi?:conf:

    Edited once, last by rasray ().

  • Parasitär, vielleicht etwas anschaulicher: Die Stromversorgung des Sensors erfolgt über die Datenleitung. Der Sensor saugt aus der Datenleitung Strom, wenn sie gerade high ist (wie ein Parasit eben). Am Sensor wird dafür Data GND+Vdd gebrückt. Wenn Daten gesendet werden, geht die Leitung auf low - das überbrückt die Elektronik mit einem Kondensator.


    Und da stimme ich zu, dass die getrennte Versorgung mit 5 V stabiler ist und man so auch über die getrennte Versorgung von Data unproblematisch 3,3 an die GPIOs bringt. Zumal der Strom, der bei parasitärer Versorgung über Data laufen muss recht groß ist (der Pullup also entsprechend klein) und es die Sensoren schwer haben dürften, die Leitung auf GND zu ziehen, wenn mehrere Sensoren dran hängen. Bei stromhungrigen Sensoren (> 1 mA) werden da wahrscheinlich kaum mehr als eine Handvoll problemlos laufen. Mit Sensoren im µA-Bereich geht sicher mehr.

    Oh, man kann hier unliebsame Nutzer blockieren. Wie praktisch!

    Edited once, last by Gnom ().

  • Hi, Gnom;

    Nochmal zum Parasiten:

    Dann müsste Ich ja an den Vdd nix anschließen und käme mit einer 2-adrigen Leitung hin :denker:

    Richtig. Vdd muss dann auf Ground. Dann läuft der Sensor parasitär, mit einer Leitung (1-wire) und Bezugspotential Ground.



    Servus !

    RTFM = Read The Factory Manual, oder so

  • Wenn die Experten auf so hohem Niveau ringen, bis sie sich einigen ... steht der Laie daneben, staunt und versteht gar nichts. :)


    Welches ist denn jetzt die Lösung in einfachen laientauglichen Worten für mein Problem im EIngangsposting? Am liebsten so, dass ich das auch direkt umsetzen kann und heute noch ein Erfolgserlebnis habe.


    Ich kann auch gerne meinen Schaltplan aus dem Eingangsposting hier zur Verfügung stellen, wenn mir einer sagt, wie man das uploaden kann.

  • M.E. steht im Grunde alles schon auf der ersten Seite. Lies nochmal alles in Ruhe durch.

    Ja, im Grunde steht auf der ersten Seite ALLES (und auf der zweiten auch) und der Experte der es jetzt nach langem hin und her der Experten verstanden hat, dem ist klar, was von dem ALLEM der richtige Weg ist. Ich bin aber gerade kein Experte.


    Hoffentlich kann sich da noch einer in einen Anfänger hineinversetzen und versteht, dass es gerade nicht trivial ist in einem Gewirr von ganz oder halb richtigen und falschen Aussagen die richtige auszuwählen.

    Welches ist denn jetzt die Lösung in einfachen laientauglichen Worten für mein im EIngangsposting dargestelltes Problem?


    Die Antwort auf diese Frage wäre ja dann auch ein guter Abschluss dieses Themas.

  • Eingangsposting: Ab 4. Sensor geht nix mehr...

    Einfachster Lösungsansatz für dieses Problem:

    Bei deiner Schaltung in diesem 1. Post nicht 10kOhm einsetzen: Allgemein werden sowieso nur 4,7 kOhm beschrieben. Also damit probieren, eventuell einen noch kleineren nehmen.


    jetzt aber gute Nacht;


    rasray

    (...der bestimmt kein Experte ist...)

  • Sofern Dein Netzwerk Hub direkt (ohne Bauteile) auf die richtigen Drähte der Kabel geht, müsste es meiner Meinung nach funktionieren. ABER

    • du solltest 4K7 statt der 10K verwenden. Steht ziemlich eindeutig im Datenblatt: "The 1-Wire bus requires an external pullup resistor of approximately 5kΩ; thus, the idle state for the 1-Wire bus is high." (Seite 10 unter Hardware Configuration). Wenn Du einen zweiten 10K hast, schalte ihn parallel zu dem einen, dann hast Du auch 5K.
    • Meiner Meinung nach sollte es ziemlich egal sein, ob Du 3,3V oder 5V für die Versorgung (also VDD) verwendest. Da die Sensoren wenig Strom brauchen und die Spannung mindestens 3V sein muss, solltest Du auch bei etwaigen "normalen" Übergangs- und Leitungswiderständen kein Problem haben. Sollten tatsächlich (wider erwarten) hohe Spannungsabfälle auftreten wären die 5V tatsächlich ein Vorteil.
    • Auch wenn Du die Sensoren mit 5V versorgst - da die Ausgangsstufe der Sensoren eine "open Drain" Schaltung ist, wird der Pegel nur auf den Spannungswert des 4K7 PullUp Widerstandes gezogen. Der 4K7 (der momentan ja 10K ist), an DQ muss also unbedingt auf 3,3V hängen - am besten die des Raspberry (um etwaige Ausgleichsströme durch Spannungsunterschiede zu vermeiden)...

    Würde mich freuen, wenn ich helfen konnte.

    ...wenn Software nicht so hard-ware ;-) ...

    Freue mich über jeden like :thumbup:

  • Würde mich freuen, wenn ich helfen konnte.

    Hast Du.


    Ich danke allen, die sich hier konstruktiv engagiert haben.


    Gegenüber meiner Ausgangssituation habe ich lediglich einen den 10KOhm gegen einen 4,7KOhm Widerstand getauscht und jetzt habe ich mit den ersten 8 Sensoren, die ich bereits fertig gecrimped habe, keine Probleme mehr. habe weiterhin nur 3,3V an Vdd.

    Alle Sensoren werden erkannt und senden Daten ... Juhu. Und einzelne rausziehen ist auch kein Problem.


    Ich schließe dann.

  • Dann kann man ja ganz allgemein formulieren, dass die Lösung schon in Beitrag #2 steckte.:angel: Aber durch die folgenden Beiträge konnte ich auch noch einiges an neuen Informationen dazugewinnen :)

    Freut mich dass es nun funktioniert!

    Ich denke, dass das auch einer der Gründe ist, sich an solchen Diskussionen zu beteiligen :) Danke dafür :)

  • Eine Überlegung und Frage habe ich noch.

    Eine der Anschlussvarianten für lange 1-Wire-Verbindungen ist ja Vdd mit 5V zu versorgen, siehe Anhang.


    Wenn ich jetzt aber alle Sensoren entferne, was passiert da ... ich vermute: "nichts Schlimmes":

    1. 5V und GRND haben ja keine Verbindung mehr ... also unkritisch.
    2. Aber was passiert an der Stelle, wo der 4,7KOhm-Widerstand die 3,3V und die Datenleitung verbindet?
      a) Passiert gar nichts, weil keine Verbindung zu GRND besteht?
      b) Oder fließt hier ein Strom von etwa 0,7mA und das ist auch ok? [Korrigiert, erst stand hier 7mA]

    Schönes Wochenende

    didgejo (der heute lernen will, wie man mit einem ESP8266 eine WLAN-Verbindung zum Raspi aufbaut)