Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Praktische Anwendungen (Showcase)
    4. Neu entwickelter Heizungs-Controller für ELV HmIP-VDMot

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Neu entwickelter Heizungs-Controller für ELV HmIP-VDMot

    This topic has been deleted. Only users with topic management privileges can see it.
    • Gargano
      Gargano @lobomau last edited by Gargano

      @lobomau Es kommt als Bausatz mit gelöteten SMD Teile. Durchsteckteile werden mitgeliefert und muss man selber löten. Dauer ca. 1 Stunde.

      Den aktuellen Preis kenn ich jetzt nicht, bitte bei Lenti84 nachfragen.

      Ansonsten schau mal hier ;
      https://github.com/Lenti84/VdMot_Controller/issues/23

      https://www.tindie.com/products/lenti/vdmot_controller/

      Option THT und Blackpill mit auswählen .

      Dazu braucht man noch den WTH32, den muß man sich selber besorgen.

      wendy2702 created this issue in Lenti84/VdMot_Controller

      closed Information how to order #23

      1 Reply Last reply Reply Quote 1
      • E
        Elluminatus last edited by Elluminatus

        Hi, ich interessiere mich für 3 Boards.

        Ich habe zwei Fragen:

        Ich nutze IObroker, da gibt es ja die Erweiterung die Heizungsaktoren steuern kann (Heatingcontrol). Dieses Erweiterung kann derzeit noch keine motorbetriebenen Ventile in der Art ansteuern, dass Sie die Ventilposition regeln kann, sondern nur wie bei den alten Ventilen Ein/Aus.

        Die Erweiterung brauch folgende Datenpunkte über MQTT

        • Isttemparatur (beziehe ich über ein Wandthermostat im jeweiligen Raum)

        • Ventil ein/aus - (Jetzt kommt die eigentlich wichtige Frage) kann ich die Ventile bei diesem Board per MQTT an und aus (true/false) schalten, also nicht die Ventilposition in % o.ä. regeln, sondern ganz simple an und aus schalten?

        • Kann ich die Solltemperatur per MQTT für jeden Raum bei diesem Board setzen?

        DIes alles kann ja der Falmot von Homematic eben nicht, auch wenn es simpel klingt…

        Und die andere Frage: Dein Board wird mit DC betrieben oder ist ein Netzteil bereits mit auf der Platine? Falls es DC benötigt, welche Dimensionierung sollte das Netzteil haben?

        Danke für die Hilfe

        Beste Grüße
        Elluminatus

        Gargano 1 Reply Last reply Reply Quote 0
        • Gargano
          Gargano @Elluminatus last edited by

          @elluminatus Hi,
          erstmal Danke für das Interesse.
          Das Projekt ist eine Zusammenarbeit von Lenti84 und mir. Lenti84 hat die Hardware und die Software für den STM32 entwickelt, ich habe die Software für den WTH32 (ESP32) entwickelt.
          Ich benutze auch IOBroker und verwende den onboard PI Controller zum Steuern der Fussbodenheizung.
          Ich habe dazu die Homematic IP Wandthermostate verwendet ( da ich früher auch die Homematic Fussbodenaktoren verwendet habe, allerdings die Thermoelektrischen Antriebe) , beabsichtige aber in naher Zukunft die Sonoff NS Panel zu verwenden. Die Soll / Ist Temperatur beziehe ich aus den Homematic Sensoren.

          Zu Deinem Fragen :
          Ventil ein / aus geht nicht, nur 0..100% , das ist ja das Gute daran. ELV macht macht ja auch inzwischen die Motorenansteuerung.

          Bei Dir ist folgendes denkbar :

          • Isttemperatur aus dem Raumfühler.
          • Solltemperatur mittels Heatingcontrol
          • kleines Script, welches die Soll/ Ist Temperatur bei jeder Änderung an die VDMot mittels MQTT sendet.
          • Verwendung des des Onboard PI - Regler

          Beispiel von mir :

          Ist -Temperatur vom Homematic IP Sensor
          7d09c9fd-2999-4750-963c-d1c778b4f664-image.png
          Soll - Temperatur vom Homematic IP Sensor
          b2fdd6c5-2be0-492d-86eb-4d07f1c63b44-image.png

          Script :

          const idWohn_Temp="hm-rpc.2.000A98A9A38D11.1.ACTUAL_TEMPERATURE";
          const idWohn_SetPoint="hm-rpc.2.000A98A9A38D11.1.SET_POINT_TEMPERATURE";
          const idWohn_FB_Value="mqtt.1.VdMotFBH.valves.Wohn.tValue";
          const idWohn_FB_Target="mqtt.1.VdMotFBH.valves.Wohn.tTarget";

          on({id: idWohn_Temp, change: 'ne'}, function (obj) {
          setState(idWohn_FB_Value,obj.state.val);
          });

          on({id: idWohn_SetPoint, change: 'ne'}, function (obj) {
          setState(idWohn_FB_Target,obj.state.val);
          });

          0a5e6f33-712f-41cc-a883-ceb68aaa715f-image.png

          Dadurch werden Soll / Ist Temperatur über MQTT dem VDMot übertragen. Der Pi Regler vom VDMot macht dann alles automatisch

          a831d6ab-537e-4ab6-a836-4223e5ce4ce7-image.png

          Eintellungen VDMot :

          Valves :

          04760d8a-991b-44b4-bf27-c44ceea2892b-image.png

          MQTT :

          1e204f46-74ea-481d-a989-40fde666911f-image.png

          PI-Control :

          49766c92-14da-44b0-b694-185e13662701-image.png

          Falls mehrere Heizungskreise in einem Raum existieren, kannst Du die Kanäle zusammenlegen (linken) . Bei mir ist es Essen / Küche /Wohn. Angesteuert mittels MQTT wird dann nur der Master Kanal ( Bei mir der Wohn Kanal) .
          Auf hydraulischen Abgleich der einzelnen zusammengefassten Kreise achten !
          Die Schwierigkeit ist nur die passenden Parameter für den PI Control rauszufinden.

          Netzteil ist nicht mit auf der Platine, Du benötigst ein externes Netzteil.
          Ich habe ein Hutscheinen Netzteil 12V / 2 A verwendet , betreibe aber auch noch ein Netzwerkswitch , Interface für Resol/SolarThermie und einen WebCtrl2 damit. Gemessen habe ich max. 250 mA vom VDMot, also sollte ein 12V / 1 A genügen für ein Board, oder ein 12V / 2A für Deine 3 Boards.

          Viele Grüße
          Werner

          E 1 Reply Last reply Reply Quote 0
          • E
            Elluminatus @Gargano last edited by Elluminatus

            @gargano Ja genau die NSPanel sind bei mir auch verbaut. Bei diesen stelle ich dann die Soll Temperatur ein. SDolltemp kommt also vom NSPanel. Ein separater BME280 gibt mir die Ist Temp in jedem Raum.

            Also Soll aus dem NSPanel
            Ist aus dem BME280

            Jetzt muss ich nur den Umweg gehen, solange die Heatingcontrol Erweiterung noch keine Motorventile kann, dass ich die Befehle aus der Heatingcontrol Erweiterung da einbaue, bis es dann irgendwann in diesem Jahr die Möglichkeit gibt Motorventile in Heatingcontrol zu betreiben.(Oder zweite Möglichkeit erstmal ganz auf Heatingcontrol zu verzichten und die interne PI Steuerung zu nutzen, bis Motorventile bei Heatingcontrol unterstützt werden, Heatingscontrol hat halt viele Steuermöglichkeiten)
            Was meinst Du?

            Danke für die ganze Hilfe!!

            Gruß Elluminatus

            Gargano 1 Reply Last reply Reply Quote 0
            • Gargano
              Gargano @Elluminatus last edited by

              @elluminatus
              Du nimmst auch Tasmota für die NSPanel ?
              Wie hast Du den BME280 angeschlossen ?
              Ich habe noch keine NSPanel, die habe ich direkt in China beim Hersteller bestellt, da nur der die neue Version hat, die in die 60mm Unterputzdosen passen. Versand war kostenlos, daher billiger als bei Ebay oder sonst wo.

              Da der NSPanel keine Heizprogramme kann, werde ich es so machen :
              Heatingcontrol für die Sollwerte verwenden, damit kann ich dann auch Heizprogramme fahren.
              Sollwerte werden über Heatingcontrol auf den NSPanel geschrieben.
              Bei Änderung der Soll / Ist Werte vom NSPanel werden diese über MQTT dem VDMot mitgeteilt. der Rest macht der PI-Regler vom VDMot.

              Gruß Werner

              E 2 Replies Last reply Reply Quote 0
              • E
                Elluminatus @Gargano last edited by Elluminatus

                @gargano
                Den BME280 habe ich in einer separaten UP Dose zusammen mit einem Bewegungsmelder über einen ESP laufen. Einige Bilder vom Testaufbau habe ich hier:

                photo_5256212493771064233_y.jpg Keller.jpg

                Ja ich nehme auch Tasmota mit Lovelace. Dort gibt es unzählige Funktionen auf dem NSPanel u.a. auch zum steuern der Heizung.

                Wenn ich die VDmot Platinen habe (habt Ihr schon einen Liefertermin für Januar?) werde ich Deine Ausführungen mal nachvollziehen und es auch so mit NSPanel, VDmot PI Regler und Heatingscontrol umsetzen...

                Hier ein Link mit Beispielbildern:

                nspanel.png

                Und hier der Link zum NSPanel Thread hier im Forum mit einer wunderbaren Community

                und hier die Beschreibung der Thermostat Einstellungen und Möglichkeiten mit Lovelace

                191052850-06276337-1000-4eb6-b010-5f6d49fd0e24.png

                Gruß Elluminatus

                1 Reply Last reply Reply Quote 0
                • Gargano
                  Gargano last edited by

                  @elluminatus Du kannst Dich auf Tindi auf die Warteliste setzen lassen.

                  Link Tindi

                  1 Reply Last reply Reply Quote 0
                  • E
                    Elluminatus @Gargano last edited by Elluminatus

                    @gargano sagte in Neu entwickelter Heizungs-Controller für ELV HmIP-VDMot:

                    Da der NSPanel keine Heizprogramme kann, werde ich es so machen :
                    Heatingcontrol für die Sollwerte verwenden, damit kann ich dann auch Heizprogramme fahren.
                    Sollwerte werden über Heatingcontrol auf den NSPanel geschrieben.
                    Bei Änderung der Soll / Ist Werte vom NSPanel werden diese über MQTT dem VDMot mitgeteilt. der Rest macht der PI-Regler vom VDMot.

                    Hi Gargano,

                    hast du Deine NSPanel inzwischen und kannst Du vielleicht mal darlegen, wie Du dies genau umsetzen wirst? Sprich ich habe irgendwie einen Knoten im Kopf wie "Änderungen über MQTT dem VDMot mitteilen" geschehen sollen.

                    Bei der Heatingcontrol APP muss ja der Aktor mit dem Stellglied und der Objekt Identifikation eingetragen werden.
                    84bd7c13-7ca9-4264-998a-18b9b1c76280-grafik.png
                    Was trägst Du dort ein?

                    Mein VDmot Boards sind da und auch schon zusammen gebaut und geflasht. Jetzt fehlt nur noch der Einbau und die Inbetriebnahme, dann wird es endlich wärmer als 13 Grad im Keller.

                    Ich habe auch mit Andreas gesschrieben und er sagte ich könne mal per MQTT Explorer die Angaben für Heatingcontrol senden, dann würde er schauen, wie er einen Sub Eintrag erstellen kann, der true/false auswirft. Aber da bin ich überfordert...

                    Kannst Du bei dem einen oder dem anderen helfen?

                    Gruß Elluminatus

                    Gargano 2 Replies Last reply Reply Quote 0
                    • wendy2702
                      wendy2702 last edited by

                      Hi,

                      Was von Tindie muss man den Betsllen damit man es komplett hat?

                      Gargano 1 Reply Last reply Reply Quote 0
                      • Gargano
                        Gargano @Elluminatus last edited by Gargano

                        @elluminatus Hi,

                        der VDMot hat ja einen eigenen Control PI-Algorithmus und dem braucht man nur die Soll und Istwerte mitzuteilen.

                        1c519836-47b3-4af6-b2e0-4a79e195ed2a-image.png
                        Ich habe das über ein kleines JS-Script gelöst :

                        Soll wert ist : heatingcontrol.0.Rooms.Wohnzimmer.CurrentTarget
                        Mit dem NSPanel wird dies dann der Ist Wert : alias.0.NSPanels.Wohn.Sensor.ANALOG.Temperature.ACTUAL
                        Falls Du einen anderen Temp Sensor verwendest dann den Wert von dem entsprechenden Sensor.
                        Die Id's müsstest Du dann entsprechend anpassen.

                        Script :

                        const idWohn_Temp="alias.0.NSPanels.Wohn.Sensor.ANALOG.Temperature.ACTUAL";
                        const idWohn_SetPoint="heatingcontrol.0.Rooms.Wohnzimmer.CurrentTarget";
                        const idWohn_FB_Value="mqtt.1.VdMotFBH.valves.Wohn.tValue";
                        const idWohn_FB_Target="mqtt.1.VdMotFBH.valves.Wohn.tTarget";

                        on({id: idWohn_Temp, change: 'ne'}, function (obj) {
                        setState(idWohn_FB_Value,obj.state.val);
                        });

                        on({id: idWohn_SetPoint, change: 'ne'}, function (obj) {
                        setState(idWohn_FB_Target,obj.state.val);
                        });

                        Also bei jeder Änderung von SetPoint oder Temp werden die Daten über MQTT dem FBMot mitgeteilt.
                        Heatingcontrol hat damit nichts zu tun, außer die Sollwerte (Setpoints) zu verwalten.
                        Also keinen Aktor eintragen.

                        Anstatt direkt auf die Objekte zuzugreifen kannst Du das auch mit Alias lösen.
                        Dazu ein Greät erstellen :

                        d97353c8-67a3-44a7-93e5-fa7d2e2477c8-image.png
                        Aktuelle Temp dann Deine Objekt-ID.

                        Im Heating Conrtrol dann dies einstellen :
                        26e28f80-05b7-4098-b2a8-826c4135ff18-image.png

                        und die IDs so anpassen
                        const idWohn_Temp="alias.0.Thermostate.Wohn.ACTUAL";
                        const idWohn_SetPoint="alias.0.Thermostate.Wohn.SET";

                        Der Vorschlag von Andreas funktoniert nicht, da es dann ein 2-Punkt Regelung wäre und keine PI.

                        NSPanel habe ich inzwischen, bin aber mit der Temperaturmessung nicht zufrieden.
                        Ich werde wohl ein DS18B20 anschließen.

                        VG Werner

                        1 Reply Last reply Reply Quote 0
                        • Gargano
                          Gargano @wendy2702 last edited by Gargano

                          @wendy2702

                          Was von Tindie muss man den Bestellen damit man es komplett hat?

                          Alles.

                          18666676-6ef8-4fc2-b429-89bd3bd2c2bf-image.png

                          Dazu noch ein Hutschienen-Gehäuse bestellen. (gibts nicht auf Tindie)
                          12V Netzteil.

                          Gruß

                          1 Reply Last reply Reply Quote 1
                          • L
                            Lenti84 last edited by

                            Hallo zusammen,
                            ich klinke mich mal am Rande mit ein.

                            Mein Vorschlag zur HeatingControl App war, dass im VdMot ein extra (subscription, nicht publish) Topic erstellt werden könnte, damit dieser direkt auf an/aus Befehle reagiert, falls die App nur diese Art von Befehlen absetzen kann. Dieses Topic würde dann parallel zum Target Wert (0...100%) laufen und die beiden Zustände 0% bzw. 100% abbilden.
                            Der VdMot Controller ist dann natürlich nichts weiter als ein aufwendiger 0/1 Ventilsteller...

                            Scheinbar braucht die HeatingControl App aber noch weitere Outputs vom VdMot, damit sie diesen erkennen und in iobroker zuordnen kann. Da ich kein iobroker nutze, kann ich das nur erschwert nachprüfen.

                            VG

                            1 Reply Last reply Reply Quote 0
                            • Gargano
                              Gargano @Elluminatus last edited by wendy2702

                              @elluminatus
                              Hast Du das jetzt umsetzen können mit dem Script ?

                              const idWohn_Temp="alias.0.NSPanels.Wohn.Sensor.ANALOG.Temperature.ACTUAL";
                              const idWohn_SetPoint="heatingcontrol.0.Rooms.Wohnzimmer.CurrentTarget";
                              const idWohn_FB_Value="mqtt.1.VdMotFBH.valves.Wohn.tValue";
                              const idWohn_FB_Target="mqtt.1.VdMotFBH.valves.Wohn.tTarget";
                              
                              on({id: idWohn_Temp, change: 'ne'}, function (obj) {
                              setState(idWohn_FB_Value,obj.state.val);
                              });
                              
                              on({id: idWohn_SetPoint, change: 'ne'}, function (obj) {
                              setState(idWohn_FB_Target,obj.state.val);
                              });
                              
                              

                              Falls ich sonst noch helfen kann, immer her mit den Fragen...

                              VG

                              MOD EDIT: LOG IN CODE TAGS </> GESETZT

                              E 1 Reply Last reply Reply Quote 0
                              • E
                                Elluminatus @Gargano last edited by

                                @gargano Hi danke der Nachfrage. Ich habe den Heizungscontroller da und er läuft. Am Wochenende werde ich dazu kommen ihn einzubauen. Dann melde ich mich an dieser Stelle wieder.

                                Beste Grüße
                                Elluminatus

                                E 1 Reply Last reply Reply Quote 0
                                • E
                                  Elluminatus @Elluminatus last edited by Elluminatus

                                  So, kurzer Zwischenbericht: angeschlossen ist der Controller, erreichbar ist er und die Ventile erkennt er auch:

                                  photo_5440779625165866073_y.jpg
                                  photo_5440779625165866110_y.jpg
                                  photo_5440779625165866225_y.jpg

                                  Anbindung an MQTT klappt auch.

                                  1 Reply Last reply Reply Quote 0
                                  • Gargano
                                    Gargano last edited by

                                    @elluminatus
                                    Nimm bitte die V1.0.8 Beta.
                                    Andreas hat noch nicht released, kannst aber von meinem Github runterladen
                                    VdMot 1.0.8 Beta
                                    Du hast wahrscheinlich die C2 Platine.

                                    Ich habe inzwischen auch den NSPanel in der U-Putz Dose versenkt.
                                    Im unteren Teil ist der DHT20, Temperatur und Luftfeuchte Sensor über I²C Bus am NSPanel angeschlossen.
                                    Da war vorher der Lichtschalter, Deckel fehlt noch.

                                    20230219_084525[1].jpg

                                    E 1 Reply Last reply Reply Quote 0
                                    • E
                                      Elluminatus @Gargano last edited by Elluminatus

                                      @gargano Das sieht perfekt aus. Die 0.8 Beta hole ich mir. Welche Dateien brauche ich für das Update?

                                      Für WT32 die ESP32_firmware.bin und
                                      für STM32 die STM32_C2_firmware.bin?
                                      Mit der Partitions.bin muss ich nichts machen, richtig?

                                      Ich bekomme mit Deinem Skript auch derzeit folgende Warnmeldung:

                                      "You are assigning a number to the state "mqtt.0.FBH-KE-HWR.valves.Werkstatt.tValue" which expects a string. Please fix your code to use a string or change the state type to number. "

                                      Beste Grüße
                                      Elluminatus

                                      Gargano 1 Reply Last reply Reply Quote 0
                                      • Gargano
                                        Gargano @Elluminatus last edited by

                                        @elluminatus Dann ändere bitte den Typ von tValue in den Objekten:

                                        {
                                        "_id": "mqtt.2.VdMotFBH.valves.Bad.tValue",
                                        "common": {
                                        "name": "/VdMotFBH/valves/Bad/tValue",
                                        "write": true,
                                        "read": true,
                                        "role": "variable",
                                        "desc": "mqtt server variable",
                                        "type": "number"
                                        },

                                        E 1 Reply Last reply Reply Quote 0
                                        • E
                                          Elluminatus @Gargano last edited by Elluminatus

                                          @gargano Danke sehr, mache ich.

                                          Und sagst Du mir noch welche Dateien ich für das 1.0.8 Update brauche?

                                          Für WT32 die ESP32_firmware.bin und
                                          für STM32 die STM32_C2_firmware.bin?
                                          Mit der Partitions.bin muss ich nichts machen, richtig?

                                          So also der number Fehler ist weg.

                                          Gargano 1 Reply Last reply Reply Quote 0
                                          • Gargano
                                            Gargano @Elluminatus last edited by Gargano

                                            @elluminatus
                                            Partitions hast Du ja schon, da also nichts machen.

                                            Für den WT32 die ESP32_firmware.bin
                                            und für den STM32 die STM32_C2_firmware.bin. Du hast ja sicherlich die C2 Hardware..

                                            sollte dann so auschauen :

                                            073423c9-c026-4873-8573-e9845aef7169-image.png

                                            E 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            1.1k
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            13
                                            168
                                            17395
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo