Ankündigung

Einklappen

INFORMATION

Dieser Bereich ist für fertige Lösungen gedacht. Nutze bitte für Diskussionen die anderen Bereiche.
Mehr anzeigen
Weniger anzeigen

MS mit RaspPi und Miele@Home

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

  • MS mit RaspPi und Miele@Home

    Dieses HowTo erklärt die Einbindung des Miele@home-Gateways zur Visualisierung der Gerätezustände im MS.

    1. Ermitteln der Geräte-Nummern

    Über den Web-Browser den Link http://IP-Miele@Home-Gateway/homebus die aktuell vorhandenen Geräte ermitteln:

    Code:
     <DEVICES>
         <device>
       <class>22020</class>
      <UID>-1609539861</UID>
      <type>W5000</type>
      <name>Waschautomat</name>
      <state>5</state>
      <additionalName>Waschmaschine</additionalName>
      <room id="null" level="null"/>
        <information>
       <key name="Gerätestatus" value="In Betrieb"/>
      <key name="Phase" value="Waschen Hygiene"/>
      <key name="Restzeit" value="0:41"/>
     
      </information>
         <actions>
       <action name="Details" URL="http://192.168.X.XX:80/homebus/device?language=de&type=WM_W38XX&id=WM_W2889.-XXX9539XXX"/>
       </actions>
       </device>
         <device>
       <class>22018</class>
      <UID>-1609541994</UID>
      <type>???????????????</type>
      <name>Wäschetrockner</name>
      <state>1</state>
      <additionalName>Tumbler</additionalName>
      <room id="null" level="null"/>
        <information>
       <key name="Gerätestatus" value="Aus"/>
       </information>
         <actions>
       <action name="Details" URL="http://192.168.X.XX:80/homebus/device?language=de&type=TD_T48XX&id=TD_T4898.-XXX9541XXX"/>
       </actions>
       </device>
     
     
     
    Hier ist die Geräte-ID ersichtlich, welche für die weitere Verwendung nötig ist (blaue Markierung).

    2. Über den Apache-Server des RaspPi wird dann fofgendes Script getriggert (alle x Minuten):

    PHP-Code:
    <?php
    // Auslesen des Miele(at)Home Bussystems
    // Script-Teil für Auslesung Waschmaschine und Geschirrspüler für Leck-Wasserüberwachung Loxone


    // Hier die Daten des Loxone Miniserver eintragen
    $LoxIP "XXX.XXX.X.X:80";
    $LoxUser "User";
    $LoxPassword "Passwort";

    //XML Waschmaschine laden

        
    $xml simplexml_load_file(rawurlencode('http://192.168.X.X:80/homebus/device?language=de&type=WM_W38XX&id=WM_W2889.-XXX5398XX'));

    //Status Waschmaschine auslesen/einstellen
            
    $Status $xml->information->key[1]->attributes()->value;


    // print_r($Status);

           
    if ($Status != 'Aus')
                    {
                    
    $WM_Power="1";
                    }
           else
                    {
                    
    $WM_Power="0";
                    }

    //XML Geschirrspueler laden

        
    $xml simplexml_load_file(rawurlencode('http://192.168.X.X:80/homebus/device?language=de&type=DW_G10XX&id=DW_G1000.-XXX95392XX'));

    //Status Geschirrspueler auslesen/einstellen
            
    $Status $xml->information->key[1]->attributes()->value;


    //print_r($Status);

           
    if ($Status != 'Aus')
                    {
                    
    $DW_Power="1";
                    }
           else
                    {
                    
    $DW_Power="0";
                    }

    // Loxone MS Visu aktualisieren

    // Waschmaschine WM_Power
    $handle file_get_contents("http://$LoxUser:$LoxPassword@$LoxIP/dev/sps/io/M_WM_Power/$WM_Power""r");

    // Geschirrueler DW_Power
    $handle file_get_contents("http://$LoxUser:$LoxPassword@$LoxIP/dev/sps/io/M_DW_Power/$DW_Power""r");

    //cleanup

    $handle null;
    $xml null;


    ?>

    Das Script lädt die jeweilige Geräte XML-Datei und ermittelt die Zustände über die Nodes des XML. Diese werden im Script weiterverarbeitet um die Zustände Aus und Ein auszuwerten.

    Die Code-Zeile

    "$handle = file_get_contents("http://$LoxUser:$LoxPassword@$LoxIP/dev/sps/io/M_WM_Power/$WM_Power", "r");"

    passt dabei am Ende des Scripts den Eingang des MS an. Der fett markierte Teil ist der Name des MS-Eingang. Selbstverständlich könnte dies auch über die UI des MS-Eingangs erfolgen.

    Die Dokumentation der RESTfull API des MS ist hier zu finden: REST API

    Für die Entwicklung kann das eingelesene XML der Geräte jederzeit über den entsprechenden WebLink (z.B. http://192.168.X.XX:80/homebus/device?language=de&type=WM_W38XX&id=WM_W2889.-XXX9539XXX) aufgerufen werden. Über die Anleitung zum simple-XML ist dann relativ einfach ersichtlich, wie die einzelnen Nodes ausgelesen werden können.

    Wichtig: Man findet viele Scripts, welche den MS über einen fopen( ..... ) command aktualisieren. Dieser Stream muss über fclose(.....) wieder geschlossen werden. Ich musste jedoch feststellen, dass der MS diese Streams teilweise nicht schliesst und dann nach einer gewissen Zeit nicht mehr im Netzwerk erreichbar sind. Mit dem Command "file_get_contents" tauchen diese Probleme nicht auf.

    In der erweiterten Umsetzung über Virtuelle Texteingänge und Abfrage aller Zustände ergibt das in der VISU folgende Ansicht:


    Klicke auf die Grafik für eine vergrößerte Ansicht

Name: Miele@home.png
Ansichten: 1205
Größe: 26,4 KB
ID: 8493

    Pio
    Angehängte Dateien
    Zuletzt geändert von Pio435; 17.Okt.2015, 09:50.

  • #2
    Hallo Pio.

    Das mit dem FOpen Problem ist aber erst wieder mit der Version 7 aufgetaucht.
    Hab da auch ein Ticket zu aufgemacht.
    Aber der Ansatz von Dir gefällt mir gut. Ich werde das auch einmal ausprobieren.

    für die Visu könntest Du über Statusbausteine z.B. noch Restzeit Und Gesamtzeit zusammenfassen oder Symbole für die Platten am Herd einfügen

    Schönen Gruß
    Thomas Ratte
    www.firaco.de
    Zuletzt geändert von ThomasRatte; 17.Okt.2015, 12:18.
    Schönen Gruß
    Thomas Ratte

    Kommentar


    • #3
      Ja, in der Umsetzung der VISU ist noch viel Luft nach oben. Ich habe bisher den Aufwand gescheut, weil ich von diesen dauernden Reboots betroffen war. Was mich jetzt aber gerade "stinkig" macht, ist dass Loxone also scheinbar schon wusste, dass "fopen" in früheren Versionen ein Problem war ... Das hat mir gegenüber aber nie jemand kommuniziert. Und ich habe es leider auch sonst nirgendwo gelesen ... Aber egal, und das hier ist ja auch nicht der Platz um es zu diskutieren ...

      Pio

      Kommentar


      • #4
        hallo zusammen
        Ich habe mir gerade einen Geschirrspüler von Miele gekauft und bin auf diesen Beitrag gestoßen
        Sinn des Kaufes Mit
        Sinn des Mile@Home Gerätes war genau Deine Lösung , nämlich das Gerät (zukünftig auch andere ) mit Loxone zu verbinden.
        Ich habe Loxone erst seit einer Woche und bin noch ganz neu auf diesem Gebiet.
        Ich habe zwar der Sinn Deines Beitrages verstanden , weiß aber um ehrlich zu sein, absolut nicht, wie die Vorgehensweise für die Integration in Loxone aussehen soll.
        Wenn ich : http://192.168.1.80/homebus in Browser eingebe , erscheint folgendes :20178272725453971383Geschirrspüler1G26905 EG Küche
        Zitat : Schritt 2: über den Apachi Server des Raspi
        Ab hier leider nichts verstanden ..., Ab hören meine Kenntnisse von dem, was Du geschrieben hast auf.
        Könntest Du mir vielleicht helfen?
        Wie kann ich am sinnvollsten die Miele@Home Geräte mit Loxone verbinden?
        Hast Du schon weiterentwickelt ?
        - Auch habe ich eine PV Anlage , die über Loxone Energiemonitoring visualisiert habe . Im Energiemonitor von Loxone wurden Bedingunen so erstellt, dass -
        der Überschussstrom der PV Anlage die Hauseigene Geräte mit Strom versorgen soll, bevor der Strom eingespeisten wird.
        Das würde ich für den Geschirrspüler auch gerne machen. Weist zDu wie? ZB. Wenn Überschuss größer xkwh, dann nach Prio- Liste (1. Wärmepumpe 2. Boiler 3. Vervraucher Smartsocket 4 . Geschirrspüler 5. Andere Miele@ahome Geräte ).
        - Button mit : GS (Geschirrspüler ) freigeben (Strom ein ) und Anzeige ob freigegeben oder nicht . Bei Strom ein = GS starten manuell
        - GS entweder über Schaltzeiten (Niedertarif) oder manuell starten .

        Wie kann ich das am Besten angehen ? Kannst Du helfen ?
        Danke vielmals im Voraus für allfällige Feedbacks .
        Lepore
        Angehängte Dateien

        Kommentar


        • #5
          Lepore

          Also ganz kurz: eine direkte Anbindung von miele@home an Loxone wäre nur über PICO-C möglich. Da ich bei den ersten Versuchen damit Probleme hatte, habe ich mich für eine Alternativlösung über den RaspberryPi entschieden.

          Da stellt sich für mich schon die erste Frage: Du weisst was der RaspPi ist? Hast Du darauf Apache installiert und am laufen ... Diese Grundlagen müssten wohl vorhanden sein, damit es weiter gehen kann ...

          Gruss Pio

          Kommentar


          • #6
            Hallo Pio
            RasPi weiss ich nur für was es gedacht ist: Der Raspberry Pi ist ein EinpaltinenComputrer, der von Raspberry Pi Fentwickelt wurde.
            Apache dasselbe: Opensource Programm für ZBsp. Apache Server etc. Hört nun das Erlebnis mit Miele@Home und LOXONE hier für mich auf?
            Bitte sag nicht, dass es hier endet...
            Bitte sag , dass es weitergeht.
            Gruss mit Hoffnung Giusi
            Ps: wenn es nur mit diesen 2 Features geht, bin ich gerne bereit das Notwendige anzuschaffen.

            Kommentar


            • #7
              Hallo,

              hab mir den neuen Miele 6825 Geschirrspüler mit eingebauten W-Lan gegönnt. Leider kann man die XML Struktur mit IP/homebus nicht mehr abfragen - vermute mal dass früher das Gateway die Infos ausgespuckt hat.
              Gibt es da noch andere Möglichkeiten die Infos anzuzapfen??

              Raspberry ist vorhanden!
              Anfrage von Miele läuft auch bereits.
              Grüße Alex


              MS, MS Go, 5 Smart Socket´s Air, Airbase, Modbusext.,2*Eastron Sdm630 Modbus, Zählerinterface,3 S0 Zähler, Wetterstation Elsner P03 Modbus, Fronius Symo 10 - Überschusslieferung, WP Waterkotte DS5017.3, WW WP M-Tec WPE2000 + WW Speicher Stiebel Eltron 400 + 6kW E-Patrone mit Leistungssteller, DM7020hd, Husqvarna Automower 330x

              Kommentar


              • #8
                Hallo zusammen. Könnte jemand einem unerfahren Raosperry Pi User helfen, die Miele Geräte in Loxone zu integrieren?
                Jede Hilfe ist willkommen
                Nas Qqnap ts470 pro ist vorhanden , ms natpürluch auch

                Kommentar


                • #9
                  hat schon jemand mal das neue Modul XKM 3100 W getestet? Im vergleich zu den alten ZigBee Modulen kann dieses Gerät wohl direkt über WLAN mit dem Internet und App kommunizieren, ohne ein entsprechendes Gateway. Ich werde mir gegen Jahresende vermutlich dieses Modul mal zulegen.
                  seit 2016 im eigenen LoxHome

                  Kommentar


                  • #10
                    Hallo,

                    ich habe das neue Modul XKM 3100 W nun mit der neuen Waschmaschine erhalten. Leider hat sich im Vergleich zur ZigBee Lösung die Kommunikation komplett geändert (AES verschlüsselte Kommunikation). Im Internet habe ich bisher auch keine Lösung gefunden um eine Kommunikation aufzubauen.

                    VG

                    Kommentar


                    • #11
                      Zitat von patriwag Beitrag anzeigen
                      hat schon jemand mal das neue Modul XKM 3100 W getestet? Im vergleich zu den alten ZigBee Modulen kann dieses Gerät wohl direkt über WLAN mit dem Internet und App kommunizieren, ohne ein entsprechendes Gateway. Ich werde mir gegen Jahresende vermutlich dieses Modul mal zulegen.
                      Hallo, gibt es mittlerweile mehr Infos zur Nutzung der XKM 3100 W?
                      Danke

                      Kommentar


                      • #12
                        Hallo zusammen

                        Ich habe das Script von pio435 bislang erfolgreich eingesetzt. Leider funktionieren die file_get_contents Aufrufe nicht mehr und schlagen mit einem 401 unauthorized fehl. Ich vermute, das liegt an der nicht mehr vorhandenen Basic Authentication resp. der neuen Token Based Authentication seitens Miniserver.

                        Gibt es hierzu allenfalls bereits ein PHP Schnipsel resp. Script um die neue Authentication zu bewerkstelligen?

                        Viele Grüsse

                        Kommentar

                        Lädt...
                        X