Modul zur Anbindung Viessmann Heizung (Vitotronic 200 KW1)

Begonnen von Adam, 15 Februar 2014, 18:17:35

Vorheriges Thema - Nächstes Thema

pechnase

Hallo PeMue,

gerne schaue ich mir Deine V200KW1 Konfiguration im Vergleich an. Über ein Post würde ich mich freuen. Danke.

VG pechnase
2 x RPI mit FHEM 5.8 (RPI B+ & RPI 2B) verbunden über FHEM2FHEM
- HM Fensterkontakte, Rauchmelder, Fernbedienung, Schalter
- Optolink (Selbstbau) Vitotronic 200KW2
- 1-wire DS1820 Temp.Sensoren, TX29DT-IT
- CUL (busware), nanoCUL, Jeelink (Nachbau), FHEMduino

Postfach2000

Hallo Pechnase,
ich hatte meine KW1 Konfig auch schon gepostet in meinen beiden Beiträgen:

http://forum.fhem.de/index.php/topic,20280.msg286820.html#msg286820

Viele Grüße
Michael

PeMue

Hallo pechnase,

siehe hier:
######################################################################################
# Configuration file for Viessmann Vitotronic 200 KW1
######################################################################################
######################################################################################
# Polling Commands
######################################################################################
#POLL,SENDCMD   , PARSE, DIVISOR, READING-NAME        , KUMULATION
######################################################################################
POLL, 01F7080002, 2ByteS, 10    , Temp-Aussen         , -
POLL, 01F7080402, 2ByteS, 10    , Temp-WarmWasser-Ist , -
POLL, 01F7630001, 1ByteU, 1     , Temp-WarmWasser-Soll, -
POLL, 01F7080202, 2ByteS, 10    , Temp-Kessel-Ist     , -
POLL, 01F7550202, 2ByteS, 10    , Temp-Kessel-Soll    , -
POLL, 01F7080802, 2ByteS, 10    , Temp-Abgas          , -
POLL, 01F7084201, 1ByteU, state , Brenner             , -
POLL, 01F7088A02, 2ByteU, 1     , BrennerStarts       , day
# POLL, 01F7757404, 4Byte,  1000  , Oelverbrauch        , day
POLL, 01F7084601, 1ByteU, state , Zirkulationspumpe   , -
POLL, 01F7230101, mode,   10    , state               , -
POLL, 01F7230301, 1ByteU, state , state_party         , -
POLL, 01F7230201, 1ByteU, state , state_spar          , -
POLL, 01F708A704, 4Byte,  3600  , BrennerStunden      , day
POLL, 01F708AB04, 4Byte,  3600  , BrennerStunden2     , -
POLL, 01F7230601, 1ByteU, 1     , Temp-Raum-Soll      , -
# POLL, 01F7572602, 2ByteU, 10    , Oelverbrauch-Codierung, -
POLL, 01F7088E08, date,   1     , SystemZeit          , -
POLL, 01F7230908, date,   1     , Urlaub-Beginn       , -
POLL, 01F7231108, date,   1     , Urlaub-Ende         , -
POLL, 01F7253501, 1ByteU, state , Urlaub-Betrieb      , -
POLL, 01F7230501, 1ByteU, 10    , Neigung             , -
POLL, 01F7230401, 1ByteS, 1     , Niveau              , -
POLL, 01F7084701, 1ByteU, 1     , BrennerStoerung     , -
#####################################################################################
# M1 Possible TIMER Get commands
#####################################################################################
#POLL,SENDCMD   , PARSE, DIVISOR, READING-NAME        , KUMULATION
POLL, 01F7200008, timer,  1     , TIMER_HZ_0_MO       , -
POLL, 01F7200808, timer,  1     , TIMER_HZ_1_DI       , -
POLL, 01F7201008, timer,  1     , TIMER_HZ_2_MI       , -
POLL, 01F7201808, timer,  1     , TIMER_HZ_3_DO       , -
POLL, 01F7202008, timer,  1     , TIMER_HZ_4_FR       , -
POLL, 01F7202808, timer,  1     , TIMER_HZ_5_SA       , -
POLL, 01F7203008, timer,  1     , TIMER_HZ_6_SO       , -
#####################################################################################
# M1 Possible Warm Water TIMER Get commands
#####################################################################################
#POLL,SENDCMD   , PARSE, DIVISOR, READING-NAME        , KUMULATION
POLL, 01F7210008, timer,  1     , TIMER_WW_0_MO       , -
POLL, 01F7210808, timer,  1     , TIMER_WW_1_DI       , -
POLL, 01F7211008, timer,  1     , TIMER_WW_2_MI       , -
POLL, 01F7211808, timer,  1     , TIMER_WW_3_DO       , -
POLL, 01F7212008, timer,  1     , TIMER_WW_4_FR       , -
POLL, 01F7212808, timer,  1     , TIMER_WW_5_SA       , -
POLL, 01F7213008, timer,  1     , TIMER_WW_6_SO       , -
#####################################################################################
# M1 Possible Set commands which are complete
#####################################################################################
#SET,SETCMD    ,    SENDCMD       , CONV     , NEXT_CMD or DAY for timer
#####################################################################################
SET, WW        ,    01F423010100, state      , -
SET, H+WW      ,    01F423010103, state      , -
SET, AUS       ,    01F423010105, state      , -
SET, S-OFF     ,    01F423020100, state_spar , -
SET, S-ON      ,    01F423020101, state_spar , P-OFF
SET, P-OFF     ,    01F423030100, state_party, -
SET, P-ON      ,    01F423030101, state_party, S-OFF
SET, WWTEMP    ,    01F4630001  , 1ByteU     , -
SET, K26       ,    01F4572602  , 2ByteU     , -
SET, URL-ON    ,    01F4230908  , date       , -
SET, URL-OFF   ,    01F4231108  , date       , -
SET, SYSTIME   ,    01F4088E08  , date       , -
SET, NIVEAU    ,    01F4230401  , 1ByteS     , -
#####################################################################################
# M1 Possible TIMER Set commands prefix
#####################################################################################
SET, TIMER_HZ_0_MO, 01F4200008  , timer      , MO
SET, TIMER_HZ_1_DI, 01F4200808  , timer      , DI
SET, TIMER_HZ_2_MI, 01F4201008  , timer      , MI
SET, TIMER_HZ_3_DO, 01F4201808  , timer      , DO
SET, TIMER_HZ_4_FR, 01F4202008  , timer      , FR
SET, TIMER_HZ_5_SA, 01F4202808  , timer      , SA
SET, TIMER_HZ_6_SO, 01F4203008  , timer      , SO
######################################################################################
# M1 Possible Warm Water Timer Set commands prefix
######################################################################################
SET, TIMER_WW_0_MO, 01F4210008  , timer      , MO
SET, TIMER_WW_1_DI, 01F4210808  , timer      , DI
SET, TIMER_WW_2_MI, 01F4211008  , timer      , MI
SET, TIMER_WW_3_DO, 01F4211808  , timer      , DO
SET, TIMER_WW_4_FR, 01F4212008  , timer      , FR
SET, TIMER_WW_5_SA, 01F4212808  , timer      , SA
SET, TIMER_WW_6_SO, 01F4213008  , timer      , SO
######################################################################################


