Ankündigung

Einklappen
Keine Ankündigung bisher.

Drexel&Weiss Plugin

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

    Drexel&Weiss Plugin

    Hallo,

    hier mein erster Pluginversuch, dabei handelt es sich um die Einbindung von Drexel&Weiss Geräten über die USB Serviceschnittstelle, also NICHT über die Modbuserweiterung. Somit reicht eine einfache USB Verbindung zum Raspi.

    https://github.com/Bernator/smarthom...drexelundweiss

    Aktuell habe ich nur ein commandfile für mein Gerät dem aerosilent stratos erstellt, allerdings werd ich das noch ergänzen bzw. lässt es sich auf Basis dessen leicht selbst erstellen.

    Angesprochen werden können alle Daten die auch auf der Modbusschnittstelle verfügbar sind und in der Modbusdoku beschrieben werden. Dazu muss im Item einfach das entsprechende Register eingetragen werden.

    Code:
    [KWL]
        [[MODE]]
            name = Betriebsart
            visu_acl = rw
            type = num
            DuW_LU_register = 5002
            sv_widget = {{ basic.slider('item', 'item', 0, 5, 1) }}
    Hadelt es sich um ein read only Register werden Wertänderungen die von außen evtl. am Item vorgenommen werden ignoriert. (sollte man aber nicht machen da es keinen Sinn macht) Bei Registern mit zusätzlichem Schreibzugriff sind die Items auch bidirektional und die Daten werden ans Gerät übertragen, liegt der Wert jedoch außerhalb des zulässigen bereiches wird er wieder ignoriert.

    Bei mir läuft das Ganze nun schon seit einigen Tagen problemlos und liefert stetig Daten, bzw. kann ich damit die Anlage steuern. Dennoch bin ich für Verbesserungsvorschläge immer offen, zumal es auch noch einen Fehler beim beenden gibt den ich bislang nicht identifizieren konnte, vielleicht kann mir da ein pythonspezialist weiterhelfen?

    WARNING DuW Drexel: [Errno 9] Bad file descriptor -- init.py:run:219

    Grüße

    #2
    Danke Marcus für die Anmerkungen, hab ich soweit eingepflegt und einen Pull-Request erstellt. Pep8 hab ich noch nix zusammengebracht, pip-3.2 gibts bei mir irgendwie nicht um autopep8 zu installieren, manuell is das bissl mühsam.....
    Den Error beim Beenden des Plugins konnte ich auch fixen, musste nur warten bis die Pollfunktion im run sauber beendet wurde um die Serielle zu closen.

    Hab auch die restlichen Commandfiles ergänzt, somit werden alle Geräte aus der Readme unterstützt. Wobei ich gleich sagen muss das ich die Geräte mit Wärmepumpe nicht testen konnte, vielleicht findet sich werd der das übernimmt, prizipiell sollte es funktionieren....

    Kommentar


      #3
      Hallo Bernhard,

      danke. Ist in develop. Ich habe auch mal einen autopep8 drüber laufen lassen.

      Bis bald

      Marcus

      Kommentar


        #4
        D&W Aerosmart S ansteuern mit RPi

        Hallo Bernator,

        vielen Dank für Dein D&W Plugin. Meine Aerosmart S ist von 2007 und hat m.E. keinen USB - Anschluss. Zumindest habe ich noch keinen gefunden... Ich habe eine LAN [J9] und eine Telefon [J10] - Buchse.

        Soweit ich das verstanden habe, kann ich ein USB nach UART - Kabel verwenden (FTDI). Welche Buchse des Aerosmart ich verwenden muss und wie ich die beschalte, fehlt mir noch. Gibt es ein Diagram für das Kabel. Das wäre sehr hilfreich.

        Viele Grüße,
        Mark

        Kommentar


          #5
          Hallo Mark,

          leider kann ich dir nicht sagen wie die Hardware älterer D&W Geräte aufgebaut ist. Eine USB Verbindung und damit über ein FTDI Adapter auf den Raspi ist ohne vorhandene Buchse aber weitgehend ausgeschlossen würd ich sagen.
          Welche Firmware läuft denn auf dem Gerät, Modbus ist nämlich auch erst ab V2.05 möglich, ob das Protokoll der Debugschnittstelle (welche im Plugin verwendet wird) vorher auch schon gleich aufgebaut war weiß ich nicht.
          Eine Debugschnittstelle gibts bei deinem Gerät sicherlich auch aber welche das ist kann ich dir nicht sagen. Ich vermute mal das es direkt eine serielle (RS232 Pegel!?) ist.
          Damit das Plugin funktioniert müssen zwei Dinge gegeben sein:
          1. serielle Verbindung (entweder über FTDI von USB oder direkt irgendwo)
          2. Register müssen gleich sein wie beim Modbus und der Zugriff darauf

          Kommentar


            #6
            Ich möchte mich hier nur mal bedanken. Ich habe dein Plugin bei meiner KWL im Einsatz und alles funktioniert einwandfrei. Klasse Arbeit.

            lg Thomas

            Kommentar


              #7
              Danke, kannst du noch sagen welches Gerät du hast?

              Kommentar


                #8
                Sicher. Hab eine Stratos. Also das neueste Modell.

                Kommentar


                  #9
                  D&W Aerosmart S ansteuern mit RPi

                  Hallo Bernator,

                  ich habe gerade meine Software-Version der Aerosmart S herausgefunden: v2.11. Modbus sollte also möglich sein. Yeaaahhh! Damit bin ich wieder back to square one.

                  Gibt es irgendwo ein Diagram/Schaltplan/Skizze (egal ob alt/neu, egal welches Gerät) wie ein Drexel&Weiss - Gerät angeschlossen wird? Ich habe die Hoffnung, wenn ich verstehe welche Buchse normalerweise verwendet wird, dass ich den Anschluss auch bei meinem Gerät identifizieren kann. Vermutlich die J9 oder J10 Buchse...

                  Soweit ich das verstanden habe, kann ich ein USB nach UART - Kabel verwenden (FTDI)?

                  Viele Grüße,
                  Mark

                  Kommentar


                    #10
                    USB -> UART Kabel funktioniert nur bei vorhandener USB Schnittstelle am Gerät. Wenn keine USB Buchse vorhanden ist denke ich auch nicht das eine USB Schnittstelle drauf ist.
                    Wie oben schon erwähnt vermute ich das die Service Schnittstelle bei älteren Modellen direkt rs232 oä. ist. Dann würde ein simpler Pegelwandler reichen 232 -> ttl und dann direkt auf einen UART am Raspi. (nicht USB)
                    Allerdings habe ich auch keine näheren Details zu den Schnittstellen....wo hat denn der Servicetechniker bei der Inbetriebnahme eingesteckt? Evtl. kannst den ja noch fragen?

                    Kommentar


                      #11
                      Was mir noch aufgefallen ist - auf meinem RaspberryPI (habe auch auf einem anderen System versucht, welches wesentlich potenter ist!), benötigt dein Plugin 99% der CPU. Hast du dieses Phänomen bei dir auch?

                      lg Thomas

                      Kommentar


                        #12
                        Hallo,

                        das dürfte wohl jeder haben.

                        Ich bin gerade mal über das Plugin geflogen.

                        Dort ist eine while-Schleife drin, die wird wohl sehr oft durchlaufen.
                        Ein "import time" und am Ende der Schleife ein kleines time.sleep(0.1) sollte die Last von dem System nehmen.

                        Die Umsetzung überlasse ich aber lieber dem Author.

                        Bis bald

                        Marcus

                        Kommentar


                          #13
                          Hallo Marcus,

                          danke für dein Feedback - mal sehen ob ich das hinbekomme :-)

                          lg Thomas

                          Kommentar


                            #14
                            Danke für den Hinweis, habs mal schnell eingebaut und einen pull request gemacht.....

                            Kommentar


                              #15
                              und ist in develop.

                              Kommentar

                              Lädt...
                              X