1-Wire ist ein digitaler, serieller Bus des Herstellers Maxim (ehem. Dallas), der ursprünglich für die Kommunikation von integrierten Bauteilen auf Leiterplatten entwickelt wurde, im Laufe der Jahre aber zu einem einfachen Bussystem auch für längere Strecken (bis 300m) erweitert wurde.
1-Wire wird in Geräten häufig zur Temperaturmessung, Akkuüberwachung (Spannung, Temperatur, Stromfluss) oder als Identifikationsmerkmal (eindeutige Seriennummern) eingesetzt.
Ebenso in der Lebensmittelkontrolle (z.B. Thermochron iButton) und im Agrarbereich als Datenlogger, hierbei wird z.B. Luftfeuchte und Temperatur regelmässig von den iButtons autark (ohne „Busanschluss“) intern protokolliert und kann später mit einem Lesegerät/PC ausgelesen werden.
Ebenso werden iButtons (siehe unter andere Sensoren) häufig in Handel und Gastronomie zur Identifikation von Waren oder Personen genutzt.
Hier eine Einführung in die 1-Wire Technik der Fa. Wiregate, Mitglied im KNX Userforum
http://shop.wiregate.de/1-wire-bus
Im Bereich der Gebäudeautomatisierung sind 1-Wire Sensoren vor allem für die Erfassung von Temperatur- sowie anderen Umweltwerten interessant.
Vorteile:
- Günstige Sensoren und Gateways/Adapter
- Einfach in der Verdrahtung (Bus), vergleichbar mit anderen Bussystemen (KNX, DALI<, etc.)
- Hohe Genauigkeit (bei Temperatursensoren)
- Keine Messwertverfälschung durch Leitungslänge/Störeinflüsse (digitale Messwertübertragung vom Sensor zum Host)
- Einfache Zuordnung da jeder Sensor eine eindeutige Seriennummer hat.
Nachteile:
- „Relativ“ langsam beim auslesen (siehe Tabelle unten), dürfte in der Praxis aber vernachlässigbar sein.
- Für Leitungslängen >100m sind nicht alle Topologien möglich.
Topologie / Busaufbau / Verdrahtung:
- Leitung: Y(St)Y 2×0,6 oder Cat5
- Optimal: Linie mit kurzen Abzweigen <3m; Gesamtlänge bis 300m möglich.
- Baum/Sternstrukturen: Bis 100m Gesamtlänge und weniger als 20 Sensoren können auch beliebige Baum/Sternstrukturen aufgebaut werden.
Dies gilt aber pro 1-Wire Bus, es können je nach Hostmaster/Gateway auch mehrere Busse angeschlossen werden.
Siehe auch Lexikoneintrag LE für Lasteinheiten
1-Wire Temperatursenoren mit DS18B20 im Detail:
Die Temperatursensoren vom Typ DS18B20 haben je nach Anschluss und Betriebsart folgende Eigenschaften:
- Bauform: TO92 Gehäuse (es gibt aber auch SMD-Chips davon)
- Belegung: 1/links: GND, 2/mitte: DATA, 3/rechts: Vdd (flache Seite vorne, Beinchen unten)
- Genauigkeit:
– 0,5°C im Messbereich von -10..85°C
– 2°C im Messbereich von -55..125°C - Auflösung wahlweise (in Klammern die max. Dauer einer Messung):
– 12 Bit (0.0625°C, 750ms)
– 11 Bit (0.125°C, 375ms)
– 10 Bit (0.25°C, 187.5ms)
– 9 Bit (0.5°C, 93.75ms) - bei 2-adrigem Anschluss:
– Diese Betriebsart wird als „parasite power“ bezeichnet, der Sensor wird aus der Datenleitung gespeist.
– Nachteil: eingeschränkter Messbereich: -55..~85°C (darüber nur mit 3-Adern; es gibt dazu widersprüchliche Aussagen, kleineren Wert angenommen)
– Achtung: es müssen beim Betrieb mit 2 Adern die Pins 1 und 3 (Vdd) auf GND gelegt werden. Pin 3 darf nicht „in der Luft hängen“ (teils anderswo so beschrieben) - bei 3-adrigem Anschluss (zusätzl. Speisung mit 5VDC vom Busmaster oder extern)
– vollständiger Messbereich nutzbar
– theoretisch bei vielen Sensoren am Bus schneller, spielt in der Praxis mit bekannten Busmastern aber keine Rolle.
Anschluss parasitär
Anschluss mit externer 5V-Versorgung
Andere Sensoren/Anwendungen:
Es gibt am Markt noch viele weitere 1-Wire Sensoren, die wie o.g. funktionieren, allerdings auch einige Module, die proprietäre Erweiterungen vorraussetzen (zusätzliche Spannungsversorgung notwendig usw.), darauf sollte man beim Kauf achten.
Andere Sensoren die in genannter Konstellation erfolgreich getestet wurden:
- MS-TH (Temp/Luftfeuchte).
- iButton DS1990A (64 Bit ID) für z.B. digitales Schlüsselbrett, Identifikation.
Das beschriebene bezieht sich im wesentlichen auf Erfahrungen mit den Adaptern DS9490R (USB), HA7net (LAN) & HA7E (RS-232/ASCII) im Betrieb mit owfs.
Die o.g. Zahlen sind nicht zwangsweise auf andere Plattformen/Software/Busmaster übertragbar, da das Zusammenspiel der Komponenten auch klappen muss.
Anmerkungen zu Produkten:
- DS9490R (1-Wire USB-Adapter)
– Wichtig ist insbesondere dass der 1-Wire Busmaster und die Software die Funktionen „strong pullup“ beherrschen (hier der Fall mit owfs).
Es sind Probleme in diesem Zusammenhang unter Windows bekannt.
– Beim Betrieb mehrerer ist auf die Stromversorgung (Bedarf: 100mA) zu achten: Falls über Hubs mehr als 4 angeschlossen werden, muss der Hub extern gespeist werden.
– Stabiler Betrieb in o.g. Grenzen.
– Pinbelegung (von vorne auf den Stecker blickend, Rastnase oben): – Achtung, dieser Stecker (RJ-12) sollte nicht mit einem Ethernet (RJ-45) Stecker verwechselt werden!
1: Vdd (5VDC max 42mA)
3: Data
4: Ground - HA7Net (1-Wire zu Ethernet/LAN Gateway)
– Kein aktiver Versand der Werte möglich, nur per HTTP-abrufbar.
– Sehr stabiler, „robuster“ Busmaster. Weitere Ausdehnung als o.g. möglich.
– Relativ langsam beim auslesen der Daten (nur HTTP), dauert teilw. 1-2 Sekunden pro Sensor; bei vielen Sensoren evtl. problematisch mit HS, da man sich die Webabfragen „blockiert“, weil diese immer nacheinander abgearbeitet (serialisiert) werden.
– Pinbelegung (von vorne auf den Stecker blickend, Rastnase oben):
Pin 3: 1-Wire Signal / Data
Pin 4: Ground
Pin 6: Vdd (per jumper einstellbar) - HA7E (1-Wire zu RS-232 mit ASCII-Schnittstelle)
– Ebenfalls sehr robust ggü. Leitungslänge/Sterntopologien.
– Relativ langsam durch ASCII-Protokoll. - MS-TH (Luftfeuchte und Temperatur)
– Luftfeuchtesensor: HIH-4000
– Betrieb mit 2 Adern möglich (parasite power)
– Temperatursensor mit 2° ungenauer (anderes Bauteil: DS2438, kein DS18B20!) - Wiregate (Computer System zur Erfassung und Verarbeitung von 1-Wire Sensoren)
– verschiedene geprüfte Temperatursensoren
– Lichtsensoren zur Helligkeitserfassung
– Feuchtigkeitssensoren
– Multisensoren Temperatur, Feuchtigkeit, Lichtstärke
– Anbindung an den KNX Bus