Modul zur Anbindung Viessmann Heizung (Vitotronic 200 KW1)

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

Vorheriges Thema - Nächstes Thema

blueberry63

#15
Und weiter geht es:

ich sehe jetzt immer mehr Readings:
Brenner
BrennerStarts
BrennerStarts-Heute
BrennerTagesStart
Temp-Aussen
Temp-Kessel-Ist
Temp-Kessel-Soll
Temp-WarmWasser-Ist
Temp-WarmWasser-Soll
Zirkulationspumpe
state
state_party
state_spar

Anscheinend hätte ich länger warten müssen, nachdem ich das Gerät zum 1. Mal eingebunden hatte. Das sieht jedenfalls sehr gut aus.

Was mir generall Kopfzerbrechen macht ist, daß auf dem Raspberry Ethernet- und USB-Schnittstelle auf einem Chip zusammengepackt sind und es wahrscheinlich deswegen zu Problemen (bis hin zum Absturz) kommen wird. Das ist an anderen Stellen hier im Forum schon beschrieben worden. Aber das sollte nicht Dein Problem sein. Ich überlege gerade, ob ich nicht auf Beaglebone Black oder Cubietrack umsteigen soll und dann ist das permanente Auslesen der USB-Schnittstelle kein Problem mehr.

Gruß
Blueberry63
FHEM auf BBB mit Wheezy: 1x CUL_HM_HM_SCI_3_FM, 1x INSTAR CAM3010, 1x HM-LC-SW1-PL2, 1x HM-LC-Bl1PBU-FM, 1x HM-Sen-MDIR-O, Viessmann Heizung, Gaszähler via GPIO, Klingel via HM-LC-Bl1PBU-FM an FBox, Mailcheck, AVR, XBMC, NanoCUL 433+668 an Raspi per Ethernet, Funksteckdosen (Pollin, IT), Automower

Adam

Ja cool  ;D

Ja es ist bei mir auch so, da die Vitotronic mir nicht bei jedem Poll Intervall was zurück liefert.
Die Schnittstelle ist ziemlich bescheiden! Deshalb sollte man ein paar Intervalle abwarten.
Wenn es einmal eingeschwungen ist scheint es aber bei mir sehr stabil zu laufen.

ZitatIch überlege gerade, ob ich nicht auf Beaglebone Black oder Cubietrack umsteigen soll und dann ist das permanente Auslesen der USB-Schnittstelle kein Problem mehr.

Das sagt mir Windows Fuzzi nichts  ???

Man könnte das Modul eventuell auch so anpassen, dass der USB Port nach jedem Intervall geschlossen
und wieder geöffnet wird? Sollte irgendwie machbar sein!

Adam

Vielleicht könntest Du auch noch mal das Lesen der Timerwerte probieren.
Das dauert auch ein bisschen und du musst im Webinterface dann öfter mal die Seite aktualisieren!

Habe beim mir gerade das Setzen der Timer Werte im Modul umgesetzt und teste es.

blueberry63

Die Timings für WW+HZ bekomme ich nicht angezeigt. Wie soll das denn funktionieren? Im LOG kann ich sehen, daß die Daten ausgelesen werden:

