+ Antworten
Seite 39 von 42 ErsteErste ... 29 37 38 39 40 41 ... LetzteLetzte
Ergebnis 381 bis 390 von 414
  1. #381
    Registriert seit
    Mar 2013
    Ort
    Issum
    Beiträge
    650

    Hallo Swen,vielen Dank.
    WAGO 750-880 / IPS unl. auf Tinkerboard S / IPSView / Amazon Echo und vieles mehr

  2. #382
    Registriert seit
    Mar 2013
    Ort
    Issum
    Beiträge
    650

    Wer noch die Adressen für seine Heizung sucht und sich etwas mit KNX/ETS auskennt.
    Dort gibt es ein Gerät von Viessmann. Einfach mal in ein Testprojekt aufnehmen. Nachdem man seine Anlage ausgewählt hat, bekommt man die für die Anlage verfügbaren Adressen inklusive der richtigen Beschreibung um was es sich handelt angezeigt.

    PS: Die ETS Software gibt es als freie Version bis 5 Geräte

    Gruß
    Georg
    Geändert von gogo20012002 (10.03.19 um 14:36 Uhr)
    WAGO 750-880 / IPS unl. auf Tinkerboard S / IPSView / Amazon Echo und vieles mehr

  3. #383
    Registriert seit
    Apr 2014
    Ort
    Velden am Wörthersee
    Beiträge
    307

    Hallo Georg,
    leider werden in der ETS nur die Adressen angezeigt die von der Schnitstelle unterstütz werden, geben tut es noch um einige mehr zb. meine Lüftung wird nicht in der ETS unterstützt auslessen kann man sie aber schon aber trotzdem ein guter Tip.
    gruß Stefan

  4. #384
    Registriert seit
    Dec 2009
    Ort
    Berlin
    Beiträge
    844

    Hallo Swen,

    ich bin schwer begeistert von deinem Viessmann Modul. Vielen Dank für Deine Mühe.

    Ich habe mich erstmal eingearbeitet in die Senden und Empfangen Funktionen.
    Läuft bei meiner KW2 Steuerung (2098) sehr gut und sehr schnell

    Nun wollte ich die Heizungs-, Warmwasser- und Zirkulationspumpen Tabellen auslesen.
    Da muss ich 56 Byte einlesen und Byte für Byte zerlegen um die Zeiten zu erhalten.
    Ich habe nun das Problem, dass ich immer "Intergerwerte" von deinem Modul zurückbekomme.
    Also keine 56 Hexwerte wie sie auf der Schnittstelle reinkommen.

    Mache ich da etwas verkehrt ? Gibt es dafür eine besondere Einstellung ?
    Oder muss ich doch alles Byteweite einlesen ?

    Danke für Deine Zeit
    lueralba
    __________________
    IPS 5.2 Ninja auf Raspi3 ; Mobile5.x ; AEON Stick/Zwave.Me StickC/1x Razberry Gen5;ca. 90 ZWave Geräte; 10x FHT80B;CCU1 (Funk/Wired);Fritzbox 7590;Viessmann; 1x ChuWi13 ;2x Sensus HRI und 1xEltako DSZ12DM an PiiGAB M-Bus; Instar 4011; AXIS 207W; RG-11

  5. #385
    Registriert seit
    Aug 2014
    Beiträge
    498

    Zitat Zitat von lueralba Beitrag anzeigen
    Hallo Swen,

    ich bin schwer begeistert von deinem Viessmann Modul. Vielen Dank für Deine Mühe.

    Ich habe mich erstmal eingearbeitet in die Senden und Empfangen Funktionen.
    Läuft bei meiner KW2 Steuerung (2098) sehr gut und sehr schnell

    Nun wollte ich die Heizungs-, Warmwasser- und Zirkulationspumpen Tabellen auslesen.
    Da muss ich 56 Byte einlesen und Byte für Byte zerlegen um die Zeiten zu erhalten.
    Ich habe nun das Problem, dass ich immer "Intergerwerte" von deinem Modul zurückbekomme.
    Also keine 56 Hexwerte wie sie auf der Schnittstelle reinkommen.

    Mache ich da etwas verkehrt ? Gibt es dafür eine besondere Einstellung ?
    Oder muss ich doch alles Byteweite einlesen ?

    Danke für Deine Zeit
    lueralba
    Habe an nächste Woche wieder Zeit, bitte entschuldige mich das ich dir da grade keine Antwort dazu geben kann. Schreib mich ab Montag bitte einmal an.

    Swen

    Gesendet von meinem CLT-L29 mit Tapatalk
    @I3 6100T, 16GB RAM, 2x SAMSUNG 850 SSD, Windows Server 2016 Essentials; 2xHP Procurve Network Switch(one with POE+); 4xRaspberry Pi Zero; 1xPi 2; 1xPi 3; IP Network Cams; Homematic YAHM on Pi 3; Osram Lightify; mehr Geräte folgen

  6. #386
    Registriert seit
    Dec 2009
    Ort
    Berlin
    Beiträge
    844

    @Acer90:

    Hallo Swen,

    ich habe am Wochenende die Zeit genutzt und mit deinem Modul herumspielt.

    Habe nebenbei den Fehler mit der 05hex (zumindest bei mir, KW2 Steuerung 2098) dauerhaft provozieren können.

    Das löst mein Datum/Uhrzeit Problem vom 5. Mai (Empfang: 20 19 05 05 hh mm ss) .
    Die 05 auf der 4. Byte-Position im Empfangsstring führt dazu, dass du die nächste Abfrage mit 01 7F .... startest.
    Was wiederum die Heizung nicht beantwortet (weil ja unerwartet). Dann folgt Kauderwelsch bis es sich wieder fängt.
    Ich habe Protokolle gemacht. Wenn du Sie brauchst, sende ich sie dir zu.
    Der Var-Typ (Float, Int oder String) ist egal und die Kodierung ist ebenfalls egal.
    Passiert bei mir wiederholbar.
    Vllt. magst Du ihn nachstellen und fixen.


    Das war aber nicht der Grund meiner Anfrage vom Donnerstag.
    Ich lese bisher auch die Timer Tabellen (Warmwasser, Zirkulation und Heizen) aus.
    Dafür muss ich acht Mal 8 Bytes (oder eben auch 1x 56 Bytes) auslesen und als Rohdaten (Hexdarstellung wäre cool) erhalten in einer Variable.

    Hoffe das war alles nicht zu pedantisch und verständlich für Dich.

    Freue mich auf Deine Antwort.

    Gruß
    Lutz
    __________________
    IPS 5.2 Ninja auf Raspi3 ; Mobile5.x ; AEON Stick/Zwave.Me StickC/1x Razberry Gen5;ca. 90 ZWave Geräte; 10x FHT80B;CCU1 (Funk/Wired);Fritzbox 7590;Viessmann; 1x ChuWi13 ;2x Sensus HRI und 1xEltako DSZ12DM an PiiGAB M-Bus; Instar 4011; AXIS 207W; RG-11

  7. #387
    Registriert seit
    Aug 2014
    Beiträge
    498

    Zitat Zitat von lueralba Beitrag anzeigen
    @Acer90:

    Hallo Swen,

    ich habe am Wochenende die Zeit genutzt und mit deinem Modul herumspielt.

    Habe nebenbei den Fehler mit der 05hex (zumindest bei mir, KW2 Steuerung 2098) dauerhaft provozieren können.

    Das löst mein Datum/Uhrzeit Problem vom 5. Mai (Empfang: 20 19 05 05 hh mm ss) .
    Die 05 auf der 4. Byte-Position im Empfangsstring führt dazu, dass du die nächste Abfrage mit 01 7F .... startest.
    Was wiederum die Heizung nicht beantwortet (weil ja unerwartet). Dann folgt Kauderwelsch bis es sich wieder fängt.
    Ich habe Protokolle gemacht. Wenn du Sie brauchst, sende ich sie dir zu.
    Der Var-Typ (Float, Int oder String) ist egal und die Kodierung ist ebenfalls egal.
    Passiert bei mir wiederholbar.
    Vllt. magst Du ihn nachstellen und fixen.


    Das war aber nicht der Grund meiner Anfrage vom Donnerstag.
    Ich lese bisher auch die Timer Tabellen (Warmwasser, Zirkulation und Heizen) aus.
    Dafür muss ich acht Mal 8 Bytes (oder eben auch 1x 56 Bytes) auslesen und als Rohdaten (Hexdarstellung wäre cool) erhalten in einer Variable.

    Hoffe das war alles nicht zu pedantisch und verständlich für Dich.

    Freue mich auf Deine Antwort.

    Gruß
    Lutz
    Der fehler mit 0x05 schau ich mir mal am Wochenende an.

    zu 2. Woher weißt du denn das du zu bestimmten Zeiten 56, oder 8 Bytes empfangen musst?

    gruß Swen
    @I3 6100T, 16GB RAM, 2x SAMSUNG 850 SSD, Windows Server 2016 Essentials; 2xHP Procurve Network Switch(one with POE+); 4xRaspberry Pi Zero; 1xPi 2; 1xPi 3; IP Network Cams; Homematic YAHM on Pi 3; Osram Lightify; mehr Geräte folgen

  8. #388
    Registriert seit
    Nov 2011
    Ort
    Wilhelmshaven
    Beiträge
    84

    @Acer90:

    Hallo Swen,

    ich habe nach dem Update von 4.4 auf 5.1 nun dein Modul genutzt, da das alte Script, was im übrigen nach ein paar Anpassungen super funktionierte nicht mehr mit der Version 5.1 passt.

    Erst einmal auch von meiner Seite besten Dank für diese tolle Arbeit und ja dein Modul ist unheimlich schnell im Gegensatz zum alten Script!
    Allerdings habe ich Probleme zwei Werte zu schreiben. RaumtemperaturSoll und Reduziert.

    Ich nutze dafür deinen Funktionsaufruf:
    PHP-Code:
    ViesmannOpenV_SendData(10890,2000,2,false,false,'0011',42378,0); 
    Leider bin ich mir nicht nicht sicher was du in deinem Script als Value erwartest. Ich gehe mal davon aus den Hexwert. Also 2byte bei Temperatur am Wert 0x20 0x00. Das wäre im meinen Beispiel dann die Temperatur 17 Grad => 0x00 0x11
    Leider kommt nichts an. Hab den Debugger mal angeschaut:
    Klicken Sie auf die Grafik für eine größere Ansicht 

