1-Wire Störungsbeseitigung
Generell beschreiben die folgenden Punkte Informationen aus dem Dokument „Guidelines for Reliable Long 1-Wire Networks.“. Dieser Absatz soll eine zusätzliche Hilfe darstellen und bezieht sich aus den Informationen des obigen Dokuments mit einigen praktischen Hinweisen.
Bus Fehler feststellen
Der OWServer und die entsprechende Webseite des Servers bietet einige Möglichkeiten um Fehler auf dem 1-Wire Bus festzustellen. Die Fehler können innerhalb der Statistik des OW Servers gesehen werden.
CRC Fehler
Die CRC Fehler werden auf der Seite „http://<IP-OWSERVER>:2121/bus.0/statistics/errors“ dargestellt. Hier sieht man die Anzahl der übertragenen Pakete und deren Fehleranzahl. Bei einem guten Bus sollte die Anzahl der CRC8 / CRC16 = 0 sein. Generell kann man sagen, je größer diese Zahl im Verhältnis zu den gesendeten Protokollen ist, umso schlechter ist der Bus.
Search Fehler
Sollten während der Suche von Busteilnehmer auf dem 1-Wire Bus Fehler auftreten, werden diese auf diese Webseite des OW Server dargestellt. Hier sollte auch immer eine 0 stehen. Generell kann man sagen, je größer diese Zahl im Verhältnis zu den Suchanfragen ist, umso schlechter ist der Bus. http://<IP-OWSERVER>:2121/bus.0/bus.2/interface/statistics/search_errors
Generelle Fehler
Sollten werden eine Schreibvorgangs oder Lesevorgangs generelle Fehler auftauchen, so werden hier die entsprechenden Fehlerzähler angezeigt. Im Normalfall sollte auch hier 0 stehen. http://<IP-OWSERVER>:2121/bus.0/bus.0/interface/statistics
Bus Fehler Ursache suchen
Um die Fehlerquellen entsprechend einzukreisen, kann man wie folgt vorgehen, um die Ursache zu finden und entsprechend zu beseitigen. Es wird generell von einer korrekten Konfiguration des OW-Servers ausgegangen.
Kurzschluss prüfen
Zeigen sich auf dem 1-Wire Bus keine Teilnehmer, liegt die Vermutung nahe, das ein Kurzschluss auf dem Bus vorhanden ist (oder auch die Datenleitung durch einen 1-Wire Teilnehmer auf 0 Volt gezogen wird. Dies kann durch Software 1-Wire Bausteine auch passieren).
Alle Teilnehmer entfernen und die Leitungen entsprechend durchmessen. Hierbei kann auch eine hochohmige Verbindung (kein direkter Kurzschluss) eine Problem sein. Um diese auszuschließen muss das Multimeter im Mega-Ohm Bereich eingestellt werden und die Leitungen prüfen. Danach jeden Teilnehmer einzeln wieder in den Bus aufnehmen und prüfen, ob der Bus noch in Ordnung ist (Error Counter prüfen).
Leitungsbruch prüfen
Sind an allen Teilnehmer alle Leitungen korrekt angeschlossen. Sind Klemmen verwendet, da sollte man prüfen, ob alle Drähte fest angeschlossen. Man sollte an den Drähten ziehen können, ohne das sich der Draht löst. Wenn man LSA Klemmen verwendet, sollte man prüfen, ob der Draht auch wirklich tief in die Klemme gedrückt wurde. Evtl. einfach nochmals alle Kontakte nachdrücken. Kalte Lötstellen sind auch eine mögliche Problemstelle.
Spannungsversorgung prüfen
Damit der 1-Wire Bus stabil arbeiten kann, muss die Spannungsversorgung aller Busteilnehmer stabil sein. Einen ersten Test kann man mit einem normalen Multimeter durchführen. Hierbei sollte die Spannung an allen Teilstrecken des Bus zwischen 4,9V und 5.2Volt liegen. Ein Multimeter kann kurzzeitige Spannungseinbrüche nicht messen! Hier ist ein Oszilloskope für die genaue Messung notwendig. Dann kann auch die Brummspannung (Ripple) auf der 5V Leitung gemessen werden. Eine Brummspannung größer 100mV (eigentlich weniger) ist ein Zeichen für eine fehlerhafte Spannungsversorgung und sollte geprüft werden. Hier könnten Filterschaltungen oder ein besseres Netzteil Abhilfe schaffen.
Signalverhalten prüfen
Ein Fehler, welcher bei Leitungen im kurzen und mittleren Bereich gerne auftritt, ist das „ringing/undershoot“ Signal. Hierbei wird kurzzeitige das 1-Wire Signal in den negativen Spannungsbereich gezogen (Impulse von bis -0.5Volt und mehr sind keine Seltenheit). Ein entsprechendes Bild des Signalverlauf kann man auf der Seite 10 (Appendix D. Waveform Examples) des „Guidelines for Reliable Long 1-Wire Networks.“ sehen.
Dieser Effekt wird durch die angeschlossenen Client's bei einem Bus Reset durch den Master erzeugt. Diese Impulse können hierbei die angeschlossenen 1-wire Teilnehmer in der Signalfolge des 1-wire Protokolle aus dem Tritt bringen. Der Effekt zeigt sich z.B. durch kommen und gehende Teilnehmer in der Device-Übersicht des OW Servers. Diesen Effekt kann man nur mit einem Oszilloskope messen/darstellen.
Eine Abhilfe ist hier nur die Einbringung eines RC-Glied in den Anfang des betroffenen 1-Wire Bus. Laut Guideline von Maxim sollte es ein 68 Ohm Widerstand sein und ein 470pF oder 4700pF je nach Leitungslänge sein. Der entsprechend Schaltplan ist auf der Seite 9 des „Guidelines for Reliable Long 1-Wire Networks.“ zu sehen.
Bus Erweiterungen
Wenn der 1-wire Bus erweitert wird, kann sich das Leitungsverhalten ändern, insbesondere dann, wenn man nicht die optimale Netztopologie "Linear" verwendet.
Stubs vermeiden
Hier können die sogenannten Stub, Abzweigungen vom Hauptstrang zum Problem werden. Sind diese Abzweigungen länger als 3m, beeinflussen sie nachweislich das Signalverhalten, da man in diesem Fall nicht mehr von einem linearen Bus, sondern einem stubbed Topologie redet. Die Leitungsrefektionen dieser Seitenarme können den Bus stören und sind daher zu vermeiden.
Slave Device Weight prüfen
Das Slave Device Weight ist eine Kenngröße für die Kabellänge in Verbindung mit den angeschlossenen Devices innerhalb eines Bus Strangs. Hierbei wird die Kabellänge und die Anzahl der angeschlossenen 1-wire Slaves zu einem "Gewicht" ermittelt. Hierbei hat ein iButton die Kenngröße "1m" und normale Devices eine Kenngröße von "0.5m" in Verbindung mit der Kabellänge kann man so den maximalen Ausbau seines möglichen Bus ermitteln.