Zitat
2014.02.26 14:08:21 5: VCONTROL_READ
2014.02.26 14:08:21 5: VCONTROL: VCONTROL_Read '2b40'
2014.02.26 14:08:21 5: VCONTROL: receive 'TIMER_WW_6_FR : '
2014.02.26 14:08:21 5: VCONTROL_READ
2014.02.26 14:08:21 5: VCONTROL: VCONTROL_Read '63709098b0'
2014.02.26 14:08:21 5: VCONTROL_READ
2014.02.26 14:08:21 5: VCONTROL: VCONTROL_Read 'b8'
2014.02.26 14:08:24 5: VCONTROL_READ
2014.02.26 14:08:24 5: VCONTROL: VCONTROL_Read '05'
2014.02.26 14:08:24 5: VCONTROL: send '01F7212808'
2014.02.26 14:08:24 5: SW: ^A÷!(^H
2014.02.26 14:08:24 5: VCONTROL_READ
2014.02.26 14:08:24 5: VCONTROL: VCONTROL_Read '2bb0'
2014.02.26 14:08:24 5: VCONTROL: receive 'TIMER_WW_0_SA : '
2014.02.26 14:08:24 5: VCONTROL_READ
2014.02.26 14:08:24 5: VCONTROL: VCONTROL_Read 'ffffffffff'
2014.02.26 14:08:24 5: VCONTROL_READ
2014.02.26 14:08:24 5: VCONTROL: VCONTROL_Read 'ff'
2014.02.26 14:08:27 5: VCONTROL_READ
2014.02.26 14:08:27 5: VCONTROL: VCONTROL_Read '05'
2014.02.26 14:08:27 5: VCONTROL: send '01F7213008'
2014.02.26 14:08:27 5: SW: ^A÷!0^H
2014.02.26 14:08:28 5: VCONTROL_READ
2014.02.26 14:08:28 5: VCONTROL: VCONTROL_Read '2bb0'
2014.02.26 14:08:28 5: VCONTROL: receive 'TIMER_WW_1_SO : '
2014.02.26 14:08:28 5: VCONTROL_READ
2014.02.26 14:08:28 5: VCONTROL: VCONTROL_Read 'ffffffffff'



Gruß
Blueberry63
FHEM auf BBB mit Wheezy: 1x CUL_HM_HM_SCI_3_FM, 1x INSTAR CAM3010, 1x HM-LC-SW1-PL2, 1x HM-LC-Bl1PBU-FM, 1x HM-Sen-MDIR-O, Viessmann Heizung, Gaszähler via GPIO, Klingel via HM-LC-Bl1PBU-FM an FBox, Mailcheck, AVR, XBMC, NanoCUL 433+668 an Raspi per Ethernet, Funksteckdosen (Pollin, IT), Automower

Adam

Hi Blueberry63,

ich kann das Problem erkennen!

Die Timerwerte bestehen aus 8 Byte, diese wurden bei mir immer in einem VCONTROL_Read (also einem Paket)
angeliefert. Und so erwartet das bisher das Modul.

In Deinem Log ist zu sehen, dass Du die Daten in 3 Blöcken erhälst.

Habe bereits in anderen Modulen gesehen, dass sie Teil-Daten in PARTIAL zwischen parken
und nach der erwarteten Anzahl an Bytes parsen.
Das habe ich bisher nicht gebraucht.  :-\
Es sieht aber so aus, dass sich die Systeme unterschiedlich verhalten.
Wahrscheinlich ist es bei dem nächsten in 2 Paketen!?

Werde versuchen es in das Modul einzubauen, kann Dir aber nicht versprechen wie schnell das geht.

Adam

blueberry63

Hallo Adam,

Du machst hier eine super Arbeit und ich möchte Dich auf keinen Fall drängen. Lass Dir Zeit.

Gruß
Blueberry63
FHEM auf BBB mit Wheezy: 1x CUL_HM_HM_SCI_3_FM, 1x INSTAR CAM3010, 1x HM-LC-SW1-PL2, 1x HM-LC-Bl1PBU-FM, 1x HM-Sen-MDIR-O, Viessmann Heizung, Gaszähler via GPIO, Klingel via HM-LC-Bl1PBU-FM an FBox, Mailcheck, AVR, XBMC, NanoCUL 433+668 an Raspi per Ethernet, Funksteckdosen (Pollin, IT), Automower

Adam

Macht ja Spaß und besonders wenn man weiß, das es keine "einmal" Software ist,
sondern andere auch was davon haben  ;D

kvo1

Hallo Adam,

mein RPi mit Optolink läuft seit gestern, muß noch etwas Anpassungen machen..
.... und dann werde ich mal sehen ob ich das mit Deinem Modul ans laufen bekommen,
wobei ich bisher (mangels SW-Erfahrung) noch keine wirkliche Idee habe wie ich den USB-Port
ansprechen kann.

Gruß Klaus.

Vielleicht liest ja jemand mit der sich mit UNIX und Programmierung auskennt.
RPi1: mit CUL: HM-CC-RT-DN,HM-ES-PMSw1-Pl,HM-LC-BL1-FM,HM-LC-Bl1PBU-FM,HM-LC-SW1-PL2,HM-SCI-3-FM,HM-SEC-SC-2,KFM-Sensor
RPi2: Viessmann(optolink) mit 99_VCONTROL.pm,
Cubietruck: Wheezy / Apache / Owncloud
Cubietruck: Armbian(Jessie) / fhem 5.7 / LMS 7.9
RPi3: (Test) mit 7" Touch  &  HM-MOD-RPI-PCB

Adam

#23
Hallo,

@blueberry63 (und natürlich alle anderen  ;) )
Ich habe nun den Empfang der Daten aus mehreren Paketen einmal umgesetzt.
Da ich auf Windows immer alle in einem Paket erhalte, müsstest Du das einmal testen!

