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
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.
Hans schrieb: > Leider habe ich alles versucht und nichts hat funktioniert. Dann ist vielleicht bei deinem Aufbau etwas falsch oder dein Sensor ist defekt. Es gibt definitiv genug DS18B20, die mit Arduinos laufen.
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.ä.?
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.
@Hans Hab hier was gefunden,das wunderbar funktioniert auch mit mehreren Sensoren. Lade dir die Library von folgender Seite. https://github.com/PaulStoffregen/OneWire Du musst diese Lib als Zip herunterladen und unter dem Reiter "Sketch" die Bibliothek einbinden. Benutze dann das Programm im Anhang.
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).
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.