Gruß PeMue
RPi3Bv1.2 rpiaddon 1.66 6.0 1xHM-CC-RT-DN 1.4 1xHM-TC-IT-WM 1.1 2xHB-UW-Sen-THPL-O 0.15 1x-I 0.14OTAU  1xCUNO2 1.67 2xEM1000WZ 2xUniroll 1xASH2200 3xHMS100T(F) 1xRFXtrx 90 1xWT440H 3xTFA30.3150 5xFA21
RPi1Bv2 LCDCSM 1.63 5.8 2xMAX HKT 1xMAX RT V200KW1 Heizung Wasser

zYloriC

Zitat von: pechnase am 09 Juni 2015, 20:11:18
Hallo,

anbei die V200KW.cfg, mit der ich gerade mein VCONTROL Modul an einer Viessmann Vitotronic 200KW2 GeräteID 2098 betreibe.
Leider findet man im Internet ganz unterschiedliche Adressen für die einzelnen Parameter. openv ist sicher eine gute, oder die beste Quelle, nur auch dort führen verschiedene Links zu unterschiedlichen Angaben für die gleiche Steuerung!
Deshalb stimmen einige der Werte (POLLs) immer noch nicht, bzw. evtl. gibt es die 'Sensoren' auch gar nicht in der Steuerung.
Beispiel: Temp-Vorlauf-Soll
               MischerPosM1 oder ..M2, für beide wird kein vernünftiger Wert zurückgegeben
               
