DS18b20 Temperatursensor nicht aufgeführt

15

Ich würde mich sehr über einen Rat freuen. Als Total Noob habe ich mich genau an eine Anleitung im Internet gehalten, die erklärt, wie man einen DS18b20-Sensor mit meinem Raspberry Pi verwendet. Der Leitfaden ist http://www.cl.cam.ac.uk/freshers/raspberrypi/tutorials/temperature/ und war recht einfach zu befolgen.

Ich habe die Datei raspi.list in deb http://archive.raspberrypi.org/debian/ wheezy main untested geändert und dann apt-get update und apt-get upgrade ausgeführt. All das verlief reibungslos.

Ich habe dann den DS18b20 mit 3V, Masse und Daten (GPIO # 4) verbunden und die Daten und 3V über einen 4,7 Ohm Widerstand verbunden.

Ich habe dann die Konsole benutzt, um zu laufen;

sudo modprobe w1-gpio
sudo modprobe w1-therm
cd /sys/bus/w1/devices/

Das alles funktioniert gut. Bei der Eingabe lswird jedoch in der Anleitung angegeben, dass die Seriennummer des aufgelisteten Sensors gefolgt von angezeigt werden soll w1_bus_master1.

Eigentlich bekomme ich w1_bus_master1nur keine Seriennummer. Ich habe alles versucht, woran ich denken kann (was nicht viel ist). Kann jemand eine Anleitung geben, wo das Problem liegen könnte?

Danke vielmals

Raspnoob.

Raspnoob
quelle
1
Es scheint, dass Ihr RaspberryPi Ihren Sensor nicht erkennt. Überprüfen Sie den korrekten Anschluss (z. B. wenn Sie Pin 1 des Sensors nicht mit Pin 3 usw. verbunden haben), überprüfen Sie den Anschluss des Daten-Pins an GPIO 4, und überprüfen Sie einen anderen Sensor (möglicherweise haben Sie es geschafft, den Sensor zu bremsen) eine, die Sie gerade testen). Da ich nicht weiß, ob es sich um einen Tippfehler handelt, überprüfen Sie, ob Sie einen 4,7 kOhm (4700 Ohm) -Widerstand verwenden, nicht 4,7 Ohm.
Krzysztof Adamski
Danke für die Antwort, das war ein Tippfehler ist ein 4,7k Ohm Widerstand (gelb, violett, rot, gold). Ich habe drei Temperatursensoren und keiner von ihnen funktioniert. Es ist jedoch möglich, dass es mir gelungen ist, alle drei durch Verdrahtungsfehler zu beschädigen. Zumindest scheint nichts anderes als falsch herauszuspringen, also kaufe ich zuerst ein paar mehr.
Raspnoob

Antworten:

15

Ich schlage vor, Ihre Verbindungen zu überprüfen. Foto von Verbindungen
↑ meine Verkabelung (was bei mir funktioniert)

Pi-Header-Pins← Von Pi Spickzettel

Screenshot von temporären Graphen und pi-Befehlen
↑ Befehle und Beispielausgabe + RRDTOOL-Diagramme von DS18B20 (das im oberen Foto gezeigte)

Wenn ein Bild mehr als tausend Worte sagt, warum besteht Stapelaustausch dann aus 30 Zeichen?

RedGrittyBrick
quelle
Danke HeatfanJohn das ist genau das was war. Ein Verdrahtungsfehler. Ihr Bild hat das Problem in Sekunden behoben. Ich bin ein wenig verwirrt darüber, dass es sich bei mir um Pin 7 handelt, den ich in einem Diagramm als Allzweckuhr bezeichne. Wie ist es GPIO # 4?
Nochmals vielen
@Raspnoob: Siehe Pinbelegung in der aktualisierten Antwort, Nummerierung ist verwirrend. Die GPIO-Nummerierung richtet sich nach den Spezifikationen der wichtigsten System-on-Chip-Hersteller, die Header-Pins sind jedoch unterschiedlich organisiert und werden separat im Zick-Zack-Verfahren anstatt entlang der Pin-Linien nummeriert. PS: Bitte klicken Sie auf das Häkchen, um die Antwort zu akzeptieren, wenn dies zur Lösung Ihres Problems beigetragen hat.
RedGrittyBrick
1
Kann ich ein anderes GPIO verwenden?
Andres
4
Ich konnte meine nicht dazu bringen, mit Raspbian 1.4.0 und einem Modell B + zu arbeiten, bis ich dies tat: Fügen Sie die folgende Zeile am Ende von /boot/config.txt hinzu: dtoverlay = w1-gpio, gpiopin = 4
David Tinker
14

