DS18B20 an Arduino

Gast #4807506
Ich weiß, dass es hierzu unzählige Beiträge gibt. Leider habe ich alles 
versucht und nichts hat funktioniert.

Gekauft habe ich diese : http://www.ebay.de/itm/122233116124

Jetzt habe ich schon mehrere Stunden versucht aber es läuft immer darauf 
hinaus, dass kein Device gefunden wird oder keine Adresse abrufbar ist 
etc.

Ich habe verschiedenste Programme getestet (auch die Beispiel codes der 
jeweiligen Bibliotheken) unterschiedliche Widerstände, andere Pins und 
auch mehrere Nanos. Schön langsam glaube ich, dass die Sensoren defekt 
sind.... aber gleich 5 stück ?

Bin mit meinem Latein grad ein wenig am Ende.... kann mir da jemand ein 
paar Tipps geben?

Das war eine der Anleitungen die ich getestet hatte :
https://www.hacktronics.com/Tutorials/arduino-1-wire-tutorial.html


Grüße
Gast
habe es gerade so wei in deisem Video versucht:
https://www.youtube.com/watch?v=1GD29sXLOJ0

Leider bekomme ich nur -127 zurück.


1
#include <DallasTemperature.h>
2

3
#include <OneWire.h>
4

5

6

7
OneWire oneWire(2);
8

9
DallasTemperature sensors (&oneWire);
10

11

12
void setup() {
13

14
sensors.begin();
15
Serial.begin(9600);
16
}
17

18
void loop() {
19

20
sensors.requestTemperatures();
21
float currentTemp;
22
currentTemp = sensors.getTempCByIndex(0);
23

24
Serial.println(currentTemp);
25
delay(2000);
26

27
}
Ich habe zwar keine Ahnung von den Arduino-Bibliotheken, aber:

zwischem den Convert-Befehl an den Seonsor (requestTemperatues 
vermutlich) und dem Lesen des Scratchpads des Sensors muss einen 
bestimmte Zeitspanne liegen (bis zu 750ms bei hoher Genauigkeit). 
Deswegen muss da vermutlich ein delay dazwischen.

Das Lesen von 1-en (Wert 127) deutet auf einen busy-status des Sensors 
hin.

Aber wie gesagt: Vermutung, da ich die Arduino- Bibs nicht kennen.
Wilhelm M. schrieb:
> Ich habe zwar keine Ahnung von den Arduino-Bibliotheken, aber:
>
> zwischem den Convert-Befehl an den Seonsor (requestTemperatues
> vermutlich) und dem Lesen des Scratchpads des Sensors muss einen
> bestimmte Zeitspanne liegen (bis zu 750ms bei hoher Genauigkeit).
> Deswegen muss da vermutlich ein delay dazwischen.
>
> Das Lesen von 1-en (Wert 127) deutet auf einen busy-status des Sensors
> hin.
>
> Aber wie gesagt: Vermutung, da ich die Arduino- Bibs nicht kennen.

Jetzt war ich zu langsam zum Bearbeiten:

wollte noch hinzufügen: bekommt man bei Arduino keine Fehlercodes o.ä.?
Persönliche Seite
Aus deinen Link
1
Navigate to the "arduino_ds18b20_temperature_sensor" folder and select the "arduino_ds18b20_temperature_sensor.pde” file.
2
 
3
Now you need to identify your individual DS18B20 sensors by their serial numbers.  Luckily we have provided a tutorial for you here.
4
 
5
After you include the addresses of your sensors in the sketch, transfer the program to your Arduino by clicking the “Upload to I/O board” button. After uploading, open the Arduino serial monitor by clicking Tools->Serial Monitor.
Hast du das gemacht mit der ID zuweisung?
Im Beispiel werden 3 Sensoren verwendet und hast du auch 3 oder die 
Anzahl der Sensoren Angepasst?
In deiner Vorgabe gibts du dazu nichts an.
Gast
Das mit dem 750ms warten zwischen request und auslesen stimmt, die muss 
man ihm lassen. Bei der Bibliothek die ich benutzt hab konnte man wählen 
ob das die Bib machen sollte (und das Programm solange stehen bleibt) 
oder sie nicht aufs Timing achtet und einfach weiterläuft (und man das 
Timing selber machen muss).

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 9 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.