Evtl. können wir gemeinsam ja doch noch für die V200KW2 eine komplette Liste zusammen bekommen.

VG pechnase

PS: Klaus, ich hoffe Du hast diese cfg-Datei gemeint.

Hallo Pechnase,
vielen dank für die bereitgestellten Infos. Weißt du oder jemand anderes hier, ob V200KW2 und V200WO1C ähnlich sind? Ich suche aktuell noch nach der Richtigen cfg für meine V200WO1C Heizung.

Wie kann ich verschiedene Codes testen und prüfen, was funktioniert?? Geht das über den Raspberry per SSH?

Danke für eure Hilfe. Gruß,
zYloriC



juniorfux

Guten Abend, ich habe eine Vitotronic 200 KW4 daheim stehen.
Kann ich auch diese mit dem Modul und einem Optokopler auslesen?
Bin gerade auf der Suche nach den Bauteilen, allerdings lese ich nirgends etwas über das anschließen der KW4.

Hat jemand Erfahrung, ob die das auch mitmacht?

Viele grüße

Manuel

Gesendet von meinem SM-G900F mit Tapatalk


zYloriC

eine kurze Frage noch:
ich habe die Adressen-PDF zum vt200wo1c gefunden
http://www.viessmann.ch/content/dam/internet-global/software-daten/Vitogate_200_Listen/vt200wo1c.pdf

Wie kann ich daraus die Codes, die ich für die fhem cfg brauche extrahieren.
Werte in PDF: 0x01C1 oder 0x01CD oder 0x00
Werte in cfgs: 01F7058004 oder 01F7041101 oder 01F7201808

irgendwie passt das also noch nicht. Wie kann ich es umrechnen, oder kennt jemand eine vt200wo1c.cfg für fHem??

Vielen Dank, zYloriC

Adam

@zYloriC:

Lies Dir bitte mal den aller ersten Post genau durch, dort habe ich beschrieben wie man POLL und SET Commands für die cfg aufbaut,
wenn man die Adressen kennt.
Ebenso hier: http://fhem.de/commandref_DE.html#VCONTROL

@juniorfux:
Im Modul wird das KW Protokoll angewendet. Heizungen die das 300 Protokoll nutzen funktionieren auch, da diese auch KW sprechen können.
Wenn Du also im Netz rausfindest, ob Deine Vitotronic 200 KW4 eins der beiden Protokolle unterstützt, dann kannst Du loslegen!

Gruß
Adam

zYloriC

Hallo Leute.
Ich habe nun meine cfg für meine vt200wo1c erstellt. Leider bekomme ich im Log nur folgende Infos, die sich immer wiederholen. Im Netz konnte ich dazu leider nichts finden. Habt ihr eine Idee? Gruß zYloriC