Name:	Bildschirmfoto 2019-05-08 um 22.28.35.jpg 
Hits:	33 
Größe:	150.5 KB 
ID:	48969
    Ich ich würd mal sagen, da passt noch etwas nicht!

    Verrät Du mir wie du dir die Schreibfunktion in Deinem Modul vorgestellt hast?
    P.S. Du nutzt im übrigen das KW Protokoll nicht das 300er
    KW nutzt F7 und F4 als Lese und Schriebzugriff. Beim 300er fängt das ganze mit 41 an
    Geändert von bastianstrauss (08.05.19 um 21:48 Uhr)
    IP-Symcon Version 5.1 / 21x WAGO 750-881 / RS485 Schnittstellen / 4 Wetterstationen / Dali / MBus / Homematic / OpenV / Janitza REST / Arduino / SunnyWebboxen (380kWPeak), E3DC / JSON Anbindungen für globale Gebäudevisualisierung

  9. #389
    Registriert seit
    Nov 2011
    Ort
    Wilhelmshaven
    Beiträge
    84

    Ja hallo,

    nun konnte ich das Problem lösen:
    PHP-Code:
    ViesmannOpenV_SendData(10890,'2001',02,false,false,'C800',0,0); 
    Die Heizung erwartet die Temperatur (in meinem Beispiel) in 2 Byte und mit dem Faktor 100 wobei High und Low vertauscht sind.

    Also aus 20,0°C wird 200 und das entspricht in HEX C8 aber nicht 00C8 sondern C800!
    Zwar wirft das Modul immer noch den Fehler wie bei mir im Screenshot
    Klicken Sie auf die Grafik für eine größere Ansicht 