@Klaus:
Wie Du die USB Treiber installieren musst auf Linux weiß ich nicht.
Vielleicht kann Dir das erklären blueberry63.
Wenn es darum geht wie es in FHEM konfiguriert werden muss, dann sollte das so aussehen:

define Vito200 VCONTROL /dev/ttyUSB0


In der angehängten Version ist nun auch das Setzen der Timer Werte möglich.
Syntax ist dann:

set <DeviceName> TIMER <mode>,<day>,<times>

<mode> HZ oder WW
    HZ Timer für Heizung an aus
    WW Timer für Warm Wasseraufbereitung

<day>  MO,DI,MI,DO,FR,SA,SO

<times> 8 Uhrzeiten mit Komma getrennt.  (AN1,AUS1,AN2,AUS2,AN3,AUS3,AN4,AUS4)
       Keine Uhrzeit muss als -- angegeben werden.
       Minuten der Uhrzeiten dürfen nur 00,10,20,30,40 oder 50 sein

Beispiele:

Heizung geht um 05:30Uhr an und um 22:30 Uhr wieder aus:

set Heizung TIMER HZ,MI,05:30,22:30,--,--,--,--,--,--

Warm Wasser wird aufbereitet von 6Uhr bis 7:30Uhr und von 12Uhr bis 14Uhr und von 18 bis 21Uhr:

set Heizung TIMER WW,MO,06:00,07:30,12:00,14:00,18:00,21:00,--,--

kvo1

Hallo Adam,

das ist absolut cool, ich bin begeistert. Kurz wie von Dir beschrieben eingebunden und läuft.
natürlich werden hier noch falschen Werte angezeigt , ich habe eine andere Steuerung und auch GAS und kein Öl

wenn man bei

define Vito200 VCONTROL /dev/ttyUSB0 das [<intervall>]  wegläst wird wohl per default alle 180 sek. gepollt ? oder?

Werde mir das weiter ansehen ...
Gute wäre natürlich die Daten in ein Logfile zu schreiben um einen Plot daraus zu erzeugen....

Klaus

RPi1: mit CUL: HM-CC-RT-DN,HM-ES-PMSw1-Pl,HM-LC-BL1-FM,HM-LC-Bl1PBU-FM,HM-LC-SW1-PL2,HM-SCI-3-FM,HM-SEC-SC-2,KFM-Sensor
RPi2: Viessmann(optolink) mit 99_VCONTROL.pm,
Cubietruck: Wheezy / Apache / Owncloud
Cubietruck: Armbian(Jessie) / fhem 5.7 / LMS 7.9
RPi3: (Test) mit 7" Touch  &  HM-MOD-RPI-PCB

Adam

Hallo Klaus,

freut mich sehr, dass es läuft!  ;D

Ja, default Intervall sind 180Sekunden wenn man nichts angibt.

Welche Werte sind denn Deiner Meinung nach falsch? Oder nur die Bezeichungen mit Öl ??
Ich arbeite z.Zt. an einem allgemeineren Modul, wo man die Adressen der zu pollenden Werte
und die Namen der Readings in einer Datei konfigurieren kann. Ist aber etwas zäh.
Habe die nächsten Tage auch wenig Zeit mich an den Rechner zu setzen,
daher wird es noch ein bisschen dauern!

Ein Log zu erstellen ist easy, da ja durch das Modul ein echtes FHEM Device existiert:

Meine Logs (Heizung ist dabei der DeviceName, bei Dir wohl dann in Vito200 ändern!!):

define FileLog_Heizung FileLog ./log/Heizung-%Y.log Heizung
attr FileLog_Heizung logtype text

define FileLog_Heizung_Oel FileLog ./log/Heizung_Oel-%Y.log Heizung.*Oel.*
attr FileLog_Heizung_Oel logtype text