2015.06.19 21:39:11 5: VCONTROL_READ
2015.06.19 21:39:11 5: VCONTROL: VCONTROL_Read '05'
2015.06.19 21:39:11 5: VCONTROL: exit if buffer just filled with 0x05
2015.06.19 21:39:13 5: VCONTROL_READ
2015.06.19 21:39:13 5: VCONTROL: VCONTROL_Read '05'
2015.06.19 21:39:13 5: VCONTROL: Setze sendstr
2015.06.19 21:39:13 5: VCONTROL: send '01F7080002'
2015.06.19 21:39:13 5: SW: 01f7080002
2015.06.19 21:39:15 5: VCONTROL_READ
2015.06.19 21:39:15 5: VCONTROL: VCONTROL_Read '05'
2015.06.19 21:39:15 5: VCONTROL: VCONTROL_Read receive_len < 4, 05

pechnase

Hallo VCONTROL User,

Postfach2000 hat am 17.04.2015 eine FehlerMap Sub zum Ummappen der Viessmann Fehlercodes in Fehlertexte veröffentlicht. Unten eine um die Fehlercodes einer V200KW2 ergänzten Subroutine:

# Sub zum Mappen der Viessmann Fehlercodes auf Fehlertexte, wie sie in der Bedienungsanleitung
# für die Vitotrol V200KW2 (GeräteID 2098) enthalten sind
# Die Sub beruht auf den Arbeiten die von Postfach2000 im fhem forum am 17.04.2015 gepostet wurden
# Die Texte wurden für die V200KW2 ergänzt
#
sub
FehlerMap
{
my $fehler = shift;
my $ret = "Fehler unbekannt";

if ($fehler > 0) {
  if($fehler eq 15){
   $ret = "Wartung"
  }elsif($fehler eq 16){
   $ret = "Kurzschluss Außentemperatursensor"
  }elsif($fehler eq 24){
   $ret = "Unterbrechung Außentemperatursensor"
  }elsif($fehler eq 32){
   $ret = "Kurzschluss Vorlauftemperatursensor"
  }elsif($fehler eq 33){
   $ret = "Kurzschluss Rücklauftemperatursensor"
  }elsif($fehler eq 40){
   $ret = "Unterbrechung Vorlauftemperatursensor"
  }elsif($fehler eq 41){
   $ret = "Unterbrechung Rücklauftemperatursensor"
  }elsif($fehler eq 48){
   $ret = "Kurzschluss Kesseltemperatursensor"
  }elsif($fehler eq 56){
   $ret = "Unterbrechung Kesseltemperatursensor"
  }elsif($fehler eq 80){
   $ret = "Kurzschluss Speichertemperatursensor"
  }elsif($fehler eq 88){
   $ret = "Unterbrechung Speichertemperatursensor"
  }elsif($fehler eq 146){
   $ret = "Kurzschluss Kollektortemperatursensor, Anschluss an S1 der Vitosolic"
  }elsif($fehler eq 147){
   $ret = "Kurzschluss Temperatursensor, Anschluss an S3 der Vitosolic"
  }elsif($fehler eq 148){
   $ret = "Kurzschluss Speichertemperatursensor, Anschluss an S2 der Vitosolic"
  }elsif($fehler eq 154){
   $ret = "Unterbrechung Kollektortemperatursensor, Anschluss an S1 der Vitosolic"
  }elsif($fehler eq 155){
   $ret = "Unterbrechung Temperatursensor, Anschluss an S3 der Vitosolic"
  }elsif($fehler eq 156){
   $ret = "Unterbrechung Speichertemperatursensor, Anschluss an S2 der Vitosolic"
  }elsif($fehler eq 159){
   $ret = "Fehler Solarregelung, wird angezeigt falls an der Solarregelung ein Fehler ohne Störungscode auftritt"
  }elsif($fehler eq 176){
   $ret = "Kurzschluss Abgastemperatursensor"
  }elsif($fehler eq 177){
   $ret = "Kommunikationfehler Bedieneinheit"
  }elsif($fehler eq 180){
   $ret = "Interner Fehler - Elektronikleiterplatte prüfen"
  }elsif($fehler eq 181){
   $ret = "Interner Fehler - Elektronikleiterplatte prüfen"
  }elsif($fehler eq 182){
   $ret = "Ungültige Hardwarekennung - Grundleiterplatte prüfen"
  }elsif($fehler eq 183){
   $ret = "Interner Fehler Kesselcodierstecker"
  }elsif($fehler eq 184){
   $ret = "Unterbrechung Abgastemperatursensor"
  }elsif($fehler eq 185){
   $ret = "Interner Fehler - Eingabe wiederholen"
  }elsif($fehler eq 188){
   $ret = "Kommunikationsfehler Fernbedienung Vitotrol Heizkreis A1"
  }elsif($fehler eq 189){
   $ret = "Kommunikationsfehler Fernbedienung Vitotrol Heizkreis M2"
  }elsif($fehler eq 190){
   $ret = "Falsche Codierung der Fernbedienung Vitotrol"
  }elsif($fehler eq 194){
   $ret = "Unterbrechung KM-BUS zur Solarregelung"
  }elsif($fehler eq 196){
   $ret = "Kommunikationsfehler Funktionserweiterung 0 bis 10V"
  }elsif($fehler eq 197){
   $ret = "Kommunikationsfehler drehzahlgeregelte Heizkreispumpe Heizkreis A1"
  }elsif($fehler eq 198){
   $ret = "Kommunikationsfehler drehzahlgeregelte Heizkreispumpe Heizkreis M2"
  }elsif($fehler eq 199){
   $ret = "Falsche Codierung der Heizkreispumpe"
  }elsif($fehler eq 201){
   $ret = "Störmeldeeingang am Schaltmodul-V aktiv"
  }elsif($fehler eq 205){
   $ret = "Kommunikationsfehler Vitocom 100"
  }elsif($fehler eq 206){
   $ret = "Kommunikationsfehler Schaltmodul-V"
  }elsif($fehler eq 209){
   $ret = "Brennerstörung"
  }elsif($fehler eq 218){
   $ret = "Kurzschluss Raumtemperatursensor Heizkreis A1"
  }elsif($fehler eq 219){
   $ret = "Kurzschluss Raumtemperatursensor Heizkreis M2"
  }elsif($fehler eq 221){
   $ret = "Unterbrechung Raumtemperatursensor Heizkreis A1"
  }elsif($fehler eq 222){
   $ret = "Unterbrechung Raumtemperatursensor Heizkreis M2"
  }
  $ret = sprintf("%x",$fehler)." \t ".$ret
} else {
  $ret = $fehler
}
}


