Ein wenig Basiswissen: Es gibt eine Reihe von Schaltkreisen welche über ein proprietäres Protokoll angesteuert werden können. Das Protokoll nennt sich 1-Wire (von Dallas Semiconductors).
In einem 1-Wire network, welches Dallas “MicroLan” ™ getauft hat, kommuniziert ein einzelner “Master” mit einem oder mehreren “Slaves” über eine einzelne Datenleitung, welche außerdem zur Spannungszuführung verwendet werden kann.
Die 1-Wire Temperatur-Sensoren sind besonders beliebt, da sie preiswert und einfach zu benutzen sind: sie stellen kalibrierte Messwerte direkt zur Verfügung und können lange Leitungen zwischen Sensor und Arduino treiben.
Es stehen zwei Betriebsarten zur Auswahl, die Parasitäre Betriebsart und die normale Betriebsart (externe Spannungszufuhr) .
Wenn die parasitäre Betriebsart gewählt wird, sind nur zwei Adern erforderlich: Eine Datenleitung und eine Masseleitung. Beim Master, ist ein 4.7k pull-up Widerstand an den 1-Wire Bus anzuschließen. Wenn die Leitung im “High” Status ist, kann ein interner Kondensator im Chip aufgeladen werden.
Bei der normalen Betriebsart wird externen Spannung zugeführt und es sind insgesamt drei Leitungen erforderlich: die Datenleitung, Masse und 5V. Der 4.7k pull-up Widerstand auf der Busleitung ist trotzdem erforderlich. Dadurch dass der Datenbus voll für die Kommunikation zur Verfügung steht, kann der Mikrocontroller ununterbrochen die Temperatur abrufen. Auf diese Weise wird der Wert sofort geschickt, wenn die Konvertierung beendet ist, im Gegensatz zu 750ms Wartezeit in “parasitärer” Betriebsart.
Bei meinem Testaufbau habe ich zwei DS18S20 in der normalen Betriebsart verwendet. Der Pull-Up Widerstand ist schwer zu erkennen/finden da er großteils vom Schrumpfschlauch verdeckt wird.
Zusätzlich habe ich eine SD-Card verwendet um die Messwerte zwischen zu speichern.
Mittels GSM Modul werden die Daten einmal am Tag auf einem FTP Server abgelegt und weiterverarbeitet.
Der nachfolgende Code zeigt wie die Adresse der Temperatursensoren ermittelt werden und die Werte ausgelesen werden können.
– See more at: http://www.aurob.com/?page_id=2074#sthash.gcEtqnRg.dpuf