Ich arbeite derzeit an einer Temperaturüberwachung und Lüftungssteuerung für meinen Serverraum auf Arduino-Basis und einigen Dallas DS18S20 1-wire Temperatursensoren. Da das Ding eine Netzwerkanbindung bekommt und später auch die eine andere Heimautomatisierungsfunktion übernehmen soll, wollte ich im Vorfeld abklären, ob es möglich ist, mit minderwertigem, umgeschirmten Telefonkabel größere Distanzen zu den Sensoren überbrücken zu können. Dazu habe ich in der warpzone einen Testaufbau vorgenommen und 3 Sensoren angeklemmt, von denen einer an dem 100m Kabel hing. Nun wollte ich mit dem digitalen PC-Scope (Oszilloskop) das darüber übertragene Signal anschauen, wie sehr die steigenden und fallenden Flanken des digitalen Signals durch das lange Kabel beeinflusst werden, bzw. ob am Ende überhaupt noch ein brauchbares Signal ankommt.

Für den Test habe ich mein angefangenes Sensorprojekt auf dem Breadboard leicht modifiziert. Der linke obere Widerstand ist mit einem Wert von 2,2kΩ relativ groß, sodass die resultierenden Ströme knapp an der oberen Grenze der Spezifikation für die DS18S20 1-wire Sensoren liegen. Dies habe ich gemacht, um bessere Chancen für eine fehlerfreie Kommunikation über die große Distanz zu haben. Ebenso verzichte ich auf die parasitäre Stromversorgung und spendiere den Sensoren eine dedizierte, wodurch 3 Adern nötig werden. Deswegen auch 4-adriges Telefonkabel, wobei ich Masse und Spannung nebeneinander im Kabel laufen lassen und den Datenbus auf dem äußeren Kabel auf der anderen Seite abgetrennt durch eine ungenutzte Ader. 

Sensor Project 1-wire 100m Test auf Breadboard

Sensor Project 1-wire 100m Test auf Breadboard

In dem Arduino Sketch verwende ich diese OneWire und die DallasTemperature library zur bequemen Ansteuerung. Der Sketch selbst ist noch in einem derart frühen Entwicklungsstadium und strotzt noch vor hässlichem Code, dass ich diesen zum jetzigen Zeitpunkt noch nicht der Öffentlichkeit zeigen möchte und publiziere ihn deswegen hier nicht, sondern hebe mir das für einen späteren Zeitpunkt auf, wenn ich das ganze Projekt dokumentiere

Nun habe ich mit dem Oszilloskop jeweils an einem Sensor vor und nach dem 100m Kabel den Datenbus durchgemessen.

1-wire Temperatursensor am kurzen Kabelende

1-wire Temperatursensor am kurzen Kabelende

1-wire Temperatursensor am langen Kabelende

1-wire Temperatursensor am langen Kabelende

Wie man sieht, gibt es auf diese Distanz zwar einige Oberschwingungen, und durch Reflexionen und Induktion verursachte Spannungsspitzen, die Gestaltung der Flanken ist aber bei Weitem nicht so schlimm wie befürchtet und ermöglicht ohne weiteres Zutun eine reibungslose Kommunikation mit dem DS18S20.