In diesem Thread gab es auch einige Diskussionen, ob die Fehler im Fehlerspeicher mit Datum abgelegt werden. Das konnte ich nicht beobachten. Wenn ich den Fehlerspeicher direkt an der Steuerung auslese, wird auch kein Datum angezeigt, zumindest an der V200KW2. Das Auslesen des Fehlerspeichers habe ich wie in dem Post von Postfach2000 vom 17.04.2015 veröffentlichten V200KW1.cfg umgesetzt.

Viele Grüße
Pechnase
2 x RPI mit FHEM 5.8 (RPI B+ & RPI 2B) verbunden über FHEM2FHEM
- HM Fensterkontakte, Rauchmelder, Fernbedienung, Schalter
- Optolink (Selbstbau) Vitotronic 200KW2
- 1-wire DS1820 Temp.Sensoren, TX29DT-IT
- CUL (busware), nanoCUL, Jeelink (Nachbau), FHEMduino

Adam

#729
Hi zYloriC,

das log ist ein bisschen kurz was Du da gepostet hast.
Wenn ich Dich richtig verstehe schickt die Heizung auf alles was Du schickst nur eine 05 zurück
Würde für mich bedeuten, dass die Adressen in Deiner cfg nicht zur Heizung passen.

Vielleicht kannst Du mal ein größeres Stück als Datei an einen Post hängen?