Name:	Bildschirmfoto 2019-05-08 um 23.44.31.png 
Hits:	23 
Größe:	55.8 KB 
ID:	48970
    Aber die Viessmannheizung quittiert mit 0x00 und der Wert wird im nächsten Abruf des Moduls sauber übernommen.
    Dann funktioniert endlich mein Webfront wieder :-D
    Klicken Sie auf die Grafik für eine größere Ansicht 

Name:	Bildschirmfoto 2019-05-08 um 23.45.37.jpg 
Hits:	33 
Größe:	145.6 KB 
ID:	48971

    Für Interessierte warum ich die Raumtemperatur ändern will:
    Der Vorlauf errechnet sich aus Außentemperatur und dieser ominösen "virtuellen" Innenraumtemperatur.
    Wenn man eine Wärmepumpe hat die im Sommer kühlen kann, wäre es doch schön, wenn die Kühlung vor der Hitzeperiode bereits mit dem Kühlen anfängt. Da man der Heizung das leider nicht mitteilen kann, funktioniert der Trick über die Raumtemperatur.
    Ich frage Openweathermap für die nächsten 5 Tage ab und wenn der Tagesdurchschnitt höher als 20°C ist, setze ich die Raumtemperatur auf 12°C herunter. Somit ist die Spreizung zur Außentemperatur bereits schon bei 20-22°C Außentemperatur (je nach Heizkennlinie) recht hoch und die Anlage geht in den Kühlmodus. Das ganze ist auch noch mit der PV-Anlage gekoppelt. Das funktioniert nur dann, wenn die PV-Anlage Energie ins Netz einspeist und ich somit das Kühlen umsonst bekomme.
    IP-Symcon Version 5.1 / 21x WAGO 750-881 / RS485 Schnittstellen / 4 Wetterstationen / Dali / MBus / Homematic / OpenV / Janitza REST / Arduino / SunnyWebboxen (380kWPeak), E3DC / JSON Anbindungen für globale Gebäudevisualisierung

  10. #390
    Registriert seit
    Dec 2009
    Ort
    Berlin
    Beiträge
    844

    Der fehler mit 0x05 schau ich mir mal am Wochenende an.
    Habe mal Deinen Quellcode versucht nachzuvollziehen und meine, dass das Problem hier entsteht:
    Zeile 259
    PHP-Code:
           //Fix Send Bug
                
    if($len && strpos($data'0505') !== false){
                    
    //wert verwerfen
                    
    $this->SendDebug("Transmit verworfen"$last["hex"], 0);
                    
    $this->SetBuffer("Last""");
                    
    $this->SetBuffer("Data""");
                    
    //senden des nächsten Befehls
                    
    sort($BufferList);
                    
    $first_item $BufferList[0];
                    if(
    $first_item != "Return" && $first_item != "Last" && $first_item != "Data"){
                        
    $item json_decode($this->GetBuffer($first_item), true);
                        
    $this->SetBuffer($first_item"");
                        
    $this->SetBuffer("Last"json_encode($item));
                        
    $this->SendDebug("Send Hex""01".$item["hex"].$item["length"].$item["value"], 0);
                        
    $this->SendToIO(hex2bin("01".$item["hex"].$item["length"].$item["value"]));
                    }
                    exit;
                } 
    '0505' war im ankommenden Datensatz der Datum/Uhrzeit im Monat=05 Tag=05 enthalten !
    TXT: 05.05.2019, 09:32:41 | Send Hex | F7088E08
    HEX: 05.05.2019, 09:32:41 | Send Hex | 46 37 30 38 38 45 30 38
    TXT: 05.05.2019, 09:32:41 | Convert |
    HEX: 05.05.2019, 09:32:41 | Convert |
    TXT: 05.05.2019, 09:32:41 | Set-Var(33322) | 173812
    HEX: 05.05.2019, 09:32:41 | Set-Var(33322) | 31 37 33 38 31 32
    TXT: 05.05.2019, 09:32:41 | GetDataFromSerial | 2019050507093236
    HEX: 05.05.2019, 09:32:41 | GetDataFromSerial | 32 30 31 39 30 35 30 35 30 37 30 39 33 32 33 36
    TXT: 05.05.2019, 09:32:41 | 2.Bufferdata | 1557041555-92159
    HEX: 05.05.2019, 09:32:41 | 2.Bufferdata | 31 35 35 37 30 34 31 35 35 35 2D 39 32 31 35 39
    TXT: 05.05.2019, 09:32:41 | 2.Bufferdata | Last
    HEX: 05.05.2019, 09:32:41 | 2.Bufferdata | 4C 61 73 74
    TXT: 05.05.2019, 09:32:41 | 2.Bufferdata | Return
    HEX: 05.05.2019, 09:32:41 | 2.Bufferdata | 52 65 74 75 72 6E
    TXT: 05.05.2019, 09:32:41 | R-3.Last Data | {"hex":"F7088E","length":"08","retrun_data":false, "value":"","ips_id":28615,"convert":"BCDDateTi me"}
    HEX: 05.05.2019, 09:32:41 | R-3.Last Data | 7B 22 68 65 78 22 3A 22 46 37 30 38 38 45 22 2C 22 6C 65 6E 67 74 68 22 3A 22 30 38 22 2C 22 72 65 74 72 75 6E 5F 64 61 74 61 22 3A 66 61 6C 73 65 2C 22 76 61 6C 75 65 22 3A 22 22 2C 22 69 70 73 5F 69 64 22 3A 32 38 36 31 35 2C 22 63 6F 6E 76 65 72 74 22 3A 22 42 43 44 44 61 74 65 54 69 6D 65 22 7D
    TXT: 05.05.2019, 09:32:41 | Transmit verworfen | F7088E
    HEX: 05.05.2019, 09:32:41 | Transmit verworfen | 46 37 30 38 38 45
    TXT: 05.05.2019, 09:32:41 | Send Hex | 01F7330501 ***hier sendest Du wieder mit beginnendem 01, das erwartet die Viessmann wohl nicht***
    HEX: 05.05.2019, 09:32:41 | Send Hex | 30 31 46 37 33 33 30 35 30 31
    TXT: 05.05.2019, 09:32:44 | GetDataFromSerial | 05
    HEX: 05.05.2019, 09:32:44 | GetDataFromSerial | 30 35
    TXT: 05.05.2019, 09:32:44 | 2.Bufferdata | Last
    Am 6. Mai ab 0:00 Uhr ging alles wieder....
    P.S.: Ich hatte in meinem Viessmann Script versucht das "05 Problem" mit Empfangs-Timern bzw.
    Bytezählern (...du weisst ja wieviele Zeiche zurückkommen sollen) abzufangen.
    Mehr oder weniger erfolgreich.


    zu 2. Woher weißt du denn das du zu bestimmten Zeiten 56, oder 8 Bytes empfangen musst?
    Nicht zu bestimmten Zeiten... Die drei Timer werden pro Wochentag programmiert/abgefragt.
    Und jeder Wochentag hat 4 Ein/Aus Schaltpunkte (je 1 Byte lang, enthält (etwas kompliziert) codiert die Uhrzeit 0:00 - 23:50 in 10 Minuten Schritten).
    Somit: Mo-So = 7x 8 Byte = 56 Byte.

    Abfragen könnte man (bei meiner Steuerung) alles 56 Byte auf einmal. Schreiben immer nur 8 Byte im Block !
    Wenn ich so nachdenke: wäre lesen und schreiben von je 8 Byte übersichticher.

    Daher hätte ich gerne die Rohdaten (als Hex-Kolonne) , dann kann ich es eigenständig weiterverarbeiten.
    Nur wenn es geht...

    Gruß
    Lutz
    Geändert von lueralba (09.05.19 um 17:14 Uhr) Grund: Editiert
    __________________
    IPS 5.2 Ninja auf Raspi3 ; Mobile5.x ; AEON Stick/Zwave.Me StickC/1x Razberry Gen5;ca. 90 ZWave Geräte; 10x FHT80B;CCU1 (Funk/Wired);Fritzbox 7590;Viessmann; 1x ChuWi13 ;2x Sensus HRI und 1xEltako DSZ12DM an PiiGAB M-Bus; Instar 4011; AXIS 207W; RG-11

Ähnliche Themen

  1. Rolladen und Heizungsventil Steuerung
    Von s.jungen im Forum Haustechnik
    Antworten: 5
    Letzter Beitrag: 01.10.09, 22:07
  2. Synco Living | Viessmann Vitohome 300 - kompatibilität
    Von King-Nova im Forum KNX/EIB, LCN
    Antworten: 0
    Letzter Beitrag: 09.08.09, 08:54
  3. Entfernte Steuerung einbinden
    Von Jersey im Forum Haustechnik
    Antworten: 4
    Letzter Beitrag: 05.07.06, 17:21