define FileLog_Heizung_Oel_Day FileLog ./log/Heizung_Oel-Day-%Y.log Heizung.*Oel.*-Tag.*
attr FileLog_Heizung_Oel_Day logtype text

define FileLog_Heizung_Temp FileLog ./log/Heizung_Temp-%Y.log Heizung.*Temp.*
attr FileLog_Heizung_Temp logtype text

define FileLog_Heizung_Brenner FileLog ./log/Heizung_Brenner-%Y.log Heizung.*(Brenner.*|Zirkulationspumpe.*).*
attr FileLog_Heizung_Brenner logtype text

define FileLog_Heizung_Brenner_Day FileLog ./log/Heizung_Brenner-day-%Y.log Heizung.*Brenner.*-Tag.*
attr FileLog_Heizung_Brenner_Day logtype text


Tja und daraus dann wie gehabt Plots erstellen!

Fleissiges Weiter-Basteln,
ich muss mich jetzt leider vom Rechner lösen und Tapezieren gehen  ;)

Gruß
Adam

fischle

Hallo Adam,
ich muss dir an dieser Stelle mal ein dickes Lob aussprechen. Ich wollte auch schon immer die Heizung auslesen, aber das ganze VControl-Geraffel hat mich dann doch abgeschreckt. Heute habe ich mir einen Optolink-Adapter gebaut und meine Adressen herausgefunden, FHEM angesteckt und schon kann ich die Heizung auslesen. Funktioniert wunderbar!!

Vielen Dank für die Mühe die du in das Modul steckst.

Da ich auch eine Solaranlage auf dem Dach habe, werde ich die Funktion in den nächsten Tagen noch um das entsprechende Reading ergänzen, wird aber kein Problem sein.

Gruß

Fabian
RPi,
- USB RS485 Adapter für Stromzähler DRS155M und SDM630M-DC (B+G E-Tech)
- Viesmann KO2B Heizung mit selbstbau Optolink Adapter
- Mi-Light WiFi-Bridge V4, WW/CW LED-Birne

kvo1

Hallo Fabian,

Was für eine Heizung(GAS/ÖL) und  Steuerung (ID=...) hast Du.?

Ich habe noch mit einigen Readings Probeme .... (habe GAS , ID=20CB)

klaus
RPi1: mit CUL: HM-CC-RT-DN,HM-ES-PMSw1-Pl,HM-LC-BL1-FM,HM-LC-Bl1PBU-FM,HM-LC-SW1-PL2,HM-SCI-3-FM,HM-SEC-SC-2,KFM-Sensor
RPi2: Viessmann(optolink) mit 99_VCONTROL.pm,
Cubietruck: Wheezy / Apache / Owncloud
Cubietruck: Armbian(Jessie) / fhem 5.7 / LMS 7.9
RPi3: (Test) mit 7" Touch  &  HM-MOD-RPI-PCB

blueberry63

Hallo Adam,

ich habe die neue Version installiert, aber das auslesen der Timings für WW+HZ bekomme ich nicht hin. Wo sollten die Werte denn auftauchen?

Gruß
Blueberry63
FHEM auf BBB mit Wheezy: 1x CUL_HM_HM_SCI_3_FM, 1x INSTAR CAM3010, 1x HM-LC-SW1-PL2, 1x HM-LC-Bl1PBU-FM, 1x HM-Sen-MDIR-O, Viessmann Heizung, Gaszähler via GPIO, Klingel via HM-LC-Bl1PBU-FM an FBox, Mailcheck, AVR, XBMC, NanoCUL 433+668 an Raspi per Ethernet, Funksteckdosen (Pollin, IT), Automower

fischle

Hallo,
ich haben einen K02B (ID 209F). Ich habe zuerst mit VitoTest_V1.8 getestet, bei welchen Readings ich sinnvolle Antworten bekomme, die werde ich nun versuchen einzupflegen.

Allerdings habe ich gerade erst mal das Problem, dass bei mir das Auslesen nach einer Zeit immer wieder abbricht. Heute nacht nach 2h, heute morgen schon nach 20min. Werde mal das Logging aktivieren müssen...
RPi,
- USB RS485 Adapter für Stromzähler DRS155M und SDM630M-DC (B+G E-Tech)
- Viesmann KO2B Heizung mit selbstbau Optolink Adapter
- Mi-Light WiFi-Bridge V4, WW/CW LED-Birne