Gruß
Adam

Postfach2000

Zitat von: pechnase am 22 Juni 2015, 17:44:41
Postfach2000 hat am 17.04.2015 eine FehlerMap Sub zum Ummappen der Viessmann Fehlercodes in Fehlertexte veröffentlicht. Unten eine um die Fehlercodes einer V200KW2 ergänzten Subroutine:

Hallo Pechnase,
das finde ich super, dass meine Ergebnisse für andere nützlich sind und Du auch deine Fortschritte hier wieder postest.

So macht Internet Spaß.

Was mich noch interessieren würde, ist, wie das Layout bei Dir oder auch anderen aussieht.

Vielleicht können alle ja mal ihre Screenshots  posten.

Viele Grüße
Michael


pechnase

#731
Hallo Postfach2000,

bin mir nicht sicher, was Du mit Layout meinst. Habe mal drei Screenshots beigefügt, wie ich die Heizungsdaten auf dem FHEM GUI darstelle.
Mit ReadingsGroup habe ich jetzt auch mal angefangen Werte zusammenzustellen, ein mächtiges Tool aber so ganz bin ich noch nicht hinter die unterschiedlichen Formatierungsmöglichkeiten gekommen. Da muss ich noch üben.
Habe mir heute noch das Charting Frontend installiert, um damit auch mal zu experimentieren.

Viele Grüße
pechnase
2 x RPI mit FHEM 5.8 (RPI B+ & RPI 2B) verbunden über FHEM2FHEM
- HM Fensterkontakte, Rauchmelder, Fernbedienung, Schalter
- Optolink (Selbstbau) Vitotronic 200KW2
- 1-wire DS1820 Temp.Sensoren, TX29DT-IT
- CUL (busware), nanoCUL, Jeelink (Nachbau), FHEMduino

zYloriC

Zitat von: Adam am 22 Juni 2015, 21:53:57
Vielleicht kannst Du mal ein größeres Stück als Datei an einen Post hängen?

Hallo Adam,
danke für deine Hilfe. Ich habe einen kurzen Log-Auszug angefügt. Leider ist es immer nur der kurze Ausschnitt, der sich immer wiederholt.
Kann es sein, dass ich noch ein Hardware-Problem habe und mein gebauter TTL-Optolink-Adapter noch nicht richtig funktioniert? Wie kann ich das grundsätzlich testen...

viele Grüße, zYloriC

LuckyDay

Zitat2015.06.19 21:39:13 5: VCONTROL: send '01F7080002'

wo hast du denn die Adresse her, pauschal würde ich sagen, soll Außentemp sein,
ABER
vt200wo1c , du hast doch die Steuerung, und wenn ich suche , sehe ich für die Steuerung
0x0101 die Adresse ,
und vor allem, wie sieht denn deine .cfg aus? nur kopieren von anderen , das klappt hier nicht :)

ich lege dir die Seite ans Herz
http://openv.wikispaces.com/

Postfach2000

Zitat von: pechnase am 23 Juni 2015, 22:41:34
bin mir nicht sicher, was Du mit Layout meinst. Habe mal drei Screenshots beigefügt, wie ich die Heizungsdaten auf dem FHEM GUI darstelle.

Hallo Pechnase,
genau das meinte ich. Wenn man das in Bildern sieht, dann kann man sich immer wieder Anregungen für neue Auswertungen holen.

Wäre schön, wenn andere auch noch Screenshots ihrer GUI einstellen.

Was mit bei Dir auffällt, ist, dass dein Brenner ziemlich oft jeden Tag anspringt. Meiner läuft nur einmal um 05:30 fürs Warmwasser und dann nicht mehr. Macht 0,8L Öl jeden Tag.

Allerdings habe ich auch die Zirkulation abgeschaltet.

Viele Grüße
Michael