1-Wire Verkabelung

Hi

ich habe die Dokumentation

1Wire-Bus-System - IP-Symcon

recht genau gelsen nur die Aussage kleine bis mittlere Netze ist etwas undefiniert.

Ist Situation:
Vorhande Raumtermostate 5 Stück angeschlossen an einem 3 * 1,5m² Pol NYM Kabel (ungeschirmt)

Soll Situation
5 X 1-wire Senoren
Alle kabel laufen an einer Zentralen Stelle zusammen

somit währe es eigentlich eine Stern Top. Die 5 Kabellängen liegen zwischen 5 und 15 Metern.
Muss ich hierbei mit Störungen zu Rechnen?

Es sollten ja auch Kraut und Rüben"-Verdrahtungen funktionieren. :slight_smile:

Kraut und Rüben"-Verdrahtungen funktionieren

… bei mir allerbest.
Dennoch gilt: „try and error“ - es wird Dir keiner etwas garantieren!
Notfalls: 2. eigenen Strang (Adapter)

MST

Hallo ckerndl,

ich denke die Kabellänge ist ein entscheidender Faktor. Wie lange sind die einzeln Kabel?
Mein Problem ist das mein Bus nicht stabil läuft und abstürzt. Das passiert mal nach einer Stunde mal nach 12. Ich muss dann IPS oder auch den ganzen Rechner neu starten. An einem Rechner habe ich das Problem nicht beheben können auf einem zweiten tritt das Problem nach erweitern des Buses auf. Der Bus ist keine 50 Meter lang und es hängen 5 Sensoren dran. Ich habe 4*0,8 mm Kabel verwendet. Als Adapter dient der COM-Adapter. In der Doku lese ich was von einem Secondary-Port den scheint es bei dem COM-Adapter nicht zu geben.

Hat jemand eine Idee? Ich muß sagen das ich von 1-Wire ziemlich enttäuscht bin und es nicht nochmal verwenden würde und froh bin das der Rest über meine Wago läuft.
Cali (der über jeden Rat dankbar ist)

Hallo Cali,