Ich hatte das gleiche Problem mit Pi B + und löste es durch Hinzufügen einer Zeile zu /boot/config.txt. Fügen Sie unten Folgendes hinzu:

dtoverlay=w1-gpio,gpiopin=4

fand die Lösung unter: www.raspberrypi-spy.co.uk

waterwombat
quelle
Das hat es für mich getan. Scheint, dass dies für Pi Model 1 nicht notwendig war. Ich habe Model 2 und brauchte dies. Nein modprobe-s waren notwendig.
Oliv
War auch notwendig für mein Pi Modell 3 B.
user100464
3

Sie können DS18B20 im Parasite-Power-Modus verwenden, dh Sie benötigen nur zwei Drähte: Masse und Daten, für die Daten ist kein Pullup-Widerstand erforderlich.

Gemäß Datenblatt ( http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf, Seite 2): VDD muss für den Betrieb im Parasite-Power-Modus geerdet sein.

Der DS18B20 benötigt in diesem Modus einen starken Pull-up auf der Datenleitung, der durch folgende Befehle erreicht werden kann:

sudo modprobe w1-gpio pullup=1
sudo modprobe w1-therm strong_pullup=1

EDIT (als Antwort auf einen Kommentar):

  • Der parasitäre Stromversorgungsmodus zeichnet sich durch eine einfache Verdrahtung aus. Für diesen Modus werden nur 2 Kabel benötigt. Dies ist besonders wichtig, wenn eine große Anzahl von Sensoren miteinander verbunden werden soll.

  • Der Nachteil des Parasitenmodus ist, dass der E / A einen starken Pullup benötigt, um genügend Strom liefern zu können. Dies ist jedoch bei diesen Temperatursensoren kein wirkliches Problem.

  • Ein weiterer Nachteil der parasitären Leistung ist die langsamere Kommunikationsgeschwindigkeit. Man muss den parasitären Kondensator aufladen und das braucht Zeit, wenn dieser Sensor> 500 ms ist.

sanyi
quelle
1
Was sind die Vor- oder Nachteile der Verwendung des DS18B20 im Parasitenmodus gegenüber dem normalen Modus?
Matthew Moisen
(Ein bisschen spät aber) Antwort hinzugefügt.
Sanyi
Vielen Dank. "parasitärer Stromversorgungsmodus ... ist besonders wichtig, wenn man eine große Anzahl von Sensoren miteinander verbinden möchte" Derzeit verbinde ich bis zu 7 Sonden auf einem Steckbrett, ohne den parasitären Modus zu verwenden. Warum ist es in diesem Fall wichtig, parasitär zu werden?
Matthew Moisen
In einigen Szenarien können weniger Drähte die Kosten senken oder mechanische Probleme oder Platzprobleme vermeiden. Dies ist für kleine Hobbyprojekte auf dem Schreibtisch einer anderen Person irrelevant.
Sanyi
1
Vermutlich, wenn Sie ein externes Pullup verwendet haben, ist die Konfiguration pullup = 1 nicht erforderlich?
Piers7
-1

Wenn Sie eine neuere Version von Wheezy haben, aktivieren Sie "Device Tree" NICHT im Konfigurationsprogramm! Ich finde, dass es alle Arten von Chaos mit der Hardware von Pis anrichtet.

In diesem Fall müssen Sie die Zeile aus den oben genannten Kommentaren NICHT hinzufügen:

dtoverlay = w1-gpio, gpiopin = 4

Piboy
quelle
-1

Um einen Draht mit dem neuesten Kernel einzurichten, folgen Sie den Anweisungen unter: http://bigfieldsblog.cloudapp.net/keyes-18b20-temperature-sensor-and-raspberry-pi-2/

Bigfields
quelle
1
Im Einklang mit unserer Politik in Bezug auf informations Link nur für Antworten , wenn dieser Beitrag nicht bearbeitet wird , um Informationen zu enthalten , die als Antwort stehen können, jedoch minimal, in 48 Stunden wird es Community Wiki umgewandelt wird sie von der Gemeinschaft korrigiert vereinfachen muß.
Ghanima
-2

PIN 3 muss gemäß Datenblatt im parasitären Stromversorgungsmodus geerdet werden.

Jeremy Jacobsen
quelle
3
Hallo hallo willkommen Bitte erweitern Sie Ihre Antwort zB um Links, weitere Beschreibungen, Fotos oder ähnliches.
Myhd