Ankündigung

Einklappen
Keine Ankündigung bisher.

KNX Homematic Openhab2

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

    KNX Homematic Openhab2

    Hallo,
    ich bin neu auf dem Gebiet KNX, OpenHab2, Homematic und hab daher ein paar Probleme.
    Mein Ziel wäre es die aktuelle Temperatur vom meinem MDT Glastaster auf einen Homematic Funk Heizkörper Thermostat zu bringen.

    Was ich schon geschafft habe:
    Anbindung KNX an Openhab2
    Anbindung Homematic (RaspberryMatic) an Openhab2

    Ich kann auch von beiden Systemen bereits die Temperatur auslesen.
    Item KNX:
    Code:
    Number Temperature_Buero_KNX   "Ist Temperatur Buero [%.1f C]"  (Temperature) {knx="<9.001:3/1/0"}
    Homematic Item:
    Code:
    Number Temperature_Buero_HM   "Ist Temperatur Buero HM [%.1f C]"  (Temperature) {channel="homematic:HM-CC-RT-DN:ef90a227:OEQ0666136:4#ACTUAL_TEMPERATURE"}

    Wie kann ich jetzt die Temperatur vom KNX Bus auf den Funk Thermostat (Actual Temperature) schreiben ?

    Vielen Dank für die Hilfe

    Markus

    #2
    Moin,

    du musst eine rule schreiben nach dem Prinzip:


    rule "Temp von KNX an Homeatic" when
    item Temperature_Buero_KNX changed
    then sendCommand(Temperature_Buero_HM, Temperature_Buero_KNX.state)
    end

    Da mögen jetzt etliche Syntaxfehler drin sein (muss noch gecastet werden?)
    Aber vom Prinzip ist das der Ansatz

    Kommentar


      #3
      Eigentlich sollte die aktuelle Temperatur ja bei beiden Systemen automatisch vorhanden (und noch eigentlicher Read only) sein. Sinnvoller wäre es, die Solltemperatur ins Homematic System zu schreiben.
      Ansonsten passt aber eine Rule:
      Code:
      rule "Solltemperatur setzen"
      when
          Item Temperature_Buero_KNX changed
      then
          if(Temperature_Buero_KNX.state instanceof Number)       
              Temperature_Buero_HM.sendCommand(Temperature_Buero_KNX.state as Number)
      end
      Erklärung der Syntax:
      • Im allgemeinen fangen Befehle mit Kleinbuchstaben an. Im when-Teil der Rule wird aber Item mit einem großen I geschrieben - alternativ könnte man auch auf Time, System oder Channel triggern lassen. Merke: Das erste Wort des Triggers wird groß geschrieben.
      • Es ist immer eine gute Idee, wenigstens ganz dumme Fehler zu vermeiden. Im vorliegenden Fall wollen wir die Temperatur nur setzen, wenn der Item-Status auch eine gültige Zahl enthält (instanceof Number). Man könnte hier auch noch sinnvolle Einschränkungen vornehmen, z.B. keine Temperaturen unter 7 °C erlauben. Natürlich kann das auch schon auf knx-Seite eingeschränkt werden.
      • Wenn man auf den Status des Items zugreifen will - z.B. für einen Vergleich - muss das explizit geschehen, man muss also .state an den Itemnamen anhängen.
      • Es gibt zwei Möglichkeiten, einen Item-Befehl zu senden, nämlich die Action sendCommand(Item,Wert) und die Methode Item.sendCommand(Wert). Wann immer möglich, sollte man unbedingt die Methode verwenden! Die Action kann ausschließlich mit Strings umgehen. Die Methode ist Bestandteil des Items, weshalb sie alle sinnvollen Werttypen korrekt umsetzen kann.
        Sobald man Primitives einsetzt (z.B. 4 oder auch 3.141 oder i [i ist als int definiert]) geht es mit der Action regelmäßig schief, die Methode hat da nur ein kaltes Lächeln übrig und macht, was sie soll
      • Da ich die Methode verwende, wäre das Typecasting as Number gar nicht nötig, ich habe es aber der Vollständigkeit halber angegeben.

      Kommentar


        #4
        Hallo,
        super danke für die Lösung nur leider hast du recht der Parameter ist „Read Only“

        Evtl. kannst du mir ja doch weiterhelfen, ich versuche den Ist Temperaturwert von meinem MDT Glastaster 2 auf den Homematic Funk Stellantrieb zu bekommen.

        Ich hab hier im Haus (Umbau bereits abgeschlossen) 15 Heizkörper die ich gerne steuern möchte.
        Geplant war eigentlich die KNX Glastaster als „IST“ zu verwenden wo die Homematic Stellantriebe den „IST“ abfragen.
        In meiner alten Wohnung hatte ich das ELV MAX System im Einsatz (ohne KNX) und bin damit super gefahren.

        Was ich eben nicht möchte das ich nun zusätzliche Homematic Wandthermostate über meine Taster anbringe.

        Leider hab ich vom Openhub / Homematic usw. keine Erfahrung und stochere bisher im Dunkeln.

        Vielen Dank für eure Hilfe

        Markus

        Kommentar


          #5
          Hallo,
          da wirst du deine Stellantriebe mit homegear und openhab steuern müssen.
          Schau mal hier https://forum.homegear.eu/t/HM-CC-RT...ATE-setzen/391,
          vielleicht hilft das weiter.

          Kommentar


            #6
            Die Ist-Werte wirst Du nicht beeinflussen können, wie gesagt sind Messwerte normalerweise nur lesbar. Aber ich gehe mal davon aus, dass Du den Sollwert durchaus verstellen kannst. Und den kannnst Du ja über den RTR steuern.

            Kommentar

            Lädt...
            X