das kann verschiedenste Ursachen haben, ich zaehle mal einige hier auf:

  • 1-Wire Adapter defekt
  • Kabel hat temporaeren Masseschluss
  • in IPS sind verwahrloste 1-Wire Instanzen
  • der TMEX Treiber ist fehlerhaft (falsche Treiberversion)
  • ein einzelner 1-Wire IC ist parasitaer angeschlossen (nicht zulaessig)
  • die Spannung auf dem BUS bricht am BUS-Ende zusammen wegen fehlender Leistung (meist, wenn man die Spannung des USB Adapters benutzt

So, damit kannst Du mal abarbeiten, ob das bei Dir alles sauber geprueft in Ordnung ist.

An einem Rechner habe ich das Problem nicht beheben können auf einem zweiten tritt das Problem nach erweitern des Buses auf. Der Bus ist keine 50 Meter lang und es hängen 5 Sensoren dran. Ich habe 4*0,8 mm Kabel verwendet. Als Adapter dient der COM-Adapter.

Versuche es mal mit dem USB Adapter, da laufen inzwischen zwei Stueck bei mir parallel mit der V1 von IPS ohne jegliche Probleme. andreg war letztens bei mir zu Besuch und staunte ueber meine Uptime Zeit vom IPS Rechner von ueber 92 Tagen (was fuer Windows allein ja schon ein Rekord ist).

In der Doku lese ich was von einem Secondary-Port den scheint es bei dem COM-Adapter nicht zu geben.

Falls Du die 1-Wire Doku im Wiki meinst, damit ist etwas voellig anderes gemeint. Das hat nichts mit Deinem Problem zu tun.

Hat jemand eine Idee? Ich muß sagen das ich von 1-Wire ziemlich enttäuscht bin und es nicht nochmal verwenden würde und froh bin das der Rest über meine Wago läuft.
Cali (der über jeden Rat dankbar ist)

wie gesagt, bei mir laeuft alles (ausser Wetter, das teilweise noch per FS10) ueber 1-Wire…

Hallo Cali,

das kann verschiedenste Ursachen haben, ich zaehle mal einige hier auf:

  • 1-Wire Adapter defekt
  • Kabel hat temporaeren Masseschluss
  • in IPS sind verwahrloste 1-Wire Instanzen
  • der TMEX Treiber ist fehlerhaft (falsche Treiberversion)
  • ein einzelner 1-Wire IC ist parasitaer angeschlossen (nicht zulaessig)
  • die Spannung auf dem BUS bricht am BUS-Ende zusammen wegen fehlender Leistung (meist, wenn man die Spannung des USB Adapters benutzt

So, damit kannst Du mal abarbeiten, ob das bei Dir alles sauber geprueft in Ordnung ist.

An einem Rechner habe ich das Problem nicht beheben können auf einem zweiten tritt das Problem nach erweitern des Buses auf. Der Bus ist keine 50 Meter lang und es hängen 5 Sensoren dran. Ich habe 4*0,8 mm Kabel verwendet. Als Adapter dient der COM-Adapter.

Versuche es mal mit dem USB Adapter, da laufen inzwischen zwei Stueck bei mir parallel mit der V1 von IPS ohne jegliche Probleme. andreg war letztens bei mir zu Besuch und staunte ueber meine Uptime Zeit vom IPS Rechner von ueber 92 Tagen (was fuer Windows allein ja schon ein Rekord ist).

In der Doku lese ich was von einem Secondary-Port den scheint es bei dem COM-Adapter nicht zu geben.

Falls Du die 1-Wire Doku im Wiki meinst, damit ist etwas voellig anderes gemeint. Das hat nichts mit Deinem Problem zu tun.

Hat jemand eine Idee? Ich muß sagen das ich von 1-Wire ziemlich enttäuscht bin und es nicht nochmal verwenden würde und froh bin das der Rest über meine Wago läuft.
Cali (der über jeden Rat dankbar ist)

wie gesagt, bei mir laeuft alles (ausser Wetter, das teilweise noch per FS10) ueber 1-Wire…

Gleiches kann auch steiner sagen, er hat ganz wild verdrahtet und hat auch keinerlei Probleme.

Hallo Torro,

danke das Du Dich so schnell mit Ratschlägen meldest. Du scheinst mir der gröste 1-Wire Verfechter zu sein, also muß es ja irgendwie funktionieren.

das kann verschiedenste Ursachen haben, ich zaehle mal einige hier auf:

  • 1-Wire Adapter defekt
  • Kabel hat temporaeren Masseschluss
  • in IPS sind verwahrloste 1-Wire Instanzen
  • der TMEX Treiber ist fehlerhaft (falsche Treiberversion)
  • ein einzelner 1-Wire IC ist parasitaer angeschlossen (nicht zulaessig)
  • die Spannung auf dem BUS bricht am BUS-Ende zusammen wegen fehlender Leistung (meist, wenn man die Spannung des USB Adapters benutzt
  • 1-Wire Adapter funktioniert mit zwei Sensoren über mehrere Tage
  • Masseschluss kann ich ausschließen
  • wie werde ich dieverwahrloste 1-Wire Instanzen los?
  • bereits alle Treiber ausprobiert (mit zwei Sensoren kein Problem)
  • parasitäre Stromversorgung wird nicht genutzt, sondern Labornetzteil

Ich würde nur ungerne auf USB wechseln, da ich (wenn es mal mit IPS läuft) den COM-Adapter an meine Wago anschließen möchte um PC-unabhängig zu sein (siehe Uptime). In Deinem Shop hab ich „1-Wire-Router“ gesehen, kann das eine Lösung sein, um z.B. Stockwerke zu trennen?

Danke und Grüße
Cali

Hallo Cali,

naja, wir produzieren ja die 1-Wire Module auch, die wir anbieten. Das macht man eigentlich nur, wenn man davon ueberzeugt ist.

  • 1-Wire Adapter funktioniert mit zwei Sensoren über mehrere Tage

mit zwei Sensoren kann man einen Test machen, aber keinesfalls einen echten Test. Bei mir laufen derzeit 50 1-Wire Instanzen, davon einige sogar in einem „hauskritischen“ Bereich, naemlich der Steuerung der Fernwaermeversorgung. Ich steuere damit saemtliche Heizungspumpen uns Heizungsstellventile. Wenn da was ausfallen wuerde, waeren wir in einer kalten Bude und ich haette einigen Aerger zu befuerchten.

  • Masseschluss kann ich ausschließen

ok, das nehme ich Dir mal so ab.

  • wie werde ich dieverwahrloste 1-Wire Instanzen los?

so vorhanden, dann loeschen. 1-Wire Instanzen muessen immer ein IC dahinter angeschlossen haben oder die Pollzeit muss auf „0“ stehen, so zumindest ist es in der V1. Anderenfalls hat IPS frueher oder spaeter ein Problem damit und entscheidet sich dann eher zum Stillstand.

  • bereits alle Treiber ausprobiert (mit zwei Sensoren kein Problem)

Welches OS hast Du und welche Version hast Du denn versucht?

  • parasitäre Stromversorgung wird nicht genutzt, sondern Labornetzteil

loeblich, dann duerfte hier auch keine Fehlerquelle zu suchen sein.

[/quote]
Ich würde nur ungerne auf USB wechseln, da ich (wenn es mal mit IPS läuft) den COM-Adapter an meine Wago anschließen möchte um PC-unabhängig zu sein (siehe Uptime).
[/quote]

waere sicher interessant, aber ich wuerde den Aufwand mit einem USB Adapter das ganze mal zu checken, treiben.

In Deinem Shop hab ich „1-Wire-Router“ gesehen, kann das eine Lösung sein, um z.B. Stockwerke zu trennen?

bei 1-wire.de ? Das waere mir neu, dass wir so etwas haben.

Darf mal ganz dumm fragen da ich nur ein Entwickler bin was bedeutet „parasitaer angeschlossen“? Die einzelnen Kabel sind bei mir ca. 10 bis 20 meter lang. Aber eben ungeschirmt! Aber durch den Querschnitt von 1,5² ist der spannungabfall ja nicht so tragisch oder ?

Hallo teste auch gerade 1-Wire auf Stabilität/Leitungslänge.
Habe momentan zwei DS2408 am Bus.
Das ganze durchläuft ein 300m langes CAT5e Kabel, welches auf einer Trommel aufgewickelt ist.
Habe bis dato keine Probleme feststellen können, allerdings läuft das ganze Autark ohne PC.
Als Master nutze ich den DS2480B.
Den COM-Port Adapter habe ich auf 57600baud eingestellt.

Wie schnell kann eigentlich das IP-Symcon mit dem COM-Port Adapter arbeiten?

Prototyp meines 4-fach Rolladen-Modul mit DS2408 (Bild)

Hallo,

es wird keine separate 5V Spannungsversorgung benutzt, sondern dafuer nutzt man das 1-Wire Kabel mit. Es fuehren also nur zwei Kabel zum Baustein, statt drei. ABER: der Bus ist dadurch langsamer und IPS unterstuetzt diesen Modus nicht.

Ich nutze nur an einem Stick „Netzkabel“, sonst immer nur CAT Kabel oder LYJJ als Anschlussleitung (Stichleitung)

Hallo RaptorsWorld,

was meinst Du mit „COM-Port Adapter“? Den 9097U?

Wie stellst Du eine Baudrate von 56700bd ein? Welche Software verwendest Du dafür?

In IP-Symcon lässt sich die Default-Baudrate (9600bd) nicht ändern. Diese zu ändern scheint mir auch nicht sonderlich sinnvoll, da der 1-Wire Bus die Daten ohnehin nicht schneller abnehmen kann.

Gruß
HJH

Hallo HJH,

Richtig, genau den meine ich

Wie im vorherigen Beitrag geschrieben benutze ich keinen PC. Bei mir wird das ganze auf einem ATMega8 Mikrocontroller realisiert.
Ich initialisiere den DS2480B Baustein mit 9600baud, danach wechsel ich auf 56700baud

//Baudrate des DS2480B setzen
//#define OW_Baudrate 0x71 //set baudrate RBR - 9600 baud
//#define OW_Baudrate 0x73 //set baudrate RBR - 19200 baud
#define OW_Baudrate 0x75 //set baudrate RBR - 57600 baud
//#define OW_Baudrate 0x77 //set baudrate RBR - 115200 baud

Meine Test´s mit 9600baud im Vergleich zu 57600baud ergeben einen deutlichen Geschwindigkeitszuwachs.
Momentan benutze ich den DS2408 und der kann standardmäßig 15.3kbps.
Natürlich muss tIDLET von der Software des Mikrocontrollers übernommen werden. Das heißt es werden erst weitere Daten übertragen, wenn der 9097U bereit dazu diese in Empfang zu nehmen.

Gruß
RaptorsWorld

Hallo RaptorsWorld,

vielen Dank für Deine Ausführungen. Es ist hochinteressant, was Du da berichtest.

Mir war schon bekannt, dass es für die AVR-Prozessoren einen 1-Wire Software-Rumpf gibt. Ich bin selbst ein großer AVR-Fan, aber bis jetzt habe ich damit noch keine 1-Wire Steuerung in Angriff genommen.

Kannst Du den DS2408 vollständig steuern? Falls ja, ist der Schritt zu einer externen Steuerung eines 1-Wire Busses möglicherweise nicht mehr weit. Auf diese Weise könnten endlich die Probleme mit der langsamen Reaktion (Polling-Zeiten >= 1s) beim Betätigen von Schaltern gelöst werden.

Lass mal was über Dein Projekt hören.

Gruß
HJH

Hallo HJH,
ich kann bei dem DS2408 Eingänge auslesen und Ausgänge setzen.

Habe heute mal ein paar Test´s gemacht in Bezug auf die Geschwindigkeit des 1-Wire in Abhängigkeit der Baudrate.

Grundkonfiguration des Test:

  • ATMega8 getaktet mit 14,7456Mhz
  • Timer1 mit Vorteiler 1024 initialisiert um Zeit zu messen.
  • LCD-Display als Anzeige der Timerwerte
  • Zwei Busteilnehmer DS2408
  • Master -> DS2408(als Eingänge) -> 300m CAT5e-Kabel -> DS2408(als Ausgänge)

1. Test COM-Port @ 9600baud

  • Timer starten (Wert=0)
  • 10x DS2408 Eingänge einlesen
  • 10x DS2408 Ausgänge setzen
  • Timerwert auslesen
  • Ausgabe auf LCD-Display

Ergebnis zu Test1

  • Der Timer hatte den Wert 10893

2. Test COM-Port @ 57600baud

  • Timer starten (Wert=0)
  • 10x DS2408 Eingänge einlesen
  • 10x DS2408 Ausgänge setzen
  • Timerwert auslesen
  • Ausgabe auf LCD-Display

Ergebnis zu Test2

  • Der Timer hatte den Wert 3795

Fazit
Der 1-Wire Bus ist bei 57600baud 2,87mal schneller als bei der Standard Baudrate von 9600.

Ähh,
warum machst du den Umweg mit einem Com-Port-Adapter?
Auf die Idee bin ich noch nicht gekommen, man kann doch alle 1-Wire-Produkte direkt an einen Port anschließen und ansprechen?
Was für Vorteile hat dieser Weg?
Gruß Helmut

Hallo Helmut,
ich sehe die Vorteile darin, das man sich um die Timings des 1-Wire keine Gedanken machen muss,
das übernimmt der DS2480B (DS9097U), schau mal ins Datenblatt.
Die Hauptvorteile sehe ich darin:

  • Self-Calibrating Time Base with 5% Tolerance for Serial and 1-Wire
  • Slew Rate Controlled 1-Wire Pulldown and Active Pullup to Accommodate Long Lines and Reduce Radiation

Gruß
RaptorsWorld

:wink: Die Info ist wirklich super,
Paresy wird wohl Gründe haben, wenn das IPSymcon-Modul es nicht so macht.
Nunja,
Helmut´s kleine Welt dankt für diese Info!

Hallo RaptorsWorld,

das 1-Wire Protokoll hat eine Menge Overhead. Bei einer Bitrate von ca. 15kbps beträgt die effektive Baudrate wahrscheinlich nur wenig mehr als die empfohlenen 9600bd.

Ich vermute, dass Du keinen Gebrauch von Blocktransfers machst. Da der DS2480B keine Handshake-Signale besitzt, würde bei höheren Baudraten der interne Puffer überlaufen.

Kannst Du etwas mehr zu Deiner Software sagen?

Ein Kuriosum besonderer Art ist der Parameter t(IDLEt). Für ihn wird lediglich gefordert mindestens 0µs zu betragen. Das ist nun wirklich keine schwere Aufgabe. In dieser Definition ist er praktisch nutzlos, da man ihn immer einhalten kann.

Für mich ist daher nicht nachzuvollziehen, wie es mit 57600bd so reibungslos funktionieren kann. Das steht im Widerspruch zum Datenblatt. Aber es ist ja bekannt, das die Datenblätter zu den 1-Wire Bausteinen etwas „schlampig“ abgefasst sind.

Gruß
HJH

Hallo HJH,

Richtig ich verwende keinen Blocktransfer.

Meine Software ist nach den Spezifikationen der Datenblätter von Grund auf neu programmiert.
Stimmt ich hatte Probleme bei höheren Baudrate,
so das der DS2480B nicht alle Befehle richtig mitbekommen und Daten verschluckt hat.
Bei (fast) jedem Befehl den ich an den Bus-Master sende, bekomme ich eine Rückantwort.
Auf diese Rückantwort warte ich, überprüfe diese auf Richtigkeit und danach wird erst der nächste Befehl gesendet.

Ich habe einen SPEED-TEST gemacht.

Testumgebung wie im vorherigem Beitrag.
Hier das Ergebniss:

Eingestellte Übertragungsrate zum Bus-Master - Anzahl der Bus-Aktivitäten (Eingänge einlesen - Ausgänge setzen)

9600 baud - 25 / Sekunde
19200 baud - 40 / Sekunde
57600 baud - 70 / Sekunde
115200 baud - nicht getestet

Wie schon erwähnt ich benutzte momentan nur 2x DS2408 (8fach I/O) Busteilnehmer.
Ich würde bei 57600baud das so beschreiben:
Wenn ich die Zustände die am DS2408(8fach I/O) anliegen einlese und direkt an den zweiten DS2408(8fach I/O) sende der die LEDs steuert,
kann ich sagen das ich keine Verzögerung bemerke, man könnte es als Echtzeit bezeichnen.

Gruß
RaptorsWorld

Was bedeute eigentlich „Partisär“ angeschlossen?