Ankündigung

Einklappen
Keine Ankündigung bisher.

Probleme bei Inbetriebnahme 1-Wire

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    Probleme bei Inbetriebnahme 1-Wire

    Hallo zusammen,

    ich habe mir Bus-Leitungen für KNX und 1-Wire parallel verlegen lassen und KNX soweit erfolgreich und problemlos in Betrieb genommen. Beides ist als offener Ring mit nur sehr kurzen Stichleitungen zu weiteren Dosen verlegt. Als Interface für sowohl KNX als auch 1-Wire nutze ich Roberts IBB Cape (https://ing-budde.de/?page_id=97) für den Beaglebone. Jetzt bekomme ich allerdings 1-Wire nicht wirklich zum Laufen.

    Softwarestand:
    • Linux-Kernel 4.4.54-ti-r93
    • Debian Jessie 8.7 rootfs
    • owserver 2.9p8

    Anschluss Sensor:
    • DS18B20 werden im parasitären Modus getestet (VDD mit GND gebrückt).
    • Diesen ominösen Pull Up-Widerstand nutze ich noch nicht, da ich da noch nicht so recht schlau draus werde (wird er benötigt? Von "Ja" über "nein" bis "vielleicht" lässt sich da so ziemlich alles rauslesen).

    Fehlerbild:

    Ich nutze owhttpd für einen simplen Funktionstest. Das IBB-Cape hat ingesamt vier Busmaster für vier 1-Wire-Linien (Bus.0 bis Bus.3). Am Bus.0 ist ein interner Sensor des IBB Capes angeschlossen. Wenn 1-Wire im "Leerlauf" ist und weder Leitungen noch Sensoren am Bus.0 hängen, sehe ich den internen Sensor im Webinterface. Wenn der Sensor aus dem Webinterface verschwindet, weiß ich, dass der Bus.0 einen Fehler hat/gestört ist.

    Hier mein bisheriges Testprozedere:
    1. Komplette 1-Wire Linie für EG (Linie EG) an Bus.0-Port anschließen (keine Sensoren angeschlossen) -> Bus fällt aus, interner Sensor verschwindet
    2. Linie EG an erster Klemmstelle (von IBB Cape aus gesehen) öffnen (keine Sensoren angeschlossen) -> Bus OK, interner Sensor sichtbar
    3. Linie EG Stück für Stück an jeder Klemmstelle öffnen, testen und wieder schließen, wenn der interne Sensor angezeigt wird (keine Sensoren angeschlossen) -> Bus OK bis zu bestimmter Klemmstelle relativ am Schluss
    4. Linie EG so lassen, wie sie bei Punkt 3. noch funktioniert hat und DS18B20 relativ nahe am IBB Cape anschließen -> Bus fällt aus, Sensoren nicht sichtbar
    5. Linie EG nochmals Stück für Stück an jeder Klemmstelle öffnen und wieder testen (keine Sensoren angeschlossen) -> Bus fällt schon an früherer Klemmstelle aus, die bei Punkt 3. noch funktioniert hat.
    6. Linie EG vom Bus nehmen und nur DS18B20 mit kurzer Leitung direkt an Bus.0 anschließen -> Bus OK, Sensoren sichtbar
    7. Linie EG an Bus.0 anschließen und an zweiter Klemmstelle vom Bus nehmen (keine Sensoren angeschlossen) -> Bus OK, interner Sensor sichtbar
    8. An funktionierender Linie EG von Punkt 7. einen DS18B20 anschließen -> Bus fällt aus, Sensoren nicht sichtbar

    Getestet habe ich außerdem:
    • An jeder Klemme liegen konstant ~ 5 V zwischen VDD-GND und DATA-GND an. Gemessen wurde mit einem Multimeter, kurzzeitige Spannungseinbrüche würde ich also nicht mitbekommen. Es scheint mir aber solide verlegt zu sein.
    • Wackelkontakte an Klemmstellen kann ich auch ausschließen, da jede Klemme bereits zum zweiten mal geprüft wurde, auch auf Zugbelastung.
    • Verwendung von verschiedenen DS18B20 Sensoren (mit Füßchen, mit Messfehler etc.)

    Hat einer Ideen, wie ich das ganze systematisch weitertesten könnte? Irgendwie ergibt sich da für mich kein schlüssiges Bild, da es einmal funktioniert und einmal nicht. Besonders, dass es schon bei einer sehr kurzen Linie mit angeschlossenem DS18B20 ausfällt, verwundert mich etwas.

    Mir fehlen so langsam die Ideen und vor allem das Wissen, da weiter konstruktiv nachzuforschen
    Liegt es vielleicht an dem ominösen 4,7 kOhm Widerstand? Muss der vor jeden Sensor oder nur einmal zu Beginn der Linie eingebaut werden?

    Ich bin dankbar für jede Antwort und Hilfe!

    Besten Dank schonmal!

    Gruß
    Andreas

    #2
    Hallo Andreas,

    ich habe hier auch 1-wire und KNX-Kabel parallel gezogen (jeweils 2x2x0.8) und arbeite mit einem Jessie Server, hatte bisher keinerlei Probleme damit.

    Was bei mir offensichtlich anders ist:
    1) Ich nutze keinen parasitären mode
    2) Ich nutze den professional bus master von wiregate als 1-wire Interface

    Ich habe noch nicht allzu viele Teilnehmer im 1-wire bus (<10), aber hatte bisher keine Probleme, egal wo ich Slaves angeschlossen habe.

    Falls Du eine dritte Leitung zur Verfügung hast, würde ich erstmal versuchen den 1-wire Bus ohne parasitären Mode in Betrieb zu nehmen, wenn Du wg. der Konfiguration nicht sicher bist.

    Das IBB-Cape sieht zugegebenermaßen nach einer eleganten Lösung, kannst Du darüber auch von der ETS den KNX-Bus programmieren?

    Gruß
    Rainer

    Kommentar


      #3
      Hallo Rainer,

      danke für deine Hilfe.

      Ich habe seitdem etwas weiter getestet. Komischerweise funktioniert jetzt die gesamte Linie EG im Leerbetrieb, also ohne Teilnehmer stabil.
      Wenn ich mehrere Sensoren nahe am Beaglebone anschließe (bisher DS18B20 Hülsenfühler, DS18B20 Diodenfühler und einen REED-Kontakt), gibt es keine Probleme. Aber ab einer bestimmten Distanz zum Beaglebone verschwinden alle Teilnehmer.

      Wobei der Hülsenfühler z. B. stabiler ist als der Diodenfühler.

      Ich hätte noch zwei freie Adern. Aber sobald ich den Diodenfühler über den 5V VDD vom IBB Cape anschließe, wird er nach einiger Zeit sehr heiß. Und das erscheint mir sehr komisch, sodass ich ihn schnell wieder auf parasitär verdrahtet habe. Werden die Teilnehmer bei dir auch so heiß?

      Ich habe jetzt auch die DATA- mit der VDD-Leitung direkt nach dem Beaglebone mit einem Widerstand verbunden (getestet mit 4,7 kOhm, 2 kOhm, und 1,1 kOhm). Macht bisher allerdings keinen Unterschied in der Stabilität der Linie.

      Ja, ich programmiere auch KNX mit dem IBB-Cape. Funktioniert problemlos von jeder Netzwerkdose im Haus.

      Gruß
      Andreas

      Kommentar


        #4
        Hallo Andreas,

        Zitat von ugobald Beitrag anzeigen

        Ich hätte noch zwei freie Adern. Aber sobald ich den Diodenfühler über den 5V VDD vom IBB Cape anschließe, wird er nach einiger Zeit sehr heiß. Und das erscheint mir sehr komisch, sodass ich ihn schnell wieder auf parasitär verdrahtet habe. Werden die Teilnehmer bei dir auch so heiß?
        Nein, ich habe Temperatursensoren (DS18B20) und DS2413 als binäre Eingänge verbaut. Bei den Temperatursensoren kann ich Dir sicher sagen, dass nichts heiß wird ;-) bei den DS2413 schaue ich beim nächsten, den ich verbaue nochmal genau nach einiger Betriebszeit.

        Ich habe jetzt auch die DATA- mit der VDD-Leitung direkt nach dem Beaglebone mit einem Widerstand verbunden (getestet mit 4,7 kOhm, 2 kOhm, und 1,1 kOhm). Macht bisher allerdings keinen Unterschied in der Stabilität der Linie.
        Externe Widerstände habe ich nicht verbaut. Ich vermute der PBM
        hat einen Pull-Up verbaut, obwohl ich ihn nicht explizit in der Beschreibung gefunden haben: https://shop.wiregate.de/download/Da..._Busmaster.pdf

        Was mir noch einfällt, ich habe dunkel in Erinnerung, dass die Farbcodierung der Anschlüsse der 1-wire Komponenten nicht immer einheitlich war. Kann es sein, dass Du einen Sensor falsch angeschlossen hast und ein Pull-Up dann gegen einen Pull-Down zieht?


        Ja, ich programmiere auch KNX mit dem IBB-Cape. Funktioniert problemlos von jeder Netzwerkdose im Haus.
        Das ist ja schick. Brauchst Du hier noch den knxd dazu, damit das funktioniert?

        Gruß
        Rainer

        Kommentar


          #5
          Hallo Rainer,

          einen Verkabelungsfehler möchte ich ausschließen, da die 1-Wire-Verkabelung selbst ja immer gleich mit gleich angeschlossen ist (rot mit rot, schwarz mit schwarz etc.) und sonst nur der Beaglebone mit eindeutiger Kennzeichnung am Ende hängt. Die DS18B20 haben nur Drahtfüßchen ohne Markierung, aber das Schaltbild von Maxim ist auch eindeutig.

          Ja, ich brauche noch den knxd. Aber für das IBB-Cape gibt es ein Image zum Downloaden, bei dem alles vorinstalliert ist. Plug and Play quasi.

          Gruß
          Andreas

          Kommentar


            #6
            Hallo zusammen,

            jetzt habe ich soweit fast alle Anfängerfehler durch. Falls mal jemand das gleiche Problem hat und aus meinen Fehlern lernen möchte:

            Man beachte den Vermerk "Bottom View" beim Anschlussbild des DS18B20 von Maxim. Das Zeug war also einfach nur verpolt von mir angeschlossen, ja, ihr lest richtig
            Das erklärt auch, warum das ganze so heiß wurde (draufgekommen bin ich in diesem Thread: http://www.avrfreaks.net/forum/ds18b20-hot-hot-hot). Richtig angeklemmt ist es wirklich nur noch Plug-and-Play, alles wird sofort und dauerhaft ohne Fehler erkannt. Angenehme Sache!

            Mittlerweile habe ich an zwei Linien 28 REED-Kontakte (DS2411) und bisher 24 DS18B20-Sensoren angehängt. Alles mit externer 5V-Versorgung über das IBB Cape.

            owfs_bus3_EG.JPGowfs_bus1_UG.JPG

            Die REED-Kontakte sind über diese Kontaktmelder-Bausätze angebunden: https://shop.thomasheldt.de/product_...er-2k-kit.html
            Die DS18B20 habe ich an Drähte gelötet und dann mit Schrumpfschläuchen geschützt:

            DSC_2767.JPGDSC_2770.JPGDSC_2771.JPGDSC_2784.JPG

            Gruß
            Andreas

            Kommentar


              #7
              Hallo Andreas,

              Dinge passieren...
              Hilfreich beim IBB Cape ist der fest eingelötete Sensor, da kannst Du die Belegung erkennen.
              In der Bucht gibt es für relativ kleines Geld 18B20 in Metallhülse und 1-3 Metern Leitung, damit sparst Du Dir die Lötarbeit.

              Gruß Jürgen

              Kommentar


                #8
                Hallo Jürgen,

                die Hülsenfühler habe ich im Estrich liegen. Hätte ich natürlich auch in den Dosen verwenden können, da bin ich gar nicht drauf gekommen...
                Aber da mir so Bastelein Spaß machen, war jetzt auch nichts verloren.

                Gestern habe ich die dritte Linie im OG inbetriebgenommen und hatte anfangs trotz richtig gepolter Sensoren wieder das Problem, dass der Bus nicht verfügbar ist. Dann habe ich wieder alle Klemmstellen getestet und die Klemmstellen von Anfang bis Ende aufgetrennt, getestet und wieder geschlossen, dann einen Sensor angehängt. Sobald die Linie physikalisch kürzer wurde, funktionierte sie. Und nach jeder geöffneten und wieder geschlossenen Klemmstelle konnte die Linie etwas länger sein, bis sie dann komplett funktioniert hat, ohne eigentlich etwas geändert zu haben (nur Klemmstellen geöffnet, geschlossen und an diversen Stellen einen Temperatursensor angehängt).

                Jetzt würde mich interessieren, warum das so ist. Gibt es da eine logische Erklärung bzw. ist das bei anderen Installationen auch so? Es scheint mir so, als wenn sich der Bus erst nach einiger Zeit von selbst "stabilisiert", aber dann zuverlässig läuft. Müssen da evtl. erst die vielen Kondensatoren in den DS18B20 geladen werden um stabil zu werden und ohne Verbraucher funktioniert eine leere Linie nicht?

                Gruß
                Andreas

                Kommentar


                  #9
                  Hallo,

                  kurze Rückmeldung für alle interessierten und noch-nicht-Wisser:
                  Der PullUp ist bei mir essentiell. Ohne stürzt der 1-Wire-Bus nach ca. 10 Teilnehmern ab bzw. wird sehr labil, so dass Teilnehmer verschwinden/erscheinen. Mit diesem Widerstand wird er sofort wieder stabil. Umso weniger Teilnehmer, umso größer der Widerstand (startet mal mit 4,4 kOhm). Wenn die Teilnehmer mehr werden, wird der Bus damit auch wieder instabil werden, so bin ich mittlerweile bei 1,1 kOhm gelandet.

                  Gruß
                  Andreas

                  Kommentar


                    #10
                    Hallo Andreas,

                    wo, wie, wann baust Du denn wieviele Widerstände ein? Hast Du einen Strang, oder einen Baum? Widerstände am letzten Sensor, oder geht da das Buskabel weiter?
                    Hänge doch mal ne Skizze an..

                    Gruß Jürgen

                    Kommentar


                      #11
                      Hallo Jürgen,

                      pro Linie habe ich nur einen Widerstand und zwar gleich ganz am Anfang am KNX-Klemmenblock im Verteiler. Einfach DATA mit VDD verbinden. Ich habe es so relativ simpel gemacht:
                      1. Rote und weiße Ader an Widerstand angelötet
                      2. Schrumpfschlauch über alle blanken Stellen drüber
                      3. weiß in DATA gesteckt und rot in VDD
                      4. Fertig


                      Meine 1-Wire Linie ist hauptsächlich als offener Ring verlegt mit Ausnahme von Stichleitungen. Mein Buskabel kommt am Schluss einfach wieder am Verteiler raus und ist dort nicht angeschlossen.

                      Ich kann dir auch noch ein Bild machen.

                      Gruß
                      Andreas

                      Kommentar


                        #12
                        Hallo Jürgen,

                        Bild anbei.

                        DSC_2861.JPG

                        Gruß
                        Andreas

                        Kommentar

                        Lädt...
                        X